Il Gioco dell'agente Segreto I Lincei per una nuova didattica nella scuola: una rete nazionale 4 febbraio 2016
Sommario Crittografia e crittoanalisi: presentazione, definizioni e utilizzo La crittografia nella storia Presentazione di alcuni sistemi di crittografia classica
Che cos è la crittografia E la scienza che studia come rendere segreta e sicura la comunicazione tra due persone o entità nascondendo il significato del messaggio BLA BLA... 13241133?
Che cos è la crittografia : obiettivi Segretezza Il messaggio non deve essere leggibile da terzi. Autenticazione Il destinatario deve poter essere sicuro del mittente. Integrità Il destinatario deve poter essere sicuro che il messaggio non sia stato modificato. Attendibilità Il mittente non deve poter negare di aver inviato il messaggio.
Procedimento Deve essere biunivoco, in modo da permettere un processo inverso che ritrovi il messaggio originale A e B devono condividere prima il metodo con cui cifrare e decifrare Chi invia il messaggio c cifra il messaggio Chi riceve il messaggio c deve essere in grado di interpretare ( decifrare ) c Scegliere un metodo efficace in modo che per gli altri sia sostanzialmente impossibile cifrare e decifrare un messaggio
La chiave è nella chiave Il processo di trasformazione dal messaggio in chiaro al messaggio cifrato e viceversa è spesso noto, ma si basa su una informazione specifica (detta chiave ) senza la quale non si è in grado di operare
Utilizzo tradizionale della crittografia Ambiti militari e di spionaggio/controspionaggio Sono riportati numerossimi esempi di uso di sistemi crittografici nel corso di guerre, battaglie, rivoluzioni, cospirazioni, complotti,...
Utilizzi moderni della crittografia Ambito civile : sicurezza delle comunicazioni in rete Applicazioni nel commercio elettronico: necessità della sicurezza e della segretezza (scambio di dati sensibili, quali il numero di carta di credito, numero di conti bancari, ecc...)
Utilizzi moderni della crittografia Ambito civile : firma digitale e autenticazione dei documenti Applicazioni nella pubblica amministrazione (e-government) e in generale negli aspetti burocratici (contratti, domande, moduli, registri, esami, documenti ufficiali, ecc...)
La crittografia nella storia Erodoto (ca. 485- ca. 425 a. C.) (lo scontro delle Termopili, libro VII delle Storie): Demarato per avvisare gli Spartani del prossimo attacco del re persiano Serse alla Grecia prese una tavoletta doppia, ne raschiò la cera e poi sul legno della tavoletta scrisse il piano del re. Fatto ciò versò di nuovo cera liquefatta sullo scritto, in modo che, venendo portata vuota, la tavoletta non procurasse nessun fastidio da parte dei custodi delle strade (STEGANOGRAFIA)
La crittografia nella storia Ancora Erodoto narra (libro V delle Storie) Istieo voleva dare ad Aristagora l'ordine di ribellarsi, non aveva alcun altro modo per annunziarglielo con sicurezza, essendo le strade sorvegliate, fatta rasare la testa al più fido degli schiavi, vi impresse dei segni, e aspettò che ricrescessero i capelli. Non appena ricrebbero, lo spedì a Mileto, non comandandogli null'altro se non che, quando giungesse a Mileto, dicesse ad Aristagora di fargli radere i capelli e di guardare la sua testa: i segni impressi ordinavano, come già prima ho detto, la rivolta. (STEGANOGRAFIA)
La crittografia nella storia Tra i primi esempi di scrittura segreta vera e propria si citano i geroglifici egiziani crittografati Un altro esempio è la scitala (skytale) con cui gli spartani cifravano e decifravano messaggi segreti (Plutarco, Vite parallele)
La scacchiera di Polibio Nel libro X delle Storie, (circa 200-118 a. C.) Polibio attribuisce ai suoi contemporanei Cleoxeno e Democleito l introduzione 1 2 3 4 di un telegrafo ottico 1 trasmesso con due 2 gruppi di 5 torce 3 qui adattato all alfabeto italiano, con l aggiunta 4 dei principali segni di 5 interpunzione 5
La scacchiera di Polibio Base per un cifrario a colpi 13241133 = CIAO Il messaggio viene battuto lasciando una pausa più breve tra i 1 due numeri che si riferiscono ad una lettera e una pausa più 1 2 3 4 lunga tra una lettera e l altra. 5 2 3 4 5
Abbiamo usato: Alfabeto del messaggio in chiaro Alfabeto per il messaggio cifrato Una corrispondenza biunivoca tra i due alfabeti, forma della scacchiera distribuzione dell alfabeto (tale scelta è detta chiave ) Caratteristiche: Una lettera viene cifrata sempre allo stesso modo (cifrario monoalfabetico) La regola che mi permette di cifrare mi spiega anche come decifrare (e viceversa) (chiave simmetrica)
Il crittosistema di Cesare Svetonio, nella Vita dei dodici Cesari, racconta che Giulio Cesare utilizzava un sistema di cifrazione molto semplice: ogni lettera va sostituita con quella che si trova tre posti dopo domani attaccheremo (testo in chiaro), GRPDQN DZZDFFMHUHPR (testo cifrato).
Il crittosistema di Cesare La decifrazione è altrettanto semplice, basta sostituire ad ogni lettera quella che si trova tre posti prima VNDPR SURQZN GRPDQN DZZDFFMHUHPR
Generalizzazione E possibile generalizzare il sistema di Cesare usando uno spostamento di k posti, anzichè di 3. k deve essere un numero compreso tra 1 e 20 Ad esempio con k=7 La frase dell esempio precedente diventa MVTHUR HDDHLLQNBNTV
Sostituzione monoalfabetica Il crittosistema di Cesare è un cifrario in cui la stessa lettera è codificata sempre con la stessa lettera Ad esempio la lettera a è sempre codificata con la lettera D, la b è codificata con E,...
Sostituzione monoalfabetica Il caso più generale è quello in cui l alfabeto cifrato è una permutazione di quello in chiaro Un modo semplice per ricordare la permutazione è quello di usare una frase in questo esempio la frase è NEL MEZZO DEL CAMMIN DI NOSTRA VITA Ad esempio la frase domani attaccheremo diventa MRSNTA NHHNLLCZFZSR
Sostituzione monoalfabetica Esistono 21!=51090942171709440000 permutazioni possibili, cioè circa 51 10 ossia più di cinquanta miliardi di miliardi Una ricerca esaustiva per trovare la permutazione giusta è praticamente impossibile Eppure questo codice è tutt altro che sicuro... 18
La crittoanalisi La crittoanalisi studia come decifrare un messaggio senza esserne autorizzati La crittoanalisi ha il ruolo fondamentale di far capire quanto un sistema di cifratura/decifratura sia sicuro
La crittoanalisi nasce sostanzialmente durante l VIII e il IX secolo d. C., quando gli arabi si dedicarono allo studio approfondito della lingua scritta e, tra l altro, stabilirono le frequenza delle varie lettere. In particolare, scoprirono che le lettere più usate erano sostanzialmente le stesse in qualsiasi testo, purchè abbastanza esteso. Non è noto quando queste conoscenze furono applicate alla crittografia.
Come decifrare un codice monoalfabetico Usare simboli diversi al posto delle lettere non aumenta la difficoltà di decifratura Si confronti ad esempio il codice MRSNTA NHHNLLCZFZSR con il codice 11-16-17-12-18-01-00-12-08-08-12-10-10-03-21-21-17-16 La debolezza del codice è nella ripetizione dei simboli
Frequenza delle lettere in italiano
Frequenza delle lettere in italiano 14 12 10 8 6 4 2 0 E A I O N L R T S C D P U M V G H F B Q Z
Come decifrare un codice monoalfabetico 1) Sapendo che il testo è in italiano, è facile che l ultima lettera di ciascuna parola sia una vocale. 2) Si cercano i simboli più frequenti nel testo cifrato 3) Si prova la sostituzione con le lettere più frequenti in italiano 4) Si cerca di intravedere delle parti di parole 5) Qualche tentativo può portare a parole improbabili, in tal caso si devono rivedere alcune scelte
Esempio TRT QRDIAR NTMNFZ N GLPRIN Lettera Occorrenze Lettera Occorenze Lettera A H Q B I R C L S D M T E N U F O V G P Z Occorenze
Esempio TRT QRDIAR NTMNFZ N GLPRIN
TRT QRDIAR NTMNFZ N GLPRIN Primo tentativo: inizio dalle lettere terminali di una parola e associo loro le vocali, in ordine di frequenza: R (4) = e, N(4) = a, T(3) = i, I(2) = o,
TRT QRDIAR NTMNFZ N GLPRIN Primo tentativo: inizio dalle lettere terminali di una parola e associo loro le vocali, in ordine di frequenza: R (4) = e, N(4) = a, T(3) = i, Z(1) = o, si ottiene iei QeDIAe aimafo a GLPeIa
TRT QRDIAR NTMNFZ N GLPRIN R (4) = e, N(4) = a, T(3) = i, Z(1) = o, iei QeDIAe aimafo a GLPeIa Rivediamo alcune scelte (la prima parola non ha senso) T(3) = n (è la prima consonante per frequenza), Otteniamo nen QeDIAe anmafo a GLPeIa
TRT QRDIAR NTMNFZ N GLPRIN nen QeDIAe anmafo a GLPeIa La prima parola che si intravede è non Quindi R=o e di conseguenza Z= e, oppure Z=i non QoDIAo anmafe a GLPoIa oppure non QoDIAo anmafi a GLPoIa
TRT QRDIAR NTMNFZ N GLPRIN non QoDIAo anmafe a GLPoIa oppure non QoDIAo anmafi a GLPoIa Ora introduciamo le consonanti più frequenti ancora mancanti (l, r, t, s, c) Proviamo con I = l, non QoDlAo anmafe a GLPola oppure non QoDIAo anmafi a GLPola
non voglio andare a scuola
Sostituzione polialfabetica Un crittosistema per sostituzione polialfabetica non usa sempre lo stesso simbolo per la stessa lettera Per ogni posizione del messaggio in chiaro viene usato un alfabeto diverso Così si supera (parzialmente ) il problema della debolezza dei crittosistemi monoalfabetici Infatti ha meno senso contare le frequenze di simboli, non essendoci più corrispondenza tra lettere in chiaro e simboli cifrati
Il disco cifrante di Giovan Battista Alberti (1404-1472) Disco esterno fisso con 24 caselle contenenti 20 lettere latine maiuscole (inclusa la Z, con U=V ed escluse H J K W Y) ed i numeri 1 2 3 4 per il testo in chiaro Disco interno mobile, con le 24 lettere latine minuscole per il testo cifrato. chiaro (fisso) cifrato (mobile) Le 20 lettere maiuscole messe in ordine alfabetico; le 24 minuscole in disordine (senza questa norma si ha una semplice generalizzazione del codice di Cesare).
DOMANI ATTACCHEREMO Chiave segreta: una lettera maiuscola nel disco esterno, ad esempio B Ruotare disco interno e scrivere la prima parola chiaro (fisso) cifrato (mobile) kny&gxvb BDOMANI1 Ruotare il disco interno per far combaciare b con B ABCDEFGHILMNOPQRSTVXZ1234 DBACEGKLNPRTVZ&XYSOMQIHF scrivere la seconda parola dssdaalexerv
Crittosistema di Vigenère (1586) a b c d a b c d e f g h i l m n o p q r s t u v z e f g h i l m n o p q r s t u v z
Crittosistema di Vigenère Si usa una chiave, ad esempio PASQUA mi piace la cioccolata PA SQUAP AS QUAPASQUAP sulla riga m della colonna p leggo sulla riga i della colonna a leggo sulla riga p della colonna s leggo sulla riga i della colonna q leggo sulla riga a della colonna u leggo D L L C V...
testo in chiaro MI PIACE LA CIOCCOLATA chiave PA SQUAP AS QUAPASQUAP testo cifrato DL LCVDV MT TGPSDIDVUQ a b c d e f g h i l m n o p q r s t u v z a b c d e f g h i l m n o p q r s t u v z
Crittosistema di Vigenère = chiffre indechiffrable? Charles Babbage (ca1850) ( Friedrich Kasiski,1863, pubblicò per primo il risultato) fu il primo a trovare un modo per forzare il sistema: in testi abbastanza lunghi capita che alcune parole ricorrenti vengano cifrate allo stesso modo Se si trovano ripetizioni significative nel testo cifrato si può sperare che esse provengano dalle stesse parole: la lunghezza della chiave divide allora la distanza tra i blocchi ripetuti Si studiano le frequenze dei simboli a distanza pari alla lunghezza della chiave
Il gioco dell'agente segreto