Cifratura Asimmetrica



Documenti analoghi
Cifratura Asimmetrica

Cifratura Asimmetrica

Introduzione alla crittografia con OpenPGP

Sicurezza nelle applicazioni multimediali: lezione 7, sicurezza dei protocolli. Sicurezza dei protocolli (https, pop3s, imaps, esmtp )

Cifratura a chiave pubblica Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza

Introduzione alla Crittografia

Firma digitale e PEC: facili e sicure

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica)

Firma digitale Definizione

Crittografia a chiave pubblica

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette

Protezione della posta elettronica mediante crittografia

Documenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I.

Scambio delle chiavi. mercoledì 7 dicembre 2011

Pretty Good Privacy. PGP fornisce crittografia ed autenticazione. creato da Phil Zimmermann nel in origine è un'applicazione per

La firma digitale CHE COSA E'?

RETI DI CALCOLATORI. Crittografia. La crittografia

Capitolo 8 La sicurezza nelle reti

La Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo

Certificati digitali con CAcert Un'autorità di certificazione no-profit

Informatica per la comunicazione" - lezione 13 -

FIRMA DIGITALE Cos'è e come funziona

da chi proviene un messaggio?

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

DOCUMENTO ELETTRONICO E FIRMA DIGITALE

La sicurezza nelle reti di calcolatori

RSA. Chiavi RSA. Firma Digitale. Firma Digitale. Firma Digitale. Desiderata per la Firma Digitale. Corso di Sicurezza su Reti 1

Sicurezza nei Sistemi Distribuiti

Sicurezza nei Sistemi Distribuiti

Gennaio. SUAP On Line i pre-requsiti informatici: La firma digitale

Approfondimento di Marco Mulas

Seminario Sull Algoritmo R.S.A.

e-government La Posta Elettronica Certificata

un protocollo è costituito da una serie di passi (step) e coinvolge due o più persone (parti, entità) allo scopo di svolgere un incarico

Vendere online. Andrea Marin. Università Ca Foscari Venezia SVILUPPO INTERCULTURALE DEI SISTEMI TURISTICI SISTEMI INFORMATIVI PER IL TURISMO

Allegato A: Regole tecniche per la gestione dell identità.

Un po di teoria dei numeri

Programmazione in Rete

Sicurezza: necessità. Roberto Cecchini Ottobre

Firma digitale: aspetti tecnologici e normativi. Milano,

Analisi di programmi: Crittografia

Firme digitali. Firma Digitale. Firma Digitale. Corso di Sicurezza su Reti Lezione del 17 novembre Equivalente alla firma convenzionale

CHE COS E LA FIRMA DIGITALE

Progetto Lauree Scientifiche - Matematica

Lombardia Informatica S.p.A. Policy Certificati di Firma Digitale su CNS/CRS

La firma digitale. Autore: Monica Mascia

Sicurezza dei sistemi informatici Firma elettronica E-commerce

LICEO STATALE ENRICO MEDI CON INDIRIZZI:

Crittografia. Appunti a cura del prof. Ing. Mario Catalano

Posta elettronica e crittografia

Gli strumenti necessari al PcT. Firma Digitale, PEC e Marca Temporale

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.

Procedure di utilizzo e di descrizione applicativa

Meccanismi di autenticazione sicura. Paolo Amendola GARR-CERT

La firma digitale e le sue possibili applicazioni

Serve a garantire la nostra privacy nell era era della comunicazione digitale.

Applicazioni per l autenticazione Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

Elementi di Sicurezza e Privatezza Lezione 1 - Introduzione

MANUALE DI INSTALLAZIONE CERTIFICATO DIGITALE PER LA SICUREZZA CERTIFICATION AUTHORITY DEL SISTEMA PIEMONTE

Quasar Sistemi S.r.l.

La sicurezza nelle reti di calcolatori

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

