Sei sulla pagina 1di 118

1

2. Crittografia

F. Garzia, Crittografia

Sommario
1. Crittografia e hashing: introduzione 2. Crittografia e hashing: concetti fondamentali e definizioni 3. Algoritmi di crittografia: DES, AES, RSA 4. Servizi fondamentali di sicurezza

F. Garzia, Crittografia

1. Crittografia e hashing: introduzione

F. Garzia, Crittografia

Crittografia e hashing sicuro


La tecnologia alla base dei meccanismi di sicurezza quella degli algoritmi di crittografia e di hashing sicuro (anche detti di message digest). Combinando opportunamente questi algoritmi possibile realizzare servizi di pi alto livello, come quelli di autenticazione e di riservatezza.

F. Garzia, Crittografia

Algoritmi di crittografia
Trasformano (cifrano) reversibilmente un insieme di dati, ad esempio un documento, in modo da renderlo non intelligibile. Affinch tali algoritmi siano di qualche utilit pratica occorre che soddisfino le seguenti condizioni fondamentali: la cifratura e la decifratura deve avvenire in funzione di una variabile detta chiave costituita da una sequenza di bit di lunghezza variabile in funzione dell'algoritmo e del livello di sicurezza che si desidera ottenere; le operazioni di cifratura e decifratura sono relativamente semplici nel caso in cui si conosca la chiave; in caso contrario risultano laboriose al punto da risultare praticamente inattuabili; risulta egualmente laborioso dedurre la chiave con cui stato cifrato un documento confrontandolo con la sua versione in chiaro (cio non cifrata).
F. Garzia, Crittografia

Algoritmi di crittografia
La lunghezza delle chiavi, quando non fissata dal particolare algoritmo di crittografia, pu tipicamente assumere un insieme di valori che varia in funzione dell'algoritmo stesso e degli standard applicabili. La lunghezza effettivamente scelta per le chiavi da utilizzare nell'ambito di una specifica applicazione sempre il risultato di un compromesso fra esigenze di sicurezza e potenza dei calcolatori a disposizione. Al crescere della dimensione della chiave, infatti, aumenta infatti la sicurezza (intesa come difficolt di decifrare le informazioni crittografate) ma anche la potenza di elaborazione (numero di istruzioni al secondo) necessaria per contenere i tempi delle operazioni di cifratura entro limiti accettabili.

F. Garzia, Crittografia

Algoritmi simmetrici
Anche detti a chiave privata, utilizzano la stessa (ed unica) chiave privata, per cifrare e decifrare. Non adatti nella comunicazione continuativa fra N soggetti indipendenti: occorre una chiave privata per ogni coppia di soggetti; ogni soggetto deve possedere N-1 chiavi, mantenerle segrete e ricordare la chiave da utilizzare con ciascuno degli altri soggetti; Se la chiave generata autonomamente dal soggetto che avvia la comunicazione, necessario che venga trasmessa al destinatario, e durante il trasferimento potrebbe essere intercettata. Relativamente poco complessi vengono spesso usati in congiunzione con algoritmi asimmetrici. Uno degli algoritmi simmetrici utilizzati al momento il DES (Data Encription Standard) con chiavi di 56 o 112 bit.
F. Garzia, Crittografia

Algoritmi asimmetrici
a doppia chiave o a chiave pubblica, di concezione recente (1976) utilizzano due chiavi distinte per cifrare e decifrare: un documento cifrato con una chiave pu essere decifrato con laltra e viceversa; le chiavi vengono generate in coppia da uno speciale algoritmo ed di fatto impossibile ottenere una chiave a partire dallaltra; una qualsiasi delle due chiavi viene detta pubblica, pu essere distribuita; laltra, detta privata, deve essere mantenuta segreta. Nella comunicazione fra N soggetti sono pi adatti dei simmetrici: occorre una sola coppia di chiavi per ciascun soggetto. ogni soggetto genera autonomamente una propria coppia di chiavi, ed tenuto a mantenere segreta una sola di esse, quella privata, mentre pu, anzi deve, pubblicare laltra;
F. Garzia, Crittografia

Algoritmi asimmetrici
le chiavi private non devono essere scambiate, dunque non sussiste pericolo di intercettazioni. Se il soggetto A vuole inviare un messaggio riservato al soggetto B, ad esempio, cifra il messaggio con la chiave pubblica di B che, in quanto pubblica, nota a tutti. In questo modo il messaggio sar decifrabile soltanto con la chiave privata di B che, in quanto privata, solo B conosce. Lalgoritmo RSA, proposto da Rivest, Shamir e Adleman nel 1978, attualmente considerato come standard per la crittografia a chiave pubblica. Esistono varie implementazioni di RSA, che utilizzano coppie di chiavi di 512 o di 1024 bit.

F. Garzia, Crittografia

10

Utilizzo congiunto di algoritmi simmetrici ed asimmetrici


A causa della loro complessit, le implementazioni degli algoritmi asimmetrici sono generalmente troppo lente per cifrare direttamente i documenti. Per questo motivo essi si utilizzano spesso in congiunzione con algoritmi simmetrici e di hashing sicuro Per inviare un documento di grandi dimensioni in modo riservato, ad esempio, si genera una password casuale, si cifra il documento con DES (algoritmo simmetrico di veloce esecuzione) la password casuale, poi si cifra la password stessa (molto pi breve del documento) con RSA (algoritmo asimmetrico, pi lento), ed infine si invia il tutto (documento cifrato in modo simmetrico e password cifrata in modo asimmetrico) al destinatario.
F. Garzia, Crittografia

11

Algoritmi di hashing sicuro


a partire da un documento D si genera una sequenza di bit, detta digest, strettamente correlata a D e di lunghezza fissa (cio indipendente dalla dimensione di D). SHA (Secure Hash Algorithm): versioni implementate che generano digest di 160 bit ad una velocit soddisfacente nella maggioranza delle applicazioni. Lutilizzo pi immediato di SHA nelle verifiche di integrit: confrontando digest ottenuti da uno stesso documento a distanza di tempo, possibile verificare facilmente se il documento ha subito alterazioni. SHA inoltre spesso utilizzato insieme ad RSA per generare e validare firme digitali.
F. Garzia, Crittografia

12

Algoritmi di hashing sicuro


