Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
Tesina - Premio maturità 2009
Titolo: Crittografia - Passato, presente, futuro
Autore: Bruni Valentino
Descrizione: analisi dei principali metodi crittografici: dalla scitala greca alla cifratura di cesare, dal cifrario di vigenere alle cifrature polialfabetiche. crittografia nel xx secolo con analisi della macchina enigma. crittografia quantistica nel futuro.
Materie trattate: Sistemi Di Elaborazione E Trasmissione Delle Informazioni, Storia, Informatica
Area: tecnologica
Sommario: Sistemi di elaborazione e trasmissione delle informazioni, segretezza nella trasmissione delle informazioni. Storia, il XX secolo (I e II conflitto mondiale). Informatice, realizzazione di un sito web (bruniv.altervista.org) contenente, oltre ad un abstract della tesina, l'implementazione di alcune tecniche di cifratura analizzate.
Nigel de Gray ed il reverendo
Montgomery si misero a
lavorare sul telegramma e, dopo
qualche ora, grazie anche a testi
simili, riuscirono a ricostruire
alcuni frammenti del testo e da
questi intuirono il piano di
Zimmermann e le sue
ripercussioni sull’esito del
conflitto.
I due consegnarono subito il
testo tradotto all’ammiraglio Sir
William Hall, direttore del
T [15]
ELEGRAMMA TRADOTTO controspionaggio della Marina,
che comunicò il telegramma al segretario di Stato britannico Arthur
Balfour; il telegramma fu poi passato alla stampa e l’opinione pubblica fu
messa di fronte alle reali intenzioni dei tedeschi. In Germania
Zimmermann, non potendo smentire l’autenticità del telegramma, ne
rivendicò la paternità. Wilson che si era sempre rifiutato di trascinare
l’America nel conflitto, il 2 aprile 1917, consiglia al Congresso di accettare
lo stato belligerante e di intervenire al fianco degli Alleati.
4.3 - L A CIFRATURA ADFGVX
Nel giugno 1918 l’artiglieria tedesca era alle porte di Parigi e si
preparava all’assalto decisivo; l’unico modo per evitare l’invasione era, per
gli Alleati, riuscire a decifrare i messaggi tedeschi contenenti informazioni
sulle modalità d’attacco.
Fonte: www.it.wikipedia.org/wiki/Telegramma_Zimmermann
15 28
Il metodo usato dai tedeschi è denominato ed è un metodo che
ADFGVX
combina sostituzione e trasposizione: la codifica comincia disegnando una
tabella 6x6 e riempiendo le caselle con le 26 lettere dell’alfabeto e i 10
numeri da 0 a 9. Ogni riga e colonna è identificata da una delle sei lettere
‘ ’, ‘ ’, ‘ ’, ‘ ’, ‘ ’, ‘ ’. La disposizione delle
A D F G V X
A D F G V X lettere, dei numeri e dell’intestazione di
A 8 3 1
P D N righe e colonne sono necessarie per
D 4
L T O A H decifrare; a lato la riproduzione di una
F 7 5
K B C Z possibile grigia .
G 6
J U W G M ADFGVX
V 2
X S V I R Per crittare è necessario individuare la
X 9 0
E Y F Q posizione della lettera nella griglia e
sostituirla con l’intestazione della riga e della colonna. Per esempio il
messaggio ‘attacco h 10 sera’ viene codificato in ‘ - - - - - - -
DV DD DD DV FG FG DG
- - - - - - ’. Fin qui è stata usata una semplice sostituzione
DX AV XG VD XD VV DV
monoalfabetica che può essere rotta attraverso l’analisi delle frequenze; il
secondo stadio prevede una trasposizione che rende molto più difficile la
crittanalisi. Poiché la trasposizione avviene attraverso una parola chiave
nota anch’essa al destinatario, si suppone di utilizzare la parola ‘luna’; le
lettere della L U N A A L N U
chiave sono D V D D D D D V
collocate in cima D D D V V D D D
ad una nuova
Trasposizi
one
F G F G G F F G
tabella che verrà D G D X X D D G
riempita con il A V X G G A X V
crittogramma. V D X D D V X D
La fase di V V D V V V D V
trasposizione si
ha ricollocando le lettere della chiave in ordine alfabetico e il crittogramma
è ottenuto scrivendo le lettere nel nuovo ordine. Nell’esempio il
crittogramma finale che verrà spedito risulta essere
‘ ’; la trasmissione avverrà in codice
DDDVVDDDGFFGXDDGGAXVDVXDVVDV
Morse, per cui sono state scelte le lettere ‘ ’, ‘ ’, ‘ ’, ‘ ’, ‘ ’ e ‘ ’ proprio
A D F G V X 29
perché danno origini alle sequenze di punti e linee Morse più dissimili le
une dalle altre, onde evitare errori di trasmissione per via telegrafica.
La sera del 2 giugno, il crittoanalista francese George Painvin,
tradusse un messaggio venendo così a conoscenza del luogo dove
ADFGVX
sarebbe avvenuto lo sfondamento tedesco (tra Montdidier e Compiègne, a
ottanta chilometri da Parigi); ricognizioni aeree confermarono l’imminente
offensiva e gli Alleati spedirono rinforzi in quel settore. Dopo una
settimana i tedeschi attaccarono ma l’effetto sorpresa era venuto a
mancare e le truppe tedesche vennero respinte in pochi giorni. 30
5 - C IFRATURA A BLOCCO MONOUSO
La decifrazioni del telegramma di Zimmermann e la rottura del ADFGVX
rappresentarono dei grandi passi avanti nella crittoanalisi; verso la fine
della Grande guerra in America, alcuni scienziati scoprirono come la tavola
di Vigenère potesse essere usata per un nuovo formidabile metodo
crittografico; la debolezza di Vigenère è data dalla ciclicità della cifratura
(se la chiave è di cinque lettere, ogni cinque lettere si ripete lo stesso
alfabeto) per cui, una volta individuata la lunghezza della chiave è possibile
analizzare le frequenze di ogni gruppo e decifrare il messaggio. La nuova
cifratura prevedeva di utilizzare una chiave lunga quanto il messaggio in
modo da ridurre l’analisi delle frequenze a gruppi di una sola lettere e
renderla quindi impossibile.
Per creare la chiave è possibile utilizzare un testo preesistente, per
esempio è possibile cifrare un messaggio con i lemmi di un’enciclopedia;
questa tecnica però può essere rotta. Utilizzando parole comuni (in
italiano ‘non’ o ‘che’) è possibile individuare frammenti di chiave che
permettono di ricostruire parti di messaggio più ampie che, a loro volta,
consentono di ricostruire l’intera chiave.
5.1 - O T P
NE IME AD
Nel 1918 alcuni crittografi iniziarono ad utilizzare chiavi prive di senso e
il maggiore Joseph Mauborgne, capo delle ricerche crittografiche
dell’Esercito degli Stati Uniti, introdusse il concetto di chiave casuale, una
chiave formata da una serie di lettere che si succedono senza alcun ordine
da utilizzare una sola volta. La cifratura a blocco monouso, one-time
cypher, elimina tutti i punti deboli della tavola di Vigenère, primo fra tutti
quello legato alla lunghezza della chiave, in genere più corta del messaggio;
il problema è risolto utilizzando chiavi molto lunghe paragonabili alla
31
lunghezza del testo in modo da ottenere sottoinsiemi molto piccoli per
rendere inutili qualsiasi analisi di frequenza.
L’idea del maggiore Mauborgne richiedeva di generare una sequenza di
lettere casuali molto lunga che sarà distribuita sia al mittente che al
destinatario; i due interlocutori avranno quindi due pile identiche di
lettere nello stesso ordine. Il messaggio, lungo , verrà cifrato con il
n
metodo di Vigenère usando le prime lettere della pila; le lettere usate
n
verranno poi gettate (ecco perché ‘one time’). Il destinatario decifra il
cyphertext ricevuto usando le prime lettere della sua pila, anche lui poi
n
getterà le lettere usate; alla fine della comunicazione le pile saranno
identiche e i due potranno continuare a comunicare. L’unica difficoltà di
questo metodo è generare ogni volta la sequenza di lettere e scambiarla
con il destinatario.
L’One Time Pad (OTP) può essere realizzato con il cifrario di Vernam.
5.1.1 - C V
IFRARIO DI ERNAM
Ogni simbolo (lettera o numero) del messaggio può essere codificato in
un numero per esempio attraverso la codifica .
ASCII
Ipotizzando di voler cifrare “Vernam”, si converte ogni lettera in ASCII
binario ottenendo:
v e r n a m
P 01110110 01100101 01110010 01101110 01100001 01101101
ASCII
Si genera casualmente, come previsto dall’One Time Pad, una chiave
intesa come stringa binaria lunga quanto il messaggio.
v e r n a m
P 01110110 01100101 01110010 01101110 01100001 01101101
ASCII 11010010 10001010 00010011 10111010 11001000 00011001
k
Si esegue l’operazione di (simbolo ) tra e . Questa
XOR P k
operazione, ha come risultato 0 se i bit sono uguali o 1 se diversi.
v e r n a m
P 01110110 01100101 01110010 01101110 01100001 01101101
ASCII 11010010 10001010 00010011 10111010 11001000 00011001
k 10100100 11101111 01100001 11010100 10101001 01110100
C 32
Il protocollo di decifrazione, avendo a disposizione la chiave, è
immediato: dato che , il testo in chiaro sarà . E’
C P k P C k
intuibile come, senza conoscere la chiave, sia impossibile decifrare ;
C
l’operazione binaria e la lunghezza della chiave coincidente con la
lunghezza del testo, hanno fatto cadere ogni possibilità di analisi di
frequenze; sembra un cifrario favoloso ma rimane il problema dello
scambio di chiavi.
Il cifrario di Vernam è l'unico sistema crittografico la cui sicurezza sia
comprovata da una dimostrazione matematica e per questo si è
guadagnato il titolo di “cifrario perfetto”.
5.1.2 - S
ICUREZZA
Anche volendo il crittoanalista non potrebbe in alcun modo decifrare il
messaggio: se crede che alcune parole compaiano nel messaggio non avrà
alcun riscontro nella chiave dato che essa non ha senso; potrebbe inoltre
provare tutte le possibili chiavi e, ammesso che sia possibile in termini di
tempo, il crittoanalista troverebbe sì il messaggio giusto ma anche tutti i
possibili messaggi sbagliati che, molte volte, potrebbero falsare il
significato (il messaggio ‘ ’ decifrato con chiave
PEFOGBQBNKLMTPLZCCNBJON
‘plmoezqkjzlrteavcrcbynn’ genera la frase ‘attaccare la valle all’alba’
mentre, se decifriamo sempre lo stesso messaggio con chiave diversa,
‘pdeotyconthrteavcrcbynn’, si ottiene ‘abbandonare valle all’alba’).
5.1.3 - C
HIAVI CASUALI
L’unico inconveniente è generare casualmente le chiavi: ricorrere
all’aiuto di un dattilografo che batta casualmente su una tastiera
genererebbe una sequenza non casuale dato che egli tenderebbe a battere
le lettere alternando le mani, battendo quindi una lettera sul lato destro,
poi una sul lato sinistro e così via. L’unico modo per generare chiavi
casuali è ricorrere a fenomeni naturali come il decadimento radioattivo
(misurare le emissioni di un frammento di uranio collegato ad un
33
calcolatore), il che, pur offrendo da un lato la garanzia di casualità,
dall’altro risulterebbe poco pratico.
5.1.4 - S
CAMBIO DI CHIAVI
Ammesso di produrre chiavi sufficientemente casuali, sussiste
un’ulteriore difficoltà, cioè la distribuzione del blocco di chiavi: in tempo di
guerra sarebbe impossibile e inimmaginabile avere centinaia di operatori
che recapitano i blocchi ed inoltre dovrebbe essere garantita la
simultaneità delle consegne, delle cifrature e di conseguenza delle
decifrature. Si potrebbe pensare di generare una volta sola una sequenza
molto lunga di lettere per riutilizzarla più volte, ma ciò consentirebbe
un’analisi di frequenza e una ricerca di parole frequenti sui due testi in
modo da individuare frammenti di chiavi che, sostituiti in entrambi i testi,
porterebbero a decifrare i due messaggi. 34
6 - E NIGMA
6.1 - S , ,
TRUTTURA FUNZIONAMENTO UTILIZZO
Nel 1918 l’inventore tedesco Arthur Scherbius e l’amico Richard Ritter
fondarono la Scherbius & Ritter, una società che si occupava dei prodotti
più diversi, dalle turbine ai guanciali riscaldati, nonché di crittografia.
Entrambi ingegneri elettrici misero a punto un dispositivo crittografico
; questa invenzione fu
elettromeccanico basato sul Disco dell’Alberti [16]
chiamata Enigma.
La macchina Enigma di Scherbius era composta principalmente di tre
componenti collegati da fili elettrici: una tastiera che permetteva di
digitare le lettere del testo in chiaro; un’unità scambiatrice che cifrava la
lettera trasformandola nel corrispondente elemento del crittogramma; un
visore con varie lampadine che accendendosi indicavano la lettera da
inserire nel crittogramma.
Quando l’operatore digitava il messaggio, per ogni lettera, l’impulso
elettrico raggiungeva l’unità scambiatrice e, dopo esser stato elaborato,
andava ad illuminare il visore in modo corrispondente alla lettera criptata.
Il fulcro della macchina era lo scambiatore, un disco di gomma
attraversato da fili elettrici che determinavano la modalità di cifratura.
Per semplificare la spiegazione del
funzionamento si suppone di utilizzare un
alfabeto composto da 6 lettere (‘a’, ‘b’, ‘c’, ‘d’, ‘e’
ed ‘f’). Nella figura il rotore fa sì che premendo ‘a’
sulla tastiera si illumini sul visore la lettera ‘ ’ e
B
che premendo ‘b’ il visore indicherà ‘ ’, quindi
A
che ‘c’ diventi ‘ ’, ‘d’ diventi ‘ ’, ‘e’ diventi ‘ ’ ed
D F E
16 Vedi appendice B - Prime macchine cifranti 35
infine che ‘f’ venga trasformata in ‘ ’. Con
C
questo schema di base si ottiene una semplice
cifratura per sostituzione monoalfabetica di
facile rottura.