1 Alcuni numeri non razionali L insieme dei numeri razionali purtroppo non esaurisce l insieme di tutti i numeri di cui abbiamo bisogno. Pensiamo ad esempio a 2. Questa la posso vedere come lo zero (o radice) del polinomio x 2 2, oppure piú geometricamente come la lunghezza della diagonale di un triangolo rettangolo con cateti lunghi 1. È veramente molto facile notare che 2 non è un numero razionale. Infatti, ragioniamo per assurdo e suppomiamo che 2 sia un numero razionale. Quindi n 2 = m, con n, m N e n 0. Inoltre, a meno di sostituire n ed m, possiamo pensare che siano ridotti ai minimi termini : ossia non abbiano nessun fattore > 1 in comune. Prendendo il quadrato da ambo le parti e moltiplicando per m 2 si trova 2m 2 = n 2. Dunque n 2 è pari. Per cui n è pari. Quindi n 2 è divisibile per 4. Da questo si vede che 4 divide 2m 2 : ossia m è pari. Questa è una contraddizione, visto che n ed m non hanno fattori > 1 in comune. Nota che tutto questo ragionamento dipende dal Teorema fondamentale dell aritmetica: ogni numero intero > 1 si scrive in modo unico (a meno dell ordine dei fattori) come prodotto di numeri primi. Con pochissima fatica abbiamo il seguente risultato. Lemma 1 Sia x un numero razionale. Allora x è un numero razionale se e solo se x = n 2 /m 2, per qualche n, m Z con m 0. Proof 1 (Dimostrazione) Una parte dell implicazione è ovvia. Infatti se x = n 2 /m 2 (per qualche n, m Z con m 0), allora x = n/m oppure n/m, ed entrambi questi numeri sono razionali. Supponi ora che x Q. Come fatto sopra per 2, scrivi x = n x d x e x = n d con n x, d x, n, d Z, d x, d 0. Inoltre, prendiamo n x e d x, e n e d, ridotti ai minimi termini. Elevando al quadrato l espressione x = n/d e moltiplicando per d 2 d x si trova d 2 n x = d x n 2. (1) 1
Ora ci sono vari casi da considerare. Se n x = 0 o se n = 0 allora x = 0 ed il risultato è evidende. Inoltre possiamo assumere (a meno di cambiare il segno di d x, n x, d e n) che d x, n x, d, n > 0. Se n x = d x = 1 allora x = 1 e ancora una volta non c è niente da verificare. Quindi possiamo supporre che n x > 1 o d x > 1. Supponi che n x > 1. Sia p un divisore primo di n x e sia p α la piú grande potenza di p che divide n x. Ora visto che n x e d x non hanno primi in comune, p α divide n 2. Visto che n 2 è un quadrato, il teorema fondamentale dell aritmetica mostra che α è pari: ossia α = 2α per qualche α N. Ripetendo questo ragionamento per ogni divisore primo di n x si trova che n x = a 2, per qualche a N. Ora l equazione (1) diventa (da) 2 = d 2 a 2 = d x n 2. Se d x = 1 allora x = n x = a 2 e la dimostrazione è conclusa. Altrimenti se d x > 1 possiamo applicare il Teorema fondamentale dell aritmetica per dimostrare (come fatto sopra) che d x = b 2, per qualche b N. 2 Accenni sui numeri primi Ricordiamo che un numero naturale p > 1 si dice un primo se gli unici divisori naturali di p sono 1 e p. Quindi ad esempio 2, 3, 5, 7, 11, 13 sono numeri primi, mentre 4 = 2 2, 6 = 2 3, 8 = 2 4, 9 = 3 3, 10 = 2 5 non sono numeri primi. Alla luce del teorema fondamentale dell aritmetica è molto importante avere una conoscenza approfondita sui numeri primi. Iniziamo con una domanda basilare: quanti sono?. Presentiamo tre dimostrazione sull esistenza di infiniti numeri primi. Theorem 1 Esistono infiniti numeri primi. Proof 2 (Dimostrazione 1) Questa é forse é la più famosa: anche se la meno informativa. Supponiamo per assurdo che esistano soltanto un numero finito di primi: diciamo p 1,..., p l. Prendi n := p 1 p 2 p l + 1. Visto che p > p i, per ogni i {1,..., l}, abbiamo che n non è un numero primo. Quindi n ha un divisore primo p, quindi p = p i, per qualche i {1,..., l}. Ora la divisione di n per p ha resto 1, una contraddizione. Proof 3 (Dimostrazione 2) Considerate i numeri naturali F n = 2 2n + 1, al variare di n N. Dimostriamo che i numeri F n sono a due a due coprimi: da cui segue che esistono infiniti numeri primi. 2
Per dimostrare che F n sono a due a due coprimi basterà verificare che vale la formula F n 2 = n 1 k=0 F k. (2) Infatti se d é un divisore di F n e di F m (con m < n diciamo), allora da (2) si vede che d divide 2. Dato che F m e F n sono dispari si ha d = 1. Per dimostrare (2) usiamo l induzione. Chiaramente F 0 = 2 1 + 1 = 3 e F 1 = 2 2 + 1 = 5 = F 0 2. Ora per induzione ( n n 1 ) F k = F k F n = (F n 2)F n k=0 k=0 = (2 2n 1)(2 2n + 1) = 2 2n+1 1 = F n+1 2. Proof 4 (Dimostrazione 3) Questa é la mia preferita ed é dovuta a Paul Erdős. Sia P l insieme di tutti i numeri primi: dimostriamo che la somma p P diverge, da cui segue che esistono infiniti numeri primi. Scriviamo gli elementi di P con p 1 < p 2 < p 3 <. Ragioniamo per assurdo e supponiamo che la somma p P 1/p converga. Quindi esiste un numero naturale l per cui l 1 < 1 p i 2. i l+1 Per semplicitá chiamiamo i primi p 1,..., p l piccoli, e i primi p l+1,... grandi. Prendi N := 2 2l+2. Nota che i l+1 1 p N p i < N 2. (3) Sia N grnd il numero degli interi n con n N e con n divisibile per qualche primo grande. Sia N pccl il numero degli interi n con n N e con n divisibile soltanto per primi piccoli. Chiaramente N grnd + N pccl = N. (4) Cerchiamo di stimare N grnd e N pccl. Iniziamo con N grndd. Nota che N/p i conta esattamente il numero degli interi n N con n divisibile per 3
p i. Quindi dall equazione (3) si trova N grnd N/p i < N/2. (5) i l+1 Passiamo a N pccl. Ogni intero n N divisibile soltanto che per primi piccoli si puó scrivere come n = a n b 2 n, dove a n non é divisibile per quadrati. Nota che il numero di elementi senza quadrati e divisibili soltanto che per primi piccoli é 2 l. Ora b n n N. Questo dimostra che il numero di scelte N pccl per n N divisibile soltanto che per primi piccoli é 2 l N. Per cui N pccl 2 l N = 2 l 2 l+1 = 2 2l+1 = N/2. Per cui N grnd + N pccl < N, una contraddizione. Nota che la terza dimostrazione dimostra molto di piú del semplice fatto che esistono infiniti numeri primi: dimostra che la densitá dei numeri primi non é trascurabile nell insieme dei numeri naturali. Chiamate π(x) la funzione che conta i primi x: quindi π(x) = 0 se 0 x < 2, π(x) = 1 se 2 x < 3, π(x) = 2 se 3 x < 5. Con un poca di analisi sarebbe facile (usando solamente il fatto che p 1/p diverge) dimostrare che, per ogni ɛ > 0, esiste N ɛ > 0, per cui π(x) x 1 ɛ per ogni x N ɛ. Uno dei teoremi piú celebrati della teoria dei numeri (Teorema dei Numeri Primi) dimostra che π(x) é asintotica a x π(x), ossia lim log(x) x x/ log(x) = 1. L analisi complessa é stata inventanta soltanto per dimostrare questa affermazione. Tuttavia oggigiorno esiste una dimostrazione elementare di questo teorema, la dimostrazione é dovuta a Erdős e Selberg. Il problema di stimare l errore π(x) x/ log(x) é uno dei problemi maggiori della matematica (una delle possibili formulazioni della congettura di Riemann). 3 Applicazioni di congruenze Sappiamo bene che ogni numero razionale x scritto in espansione decimale ha la parte decimale o finita oppure periodica. Esiste un modo molto facile per determinare in anticipo (senza fare le divisioni successive) la lunghezza della parte periodica. Invece di farlo in generale (che ci complicherebbe soltanto i conti), trattiamo il caso x = 1/n con n coprimo con 10. 4
Sia l il piú piccolo intero positivo con n 10 l 1. Allora l é la lunghezza del periodo della parte decimale di x. Facciamo alcuni esempi. Prendi x = 1/3. Visto che 3 10 1 si ha l = 1 ed infatti 1/3 = 0.3. Facciamo altri due esempi, x = 1/11, visto che 11 10 2 1 e che 11 non divide 10 1, si ha l = 2, ed infatti 1/11 = 0.09. Prendi x = 1/37, allora 37 10 3 1, ma 37 é coprimo con 10 1, 10 2 1. Dunque l = 3 ed infatti 1/37 = 0.027. Infine prendi x = 1/101 ora 101 10 4 1, ma 101 non divide 10 1, 10 2 1 o 10 3 1. Quindi l = 4 ed infatti 1/101 = 0.0099. Passiamo ora al caso generale. Supponiamo che la parte periodica di x = 1/n abbia lunghezza l. Quindi x = 1 n = 0.a 1a 2 a l a 1 a 2 a l a 1 a 2 a l. (6) Prendi il numero q := a 1 a 2 a l e nota che a/10 l = 0.a 1 a 2 a l inoltre q = 0. 0 0 102l }{{} a 1 a 2 a l. l zeri Da (6), questo dimostra (insieme con una facile induzione) che 1 n = x = q 10 l + q 10 2l + q 10 3l = q ( 10 l 1 + 1 10 l + 1 ) 10 2l = q 1 10 l 1 1/10 l = q 10 l 1. Per cui nq = 10 l 1 e n 10 l 1. La minimalità di l e l implicazione inversa seguono facilmente con calcoli analoghi. 4 Massimo comun divisore tra due interi; soluzione di alcune equazioni diofantee Definizione Siano a, b Z non entrambi nulli; si dice che d Z è un Massimo Comun Divisore tra a e b se sono verificate le seguenti due condizioni: i) d/a e d/b; ii) se c Z è tale che c/a e c/b, allora c/d. 5
Proposizione Dati i due numeri interi non entrambi nulli a, b, se d e d sono due Massimi Comun Divisori tra a e b, allora o d = d o d = d. Dimostrazione Per la definizione di Massimo Comun Divisore, si ha d/ d e d/d. Esistono allora due interi h e k tali che d = hd e d = d. Ne segue d = (hk) d e quindi hk = 1; si conclude h = k = 1 e d = d, oppure h = k = 1 e quindi d = d. Da quanto appena provato segue che, se esiste, il Massimo Comun Divisore positivo d tra a e b è unico e si indica con il simbolo M.C.D. Costruiamo ora il Massimo Comun Divisore tra due interi (non entrambi nulli a, b. In questo modo diamo una dimostrazione dell esistenza di tale M.C.D. (Algoritmo euclideo delle divisioni successive) Per ogni coppia di interi non entrambi nulli a e b, esiste d = M.C.D. Dimostrazione Se d = M.C.D., allora risulta d =, MCD ( a, b); possiamo quindi prendere a, b N. Si supponga inoltre b 0 o a 0. Se b = 0 allora M.C.D. = a. Sia b 0 e a 0; si esegua le seguente operazione: a = bq 1 + r 1, 0 r 1 < b. Si hanno due possibilità: se r 1 = 0, b = M.C.D.; altrimenti: b = r 1 q 2 + r 2,, 0 r 2 < r 1. Di nuovo si hanno le due possibilità: se r 2 = 0 il processo ha termine e si dimostra che r 2 = M.C.D.; altrimenti: r 1 = r 2 q 3 + r 3, 0 r 3 < r 2. Il procedimento continua poi come nei precedenti passaggi. Poiché i resti costituiscono una successione strettamente decrescente di numeri non negativi, dopo un numero finito di passi si ottiene un resto r k = 0. (1) a = bq 1 + r 1 r 1 0 (2) b = r 1 q 2 + r 2 r 2 0 (3) r 1 = r 2 q 3 + r 3 r 3 0... (k 1) r k 3 = r k 2 q k 1 + r k 1 r k 1 0 (k) r k 2 = r k 1 q k + 0 6
r k 1, l ultimo resto positivo, è il M.C.D.. Verifichiamo infatti che valgono le condizioni i) e ii) della Definizione di Masssimo Comun Divisore. i) Occorre provare che r k 1 /a e r k 1 /b: infatti, dalla riga (k) è immediato riconoscere che r k 1 /r k 2 e dalla riga (k 1) che r k 1 divide r k 3. È facile convincersi che risalendo fino alla riga (2) si ottiene r k 1 /r 1 e r k 1 /b. Dalla riga (1) segue r k 1 /a. ii) Sia c Z, c/a, c/b. In questo caso si scende dalla riga (1) alla riga (k): dalla (1) segue c/r 1, dalla (2) c/r 2 e così via, ottenendo c/r k 1. Lo stesso procedimento ci permette di trovare due interi x, y tali che M.C.D. = ax + by Ma quando esistono x, y soluzioni dell equazione diofantea ax + by = c e, una volta trovata una soluzione, quante sono? Come le trovo tutte? (Identità di Bézout) Se a, b sono due interi non entrambi nulli, e d = M.C.D., esistono due interi x, y tali che sia: ax + by = d. Dimostrazione Dalla prima riga della dimostrazione del Teorema delle divisioni successive, si ottiene: r 1 = 1 a + ( q)b. Sostituendo tale espressione nella (2) si ha: r 2 = ( q 2 )a + (1 + q 1 q 2 )b. Procedendo in tal modo si ottiene ogni resto come αa + βb per opportuni interi α e β. In particolare, esistono x, y Z tali che: r k 1 = d = xa + yb. E come le trovo tutte? Abbiamo un Teorema che afferma: Teorema Se (x 0, y 0 ) è una soluzione dell equazione diofantea ax + by = c 7
allora tutte e sole le soluzioni sono le coppie x = x 0 + hb, y = y 0 ha al variare di h Z. ESEMPIO 1) Determinare M.C.D.(110143, 665). 2) Determinare (se esistono) tutte e sole le soluzioni intere dell equazione 110143x + 665y = 19. (7) 3) Determinare (se esistono) tutte e sole le soluzioni intere di 110143x + 665y = 95. (8) Applicando l algoritmo delle divisioni duccessive, si ottiene: (1) 110143 = 165 665 + 418; (2) 665 = 1 418 + 247; (3) 418 = 1 247 + 171; (4) 247 = 1 171 + 76; (5) 171 = 2 76 + 19; (6) 76 = 4 19. Dunque MCD (110143, 665) = 19. Per quanto riguarda il secondo punto dell esempio, l Identità di Bézout assicura l esistenza di almeno una soluzione. Troviamola: (5) 19 = 171 2 76; (4) 76 = 247 1 171; (3) 171 = 418 1 247; (2) 247 = 665 1 418; (1) 418 = 110143 165 665. Si ottiene allora: 19 = 171 2 (247 171) = 3 171 2 247 = 3 (418 247) 2 247 = 3 418 5 247 = (110143 165 665) 5 (665 418) = 3 110143 500 665+5(110143 165 665) = 8 110143 (500+825) 665 = 881144 881125. e una soluzione dell Equazione (??) è data dalla coppia x 0 = 8, y 0 = 1325. La richiesta era però di trovare tutte le soluzioni dell equazione data. 8
Si supponga allora che ˆx, ŷ sia un altra soluzione dell Equazione data; si ha pertanto: e 110143x 0 665y 0 = 19 110143ˆx + 665ŷ = 19. Sottraendo membro a membro si ottiene: 0 = 110143(x 0 ˆx) + 665(y 0 ŷ) e quindi, dividendo ambo i membri per 19: 5797(x 0 ˆx) = 35(ŷ y 0 ). (9) Segue che 5797(x 0 ˆx) è multiplo di 35 e 35(ŷ y 0 ) è multiplo di 5797. Poiché 19 = MCD (110143, 665), si conclude che 5797 e 35 non hanno fattori comuni e quindi 35/(x 0 ˆx) e 5797/(ŷ y 0 ). Dunque: h, k Z, x 0 ˆx = h35, ŷ y 0 = k5797 e sostituendo nell Uguaglianza (9), si ottiene h = k. Pertanto: ˆx = x 0 h35, ŷ = y 0 + h5797. Viceversa, è immediato verificare che ogni coppia di interi x = x 0 h35, y = y 0 + h5797 con x 0 = 8, y 0 = 1325, è soluzione dell Equazione (??). Per quanto riguarda il terzo punto, basta osservare che 95 = 5 19 e quindi le coppie (5x, 5y) al variare di ( x, y) tra le soluzioni della prima equazione sono tutte e sole le soluzioni dell equazione nel punto3. È immediato verificare che se si sostituisce a 1110143 a e a 665 b, si dimostra il Teorema. 9
5 Aritmetica modulo n Definizione Sia n Z, un intero maggiore di 1. Due interi a e b si dicono congrui modulo n e si scrive a b mod n se e solo se n/(a b). Il caso n = 1 è banale. Infatti a b mod 1 comunque si scelgano a e b; se invece n < 0, n/(a b) se e solo se n/(a b); non è quindi restrittivo ricondursi alle congruenze modulo n per i soli n positivi. e n=0? La relazione di congruenza gode delle proprietà riflessiva, simmetrica e transitiva e quindi è una relazione di equivalenza su Z. Inoltre valgono le seguenti proprietà: a a mod n, b b mod n a + b a + b ; (10) a a mod n, b b mod n aa bb. (11) (10) e (11) permettono di definire le operazioni di somma e prodotto nell insieme quoziente. La classe di equivalenza dell intero a rispetto alla relazione di congruenza modulo n si denota con [a] n o, se chiaro dal contesto, semplicemente con [a]. L insieme quoziente viene indicato con Z n = Z nz. La classe di equivalenza dell intero a rispetto alla relazione di congruenza modulo n si denota con [a] n. L insieme quoziente viene indicato con Z n = Z mz. Proposizione Per ogni n 2 risulta Z n = {[0], [1],..., [n 1]}. Dimostrazione Basta osservare che ogni intero a è congruo a r modulo n, dove r è il resto della divisione di a per n. Teorema Z n è un anello commutativo con unità rispetto alle operazioni di somma e prodotto così definite: [a] n + [b] n = [a + b] n ; [a] n [b] n = [a b] n Dimostrazione Bisogna provare che il risultato non dipende dal rappresentante scelto. Esempio La legge M.C.D.([a] n, [b] n ) = [M.C.D.(a, b)] n non è una operazione su Z n. 5.1 Congruenze lineari Torniamo alle equazioni diofantee considerate prima. Osserviamo che l equazione diofantea ax + by = c 10
ha soluzione se e solo se ha soluzione la congruenza lineare ax c mod n. Problema: Quando [a] n è invertibile rispetto al prodotto. 5.2 Teorema cinese del resto Consideriamo ora sistemi di congruenze lineari. Teorema Sia x b i mod i, i = 1,..., h (12) un sistema di h congruenze lineari con MCD(n i, n j ) = 1 i, j, i j. Esiste allora una sola soluzione del Sistema (12) modulo n = n 1 n h. Dimostrazione Preso n = n 1 n h consideriamo n i = n n i. Poiché MCD(n i, n i ) = 1, la congruenza n i z 1 modn i ha una soluzione l i Allora x = b 1 n 1l 1 + + b h n h l h è una soluzione di (12). Infatti, poiché n i /n j se i j, x b in i l i b i modn i. Sia y x una seconda soluzione di (12). Allora, x y modn i i, 1 i h. Poiché gli n i sono a due a due coprimi, si ha la tesi. Applicazioni: Quante radici quadrate ha 1 (modulo n? fattorizzazione di interi. 5.3 Congruenze non lineari Si considera ora un equazione diofantea, non lineare. Quale relazione deve intercorrere tra due interi a e n perché l equazione a z 1 = ny (13) ammetta soluzioni intere (positive). La risposta è data dal Teorema di Eulero-Fermat. Prima di enunciarlo, occorre introdurre la funzione ϕ : N N, detta funzione di Eulero: n N, ϕ(n) = I n, dove I n è l insieme costituito dagli interi naturali i, 0 < i < n primi con n, I n = {i N : 0 < i < n MCD(a, n) = 1}. 11
(Teorema di Eulero-Fermat) Siano n > 0 un numero naturale fissato e a un intero tale che MCD(a, n) = 1. Si ha allora: a ϕ(n) 1 modn. (14) Se MCD(a, n) 1 l Equazione (13) non ammette soluzioni. Dimostrazione Sia I n = {i 1,..., i r } l insieme degli interi positivi minori di n e primi con n di modo che ϕ(n) = r; si considerino i sottoinsiemi X e Y di Z n : X = {[i 1 ] n,..., [i r ] n } Y = {[ai 1 ] n,..., [ai r ] n }. Proviamo che X = Y. Infatti, per ogni i j I n, [ai j ] n = [j] n e [j] X e quindi Y X. D altra parte, se i k i l I n, allora [ai k ] n [ai l ] n e quindi r = X = Y e X = Y. Moltiplicando tra loro tutti gli elementi di X e tutti gli elementi di Y, otteniamo: 1 i 1 i 2 i r ai 1 ai 2 ai r a r i 1 i 2 i r modn e quindi a r 1 mod n, cioè la (14) Se MCD (a, n) 1, l Equazione (13) non ha soluzioni. Se infatti per assurdo t fosse una soluzione di (13), x = a sarebbe soluzione della congruenza lineare a t 1 x 1 modn. Prima di generalizzare il Teorema di Fermat, diamo alcune prprieyà della funzione ϕ. ϕ è moltiplicativa, ovvero, se m, n sono due interi coprimi, risulta ϕ(mn) = ϕ(m)ϕ(n). (la dimostrazione segue subito dal Teorema cinese). se p è un numero primo ϕ(p) = p 1; per ogni primo p e per ogni intero n, risulta ϕ(p n ) = p n p n 1. 12
Esiste una versione estesa del Teorema di Fermat, indispensabile per la comprensione del sistema crittografico RSA. Teorema Sia n un intero libero da quadrati, ovvero Allora m, 0 < m < n, vale n = p 1 p 2 p r, con p i primi p i p j. m hϕ(n)+1 m modn h N Dimostrazione La ϕ è una funzione moltiplicativa e pertanto ϕ(n) = ϕ(p 1 )ϕ(p 2 ) ϕ(p r ) = (p 1 1)(p 2 1) (p r 1). Sia m N, m < n e si consideri m ϕ(p i)+1 per ogni fattore primo p i di n. Ovviamente risulta m tϕ(p i)+1 m mod p i per ogni i {1,... r} e t N. Poiché ϕ(n) è multiplo di (p i 1) per ogni p i che divide n, m ϕ(n)+1 risulta congruo a m modulo p 1 p 2 p r e quindi modulo n poiché n è libero da quadrati. 5.4 Crittografia Svetonio nelle Vitae Caesarorum racconta che Cesare sostituiva a ogni lettera del testo in chiaro la lettera che la segue di 3 posti. Per esempio, si sostituisce alla A la lettera D, alla B la lettera E e così via. Diamo la definizione di sistema crittografico. Definizione Un sistema crittografico è la collezione dei seguenti oggetti: 1. un insieme P T, costituito da tutti i possibili testi in chiaro (cioè i messaggi che vanno protetti); 2. un insieme CT dei testi cifrati; 3. un insieme K, detto insieme delle chiavi, e 2 algoritmi (funzioni) D, E E : K P T CT D : K CT P T. 13
Ogni chiave k K determina una funzione di cifratura E(k) e una funzione di decifratura D(k), che sono una l inversa dell altra. Ovvero si trasforma un messaggio m di P T in un messaggio E(k)(m) di CT ; applicando a E(k)(m) la funzione D(k) si ritrova m. Si noti che quando si parla di messaggi in chiaro ci si riferisce a messaggi già codificati (per esempio per essere letti da un computer). Nell Esempio precedente l insieme P T è costituito da tutti i testi; CT dai testi trasformati, la chiave usata è 3, E(3) è l operazione di aggiungere 3, D(3) quella di sottrarre 3 (in realtà con questo linguaggio stiamo già immaginando di identificare le 23 lettere dell alfabeto latino con i primi 23 interi naturali 1,..., 23, e operare con l aritmetica modulo 23). Suggerimenti per lezione: parlare di cifrari affini; agli alunni si può far notare quando in Z n la funzione [x] n [a] n [x] n + [k] n serve a definire un sistema crittografico. 5.5 Cenni sulla Crittografia a chiave pubblica Si può dire che la Crittografia a chiave pubblica abbia origine con l articolo di Diffie e Hellman New Directions in cryptography del 1976 [8]. Questa si basa sulla possibilità di rendere il canale di comunicazione asimmetrico. In tal caso la funzione di cifratura E(k) e quindi la chiave k può essere resa pubblica, in quanto anche conoscendo k è computazionalmene impossibile, cioè molto lungo, trovare la funzione inversa di E(k). E(k) è cioè una oneway function. Definizione Dati due insiemi X e Y, si dice one-way function (funzione a senso unico) una funzione f : X Y iniettiva, per cui sia computazionalmente trattabile il calcolo di f(x), per quasi ogni x X, ma per cui sia computazionalmente intrattabile il calcolo di f 1 (x), per ogni y f(x). Esempio Un esempio di one-way function è il seguente: si considera la funzione che associa a ogni abbonato al telefono il suo numero telefonico; possedendo l elenco telefonico è immediato trovare il telefono di un qualsiasi abbonato, ma è molto difficile risalire al nome dell abbonato dalla conoscenza del suo numero di telefono (senza l aiuto di Internet). L esempio appena dato è chiaramente privo di interesse crittografico. Il prossimo è invece alla base del metodo RSA. 14
Esempio Un esempio di funzione a senso unico, che ha molta importanza nella Crittografia moderna, è il prodotto di numeri: è facile eseguire il prodotto di numeri anche molto grandi, ma è estremamente lungo scomporre un numero in prodotto di fattori primi. Nel 2007 secondo i Laboratori RSA, un numero n di 1024 cifre binarie (308 cifre decimali) garantiva la sicurezza fino al 2010. Ecco che qui si nota una differenza tra l importanza di un teorema, e la necessità di poterlo mettere in pratica: il matematico dimostra che ogni numero intero positivo a si scrive nella forma a = p r 1 1 prs s, con p i numeri primi numero intero qualsiasi; questo è un bel teorema (il Teorema fondamentale dell Aritmetica!); applicarlo è più difficile. RSA Il metodo RSA(dal nome dei tre ricercatori Rivest, Shamir, Adleman) del 1978 è tutt oggi diffuso e ritenuto sicuro e si basa sulla scomposizione in fattori primi, e sull aritmetica modulo n. Diamo di seguito una breve descrizione del metodo RSA: si sceglie un intero n grande tale che per ogni m, 0 < m < n risulti m tϕ(m)+1 mmod n, si sceglie un numero e primo con ϕ(n); si considera come insieme dei testi in chiaro e insieme dei testi cifrati l insieme Z n (immaginiamo di avere codificato le lettere in modo tale che nella codifica a un messaggio in chiaro corrisponda un numero intero m compreso tra 1 e n 1. m rappresenta un messaggio e viene identificato con la classe [m] n ; si invia m e, considerato ancora come elemento di Z n ; m = m e è il messaggio cifrato. chi è autorizzato a ricevere il messaggio calcola (m e ) d m modn, per un opportuno d, scelto come soluzione di ex 1 modϕ(n). 15