Corso di ARCHITETTURA DEI SISTEMI INFORMATIVI - Prof. Crescenzio Gallo. 114 Sistemi informativi in rete e sicurezza 4.6

Software di crittografia per GNOME. Nicola VITUCCI POuL Politecnico Open unix Labs

CERTIFICATI DIGITALI. Manuale Utente

Comunicazioni sicure tra server di posta elettronica

Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec

Manuale Utente Prerequisiti per DigitalSign Lite Sistema Operativo Linux a 64 bit

Firma Digitale. Informazioni sul servizio ORDINE DEGLI INGEGNERI DELLA PROVINCIA DI GENOVA

Lezione 7 Sicurezza delle informazioni

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer

POSTA ELETTRONICA CERTIFICATA Manuale operativo. Manuale operativo Posta Elettronica Certificata (PEC) del Comune di Como

Sicurezza in Internet

Sommario. Introduzione alla Sicurezza Web

FAQ per l utilizzo della piattaforma tecnologica KEP (Key Exchanger Platform)

Sicurezza in Internet. Criteri di sicurezza. Firewall

LA PEC: I RISCHI SPECIFICI E I SISTEMI OMOLOGHI ALL'ESTERO

Coordinazione Distribuita

Corso di Amministrazione di Reti A.A. 2002/2003

Sicurezza digitale. requisiti: confidenzialità, integrità, autenticazione, autorizzazione, assicurazione, riservatezza. soddisfatti mediante

Sistema di gestione Certificato MANUALE PER L'UTENTE

Ordine degli Ingegneri Provincia di Latina Commissione dell Ingegneria dell Informazione

Sicurezza nelle reti

DNSSEC. Cos è DNSSEC? Perché serve DNSSEC? Per un Internet sicuro

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione

Reti di Telecomunicazione Lezione 7

Soluzione di equazioni quadratiche

Crittografia e sicurezza informatica. Sistema di voto elettronico

La firma digitale. Diagnostica per immagini e Radioterapia nel 2011 Fare sistema CongressoAITASIT novembre 2011

Aspetti Crittografici nel Cloud Computing

risulta (x) = 1 se x < 0.

PEC un obbligo che semplifica

Crittografia. Crittografia Definizione. Sicurezza e qualità dei servizi su internet Università degli Studi di Pavia, C.

Sistemi Informativi I Lezioni di Sistemi Informativi

POSTA ELETTRONICA CERTIFICATA

Introduzione ai certificati S/MIME e alla posta elettronica certificata...2 Procedura di installazione del certificato personale S/MIME rilasciato

Lezioni di Matematica 1 - I modulo

1. PRIME PROPRIETÀ 2

Transcript:

Cifratura Asimmetrica CIFRATURA ASIMMETRICA Algoritmo di Cifratura E() c = E(k 1, m) la cifratura del messaggio in chiaro m con la chiave k 1 produce il testo cifrato c Algoritmo di Decifratura D() m = D(k 2, c) = D(k 2, E(k 1, m)) la decifratura del messaggio cifrato c con la chiave k 2 (k 2 k 1 ) produce il testo in chiaro m Proprietà di E() e D() I. Dato c è molto difficile ricavare m se non si conosce k 2 II. Dati m e c è molto difficile ricavare k 1, a meno che k 1 non sia utilizzata una sola volta III. Anche se si conosce k 1 è molto difficile ricavare k 2 e viceversa Cifratura Asimmetrica 1

Chiave Pubblica e Privata Ogni utente ha una coppia di chiavi (k 1, k 2 ) una la mantiene segreta, l altra la rende pubblica Ad esempio: PUB A : chiave pubblica di Alice PRIV A : chiave privata di Alice Cifratura Asimmetrica 2 Algoritmi più noti RSA (1978) probabilmente il più diffuso; la sua sicurezza non è stata provata Knapsack (1978) violato più volte, non è considerato sicuro Rabin (1979) ElGamal (1985) Schnorr (1991) equivalenti al problema del logaritmo discreto Cifratura Asimmetrica 3

