La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Crittografia e numeri primi III incontro lunedì 22 novembre 2010 Piano Lauree Scientifiche.

Presentazioni simili


Presentazione sul tema: "Crittografia e numeri primi III incontro lunedì 22 novembre 2010 Piano Lauree Scientifiche."— Transcript della presentazione:

1 Crittografia e numeri primi III incontro lunedì 22 novembre 2010 Piano Lauree Scientifiche

2 Le dispense degli incontri Crittografia e numeri primi sono sul sito matheteresa.wikidot.com

3 Scaletta dellincontro (per gli insegnanti) Analisi delle frequenze Algoritmo euclideo Identità di Bezout Cifrario di Vigenére

4 Un messaggio può essere cifrato utilizzando una permutazione dellalfabeto (e di eventuali altri caratteri). Il Codice Cesare cifra utilizzando una cifratura per traslazione del tipo Questa cifratura è molto semplice da decifrare poiché è sufficiente determinare lo spostamento di una lettera per ottenere di conseguenza tutti gli altri. Qualsiasi valore dello spostamento 0 < [a] < n va bene. Cifrare con laddizione

5 Unaltra permutazione dellalfabeto può essere ottenuta utilizzando la funzione moltiplicativa La funzione f è però una funzione di cifratura se e solo se [a] è invertibile in Zn e… [a] è invertibile in Zn se e solo se MCD(a, n) = 1 La funzione di decifratura è: Cifrare con la moltiplicazione

6 Un cifrario affine è unapplicazione C k che contenga una moltiplicazione e una traslazione (in modo che lo [0] non abbia come immagine sé stesso). La nostra chiave sarà una coppia di numeri k = ([a], [b]) e la funzione cifrante sarà La funzione C k va bene se e solo se è biunivoca, cioè se e solo se è invertibile. Si mostra facilmente che ciò accade esattamente quando [a] invertibile. Cifrario affine f : Z n Z n [m] [m] = [a] [m] + [b]

7 Come determinare la chiave di decifratura? [m] = [a] [m] + [b]m = a m + b

8 Determina la chiave di decifratura relativa alla chiave di cifratura C k = ([5], [4])

9 Determina la chiave di decifratura relativa alla chiave di cifratura C k = ([11], [6])

10 Analisi delle frequenze Se si associa un ordine anche allelenco dei caratteri del nostro alfabeto, la funzione di cifratura C k produce una permutazione dellordine con cui compaiono i caratteri. abcdefghilmnopqrstuvz HDNBGMQATRLVCPFOUZESI

11 Analisi delle frequenze abcdefghilmnopqrstuvz A A A A … Quante sono le possibili permutazioni del nostro alfabeto di 21 lettere? A partire dalla prima lettera (A) possiamo pensare di posizionarla In 21 posizioni, la seconda in 20 e così via…..

12 Analisi delle frequenze Quante sono le possibili permutazioni del nostro alfabeto di 21 lettere? A partire dalla prima lettera (A) possiamo pensare di posizionarla In 21 posizioni, la seconda in 20 e così via….. Pertanto, in totale abbiamo ……21 permutazioni possibili del nostro alfabeto 21! = ~ possibili riordinamenti del nostro alfabeto Con le funzioni affini abbiamo 20*12 possibili permutazioni

13 Analisi delle frequenze Tutti questi 21! = possibili riordinamenti del nostro alfabeto si portano però dietro la stessa informazione: la distribuzione di frequenze dei caratteri è costante

14 Analisi delle frequenze Testo da cifrare: Questa mattina un battaglione del nostro esercito ha perlustrato le coltivazioni abbandonate alle pendici del monte. Possiamo calcolare il numero di volte in cui ciascun carattere è stato utilizzato nel testo [totale 100 caratteri]: abcdefghilmnopqrstuvz

15 Analisi delle frequenze Testo da cifrare: Questa mattina un battaglione del nostro esercito ha perlustrato le coltivazioni abbandonate alle pendici del monte.

