Esercizi di Crittografia e Sicurezza delle Comunicazioni. Giacomo Verticale giacomo.verticale@polimi.it

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Esercizi di Crittografia e Sicurezza delle Comunicazioni. Giacomo Verticale giacomo.verticale@polimi.it http://home.dei.polimi."

Transcript

1 Esercizi di Crittografia e Sicurezza delle Comunicazioni Giacomo Verticale giacomo.verticale@polimi.it Anno Accademico

2

3 Indice Indice 3 1 Aritmetica modulare GCD e algoritmo di Euclide Cifratura con matrici Test di primalità Campi finiti Cifrari a blocco e crittoanalisi Modi d uso AES semplificato Crittoanalisi lineare Crittoanalisi differenziale RSA Uso di RSA Fattorizzazione Residui quadratici Teorema cinese del resto Residui quadratici Estrazione di radici Crittosistema di Rabin Logaritmi discreti Logaritmi discreti Applicazioni dei logaritmi discreti Curve Ellittiche Fattorizzazione Rappresentazione di plaintext Logaritmo discreto Diffie-Hellman

4 Indice 6.5 Firma DSA Firma di ElGamal Crittosistema di ElGamal

5 1 Aritmetica modulare 1.1 GCD e algoritmo di Euclide Esercizio 1.1 Calcolare d = gcd(360, 294) in due modi: 1. fattorizzando ciascuno dei numeri e poi fattorizzando d; 2. usando l algoritmo di Euclide. Soluzione Osserviamo che 360 = = = Il gcd è il prodotto dei fattori comuni, ciascuno preso con l esponente minore. Quindi d = 3 2 = 6 Definiamo: r 0 = max(a,b) r 1 = min(a,b) Il nostro scopo è scrivere una sequenza di espressioni del tipo: r 0 = q 1 r 1 + r 2 r j 2 = q j 1 r j 1 + r j 5

6 1. Aritmetica modulare Dove j è l indice della espressione, r j e q j sono numeri interi. L algoritmo è inizializzato con: r 0 a r 1 b j 0 L algoritmo termina quando r j = 0 e si ha d = gcd(a,b) = r j 1. Quindi d = gcd(360,294) = 6. j r j = = = = Esercizio 1.2 Trovare d = gcd(841,294) ed esprimere d come combinazione lineare dei due numeri. Soluzione L algoritmo di Euclide esteso permette di trovare i coefficienti s e t tali per cui: gcd(a,b) = r 0 s + r 1 t con r 0 = max(a,b) r 1 = min(a,b) e Si definiscono le seguenti ricorrenze: 1 se j = 0 s j = 0 se j = 1 s j 2 q j 1 s j 1 se j 2 0 se j = 0 t j = 1 se j = 1 t j 2 q j 1 t j 1 se j 2 Per come sono definiti s j e t j, vale sempre la seguente relazione: r j = r 0 s j + r 1 t j 6

7 1.2. Cifratura con matrici Quindi i valori s, t che permettono di esprimere il gcd come combinazione lineare dei due numeri sono i coefficienti s j, t j ottenuti in corrispondenza di r j = gcd(a,b), ovvero dell ultimo resto non nullo. La tabella mostra tutti i passaggi dell algoritmo mettendo in evidenza r j, q j e il calcolo dell espressione r j = r 0 s j + r 1 t j. j r j q j s j t j r 0 s j + r 1 t j = = = = = = Poiché l ultimo resto non nullo si ottiene per j = 6, i due numeri sono primi tra loro e i coefficienti cercati sono s = 43 e t = 123. Normalmente non scriveremo tutte le colonne della tabella (che contengono molte ripetizioni), ma semplicemente le espressioni r j 2 = q j 1 r j 1 + r j e le colonne s j e t j = = = = = = Cifratura con matrici Esercizio 1.3 (Cifrario di Hill su Z 4 ) Il messaggio binario in chiaro P = viene cifrato usando un cifrario di Hill su Z 4. Il cifrario usa come chiave una matrice K con dimensione Dire che condizioni deve rispettare la chiave K. 2. Cifrare il messaggio P considerando il caso K = s j ( ) t j 7