Segretezza Alice vuole inviare un messaggio segreto m a Bob Global DB Alice: PUB A Bob: PUB B PRIV A PRIV B 1. Alice si procura PUB B, la chiave pubblica di Bob 2. Alice calcola c = E(PUB B, m) 3. Alice invia C a Bob 4. Bob calcola m = D(PRIV B, c) Cifratura Asimmetrica 4 Metafora: cassetta postale Alice vuole inviare un messaggio segreto M a Bob Global DB Alice: PUB A Bob: PUB B PRIV A PRIV B Chiunque può inserire un messaggio nella cassetta postale, ma solo chi ha la chiave (privata) può aprire la cassetta e prelevare il messaggio Cifratura Asimmetrica 5

Provenienza di un messaggio Alice non vuole inviare un messaggio segreto a Bob ma vuole fornirgli una prova di provenienza Global DB Alice: PUB A Bob: PUB B PRIV A m, s PRIV B 1. Alice firma m, cioè calcola s = E(PRIV A, m) 2. Alice invia (m, s) a Bob 3. Bob si procura PUB A e verifica s, cioè 4. calcola m = D(PUB A, s) e verifica che m m Cifratura Asimmetrica 6 Metafora: firma Alice non vuole inviare un messaggio segreto a Bob ma vuole fornirgli una prova di provenienza Global DB Alice: PUB A Bob: PUB B PRIV A m, s PRIV B Solo chi ha la chiave privata può firmare un documento. Tutti gli altri possono verificare la firma con la chiave pubblica. Cifratura Asimmetrica 7

Segretezza + Provenienza Alice vuole inviare un messaggio segreto m a Bob, fornendogli anche una prova di provenienza Global DB PRIV A C Alice: PUB A Bob: PUB B PRIV B 1. Alice calcola z = E(PRIV A, m) 2. Alice si procura PUB B e calcola c = E(PUB B, z) 3. Alice invia c a Bob 4. Bob calcola z = D(PRIV B, c) 5. Bob si procura PUB A, 6. calcola m = D(PUB A, c) e 7. verifica che m m Cifratura Asimmetrica 8 Firma Digitale Algoritmo di firma S() s = E(PRIV A, m) s costituisce la firma digitale del messaggio m con la chiave Priv A Algoritmo di verifica V() V(PUB A, m, s) restituisce VERO se s è la firma digitale di m con PRIV A, FALSO altrimenti Proprietà di S() e V() I. Dato m è molto difficile produrre s se non si conosce PRIV A II. Dati m e s è molto difficile ricavare PRIV A, a meno che non sia utilizzata una sola volta III. Anche se si conosce PUB A è molto difficile ricavare PRIV A e viceversa Cifratura Asimmetrica 9

Algoritmi di Firma più Diffusi RSA Lo stesso algoritmo si utilizza sia per firmare sia per cifrare (E S; D V) La verifica della firma restituisce il messaggio ElGamal Per firmare e cifrare si usano algoritmi diversi (E S; D V) DSS Algoritmo per la sola firma digitale Cifratura Asimmetrica 10 Centro Distribuzione Chiavi L algoritmo simmetrico non richiede segreti condivisi Quando necessario, basta solo (!!) procurarsi la chiave pubblica del partner... ma dove si va a prenderla?......presso il Centro Distribuzione Chiavi una terza entità fidata che assicura l integrità del collegamento (utente chiave pubblica dell utente) Alice: PUB A Bob: PUB B Cifratura Asimmetrica 11