16 Analisi delle frequenze Aggiungiamo altro testo, altri 100 caratteri siamo quindi a 200: Questa mattina un battaglione del nostro esercito ha perlustrato le coltivazioni abbandonate alle pendici del monte. Gli abitanti hanno bruciato tutte le colture in modo da non lasciare nulla al nemico che avanzava. Domani sera partiremo.

17 Analisi delle frequenze Confrontiamo la nostra distribuzione di frequenze con quella ottenuta considerando il primo capitolo dei promessi sposi

18 Analisi delle frequenze Possiamo confrontare la distribuzione di frequenze della lingua italiana Nei secoli, per esempio confrontando i promessi sposi con La Divina Commedia

19 Analisi delle frequenze Possiamo confrontare anche le distribuzioni di frequenze nelle varie Lingue: inglese, francese, italiano.

20 Analisi delle frequenze Tutti i messaggi cifrati con un sistema monoalfabetico si portano dietro una informazione che può essere utilizzata per decriptare. Conoscendo la distribuzione di frequenze teorica possiamo tentare qualche accoppiamento per ridurre il numero di possibili permutazioni. abcdefghilmnopqrstuvz 10,4 %1,1%4,6%3,9%12,3%0,9%2,0%1,2%10,0%5,7%2,6%7,6%9,6%2,9%0,7%6,6%5,4%6,1%3,5%2,2%0,7%

21 Analisi delle frequenze Testo cifrato: MQAOPT HIPPA FT FQHT LEAHT EGLAZEOVA QH TPPTVVI ZE OINLNAOT. ZIGTHE OVAHZANAGI T RTFFA. ABCDEFGHILMNOPQRSTUVZ frequenze nel messaggio cifrato 14%0% 7%6%4%8%7%4%1%4%7% 4%1%0%14%0%6% possibili accoppiam enti e e a a i i ABCDEFGHILMNOPQRSTUVZ distribuz. Teorica delle frequenze 10,4 % 1,1%4,6%3,9% 12,3 % 0,9%2,0%1,2%10,0%5,7%2,6%7,6%9,6%2,9%0,7%6,6%5,4%6,1%3,5%2,2%0,7%

22 Analisi delle frequenze Possibile decifrazione del testo cifrato: MQeOPa HIPPe Fa FQHa LEeHa EGLeZEOVe QH aPPaVVI ZE OINLNeOa. ZIGaHE OVeHZeNeGI a RaFFe. ABCDEFGHILMNOPQRSTUVZ frequenze nel messaggio cifrato 14%0% 7%6%4%8%7%4%1%4%7% 4%1%0%14%0%6% possibili accoppiam enti e e a a i i ABCDEFGHILMNOPQRSTUVZ distribuz. Teorica delle frequenze 10,4 % 1,1%4,6%3,9% 12,3 % 0,9%2,0%1,2%10,0%5,7%2,6%7,6%9,6%2,9%0,7%6,6%5,4%6,1%3,5%2,2%0,7%

23 Analisi delle frequenze Possibile decifrazione del testo cifrato: MQeOPa HIPPe Fa FQHa LEeHa EGLeZEOVe QH aPPaVVI ZE OINLNeOa. ZIGaHE OVeHZeNeGI a RaFFe. Per la decifrazione completa ci possiamo anche aiutare osservando che ci sono alcuni caratteri ripetuti che fanno pensare alle doppie: Ci sono nel testo due gruppi di PP: proviamo a sostituire la lettera T: Possibile decifrazione del testo cifrato: MQeOta HItte Fa FQHa LEeHa EGLeZEOVe QH attaVVI ZE OINLNeOa. ZIGaHE OVeHZeNeGI a RaFFe. Allora forse VV può essere cc…..

24 Analisi delle frequenze Possibile decifrazione del testo cifrato: MQeOta Hotte Fa FQHa LEeHa EGLeZEOce QH attacco ZE OoNLNeOa. ZoGaHE OceHZeNeGI a RaFFe. …e la I può essere una o..