Per generare una firma: si estrae un digest SHA dal documento da firmare; si cifra RSA il digest con la chiave privata del firmatario. Chiunque pu verificare la validit della firma: decifrando la firma con la chiave pubblica del firmatario; generando a parte un digest SHA del documento firmato; confrontando il digest ottenuto dalla firma con quello ottenuto dal documento.

F. Garzia, Crittografia

13

Crittografia e hashing: concetti fondamentali e definizioni

F. Garzia, Crittografia

14

Concetti fondamentali e definizioni


Crittografia: tecniche per tenere segrete le informazioni, limitandone laccesso ad un ristretto numero di persone autorizzate Cifratura: operazione tramite la quale si nascondono le informazioni tramite un algoritmo che sfrutta una chiave per convertire il testo chiaro in testo cifrato o crittogramma Decrittazione: conversione da testo cifrato a chiaro, che sfrutta la chiave del cifrario

F. Garzia, Crittografia

15

Concetti fondamentali e definizioni


il processo di crittografia deve essere reversibile e consentire, quindi, di ricostruire il documento precedentemente crittato il messaggio chiamato testo in chiaro (plaintext o cleartext) Messaggio crittografato: testo cifrato (ciphertext) La moderna crittografia tratta tutti gli aspetti di messaggi sicuri, dell'autenticazione, delle firme elettroniche, del commercio elettronico e altre applicazioni. I moderni algoritmi non possono essere eseguiti da esseri umani, ma solo da computer o dispositivi hardware specializzati

F. Garzia, Crittografia

16

Codice di Cesare
Garantire la sicurezza nello scambio di informazioni sempre stato, nella storia delluomo, un problema rilevante si ha traccia di applicazioni di crittografia (in special modo sulle comunicazioni) risalenti persino agli antichi egizi Giulio Cesare per far arrivare gli ordini alle sue truppe ricorreva al mascheramento dellinformazione, in modo che il messaggio venisse interpretato solo dai suoi generali e non da nemici che avrebbero potuto impossessarsene Sostituzione monoalfabetica (di Cesare) TESTO IN CHIARO: TESTO CIFRATO: ABCDEFGHIJKLMNOPQRSTUVWXYZ QWERTYUIOPASDFGHJKLZXCVBNM

F. Garzia, Crittografia

17

Crittografia a chiave pubblica o privata


Simmetrici (o a chiave segreta o privata): utilizzano la stessa chiave per la codifica e la decodifica. Asimmetrici (o a chiave pubblica): usano una chiave differente per i due processi di codifica e di decodifica; la chiave per la decodifica non pu essere derivata da quella di codifica

F. Garzia, Crittografia

18

Crittografia a chiave pubblica


Gli algoritmi asimmetrici permettono di rendere pubblica la chiave di codifica, cosicch chiunque pu essere in grado di codificarli utilizzando la chiave pubblica del destinatario, ma solo chi conosce la chiave di decodifica (chiave privata) pu interpretare il messaggio la chiave pubblica pu essere facilmente distribuita non necessario inviarne una copia a tutti i corrispondenti: essa pu essere prelevata da un server di chiavi pubblico mantenuto da un'autorit di certificazione

F. Garzia, Crittografia

19

Crittografia a chiave pubblica


permette di autenticare il creatore del messaggio In pratica gli algoritmi a chiave asimmetrica e quelli a chiave simmetrica sono spesso utilizzati insieme: con la chiave pubblica si codifica una chiave di crittografia generata casualmente questa ultima utilizzata per crittografare il messaggio utilizzando un algoritmo simmetrico Molti algoritmi di crittografia sono disponibili pubblicamente attraverso libri, uffici brevetti o Internet: l'algoritmo di pubblico dominio soggetto alla revisione di centinaia di esperti che ne scoprono e sistemano le eventuali debolezze.

F. Garzia, Crittografia

20

La chiave
una funzione opportunamente progettata e consiste di una stringa relativamente corta caratteristica fondamentale: possibilit di cambiare la chiave quando necessario o quando si desidera lunghezza della chiave: parametro di progetto critico, che determina il tempo necessario per decifrare il testo cifrato. In base al numero di cifre che compongono una chiave, varia il numero di chiavi disponibili con una data tecnica: 2 cifre 3 cifre 6 cifre 100 possibili chiavi da (00 a 99) 1000 chiavi possibili 1000000 possibili chiavi.

F. Garzia, Crittografia

21

La chiave
Chiave lunga chiave molto tempo necessario (work factor) per trovare la

se lalgoritmo ben progettato possibile solo lattacco esaustivo numero medio di tentativi richiesti: 2N-1 con N=lunghezza della chiave work factor proporzionale all'esponente della lunghezza della chiave La segretezza consiste nell'avere un buon algoritmo di dominio pubblico ed una chiave abbastanza lunga, ma segreta
Dimensione chiave (bits) 32 56 128 168 Numero di chiavi diverse 232 = 4.3 x 109 256 = 7.2 x 1016 2128 = 3.4 x 1038 2168 = 3.7 x 1050 Tempo richiesto a 106 decriptazioni per millisecondo 2.15 milliseconds 10 ore 5.4 x 1018 anni 5.9 x 1030 anni

F. Garzia, Crittografia

22

Crittoanalisi
Ciphertext only algoritmo di crittografia testo cifrato Known plaintext algoritmo di crittografia testo cifrato una o pi coppie testo in chiaro / testo cifrato Chosen plaintext algoritmo di crittografia testo cifrato messaggi in chiaro scelti dal criptoanalista con i corrispondenti messaggi cifrati

F. Garzia, Crittografia

23

Cipher Block Chaining Mode


Produce un blocco di testo cifrato per ogni blocco di testo in chiaro in input per evitare regolarit si fa in modo che il blocco cifrato di ogni blocco dati dipenda da tutto il testo in chiaro precedente

F. Garzia, Crittografia

24

Algoritmi di crittografia: DES, AES, RSA

F. Garzia, Crittografia

25

DES (Data Encryption Standard)


sviluppato alla IBM, adottato dal NIST nel 1977 come standard per le applicazioni governative e commerciali chiave da 56 bit, blocco dati da 64 bit efficiente in hardware (implementato in VLSI) molto studiato, non sono note debolezze violato nel 1998 con attacco esaustivo su macchina special-purpose in meno di 3 giorni

F. Garzia, Crittografia

26

Struttura generale dell'algoritmo DES


