Domenico Procopio
Crittografia Crittografia La crittografia (dal greco kryptòs=nascosto e graphè=scrittura) sta ad indicare un insieme di procedure ideate allo scopo di nascondere il significato di un messaggio riservato ad altri che non ne fossero il mittente o il destinatario La crittografia si utilizza per: nascondere il significato del messaggio garantire l’autenticità del messaggio identificare l’autore del messaggio firmare il messaggio
Il grado di sicurezza del sistema deve dipendere dalla segretezza della chiave, non dalla segretezza dell’algoritmo. Un testo in chiaro da nascondere Un algoritmo di cifratura = metodo generale con cui si trasforma il testo Una chiave = informazione che permette di far funzionare l’algoritmo crittografico Il risultato della trasformazione è un testo cifrato. Il sistema crittografico Il sistema crittografico
Scitala Dal greco bastone, è una bacchetta utilizzata dagli Spartani per trasmettere messaggi segreti. Il messaggio scritto su una striscia di pelle arrotolata attorno alla scitala. Srotolata la striscia di pelle era impossibile capire il messaggio la decifrazione richiede una bacchetta identica alla scitala del mittente il più antico metodo di crittografia conosciuto. La crittografia nella storia:
Cifrario di Cesare Esempio di cifrario a sostituzione mono-alfabetico Testo in chiaro: A B CDEFG HI LMNOP Q RST UVZ Testo cifrato: DEFGHILMNOPQRSTUVZABC ogni lettera è sostituita dalla lettera K posizioni dopo nel caso di Cesare K = 3 Se l è un letterale del messaggio in chiaro (l1 = l + 3) mod 21. Esempio: AVE CAESARE diventa DBG FDHVDUH Osservazioni: preserva gli spazi a lettere uguali corrisponde simbolo uguale!
Disco cifrante L.Battista Alberti chiave D: OGGI = RJJL
Disco cifrante Vigenère chiave AVE: OGGI = JPBR lettere uguali possono essere sostituite con lettere diverse Sostituzione poli-alfabetica
I pizzini di Provenzano Un rudimentale sistema di cifratura basato sul cifrario di Cesare. Il sistema scelto da Provenzano era abbastanza semplice: si trattava di sostituire ad ogni lettera il numero corrispondente alla posizione nell’alfabeto più 3 e di comporre così un singolo, lungo numero. Ad esempio: i numeri " " nascondono il nome di "Binnu Riina" infatti, 5 = 2 (posizione della B) = 9 (posizione della I) + 3, ecc...
Crittografia a chiave segreta (simmetrica) Problema delle chiavi Se la chiave scelta viene consegnata di persona al proprio interlocutore allora un minimo di sicurezza esiste. Ma se le persone sono distanti? Come fare a scambiarsi la chiave mediante un canale sicuro? Perché internet non è un canale sicuro.
Crittografia a doppia chiave (asimmetrica) Principi di base: Da una chiave è impossibile risalire all’altra Quello che si cifra con una si decifra con l’altra (si decide una volta la pubblica e la privata) Non è necessario lo scambio: Il mittente cifra con la chiave pubblica del destinatario. Il destinatario decifra con la sua chiave privata. Svantaggio: lenta (> 1000 volte più lenta della simmetrica)
È uno strumento che consente a un’entità di apporre a un oggetto digitale (testo, immagine, suono, numero, file, …) una sequenza di bit (la firma digitale) Solo l’entità mittente può generare quella particolare firma digitale. Chiunque può verificare questo fatto Non deve essere falsificabile: se la persona P invia un messaggio M con firma F nessuno può riprodurre la coppia (M; F) Deve essere autenticabile: chi riceve deve poter verificare che la firma proviene da P (solo P può averla creata) e che è associata a M. Firma digitale
Per la creazione della firma digitale occorrono due strumenti: -un sistema di cifratura asimmetrico (già visto in precedenza) -una funzione che crei un riassunto di un oggetto binario (quale un testo, immagine, suono, file, …), chiamata funzione di hash HASH (digest o impronta) è un valore di lunghezza fissa indipendente dalla lunghezza dell’input -due messaggi diversi possono avere lo stessa impronta ma minime modifiche ad un messaggio cambiano radicalmente l’impronta -la probabilità che due messaggi diversi abbiamo senso e che siano simili/correlati producono la stessa impronta è praticamente nulla.
Per costruire una firma digitale di un oggetto T, Alice: -Calcola l’hash di T -Cifra l’hash ottenuto con la propria chiave privata -Accoda l’hash cifrato (è la firma!) all’oggetto T Bob (o chiunque), per verificare la firma di Alice applicata a T -Calcola l’hash di T -Decifra l’hash cifrato (la firma che trova accodata a T) usando la chiave pubblica di Alice -Verifica che i valori calcolati nei due passi precedenti siano uguali
Posta Elettronica Certificata Sfruttando crittografia e protocolli di sicurezza riesce a fornire agli utenti un servizio sicuro che sostituisce integralmente il tradizionale servizio di posta (elettronica e cartacea), mettendosi inoltre al riparo da spam, abusi e disguidi.
1. Il punto di accesso, dopo aver raccolto il messaggio originale, genera una ricevuta di accettazione che viene inviata al mittente; in questo modo chi invia una mail certificata sa che il proprio messaggio ha iniziato il suo percorso 2. Il punto di ricezione, dopo aver raccolto il messaggio di trasporto, genera una ricevuta di presa in carico che viene inviata al gestore mittente; in questo modo il gestore mittente viene a conoscenza che il messaggio è stato preso in custodia da un altro gestore gestore mittente: firma digitalmente il messaggio gestore destinatario: controlla la validita' della firma e recapita il messaggio
Il messaggio proviene da un gestore di posta certificato e da uno specifico indirizzo certificato; - Il messaggio non può essere alterato durante la trasmissione; - Privacy totale della comunicazione, avvenendo lo scambio dati in ambiente sicuro; - Garantisce al mittente la certezza dell'avvenuto recapito delle alla casella di Posta Certificata destinataria, con la spedizione di una ricevuta di consegna, in modo analogo alla tradizionale raccomandata A/R (e con lo stesso valore legale);
- Garantisce il destinatario da eventuali contestazioni in merito ad eventuali messaggi non ricevuti e dei quali il mittente sostiene l'avvenuto l'invio; - Garantisce in modo inequivocabile l'attestazione della data di consegna e di ricezione del messaggio e conserva la traccia della comunicazione avvenuta fra mittente e destinatario.
Riassumendo…. la PEC ● Alice vuole inviare a Bob un messaggio M ● Alice genera un chiave K ● Alice genera un Hash F (digest di M) e la cripta mediante la propria chiave privata e ottiene la firma digitale F1 ● Alice cripta il messaggio M con la chiave K per ottenere M1 ● Alice cripta la chiave K con la sua chiave privata e ottiene K1 ● Alice invia (M1; F1; K1) a Bob criptandolo il tutto con la chiave pubblica di Bob ● Bob decripta (M1; F1; K1) con la propria chiave privata ● Bob decripta F1 e K1 con la chiave pubblica di Alice e ottiene F e K ● Bob decripta M1 e ottine M ● Bob calcola il digest di M e lo confronta con F
Si può manomettere una chiave pubblica? Un intruso sostituisce la chiave pubblica di Bob con la sua. Alice cifra il messaggio utilizzando la chiave pubblica di Bob (in realtà è la chiave dell’intruso).L’intruso è in grado, quindi, di decifrare il messaggio. Prepara quindi un nuovo messaggio (messaggio alterato) da inviare. L’intruso invia il nuovo messaggio a Bruno, cifrandolo utilizzando la “vera” chiave pubblica di Bruno. Bruno decodifica il messaggio utilizzando la sua chiave privata. Né Bruno né Anna scopriranno mai niente di quanto è successo.
Una autorità esterna Certification Authority (CA), garantisce l’autenticità attraverso il rilascio dei certificati Certificato digitale Il certificato digitale è un documento elettronico che attesta l'associazione univoca tra una chiave pubblica e l'identità di un soggetto che dichiara di utilizzarla nell'ambito delle procedure di cifratura Tale certificato, è a sua volta autenticato per evitarne la falsificazione sempre attraverso firma digitale ovvero cifrato con la chiave privata dell'associazione la quale fornisce poi la rispettiva chiave pubblica associata per verificarlo
Un certificato contiene: ● Numero di serie ● Informazioni sul titolare, compreso il valore della chiave pubblica (non inserita) ● Informazioni su chi ha emesso il certificato ● Date di validità ● Firma digitale di chi lo ha emesso Alice vuole conoscere la chiave pubblica di Bob chiede alla CA il certificato di Bob verifica autenticità del certificato, cioè verifica la firma della CA che è pubblica.