25 Analisi delle frequenze Come possiamo bloccare lanalisi delle frequenze? Non usando un codice monoalfabetico, modificando cioè la funzione con la posizione (cambiando per esempio la chiave) Cifrando i caratteri più frequenti con caratteri diversi (Leon Battista Alberti nel De Cifris) Cifrando non i caratteri singoli, ma a gruppi di due o tre lettere consecutive. In questo caso il numero di caratteri utilizzati aumenta notevolmente. Lavorando per esempio con gruppi di due lettere: aa ab ac ad… ba bb bc bd…. ….. zu zv zz AA AB AC AD… BA BB BC BD…. ….. ZU ZV ZZ

26 Questa mattina un battaglione del nostro esercito ha perlustrato le coltivazioni abbandonate alle pendici del monte. Testo da cifrare: Posso per esempio eliminare gli spazi Questamattinaunbattaglionedelnostroesercitohaperlustrato lecoltivazioniabbandonateallependicidelmonte. e suddividere poi il messaggio in tanti digrammi (cioè blocchi di due lettere): Qu es ta ma tt in au nb at ta gl io ne de ln os tr oe se rc it oh ap er lu st ra to le co lt iv az io ni ab ba nd on at ea ll ep en di ci de lm on te. Ogni digramma viene trattato come un unico carattere e, volendolo poi trattare con una funzione matematica, ogni digramma corrisponde a un numero.

27 abcdefghilmnopqrstuvz a b ccb d eeg f gge h i l m n o p qqu r sst t u v z Osservazione: possiamo costruire il prodotto cartesiano Z 21 ×Z 21 e determinare il numero di caratteri utilizzati. Ci possiamo chiedere quanti sono i digrammi che andremo ad utilizzare.

28 Associando le lettere a gruppi di due lavoriamo con 21×21=441 caratteri. Quindi in questo caso linsieme diventa Z 441 Se invece raggruppassimo i caratteri a gruppi di tre o quattro, ecc.. il numero degli elementi dellinsieme su cui viene applicata la funzione di cifratura aumenterebbe notevolmente: Trigrammi (gruppi di tre lettere): Z 21×21×21 =Z 9261 gruppi di quattro lettere: Z 21×21×21×21 =Z

29 Supponiamo di associare le lettere del nostro messaggio a gruppi come possiamo dare un valore numerico a ciascun digramma? abcdefghijklmnopqrstuvwxyz Esempio: digramma gl viene tradotto nel numero 6×21+11=137 Esempio: trigramma ndo viene tradotto nel numero 13× ×21+14=5810

30 Analisi delle frequenze Lavorando con i digrammi si ottiene una distribuzione di frequenze, ma molto meno utilizzabile. In figura otteniamo la distribuzione dei digrammi in lingua inglese:

31 Bloccare lanalisi delle frequenze si traduce in insiemi più numerosi. I numeri utilizzati diventano più grandi e potrebbe non essere più così semplice calcolare il MCD(a,n) e determinare linverso di [a] per decifrare.

32 Proviamo a determinare il MCD (1633, 3763) Si ha: 1633 = = MCD (1633, 3763) = 71

33 Definizione Dati due numeri interi a e b, il loro Massimo Comun Divisore è un intero positivo d tale che: 1.d divide a e d divide b 2. se d divide sia a che b, allora d divide d

34 Algoritmo euclideo per il calcolo del MCD (presente negli Elementi di Euclide, permette il calcolo del MCD tra due numeri senza ricorrere alla fattorizzazione) MCD (44880, 5292)

35 a=b*quoziente+resto 44880=5292* =2544* =204* =96* =12*8+0 a = b * q 1 + r 1 b = r 1 * q 2 + r 2 r 1 = r 2 * q 3 + r 3 r 2 = r 3 * q 4 + r 4 MCD (44880, 5292) = 12

36 MCD (1547, 560) = MCD (3522, 321) =

37

38

39 a=b*quoziente+resto 1547=560*+ =*+ =*+ =*+ =*+ MCD (1547, 560) =

40 a=b*quoziente+resto 3522=321*+ =*+ =*+ =*+ =*+ MCD (3522, 321) =

41 Verifichiamo che lultimo resto non nullo divide tutti i resti che lo precedono 96 = 12 * Infatti nellultima riga si legge: Lultimo resto non nullo (12) divide il resto precedente (96)