16 fasi identiche di processo dette round, o cicli, pi una permutazione iniziale ed una finale dette IP e FP, tra di loro inverse (IP "disfa" l'azione di FP e viceversa) IP ed FP non hanno alcuna importanza per la cifratura, probabilmente aggiunte per facilitare il caricamento dei blocchi sullHW tipico degli anni '70; come effetto collaterale queste fasi causano un rallentamen-to nelle implementazioni SW del DES. Prima del ciclo principale, il blocco suddiviso in due met di 32 bit e processato alternativamente; questo incrocio detto rete di Feistel.

F. Garzia, Crittografia

27

Funzione Feistel (F-function)


Mescola met del blocco (32 bit) con una parte della chiave, in 4 passi Espansione: i 32 bit sono espansi a 48 bit utilizzando la permutazione di espansione E che duplica alcuni bit Miscelazione con la chiave: XOR con una sottochiave di 48 bit. Sedici sottochiavi, una per ogni ciclo, sono derivate dalla chiave principale tramite un gestore della chiave Sostituzione: il blocco viene diviso in 8 parti di 6 bit, ciascuna S-box (scatola di sostituzione) sostituisce 6 bit con 4 bit mediante una trasformazione non lineare definita da una tabella Permutazione: i 32 bit risultanti dalle S-box sono riordinati in base alle permutazioni fisse della P-box o permutation box.
F. Garzia, Crittografia

28

Struttura generale dell'algoritmo DES


Il risultato della funzione F viene combinato con l'altra met del blocco, e le due met sono scambiate prima del ciclo successivo. Dopo il ciclo finale, le met non sono scambiate per rendere le fasi di cifratura e decifratura pi simili. Le S-box forniscono il cuore della sicurezza del DES, senza di esse la cifratura sarebbe lineare e quindi facilmente violabile. L'alternanza di sostituzioni mediante le S-box, le permutazioni con la P-box e le espansioni forniscono la cosiddetta confusione e diffusione, concetto identificato da Claude Shannon negli anni '40 come condizione necessaria per rendere pratica e sicura la cifratura.

F. Garzia, Crittografia

29

Il gestore della chiave DES


Dai 64 bit della chiave sono presi 56 bit con la funzione Permuted Choice 1 (PC1), i rimanenti 8 sono scartati o utilizzati come bit di controllo della parit. I 56 vengono divisi in 2 met di 28 bit; nei cicli successivi entrambe le met vengono fatte slittare verso sinistra di 1 o 2 bit (per i round 1, 2, 9, 16 lo shift, cio lo slittamento, di 1 bit, per gli altri di 2) Poi sono scelti 48 bit per la sottochiave mediante la funzione Permuted Choice 2 (PC2), 24 bit dalla met di sinistra e 24 bit da quella di destra. La rotazione ("<<<" nello schema) significa che in ogni sottochiave si usa un insieme differente di bit; ogni bit usato pi o meno in 14 delle 16 sottochiavi. Il gestore delle chiavi per la decifratura simile: genera le chiavi nell'ordine inverso, quindi la rotazione verso destra invece che verso sinistra
F. Garzia, Crittografia

30

DES: schema complessivo

cifratura e la decifratura sono processi molto simili, la sola differenza che nella fase di decifratura le sottochiavi sono applicate nell'ordine inverso Questo semplifica enormemente l'implementazione, in particolare se effettuata direttamente con un circuito poich non occorre avere algoritmi separati per cifrare e per decifrare.
F. Garzia, Crittografia

31

Triplo DES
standardizzato per le applicazioni finanziarie nel 1985, dal 1999 incorporato nello standard DES tre esecuzioni del DES secondo uno schema EDE stessa resistenza del DES alla crittoanalisi tre chiavi da 56 bit equivalenti a una da 168 bit

F. Garzia, Crittografia

32

AES (Advanced Encryption Standard)


Call for proposal emessa dal NIST nel 1997 specifiche: sicurezza almeno pari a quella del Triplo DES maggiore efficienza blocco dati da 128 bit, chiavi da 128/192/256 bit criteri di valutazione: sicurezza, efficienza, uso di risorse, adattabilit hw e sw, flessibilit standard finale pubblicato nel 2001

F. Garzia, Crittografia

33

AES (Advanced Encryption Standard)


Opera su matrici di 44 byte chiamate stati (states) blocchi di 128 bit in input matrice State con 4 righe e 4 colonne numero di blocchi in input diventa di 32 bit pi lungo, viene aggiunta una colonna allo State, e cos via fino a 256 bit. In generale, si divide il numero di bit del blocco in input per 32 e il quoziente specifica il numero di colonne. Ogni round (fase) dell'AES (eccetto l'ultimo) consiste nei 4 passi: SubBytes Sostituzione non lineare di tutti i byte ShiftRows Spostamento dei byte di un certo numero di posizioni dipendente dalla riga di appartenenza MixColumns Combinazione dei byte con un'operazione lineare AddRoundKey Ogni byte della tabella viene combinato con la chiave di sessione, la chiave di sessione calcolata dal gestore delle chiavi. L'ultimo round salta il MixColumns.
F. Garzia, Crittografia

34

SubBytes
Nel passaggio SubBytes ogni byte della matrice viene modificato tramite la S-box a 8 bit, fornendo non linearit all'algoritmo La S-box utilizzata derivata da una funzione inversa nei campi finiti (28), conosciuta per avere delle ottime propriet di non linearit. Per evitare un potenziale attacco basato sulle propriet algebriche la S-box costruita combinando la funzione inversa con una trasformazione affine invertibile. La S-box stata scelta con cura per non possedere punti fissi e nemmeno l'inversa possiede punti fissi.
trasformazione S; bij = S(aij)
F. Garzia, Crittografia

35

ShiftRows
provvede a scostare le righe della matrice di un parametro dipendente dal numero di riga. prima riga: invariata, seconda: spostata di un posto verso sinistra, terza: due posti, quarta: tre posti l'ultima colonna dei dati in ingresso forma la diagonale della matrice in uscita Nelle operazioni l'indice della colonna inteso come modulo il numero di colonne

F. Garzia, Crittografia

36

MixColumns
prende i quattro byte di ogni colonna e li combina utilizzando una trasformazione lineare invertibile ShiftRows e MixColumns insieme provvedono a far rispettare il criterio di confusione e diffusione nell'algoritmo (teoria di Shannon). Ogni colonna trattata come un polinomio in GF(28) e viene moltiplicata modulo x4 + 1 per un polinomio fisso c(x) = 3x3 + x2 + x + 2