8 1. Aritmetica modulare 3. Decifrare il messaggio ottenuto al passo precedente 4. Usando la coppia messaggio in chiaro / messaggio cifrato ottenuta ai punti precedenti, effettuare un attacco di tipo known plaintext e ricavare la chiave K. Soluzione 1. La chiave K deve rispettare le seguenti due condizioni: { det(k) 0 gcd(det(k),4) = 1 Notare che, per convenzione, la 2 implica la Per prima cosa convertiamo il messaggio binario in elementi di Z 4. Poiché gli elementi sono {0, 1, 2, 3} la cosa più semplice è convertire ogni coppia di bit in un numero. Pertanto il messaggio diventa: P = ( ) La chiave è una matrice 2 2, quindi il testo in chiaro deve essere diviso in vettori P i di due elementi: P 1 = ( 1 2 ) P 2 = ( 0 3 ) P 3 = ( 1 0 ) Procediamo quindi applicando la formula: C i = P i K (mod 4) C 1 = ( 1 2 ) ( ) 0 1 = ( 6 7 ) = ( 2 3 ) (mod 4) 3 3 C 2 = ( 0 3 ) ( ) 0 1 = ( 9 9 ) = ( 1 1 ) (mod 4) 3 3 C 3 = ( 1 0 ) ( ) 0 1 = ( 0 1 ) (mod 4) 3 3 Quindi il testo cifrato C risulta: C = ( ) che, espresso in binario, diventa C =

9 1.2. Cifratura con matrici 3. Occorre per prima cosa calcolare la matrice inversa della chiave: K 1 = 1 3 ( 3 ) (mod 4) Occorre trovare l elemento inverso di 3 in Z 4. Ma 3 1 (mod 4), e l inverso di 1 è ancora 1, quindi: K 1 = Calcoliamo il testo in chiaro: ( ) (mod 4) P 1 = ( 2 3 ) ( ) 3 3 = ( 9 6 ) = ( 1 2 ) (mod 4) 1 0 P 2 = ( 1 1 ) ( ) 3 3 = ( 4 3 ) = ( 0 3 ) (mod 4) 1 0 P 3 = ( 0 1 ) ( ) 3 3 = ( 1 0 ) (mod 4) 1 0 Quindi il testo in chiaro è: P = ( ) 4. Dobbiamo costruire una equazione del tipo: ( ) Pi P j K = ( ) Ci dove le righe P i, C i e P j, C j sono due coppie testo in chiaro / testo cifrato di lunghezza due. Risolvendo rispetto alla matrice delle incognite otterremo la chiave. Per risolvere l equazione la matrice del testo in chiaro deve essere invertibile; dovremo tenere presente questo fatto nello scegliere le righe della matrice. Fortunatamente la matrice costruita usando P 1 e P 2 va bene, infatti: det C j ( ) 1 2 = che non è né nullo né multiplo di 2. 9

10 1. Aritmetica modulare Quindi possiamo scrivere: K = ( ) ( ) 2 3 = = 3 ( ) ( ) ( ) ( ) = (mod 4) (1.1) Nella equazione precedente si è posto 1/3 3 (mod 4), per calcolare l inverso di 3 è possibile usare l algoritmo di Euclide esteso, oppure si può osservare che 3 3 = 9 1 (mod 4). Esercizio 1.4 Alice e Bob usano una tecnica di cifratura affine basata sull aritmetica in Z 10. L algoritmo di cifratura è la espressione: C i = P i K + B (mod 10) I vettori riga 1 2 C i e P I contengono rispettivamente la coppia i-esima di numeri cifrata e in chiaro, mentre la chiave è composta dalla matrice K e dal vettore B. La chiave condivisa è: ( ) 3 7 K = 2 7 B = ( 4 9 ) 1. Verificare che K sia una chiave valida. 2. Cifrare il messaggio: 3. Decifrare il messaggio cifrato. P = ( ) 4. Portare un attacco di tipo known-plaintext e trovare la chiave (K e B). Soluzione Perché K sia valida devono essere rispettate le seguenti condizioni: { det(k) 0 gcd(det(k),10) = 1 Nel nostro caso abbiamo che det(k) = 7 e le due condizioni sono rispettate. 10

11 1.2. Cifratura con matrici Scomponiamo il messaggio P in 3 vettori riga: P 1 = ( 6 7 ) P 2 = ( 3 9 ) P 3 = ( 3 6 ) Calcoliamo i testi cifrati: C 1 = ( 6 7 ) ( ) ( 4 9 ) = ( 6 0 ) 2 7 C 2 = ( 3 9 ) ( ) ( 4 9 ) = ( 1 3 ) 2 7 C 3 = ( 3 6 ) ( ) ( 4 9 ) = ( 5 2 ) 2 7 Il testo cifrato è quindi: C = ( ) Per decifrare il messaggio occorre invertire la matrice K. L algoritmo di decifratura è l espressione: P = CK 1 BK 1 K 1 = 1 7 ( ) 7 7 mod L inverso di 7 (mod 10) si può trovare usando l algoritmo esteso di Euclide: L inverso di 7 è 3, infatti: r j q j s j t j = = = mod 10 = 21 mod 10 = 1 11

12 1. Aritmetica modulare Quindi: K 1 = 3 ( ) mod 10 = BK 1 = ( 4 9 ) ( ) ( ) = ( 0 3 ) Calcoliamo i testi in chiaro: P 1 = ( 6 0 ) ( ) ( 0 3 ) = ( 6 7 ) 4 9 P 2 = ( 1 3 ) ( ) ( 0 3 ) = ( 3 9 ) 4 9 P 3 = ( 5 2 ) ( ) ( 0 3 ) = ( 3 6 ) 4 9 Per scoprire la chiave dato un insieme di coppie P i, C i, occorre scrivere un sistema di equazioni: C 1 = P 1 K + B (1.2) C 2 = P 2 K + B (1.3) C 3 = P 3 K + B (1.4) Sottraendo la (1.4) alla (1.3) e alla (1.2), si ottiene una nuova equazione in cui la costante B non è presente e da cui si può ricavare la matrice K: ( ) ( ) C1 C 3 P1 P = 3 K (1.5) C 2 C 3 P 2 P 3 ( ) 1 ( ) P1 P K = 3 C1 C 3 (1.6) P 2 P 3 C 2 C 3 ( ) 1 ( ) K = (1.7) Perché l attacco abbia successo è necessario che la matrice dei testi in chiaro sia invertibile. Poiché: ( ) 3 1 det = la matrice è invertibile e non ci sono fattori comuni con 10, pertanto l inversa è unica: K = 1 ( ) ( ) ( ) ( ) = 9 = ( ) 3 7 K (mod 10)

13 1.3. Test di primalità Da notare che (mod 10) = 9, infatti 9 9 mod 10 = 1. Trovato K si può usare la (1.2) per trovare B: B = C 1 P 1 K = ( 6 0 ) ( 2 1 ) = ( 4 1 ) B ( 4 9 ) (mod 10) 1.3 Test di primalità Test di Fermat Il teorema di Fermat dice che se n > 1 è primo, allora a n 1 1 (mod n) per a < n 1. Possiamo quindi definire un test di Fermat per verificare se n è primo. Scegliamo un insieme di basi 1 < a i < n 1, se esiste un a i tale che: a n 1 i 1 (mod n) possiamo dire con certezza che n non è primo. Se invece non troviamo questo a i dobbiamo concludere che n probabilmente è primo. Ovviamente questa probabilità è tanto più alta quante più basi abbiamo provato. Esercizio 1.5 Usando il test di Fermat, trovare un numero primo maggiore o uguale a 27. Soluzione Proviamo usando la base 2: 2 26 mod 27 = 13 non è primo 2 28 mod 29 = 1 Il numero 29 forse è primo. Proviamo con altre basi: 3 28 mod 29 = mod 29 = mod 29 = 1 Concludiamo che probabilmente 29 è primo Test di Miller-Rabin Dato il numero n candidato primo, definiamo due numeri k e m tali che: n 1 = 2 k m 13

14 1. Aritmetica modulare con m dispari. Scegliamo poi una base a, 1 a n 1. Calcoliamo b 0 = a m mod n. Se b 0 = ±1, allora n è probabilmente primo. Altrimenti calcoliamo b i = b 2 i 1 mod n con 1 i k 1. Se b i = 1, n è probabilmente primo. Se b i = 1, n è composto e gcd (b i 1 1,n) è un fattore. Se b i ±1, i i + 1 e si procede con il test. Se si raggiunge i = k 1 e b i 1 allora n è composto. Esercizio 1.6 Verificare se il numero 341 è primo usando il test di Fermat e il test di Miller-Rabin. Soluzione Test di Fermat mod 341 = mod 341 = 56 Quindi 341 non è primo, ma è pseudoprimo relativamente alla base 2. Test di Miller-Rabin Calcoliamo k e m: da cui ricaviamo k = 2 e m = 85. Usiamo la base a = = b 0 = a m mod n = 2 85 mod 341 = 32 ±1 b 1 = b 2 0 mod n = 32 2 mod 341 = 1 Quindi il numero 341 è composto. Inoltre possiamo calcolare un fattore p 1 : p 1 = gcd(b 0 1,n) = gcd(31,341) = 31 Infatti 341 = Esercizio 1.7 Verificare se il numero 313 è primo usando il test di Miller- Rabin sulle basi 2 e 3. Soluzione Calcoliamo k e m: da cui ricaviamo k = 3 e m = 39. Usiamo la base a = = b 0 = a m mod n = 2 39 mod 313 = 25 ±1 b 1 = b 2 0 mod n = 25 2 mod 313 = 312 = 1 14

15 1.4. Campi finiti Proviamo con la base a = 3 b 0 = a m mod n = 3 39 mod 313 = 1 Concludiamo che probabilmente il numero è primo. Esercizio 1.8 Verificare se il numero 17 è primo usando il test di Miller- Rabin sulle basi 2 e 3. Soluzione Calcoliamo k e m: 16 = da cui ricaviamo k = 4 e m = 1. Usiamo la base a = 2 Usiamo la base a = 3 b 0 = a m mod n = 2 1 mod 17 = 2 ±1 b 1 = b 2 0 mod n = 2 2 mod 17 = 4 b 2 = b 2 0 mod n = 4 2 mod 17 = 16 = 1 b 0 = a m mod n = 3 1 mod 17 = 3 ±1 b 1 = b 2 0 mod n = 3 2 mod 17 = 9 b 2 = b 2 0 mod n = 9 2 mod 17 = 13 b 3 = b 2 0 mod n = 13 2 mod 17 = 16 = 1 Il numero è probabilmente primo. 1.4 Campi finiti Esercizio 1.9 Si consideri lo spazio dei polinomi f(x) con coefficienti reali in cui il coefficiente di grado massimo è unitario. Due polinomi f(x) e g(x) si dicono primi fra loro se gcd (f(x),g(x)) = 1. Trovare d(x) = gcd(x 4 + x 2 + 1,x 2 + 1) e trovare i polinomi s(x) e t(x) tali per cui d(x) = s(x)f(x) + t(x)g(x). Soluzione. s j (x) t j (x) x 4 + x = x 2 (x 2 + 1) x 2 x = (x 2 + 1) (x 2 + 1) x 4 + x

16 1. Aritmetica modulare d(x) = 1 s(x) = 1 t(x) = x 2 Infatti 1 = 1 (x 4 + x 2 + 1) x 2 (x 2 + 1). Esercizio 1.10 Calcolare d(x) = gcd(x 4 4x 3 +6x 2 4x+1,x 3 x 2 +x 1). Soluzione. s j (x) t j (x) x 4 4x 3 + 6x 2 4x + 1 = = (x 3)(x 3 x 2 + x 1) + (2x 2 2) 1 (x 3) x 3 x 2 + x 1 = ( 1 2 x 1 2 )(2x2 2) + (2x 2) 1 2 (x 1) 1 2 (x2 4x + 5) 2x = (x + 1)(2x 2) (x2 + 1) 1 2 (x3 3x 2 + 3x + 1) L ultimo resto non nullo è 2x 2 = 2(x 1). Prendiamo come gcd il polinomio monico x 1. d(x) = x 1 u(x) = 1 4 x v(x) = 1 4 x2 x Esercizio 1.11 Se un polinomio f(x) ha radici multiple, esse sono radici di gcd (f(x),f (x)). Trovare la radice multipla del polinomio x 4 2x 3 x 2 + 2x + 1. Soluzione f (x) = 4x 3 6x 2 2x + 2 ( 1 x 4 2x 3 x 2 + 2x + 1 = 4 x 1 ) (4x 3 6x 2 2x + 2 ) ( x x + 5 ) 4 ( 4x 3 6x 2 2x + 2 = 16 5 x + 8 ) ( x x + 5 ) Quindi la radice multipla è x 2 x 1. Infatti x 4 2x 3 x 2 + 2x + 1 = (x 2 x 1) 2 16

17 1.4. Campi finiti Esercizio 1.12 Siano f(x) = x 4 + x 3 + x e g(x) = x polinomi con coefficienti in Z 2. Trovare d(x) = gcd(f(x),g(x)) ed esprimelo come combinazione lineare di f e g. Soluzione r(x) s(x) t(x) x 4 + x 3 + x x x 2 + x x 4 + x 3 + x = (x + 1)(x 3 + 1) + x 2 + x 1 (x + 1) x + 1 x = (x + 1)(x 2 + x) + (x + 1) (x + 1) x 2 0 x 2 + x = x(x + 1) + 0 Per effettuare le divisioni tra polinomi ricordiamo che si applica la lunga divisione e che siamo in algebra modulo 2 (quindi = 0). x 4 +x 3 +x 2 +1 x x 4 x x + 1 x 3 +x 2 +x +1 x 3 1 x 2 +x x 3 +1 x 2 + x x 3 +x 2 x + 1 x 2 1 x 2 +x x +1 Il gcd è d(x) = x + 1 e può essere scritto come: x + 1 = (x + 1)(x 4 + x 3 + x 2 + 1) + x 2 (x 3 + 1) Esercizio 1.13 Trovare il fattore multiplo in f(x) = x 4 x Z 3 [x]. Soluzione Se un fattore è multiplo, è presente sia in f(x) che in f (x), pertanto comparirà nel gcd(f,f ). Nel caso in esame f (x) = 4x 3 2x = x 3 + x. Quindi gcd(f,f ) = x r(x) q(x) x 4 x x 3 + x x x x 0 17

18 1. Aritmetica modulare Esercizio 1.14 Mostrare che r(x) = x Z 3 [x] è irriducibile. Trovare l inverso moltiplicativo di (2x + 1) mod r(x). Soluzione Se r(x) fosse riducibile, sarebbe divisibile per un polinomio d(x) di grado inferiore (grado uno). I polinomi di grado 1 sono: x x + 1 x + 2 2x = 2 x 2x + 1 = 2(x + 2) 2x + 2 = 2(x + 1) Non considerando i polinomi che sono uguali a meno di una costante moltiplicativa, restano tra polinomi: x, x + 1,x + 2: x = x x + 1 (1.8) x = (x + 2)(x + 1) + 2 (1.9) Quindi (x 2 + 1) non è riducibile. Per calcolare (2x + 1) 1 usiamo l algoritmo di Euclide: r(x) q(x) s(x) t(x) x x + 1 2x x = (2x + 2)(2x + 1) x + 1 (1.10) Per comodità si riporta la divisione x2 +1. Nello svolgimento ricordiamo 2x+1 sempre che x 2 = 1 = 2. Quindi possiamo scrivere che x 2 +1 x + 1 x 2 x x 1 x +1 x 1 2 (2x + 1)(x + 1) mod (x 2 + 1) = 2 e l inverso di 2x + 1 sarà ( x 1) (2x + 2). 18

19 1.4. Campi finiti Alternativamente potevamo calcolare l inverso come (2x + 1) 9 2 mod (x 2 + 1) usando Square-and-Multiply (2x + 1) = (2x + 1) 1 (2x + 1) 2 (2x + 1) = ( x + 1) 3 = x = x( 1) + 1 = x (x + 1) 2 (2x + 1) = (x 2 + 2x + 1)(2x + 1) = 2x(2x + 1) = 4x 2 + x = 2x + 2 Esercizio 1.15 (Cifrario di Hill su GF (4)) Il messaggio binario in chiaro P = viene cifrato usando un cifrario di Hill su GF (4). Come usale, gli elementi del campo sono la classe dei resti modulo r(x) = x 2 +x+1. Il cifrario usa come chiave una matrice K con dimensione Dire che condizioni deve rispettare la chiave K. 2. Cifrare il messaggio P considerando il caso K = ( ) 0 1 x + 1 x Decifrare il messaggio ottenuto al passo precedente 4. Usando la coppia messaggio in chiaro / messaggio cifrato ottenuta ai punti precedenti, effettuare un attacco di tipo known plaintext e ricavare la chiave K. Soluzione 1. La chiave K deve rispettare le seguenti condizioni: { det(k) 0 gcd(det(k),x 2 + x + 1) = 1 Notare che, poiché operiamo in un campo, la seconda è sempre vera per qualunque K che rispetti la Per prima cosa convertiamo il messaggio binario in elementi di GF (4). Poiché gli elementi sono {0, 1, x, x + 1} la cosa più semplice è convertire ogni coppia di bit in un polinomio. Pertanto il messaggio diventa: P = ( 1 x 0 x ) La chiave è una matrice 2 2, quindi il testo in chiaro deve essere diviso in vettori P i di due elementi: P 1 = ( 1 x ) P 2 = ( 0 x + 1 ) P 3 = ( 1 0 ) 19

20 1. Aritmetica modulare Procediamo quindi applicando la formula: C i = P i M (mod 4) (1.11) C 1 = ( 1 x ) ( ) 0 1 = ( x x + 1 x x x 2 + x + 1 ) = ( 1 0 ) (mod x 2 + x + 1) C 2 = ( 0 x + 1 ) ( ) 0 1 = ( x x + 1 x x + 1 x 2 + 2x + 1 ) = ( x x ) (mod x 2 + x + 1) C 3 = ( 1 0 ) ( ) 0 1 = ( 0 1 ) (mod x 2 + x + 1) x + 1 x + 1 Quindi il testo cifrato C risulta: C = ( 1 0 x x 0 1 ) che, espresso in binario, diventa C = Occorre per prima cosa calcolare la matrice inversa della chiave: K 1 = 1 (x + 1) ( ) x = x (x + 1) 0 1 Nel fare questo calcolo si consideri che x 2 + x = x = x. Calcoliamo il testo in chiaro: ( ) x = x x+1 ( ) 1 x 1 0 x, infatti x(x + 1) = P 1 = ( 1 0 ) ( ) 1 x = ( 1 x ) (mod x 2 + x + 1) 1 0 P 2 = ( x x ) ( ) 1 x = ( 2x x 1 0 2) = ( 0 x + 1 ) (mod x 2 + x + 1) P 3 = ( 0 1 ) ( ) 1 x = ( 1 0 ) (mod x 2 + x + 1) 1 0 Quindi il testo in chiaro è: P = ( 1 x 0 x ) (mod x 2 +x+1) 20

21 1.4. Campi finiti 4. Dobbiamo costruire una equazione del tipo: ( ) Pi P j K = ( ) Ci dove le righe P i, C i e P j, C j sono due coppie testo in chiaro / testo cifrato di lunghezza due. Risolvendo rispetto alla matrice delle incognite otterremo la chiave. Per risolvere l equazione la matrice del testo in chiaro deve essere invertibile; dovremo tenere presente questo fatto nello scegliere le righe della matrice. Fortunatamente la matrice costruita usando P 1 e P 2 va bene, infatti: det che non è nullo. Quindi possiamo scrivere: C j ( ) 1 x = x x + 1 ( ) 1 ( ) 1 x 1 0 K = = 1 ( ) ( ) x + 1 x x + 1 x x x x x ( ) ( ) ( ) ( ) x + 1 x 1 0 x + 1 x 1 0 = x = 0 1 x x 0 1 x x ( ) ( ) ( 1 x x = = 2 + x + 1 x 2 ) + x 0 x x x + 1 x 2 x 2 ( ) 0 1 = (mod x 2 + x + 1) x + 1 x

22

23 2 Cifrari a blocco e crittoanalisi 2.1 Modi d uso Esercizio 2.1 Si consideri il seguente crittosistema operante in modalità contatore (counter mode). CT R Il cifrario di Hill opera su Z 2 [x]/g(x) con g(x) = x 2 + x + 1 L L Hill R R ed è definito dalla equazione: ( L R ) = ( L R ) M mod g(x) La chiave è: ( ) x x + 1 K M = 0 1 P Il valore iniziale del contatore è IV = 9. C 1. Verificare che la chiave del cifrario di Hill è valida. 2. Trovare la chiave inversa e verificare. 3. Cifrare il messaggio Sapendo che per IV = 3 al messaggio in chiaro P= corrisponde al testo cifrato C= , trovare la chiave. 23

24 2. Cifrari a blocco e crittoanalisi Soluzione Siccome det(m) = x è non nullo e primo con g(x), la chiave è valida. ( x x ( ) 1 x + 1 M 1 = x 1 = 0 x Come verifica calcoliamo MM 1 = I: ) ( ) x + 1 x = 0 1 Al passo 1 il contatore vale ( x 2 + x x 2 + x ( ) x + 1 x 0 1 ) CT R 1 = 9 = 1001 = ( x 1 ) mod g(x) = ( ) 1 0 = I 0 1 In questo calcolo abbiamo espresso il valore del contatore in forma binaria e poi come vettore di polinomi di grado massimo 1. L uscita del cifrario di Hill sarà: ( ) ( ) x x + 1 x 1 = ( x ) 0 1 I primi 4 bit del keystream, K 1, saranno: Quindi il testo cifrato sarà: K 1 = ( x ) = 1100 C 1 = P 1 K 1 = = 0000 Il calcolo per il secondo blocco è simile ma con CT R 2 = IV + 1 = 10. CT R 2 = 10 = 1010 = ( x x ) L uscita del cifrario di Hill sarà: ( ) ( ) x x + 1 x x 0 1 Quindi = ( x + 1 x + 1 ) C 2 = P 2 K 2 = 1010 Per trovare la chiave, cioè la matrice M, occorre ricordare che il cifrario di Hill non agisce sul testo in chiaro, ma sul contatore e dà in uscita il keystream. Nel nostro caso il keystream è K = C P = , mentre i corrispondenti bit del contatore sono CT R = 3 4 =

25 2.1. Modi d uso I bit del keystream e del contatore devono essere espressi come elementi in GF (2 2 ) e posti in matrice per ottenere la equazione: ( ) 1 ( ) 0 x M = CT R 1 K = 1 0 x 1 ( ) ( ) 1 x = x = x = (x + 1) 1 ( 0 x ) ( ) 0 1 x 1 Esercizio 2.2 Si consideri il seguente crittosistema in modelità CFM. IV (2 bit) Sia: K A S S IV = 10 K = 01 K = 10 K B Lo S-box B = S(A) opera una inversione in: Z 2 [x]/x 2 + x + 1 P 1 La sequenza di bit 00 è inalterata. C 1 C 2 1. Cifrare il messaggio Tabulare la permutazione realizzata dal S-box 3. Calcolare la probabilità che sia vera la equazione lineare (la numerazione assegna indice 0 al bit più significativo) : a 0 a 1 b 0 = 1 4. Calcolare la probabilità che sia vera la equazione differenziale: A A = 01 B B = 01 Soluzione Consideriamo il primo blocco di testo: A 1 = IV K = 11 = x + 1 B 1 = (x + 1) 1 mod x 2 + x + 1 = x = 10 C 1 = B 1 K P 1 = 11 25

26 2. Cifrari a blocco e crittoanalisi Per il secondo blocco partiamo da C 1 : A 2 = C 1 K = 10 = x B 2 = x 1 mod x 2 + x + 1 = x + 1 = 11 C 2 = B 2 K P 2 = 00 Quindi C = Lo S-box realizza la seguente permutazione: A B a 0 a 1 b L equazione lineare proposta è vera al 50%. Verifichiamo l equazione differenziale: A A = A 01 B = S(A) B = S(A ) B B L equazione differenziale proposta è sempre vera. Esercizio 2.3 Si consideri il seguente crittosistema in modelità CBC. P 1 P 2 C 0 Sia: K C 0 = 010 K = 011 K = 110 K S Il blocco B = S(A) opera una inversione in Z 2 [x]/x 2 + x + 1. La sequenza di bit 000 è inalterata. C 1 26

27 2.1. Modi d uso 1. Cifrare il messaggio Tabulare la permutazione realizzata dal S-box 3. Calcolare la probabilità che l equazione lineare seguente sia vera: a 0 + b 0 + b 1 = 0 4. Calcolare la probabilità che la seguente equazione differenziale sia vera: A A = 001 B B = 101 Soluzione Primo blocco: Secondo blocco: A 1 = C 0 P 1 K = 101 = x B 1 = (x 2 + 1) 1 mod x 3 + x + 1 = x = 010 C 1 = B 1 K = 100 A 2 = C 1 P 2 K = 100 = x 2 B 2 = (x 2 ) 1 mod x 3 + x + 1 = x 2 + x + 1 = 111 C 2 = B 2 K = 001 Lo S-box realizza la seguente permutazione: A B a 0 b 0 b L equazione lineare proposta è vera con probabilità 3/4. Verifichiamo l equazione differenziale: A A = A 01 B = S(A) B = S(A ) B B idem idem idem idem 27

28 2. Cifrari a blocco e crittoanalisi L equazione differenziale proposta è vera con probabilità 1/ AES semplificato Esercizio 2.4 (S-box AES semplificato) Un S-box opera come segue: i 4 bit in ingresso (b 0 b 1 b 2 b 3 ) sono convertiti in un polinomio N(x) di grado 3 con coefficienti in Z 2 ; il polinomio N(x) viene considerato un elemento di GF (16) = Z 2 [x]/(x 4 + x + 1) e invertito, ottenendo l elemento N 1 (x); l inverso di 0 è convenzionalmente posto a 0; i coefficienti di N 1 (x) sono usati per formare un nuovo polinomio N(y) Z 2 [y]/(y 4 + 1); l output del S-box sono i coefficienti del polinomio M(y) costruito come segue: M(y) = N(y) a(y) + b(y) mod (y 4 + 1) (2.1) con a(y) = y 3 + y (2.2) b(y) = y (2.3) 1. Dati i bit in ingresso 1000, calcolare l output del S-box. 2. Verificare che Z 2 [y]/(y 4 + 1) non forma un campo. 3. Verificare che a(y) è invertibile in Z 2 [y]/(y 4 + 1) e trovare a 1 (y). 4. Trovare lo S-box inverso a quello dato. 5. Decifrare la sequenza di bit (2.4) Soluzione La sequenza di bit 1000 corrisponde al polinomio N(x) = x 3. Occorre trovare l inverso di x 3 (mod x 4 + x + 1). Usiamo l algoritmo di Euclide per i polinomi e otteniamo: r(x) q(x) s(x) t(x) x 4 + x x 3 x 0 1 x + 1 x 2 + x + 1 x 4 + x + 1 = x x 3 + (x + 1) 1 x 1 x + 1 x 3 = (x 2 + x + 1)(x + 1) + 1 x 2 + x + 1 x 3 + x 2 + x

29 2.2. AES semplificato Quindi N 1 (x) = x 3 + x 2 + x + 1. Tenendo presente che x 4 = x + 1 verifichiamo che N(x)N 1 (x) = 1: (x 3 + x 2 + x + 1)x 3 = (x 3 + x 2 + x + 1)xxx (x 3 + x 2 + x + 1)x = x 4 + x 3 + x 2 + x = x 3 + x (x 3 + x 2 + 1)x = x 4 + x 3 + x = x (x 3 + 1)x = x 4 + x = 1 Definiamo il polinomio N(y) = y 3 + y 2 + y + 1 e calcoliamo M(y): M(y) = (y 3 + y 2 + y + 1)(y 3 + y 2 + 1) + (y 3 + 1) mod (y 4 + 1) = = (y 6 + y 3 + y + 1) + (y 3 + 1) mod (y 4 + 1) = = y 6 + y mod (y 4 + 1) = = y 2 + y L output del S-box è Il polinomio y è riducibile, infatti y = (y + 1) 4. Quindi Z 2 [y]/(y 4 + 1) non forma un campo. Il polinomio a(y) è invertibile (mod y 4 + 1) se gcd(a(y),y 4 + 1) = 1. Al solito procediamo con l algoritmo di Euclide r(x) q(x) s(x) t(x) y y 3 + y y y 2 + y y y = (y 3 + y 2 + 1)(y + 1) + (y 2 + y) 1 y y 2 + y (y 3 + y 2 + 1)y + 1 y y 2 + y Come è facile verificare, a 1 (y) = y 2 + y + 1. Noto M(y), lo S-box inverso è composto dai seguenti passi. Si calcola N(y) = M(y)a 1 (y) + a 1 (y)b(y) mod (y 4 + 1) = = M(y)(y 2 + y + 1) + (y 3 + y 2 ) mod (y 4 + 1) A partire da N(y) si costruisce il polinomio N 1 (x) GF (16). Si calcola l inverso N(x). La sequenza 1000 corrisponde al polinomio M(y) = y 3. Il polinomio N(y) vale: N(y) = y 3 (y 2 + y + 1) + (y 3 + y 2 ) mod (y 4 + 1) = = y 5 + y 4 + y 2 mod (y 4 + 1) = = y y 2 = y 2 + y

30 2. Cifrari a blocco e crittoanalisi Il polinomio da invertire in GF(16) è N 1 (x)x 2 + x + 1 che ha come inverso (x 2 + x). Infatti: (x 2 + x + 1)(x 2 + x) = x 4 + x 3 + x 2 + x 3 + x 2 + x = x 4 + x (mod x 4 + x + 1) = (x + 1) + x = Commenti sul S-box AES semplificato In questo capitolo si farà spesso riferimento al S-box AES semplificato, cioè una funzione B = S(A) che opera su blocchi di 4 bit. a 0 a 1 a 2 a 3 B = S(A) La trasformazione B = S(A) è definita matematicamente come: Y = (a 0 x 3 + a 1 x 2 + a 2 x + a 3 ) 1 (mod x 4 + x + 1) B = (x 3 + x 2 + 1)Y + (x 3 + 1) (mod x 4 + 1) B = b 0 x 3 + b 1 x 2 + b 2 x + b 3 b 0 b 1 b 2 b 3 Lo S-box può anche essere definito, usando la notazione esadecimale, come tabella: IN (A) A B C D E F OUT (B) 9 4 A B D C E F 7 Del S-box è noto che le seguenti equazioni lineari sono vere con probabilità 3/4: a 3 b 0 = 1 (2.5) a 0 a 1 b 0 = 1 (2.6) a 1 b 1 = 0 (2.7) a 0 a 1 a 2 a 3 b 1 = 0 (2.8) a 1 a 2 b 0 b 1 = 1 (2.9) a 0 b 0 b 1 = 1 (2.10) Inoltre è noto che le seguenti relazioni differenziali sono vere con 30

31 2.3. Crittoanalisi lineare probabilità 1/4: A A = 0001 B B = 1011 (2.11) A A = 0010 B B = 1100 (2.12) A A = 0100 B B = 0010 (2.13) A A = 1000 B B = 1111 (2.14) 2.3 Crittoanalisi lineare Esercizio 2.5 Si consideri il seguente cifrario a blocco operante su un testo in chiaro P = p 0 p 1 p 2 p 3 di 4 bit e che usa una chiave K = k 0 k 1 k 2 k 3 anch essa di 4 bit. P K A S B Matematicamente, possiamo scrivere che, per 0 i 3: a i = p i k i (2.15) B = S(A) (2.16) c i = b i k i (2.17) La funzione B = S(A) è lo S-box di AES semplificato, mentre C = c 0 c 1 c 2 c 3 è il testo cifrato. C Si conoscono le seguenti coppie di testo in chiaro / testo cifrato: Coppia P C (I) (II) (III) (IV) Usando la tecnica della crittoanalisi lineare, trovare la chiave K. Calcolare il numero di coppie (P,C) necessarie per avere una confidenza al 95% di riuscire ad identificare la chiave. 31

32 2. Cifrari a blocco e crittoanalisi Soluzione Il nostro scopo è ottenere delle equazioni del tipo: z p i c j = k l Dove: z è un termine noto (0 oppure 1), p i è la somma di un sottoinsieme dei bit del testo in chiaro, c j è la somma di un sottoinsieme dei bit del testo cifrato, k l è la somma di un sottoinsieme dei bit della chiave. Sostituendo le equazioni (2.15) e (2.17) nelle equazioni (2.5) (2.10), otteniamo le seguenti equazioni: 1 p 3 c 0 = k 0 k 3 (2.18) 1 p 0 p 1 c 0 = k 1 (2.19) p 1 c 1 = 0 (2.20) p 0 p 1 p 2 p 3 c 1 = k 0 k 2 k 3 (2.21) 1 p 1 p 2 c 0 c 1 = k 0 k 2 (2.22) 1 p 0 c 0 c 1 = k 1 (2.23) Per ognuna delle equazioni (2.18) (2.23) calcoliamo la parte a sinistra dell uguale per ogni coppia (P i,c i ). Il valore che ricorre più spesso viene assunto come valore della parte sinistra. In caso di pareggio si sceglie a caso. Coppia (P i,c i ) equazione (I) (II) (III) (IV) equazione risultante (2.18) k 0 k 3 = 0 (2.19) k 1 = 1 (2.20) = 0 (2.21) k 0 k 2 k 3 = 1 (2.22) k 2 k 0 = 1 (scelto a caso) (2.23) k 1 = 1 Scartando le equazioni ripetute o prive dell incognita, otteniamo un sistema lineare di 4 equazioni con quattro incognite: k 0 k 3 = 0 (2.24) k 1 = 1 (2.25) k 0 k 2 k 3 = 1 (2.26) k 0 k 2 = 1 (2.27) 32

33 2.3. Crittoanalisi lineare Da cui ricaviamo k 0 = 0 k 1 = 1 k 2 = 1 k 3 = 0 Quindi K = 0110, che, come è facile verificare, è la soluzione corretta. Supponiamo di avere a disposizione n coppie (P,C). Le sei equazioni (2.18) (2.23) danno luogo a quattro equazioni linearmente indipendenti. Ciascuna di esse è verificata per il 75% delle coppie (P,C). Indichiamo con Π i la v.c. che identifica il numero di coppie per cui la equazione i-esima è verificata. Chiaramente Π i è binomiale con: E[Π] = 0,75n (2.28) var[π] = 0,75(1 0,75)n = 0,1875n (2.29) Supponendo n grande, possiamo approssimare Π i con una distribuzione normale. L attacco ha successo se: Π i > 0,5n per tutte le quattro equazioni indipendenti. Questo evento ha probabilità: Pr {Π i > 0,5n} 4 = Pr { Πi 0,75n 0,1875n > 0,5n 0,75n 0,1875n } 4 = Pr { Z > 0,577 n } 4 Imponendo l uguaglianza con la confidenza cercata, otteniamo: Pr { Z > 0,577 n } 4 = 0,95 Pr { Z > 0,577 n } = 4 0,95 = 0,987 Pr { Z < 0,577 n } = 1 0,987 = 0,013 Arrotondando si ottiene n 15. 0,577 n < 2,226 n > 14,88 Esercizio 2.6 Si consideri il seguente cifrario a blocco operante su un testo in chiaro P di 4 bit e che usa una chiave K di 8 bit. Si definiscono: K 0,3 = k 0 k 1 k 2 k 3 (2.30) K 4,7 = k 4 k 5 k 6 k 7 (2.31) 33

34 2. Cifrari a blocco e crittoanalisi P K 0,3 K 4,7 K 0,3 A S M N S B Per 0 i 3, siano p i i bit del testo in chiaro, k i i bit della chiave e c i i bit del testo cifrato. a i = p i k i (2.32) M = S(A) (2.33) n i = m i k i+4 (2.34) B = S(N) (2.35) c i = b i k i (2.36) La funzione Y = S(X) è lo S-box di AES semplificato. C Si conoscono le seguenti coppie di testo in chiaro / testo cifrato: Coppia P C (I) (II) (III) (IV) (V) Usando la crittoanalisi lineare trovare k 5. Stimare il numero di coppie di testi in chiaro / testi cifrati necessari per avere una confidenza del 95% di trovare k 5. Soluzione Possiamo scrivere le equazioni (2.5) (2.10) per ciascuno dei due round del cifrario. Per semplicità ignoriamo la (2.8). 34

35 2.3. Crittoanalisi lineare Per il primo round abbiamo: p 3 k 3 m 0 = 1 (2.37) p 0 k 0 p 1 k 1 m 0 = 1 (2.38) p 1 k 1 m 1 = 0 (2.39) p 1 k 1 p 2 k 2 m 0 m 1 = 1 (2.40) Mentre per il secondo round abbiamo: p 0 k 0 m 0 m 1 = 1 (2.41) m 3 k 7 c 0 k 0 = 1 (2.42) m 0 k 4 m 1 k 5 c 0 k 0 = 1 (2.43) m 1 k 5 c 1 k 1 = 0 (2.44) m 1 k 5 m 2 k 6 c 0 k 0 c 1 k 1 = 1 (2.45) Sommando la (2.39) e la (2.44) otteniamo: m 0 k 4 c 0 k 0 c 1 k 1 = 1 (2.46) p 1 k 1 m 1 m 1 k 5 c 1 k 1 = 0 p 1 c 1 = k 5 Questa equazione è vera se la (2.39) e la (2.44) sono entrambe false oppure entrambe vere, quindi con probabilità: (0,75) 2 + (0,25) 2 = 0,625 Applicando le coppie (P i,c i ) note si ottiene: Coppia (P i,c i ) (I) (II) (III) (IV) (V) equazione risultante k 5 = 0 Quindi k 5 = 0. Nota: la chiave usata per generare le coppie è: K = Abbiamo visto che l equazione è vera con probabilità 0,625. Quindi L attacco ha successo se: { } 0,5n 0,625n Pr {Π i > 0,5n} = Pr Z > = Pr { Z > 0,258 n } 0,234n Imponendo l uguaglianza con la confidenza cercata, otteniamo: Pr { Z < 0,258 n } = 1 0,95 = 0,05 0,258 n < 1,644 n 41 35

36 2. Cifrari a blocco e crittoanalisi Il requisito che occorrono più plaintext di quelli possibili possiamo interpretarlo dicendo che, in questo cifrario, anche avendo tutte le coppie, è possibile che la chiave dedotta non sia corretta. In altre parole, l attacco di crittoanalisi lineare potrebbe non avere successo. 2.4 Crittoanalisi differenziale Esercizio 2.7 Si consideri il seguente cifrario a blocco operante su un testo in chiaro P di 4 bit e che usa una chiave K di 8 bit. P K 0,3 K 4,7 A S B Per 0 i 3, siano p i i bit del testo in chiaro, k i i bit della chiave e c i i bit del testo cifrato. Allora: a i = p i k i 0 i 3 (2.47) B = S(A) (2.48) c i = b i k i+4 0 i 3 (2.49) La funzione B = S(A) è lo S-box di AES semplificato. C Usando la crittoanalisi differenziale trovare un insieme ridotto di possibili K. Si supponga di avere scelto come testi in chiaro P = 1000 e P = 0000 e di avere ottenuto C = 0011 e C = Soluzione Con una notazione compatta possiamo scrivere che: C = S(P K 0,3 ) K 4,7 (2.50) C = S(P K 0,3 ) K 4,7 (2.51) Sommando le due equazioni si ottiene una equazione che non contiene gli ultimi 4 bit della chiave. S(P K 0,3 ) S(P K 0,3 ) = C C =

37 2.4. Crittoanalisi differenziale Lavorando sulla definizione del S-box è possibile concludere che gli input al Sbox devono essere: Oppure scambiati tra loro: Nel primo caso l output del S-box è: E la chiave sarà: P K 0,3 = 1111 (2.52) P K 0,3 = 0111 (2.53) (2.54) P K 0,3 = 0111 (2.55) P K 0,3 = 1111 (2.56) S(P K 0,3 ) = S(1111) = 0111 K 4,7 = S(P K 0,3 ) C = = 0100 Nel secondo caso la chiave sarà: K 4,7 = S(0111) C = = 0110 (2.57) Per conoscere quale dei due casi è quello corretto occorrono altre coppie di testi. Partendo dalla (2.52) e dalla (2.55) si possono formulare ipotesi per K 0,3 ; infatti: K 0,3 = = 0111 oppure K 0,3 = = 1111 Quindi abbiamo due possibilità: K = (2.58) K = (2.59) Come già detto, per scegliere occorre almeno un altra coppia di testi. Esercizio 2.8 Si consideri il seguente cifrario a blocco operante su un testo in chiaro P di 8 bit e che usa una chiave K di 24 bit. 37

38 2. Cifrari a blocco e crittoanalisi p 0 p 1 p 2 p 3 p 4 p 5 p 6 p 7 K 0,7 a 0 a 1 a 2 a 3 a 4 a 5 a 6 a 7 S S m 0 m 1 m 2 m 3 m 4 m 5 m 6 m 7 K 8,15 n 0 n 1 n 2 n 3 n 4 n 5 n 6 n 7 S S K 16,23 b 0 b 1 b 2 b 3 b 4 b 5 b 6 b 7 c 0 c 1 c 2 c 3 c 4 c 5 c 6 c 7 Matematicamente: a i = p i k i 0 i 7 (2.60) M 1,3 = S(A 1,3 ) (2.61) M 4,7 = S(A 4,7 ) (2.62) n 2i = m i k 2i+7 0 i 3 (2.63) n 2i+1 = m i+4 k 2i i 3 (2.64) B 1,3 = S(N 1,3 ) (2.65) B 4,7 = S(N 4,7 ) (2.66) c i = b i k i+15 0 i 7 (2.67) La funzione Y = S(X) è lo S-box di AES semplificato. Costruire un attacco di crittoanalisi differenziale basato sulla conoscenza che P = , C = , P = e C = Soluzione Poiché A 4,7 = A 4,7 possiamo subito concludere che M 4,7 = M 4,7. Inoltre per la equazione (2.14) ci aspettiamo che M 1,3 M 1,3 = All ingresso del secondo round avremo che: N 1,3 N 1,3 = 1010 (2.68) N 4,7 N 4,7 = 1010 (2.69) (2.70) 38

39 2.4. Crittoanalisi differenziale Ottenendo le equazioni: S(N 1,3 ) S(N 1,3) = C 1,3 C 1,3 = 0111 (2.71) S(N 4,7 ) S(N 4,7) = C 4,7 C 4,7 = 0100 (2.72) Lavorando sulla funzione Y = S(X) scopriamo che gli ingressi agli S-box del secondo round devono essere: N 1,3 K 8,11 = 0001 oppure 1011 N 4,7 K 12,15 = 0010 oppure 1000 Questo attacco ci porterà 4 possibili scelte per K 16,23. Scegliamo una delle combinazioni per trovare una chiave candidata: N 1,3 K 8,11 = 0001 (2.73) N 4,7 K 12,15 = 0010 (2.74) K 16,19 = S(0001) 1110 = = 1010 (2.75) K 20,23 = S(0010) 0001 = = 1011 (2.76) Quindi una chiave candidata è K 16,23 = Per trovare altre parti della chiave si assume K 16,23 = per buona, si decifra l ultimo round e si porta un attacco al round precedente. Altre quattro chiavi candidate si trovano scegliendo altre soluzioni alla (2.73) e alla (2.74). Inoltre bisogna ricordare che questo risultato è vero se la (2.14) è vera per il caso considerato, e lo è al 25%. 39

40

41 3 RSA 3.1 Uso di RSA Esercizio 3.1 (Cifratura) Alice usa l algoritmo RSA per ricevere messaggi da Bob. Alice sceglie i due numeri primi p = 13 e q = 23. Inoltre sceglie un esponente di cifratura e = 35. Alice pubblica il prodotto N = pq = 299 e l esponente di cifratura, mentre tiene segreti i due numeri p e q. Domande: 1. verificare che l esponente e rispetta i requisiti dell algoritmo RSA; 2. calcolare l esponente di decifratura d; 3. cifrare il numero P = 15 e verificare che viene decifrato correttamente usando l esponente d calcolato. Soluzione Innanzitutto calcoliamo φ(n) = (p 1)(q 1) = 264. L esponente e deve essere primo rispetto a φ(n): gcd(35,264) = gcd(5 7, ) = 1 L esponente e è valido, e l esponente di decifratura risulta: d = e 1 mod φ(n) d = 35 1 mod 264 d = 83 41

42 3. RSA L inverso di 35 si può calcolare sia con l algoritmo di Euclide esteso, oppure come: d = 35 φ(264) 1 = 35 φ(23 )φ(3)φ(11) 1 = = 35 (2 1)22 (3 1)(11 1) 1 = mod 264 = 83 (3.1) L elevamento a potenza può essere effettuato con la tecnica dello Square-&-Multiply. Dato P = 15, possiamo calcolare: Decifrando si ha: C = P e mod N = mod 299 = 189 P = C d mod N = mod 299 = 15 Esercizio 3.2 (Firma digitale RSA) Alice pubblica i seguenti dati: N = pq = 221 e e = 13. Bob riceve il messaggio P = 65 e la relativa firma digitale F = 182. Verificare la firma. Soluzione La firma è valida se P = F e mod N. Nel nostro caso: F e mod N = mod 221 = 65 Esercizio 3.3 Alice pubblica la seguente chiave pubblica RSA: K pub = (e,n) = (93, 17947). 1. Cifrare il messaggio m = 7 usando l algoritmo S & M. 2. Usando la tecnica di fattorizzazione di Fermat, trovare p, q. 3. Usando l algoritmo di fattorizzazione p 1 trovare p,q. (Usare a = 100 e B = 3, B = 4). 4. Verificare che n non è primo usando l algoritmo di Miller-Rabin. 5. Calcolare la chiave privata (d,n). Soluzione Il testo cifrato è c = m e mod n = 7 93 mod Per usare S & M si parte dalla rappresentazione binaria di 93 = Quindi c = = = = = = = = = =

43 3.1. Uso di RSA Fattorizzazione di Fermat Per la fattorizzazione di Fermat si parte considerando che: t = p + q n = 133,96 2 Ipotizziamo ˆt = 134, da cui Scriviamo le equazioni: ŝ 2 = ˆt 2 n = = 9 = 3 2 t = p + q 2 s = p q 2 Da cui si ottiene p = 137, q = 131. = 134 = 3 Fattorizzazione p 1 b 1, b 2,... : Partiamo da a = 100 e calcoliamo la successione b 1 = a = 100 b 2 = b 2 1 mod n = b 3 = b 2 2 mod n = b 4 = b 3 3 mod n = Per b 3 otteniamo che gcd(b 3 1,n) = gcd(15753, 17947) = 1, infatti: gcd(15753, 17947) = gcd(17947 mod 15753, 17947) = gcd(2194, 17947) = = 1 Invece, per b 4 otteniamo gcd(b 4 1,n) = 137. Miller-Rabin Scegliamo a = 2. n 1 = = Da cui k = 1, m = Calcoliamo b 0 = a m mod n = mod n = 3545 per cui il numero è composto. Per trovare la chiave privata occorre calcolare d = e 1 mod φ(n) = e 1 mod (p 1)(q 1) = 93 1 mod =

44 3. RSA 3.2 Fattorizzazione Fattorizzazione di Fermat Esercizio 3.4 Alice pubblica i seguenti dati: N = 6557, e = 131. Trovare l esponente di decifratura d. Soluzione Assumendo p > q possiamo sempre scrivere che: ( ) p + q 2 ( ) p q 2 N = t 2 s 2 = 2 2 La fattorizzazione di Fermat è efficiente se p q. In questo caso si ha t n e s 0. Proviamo nell ordine tutti i numeri interi t > N e calcoliamo: ŝ 2 = t 2 N Procediamo finché ŝ 2 non è un quadrato perfetto. Nel caso in esame deve essere t > 80,9. Proviamo t = 81. Per t = 81 si ha ŝ 2 = = 4. Quindi: p + q = 162 p q = 4 Otteniamo p = 83 e q = 79. L esponente di decifratura sarà: d = e 1 mod φ(n) = mod (p 1)(q 1) = mod 6396 L inverso di 131 modulo 6478 si trova usando l algoritmo di Euclide esteso: r q s t L inverso di 131 è d = 2783 (mod 6369). 44

45 3.2. Fattorizzazione Algoritmo p 1 Si supponga di voler fattorizzare n. Si scelgano un intero a > 1 ad esempio a = 2 e un limite B. Si calcolino b = a B! mod n e d = gcd(b 1,n). Il risultato d è un fattore di n; l algoritmo ha successo e abbiamo un fattore non banale se d 1 o d n. Esercizio 3.5 Fattorizzare il numero 1001, usando la base a = 2. Soluzione Fissiamo B = 3. Allora: b = a B! mod n = 2 3! mod 1001 = 2 6 mod 1001 = 64 d = gcd(b 1,n) = gcd(63,1001) = 7 Quindi 7 è un fattore. Infatti 1001/7 = 143. Poiché 143 non è primo, occorre procedere nella fattorizzazione. Proviamo a incrementare B. b = 2 4! mod 143 = 64 4 mod 143 = 27 d = gcd(26,143) = 13 Quindi 13 è un altro fattore. Concludiamo che: 1001 = Setaccio quadratico semplificato Supponiamo di avere una relazione del tipo: x 2 y 2 (mod n) x ±y (mod n) (3.2) Allora gcd(x y,n) è un fattore non banale di n. Esercizio 3.6 Fattorizzare Soluzione La parte difficile è trovare delle relazioni tipo la (3.2). Generalmente si parte da un insieme di interi vicini a kn, si elevano al quadrato modulo n e si fattorizzano. Il procedimento è utile se questa fattorizzazione è facile. Ad esempio otteniamo le seguenti relazioni 35 2 mod 1001 = 224 = mod 1001 = 295 = mod 1001 = 368 = mod 1001 = mod 1001 = 114 = mod 1001 = 207 =

46 3. RSA Selezioniamo poi dei gruppi di relazioni in modo da avere i fattori a destra un numero pari di volte. Ad esempio abbiamo: (37 45) (2 2 23) 2 (mod 1001) (3.3) (47 45) 2 (3 23) 2 (mod 1001) (3.4) Alcune di queste relazioni daranno luogo ad una fattorizzazione banale, altre no. Ad esempio la (3.3) dà luogo a: gcd( , 1001) = gcd( ,1001) = 143 = Mentre la (3.4) dà luogo a: gcd( ) = gcd( ,1001) = 11 Quindi 1001 =

47 4 Residui quadratici 4.1 Teorema cinese del resto Esercizio 4.1 Trovare le soluzioni della seguente congruenza: 3x 4 (mod 7) Soluzione Si consideri che 3 1 3x (mod 7) Usando l algoritmo di Euclide possiamo ricavare che 3 5 = 15 = (mod 7) Quindi l inverso di 3 è 5. Possiamo scrivere: 5 3x 5 4 (mod 7) x 20 mod 7 6 (mod 7) La soluzione è quindi: x = 6 + 7k, k Z Esercizio 4.2 Trovare le soluzioni del seguente sistema di congruenze: x 2 (mod 3) x 3 (mod 5) x 4 (mod 11) x 5 (mod 16) 47

48 4. Residui quadratici Soluzione Il teorema cinese del resto garantisce che la soluzione esiste se m i = {3, 5, 11, 16} sono primi tra loro a coppie. È facile verificare che 3, 5 e 11 sono primi e che 16 = 2 4, quindi non esistono fattori in comune. Si definiscono quindi: a i = {2, 3, 4, 5} m i = {3, 5, 11, 16} 4 M = m i = = 2640 i=1 Nel caso in esame: Quindi: z i = M m i y i = zi 1 (mod m i ) 4 x = a i y i z i mod M i=1 i a i m i z i y i x = (mod 2640) 4.2 Residui quadratici Esercizio 4.3 Calcolare ( ) Soluzione Osserviamo che 167 è primo, quindi si può usare la definizione di simbolo di Legendre: ( ) a +1 se a è un quadrato (mod p) = p 1 altrimenti Inoltre a è un quadrato modp se e solo se: a p (mod p) Nel nostro caso dobbiamo calcolare (91 83 mod 167). Per svolgere il calcolo usiamo l algoritmo Square-and-Multiply. 48

49 4.2. Residui quadratici Quindi i c i z (mod 167) = = = = = = = (mod 167) allora 91 non è un quadrato e il simbolo di Legendre vale 1: ( ) 91 = Esercizio 4.4 Calcolare ( ) usando la legge di reciprocità quadratica. Soluzione Osserviamo che 91 = 7 13, quindi: ( ) ( ) ( ) = La legge di reciprocità dice che: ( ) m ( ) n m se m n 3 (mod 4) = ( n n m) altrimenti Nel nostro caso: 167 mod 4 = 3 7 mod 4 = 3 13 mod 4 = 1 Quindi: ( ) ( ) ( ) = Applichiamo la proprietà per cui, se a b (mod p) e gcd(a,p) = 1: ( ) a = p ( ) b p e otteniamo ( ) ( ) ( ) =

50 4. Residui quadratici Osserviamo che 6 1 (mod 7), quindi: ( 6 = 7) ( ) 1 = ( 1) (7 1)/2 = ( 1) 3 = 1 7 Osserviamo che 11 2 (mod 13) e che 13 5 (mod 8), quindi: ( ) ( ) ( ) = = ( 1) (13 1)/2 ( 1) = Quindi il risultato è: ( ) 91 = ( 1)( 1) = Esercizio 4.5 Valutare il simbolo di Legendre ( ) fattorizzando solo i numeri pari. Soluzione Calcoliamo innanzitutto gcd(1801,8191). Osserviamo che: r j j = = = = = = = = = = = mod 4 = mod 4 = mod 1801 = 987 gcd(8191,1801) = 1 Applicando la legge di reciprocità: ( ) 1801 = 8191 ( ) ( ) =

51 4.2. Residui quadratici Osserviamo ancora che: Quindi: 1801 mod 4 = mod 4 = mod 987 = 814 gcd(987,1801) = gcd(8191 mod 1801,1801) = mod 8 = 3 ( ) 987 = 1801 Osserviamo ancora che: Quindi: Osserviamo ancora che: ( ) ( = mod 4 = mod 4 = mod 407 = 173 gcd(407,987) = 1 ( ) 407 = 987 ) ( ) 407 = 987 ( ) mod 4 = mod 4 = mod 407 = 61 gcd(407,173) = 1 Quindi: ( ) 173 = 407 Osserviamo ancora che: ( ) mod 4 = mod 4 = mod 61 = 51 gcd(61,173) = 1 Quindi: ( ) 61 = 173 ( ) ( )

52 4. Residui quadratici Osserviamo ancora che: 61 mod 4 = 1 51 mod 4 = 3 61 mod 51 = 10 gcd(61,51) = 1 51 mod 8 = 3 Quindi: ( ) ( ) ( = ) Osserviamo ancora che: Quindi: 5 mod 4 = 1 51 mod 4 = 3 51 mod 5 = 1 gcd(5,51) = 1 ( 5 = 51) ( ( 5 1 = = 1 51) 5) Test di Solovay-Strassen Dato un n candidato primo, scegliamo un insieme di basi 1 < a i < n 1, se esiste un a i tale che: ( a a n) n 1 2 (mod n) possiamo dire con certezza che n non è primo. Se invece non troviamo questo a i dobbiamo concludere che n probabilmente è primo. Esercizio 4.6 Verificare se il numero 17 è primo usando il test di Solovay- Strassen sulle basi 2 e 3. Soluzione Proviamo la base 2. ( 2 17) = 1 Il risultato è noto perché 17 1 (mod 8) 2 8 mod 17 = 256 mod 17 = 1 Proviamo la base 3. ( ) ( ) ( = = = ) 3 8 mod 17 = 6561 mod 17 = 16 = 1 Il numero è probabilmente primo. 52

53 4.3. Estrazione di radici Esercizio 4.7 Verificare se il numero 341 è primo usando il test di Solovay- Strassen sulle basi 2 e 3. Soluzione Proviamo la base 2. ( ) 2 = Il risultato è noto perché (mod 8) mod 341 = 1 Il numero è composto. 4.3 Estrazione di radici Esercizio 4.8 Calcolare x tale che x 2 76 (mod 167). Soluzione Prima di tutto verifichiamo se l equazione ha soluzione. Siccome 167 è primo, 76 è un quadrato se = (mod 167) Per verificare che mod 167 = 1 si può usare l algoritmo Square-and- Multiply: i c i z (mod 167) = = = = = = = 1 Siccome (mod 4), si può usare la formula veloce per estrarre le radici: x = ± mod 167 = ±76 42 mod 167 Anche qui possiamo usare l algoritmo Square-and-Multiply: i c i z (mod 167) = = = = = = 57 53

54 4. Residui quadratici Come è facile verificare, x = ±57. Esercizio 4.9 Calcolare x tale che x (mod 231). Soluzione Poiché 231 = , il problema si riconduce a trovare la soluzione del sistema: x (mod 3) x (mod 7) x (mod 11) Per verificare che la soluzione esista, calcoliamo i numeri di Legendre: ( 1 = 1 3) ( 2 = 2 7) mod 7 = 1 ( 2 = 1 7) Quindi la soluzione esiste. Osservando poi che (mod 4), si può usare la formula per calcolare velocemente le radici: x ±1 (mod 3) x ± (mod 7) x ±1 (mod 11) Il teorema del resto cinese ci permette di trovare la x cercata. Definiamo: z 1 = 231/3 = 77 y (mod 3) z 2 = 231/7 = 33 y (mod 7) z 3 = 231/11 = 21 y (mod 11) Per trovare gli inversi possiamo osservare che z 1 1 (mod 3) e z 3 1 (mod 11), quindi y 1 e y 3 sono gli inversi di se stessi. Per y 2 usare l algoritmo di Euclide esteso: r i q i s i t i

55 4.4. Crittosistema di Rabin Combinando le soluzioni negli 2 3 = 8 casi otteniamo le 8 radici: x (mod 231) x (mod 231) x (mod 231) x (mod 231) x (mod 231) x (mod 231) x (mod 231) x (mod 231) 4.4 Crittosistema di Rabin Esercizio 4.10 (Crittosistema di Rabin) Si consideri un testo composto dalle sole 26 lettere maiuscole codificate con numeri interi progressivi. Si consideri A = 65, B = 66 e così via fino a Z = 90. Alice e Bob comunicano usando un crittosistema di Rabin. La chiave pubblica di Alice è m = p q = 209 La chiave privata (ovvero la coppia p,q) è tenuta segreta. Bob cifra, lettera per lettera, il seguente messaggio: WADE e lo invia ad Alice. Eve, che conosce le prime due lettere del messaggio in chiaro ma ignora le ultime due, ottiene una copia del messaggio cifrato. 1. Cifrare il messaggio 2. Spiegare come può Eve ricavare la chiave privata di Alice. 3. Decifrare la parte restante del messaggio. Soluzione 1. Il messaggio in chiaro P è la sequenza: P = ( ) Il messaggio cifrato M si ottiene elevando al quadrato modulo m. C i = P 2 i mod 209 C = ( ) 55

4 0 = 4 2 = 4 4 = 4 6 = 0.

4 0 = 4 2 = 4 4 = 4 6 = 0. Elementi di Algebra e Logica 2008. Esercizi 4. Gruppi, anelli e campi. 1. Determinare la tabella additiva e la tabella moltiplicativa di Z 6. (a) Verificare dalla tabella moltiplicativa di Z 6 che esistono

Dettagli

si cerca di scegliere e non troppo grande e tale che nella scrittura binaria di e ci siano pochi 1 e piccolo = cifratura più veloce

si cerca di scegliere e non troppo grande e tale che nella scrittura binaria di e ci siano pochi 1 e piccolo = cifratura più veloce crittosistema RSA Sia N = pq, p, q primi. Sia P = C = Z N. Lo spazio delle chiavi è K = {(N, p, q, d, e) de 1 (mod φ(n))}. Se k = (N, p, q, d, e) è una chiave, poniamo e k (x) = x e (mod N) N e e sono

Dettagli

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Laurea in Matematica CR410 - Crittografia - A.A. 2010/2011. II Esonero - 6 Giugno Tot.

UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Laurea in Matematica CR410 - Crittografia - A.A. 2010/2011. II Esonero - 6 Giugno Tot. UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Laurea in Matematica CR410 - Crittografia - A.A. 2010/2011 II Esonero - 6 Giugno 2011 1 2 3 4 5 6 7 Tot. Avvertenza: Svolgere ogni esercizio nello spazio assegnato,

Dettagli

una possibile funzione unidirezionale

una possibile funzione unidirezionale una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile (vedremo poi) fattorizzare

Dettagli

m = a k n k + + a 1 n + a 0 Tale scrittura si chiama rappresentazione del numero m in base n e si indica

m = a k n k + + a 1 n + a 0 Tale scrittura si chiama rappresentazione del numero m in base n e si indica G. Pareschi COMPLEMENTI ED ESEMPI SUI NUMERI INTERI. 1. Divisione con resto di numeri interi 1.1. Divisione con resto. Per evitare fraintendimenti nel caso in cui il numero a del Teorema 0.4 sia negativo,

Dettagli

sia G un gruppo ciclico di ordine n, sia g un generatore di G bisogna determinare l unico intero x con 1 x n 1 tale che g x = y

sia G un gruppo ciclico di ordine n, sia g un generatore di G bisogna determinare l unico intero x con 1 x n 1 tale che g x = y gruppi ciclici Definizione Un gruppo G con n elementi tale esiste un elemento g G con o(g) = n si dice ciclico, e g si dice un generatore del gruppo U(Z 9 ) è ciclico p. es. U(Z 8 ) non lo è i gruppi U(Z

Dettagli

Corso di Crittografia Prof. Dario Catalano. Introduzione alla crittografia asimmetrica

Corso di Crittografia Prof. Dario Catalano. Introduzione alla crittografia asimmetrica Corso di Crittografia Prof. Dario Catalano Introduzione alla crittografia asimmetrica Introduzione n La crittografia simmetrica parte dal presupposto che Alice e Bob condividano una chiave segreta. n In

Dettagli

problema del logaritmo discreto

problema del logaritmo discreto problema del logaritmo discreto consideriamo il gruppo ciclico U(Z p ), p primo sia g un elemento primitivo modulo p sia y {1,..., p 1} = U(Z p ) il minimo intero positivo x con g x = y si dice il logaritmo

Dettagli

sia G un gruppo ciclico di ordine n, sia g un generatore di G

sia G un gruppo ciclico di ordine n, sia g un generatore di G logaritmo discreto sia G un gruppo ciclico di ordine n, sia g un generatore di G dato y 1 G bisogna determinare l unico intero x con 1 x n 1 tale che g x = y ex: in U(Z 9 ) con g = 2, se y = 7 si ha x

Dettagli

Applicazioni eliminazione di Gauss

Applicazioni eliminazione di Gauss Applicazioni eliminazione di Gauss. Premessa Nel seguito supporremo sempre di applicare il metodo di eliminazione di Gauss allo scopo di trasformare la matrice del sistema Ax = b in una matrice triangolare

Dettagli

Sol. Sia P = (x, y) un punto che soddisfa l equazione Y 2 = X 3 + ax + b. Ricordiamo che per definizione P = (x, y) è un punto regolare di E se

Sol. Sia P = (x, y) un punto che soddisfa l equazione Y 2 = X 3 + ax + b. Ricordiamo che per definizione P = (x, y) è un punto regolare di E se Teoria Elementare dei Numeri. Soluzioni Esercizi 5. Curve ellittiche. 1. Sia E una curva su R di equazione Y 2 = X 3 + ax + b. Verificare che è una curva regolare di R 2 (senza punti singolari) se e solo

Dettagli

funzione φ di Eulero, o funzione toziente è definita sugli interi positivi φ(n) è il numero di interi positivi n che sono coprimi con n

funzione φ di Eulero, o funzione toziente è definita sugli interi positivi φ(n) è il numero di interi positivi n che sono coprimi con n ordine di un gruppo G un gruppo finito: ordine di G = o(g) = numero di elementi di G l insieme degli invertibili di Z n è un gruppo rispetto al prodotto (mod n) si denota con U(Z n ) e ha ordine φ(n) esempio:

Dettagli

una possibile funzione unidirezionale

una possibile funzione unidirezionale una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile fattorizzare un numero a

Dettagli

crittosistema: definizione

crittosistema: definizione crittosistema: definizione Definizione Un crittosistema è una quintupla (P, C, K, E, D), dove 1 P è un insieme finito di testi in chiaro (plaintext) 2 C è un insieme finito di testi cifrati (ciphertext)

Dettagli

SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n

SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n SPAZI E SOTTOSPAZI 1 SOTTOSPAZI E OPERAZIONI IN SPAZI DIVERSI DA R n Spazi di matrici. Spazi di polinomi. Generatori, dipendenza e indipendenza lineare, basi e dimensione. Intersezione e somma di sottospazi,

Dettagli

SISTEMI LINEARI MATRICI E SISTEMI 1

SISTEMI LINEARI MATRICI E SISTEMI 1 MATRICI E SISTEMI SISTEMI LINEARI Sistemi lineari e forma matriciale (definizioni e risoluzione). Teorema di Rouché-Capelli. Sistemi lineari parametrici. Esercizio Risolvere il sistema omogeneo la cui

Dettagli

logaritmo discreto come funzione unidirezionale

logaritmo discreto come funzione unidirezionale logaritmo discreto come funzione unidirezionale in generale, lavoreremo con il gruppo U(Z p ) = Z p dati g generatore di Z p e x tale che 1 x p 1, calcolare y = g x è computazionalmente facile (y g x (mod

Dettagli

1. Esistono numeri della forma , ottenuti cioè ripetendo le cifre 2006 un certo numero di volte, che siano quadrati perfetti?

1. Esistono numeri della forma , ottenuti cioè ripetendo le cifre 2006 un certo numero di volte, che siano quadrati perfetti? 1 Congruenze 1. Esistono numeri della forma 200620062006...2006, ottenuti cioè ripetendo le cifre 2006 un certo numero di volte, che siano quadrati perfetti? No, in quanto tutti questi numeri sono congrui

Dettagli

Applicazioni dell Algoritmo di Euclide

Applicazioni dell Algoritmo di Euclide Applicazioni dell Algoritmo di Euclide Applicazione dell Algoritmo di Euclide al calcolo del Massimo Comune Divisore tra due interi Mostriamo un esempio di come l algoritmo di Euclide permetta di calcolare

Dettagli

Dunque k vale all incirca log n: precisamente k = [log n] + 1.

Dunque k vale all incirca log n: precisamente k = [log n] + 1. Teoria Elementare dei Numeri Soluzioni Esercizi 1 Convenzione: Su questo foglio log n indica sempre il logaritmo in base 2 di n 1 Quante cifre binarie ha all incirca un numero intero n? Sol Scriviamo n

Dettagli

una possibile funzione unidirezionale

una possibile funzione unidirezionale una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile fattorizzare un numero a

Dettagli

Esercizi e soluzioni relativi al Capitolo 10

Esercizi e soluzioni relativi al Capitolo 10 Esercizi e soluzioni relativi al Capitolo 1 Esercizio 1.1 Sia (Mat 2 2 (R), +, ) l anello delle matrici quadrate di ordine 2 a coefficienti reali. [ Gli ] elementi unitari sono tutte e sole le matrici

Dettagli

Un polinomio è un espressione algebrica data dalla somma di più monomi.

Un polinomio è un espressione algebrica data dalla somma di più monomi. 1 I polinomi 1.1 Terminologia sui polinomi Un polinomio è un espressione algebrica data dalla somma di più monomi. I termini di un polinomio sono i monomi che compaiono come addendi nel polinomio. Il termine

Dettagli

(G, ) un gruppo moltiplicativo di ordine n l ordine di un elemento g G, o(g), è il minimo intero positivo m tale che g m = 1

(G, ) un gruppo moltiplicativo di ordine n l ordine di un elemento g G, o(g), è il minimo intero positivo m tale che g m = 1 ordine di un gruppo G un gruppo finito: ordine di G = o(g) = numero di elementi di G l insieme degli invertibili di Z n è un gruppo rispetto al prodotto si denota con U(Z n ) e ha ordine φ(n) esempio:

Dettagli

Aritmetica 2009/10 Compitino 1/12/2009. (a) Contare gli elementi nilpotenti di A. (b) Contare gli elementi zero-divisori di A.

Aritmetica 2009/10 Compitino 1/12/2009. (a) Contare gli elementi nilpotenti di A. (b) Contare gli elementi zero-divisori di A. Aritmetica 2009/10 Compitino 1/12/2009 1. Sia A = Z2[x]/(x 5 + x 4 + 1). (a) Contare gli elementi nilpotenti di A. (b) Contare gli elementi zero-divisori di A. Possibile risoluzione: Il polinomio f(x)

Dettagli

c A (a c = b) Le ipotesi che abbiamo ci dicono che esistono h, k A tali che:

c A (a c = b) Le ipotesi che abbiamo ci dicono che esistono h, k A tali che: Definizione 1. Dato un insieme A, un operazione su A è una applicazione da A A a valori in A. Definizione 2. Se A è un insieme con una operazione, dati a, b A diciamo che a divide b (e scriviamo a b) se

Dettagli

Metodi per la risoluzione di sistemi lineari

Metodi per la risoluzione di sistemi lineari Metodi per la risoluzione di sistemi lineari Sistemi di equazioni lineari. Rango di matrici Come è noto (vedi [] sez.0.8), ad ogni matrice quadrata A è associato un numero reale det(a) detto determinante

Dettagli

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3

SISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3 SISTEMI LINEARI. Esercizi Esercizio. Verificare se (,, ) è soluzione del sistema x y + z = x + y z = 3. Trovare poi tutte le soluzioni del sistema. Esercizio. Scrivere un sistema lineare di 3 equazioni

Dettagli

CONICHE. Esercizi Esercizio 1. Nel piano con riferimento cartesiano ortogonale Oxy sia data la conica C di equazione

CONICHE. Esercizi Esercizio 1. Nel piano con riferimento cartesiano ortogonale Oxy sia data la conica C di equazione CONICHE Esercizi Esercizio 1. Nel piano con riferimento cartesiano ortogonale Oy sia data la conica C di equazione 7 2 + 2 3y + 5y 2 + 32 3 = 0. Calcolare le equazioni di una rototraslazione che riduce

Dettagli

Crittografia. Nozioni di Algebra. Corso di Laurea Specialistica. in Informatica

Crittografia. Nozioni di Algebra. Corso di Laurea Specialistica. in Informatica Crittografia Corso di Laurea Specialistica in Informatica Nozioni di Algebra Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca e-mail:

Dettagli

Sol. (a) Abbiamo p 1 = 78 = Usiamo il criterio dell esercizio 1. Calcolando

Sol. (a) Abbiamo p 1 = 78 = Usiamo il criterio dell esercizio 1. Calcolando Teoria Elementare dei Numeri. Soluzioni Esercizi 6. Il gruppo Z p, radici primitive, logaritmo discreto. 1. Sia p > 2 un numero primo e sia ḡ Z p. (a) Verificare che ḡ è una radice primitiva di Z p se

Dettagli

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria. Capitolo 2 Campi 2.1 Introduzione Studiamo ora i campi. Essi sono una generalizzazione dell insieme R dei numeri reali con le operazioni di addizione e di moltiplicazione. Nel secondo paragrafo ricordiamo

Dettagli

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara

Sistemi lineari. Lorenzo Pareschi. Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara Sistemi lineari Lorenzo Pareschi Dipartimento di Matematica & Facoltá di Architettura Universitá di Ferrara http://utenti.unife.it/lorenzo.pareschi/ lorenzo.pareschi@unife.it Lorenzo Pareschi (Univ. Ferrara)

Dettagli

Una curva ellittica è una curva definita da un equazione in due incognite del tipo:

Una curva ellittica è una curva definita da un equazione in due incognite del tipo: Lezione tenuta dal Prof. P. D Arco Presentazione di: Francesco Apicella Raffaele De Feo Ermanno Travaglino Una curva ellittica è una curva definita da un equazione in due incognite del tipo: y 2 = x 3

Dettagli

Tutti i numeri qui considerati sono interi. Se si tratta in particolare di numeri Naturali (quindi non negativi) verrà specificato.

Tutti i numeri qui considerati sono interi. Se si tratta in particolare di numeri Naturali (quindi non negativi) verrà specificato. LICEO B. RUSSELL A.S. 2010/2011 DALLA TEORIA DEI NUMERI ALLE CONGRUENZE Tutti i numeri qui considerati sono interi. Se si tratta in particolare di numeri Naturali (quindi non negativi) verrà specificato.

Dettagli

RSA e firma digitale

RSA e firma digitale Università degli Studi di Cagliari Corso di Laurea in Matematica RSA e firma digitale Mara Manca Relatore: prof. Andrea Loi Anno Accademico 2015-2016 Mara Manca Relatore: prof. Andrea Loi RSA e firma digitale

Dettagli

Gruppi, Anelli, Campi

Gruppi, Anelli, Campi Gruppi, Anelli, Campi (A1) Chiusura per addizione (A2) Associatività addizione (A3)Elemento neutro addizione (A4)Esistenza inversi additivi Campo (A5) Commutatività addizione (M1) Chiusura per moltiplicazione

Dettagli

Crittografia simmetrica (a chiave condivisa)

Crittografia simmetrica (a chiave condivisa) Crittografia simmetrica (a chiave condivisa) Crittografia simmetrica (a chiave condivisa) Schema di trasmissione con chiave condivisa: Crittografia simmetrica (a chiave condivisa) Schema di trasmissione

Dettagli

Istituzioni di Matematiche, Integrali fratti. corso di laurea in Scienze geologiche. Mauro Costantini

Istituzioni di Matematiche, Integrali fratti. corso di laurea in Scienze geologiche. Mauro Costantini Istituzioni di Matematiche, Integrali fratti corso di laurea in Scienze geologiche. Mauro Costantini tipo: Il nostro obiettivo è studiare gli integrali (indefiniti e definiti delle funzioni razionali,

Dettagli

a + 2b + c 3d = 0, a + c d = 0 c d

a + 2b + c 3d = 0, a + c d = 0 c d SPAZI VETTORIALI 1. Esercizi Esercizio 1. Stabilire quali dei seguenti sottoinsiemi sono sottospazi: V 1 = {(x, y, z) R 3 /x = y = z} V = {(x, y, z) R 3 /x = 4} V 3 = {(x, y, z) R 3 /z = x } V 4 = {(x,

Dettagli

ALGEBRA 1 Secondo esame scritto soluzioni 18 Luglio x 15 mod 21 44x 20 mod 12 6x mod 15

ALGEBRA 1 Secondo esame scritto soluzioni 18 Luglio x 15 mod 21 44x 20 mod 12 6x mod 15 ALGEBRA 1 Secondo esame scritto soluzioni 18 Luglio 2011 (1) Risolvere il seguente sistema di congruenze lineari: 3x 15 mod 21 44x 20 mod 12 6x 6 1000 mod 15 Soluzione: Richiedere la validità della congruenza

Dettagli

La codifica. dell informazione

La codifica. dell informazione La codifica dell informazione (continua) Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da 0 a 9 fornendo in questo modo un metodo per la rappresentazione dei numeri Il numero

Dettagli

NUMERI PRIMI E CRITTOGRAFIA

NUMERI PRIMI E CRITTOGRAFIA NUMERI PRIMI E CRITTOGRAFIA Parte I. Crittografia a chiave simmetrica dall antichità all era del computer Parte II. Note della Teoria dei Numeri concetti ed algoritmi a supporto della Crittografia Parte

Dettagli

Progetto Lauree Scientifiche Crittografia V incontro

Progetto Lauree Scientifiche Crittografia V incontro Progetto Lauree Scientifiche Crittografia V incontro Giovanna Carnovale 13 marzo 2006 Sommario Durante questo incontro analizzeremo la sicurezza del sistema crittografico RSA e parleremo di come trasformare

Dettagli

esistenza dell identità: $ e œ G tale che " a œ G esistenza dell inverso: " a œ G $ a œ G tale che Alberto Leporati Corso di Crittografia 2

esistenza dell identità: $ e œ G tale che  a œ G esistenza dell inverso:  a œ G $ a œ G tale che Alberto Leporati Corso di Crittografia 2 Crittografia Corso di Laurea Specialistica in Informatica Nozioni di Algebra Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca e-mail:

Dettagli

ESAME DI GEOMETRIA E ALGEBRA INGEGNERIA INFORMATICA (PROF. ACCASCINA) PROVA SCRITTA DEL 4 LUGLIO 2000 Tempo assegnato: 2 ore e 30 minuti

ESAME DI GEOMETRIA E ALGEBRA INGEGNERIA INFORMATICA (PROF. ACCASCINA) PROVA SCRITTA DEL 4 LUGLIO 2000 Tempo assegnato: 2 ore e 30 minuti ESAME DI GEOMETRIA E ALGEBRA INGEGNERIA INFORMATICA (PROF ACCASCINA) PROVA SCRITTA DEL 4 LUGLIO 000 Tempo assegnato: ore e 30 minuti PRIMO ESERCIZIO [7 punti] 1 Dimostrare che, per ogni naturale n, ciascuna

Dettagli

APPLICAZIONI LINEARI

APPLICAZIONI LINEARI APPLICAZIONI LINEARI Esercizi Esercizio Date le seguenti applicazioni lineari f : R 2 R 3 definita da fx y = x 2y x + y x + y; 2 g : R 3 R 2 definita da gx y z = x + y x y; 3 h : Rx] 2 R 2 definita da

Dettagli

ALGEBRA 1 Secondo esonero 15 Giugno 2011 soluzioni

ALGEBRA 1 Secondo esonero 15 Giugno 2011 soluzioni ALGEBRA 1 Secondo esonero 15 Giugno 2011 soluzioni (1) Verificare che l anello quoziente Z 5 [x]/(x 3 2) possiede divisori dello zero, e determinare tutti i suoi ideali non banali. Soluzione: Il polinomio

Dettagli

CORSO DI ALGEBRA LINEARE Anno Accademico 2004/2005 Appunti su SISTEMI di EQUAZIONI LINEARI

CORSO DI ALGEBRA LINEARE Anno Accademico 2004/2005 Appunti su SISTEMI di EQUAZIONI LINEARI CORSO DI ALGEBRA LINEARE Anno Accademico 2004/2005 Appunti su SISTEMI di EQUAZIONI LINEARI Lo studente ha forse già incontrato i sistemi di equazioni lineari alla scuola secondaria Con il termine equazione

Dettagli

NOTE DI ALGEBRA LINEARE v = a 1 v a n v n, w = b 1 v b n v n

NOTE DI ALGEBRA LINEARE v = a 1 v a n v n, w = b 1 v b n v n NOTE DI ALGEBRA LINEARE 2- MM 9 NOVEMBRE 2 Combinazioni lineari e generatori Sia K un campo e V uno spazio vettoriale su K Siano v,, v n vettori in V Definizione Un vettore v V si dice combinazione lineare

Dettagli

funzione φ di Eulero, o funzione toziente è definita sugli interi positivi φ(n) è il numero di interi positivi n che sono coprimi con n

funzione φ di Eulero, o funzione toziente è definita sugli interi positivi φ(n) è il numero di interi positivi n che sono coprimi con n ordine di un gruppo G un gruppo finito: ordine di G = o(g) = numero di elementi di G l insieme degli invertibili di Z n è un gruppo rispetto al prodotto (mod n) si denota con U(Z n ) e ha ordine φ(n) esempio:

Dettagli

a p a (p) (a + 1) p = i=0 sono noti come coefficienti binomiali 2 e sono numeri interi (a + 1) p a p + 1 (p) (a + 1) p a + 1 (p)

a p a (p) (a + 1) p = i=0 sono noti come coefficienti binomiali 2 e sono numeri interi (a + 1) p a p + 1 (p) (a + 1) p a + 1 (p) Appunti quarta settimana Iniziamo con un risultato molto importante che ha svariate conseguenze e che3 sarà dimostrato in modi diversi durante il corso: Esercizio 1.[Piccolo teorema di Fermat] Dimostrare

Dettagli

Rappresentazioni numeriche

Rappresentazioni numeriche Rappresentazioni numeriche Un numero è dotato di un valore una rappresentazione La rappresentazione di un numero è il sistema che utilizziamo per indicarne il valore. Normalmente è una sequenza (stringa)

Dettagli

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria. Capitolo 2 Campi 2.1 Introduzione Studiamo ora i campi. Essi sono una generalizzazione dell insieme R dei numeri reali con le operazioni di addizione e di moltiplicazione. Nel secondo paragrafo ricordiamo

Dettagli

Elementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n

Elementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n Elementi di Algebra e di Matematica Discreta Numeri interi, divisibilità, numerazione in base n Cristina Turrini UNIMI - 2016/2017 Cristina Turrini (UNIMI - 2016/2017) Elementi di Algebra e di Matematica

Dettagli

x 2 + (x+4) 2 = 20 Alle equazioni di secondo grado si possono applicare i PRINCIPI di EQUIVALENZA utilizzati per le EQUAZIONI di PRIMO GRADO.

x 2 + (x+4) 2 = 20 Alle equazioni di secondo grado si possono applicare i PRINCIPI di EQUIVALENZA utilizzati per le EQUAZIONI di PRIMO GRADO. EQUAZIONI DI SECONDO GRADO Un'equazione del tipo x 2 + (x+4) 2 = 20 è un'equazione DI SECONDO GRADO IN UNA INCOGNITA. Alle equazioni di secondo grado si possono applicare i PRINCIPI di EQUIVALENZA utilizzati

Dettagli

COMPITO DI ALGEBRA TRENTO, 13 GENNAIO 2016

COMPITO DI ALGEBRA TRENTO, 13 GENNAIO 2016 COMPITO DI ALGEBRA TRENTO, 13 GENNAIO 2016 Istruzioni: (1) Questo compito consiste di sei facciate e ventidue esercizi. (2) Risolvete tutti gli esercizi seguenti. (3) Giustificate, possibilmente in modo

Dettagli

da chi proviene un messaggio?

da chi proviene un messaggio? da chi proviene un messaggio? in un crittosistema simmetrico solo Alice e Bob conoscono la chiave se Bob riceve un messaggio di Alice e la decifratura del messaggio ha senso, il messaggio proviene certamente

Dettagli

RSA: Calcolo della chiave privata

RSA: Calcolo della chiave privata . RSA: Calcolo della chiave privata 1 1. Come si cifra e come si decifra Sappiamo che RSA cifra dei numeri. Ad esempio prende il numero n e mediante il modulo di una potenza lo trasforma in c. c = n e

Dettagli

sia G un gruppo ciclico di ordine n, sia g un generatore di G

sia G un gruppo ciclico di ordine n, sia g un generatore di G logaritmo discreto sia G un gruppo ciclico di ordine n, sia g un generatore di G dato y 1 G bisogna determinare l unico intero x con 1 x n 1 tale che g x = y ex: in U(Z 9 ) con g = 2, se y = 7 si ha x

Dettagli

una possibile funzione unidirezionale

una possibile funzione unidirezionale una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile (vedremo poi) fattorizzare

Dettagli

CONGRUENZE. proprietà delle congruenze: la congruenza è una relazione di equivalenza inoltre: Criteri di divisibilità

CONGRUENZE. proprietà delle congruenze: la congruenza è una relazione di equivalenza inoltre: Criteri di divisibilità CONGRUENZE I) Definizione: due numeri naturali a e b si dicono congrui modulo un numero naturale p se hanno lo stesso resto nella divisione intera per p. Si scrive a b mod p oppure a b (p) proprietà delle

Dettagli

Compito di MD 13 febbraio 2014

Compito di MD 13 febbraio 2014 Compito di MD 13 febbraio 2014 IMPORTANTE: Non si possono consultare libri e appunti. Non si possono usare calcolatrici, computer o altri dispositivi elettronici. Non si può scrivere con il lapis. Motivare

Dettagli

Capitolo 5 Campi finiti

Capitolo 5 Campi finiti Capitolo 5 Campi finiti Definizione 5.1. Un campo finito K (cioè composto da un numero finito di elementi) si dice campo di Galois. Il numero dei suoi elementi si dice ordine e si denota con K. Un campo

Dettagli

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( ) ( )( ) ( )( )

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )( ) ( )( ) ( )( ) SOLUZIONI II ALLENAMENTO REGIONALE TEMATICO VENERDÌ 4 DICEMBRE 08 Quesito Siano due numeri interi primi tra loro tali che quanto vale? Sviluppando l espressione si ottiene quindi e e la soluzione è Quesito

Dettagli

L one-time pad o cifrario di Vernam (1917) è il crittosistema tale che P = C = K = (Z 2 ) m. è un crittosistema a segretezza perfetta

L one-time pad o cifrario di Vernam (1917) è il crittosistema tale che P = C = K = (Z 2 ) m. è un crittosistema a segretezza perfetta one-time pad L one-time pad o cifrario di Vernam (1917) è il crittosistema tale che P = C = K = (Z 2 ) m se k = (k 1, k 2,..., k m ) si ha e k (x 1, x 2,..., x m ) = (x 1 + k 1, x 2 + k 2,..., x m + k

Dettagli

r 2 r 2 2r 1 r 4 r 4 r 1

r 2 r 2 2r 1 r 4 r 4 r 1 SPAZI R n 1. Esercizi Esercizio 1. Stabilire quali dei seguenti sottoinsiemi sono sottospazi: V 1 = {(x, y, z) R 3 /x = y = z} V = {(x, y, z) R 3 /x = 4} V 3 = {(x, y, z) R 3 /z = x } V 4 = {(x, y, z)

Dettagli

Richiami sulla rappresentazione dei numeri in una base fissata

Richiami sulla rappresentazione dei numeri in una base fissata Silvia Bonettini - Appunti di Analisi Numerica 1 Richiami sulla rappresentazione dei numeri in una base fissata In questo capitolo si vogliono richiamare i concetti principali riguardanti la reppresentazione

Dettagli

DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA. (41 ore complessive di lezione)

DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA. (41 ore complessive di lezione) DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA DOCENTE: SANDRO MATTAREI (41 ore complessive di lezione) Prima settimana. Lezione di martedí 22 febbraio 2011 (due ore) Rappresentazione di numeri interi

Dettagli

3/10/ Divisibilità e massimo comun divisore

3/10/ Divisibilità e massimo comun divisore MCD in N e Polinomi 3/10/2013 1 Divisibilità e massimo comun divisore 1.1 Divisibilità in N In questa sezione introdurremo il concetto di divisibilità e di massimo comun divisore di due numeri naturali

Dettagli

Matematica Discreta e Algebra Lineare (per Informatica)

Matematica Discreta e Algebra Lineare (per Informatica) Matematica Discreta e Algebra Lineare (per Informatica) Docente: Alessandro Berarducci Anno accademico 2016-2017, versione 14 Marzo 2017 Tipiche domande d esame La seguente lista di domande non intende

Dettagli

SCOMPOSIZIONE IN FATTORI PRIMI:

SCOMPOSIZIONE IN FATTORI PRIMI: SCOMPOSIZIONE IN FATTORI PRIMI: 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 211 223 227 229

Dettagli

Esercizi svolti di aritmetica

Esercizi svolti di aritmetica 1 Liceo Carducci Volterra - Classi 1A, 1B Scientifico - Francesco Daddi - 15 gennaio 29 Esercizi svolti di aritmetica Esercizio 1. Dimostrare che il quadrato di un numero intero che finisce per 25 finisce

Dettagli

idea della crittografia a chiave pubblica

idea della crittografia a chiave pubblica idea della crittografia a chiave pubblica sviluppare un crittosistema in cui data la funzione di cifratura e k sia computazionalmente difficile determinare d k Bob rende pubblica la sua funzione di cifratura

Dettagli

Geometria per Fisica e Astrofisica

Geometria per Fisica e Astrofisica Geometria per Fisica e Astrofisica Soluzione esercizi - Foglio 3 Esercizio. Risolvere i seguenti sistemi lineari al variare dei parametri reali α β e k < < (a) x + y z = αx + αy + βz = x + y z = β. (b)

Dettagli

ALGEBRA I: SOLUZIONI TERZA ESERCITAZIONE 11 aprile 2011

ALGEBRA I: SOLUZIONI TERZA ESERCITAZIONE 11 aprile 2011 ALGEBRA I: SOLUZIONI TERZA ESERCITAZIONE 11 aprile 2011 Esercizio 1. Siano m e n due numeri interi positivi tali che m + n è un numero primo. Mostrare che m e n sono coprimi. Soluzione. Sia d = (m, n)

Dettagli

A =, c d. d = ad cb. c d A =

A =, c d. d = ad cb. c d A = Geometria e Algebra (II), 271112 1 Definizione D ora innanzi, al posto di dire matrice quadrata di tipo n n o matrice quadrata n n diremo matrice quadrata di ordine n o in breve matrice di ordine n Il

Dettagli

da chi proviene un messaggio?

da chi proviene un messaggio? da chi proviene un messaggio? in un crittosistema simmetrico solo Alice e Bob conoscono la chiave se Bob riceve un messaggio di Alice e la decifratura del messaggio ha senso, il messaggio proviene certamente

Dettagli

y + P(x) y + Q(x) y = 0 y(x) = c 1y 1(x) + c 2 y 2(x).

y + P(x) y + Q(x) y = 0 y(x) = c 1y 1(x) + c 2 y 2(x). Proposizione 4. Se y 1(x) e y (x) sono soluzioni linearmente indipendenti di y + P(x) y + Q(x) y = 0 ogni altra soluzione della stessa equazione si scrive nella forma per una scelta opportuna delle costanti

Dettagli

La codifica. dell informazione

La codifica. dell informazione 00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111

Dettagli

MATRICI E OPERAZIONI

MATRICI E OPERAZIONI MATRICI E SISTEMI MATRICI E OPERAZIONI Matrici, somma e prodotto (definizioni, esempi, non commutatività del prodotto, legge di annullamento del prodotto Potenze e inverse di matrici quadrate (definizioni

Dettagli

METODI E TECNOLOGIE PER L INSEGNAMENTO DELLA MATEMATICA. Lezione n 4 2016

METODI E TECNOLOGIE PER L INSEGNAMENTO DELLA MATEMATICA. Lezione n 4 2016 METODI E TECNOLOGIE PER L INSEGNAMENTO DELLA MATEMATICA Lezione n 4 2016 GLI INSIEMI NUMERICI N Numeri naturali Z : Numeri interi Q : Numeri razionali R : Numeri reali Q A meno di isomorfismi!!! R 5 π

Dettagli

Argomento 13 Sistemi lineari

Argomento 13 Sistemi lineari Sistemi lineari: definizioni Argomento Sistemi lineari Un equazione nelle n incognite x,, x n della forma c x + + c n x n = b ove c,, c n sono numeri reali (detti coefficienti) e b è un numero reale (detto

Dettagli

Teoria dei numeri e Crittografia: lezione del 9 gennaio L algoritmo del crivello quadratico di Pomerance.

Teoria dei numeri e Crittografia: lezione del 9 gennaio L algoritmo del crivello quadratico di Pomerance. Teoria dei numeri e Crittografia: lezione del 9 gennaio 2012 L algoritmo del crivello quadratico di Pomerance. Il maggior successo di questo algoritmo è stato, nel 1994, la fattorizzazione del numero RSA-129,

Dettagli

Esercizi di Geometria 1 - Foglio 3bis

Esercizi di Geometria 1 - Foglio 3bis Esercizi di Geometria - Foglio 3bis Alessandro Rubin (alex.rubin@outlook.com) Si ringrazia Ricardo Tzantzoglou per il codice L A TEX condiviso dicembre 7 Esercizio. Sia f : V W un applicazione e G = {(v,

Dettagli

UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE POLITICHE CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA

UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE POLITICHE CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE POLITICHE CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA II Parziale - Compito C 3/5/25 A. A. 24 25 ) Risolvere il seguente sistema

Dettagli

Problema 1 Sia data la seguente successione: n 1. i=1. Riscriviamo la successione nel seguente modo

Problema 1 Sia data la seguente successione: n 1. i=1. Riscriviamo la successione nel seguente modo Lezione - Algebra Problema Sia data la seguente successione: n a = 9, a n = 9 + a i a n R n N, n Determinare a 000. i= Riscriviamo la successione nel seguente modo n a n = 9 + a n + a i = 9 + a n + (a

Dettagli

Dal messaggio a sequenze di numeri

Dal messaggio a sequenze di numeri Dal messaggio a sequenze di numeri Le classi resto modulo n := Z n Due numeri interi a, b, si dicono congrui modulo n (con n intero >1) se divisi per n hanno lo stesso resto: a=bmodn a= kn+b a-b = kn con

Dettagli

RACCOLTA DI ALCUNI ESERCIZI TRATTI DA COMPITI D ESAME SUL SISTEMA CRITTOGRAFICO RSA

RACCOLTA DI ALCUNI ESERCIZI TRATTI DA COMPITI D ESAME SUL SISTEMA CRITTOGRAFICO RSA RACCOLTA DI ALCUNI ESERCIZI TRATTI DA COMPITI D ESAME SUL SISTEMA CRITTOGRAFICO RSA Attenzione: questi sono alcuni esercizi d esame, sugli argomenti di questa dispensa. Non sono una selezione di quelli

Dettagli

Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016.

Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016. Registro Lezioni di Algebra lineare del 15 e 16 novembre 2016 Di seguito si riporta il riassunto degli argomenti svolti; i riferimenti sono a parti del Cap8 Elementi di geometria e algebra lineare Par5

Dettagli

Rango di una matrice e teorema di Rouché-Capelli

Rango di una matrice e teorema di Rouché-Capelli Rango di una matrice e teorema di Rouché-Capelli Sappiamo che a una matrice m n, A, è associata l applicazione lineare L A : R n R m, L A (X) = AX, X R n. Definizione 1. Lo spazio nullo di A, N (A), è

Dettagli

Università del Piemonte Orientale

Università del Piemonte Orientale Compito di Algebra del 13 Gennaio 2009 1) Trovare l ordine di [11] 112 in Z 112. Si dica poi per quali valori di k si ha [11] k 112 [34] 112 = [31] 112. Soluzione. L ordine di [11] 112 è 12. k 12 8. 2)

Dettagli

Esercizi svolti. Geometria analitica: rette e piani

Esercizi svolti. Geometria analitica: rette e piani Esercizi svolti. Sistemi di riferimento e vettori. Dati i vettori v = i + j k, u =i + j + k determinare:. il vettore v + u ;. gli angoli formati da v e u;. i vettore paralleli alle bisettrici di tali angoli;

Dettagli

Geometria BAER Test di autovalutazione del 31/10/18

Geometria BAER Test di autovalutazione del 31/10/18 Geometria BAER Test di autovalutazione del 3//8 LEGGERE ATTENTAMENTE PRIMA DI ANDARE ALL INIZIO DEL TEST ALLA PAGINA SUCCESSIVA. NON LEGGERE LE DOMANDE PRIMA DI INIZIARE IL TEST Il test NON É VALUTATO

Dettagli

Matematica II

Matematica II Matematica II 241110 Matrice inversa 1 Per n 1, l insieme R n n delle matrici quadrate di ordine n diventa l insieme R dei numeri reali, e la moltiplicazione di matrici diventa la moltiplicazione di numeri

Dettagli

Compito di MD 1 0 aprile 2014

Compito di MD 1 0 aprile 2014 Compito di MD aprile 24 IMPORTANTE: Non si possono consultare libri e appunti. Non si possono usare calcolatrici, computer o altri dispositivi elettronici. Non si può scrivere con il lapis. Motivare in

Dettagli

Fondamenti di Matematica del discreto

Fondamenti di Matematica del discreto Fondamenti di Matematica del discreto M1 - Insiemi numerici 25 gennaio 2013 - Laurea on line Esercizio 1. Dire, motivando la risposta, se è possibile scrivere 3 come combinazione lineare di 507 e 2010,

Dettagli