42 96 = 12 * Infatti nelle ultime due righe si legge: Lultimo resto non nullo (12) divide anche = 96 * E sostituendo si ha: 204 = (12 * 8) * = 12 * (8 * 2 + 1) = 12 * 17

43 96 = 12 * = 204 * Lultimo resto non nullo (12) divide anche = 96 * = 12 * 17 E sostituendo si ha: 2544 = 204 * = (12 * 17) * * 8 = = 12 * (12 * ) = 12 * 212

44 Dunque lultimo resto non nullo divide tutti i resti che lo precedono

45 Verifichiamo che lultimo resto non nullo divide a e b Dunque lultimo resto non nullo (12) divide sia a (44880) che b (5292) Infatti dalluguaglianza 5292 = 2544 * , si deduce che: Se 12 divide i resti 2544 e 204, allora 12 divide 5292 E dalluguaglianza = 5292 * , si deduce che: Se 12 divide e 2544, allora 12 divide 44880

46 Si può concludere che lultimo resto non nullo è un divisore comune di a e b, e divide quindi il loro MCD! Verifichiamo, viceversa, che ogni divisore comune di a e b è anche divisore dellultimo resto non nullo

47 Riscriviamo luguaglianza = 5292 * al modo seguente: * 8 = 2544 Se n è un divisore comune di e 5292, allora n divide anche il resto 2544

48 Riscriviamo luguaglianza 5292 = 2544 * al modo seguente: * 2 = 204 Se n è un divisore comune di e 5292, allora n divide anche il resto 204

49 Riscriviamo luguaglianza 2544 = 204 * al modo seguente: 2544 – 204 * 12 = 96 Se n è un divisore comune di e 5292, allora n divide anche il resto 96

50 Riscriviamo luguaglianza 204 = 96 * al modo seguente: 204 – 96 * 2 = 12 Se n è un divisore comune di e 5292, allora n divide anche il resto 12

51 Si può concludere che ogni divisore comune di a e b (e quindi anche il MCD (a, b)) divide lultimo resto non nullo!

52 Se lultimo resto non nullo divide il MCD (a, b) e il MCD (a, b) divide lultimo resto non nullo, allora lultimo resto non nullo è uguale al MCD (a, b)

53 Étienne Bézout (1730 – 1783)

54 Massimo Comun Divisore Dati due numeri interi a e b un loro massimo comun divisore è un intero positivo d tale che 1.d divide a e d divide b 2.se t divide sia a che b allora t divide d Si dimostra, che ogni coppia di numeri interi a, b ammette un massimo comun divisore, che risulta essere unico, ed è indicato con il simbolo MCD(a,b). Due numeri interi a, b tali che MCD(a,b) = 1 si dicono coprimi o relativamente primi

55 a=b*quozie nte +resto 44880=5292* =2544* =204* =96* =12*8+0

56 Identità di Bèzout L algoritmo di Euclide ci permette, una volta individuato MCD (a, b), di trovare due numeri interi s, t tali che d = s a + t b Questa relazione si chiama IDENTITA DI BEZOUT.

57 44880 = r 1 = 2544= = r 2 =204 = = r 3 = 96 = = MCD = r 4 = 12=

58 MCD= 12 = 204 – r 3 = 96 = r 2 = 204 = r 1 =2544= = – = 204 – ( ) 2 = 204 – = – = ( ) 25 – = = – = – (44880 – ) 52= = –

59 Come determinare linverso a è invertibile modulo n se e solo se MCD(a,n)= 1. MCD(a,n)= 1 = s a+n t (Bezout) Modulo n [1] = [s a+n t] = [s a]+[n t] = [s] [a]+[n] [t]

60 Nascita dei codici polialfabetici 1466 Leon Battista Alberti – disco cifrante 1553 Giovan Battista Bellaso – tavola reciproca 1586 Blaise de Vigenère – cifrario di Vigenère

61 Cifrari polialfabetici Giovan Battista Bellaso (Brescia ….) contrassegno : VIRTVTIOMNIAPARENTVIRTVTIOMNIAPARENTVI testo chiaro : larmataturchescapartiraacinquediluglio testo cifrato: fyboueyldanuofszlpiincupnshmlrnxoiznrd