F. Garzia, Crittografia

37

AddRoundKey
Combina con uno XOR la chiave di sessione con la matrice ottenuta dai passaggi precedenti (State) Una chiave di sessione viene ricavata dalla chiave primaria ad ogni round (con dei passaggi pi o meno semplici, ad esempio uno shift di posizione dei bit) grazie al Key Scheduler

F. Garzia, Crittografia

38

Sicurezza
National Security Agency (NSA) ha scelto AES per: flessibilit nel trattare chiavi di lunghezza diversa semplice implementazione in hardware e in software basse richieste di memoria implementazione anche in dispositivi con scarse risorse come le smart card. L'AES pu essere utilizzato per proteggere le informazioni classificate. livello SECRET: chiave a 128 bit livello TOP SECRET: chiavi a 192 o 256 bit. per la prima volta il pubblico ha accesso ad una tecnologia crittografica che NSA ritiene adeguata per proteggere i documenti TOP SECRET Chiave lunga: elevato margine di sicurezza per i prossimi decenni contro un potenziale attacco esaustivo.

F. Garzia, Crittografia

39

Sicurezza
La maggior parte degli algoritmi crittografici viene forzata riducendo il numero di round. L'AES effettua 10 round per la chiave a 128 bit, 12 round per la chiave a 192 bit e 14 round per la chiave a 256 bit. I migliori attacchi sono riusciti a forzare l'AES con 7 round e chiave di 128 bit, 8 round e chiave di 192 bit e 9 round e chiave di 256 bit. Attualmente una ricerca esaustiva impraticabile: la chiave a 128 bit produce 3,4 1038 combinazioni diverse. Servir ancora moltissimo tempo prima che una chiave da 128 bit sia attaccabile con il metodo forza bruta.

F. Garzia, Crittografia

40

Altri algoritmi a chiave privata


IDEA (International Data Encryption Algorithm) sviluppato nel 1991, blocco dati da 64 bit, chiave da 128 bit operazioni: XOR, addizione e moltiplicazione a 16 bit efficiente in software finora appare altamente resistente alla crittoanalisi usato nel PGP e in molti prodotti commerciali

RC5 sviluppato da Ron Rivest (RC = Rons code) algoritmo proprietario di RSA Data Security Inc. adatto sia per hw che per sw,veloce (word oriented) parametrizzabile (dimensione word, numero di round, lunghezza chiave) adatto a smart card e dispositivi con ridotta memoria
F. Garzia, Crittografia

41

Distribuzione delle chiavi


OOB (Out Of Band) key distribution center

F. Garzia, Crittografia

42

Crittografia a chiave pubblica

proposta nel 1976 da Diffie e Hellman usata per distribuire chiavi segrete e per la firma digitale
F. Garzia, Crittografia

43

Requisiti
deve essere computazionalmente semplice per un utente B generare una coppia di chiavi KUb, KRb deve essere computazionalmente semplice per un mittente A ottenere il testo cifrato C = EKUb(M) deve essere computazionalmente semplice per il ricevente B recuperare il testo originale M = DKRb(C) deve essere computazionalmente complesso per un impostore determinare KRb da KUb deve essere computazionalmente complesso per un impostore ricavare M da Kub e C le chiavi KRb da KUb devono avere funzionalit reciproche

F. Garzia, Crittografia

44

RSA (Rivest - Shamir - Adleman)


Sviluppato nel 1970, lalgoritmo a chiave pubblica pi diffuso Basato sull'elevata complessit computazionale della fattorizzazione in numeri primi: A deve spedire un messaggio segreto a B. B sceglie due numeri primi molto grandi (per esempio da 300 cifre) e li moltiplica con il suo computer (impiega meno di un secondo). B invia il numero che ha ottenuto ad A, visibile a tutti A usa questo numero per cifrare il messaggio A manda il messaggio cifrato a B, chiunque pu vederlo ma non decifrarlo B riceve il messaggio e utilizzando i due fattori primi che solo lui conosceva lo decifra. A e B hanno impiegato pochi secondi a cifrare e decifrare, ma chiunque avesse intercettato le loro comunicazioni impiegherebbe troppo tempo per scoprire i due fattori primi, con cui si pu decifrare il messaggio.
F. Garzia, Crittografia

45

Algoritmo RSA
si scelgono a caso due numeri primi, p e q, l'uno indipendentemente dall'altro, abbastanza grandi da garantire la sicurezza dell'algoritmo si calcola il loro prodotto n=pq, chiamato modulo (dato che tutta l'aritmetica seguente modulo n) si sceglie poi un numero d (chiamato esponente privato), coprimo e pi piccolo di (p-1)(q-1) si calcola il numero e (chiamato esponente pubblico) tale che: e*d=1 (mod (p-1)(q-1) )

la chiave pubblica (n,e), mentre la chiave privata (n,d) i fattori p e q possono essere distrutti, anche se spesso vengono mantenuti all'interno della chiave privata.
F. Garzia, Crittografia

46

Algoritmo RSA
La forza dell'algoritmo sta nel fatto che per calcolare d da e o viceversa, non basta la conoscenza di n, ma serve il numero (p-1)(q-1) Infatti fattorizzare (cio scomporre un numero nei suoi divisori) un'operazione molto lenta, ma soprattutto l'operazione di modulo non invertibile, dunque anche conoscendo n non si pu risalire al prodotto modulo n di p e q. un messaggio m viene cifrato attraverso l'operazione: il messaggio c viene decifrato con: me (mod n)

cd = med = m1 (mod n)

Il procedimento funziona solo se le due chiavi sono legate tra loro dalla relazione: e*d=1 (mod (p-1)(q-1)) quando un messaggio viene cifrato con una delle due chiavi pu essere decifrato solo utilizzando l'altra.
F. Garzia, Crittografia

47

Algoritmo RSA
Debolezza dell'algoritmo: si basa sull'assunzione mai dimostrata (nota come assunzione RSA,) che il calcolo di un numero composto di cui non si conoscono i fattori sia computazionalmente non trattabile. La firma digitale non altro che l'inverso: il messaggio viene crittato con la chiave privata, in modo che chiunque possa decifrarlo utilizzando la chiave pubblica conosciuta da tutti, e, oltre a poterlo leggere in chiaro, essere certo che il messaggio stato mandato dal possessore della chiave privata corrispondente a quella pubblica utilizzata per leggerlo.

