Alice (Mittente)
Nella crittografia a CHIAVE SEGRETA, sia tu che Bob usate la STESSA password pattuita prima.
Simmetrica (Chiave Segreta)
Il messaggio viene "trasformato" usando il numero segreto. Chi intercetta il pacchetto leggerà solo lettere a caso!
Cosa vede un "hacker"?
Illeggibile, sì. Ma illeggibile non vuol dire sicuro: prova qui sotto.
Resta una domanda
Alice e Bob dovevano già essere d'accordo sul numero segreto. Ma come si sono messi d'accordo? Se se lo dicono per telefono o via chat, quel messaggio passa per la stessa rete che stiamo cercando di evitare — e chi ascolta impara la chiave prima ancora che parta il primo messaggio.
È il problema dello scambio delle chiavi, ed è irrisolvibile finché la chiave per chiudere e quella per aprire sono la stessa.
Bob (Destinatario)
Alice (Mittente)
Nella crittografia ASIMMETRICA, per inviare un messaggio sicuro devi prima ricevere il "Lucchetto Pubblico" da Bob.
Asimmetrica (Chiave Pubblica)
Bob crea due chiavi. Dà il lucchetto (Chiave Pubblica) a tutti. Solo lui tiene la chiave (Chiave Privata) capace di aprirlo!
Qui i conti sono veri, solo con numeri piccolissimi: puoi rifarli su un foglio. L'RSA vero usa gli stessi identici passaggi con numeri da seicento cifre.
Cosa vede un "hacker"?
Numeri, e nient'altro. Il lucchetto (n ed e) ce l'hanno tutti — eppure non serve a riaprirli.
Spazzatura. Il lucchetto chiude e basta: rifare la stessa operazione non torna indietro. Per tornare indietro serve d, e d non si ricava da n ed e — a meno di scomporre n nei suoi due fattori primi. Con n = 55 lo fai a mente (5 × 11). Con un n da seicento cifre non ci riesce nessuno, e la sicurezza di mezzo Internet sta tutta lì.
Eve, in mezzo alla rete
Bob (Destinatario)
1. Genera le tue due chiavi (Pubblica e Privata).
Una cosa onesta da dire: guarda i numeri qui sopra. Le lettere uguali danno numeri uguali, e lo spazio si riconosce sempre. Cifrare una lettera alla volta lascia in piedi la forma del messaggio — ed è esattamente il motivo per cui l'RSA vero non fa così, ma cifra blocchi interi con dentro del riempimento casuale.
Alice (Mittente)
1. Genera la TUA Coppia di Chiavi (Pubblica e Privata).
Firma Digitale (Identità)
Alice calcola l'Hash (l'impronta matematica del testo) del messaggio e lo sigilla con la Sua Chiave Privata.
Chiunque abbia il suo Lucchetto Pubblico può aprire la firma e confrontare l'impronta. Se combacia, il messaggio non è stato toccato e a firmarlo è stato chi possiede quella chiave privata.
Pacchetto in Rete
E se qualcuno ci mettesse le mani?
Falli dopo la partenza, poi manda Bob a verificare.
Bob (Destinatario)
Bob attende di ricevere il Lucchetto Pubblico di Alice prima di poter verificare le sue firme.
Bob usa il Lucchetto Pubblico di Alice per aprire la firma e leggere l'Hash originale. Poi ricalcola l'Hash del messaggio e li confronta.