62 Le chiffre indéchiffrable

63 Blaise de Vigenère (1523 – 1596)

64 testo in chiaro abcdefghijklmnopqrstuvwxyz 1 BCDEFGHIJKLMNOPQRSTUVWXYZA 2 CDEFGHIJKLMNOPQRSTUVWXYZAB 3 DEFGHIJKLMNOPQRSTUVWXYZABC 4 EFGHIJKLMNOPQRSTUVWXYZABCD 5 FGHIJKLMNOPQRSTUVWXYZABCDE 6 GHIJKLMNOPQRSTUVWXYZABCDEF 7 HIJKLMNOPQRSTUVWXYZABCDEFG 8 IJKLMNOPQRSTUVWXYZABCDEFGH 9 JKLMNOPQRSTUVWXYZABCDEFGHI 10 KLMNOPQRSTUVWXYZABCDEFGHIJ 11 LMNOPQRSTUVWXYZABCDEFGHIJK 12 MNOPQRSTUVWXYZABCDEFGHIJKL 13 NOPQRSTUVWXYZABCDEFGHIJKLM 14 OPQRSTUVWXYZABCDEFGHIJKLMN 15 PQRSTUVWXYZABCDEFGHIJKLMNO 16 QRSTUVWXYZABCDEFGHIJKLMNOP 17 RSTUVWXYZABCDEFGHIJKLMNOPQ 18 STUVWXYZABCDEFGHIJKLMNOPQR 19 TUVWXYZABCDEFGHIJKLMNOPQRS 20 UVWXYZABCDEFGHIJKLMNOPQRST 21 VWXYZABCDEFGHIJKLMNOPQRSTU 22 WXYZABCDEFGHIJKLMNOPQRSTUV 23 XYZABCDEFGHIJKLMNOPQRSTUVW 24 YZABCDEFGHIJKLMNOPQRSTUVWX 25 ZABCDEFGHIJKLMNOPQRSTUVWXY 26 =0 ABCDEFGHIJKLMNOPQRSTUVWXYZ

65 LUCELUCELUCELUCELUC testo in chiaro appuntamentoalmuseo A abcdefghijklmnopqrstu B BCDEFGHIJKLMNOPQRSTUV a L C CDEFGHIJKLMNOPQ R STUVW p J D DEFGHIJKLMNOPQRSTUVWX p R E EFGHIJKLMNOPQRSTUVWX Y u Y F FGHIJKLMNOPQRSTUVWXYZ n G GHIJKLMNOPQRSTUVWXYZA t H HIJKLMNOPQRSTUVWXYZAB a I IJKLMNOPQRSTUVWXYZABC m J JKLMNOPQRSTUVWXYZABCD e K KLMNOPQRSTUVWXYZABCDE n L L MNOPQRSTUVWXYZABCDEF t M MNOPQRSTUVWXYZABCDEFG o N NOPQRSTUVWXYZABCDEFGH a O OPQRSTUVWXYZABCDEFGHI l P PQRSTUVWXYZABCDEFGHIJ m Q QRSTUVWXYZABCDEFGHIJK u R RSTUVWXYZABCDEFGHIJKL s S STUVWXYZABCDEFGHIJKLM e T TUVWXYZABCDEFGHIJKLMN o U UVWXYZABCDEFGHI J KLMNO V VWXYZABCDEFGHIJKLMNOP