F. Garzia, Crittografia

48

RSA (Rivest - Shamir - Adleman)

Encryption Plaintext: M<n Ciphertext: C = Memodn

Decryption Ciphertext: C Plaintext: M = Cdmodn

Key Generation Select p, q p and q both prime Calculate n=pxq Calculate (n) = (p-1)(q-1) Select integer e gcd((n),e)=1; 1<e< (n) Calculate d de mod(n) = 1 Public key KU = [e, n] Private key KR = [d, n]

F. Garzia, Crittografia

49

RSA: un esempio
1. Si scelgono due numeri primi p=7, q=17 2. si calcola n = pq = 7 x 17 = 119 3. si calcola (n) = (p-1)(q-1) = 6x16 =96 4. si sceglie e < (n), relativamente primo con (n), e = 5 5. si determina d tale che de mod 96 = 1 e d<96, d = 77 (infatti 77x5 = 385 = 96x4+1)

F. Garzia, Crittografia

50

Sicurezza di RSA
Possibile attacco esaustivo: nella scelta di e e d trade-off tra sicurezza e prestazioni Crittoanalisi: fattorizzazione di n 1977: sfida degli inventori su un testo criptato con una chiave pubblica n di 129 cifre decimali (circa 428 bit) 1994: sfida vinta su Internet con 1600 calcolatori in otto mesi di lavoro attualmente chiavi di 1024 bit sono considerate sufficientemente sicure

F. Garzia, Crittografia

51

Uso della crittografia a chiave pubblica per l'autenticazione

Bob

Alice

F. Garzia, Crittografia

52

Firma digitale
Garantisce che il messaggio autentico ed integro il mittente non pu disconoscere il messaggio

F. Garzia, Crittografia

53

Funzione di hash
Produce un'impronta del messaggio Deve possedere le seguenti propriet: accetta un messaggio di dimensione variabile produce un digest di lunghezza fissa veloce da calcolare difficilmente invertibile estremamente improbabile che messaggi diversi generino lo stesso digest

F. Garzia, Crittografia

54

Esempi di funzioni di hash


MD5 (Message Digest 5) sviluppata da Ron Rivest digest da 128 bit era la pi usata, ora non pi considerata sicura SHA (Secure Hash Algorithm) sviluppata dal NIST nel 1993, SHA-1 revised version nel 1995 digest da 160 bit ogni bit del digest funzione di tutto l'input

F. Garzia, Crittografia

Uso della crittografia a chiave pubblica per la distribuzione di chiavi segrete


Bob vuole comunicare con Alice in forma riservata Bob prepara il messaggio lo cripta usando la crittografia a chiave privata con una chiave di sessione cripta la chiave di sessione usando la crittografia a chiave pubblica con la chiave pubblica di Alice acclude al messaggio la chiave di sessione criptata e invia il messaggio

55

F. Garzia, Crittografia

56

Certificati a chiave pubblica


strutture dati che legano una chiave pubblica ad alcuni attributi di una persona sono firmati elettronicamente dallente emettitore: la Certification Authority (CA) possono essere verificati mediante la chiave pubblica della CA hanno scadenza temporale e sono revocabili sia dallutente che dallemettitore

F. Garzia, Crittografia

57

Uso dei certificati

F. Garzia, Crittografia

58

Servizi fondamentali di sicurezza

F. Garzia, Crittografia

59

Servizi base di sicurezza


Vari servizi di sicurezza sono stati definiti in modo formale dallo standard ISO 7498-2. In questa sezione analizziamo, per alcuni di questi servizi, un esempio di come sia possibile realizzarli utilizzando in modo combinato gli algoritmi RSA, DES ed SHA. Si assume nel seguito che i servizi descritti operino nell'ambito di un sistema in cui a ciascuna delle parti sia stata assegnata una coppia di chiavi RSA, essendo quella privata mantenuta segreta dal rispettivo possessore, e quella pubblica consultabile in un registro mantenuto da una terza parte da tutti riconosciuta come fidata.

F. Garzia, Crittografia

60

Introduzione di riservatezza
Obiettivo: rendere un documento, o pi genericamente una informazione, leggibile solo da parte di un destinatario prefissato, cio senza possibilit che terze parti possano interpretarlo. In teoria basta il solo RSA, la cui lentezza (come tutti gli asimmetrici) rende necessario l'utilizzo congiunto di un algoritmo simmetrico (il DES) 1. Viene generata una chiave DES pseudo-casuale. 2. L'informazione che si vuole rendere riservata viene cifrata con DES utilizzando la chiave pseudo-casuale. 3. La chiave pseudo-casuale, che se intercettata permetterebbe di decifrare l'informazione originale, viene a sua volta cifrata con RSA utilizzando la chiave pubblica del destinatario, cio di colui al quale si desidera comunicare l'informazione in modo riservato.
F. Garzia, Crittografia

61

Introduzione di riservatezza
2. L'informazione che si vuole rendere riservata viene cifrata con DES utilizzando la chiave pseudo-casuale 1. Si genera una chiave DES pseudo-casuale.

3. La chiave pseudo-casuale viene a sua volta cifrata con RSA utilizzando la chiave pubblica del destinatario.
F. Garzia, Crittografia

62

Introduzione di riservatezza
RSA, troppo lento per cifrare la intera informazione originale (tipicamente costituita da un documento di molte pagine), pu invece essere applicato alla chiave DES con prestazioni soddisfacenti in quanto questa di appena 112 bit. Una volta cifrata con la chiave RSA pubblica del destinatario, la chiave DES che permetterebbe la decodifica della informazione riservata sar decifrabile solo dal destinatario stesso, in quanto egli l'unico a possedere la corrispondente chiave RSA privata.

F. Garzia, Crittografia

63

Rimozione di riservatezza
Obiettivo di questo servizio quello di permettere al destinatario di una informazione a lui riservata di riportare in chiaro, cio in forma leggibile, l'informazione stessa. 1. Viene ricevuta la informazione cifrata e, in allegato, la relativa chiave DES (con cui l'informazione stessa stata cifrata). La chiave DES a sua volta cifrata RSA con la chiave pubblica del destinatario. 2. Il destinatario decifra la chiave DES applicando su di essa RSA con la propria chiave privata. Essendo tale chiave nota solo a lui, nessun altro pu decifrare la chiave DES e quindi l'informazione originale. 3. L'informazione cifrata viene riportata in chiaro, cio in forma intelligibile, applicando su di essa DES con la chiave decifrata.