Centro Distribuzione Chiavi CDC non deve mantenere alcuna informazione segreta, ma deve garantire l integrità del collegamento utente chiave pubblica dell utente Se un avversario M sostituisce (Alice, PUB A ) con (Alice, PUB M ) allora può leggere i messaggi segreti indirizzati ad Alice e firmare al posto di Alice Cifratura Asimmetrica 12 Distribuzione delle Chiavi M1 CDC M2 M3 Alice vuole conoscere la chiave pubblica PUB B di Bob M1 A CDC: B M2 CDC A: B, PUB B Alice ritiene che PUB B sia la chiave pubblica di Bob Alice invia un messaggio segreto m a Bob M3 A B: E(PUB B, m) Sembra tutto OK ma Cifratura Asimmetrica 13

L uomo nel mezzo è sempre in agguato M1 M4 M5 M2 M3 M6 CDC Alice vuol conoscere la chiave pubblica PUB B di Bob M1 A M: B M2 M CDC: B M3 CDC M: B, PUB B M4 M A: B, PUB M Alice ritiene che PUB M sia la chiave pubblica di Bob Cifratura Asimmetrica 14 L uomo nel mezzo è sempre in agguato M1 M4 M5 M2 M3 M6 CDC Alice invia un messaggio segreto m a Bob M5 A M: E(PUB M, m) M6 M B: E(PUB B, m) L avversario (l uomo-nel-mezzo) può leggere tutti i messaggi segreti che Alice invia a Bob Problema analogo quando Alice vuole procurarsi la chiave pubblica di Bob per verificare una firma digitale che lei presume essere di Bob Cifratura Asimmetrica 15

Certificati IL PROBLEMA Tutti i problemi nascono dal messaggio M4 Alice lo attribuisce (erroneamente) a CDC ma non c è nessuna prova che quel messaggio sia effettivamente di CDC È un problema di autenticità e non di segretezza: M4 non trasporta alcuna informazione segreta Cifratura Asimmetrica 16 Certificati LA SOLUZIONE Il centro distribuzione chiavi CDC deve rilasciare un certificato: C(CA, A) = Alice, PUB A, S(PRIV CA, (A, PUB A )) un documento/messaggio firmato da CDC che stabilisce il collegamento (utente chiave pubblica dell utente) CDC viene detto Certification Authority (Autorità di Certificazione) Cifratura Asimmetrica 17