66 LUCELUCELUCELUCELUC testo in chiaro appuntamentoalmuseo abcdefghijklmnopqrstu BCDEFGHIJKLMNOPQRSTUV a L CDEFGHIJKLMNOPQ R STUVW p J DEFGHIJKLMNOPQRSTUVWX p R EFGHIJKLMNOPQRSTUVWX Y u Y FGHIJKLMNOPQRSTUVWXYZ n Y GHIJKLMNOPQRSTUVWXYZA t N HIJKLMNOPQRSTUVWXYZAB a C IJKLMNOPQRSTUVWXYZABC m Q JKLMNOPQRSTUVWXYZABCD e P KLMNOPQRSTUVWXYZABCDE n H L MNOPQRSTUVWXYZABCDEF t V MNOPQRSTUVWXYZABCDEFG o S NOPQRSTUVWXYZABCDEFGH a L OPQRSTUVWXYZABCDEFGHI l F PQRSTUVWXYZABCDEFGHIJ m O QRSTUVWXYZABCDEFGHIJK u Y RSTUVWXYZABCDEFGHIJKL s D STUVWXYZABCDEFGHIJKLM e Y TUVWXYZABCDEFGHIJKLMN o Q UVWXYZABCDEFGHI J KLMNO VWXYZABCDEFGHIJKLMNOP

67 VENTOVENTOVEN testo cifrato MMIHZOEFXRVXN abcdefghijklmnopqrstuv BCDEFGHIJKLMNOPQRSTUVW M r CDEFGHIJKLMNOPQRSTUVWX M i DEFGHIJKLMNOPQRSTUVWXY I v EFGHIJKL M NOPQRSTUVWXYZ H o FGHIJKLMNOPQRSTUVWXYZA Z GHIJKLMNOPQRSTUVWXYZAB O HIJKLMNOPQRSTUVWXYZABC E IJKLMNOPQRSTUVWXYZABCD F JKLMNOPQRSTUVWXYZABCDE X KLMNOPQRSTUVWXYZABCDEF R LMNOPQRSTUVWXYZABCDEFG V MNOPQRSTUVWXYZABCDEFGH X NOPQRSTUVWXYZABCDEFGH I N OPQRSTUVWXYZABCDEFGHIJ PQRSTUVWXYZABCDEFGHIJK QRSTUVWXYZABCDEFGHIJKL RSTUVWXYZABCDEFGHIJKLM STUVWXYZABCDEFGHIJKLMN TUVWXYZABCDEFG H IJKLMNO UVWXYZABCDEFGHIJKLMNOP VWXYZABCDEFGHIJKL M NOPQ

68 VENTOVENTOVEN testo cifrato MMIHZOEFXRVXN abcdefghijklmnopqrstuv BCDEFGHIJKLMNOPQRSTUVW M r CDEFGHIJKLMNOPQRSTUVWX M i DEFGHIJKLMNOPQRSTUVWXY I v EFGHIJKL M NOPQRSTUVWXYZ H o FGHIJKLMNOPQRSTUVWXYZA Z l GHIJKLMNOPQRSTUVWXYZAB O t HIJKLMNOPQRSTUVWXYZABC E a IJKLMNOPQRSTUVWXYZABCD F s JKLMNOPQRSTUVWXYZABCDE X e KLMNOPQRSTUVWXYZABCDEF R d LMNOPQRSTUVWXYZABCDEFG V a MNOPQRSTUVWXYZABCDEFGH X t NOPQRSTUVWXYZABCDEFGH I N a OPQRSTUVWXYZABCDEFGHIJ PQRSTUVWXYZABCDEFGHIJK QRSTUVWXYZABCDEFGHIJKL RSTUVWXYZABCDEFGHIJKLM STUVWXYZABCDEFGHIJKLMN TUVWXYZABCDEFG H IJKLMNO UVWXYZABCDEFGHIJKLMNOP VWXYZABCDEFGHIJKL M NOPQ

69 abcdefghijklmnopqrstuvwxyz Cifrare con il metodo Vigenère e la matematica: f : ( Z 26, Z p ) (Z 26 ) p: dimensione della chiave ([m],[K p ]) ([m])

70 abcdefghijklmnopqrstuvwxyz

71 abcdefghilmnopqrstuvz Decifrare Vigenère …..conoscendo la chiave…. decifratura M B V T f -1 : ( Z 26, Z p ) (Z 26 ) p: dimensione della chiave ([m],[K p ]) ([m]) Determinazione della chiave di decifratura: P:{[11],[20],[2],[4]} P:{[10],[1],[19],[17]}


Scaricare ppt "Crittografia e numeri primi III incontro lunedì 22 novembre 2010 Piano Lauree Scientifiche."

Presentazioni simili


Annunci Google