F. Garzia, Crittografia

64

Rimozione di riservatezza

F. Garzia, Crittografia

65

Apposizione di firma digitale


Dato un documento e la chiave privata di un soggetto (firmatario), creare una sequenza di bit (firma digitale) che provi in modo non ripudiabile il possesso del documento "firmato" da parte del soggetto firmatario. 1. applicando SHA al documento si ottiene un digest, breve sequenza di bit "impronta digitale" del doc La stretta correlazione fra il documento ed il suo digest garantiscono che firma generata dal servizio sia stata effettivamente apposta sul documento originale. 2. Il digest viene cifrato RSA con la chiave privata del firmatario. Il fatto che il risultato della cifratura, (la firma) sia decifrabile solo con la chiave pubblica del firmatario garantisce circa la identit del firmatario
F. Garzia, Crittografia

66

Verifica di firma digitale


Obiettivo: verificare lautenticit di una firma digitale, rispetto al documento firmato ed al soggetto firmatario. Documento, soggetto (o meglio la sua chiave pubblica) e firma verifica che quel soggetto (e non altri) abbia effettivamente apposto la firma sul quel documento (e non su altri o sullo stesso modificato in qualche modo)

F. Garzia, Crittografia

67

Verifica di firma digitale


1. La firma viene decifrata con RSA utilizzando la chiave pubblica del firmatario. Se la firma autentica, si ottiene il digest del documento al momento della firma.

2. Con SHA si genera il digest del doc. Se il doc non ha subito modifiche e se la firma autentica, coincide con quello ottenuto al passo precedente 3. Se i due digest coincidono la firma valida, altrimenti la firma apocrifa (cio apposta da un soggetto diverso) e/o il doc stato modificato dopo la firma.
F. Garzia, Crittografia

68

Verifica di firma digitale


Per distinguere il caso di firma apocrifa da quello di firma apposta su diverso documento, possibile, nell'ambito del servizio di generazione della firma, accodare al digest del documento una stringa fissa che viene quindi cifrata RSA insieme al digest. Il servizio di verifica, una volta decifrata la firma, potr cos verificare la presenza della stringa fissa e, nel caso di alterazione della stessa, dedurre il fatto che la chiave pubblica utilizzata non corrisponde a quella privata che ha generato la firma e che quindi, in definitiva, la firma stata apposta da un soggetto diverso dal supposto firmatario.

F. Garzia, Crittografia

69

Timbratura
Obiettivo di questo servizio quello di associare in modo incontestabile un riferimento temporale (data ed ora esatta) ad un dato documento. Affinch questo servizio sia di qualche utilit essenziale che venga svolto da un soggetto al di sopra degli altri e da tutti ritenuto autorevole e fidato. Questo soggetto, spesso indicato come terza parte fidata, dovr naturalmente gestire autonomamente ed in modo sicuro un orologio di sistema.

F. Garzia, Crittografia

70

Timbratura
1. Alla informazione da timbrare viene applicato SHA ed ottenuto il digest. Questa operazione tipicamente compiuta dal soggetto che richiede il servizio di timbratura 2. La terza parte fidata accoda al digest la data e l'ora dell'orologio di sistema da essa gestito in modo autonomo 3. La terza parte fidata cifra digest e la sequenza temporale tramite RSA e propria chiave privata, ottenendo il timbro

4. La validit del timbro verificabile da chiunque decifrandolo con la chiave pubblica della terza parte fidata.
F. Garzia, Crittografia

71

Servizi di notariato
I servizi di notariato sono offerti da una Autorit di certificazione (nel seguito indicata come Autorit) che sia riconosciuta come fidata ed autorevole da tutti gli utenti del sistema informativo. Come ogni altro utente, anche l'Autorit dispone di una coppia (privata, pubblica) di chiavi asimmetriche. I principali servizi di notariato offerti dall'Autorit sono la certificazione delle chiavi pubbliche, la gestione delle chiavi pubbliche sospese o revocate, la certificazione temporale, detta anche timbratura.

F. Garzia, Crittografia

72

Certificazione di una chiave pubblica


L'Autorit garantisce la sua effettiva corrispondenza con il soggetto che espone la certificazione. A tal fine, l'Autorit pubblica mantiene, in un apposito registro, certificati firmati con la propria chiave privata che includono il nome dell'Autorit, la data di emissione del certificato, la data di scadenza del certificato, il nominativo univoco del soggetto (cio reso non ambiguo da dati aggiuntivi, nel caso di omonimie) e la chiave pubblica del soggetto.

F. Garzia, Crittografia

73

Certificazione di una chiave pubblica


Estrema importanza che ha la certificazione delle chiavi pubbliche nella verifica di una firma digitale. Per tale verifica occorre infatti: conoscere la chiave pubblica del soggetto firmatario al momento della firma; questo possibile richiedendo all'Autorit il relativo certificato; essere certi della reale appartenenza della chiave al soggetto firmatario; la firma dell'Autorit garantisce la validit del certificato e quindi la effettiva corrispondenza fra chiave pubblica e soggetto. Tale sequenza di operazioni viene tipicamente svolta in modo automatico dal software che gestisce le firme digitali, a partire da informazioni contenute nella firma stessa

F. Garzia, Crittografia

74

Problemi di gestione
Gestione delle chiavi pubbliche sospese o revocate Le chiavi pubbliche possono essere sospese o revocate (ad esempio a seguito di furto o smarrimento delle corrispondenti chiavi private). L'Autorit deve quindi gestire un registro storico delle chiavi pubbliche revocate, al fine di garantire nel tempo la verificabilit delle firme generate utilizzando le corrispondenti chiavi private. Gestione del tempo di riferimento e timbratura ufficiale Il servizio base di timbratura ricade fra i servizi di notariato in quanto richiede che il time-stamp sia generato ed apposto da una Autorit riconosciuta da parte tutti gli utenti del sistema come detentrice affidabile del riferimento temporale.

F. Garzia, Crittografia

75

PGP (Pretty Good Privacy)


E lo standard di crittografia per la posta elettronica

un pacchetto freeware che fornisce confidenzialit e autenticit per la posta elettronica e la memorizzazione di file