Certification Authority CA è una terza entità fidata che garantisce l integrita del collegamento (utente chiave pubblica dell utente e la corrispondenza tra una chiave pubblica ed il soggetto possessore della chiave pubblica (certificazione) Cifratura Asimmetrica 18 Distribuzione Chiavi con Certificato M1 M2 Alice: C(CA, A) Bob: C(CA, B) M3 Alice vuole sapere la chiave pubblica PUB B di Bob M1 A CA: B M2 CA A: C(CA, B) Alice verifica la firma della CA e si convince che PUB B è la chiave pubblica di Bob C(CA, B) = B, PUB B, S(PRIV CA, (B, PUB B )) Cifratura Asimmetrica 19

Chi certifica una CA? PROBLEMA Alice deve verificare la firma di CA......ma come fa Alice ad essere sicura che PUB CA è proprio la chiave pubblica di CA? Cifratura Asimmetrica 20 Chi certifica una CA? SOLUZIONE CA pubblica PUB CA sui quotidiani più importanti Every problem in Computer Science can be solved by another level of indirection (D. Wheeler) La chiave di CA è certificata da un altra CA... un altra chiave pubblica, un altro certificato e così via Certification Hierarchy (X.509), Certification Web (PGP) Cifratura Asimmetrica 21

Come si ragiona Alice riceve C(CA, B) e lo verifica per mezzo di PUB CA Siccome Alice crede che PUB CA appartiene a CA allora è portata a credere che CA abbia detto PUB B appartiene a Bob Siccome Alice si fida di CA allora è portata a credere che PUB B appartiene a Bob Cifratura Asimmetrica 22 Come si ragiona Alice si fida di CA, cioè Alice ritiene che CA gestisca correttamente le proprie chiavi Alice ritiene che CA faccia bene il proprio mestiere di certificatore CA ha verificato con certezza l identità di Bob CA ha verificato che PUBB non sia già in uso (difficile!!) CA ha verificato il possesso di PRIVB da parte di Bob Alice ritiene che CA gestisca bene il Database globale CA garantisce l integrità del database Cifratura Asimmetrica 23

Significato di un certificato C(CA, B) Dopo aver ricevuto C(CA, B) Alice può concludere che PUB B appartiene a Bob PUB CA non può concludere che sta parlando con Bob Un certificato non dá alcuna garanzia sull identità del partner della comunicazione Cifratura Asimmetrica 24 Identificazione Alice invia un messaggio (challenge) a Bob che lo deve restituire firmato con PRIV B M1: C(CA, B) M2: r M3: E(PRIV B,r) PUB CA Dopo aver ricevuto M3 e verificato E(PRIV B, r) Alice può concludere che sta parlando con Bob perché solo Bob può aver firmato M2 perché solo lui conosce PRIV B Cifratura Asimmetrica 25

Diffie-Hellmann + Firma Digitale Alice e Bob vogliono condividere un segreto, la chiave K AB C(CA, B) C(CA, A) a K AB? b C(CA, A) C(CA, B) Alice: C(CA, A) Bob: C(CA, B) Cifratura Asimmetrica 26 Diffie-Hellmann + Firma Digitale Alice sceglie un numero random a (segreto) M1 A B: g a mod p Bob sceglie un numero random b (segreto), calcola K AB = (g a ) b mod p = g ab mod p M2 B A: g b mod p, E(K AB, E(PRIV B, (g b mod p, g a mod p))) Alice calcola K AB = (g a ) b mod p = g ab mod p M3 A B: E(K AB, E(PRIV A, (g b mod p, g a mod p))) Alice (Bob) conclude che K AB è la chiave per comunicare ora con Bob (Alice) E(K AB, ): cifratura simmetrica E(PRIV X, ): cifratura asimmetrica; [va bene anche S(PRIV X, )] Cifratura Asimmetrica 27

Organizzazione Gerarchica CA CA = Certification Autority U = User CA CA U CA CA CA U U U U U SCALABILITÀ DELEGA dell AUTORITÀ e della FIDUCIA Privacy Enhanced Internet Mail (PEM) RFC 1421 1424 Cifratura Asimmetrica 28 Organizzazione Gerarchica Y CA CA CA (Certification Autority) C B A U U U Alice vuole inviare la propria chiave PUB A a Bob, allora Alice invia a Bob un certificato: CA(Y, A) = Alice, PUB A, S(PRIV Y, PUB A ) Cifratura Asimmetrica 29

Organizzazione Gerarchica Y Z Y PCA (Policy Certification Autority) X Y CA CA CA C B A U U U Alice vuole inviare la propria chiave PUB A a Carol, allora Alice invia a Carol C(Y, A), C(Z, Y) Delega di Autorità e di Fiducia Cifratura Asimmetrica 30 Delega di Autorità Z delega la certificazione a Y Z deve controllare che Y svolga bene il proprio compito Z pubblica la politica che segue per delegare l autorità Cifratura Asimmetrica 31

Delega di Fiducia Carol si fida di Z ed ha la sua chiave pubblica PUB Z Quando Carol riceve C(Y, A), C(Z, Y), Carol si fida che PUB Y è la chiave pubblica di Y Siccome si fida di Z e Z certifica Y, allora Carol si fida anche di Y e quindi si fida che PUB A è la chiave pubblica di Alice Z Y In generale tra una CA e l utente possono esserci una o più CA L utente si deve fidare di tutte B A Cifratura Asimmetrica 32 Pretty Good Privacy (PGP) È il singolo utente che decide quanta fiducia riporre in un certificato PGP is for people who prefer to pack their own parachutes (P. Zimmerman) C(M, B) Dave C(D, B) Mallet Alice PUB B? Carol C(C, B) In base al numero di certificati e la fiducia in ciascun individuo, Alice definisce il proprio livello di fiducia in PUB B Bob Cifratura Asimmetrica 33

FORMATO DI UN CERTIFICATO STANDARD X.509 (RFC 2459) PRINCIPALI COMPONENTI Il nome dell entità certificata La chiave pubblica di tale entità Il nome della CA La firma digitale ALTRE COMPONENTI Algoritmi usati per la firma digitale Periodo di validità del certificato Cifratura Asimmetrica 34 X.509: ESEMPIO (continua) BASIC INFORMATION del subject Signature Algorithm: sha1withrsaencryption Issuer: C=US, O=American Express Company, Inc., OU=American Express Technologies, CN=American Express Global Certificate Authority Validity Not Before: Aug 14 19:06:00 1998 GMT Not After : Aug 14 23:59:00 2013 GMT Subject: C=US, O=American Express Company, Inc., OU=American Express Technologies, CN=American Express Global Certificate Authority Subject Public Key Info: Public Key Algorithm: rsaencryption RSA Public Key: (2048 bit) Modulus (2048 bit): X.500 (ITU-T) chiave del subject f0:24:26:66:2e:fb:eb:4a:73:71:53:89:47:cb:26:... Exponent: 65537 (0x10001) Cifratura Asimmetrica 35

CERTIFICATO X.509 (continua) Signature Algorithm: sha1withrsaencryption c7:61:45:a8:8a:71:b9:be:34:e9:21:7b:21:cd:56:13:98:d5:... -----BEGIN CERTIFICATE----- MIIEBDCCAuygAwIBAgICAIUwDQYJKoZIhvcNAQEFBQAwgZYxCzAJBgNVBAYTAlVT MScwJQYDVQQKEx5BbWVyaWNhbiBFeHByZXNzIENvbXBhbnksIEluYy4xJjAkBgNV BAsTHUFtZXJpY2FuIEV4cHJlc3MgVGVjaG5vbG9naWVzMTYwNAYDVQQDEy1BbWVy awnhbibfehbyzxnziedsb2jhbcbdzxj0awzpy2f0zsbbdxrob3jpdhkwhhcnotgw ODE0MTkwNjAwWhcNMTMwODE0MjM1OTAwWjCBljELMAkGA1UEBhMCVVMxJzAlBgNV BAoTHkFtZXJpY2FuIEV4cHJlc3MgQ29tcGFueSwgSW5jLjEmMCQGA1UECxMdQW1l cmljyw4grxhwcmvzcybuzwnobm9sb2dpzxmxnja0bgnvbamtluftzxjpy2fuiev4 chjlc3mgr2xvymfsienlcnrpzmljyxrlief1dghvcml0etccasiwdqyjkozihvcn AQEBBQADggEPADCCAQoCggEBAPAkJmYu++tKc3FTiUfLJjxTkpRMysKFtQ34w1e9 Lyofahi3V68MABb6oLaQpvcaoS5mJsdoo4qTaWa1RlYtHYLqkAwKIsKJUI0F89Sr c0hwzxksklrvfjswwuuekhwg3+jh6+hpt0n+h8onggaetcfazx38yw+tm3lpqv7y 8/nabpEQ+ky16n4g3qk5L/WI5IpvNcYgnCuGRjMK/DFVpWusFkDpzTVZbzIEw3u1 D3t3cPNIuypSgs6vKW3xEW9t5gcAAe+a8yYNpnkTZ6/4qxx1rJG1a75AsN6cDLFp hrlxkrnfyt/r/eayypadedvfukpbepalefy+xteflegr9a0caweaaanamfgwegyd VR0TAQH/BAgwBgEB/wIBBTAOBgNVHQ8BAf8EBAMCAQYwFwYDVR0gBBAwDjAMBgoq hkig+q8kaqubmbkga1uddgqsbbbxrzv7nicrqaj8l0yl6yrpma0gcsqgsib3dqeb BQUAA4IBAQDHYUWoinG5vjTpIXshzVYTmNUwY+kYqkuSFb8LHbvskmnFLsNhi+gw RcsQRsFzOFyLGdIr80DrfHKzLh4n43WVihybLsSVBYZy0FX0oZJSeVzb9Pjc5dcS sudhpibkmwvkyjfg3nzxgwlmrmn8kq0wn3qtrpchsy3766lqy8hrqajaa2mhpzde VcHF7cTjjgwml5tcV0ty4/IDBdACOyYDQJCevgtbSQx48dVMVSng9v1MA6lUAjLR V1qFrEPtWzsWX6C/NdtLnnvo/+cNPDuom0lBRvVzTv+SZSGDE1Vx60k8f4gawhIo JaFGS0E3l3/sjvHUoZbCILZerakcHhGg -----END CERTIFICATE----- chiave di CA La CA crea il certificato firmando la basic information con la propria chiave privata Cifratura Asimmetrica 36 Nomi Secondo X.500 COUNTRY CO=IT ORGANIZATION CO=IT, O=University of Pisa ORGANIZATIONAL UNIT CO=IT, O=University of Pisa, OU= Dipartimento di Ingegneria della informazione COMMON NAME CO=IT, O=University of Pisa, OU= Dipartimento di Ingegneria della informazione, CN=Gianluca Dini Cifratura Asimmetrica 37

Esempio di Algoritmo Asimmetrico: RSA Rivest Shamir Adleman (RSA, 1978) CREAZIONE DELLE CHIAVI Selezionare p, q due numeri primi grandi (100 200 cifre decimali) Sia n = p q ed φ(n)=(p-1)(q-1) Scegliere un numero random e tale che GCD(e, φ(n)) = 1 Calcolare d tale che e d = 1 mod φ(n) CHIAVE K 1 (PRIV): (d, n) CHIAVE K 2 (PUB): (e, n) A questo punto i numeri p e q possono essere cancellati ma non devono mai essere rivelati Cifratura Asimmetrica 39

Algoritmo RSA CIFRATURA Sia m un intero 1 m < n c =m e mod n DECIFRATURA c d m mod n Queste due operazioni sono pesanti dal punto di vista computazionale Cifratura Asimmetrica 40 Algoritmo RSA DIMOSTRAZIONE: c d m de m k φ(n)+1 mod n, k (m φ(n) ) k m mod n (Teorema di Eulero) m mod n Ragionamento analogo se si cifra con d e si decifra con e TEOREMA DI EULERO intero n > 1, a n*, a φ(n) 1 mod n Cifratura Asimmetrica 41

RSA: Esempio CREAZIONE delle CHIAVI Siano p = 47 e q = 71 n = p q = 3337 e φ(n) = (p 1) (q 1)= 46 70 = 3220 Sia e = 79 (scelta a random) Si risolve e d 1 mod φ(n) cioè 79 d 1 mod 3220 da cui d = 1019 (continua ) Cifratura Asimmetrica 42 RSA: Esempio CIFRATURA Sia m = 9666683 Si divide m in blocchi m i < n m 1 = 966; m 2 = 668; m 3 = 3 c 1 = m 1 e mod n = 96679 mod 3337 = 2276 c 2 = 66879 mod 3337 = 2423 c 3 = 379 mod 3337 = 158 c = c 1 c 2 c 3 = 2276 2423 158 (continua ) Cifratura Asimmetrica 43

RSA: Esempio DECIFRATURA m 1 = c 1d mod n = 2276 1019 mod 3337 = 966 m 2 = 2423 1019 mod 3337 = 668 m 3 = 158 1019 mod 3337 = 3 m = 966 668 3 Cifratura Asimmetrica 44 Un sistema insicuro con componenti sicure ASTA ELETTRONICA Formato del messaggio d offerta: m = bidder, offer, con offer su 32 bit Per privacy, il campo offer è cifrato con PUB ASTA Alice dispone di un certificato relativo a PUB ASTA Cifratura Asimmetrica 45

Un sistema insicuro con componenti sicure ASTA ELETTRONICA A, c A L avversario prova tutte le possibili (2 32 ) offerte finché ne trova una o, tale che E(PUB ASTA, o) c A L avversario fa quindi la minima offerta o = o + 1 Cifratura Asimmetrica 46 Un sistema insicuro con componenti sicure ASTA ELETTRONICA Sia PRIV ASTA = (d, n) e PUB ASTA = (e, n) Sia c A = o Ae mod n L avversario M si procura c A e chiede alla casa d asta di decifrare c A La casa d asta rifiuta perché, ad esempio, sa/si accorge che c A è la versione cifrata di un offerta (continua...) Cifratura Asimmetrica 47

Un sistema insicuro con componenti sicure L avversario M si procura c A seleziona un valore x (opportuno), calcola c M = x e c A mod n e chiede alla casa d asta di decifrargli c M Questa volta la casa d asta acconsente e calcola e ritorna all avversario M il valore t = c Md = x ed c Ad = x o de A = x o A mod n L avversario M ricava o A = t x -1 mod n Chosen-ciphertext attack Cifratura Asimmetrica 48 Proprietà moltiplicative RSA è un omomorfismo c = m e mod n m = m 1 m 2 c = c 1 c 2 Una possibile contromisura è imporre una certa struttura al testo in chiaro: m = x x Cifratura Asimmetrica 49

Sicurezza di RSA La sicurezza di RSA è basata sulla difficoltà della scomposizione in fattori primi di numeri interi grandi, ma......finora non è mai stato provato che RSA è equivalente alla fattorizzazione Cifratura Asimmetrica 50 Sicurezza di RSA Se la scomposizione è facile violare RSA è facile Dimostrazione Sia (d, n) la chiave privata ed (e, n) la chiave pubblica. Si scompone n e si ricava p e q. Quindi, si puó ricavare φ(n) e quindi si può risolvere e d = 1 mod φ(n) Se la scomposizione è difficile violare RSA è difficile L implicazione non è mai stata provata, ma......finora non è mai stato trovato un metodo più facile per violare RSA che quello di scomporre in fattori il modulo n Cifratura Asimmetrica 51

Alcuni Fatti sui Numeri Primi I numeri primi sono tanti π(n) n/ln n (buona approssimazione anche per n piccoli) È facile dire se un numero n è primo o composto (verifica di primalità) È facile costruire un numero primo random di k bit algoritmi polinomiali in k Fattorizzare numeri grandi è difficile Fattorizzare numeri a più di 110 cifre decimali è praticamente impossibile con la tecnologia corrente Cifratura Asimmetrica 52 Forza dei Meccanismi di Cifratura Algoritmi sicuri da un punto di vista empirico Algoritmi la cui sicurezza non è stata provata ma che hanno superato nel tempo tutti i tentativi di attacco DES, RSA Algoritmi incondizionatamente sicuri Il testo cifrato non dà alcuna informazione sul testo in chiaro Neanche un nemico con risorse illimitate può violare questo algoritmo Esempio: One-Time Pad Cifratura Asimmetrica 53

Forza dei Meccanismi di Cifratura Algoritmi la cui sicurezza è stata provata È stato dimostrato che violare l algoritmo è difficile almeno quanto risolvere un problema difficile dal punto di vista della teoria della complessità. Esempio: ElGamal, Diffie-Hellmann sono equivalenti al problema del logaritmo discreto Attenzione è difficile almeno quanto ha valore asintotico, per un problema di sufficientemente grande. Ma quanto deve essere grande il problema? Non c è nessuna prova che questi problemi computazionalmente difficili siano veramente difficili Cifratura Asimmetrica 54