Sei sulla pagina 1di 1

Crittografia

La crittografia serve per trasmettere informazioni in modo sicuro utilizzando un canale insicuro, ergo serve
per far si che date informazioni siano comprensibili solo agli effettivi destinatari e mittenti pur essendo
visibili a tutti quanti.
Questa la differenzia dalla cosiddetta Steganografia, in cui invece le informazioni vengono nascoste dentro
ad altre informazioni secondo certi criteri che le fanno apparire coerenti con le informazioni di
imbottitura ma estraibili dal destinatario.
Un messaggio crittografato invece perfettamente visibile al mondo. Esso pu esser intercettato o
direttamente consegnato al nemico con grande tranquillit: il nemico pu si vedere il messaggio, ma non
in grado di comprenderne il contenuto: lui vede solo lettere o numeri (bit) a caso. Questo ovviamente a
patto che lalgoritmo di cifratura sia sufficientemente robusto e non possa essere rotto dal nemico.
I primi esempi di crittografia sono apparsi gi nel mondo classico, con le Scytale spartane e il cifrario
cesareo, e nel 1600 appare il cifrario di vigener (utilizzato ad esempio nella guerra civile americana),
ritenuto per anni perfettamente sicuro e rotto solo 3 secoli pi tardi da Kasiski e da da Babbage. Ma dalle
guerre mondiali che la crittografia diventata una disciplina fondamentale. La rottura di enigma da parte
del team di Bletchley Park ha aiutato gli Alleati a vincere la guerra, e gli attuali protocolli crittografici (ad
esempio lSSL) ci permettono di effettuare login e pagamenti online in modo sicuro, senza che la nostra
identit possa essere rubata o la nostra carta di credito venga clonata, anche nelleventualit che ogni
singolo bit delle nostre trasmissioni venga intercettato.
Nel 1949 Claude Shannon pubblica una formalizzazione matematica della crittografia dimostrando via
teoremi come funzioni un cifrario perfetto.
Un cifrario perfetto tiene in considerazione tre elementi: un messaggio, da nascondere; una chiave,
condivisa fra le parti comunicanti ma non in possesso ai vari ficcanaso; un algoritmo, ovvero una serie di
passi che modificano il messaggio in modo dipendente dalla chiave. Il passaggio inverso pu essere
effettuato solo se si possiede la chiave, ed in nessun modo altrimenti (se lalgoritmo sicuro). Lalgoritmo
infatti noto a tutti, pubblico, tanto ai buoni quanto ai cattivi, ed solo la chiave ad essere segreta e a
costituire la differenza tra chi pu capire il messaggio e chi no.
Ad esempio, semplicisticamente, potremmo dire che il nostro algoritmo o funzione cifrante y=f(x)=x+k.
Come tale y il messaggio cifrato, x il messaggio da cifrare o in chiaro, k la chiave. La funzione inversa
sar x=f(y)=y-k. Ergo, con chiave 4, il messaggio 1 diverr 5, 3 diverr 7, ecc ecc.
chiaro che al nemico sapere che f(x)=x+k e f(y)=y-k non permette di decifrare il messaggio, visto che non
ha k, e come tale questa informazione, la natura dellalgoritmo, pubblica. Il nemico pu quindi provare
tutte le k che vuole, ma ovviamente essendo i numeri infiniti altamente improbabile riesca mai ad
azzeccare quello giusto.
Dovrebbe essere quindi chiaro come funzioni la crittografia. Lutente ha una password, che svolge il ruolo di
chiave, ed un programma che pu essere tranquillamente scaricato da tutto il mondo, per quanto ci
riguarda. Lui da messaggio e password in pasto al programma, e ne esce un guazzabuglio in apparenza
casuale che lutente pu direttamente mandare al suo peggior nemico con linguaccia in allegato, senza che
la sua nemesi possa mai farci nulla