Combina i vantaggi degli algoritmi di crittografia a chiave pubblica e privata : Chiavi private mai trasmesse Possibile la firma digitale Molto pi veloce (ad es., DES 100 volte pi veloce di RSA, in hardware tra 1.000 e 10.000 volte)

F. Garzia, Crittografia

76

PGP (Pretty Good Privacy)


Permette di cifrare una E-mail

oppure firmarla lasciando il testo in chiaro o fare tutte e due le cose insieme

F. Garzia, Crittografia

77

PGP (Pretty Good Privacy) - Servizi


Confidenzialit Autenticit Compressione Segmentazione

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Confidenzialit


Il messaggio cifrato con un algoritmo a chiave privata Algoritmi usati: CAST, IDEA , Triple-DES

78

La chiave (session key) generata dal mittente per ogni messaggio La session key poi cifrata con la chiave pubblica del destinatario - Algoritmi usati: DH, RSA

F. Garzia, Crittografia

79

PGP (Pretty Good Privacy) - Autenticit


Il messaggio viene compresso con una funzione hash e fornisce un message digest di lunghezza costante Algoritmi usati: MD5 (128 bit) o SHA (160 bit) Algoritmi usati: RSA o DSA Il message digest viene firmato con la chiave privata del mittente

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Compressione


PGP comprime il testo in chiaro prima di cifrarlo: Risparmio di tempo nella trasmissione Aumenta la sicurezza della cifratura Crittanalisi pi difficile La compressione eseguita dopo la firma: Ci evita la ricompressione in fase di verifica Stesso algoritmo di compressione per tutte le implementazioni del PGP PGP comprime secondo la routine freeware ZIP, perch veloce ed ha un ottimo rapporto di compressione.
F. Garzia, Crittografia

80

PGP (Pretty Good Privacy) Segmentazione


Lunghezza massima di messaggi via e-mail: 65000 byte RADIX-64 divide il messaggio in segmenti pi piccoli che vengono inviati separatamente Il software del destinatario concatena i segmenti nel giusto ordine

81

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Generazione chiavi


Lutente deve generare la sua coppia di chiavi PGP offre la possibilit di scegliere fra diversi formati 768 bit: sicurezza commerciale 1024 bit: sicurezza alto livello 2048 bit: sicurezza militare e due diversi algoritmi: Diffie-Hellman/DSA (4096 bit) RSA (768, 1024 e 2048 bit) Nella generazione della coppia di chiavi RSA, PGP utilizza numeri casuali

82

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Numero casuali e pseudocasuali


Numeri casuali Per generare le chiavi RSA Ottenuti memorizzando listante in cui un tasto digitato e il suo valore o la posizione e i movimenti del mouse (win9x) Numeri pseudocasuali Per generare la session key e il vettore IV per la modalit CFB Algoritmo basato sullANSI X9.17 Prende in input il messaggio e randseed.bin

83

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Portachiavi (key ring)


Le chiavi sono memorizzate nei keyring Private Key Ring (secring.skr) Memorizza la coppia di chiavi, pubblica e privata, dellutente La chiave privata cifrata con la passphrase Public Key Ring (pubring.pkr) Usato per memorizzare le chiavi pubbliche delle persone note allutente.

84

F. Garzia, Crittografia

85

PGP (Pretty Good Privacy) - Chiavi


La finestra PGPkeys si apre cliccando su Launch PGPkeys da PGPtray Mostra la propria coppia di chiavi e le chiavi pubbliche inserite nel public keyring Da PGPkeys possibile generare nuove chiavi e gestire le chiavi esaminare gli attributi di una chiave, indicare il livello di trust, importare ed esportare chiavi...

F. Garzia, Crittografia

86

PGP (Pretty Good Privacy)

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Generazione delle chiavi


Aprire la finestra PGPkeys Fare click sulla prima icona nella toolbar Compare la PGP Key Generation Wizard inserire nome e indirizzo e-mail scegliere il tipo di chiave (DH/DSS o RSA) e il numero di bit della chiave determinare la data di scadenza inserire una passphrase muovere il mouse o premere dei tasti per fornire la randomness necessaria alla generazione specificare se si vuole inviare la chiave pubblica a un keyserver (puo anche essere fatto in seguito)

87

F. Garzia, Crittografia

88

PGP (Pretty Good Privacy)

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Scelta della passphrase


La passphrase pu contenere spazi, numeri caratteri e punteggiatura Deve essere facile da ricordare

89

PGP calcola lindice di bont della passphrase mentre si digita

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Inserimento passphrase

90

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Generazione delle chiavi


Per aggiungere una foto alla propria chiave Selezionare la chiave a cui si vuole aggiungere la foto Fare click su Add Photo dal menu Keys Selezionare la foto facendo click su Select File Inserire la passphrase La foto aggiunta alla chiave La foto deve essere in formato .JPG o .BMP Per avere la massima qualita tagliare la foto alle dimensioni 120x144 prima di aggiungerla Per eliminare la foto Selezionare la chiave e la foto Fare clic su Delete dal menu Edit

91

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Protezione delle chiavi


I due keyring secring.skr e pubring.pkr sono memorizzati nella cartella PGP Keyrings, nella cartella PGP 6.0 PGP suggerisce la creazione di una copia di backup al termine della generazione La copia pu essere memorizzata sul proprio hard disk o su pen disk

92

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Attributi delle chiavi


Keys Validity Size Description Key ID Trust Expiration Creation

93

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Attributi delle chiavi


Alcuni attributi sono visibili dalla finestra PGP keys Gli attributi possono essere visualizzati selezionandoli dal menu View Ciascun attributo selezionato sar keys visualizzato in una colonna nella finestra PGP

94

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Campi del public key ring

95

Lora in cui stata generata una chiave


Time Stamp Key ID

Chiave pubblica
Public key Owner trust

Il proprietario della chiave


User ID Key legitim acy

Firma per la chiave


Firma Signat ure Trust

64 bit meno significativi della chiave pubblica

Fiducia nel proprietario della chiave

Fiducia nella chiave

Fiducia nella firma

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Propriet della chiavi


Selezionare dal menu visualizzare finestra Pu contenere la foto Contiene cifratura lalgoritmo usato e di il Properties Keys per questa

96

fingerprint della chiave

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Gestione di chiavi pubbliche


Per ottenere la chiave pubblica di qualcuno si pu chiedere direttamente alla persona interessata

97

oppure si usare i keyserver


F. Garzia, Crittografia

possono

