PIANI DI GALOIS, GEOMETRIE DI GALOIS ED AUTENTICAZIONE DEI MESSAGGI Franco Eugeni, Università di Teramo
GF(q) è unico a meno di isomorfismi Campi di Galois Un campo avente un numero finito di elementi q si chiama un Galois Fields GF(q) q = pn (p, primo) GF(q) è unico a meno di isomorfismi Evariste Galois 1811-1832
Costruiamo i campi di Galois di ordine primo p ! GF(p) := Z p Z m è l’anello delle classi resto modulo m! Evariste Galois 1811-1832
Fissato m > 2 distribuisco gli interi come segue: ………………………………………………………….. -km -km+1 ……………………… –(k-1)m -1 …………………………………………………………… -2m -2m+1 ……………………… -m - 1 -m -m+1 ……………………… - 1 0 1 ……………………… m-1 m m+1 …………………….. 2m-1 2m 2m+1 …………………….. 3m-1 km km+1 …………………….. (k+1)m -1 ……………………………………………………………. [0] , [1] , ……………………… , [m-1] Z m
In Z m definiamo due operazioni [a] + [b] := [a+b] ; [a] [b] : = [ab] (Z m , + , ) è un anello commutativo unitario con la classe [1] come elemento unitario! L’anello (Z m , + , ) ha divisori dello zero sse m = ab con 1 < a,b < m , il che implica [a] [b] = [ab] = [m] = [0]
Un elemento [a] Z m è invertibile sse …. in tal caso dal … Teorema di Eulero sulle congruenze: => che in Z m si scrive
Ogni elemento di Zp dal “piccolo” teorema di Fermat: L’anello (Z m , + , ) è un campo sse m = p (primo) ! Ogni elemento di Zp dal “piccolo” teorema di Fermat: si scrive in Zp :
La funzione di Eulero
GF(pn) è un ampliamento n-mo di GF(p) Esempio: costruzione di GF(32) Elementi di GF(32): sono i polinomi di 1° grado a coefficienti in GF(3) 0 , 1 , 2 , x , 2x, x+1, x+2, 2x+1, 2x+2 operazioni: somma e prodotti di polinomi con : x2 = -1 (eq. irriducibile in GF(3)) Esempio: (x+1) (x+2) = x2 + 3x + 2 = -1 +2 = 1
0 , 1, x, x+1, x2, x2+1, x2+x , x2+x+1 Costruzione di GF(23) Elementi di GF(23) : (ampliamento cubico) polinomi di grado <2, a coefficienti in GF(2) cioè: 0 , 1, x, x+1, x2, x2+1, x2+x , x2+x+1 operazioni: somma e prodotti di polinomi con : X3 = X + 1 Esempio: (x+1)(x2+x) = x+1 + x2 + x2 + x = 1
GF(pn) come un ampliamento n-mo di GF(p) Elementi di GF(pn) : polinomi di grado n-1 a coefficienti ai in GF(p): a0+a1x+ …+an-1xn-1 ; Operazioni: somma e prodotti di polinomi con (1) xn = b0+b1x + …+ bn-1xn-1 fissata equazione irriducibile in GF(p)
Piano proiettivo PG(2,q) su GF(q) q = p n , p primo. Punti (x0, x1, x2) non tutti nulli e def. a meno di un fattore! rette a0 x0 + a1 x1 + a2 x2 = 0 n.ro punti di una retta = q + 1 n.ro rette per un punto = q + 1 n.ro punti del piano = q2 + q + 1 n.ro rette del piano = q2 + q + 1
a0 + a1 x+ …+an-1xn-1 = (a0 a1 a2 … an-1 ) ai 0, Piano affine su GF(2n ) Elementi di GF(2n ) (ampliamento n-mo di GF(2)) : sono i polinomi di grado (n-1) a coefficienti in GF(2) cioè le n-sequenze binarie a0 + a1 x+ …+an-1xn-1 = (a0 a1 a2 … an-1 ) ai 0, (x,y) = (x0 x1 … xn-1 , y0 y1 … yn-1 ) ESEMPIO (x,y) = (10011, 10111) 10101 x + 00110 y = 100101
Piano affine AG(2,q) su GF(q), q = p n . Punti (x, y) rette a0 + a1 x + a2 y = 0 n.ro punti di una retta = q n.ro rette per un punto = q + 1 n.ro punti del piano = q2 n.ro rette del piano = q2 + q
Piano affine dedotto dal proiettivo P(x,y) ; y = mx + a ; = (0, 1, m); x0 = 0; P0=(x0,y0) (0, 1, m) X0 = 0
T M M R R T CRITTOGRAFIA Disturbi La nuova formula è MXPTZSTRPUE Ho letto tutto ma non ho capito niente!
Obiettivo fondamentale della crittografia: permettere a due persone (Alice e Bob) di comunicare su un canale insicuro in modo tale che un nemico non possa comprendere cosa venga detto. L’informazione iniziale, o “testo in chiaro”, può consistere in qualunque tipo di informazione (un testo, dati numerici, ecc.). Alice codifica il testo in chiaro e spedisce il testo cifrato sul canale. Il nemico può vedere il testo cifrato ma non può comprenderlo. Bob, invece, conosce la chiave per decifrarlo, e può ricostruirlo. /25
Campi di Galois di ordine q = 2n GF(2n) Messaggio binario 0 1 1 0 1 0 1 0 1 0 0 1 0 0 1 0 1 …… 1 0 0 1 0 0 1 0 0 1 0 0 1 n-sequenze Algebra delle n-sequenze Campi di Galois di ordine q = 2n GF(2n)
Il sistema One-Time Pad Il sistema Vernam Testo in chiaro a1,a2,..,an Chiave k1,k2,..,kn Testo cifrato a1 k1,... Il sistema One-Time Pad Testo in chiaro Chiave 01100100011001... 10100110011010... Testo cifrato 11000010000011...
L’ingegno umano non riuscirà mai a concepire un cifrario di cui l’ingegno stesso non possa scoprire la chiave. Edgar Allan POE
Servizi fondamentali richiesti: la codifica dei dati scambiati, per nasconderne il contenuto l'autenticazione della sorgente dei dati, per accertarsi della loro provenienza
MANIPOLAZIONE ILLEGALE Il problema dell’Autenticazione Pagare al Signor C: £ Un Milione Mr. X MANIPOLAZIONE ILLEGALE Pagare a Mr. X: £ Dieci Milioni
Il problema dell’Autenticazione Integrità del messaggio Autenticità del messaggio Autenticità dell’utente Stanotte a casa mia Alice Stanotte a casa mia Anna Stanotte a casa mia Mi spiace, non stanotte Sei tu, Anna? Certamente!
Le esigenze attuali Integrita’ del messaggio Stanotte a casa mia Mi spiace, non stanotte /25
Le esigenze attuali Integrita’ del messaggio Autenticità del messaggio Stanotte a casa mia Anna Stanotte a casa mia Alice /25
Le esigenze attuali Integrita’ del messaggio Autenticità del messaggio Autenticità dell’utente Sei tu, Anna? Certamente! /25
Le esigenze attuali Integrita’ del messaggio Autenticità del messaggio Autenticità dell’utente Non ripudio dei messaggi Non l’ho inviato. Ho le prove! /25
chiave segreta k chiave segreta Schema di autenticazione (chiave privata) T R chiave segreta k chiave segreta algoritmo F algoritmo M + A T: =F(k,M) … (M,A) ... Manipolazione!!! R … (M*,A*) ... R computa F(k,M*) = A? se A?=A* allora OK! altrimenti STOP!
la probabilità di successo di Mr. X e’ almeno Possibilità di rompere il sistema Cioè costruire una coppia (M*,A*) con A*=F(k,M*) senza conoscere k. TEOREMA (Gilbert, McWilliams, Sloane - 1974) - Ogni messaggio ha un suo proprio autenticatore - Tutti i messaggi e tutte le chiavi sono equiprobabili - N è il numero totale delle chiavi ALLORA la probabilità di successo di Mr. X e’ almeno Jessie McWilliams 1917-1990 Neil F. Sloane
Esempio classico (a) y = mx + (y0-mx0) a (0, 1, m) Jessie McWilliams 1917-1990 K=(x0,y0) (0, 1, m) X0 = 0 messaggio + autenticatore = [m , a=(y0-mx0)]
N = n.ro delle chiavi = q2 (punti piano affine) P min = 1/ = 1/q a q2 k
Operiamo in PG(2, 2n) con n = 3 e Con maggiori dettagli, per dare: K =(x0 ,y0) , a= (y0- mx0) Operiamo in PG(2, 2n) con n = 3 e X8 = x+1 k = (10000011,10000101) , fisso m = 100011011
a = F(k,m) = y0 – mx0 = (x7+x2+1) – k = (10000011,10000101) = (x7 +x+1, x7+x2+1) m = 100011011 = x7 +x4+x3+x+1 X8 = x + 1 a = F(k,m) = y0 – mx0 = (x7+x2+1) – - (x7 +x4+x3+x+1) (x7 +x+1) = = x7+ x5+ x4+ x3+1 = 10111001
M = 11100111100110110001 1111 11001110011 A = 10111001 (M,A) = 1110011110011011 10111001 0001111111001110011 = = 1110011110011011011100100011 11111001110011 q = 23 = 8 P min = 1/8
Se opero sempre nel medesimo GF(2n) Se il messaggio M è noto ovvero se è nota la sua parte in uso m, con il suo autenticatore a. Se il messaggio M’ è noto ovvero se è nota la sua parte in uso m’, con il suo autenticatore a’. Se uso la stessa chiave incognita K =(x0 ,y0). Allora trovo la chiave come punto comune alle due rette: y = mx + a , y = m’ x + a’ !
Autenticazione classica 0110 1100 1…100 1100 m (0, 1, m) Chiave (1, X0 ,Y0 ) y = mx + k k Autenticatore
Ad un piano affine si può sostiture uno spazio affine, aumenta il numero delle chiavi, ma … (Beutelspacher & Berardi ..) Ai campi di Galois si possono sostituire gli anelli delle classi resto, va bene, ma le rette sono complicate … (Eugeni & Maturo) Sui piani affini di Galois si possono introdurre le strutture pseudo-euclidee … (Eugeni,Di Gennaro & Mascella)! Si possono valutare delle probabilità condizionate e dare altre chiavi di lettura del Teorema di Gilbert-Mc Williams &Sloane (vedi Di Gennaro,Eugeni &Maturo)
Autenticazione Autenticazione classica con i piani proiettivi (Gilbert, McWilliams, Sloane) Autenticazione con la perpendicolarità pseudo-euclidea (Di Gennaro, Eugeni, Maturo) Generalizzazione ed alternative ai procedimenti precedenti (Eugeni, Mascella, Tondini)
Autenticazione con perpendicolarità pseudo-euclidea (0, 1, m) Chiave (1, X0 ,Y0 ) Chiave (1, X1 ,Y1 )
Bibliografia E. Ambrisi, F. Eugeni: Storia della C., Ratio Math. 1, 1998. www.apav.it A. Bonisoli, F. Eugeni: Codici correttori, Ratio Math. 3, 1990 www.apav.it A. Beutelspacher, L. Berardi: Crittografia, F. Angeli, 1997 F. Di Gennaro, F. Eugeni: Strutture pseudo-euclidee su campi di Galois, Le Matematiche 1, 1997 F. Di Gennaro, F.Eugeni, A. Maturo: Sulla probabilità di indovinare la chiave ed alterare i messaggi di autenticazione basati su piani proiettivi finiti, Atti Congresso Naz. Mathesis, Teramo, Edilgrfital, 1999. F.Eugeni, A. Maturo, A New Authentication System Based On The Generalized Affine Planes, J. Of Info. &Opti. Sci., 2 (1992), 183-193. F. Eugeni: Combinatorics and Criptography, Annals of Discr. Math. 52 (1990) F.Eugeni , Lezioni di Informatica, www.apav.it
Albrecht Beutelspacher Universitat “J.Liebig” Giessen
E. Ambrisi, F. Eugeni: Storia della C., Ratio Math. 1, 1998. www.apav.it A. Bonisoli, F. Eugeni: Codici correttori, Ratio Math. 3, 1990 www.apav.it A. Beutelspacher, L. Berardi: Crittografia, F. Angeli, 1997 F. Di Gennaro, F. Eugeni: Strutture pseudo-euclidee su campi di Galois, Le Matematiche 1, 1997 F. Di Gennaro, F.Eugeni, A. Maturo: Sulla probabilità di indovinare la chiave ed alterare i messaggi di autenticazione …vi finiti, Atti Congresso Naz. Mathesis, Teramo, Edilgrafital, 1999. F.Eugeni, A. Maturo, A New Authentication System Based On The Generalized Affine Planes, J. Of Info. &Opti. Sci., 2 (1992), . F. Eugeni: Combinatorics and Criptography, Annals of Discr. Math. 52 (1990) F.Eugeni , Lezioni di Informatica, www.apav.it