PGP (Pretty Good Privacy) Key server


Server presenti su Internet, dedicati al deposito e al prelievo delle chiavi pubbliche Sono in rete tra loro, per cui ogni chiave immessa in un server viene diffusa a tutti gli altri

98

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Distribuzione delle chiavi


E necessario distribuire la nostra chiave pubblica per consentire agli altri utenti di mandarci messaggi cifrati per verificare la nostra firma Ci pu essere fatto in vari modi: mandando la chiave a un key server includendo la chiave in un messaggio di e-mail esportando la chiave copiandola in un file di testo

99

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Distribuzione delle chiavi


Per mandare la propria chiave ad un keyserver collegarsi ad Internet aprire la finestra PGP Keys selezionare la chiave da distribuire dal menu Server scegliere il key server a cui si vuole mandare la chiave dal menu Send To Chi vuole comunicare con noi pu prelevare la chiave dal keyserver Per aggiornare la chiave necessario inviare una nuova copia al keyserver, che provvede allaggiornamento

100

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Distribuzione di chiavi


Per includere la propria chiave in un messaggio e-mail aprire PGP keys selezionare la chiave desiderata fare clic su Copy dal menu Edit comporre il messaggio dal proprio editor e fare clic su Paste per includere la chiave nel messaggio firmare la mail (come?vedremo dopo!)

101

Per esportare la chiave in un file di testo aprire PGP keys selezionare la chiave desiderata fare clic su Export dal menu Keys inserire il nome del file in cui si vuole esportare la chiave

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Ottenere le chiavi altrui


E necessario ottenere le chiavi pubbliche di altri utenti e inserirle nel nostro public keyring per mandare loro messaggi cifrati per verificare le loro firme Cio pu essere fatto in vari modi: prelevando la chiave da un key server prelevando la chiave in un messaggio di e-mail importando la chiave da un file di testo

102

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Ottenere le chiavi altrui


Per prelevare una chiave da un keyserver aprire PGP keys fare click su Search Server dal menu Keys nella finestra Search for keys on, selezionare il keyserver inserire dei criteri di ricerca user ID key ID key status (revoked or disabled) key type (DH o RSA) creation date expiration date key size key signed by a particular key

103

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Ottenere le chiavi altrui


Per copiare una chiave pubblica da un messaggio e-mail se si usa unapplicazione e-mail supportata dai plug-in di PGP, fare clic sullapposita icona per aggiungere la chiave al proprio keyring se si usa un altro tipo di applicazione, si puo semplicemente copiare la chiave e inserirla nel proprio keyring Per importare la chiave pubblica da un file fare click su Import nel menu Keys e individuare il file contenente la chiave

104

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Formato di un certificato PGP


PGP riconosce due formati differenti: certificati PGP Ognuno pu creare un certificato PGP Un certificato PGP pu essere firmato da vari utenti e revocato solo dal proprietario

105

certificati X.509 Solo una Certification Authority pu creare un certificato X.509 Un certificato X.509 pu essere firmato o revocato solo dalla CA

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Certificato PGP

106

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Certificati X-509

107

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Firmare una chiave


Se si sicuri dellautenticit di una chiave la si pu firmare Chi controller la chiave in seguito decider se fidarsi o no del nostro giudizio Per firmare una chiave aprire PGP keys selezionare la chiave da firmare fare click su Sign dal menu Keys per aprire la finestra di dialogo Sign selezionare la casella Allow signature to be exported per consentire alla firma di essere esportata con la chiave fare click sul bottone Sign inserire la passphrase una icona con il nostro nome viene associata alla chiave

108

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Garantire una chiave


Dopo aver firmato una chiave possibile modificare il livello di fiducia Aprire PGP keys Scegliere Properties dal menu Keys Modificare il livello di fiducia usando il cursore Trust level

109

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Verificare una chiave


A ciascuna chiave viene associata una serie unica di numeri (fingerprint) in fase di generazione E possibile verificare lautenticit di una chiave controllando tale fingerprint aprire PGP keys selezionare la chiave da verificare fare click su Properties dal menu Keys per aprire la finestra di dialogo Properties la casella Fingerprint contiene limpronta della chiave controllare se tale impronta coincide con quella della chiave nel keyserver

110

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Cancellare una chiave E possibile eliminare una chiave o una firma
Aprire PGP keys Selezionare la chiave/firma da eliminare Scegliere Delete dal menu Edit Una finestra chiede conferma delleliminazione

111

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Cifrare e firmare una e-mail


Per cifrare e firmare una e-mail Comporre il messaggio Cifratura e firma avvengono tramite bottoni sulla toolbar Inviare il messaggio PGP ricerca la chiave pubblica di ciascun destinatario nel public keyring Fare click su OK per cifrare e firmare la mail Inserire la passphrase Fare click su OK Il messaggio cifrato

112

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Decifrare/verificare una email

113

Per decifrare /verificare una e-mail Aprire il messaggio cifrato Copiarlo negli Appunti Fare click sulle icone di Decrypt e Verify dalla toolbar Inserire la passphrase Il messaggio decifrato Se stato firmato e si possiede la chiave pubblica del firmatario un messaggio indica se la firma valida

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Cifrare/firmare file


PGP pu cifrare e firmare file da inviare come attachment Selezionare il file da cifrare/firmare Fare click con il tasto destro Appare il menu di scelta rapida PGP Selezionare loperazione desiderata (Encrypt, Sign, Encrypt and Sign) Appare la finestra PGP key selection Selezionare le chiavi pubbliche dei destinatari Se si firma il file richiesta la passphrase Appare licona del file con il lucchetto: il file cifrato

114

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Cifrare/firmare file


Text Output: salva il file come ASCII Conventional encrypt: cifra con una passphrase Wipe Output: sovrascrive il testo in chiaro in modo che non possa essere pi letto

115

F. Garzia, Crittografia

PGP (Pretty Good Privacy) Decifrare file


Per decifrare un file cifrato da PGP con una passphrase Selezionare il file da decifrare Fare click con il tasto destro del mouse Appare il menu di scelta rapida PGP Selezionare Decrypt/Verify Inserire la passphrase usata per cifrare Il messaggio decifrato

116

F. Garzia, Crittografia

117

PGP (Pretty Good Privacy)

Sito web www.pgp.com

F. Garzia, Crittografia

118

Crittografia dati disco PC

Sito web www.truecrypt.org

F. Garzia, Crittografia