Confidenzialità ed Integrità

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Confidenzialità ed Integrità"

Transcript

1 Confidenzialità ed Integrità Cenni di crittografia, hashing, firma digitale, metodi di autenticazione informatica per sistemi distribuiti 15/03/06 CRITT-1

2 Indice Confidenzialità Crittografia: algoritmi a chiave privata Crittografia: algoritmi a chiave pubblica Integrità Funzioni di hash Esempio di applicazione: la firma digitale Confidenzialità: tecniche di autenticazione Nozioni base Tecniche e sistemi di autenticazione CRITT-2

3 Che cos è la crittografia? La crittografia (dal greco kryptos, nascosto, e graphein, scrivere) è la scienza che si occupa dello studio delle scritture segrete. E nata come branca della matematica e dell informatica grazie all utilizzo di tecniche di teoria dei numeri e di teoria dell informazione. E entrata a far parte della nostra vita quotidiana per la protezione delle informazioni digitali. Dalle smart card, ai cellulari, alle trasmissioni via Internet, alle tv satellitari, etc. CRITT-3

4 Origini storiche La crittografia è una scienza antichissima nelle società primitive qualunque tipo di scrittura è di per sé magico e segreto. La scitala lacedemonica è un antico esempio di un sistema per cifrare messaggi tramite l utilizzo di un bastone cilindrico (secondo gli scritti di Plutarco, in uso dai tempi di Licurgo, IX sec a.c.). Medioevo, con Gabriele Lavinde (che scrisse un manuale nel 1379, conservato ancora in Vaticano), in Francia all epoca del cardinale Richelieu con Antonio Rossignol e soprattutto in Italia con L.B.Alberti, G.B.Porta, G.B.Bellaso, G.Cardano. CRITT-4

5 Origini storiche (2) All inizio del secolo durante la prima guerra mondiale con il generale Luigi Sacco, dell esercito italiano, che scrisse il famoso Nozioni di crittografia (1925). Il periodo d oro della crittologia è senza alcun dubbio quello della seconda guerra mondiale quando Alan Turing, il padre dell informatica teorica, insieme al gruppo di ricerca del Bletchley Park formalizzò la matematica necessaria per uno studio sistematico dei cifrari. Claude Shannon, l ideatore della moderna teoria dell informazione, che nel 1949 pubblicò un articolo rimasto nella storia Communication theory of secrecy systems. CRITT-5

6 Origini storiche (3) Enigma: la più famosa macchina crittografica della seconda guerra mondiale. Nasce in Inghilterra il primo elaboratore elettronico (Colossus) utilizzato per decifrare le comunicazioni segrete dei nemici. CRITT-6

7 Concetto di base Per sistema crittografico si intende un sistema in grado di cifrare e decifrare un messaggio attraverso l uso di un algoritmo (metodo di calcolo) e di una chiave (una stringa segreta alfanumerica). Il messaggio che dovrà essere cifrato viene chiamato testo in chiaro (plaintext plaintext) mentre il risultato dell algoritmo crittografico testo cifrato (ciphertext ciphertext). Testo in chiaro Testo cifrato Sistema crittografico CRITT-7

8 Principio di Kerckhoffs Un principio fondamentale della crittologia moderna afferma che: La sicurezza di un crittosistema non deve dipendere dalla segretezza dell algoritmo usato, ma solo dalla segretezza della chiave Pubblicato nel 1883 nel libro La criptographie militarie Quasi tutti gli algoritmi crittografici moderni vengono rilasciati con i codici sorgenti CRITT-8

9 Crittografia simmetrica e asimmetrica Fondamentalmente i sistemi crittografici si dividono in due tipologie: Sistemi crittografici Sistemi simmetrici Si utilizza una sola chiave per cifrare e decifrare Sistemi asimmetrici Si utilizzano una coppia di chiavi: una per cifrare e l altra per decifrare CRITT-9

10 I cifrari simmetrici Utilizzano la stessa chiave per cifrare (encryption) e decifrare (decryption) i messaggi Per questo sono detti anche a chiave singola o a chiave segreta Hanno il problema della trasmissione della chiave tra mittente e destinatario. CRITT-10

11 Crittografia simmetrica mittente destinatario P testo in chiaro K Chiave segreta testo in chiaro cifratura C=E (P) K decifratura P= D K(C) E K D K Testo Cifrato rete insicura CRITT-11

12 Primo ingrediente: sostituzione Si rimpiazza ogni carattere del messaggio con un altro carattere Esempio (Cifrario di Cesare): ogni lettera viene sostituita con quella che la segue di n posizioni ABCDEFGHIJKLMNOPQRSTUVWXYZ XYZABCDEFGHIJKLMNOPQRSTUVW Esempio: la parola SICUREZZA diventa VLFXUHCCD La chiave, che deve essere tenuta segreta, è n=3 CRITT-12

13 Secondo ingrediente: trasposizione o diffusione i caratteri del messaggio vengono cambiati di posizione in base all algoritmo ed al valore della chiave esempio: invertendo righe e colonne della matrice contenente il testo in chiaro (chiave K=[3,5]) C I A O CIAO A TUTTI (per righe) si trasmette per colonne CATI IAT OU T A T I T U T CRITT-13

14 Keyspace, attacco a forza bruta Attacco a forza bruta o bruteforcing : provare tutte le chiavi possibili È applicabile ad ogni algoritmo: un algoritmo non rotto è attaccabile solo con un attacco di bruteforcing La praticabilità dell'attacco dipende dal numero di chiavi possibili (ovvero dalla dimensione del cosiddetto keyspace ) Per questo l'algoritmo di Cesare era più semplice di quello con la matrice! Dimensione misurata generalmente in bit, tempo esponenziale sul numero dei bit: l aumento della potenza di calcolo degli elaboratori e il possibile utilizzo di sistemi distribuiti rende necessario ingrandire il keyspace CRITT-14

15 Cifrari simmetrici moderni Nella crittografia moderna vengono utilizzati cifrari che mescolano trasposizione e sostituzione! I più conosciuti ed utilizzati cifrari simmetrici: Feistel (1973) DES (Data Encryption Standard, 1977), 3DES IDEA (1991) BlowFish (1993) RC5 (1994) CAST-128 (1997) Rijndael (nel 2000 diventa AES, Advanced Encryption Standard) CRITT-15

16 Cifrari di Feistel XOR 2n bit di plaintext n bit Round 1 K 1 F n bit L 0 R 0 L 1 R 1 Inputs to next round F: round function K 1 : round subkey, derivata dalla chiave principale K mediante una funzione di scheduling Decifratura: stesso schema applicato in ordine inverso CRITT-16

17 Tipi di cifrari simmetrici Block cipher (cifrari a blocco) Processano il plaintext a blocchi di dimensione fissa Può essere necessario aggiungere padding Esempi: DES, RC2, Blowfish, AES Stream cipher (cifrari a flusso) Processano il plaintext bit per bit Usano la chiave per generare un flusso pseudocasuale di dati che viene XORato con il plaintext XOR (indicato con ): 0 0 = 1 1 = 0 ; 1 0 = 0 1 = 1 Somma modulo 2 Lo XOR è invertibile: (x y) y = x Esempi: RC4, SNOW 2.0 CRITT-17

18 Modi per la crittografia a blocchi Utilizzo a blocchi Electronic codebook (ECB): ogni blocco processato da solo Cipher block chaining (CBC): l'output del blocco n viene XOR-ato al blocco n+1 prima della cifratura Stream cipher simulations Output feedback (OFB): l'output dell'algoritmo viene passato come input per generare il successivo blocco di finto keystream Counter (CTR): l'input dell'algoritmo è un contatore progressivo, l'output viene usato come keystream CRITT-18

19 Modi per l'utilizzo a blocchi ECB non va mai usato Plaintext uguali si cifrano a ciphertext uguali Questo fa filtrare informazioni! CBC è la scelta giusta Ci EK(Pi Ci-1) In questo modo, blocchi di plaintext identici si cifrano in blocchi diversi Per il primo blocco di solito si usa un initialisation vector (IV) random, che viene comunicato in chiaro al ricevente in testa al messaggio CRITT-19

20 Modalità CTR Cifriamo un contatore in modalità ECB per generare un keystream, che viene XORato con il plaintext Ki EK(nonce i) for i = 1,2,,n Ci Pi Ki Nonce ( number used once ) è tipicamente il numero del messaggio + dati casuali E' un sistema sicuro, a patto che la coppia {key,nonce} non venga più riutilizzata CRITT-20

21 DES: Data Encryption Standard, NBS, USA, 77 plain text P blocchi da 64 bit chiave segreta K (56 bit) blocchi da 64 bit E K blocco di testo in chiaro cifratura blocco di testo cifrato C=E (P) K Nato nel 1970, progetto IBM S-Box ritoccate da NSA : standard del governo americano Algoritmo simmetrico a blocco (blocchi di 64 bit, chiavi di 56 bit) Modo Cipher Block Chaining 16 iterazioni (round) su ogni blocco, con operazioni di permutazione, sostituzione e XOR Si può implementare sia in sw che in hw cifratura a chiave segreta di 56 bit, 2 56 combinazioni CRITT-21

22 Cracking DES Time (hours) EFF DES Cracker $250,000 DES Cracker + distributed.net (100,000 PCs) CRITT-22

23 Key Security Years to crack 1E+63 1E+57 1E+51 1E+45 1E+39 1E+33 1E+27 1E+21 1E+15 1E ,001 (assumes 10 6 decryptions per μs) age of the universe Key size (bits) CRITT-23

24 triple DES: sequenza di 3 DES plain text P blocchi da 64 bit blocco di testo in chiaro blocco di testo in chiaro plain text P blocchi da 64 bit chiave K 1 cifratura decifratura chiave K 1 chiave K 2 decifratura cifratura chiave K 2 chiave K 1 cifratura rete insicura testo cifrato decifratura chiave K 1 CRITT-24

25 AES: Advanced Encryption Standard : NIST, gara per sostituire il DES con un nuovo algoritmo viene scelto Rijndael (di J.Daemen e V.Rijmen) Input/output: blocchi da 128, 192 o 256 bit Chiavi: 128, 192 o 256 bit (non necessariamente come il blocco) Efficiente in hw e in sw, libero da brevetti, distribuibile liberamente in tutto il mondo CRITT-25

26 Crittografia simmetrica: come? Java2 package javax.crypto DES, 3DES, Blowfish, AES ECB, CBC, CFB, OFB.NET Framework System.Security.Cryptography Come il package Java (RC2 e non Blowfish) OpenSSL ( Libreria crittografica in C DES, 3DES, Blowfish, AES, CAST, IDEA, RC2, RC5 Include il tool openssl (command-line) CRITT-26

27 Crittografia asimmetrica Di recente scoperta: 1976, da due ricercatori W.Diffie e M.Hellmann della Stanford University. Ogni persona ha due chiavi corrispondenti: una privata (nota solo a lui), una pubblica (nota a tutti) Le due chiavi si corrispondono, ma non sono ricavabili l'una dall'altra Asimmetrico significa che quanto cifrato con la chiave pubblica può essere decifrato soltanto con la corrispondente chiave privata, e viceversa Detti anche a doppia chiave, a chiave pubblica, a chiavi asimmetriche Per usare la crittografia a chiave pubblica non è necessario scambiarsi una chiave in modo sicuro CRITT-27

28 Caratteristiche fondamentali Facile cifrare un testo P, data la chiave pubblica K + Facile decifrare un testo cifrato C, data la chiave privata K Computazionalmente impossibile ricavare la chiave K, data K + Computazionalmente impossibile ricavare P, dati K + e C Concetto di base: Concetto di base: usiamo un problema facile da risolvere in un senso, ma difficile nel senso opposto (one-way trap door) CRITT-28

29 I più usati cifrari asimmetrici Attualmente i più utilizzati cifrari asimmetrici sono: RSA (1977, Ron Rivest, Adi Shamir, Len Adleman) Diffie-Hellman (1976) DSS (1991, FIPS PUB 186) ECC (IEEE P1363, Crittografia delle curve ellittiche) CRITT-29

30 Scambio di chiavi Poiché introduce molto overhead, la crittografia a chiave pubblica viene usata per concordare tra le due parti una chiave segreta su un canale di comunicazione non sicuro Alcuni algoritmi a chiavi asimmetriche sono esclusivamente di scambio di chiavi (es. Diffie- Hellman) CRITT-30

31 Diffie Hellman: scambio di chiavi usato per concordare tra due soggetti A e B una chiave segreta su un canale insicuro (spesso usata come chiave di sessione da algoritmi di livello superiore) Problema-trappola: logaritmo modulare In aritmetica ordinaria se y=a x il calcolo di x=log a y è banale Noti x, a, p è facile calcolare y=a x mod p N.B. p mod q è il resto della divisione p/q In aritmetica modulare se è y = a x mod p il calcolo di x è molto difficile; cioè, noti y, a, p è molto difficile trovare x tale che sia y= a x mod p CRITT-31

32 Diffie Hellman: l'algoritmo p:num.primo, a:radice primitiva di p, noti, pubblici A --> B la sua chiave pubblica Y (Y = A A ax A mod p) ottenuta usando la sua chiave privata X A segreta B --> A la sua chiave pubblica Y (Y = B B ax B mod p) ottenuta usando la sua chiave privata X B segreta A calcola K A = (Y B )X A mod p B calcola K B = (Y A )X B mod p K A = (Y B )X A = (a x B ) XA = (a X A ) XB = (Y A )X B = K B!!!!! K condivisa si ottiene (p riv A+p ubb B) o (p riv B+p ubb A) noti Y e Y A B per ottenere la chiave K bisogna conoscere X e X A B, cioè calcolare un log impossibile CRITT-32

33 Diffie Hellman: esempio didattico p = 7 : numero primo, pubblico X numero scelto nell insieme (1, 2,..., p-1), segreto a = 3 : radice primitiva di p, pubblica, cioè a x mod p = (1, 2,..., p-1) 3 x mod 7 = 1, 2,..., 6 X (1,2,..., 6) 3 1 mod7=3, 3 2 mod7=2, 3 3 mod7=6, 3 4 mod7=4, 3 5 mod7=5, 3 6 mod7=1 A: X A =3 segreto, Y A = a x A mod p = 3 3 mod 7 = 6 B: X B =1 segreto, Y B = a x B mod p = 3 1 mod 7 = 3 A invia a B Y A =6, B invia a A Y B =3 uguali A calcola K = (Y B ) x A mod p = (3) 3 mod 7 = 6 B calcola K = (Y A ) x B mod p = (6) 1 mod 7 = 6 CRITT-33

34 chiave pubblica RSA Cambia il problema-trappola Dati due primi p e q è facile calcolare n=pq Dato n molto grande non esiste un algoritmo efficiente per (i.e. è praticamente impossibile) ottenere p e q Si sfruttano alcune proprietà dell'aritmetica modulare e dell'esponenziazione CRITT-34

35 chiave pubblica (e privata): RSA scegliere due numeri primi (molto grandi) p e q (esempio didattico p=3 e q=11) calcolare n = p x q = 33 e z = (p - 1) (q - 1) = 20 z si chiama toziente di Eulero scegliere d relativamente primo con z (d=7) trovare e tale che e x d = 1 (mod z) e = 3 chiave pubblica (e,n)(3,33)-chiave privata (d,n)(7,33) C = P 3 (mod 33) P = C 7(mod 33) CRITT-35

36 RSA: esempio I caratteri usati devono essere meno di 33 (5 bit) testo crittografato usa 3 inviato in rete usa testo cod 3 C = P C P 7 P mod(33) C P Z Z A A N N N N E E mod(33) testo CRITT-36

37 Come attaccare RSA? Brute-force su tutte le possibili chiavi Le chiavi devono essere larghe a sufficienza da evitarlo, ma più grandi sono, più è lenta l'esponenziazione! Determinare i fattori primi di n In questo modo basta calcolare z per ottenere d da e Per n grande, questo problema è insolubile 1994: Fattorizzazione di 129 cifre (428 bit) con 8 mesi di cicli CPU spare di 1600 PC 1999: 155 cifre (512 bits) fattorizzate Una chiave sicura oggi è 1024 bit CRITT-37

38 Integrità Cenni introduttivi alle funzioni di hashing CRITT-38

39 Message Digest Per verificare l'integrità di un file (testo) si fa uso di un message digest Il digest è il prodotto di una funzione matematica deterministica applicata al testo (one-way hash function) Qualsiasi cambiamento, anche di un solo bit, nel documento produce un cambiamento nel digest In media, cambiando 1 bit, cambia il 50% dei bit del digest Due diversi messaggi generano due digest diversi Non è del tutto vero (i messaggi sono di più degli hash) La probabilità che due diversi messaggi generino lo stesso digest è trascurabile Dal digest di una buona funzione di hashing è praticamente impossibile risalire al testo del documento che l ha generato o, equivalentemente, generare un documento che abbia lo stesso hash CRITT-39

40 Message Digest: esempi Esempio di digest MD5: Ciao --> 16272a5dd83c63010e9f e871 ciao --> 6e6bc4e49dd477ebc98ef4046c067b5f Yesterday, all my troubles seemed so far away --> bc1cedea3dce fa16c1178fc16 Le funzioni di hashing sono deterministiche: lo stesso messaggio produce sempre lo stesso digest CRITT-40

41 Caratteristiche di una Hash Function È una funzione H che produce un output di lunghezza fissa da un input di lunghezza arbitraria Per ogni x, H(x) dev'essere facile da calcolare È computazionalmente infattibile: Trovare x t.c. H(x) = h, uno specifico digest Trovare y t.c. y x e H(y) = H(x), con x dato Determinare facilmente delle coppie {x,y} t.c. H(x) = H(y) Quest'ultima proprietà si chiama collision-free property CRITT-41

42 Secure Hash Algorithm SHA-1 standard dal 1995 migliora MD4 e MD5, che non erano più considerate computazionalmente sicure Input: messaggio fino a 2 64 bit di lunghezza, processato a blocchi da 512 bit Output: un message digest di 160 bit, ma esistono versioni che generano output da 256, 384 e 512 bit MD5: processa il testo in blocchi da 512 bit, lunghezza del digest 128 bit CRITT-42

43 SHA-1 512n bits M (L bits in length) padding L 512 bits B 0 B 1 B i B n bit IV H S H S 160 bits H S H S HA HA HA HA compression function message digest CRITT-43

44 Problemi negli algoritmi di hash Questa estate sono stati individuati dei problemi in alcune funzioni di hash Collisioni arbitrarie su SHA-0 Collisioni semplificate su MD-5 Collisioni su SHA-1 con round dimezzati Tradotto: SHA-0 è morto, MD-5 è ferito e SHA-1 non si sente troppo bene... Poche settimane fa, collisioni arbitrarie su SHA-1 senza ranghi ridotti in 2 69 operazioni invece di per colpa del birthday paradox (2 n/2 ) Se la funzione di hash consente collisioni arbitrarie, si possono forgiare documenti finti corrispondenti all'hash dato! Non è però detto che tali documenti finti abbiano significato CRITT-44

45 Cenni di crittoanalisi Come vengono rotti gli algoritmi di crittografia CRITT-45

46 La crittoanalisi La scienza che si occupa dell analisi e della validità degli algoritmi crittografici Analizzando il contenuto di un testo cifrato, attraverso tecniche statistico/matematiche si possono ottenere informazioni sul testo in chiaro Per fortuna ciò non è sempre possibile, la maggior parte dei cifrari moderni è ancora al sicuro da tecniche di crittoanalisi La matematica ci dice che esiste un unico cifrario inviolabile... CRITT-46

47 Modello Matematico Generazione di messaggi ~ Processo stocastico M = variabile aleatoria che modella la scelta di m C = variabile aleatoria relativa alla spedizione dei crittogrammi c K = variabile aleatoria che modella la scelta della chiave segreta k Caratteristiche del processo dipendono dal mittente Frequenza delle singole lettere nella lingua italiana Frequenza dei digrammi nella lingua italiana Frequenza degli n-grammi nella lingua italiana CRITT-47

48 Cos è un cifrario perfetto? P(M = m) = probabilità che Mitt voglia spedire a Dest il messaggio m [probabilità a priori] P(M=m C = c) = probabilità che Mitt abbia spedito m a Dest dato che sul canale viaggia c [probabilità a posteriori] L intruso X conosce: La probabilità a priori con cui i messaggi sono spediti La funzione di cifratura e decifrazione Gli è sconosciuta solo la chiave segreta k Un cifrario si definisce perfetto se e solo se P(M=m C = c) = P(M = m) CRITT-48

49 Un primo risultato interessante! Teorema: In un cifrario perfetto, il numero delle chiavi deve essere maggiore o uguale al numero di messaggi possibili. Dimostrazione (sintetica): Sicuramente abbiamo Critto Msg. Inoltre per ogni messaggio m si ha che P(M = m) > 0. Sia per assurdo Keys < Msg, allora si ha che Keys < Critto. Preso un messaggio m, deve esistere c m che non è immagine di m. Se X vede viaggiare c m sul canale, allora il messaggio non è m. In particolare, ciò significa che: P(M=m C = c) = 0 [ P(M = m) ] CRITT-49

50 One-time pad È uno stream cipher perfetto e minimale XOR tra messaggio m e una chiave k casuale lunga quanto m (n bit) Idem all'altro lato per decriptare Minimale in quanto Keys = Msg Perfetto perchè si ha che: P(M = m C = c) = P(M=m,C=c)/P(C=c) P(M=m,C=c) = P(M=m, C=c, K=k m,c ) = = P(C=c M=m,K=k m,c )* P(M=m K=k m,c )*P(K=k m,c ) = 1 * P(M=m) * (1/2) n P(C=c) = Σ m P(C=c, M=m) =Σ m P(M=m)*(1/2) n =(1/2) n P(M = m C = c) = P(M=m)*(1/2) n /(1/2) n =P(M=m) CRITT-50

51 Le basi della crittoanalisi Qualsiasi sistema crittografico si avvicina a un onetime pad, ma non è inviolabile L attacco ad un sistema crittografico ha l obiettivo di forzare il sistema in un tempo inferiore a quello di un attacco brute-force (sempre possibile) Il livello di pericolosità dell'attacco dipende dalle informazioni in possesso del crittoanalista Cipher Text Attack (il crittoanalista è in possesso di soli alcuni crittogrammi) Known Plain-text Attack (il crittoanalista è venuto a conoscenza di una serie di testi in chiaro e di crittogrammi) Chosen Plain-Text Attack (il crittoanalista ha scelto una serie di testi in chiaro e di crittogrammi) CRITT-51

52 La crittoanalisi statistica Tramite l utilizzo di tecniche statistiche sulla frequenze dei caratteri o sottostringhe del testo cifrato si ottengono informazioni utili sul testo in chiaro. Ad esempio con il cifrario di Cesare effettuando una semplice analisi statistica delle lettere contenute nel testo cifrato e confrontando i risultati con le frequenze assolute dell alfabeto della lingua italiana posso ricostruire il messaggio originale. CRITT-52

53 La crittoanalisi statistica CRITT-53

54 Esempio di crittoanalisi statistica Analizzando la frequenza delle lettere del testo cifrato surbd gn zudvpnvvnrqh ne escono i seguenti risultati: s (1/19), u (2/19), r (2/19), b (1/19), d (2/19), g (2/19), n (3/19), z (1/19), v (3/19), p (1/19), h (1/19). Le lettere con maggiore frequenza risultano essere la n e la v con frequenza 3/19 ed a seguire la u, la r, la d, la g con frequenza 2/19. Associo a queste lettere le più frequenti corrispondenti all alfabeto italiano nel grafico visto in precedenza. Provando con la combinazione d=a, n=i, u=r, r=o si ottiene il seguente testo parzialmente decifrato: sroba gi zravpivvioqh con una certa fantasia ed abilità linguistica (un po come avviene nei giochi di enigmistica o nei quiz televisivi alla Mike Buongiorno) già in questa frase si potrebbe ottenere il testo in chiaro prova di trasmissione. CRITT-54

55 Possibili tecniche di attacco reali Crittanalisi statistica: basata sulle distribuzioni dei caratteri, ma più complessa nei casi reali dei cifrari moderni: bisogna ricostruire i meccanismi di diffusione Crittoanalisi lineare: si cercano relazioni lineari tra bit dell'output e bit dell'input Se troviamo una relazione che regge in più del 50% dei casi, detta p =.5 + 1/M la probabilità, ricostruiremo la chiave con M^2 messaggi Crittoanalisi differenziale: si cercano relazioni tra gli xor bit-a-bit di testi in chiaro diversi e dei corrispondenti testi cifrati CRITT-55

56 La sicurezza della crittografia La sicurezza di un sistema crittografico è basato sulla robustezza dell algoritmo. Le tecniche di crittoanalisi diventano sempre più sofisticate grazie anche all aumento della potenza di calcolo dei computer. Solo con la condivisione delle informazioni e delle specifiche tecniche degli algoritmi crittografici si può ottenere sicurezza. La filosofia open source è di vitale importanza per il settore crittografico. La storia ci insegna che gli algoritmi segreti sono quelli più insicuri. Gli algoritmi crittografici più importanti ed utilizzati da tutti devono essere di pubblico dominio, non ci possiamo fidare delle black box. Sicurezza = Trasparenza. CRITT-56

57 Guardando il problema nella prospettiva giusta... You have probably seen the door to a bank vault 10-inch thick, hardened steel, with large bolts We often find the digital equivalent of such a vault door installed in a tent. The people standing around it are arguing over how thick the door should be, rather than spending their time looking at the tent. (Niels Ferguson & Bruce Schneier, Practical Cryptography) CRITT-57

58 Scenari d'uso Combinare queste tecniche per ottenere dei risultati CRITT-58

59 scenario 1: autenticazione mittente + integrità dei dati, no confidenzialità mittente testo in chiaro cifratura chiave privata mittente chiave pubblica mittente testo cifrato rete insicura destinatario testo in chiaro decifratura CRITT-59

60 scenario 2: confidenzialità, no autenticazione mittente, no integrità mittente testo in chiaro cifratura chiave pubblica ricevente chiave privata ricevente testo cifrato rete insicura destinatario testo in chiaro decifratura CRITT-60

61 Firma digitale La firma digitale di un documento garantisce: l integrità del testo l identità del suo autore documento firma di lunghezza variabile di lunghezza fissa Si protegge il digest, operazione meno onerosa della protezione dell intero messaggio CRITT-61

62 Uso della Firma Digitale Mittente testo messaggio hash function digest crittaz. testo messaggio firma digitale Chiave PRIVATA mittente Autenticazione mittente Integrità messaggio Riservatezza messaggio Non ripudio (mittente) confronto Chiave PUBBLICA destinatario crittazione hash function digest digest Ricevente Internet decrittazione testo messaggio firma digitale decrittaz. Chiave PRIVATA destinatario Chiave PUBBLICA mittente CRITT-62

63 Sistemi Ibridi: PGP (Pretty Good Privacy) CRITT-63

64 Sistemi Ibridi: PGP (Pretty Good Privacy) CRITT-64

65 Bibliografia Applied Cryptography, 2 ed., B. Schneier, Wiley editore Sicurezza delle reti - Applicazioni e standard di William Stallings, Addison-Wesley Editore Crittografia di Andrea Sgarro, Franco Muzzio Editore. Segreti, Spie e Codici Cifrati di C.Giustozzi, A.Monti, E.Zimuel, Apogeo Editore. Codici & Segreti di Simon Singh, Rizzoli Editore. CRITT-65

66 Autenticazione CRITT-66

67 Nozioni di base Identificazione Chi sei? Usualmente dichiarativa (l'utente fornisce il proprio ID) Autenticazione Come verificare che la tua identità è vera? Tecniche per verificare in modo affidabile l'id dichiarato da un'entità Autorizzazione Sei autorizzato ad effettuare questa operazione? Tecniche per concedere il diritto di effettuare alcune specifiche operazioni su particolari asset. Esempi: Read, Write, Append, Lock, Execute Creare nuovi file, modificare file esistenti, rinominare file, Stabilire lo scoperto massimo, effettuare ordini, approvare di pagamenti, CRITT-67

68 Paradigmi di Autenticazione tre principali paradigmi utilizzati per autenticare One-way: il client autentica se stesso al server (che si assume avere un identità valida) È il paradigma più diffuso Two-way: il client ed il server si autenticano reciprocamente Trusted Third-Party Trusted Third-Party: si utilizza una terza entità esterna (anch essa un server) considerata affidabile sia dal client che dal server affinchè autentichi entrambe CRITT-68

69 Tecnologie per l Autenticazione Ciò che si sa Password PIN Ciò che si ha Smart card Token/One-time password Certificati digitali Ciò che si è Ciò che si è Viso, iride, retina, impronte digitali, geometria della mano, voce CRITT-69

70 Password: problemi Intercettazione di password trasmesse in rete Furto di password: un altro utente può usare le mie credenziali per compiere attività illecite o criminose Condivisione di password fra più utenti Perdita del controllo di responsabilità Scrivere le password e tenerle in vista (Post-It ) Semplifica enormemente il furto di password Password guessing Brute force: si cerca di individuare la password provando TUTTE le possibili combinazioni di caratteri Dictionary-based: si cerca di individuare la password prendendola da un insieme di parole più probabili (dizionario) CRITT-70

71 Password: il Keyspace (1) La robustezza crittografica di una pwd dipende dal keyspace Una pwd è robusta (strong) se il tempo stimato per individuarla è maggiore del tempo di vita della password stessa La robustezza di una pwd diminuisce col tempo perchè la velocità delle macchine usate per il crack aumenta Keyspace: numero di codici (crt) possibili Maiuscoli 26 possibilità per posizione Maiuscoli e minuscoli (case-sensitive) 52 possibilità/posizione Numeri: si aggiungono altre 10 possibili scelte Caratteri speciali! /$%?&*()_+#\@-=:;~{}[] l aumento dipende da quanti sono ammessi CRITT-71

72 Password: il Keyspace (2) Il Keyspace è una funzione della posizione (P) e delle possibili scelte per ogni posizione (C i ) Se le ripetizioni sono permesse C è costante: P posizioni con C scelte per posizione C P pwd possibili Se le ripetizioni non sono ammesse, c è una scelta in meno per ogni posizione successiva: C(C-1)(C-2)... (C-P+1) or C!/P! possibilità CRITT-72

73 Token generatori di one-time password creano una password ogni 1-3 minuti, in una sequenza cifrata basata sul token e sul tempo il software sul server verifica che la sequenza corrisponda con il momento, il token ID, e l utente assegnato Smart card un microprocessore interagisce con il reader si stabilisce l identità e l autenticità della smart card mediante protocolli challenge-response delle tabelle correlano il token con l utente CRITT-73

74 Indici biometrici Impronte digitali Geometria della mano Viso Iride Retina Voce CRITT-74

Confidenzialità ed Integrità

Confidenzialità ed Integrità Confidenzialità ed Integrità Cenni di crittografia, hashing, firma digitale, metodi di autenticazione informatica per sistemi distribuiti 12/05/06 CRITT-1 Indice Confidenzialità Crittografia: algoritmi

Dettagli

Introduzione alla crittografia ed alla crittoanalisi

Introduzione alla crittografia ed alla crittoanalisi Introduzione alla crittografia ed alla crittoanalisi di Enrico Zimuel Italian Cyberspace Law Conference 2001 Bologna 29 Novembre 2001 Note sul copyright: Questa presentazione può essere utilizzata liberamente

Dettagli

Sicurezza della comunicazione tra due entità. Prof.ssa Gaia Maselli

Sicurezza della comunicazione tra due entità. Prof.ssa Gaia Maselli Sicurezza della comunicazione tra due entità Prof.ssa Gaia Maselli maselli@di.uniroma1.it La sicurezza nelle reti Principi di crittografia Integrità dei messaggi Autenticazione end-to-end 2 Sicurezza nella

Dettagli

Cifrari Storici. Prologo. Cifrario di Cesare. x mod 26. Motivazioni: Crittografia manuale Sono note tecniche statistiche per forzarli!

Cifrari Storici. Prologo. Cifrario di Cesare. x mod 26. Motivazioni: Crittografia manuale Sono note tecniche statistiche per forzarli! Prologo Motivazioni: Cifrari Storici Scopi educativi: concetti, tecniche di base, Divertimento: settimana enigmistica Crittografia manuale Sono note tecniche statistiche per forzarli! Nota: Messaggi e

Dettagli

Crittografia per la sicurezza dei dati

Crittografia per la sicurezza dei dati Crittografia per la sicurezza dei dati Esigenza di sicurezza in rete significa: -garanzia di riservatezza dei dati in rete (e-mail) -garanzia di transazioni sicure (e-commerce, home banking) La crittografia

Dettagli

cifrario di Feistel cifrario di Feistel

cifrario di Feistel cifrario di Feistel cifrario di Feistel Horst Feistel (IBM) ha introdotto uno schema di cifrario nei primi anni 70. Il DES è un cifrario di Feistel. La cifratura e la decifratura funzionano essenzialmente allo stesso modo.

Dettagli

CRITTOGRAFIA: introduzione

CRITTOGRAFIA: introduzione CRITTOGRAFIA: introduzione Crittografia "Crittografia scrittura nascosta "Studio di tecniche matematiche sofisticate per "mascherare i messaggi "o tentare di svelarli. Scenario "Due mondi in contrapposizione:

Dettagli

Definizione. La crittografia serve per: Crittografia deriva dal greco = scrittura nascosta

Definizione. La crittografia serve per: Crittografia deriva dal greco = scrittura nascosta Crittografia Definizione La crittografia serve per: Celare il significato del messaggio Garantire l autenticità del messaggio Identificare l autore del messaggio Firmare e datare il messaggio Crittografia

Dettagli

Pr(x y) = Pr(x) si può riformulare questa definizione in termini di indistinguibilità x 0, x 1 P e y C, scelta in modo casuale una chiave k K

Pr(x y) = Pr(x) si può riformulare questa definizione in termini di indistinguibilità x 0, x 1 P e y C, scelta in modo casuale una chiave k K segretezza perfetta un crittosistema CS=(P, C, K, E, D) è a segretezza perfetta se x P e y C Pr(x y) = Pr(x) si può riformulare questa definizione in termini di indistinguibilità x 0, x 1 P e y C, scelta

Dettagli

Converte una chiave di al più 14 word a 32 bit (K-array) in un array di 18 sottochiavi a 32 bit (P-array) Genera 4 S-box, ognuna con 256 word a 32 bit

Converte una chiave di al più 14 word a 32 bit (K-array) in un array di 18 sottochiavi a 32 bit (P-array) Genera 4 S-box, ognuna con 256 word a 32 bit % RC2 [1989] IDEA (International Data Encryption Algorithm) [1990] Blowfish [1993]!"###"$ SAFER (Secure And Fast Encryption Routine) SAFER K-64 [1994], SAFER K-128 [1995] cifrario bit chiave bit testo

Dettagli

Corso di Qualità del Servizio e Sicurezza nelle reti A.A. 2014/2015. Lezione del 11 Maggio 2015

Corso di Qualità del Servizio e Sicurezza nelle reti A.A. 2014/2015. Lezione del 11 Maggio 2015 Corso di Qualità del Servizio e Sicurezza nelle reti A.A. 2014/2015 Lezione del 11 Maggio 2015 1 Crittografia Scienza antichissima: codificare e decodificare informazione Tracce risalenti all epoca di

Dettagli

cifrario di Feistel cifrario di Feistel

cifrario di Feistel cifrario di Feistel cifrario di Feistel Horst Feistel (IBM) ha introdotto uno schema di cifrario nei primi anni 70. il DES è un cifrario di Feistel molti cifrari a blocchi sono cifrari di Feistel - per esempio i due finalisti

Dettagli

Informatica. Crittografia. La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice

Informatica. Crittografia. La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice Informatica Università degli Studi di Napoli Federico II Prof. Ing. Guglielmo Toscano La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice Viene utilizzata per assicurare

Dettagli

Stream cipher. Cifrari simmetrici. Stream cipher. Sicurezza su reti I cifrari simmetrici possono essere: Cifrari a blocchi: Stream Cipher:

Stream cipher. Cifrari simmetrici. Stream cipher. Sicurezza su reti I cifrari simmetrici possono essere: Cifrari a blocchi: Stream Cipher: Stream cipher Barbara Masucci Dipartimento di Informatica Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Cifrari simmetrici I cifrari simmetrici possono essere: Cifrari

Dettagli

crittosistemi a flusso

crittosistemi a flusso crittosistemi a flusso Prendiamo Z 2 come alfabeto; in un cifrario a flusso, il testo in chiaro x = x 1 x 2... viene cifrato bit per bit con la chiave k = k 1, k 2,... per ottenere il testo cifrato. Nell

Dettagli

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Intercettazione dei dati. Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Intercettazione dei dati. Uso della crittografia simmetrica Confidenzialità e crittografia simmetrica Contenuto Uso della crittografia simmetrica Dove, come e quando cifrare i dati? Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno

Dettagli

Elementi di crittografia

Elementi di crittografia Elementi di crittografia Francesca Merola a.a. 2010-11 informazioni orario: ma, (me), gio, 14-15.30, aula N1 ricevimento: su appuntamento ma, me, gio, 11.30-12.30 studio 300 dipartimento di matematica

Dettagli

Sicurezza nella comunicazione in rete: tecniche crittografiche

Sicurezza nella comunicazione in rete: tecniche crittografiche Reti di Calcolatori I Prof. Roberto Canonico Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso di Laurea in Ingegneria delle Telecomunicazioni Corso di Laurea in Ingegneria

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

Reti di Calcolatori. Crittografia & Java Cryptographic Architecture (JCA) A.A. 2010/2011 Reti di Calcolatori 1 (Es. 6)

Reti di Calcolatori. Crittografia & Java Cryptographic Architecture (JCA) A.A. 2010/2011 Reti di Calcolatori 1 (Es. 6) Crittografia & Java Cryptographic Architecture (JCA) 1 (Es. 6) La crittografia La crittografia è un particolare processo grazie al quale, per mezzo di sofisticati algoritmi, è possibile trasformare una

Dettagli

Cifrari a blocchi: Data Encryption Standard

Cifrari a blocchi: Data Encryption Standard Cifrari a blocchi: Data Encryption Standard Alfredo De Santis Dipartimento di Informatica Università di Salerno ads@dia.unisa.it http://www.dia.unisa.it/professori/ads Cifrari simmetrici! Crittosistemi

Dettagli

Seminario sulla Crittografia. Corso: T.A.R.I Prof.: Giulio Concas Autore: Ivana Turnu

Seminario sulla Crittografia. Corso: T.A.R.I Prof.: Giulio Concas Autore: Ivana Turnu Seminario sulla Crittografia Corso: T.A.R.I Prof.: Giulio Concas Autore: Ivana Turnu Crittografia Cos è la crittografia Le tecniche più usate La firma digitale Cos è la crittografia Per garantire la riservatezza

Dettagli

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica Confidenzialità e crittografia simmetrica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Contenuto Uso

Dettagli

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Sicurezza su reti Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Sicurezza su reti Uso della crittografia simmetrica Confidenzialità e crittografia simmetrica Barbara Masucci Dipartimento di Informatica Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Contenuto Uso della crittografia

Dettagli

Livello Applicazioni Elementi di Crittografia

Livello Applicazioni Elementi di Crittografia Laboratorio di Reti di Calcolatori Livello Applicazioni Elementi di Crittografia Carlo Mastroianni Servizi Crittografia: Servizi richiesti SEGRETEZZA: evitare che i dati inviati da un soggetto A a un soggetto

Dettagli

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. tecniche crittografiche e protocolli

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. tecniche crittografiche e protocolli tecniche crittografiche e protocolli 1 obiettivi autenticazione one-way e mutua scambio di chiavi di sessione scambio dei dati integrità confidenzialità 2 autenticazione one-way con shared secret (s1)

Dettagli

crittografia a chiave pubblica

crittografia a chiave pubblica crittografia a chiave pubblica Whitfield Diffie Martin Hellman New Directions in Cryptography We stand today on the brink of a revolution in cryptography. The development of cheap digital hardware... has

Dettagli

Stream cipher. Cifrari simmetrici. Stream cipher. Stream cipher. I cifrari simmetrici possono essere:! Cifrari a blocchi: !

Stream cipher. Cifrari simmetrici. Stream cipher. Stream cipher. I cifrari simmetrici possono essere:! Cifrari a blocchi: ! Stream cipher Alfredo De Santis Dipartimento di Informatica ed Applicazioni Università di Salerno Marzo 2012 ads@dia.unisa.it http://www.dia.unisa.it/professori/ads Cifrari simmetrici I cifrari simmetrici

Dettagli

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori I Roberto Canonico (roberto.canonico@unina.it) Giorgio Ventre (giorgio.ventre@unina.it) Sicurezza nella comunicazione in rete: tecniche

Dettagli

Crittografia. Codifica dei caratteri di un messaggio con criteri noti solo a mittente e destinatario

Crittografia. Codifica dei caratteri di un messaggio con criteri noti solo a mittente e destinatario Crittografia Codifica dei caratteri di un messaggio con criteri noti solo a mittente e destinatario CODIFICA e DECODIFICA sono due funzioni che hanno come parametro rispettivamente il messaggio in chiaro

Dettagli

Sicurezza concetti e tecniche

Sicurezza concetti e tecniche Sicurezza concetti e tecniche 23/0 /05/04 G.Serazzi 2003/04 Impianti Informatici SicAlg - 1/48 indice controlli e metodi di sicurezza principali tipi di attacchi algoritmi a chiave privata algoritmi a

Dettagli

!"### "$ " Applicazioni. Autenticità del messaggio M Integrità del messaggio M. Stelvio Cimato DTI Università di Milano, Polo di Crema

!### $  Applicazioni. Autenticità del messaggio M Integrità del messaggio M. Stelvio Cimato DTI Università di Milano, Polo di Crema !"### "$ " %& Applicazioni Autenticità del messaggio M Integrità del messaggio M 1 2 ' Easy computation: dato un valore M e la chiave K, MAC(K,M) è facile da calcolare Compression: M di lunghezza finita,

Dettagli

Funzioni di hash sicure: MD5 e SHA-1

Funzioni di hash sicure: MD5 e SHA-1 POLITECNICO DI MILANO Funzioni di hash sicure: MD5 e SHA-1 CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ Funzioni di hash Una funzione di hash (o message digest) è una

Dettagli

Crittografia a chiave pubblica

Crittografia a chiave pubblica Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica Università di Salerno bmasucci@unisa.it http://www.di.unisa.it/professori/masucci Cifrari simmetrici canale insicuro Bob 1 Distribuzione

Dettagli

crittosistemi a flusso

crittosistemi a flusso crittosistemi a flusso Prendiamo Z 2 come alfabeto; in un cifrario a flusso, il testo in chiaro x = x 1 x 2... viene cifrato bit per bit con la chiave k = k 1, k 2,... per ottenere il testo cifrato. Nell

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

Crittografia da Whatsapp a Wikileakes, tra spie e segreti di stato

Crittografia da Whatsapp a Wikileakes, tra spie e segreti di stato Crittografia da Whatsapp a Wikileakes, tra spie e segreti di stato Donatella Iacono Sabina Milella Bari 27.06.2015 Crittografia ne abbiamo piene le tasche Crittografia ne abbiamo piene le tasche Skype

Dettagli

Elementi di Crittografia

Elementi di Crittografia Elementi di Crittografia Algoritmi Messaggio in chiaro messaggio crittografato M X =C k (M C ) Messaggio crittografato messaggio in chiaro M C =D k (M X ) Per la codifica/decodifica è necessario un parametro

Dettagli

Sicurezza nelle reti: protezione della comunicazione

Sicurezza nelle reti: protezione della comunicazione Sicurezza nelle reti: protezione della comunicazione Gaia Maselli maselli@di.uniroma1.it Queste slide sono un adattamento delle slide fornite dal libro di testo e pertanto protette da copyright. All material

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

crittografia a chiave pubblica

crittografia a chiave pubblica crittografia a chiave pubblica Whitfield Diffie Martin Hellman New Directions in Cryptography We stand today on the brink of a revolution in cryptography. The development of cheap digital hardware... has

Dettagli

CODICI. Crittografia e cifrari

CODICI. Crittografia e cifrari CODICI Crittografia e cifrari CRITTOGRAFIA - La crittografia è una scrittura convenzionale segreta, decifrabile solo da chi conosce il codice. - La parola crittografia deriva da 2 parole greche, ovvero

Dettagli

Crittografia: Servizi richiesti

Crittografia: Servizi richiesti Reti di Calcolatori Elementi di Crittografia Servizi Crittografia: Servizi richiesti SEGRETEZZA: evitare che i dati inviati da un soggetto A a un soggetto B vengano intercettati da un terzo soggetto C.

Dettagli

I Cifrari Perfetti. Alessio Nunzi Fabiola Genevois Federico Russo

I Cifrari Perfetti. Alessio Nunzi Fabiola Genevois Federico Russo I Cifrari Perfetti Alessio Nunzi Fabiola Genevois Federico Russo Fabiola Genevois Strategie d attacco Sicurezza dei sistemi crittografici Il cifrario Perfetto Enunciato di Shannon Il cifrario di Vernam

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

Crittografia con Python

Crittografia con Python Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Ci eravamo lasciati

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

CENNI SULLA CRITTOGRAFIA MODULO 5

CENNI SULLA CRITTOGRAFIA MODULO 5 CENNI SULLA MODULO 5 Il termine crittografia deriva dal greco (cryptòs + gràphein) ovvero scrittura nascosta Descrive la disciplina che tratta i metodi necessari per rendere un messaggio comprensibile

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

Sicurezza dei Calcolatori e delle Reti. Introduzione alla crittografia Lez. 2. A.A. 2010/2011 Corso: Sicurezza 1 Danilo Bruschi

Sicurezza dei Calcolatori e delle Reti. Introduzione alla crittografia Lez. 2. A.A. 2010/2011 Corso: Sicurezza 1 Danilo Bruschi Sicurezza dei Calcolatori e delle Reti Introduzione alla crittografia Lez. 2 Agenda Che cos è la crittografia I componenti di un protocollo crittografico Crittografia a chiave privata Crittografia a chiave

Dettagli

Sicurezza delle informazioni

Sicurezza delle informazioni Sicurezza delle informazioni Quando vengono mandati pacchetti di informazioni sui mezzi promiscui (ad es. rete Ethernet) chiunque ha la possibilità di leggere i pacchetti inviati e ricomporre il messaggio

Dettagli

Altri cifrari simmetrici. Cifrari simmetrici. Altri cifrari a blocchi. Blowfish. I cifrari simmetrici possono essere: Cifrari a blocchi:

Altri cifrari simmetrici. Cifrari simmetrici. Altri cifrari a blocchi. Blowfish. I cifrari simmetrici possono essere: Cifrari a blocchi: Barbara Masucci Altri cifrari simmetrici Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Cifrari simmetrici I cifrari simmetrici

Dettagli

Cifrari a blocchi: Data Encryption Standard

Cifrari a blocchi: Data Encryption Standard Cifrari a blocchi: Data Encryption Standard Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Cifrari simmetrici

Dettagli

A cosa serve la crittografia? La crittografia serve ad aiutare due utenti, Alice e Bob, a comunicare in modo sicuro...

A cosa serve la crittografia? La crittografia serve ad aiutare due utenti, Alice e Bob, a comunicare in modo sicuro... Crittografia A cosa serve la crittografia? La crittografia serve ad aiutare due utenti, Alice e Bob, a comunicare in modo sicuro... Mister X...anche in presenza di Mister X, un avversario che ascolta la

Dettagli

Crittografia a chiave pubblica

Crittografia a chiave pubblica Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Cifrari simmetrici canale

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

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

Crittografia e firma digitale. Prof. Giuseppe Chiumeo

Crittografia e firma digitale. Prof. Giuseppe Chiumeo Crittografia e firma digitale Prof. Giuseppe Chiumeo giuseppe.chiumeo@libero.it INTRODUZIONE Lo sviluppo dell e-business oggi ha bisogno di garanzie per quanto riguarda l inviolabilità dei dati trasmessi.

Dettagli

Programmazione in Rete

Programmazione in Rete Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della

Dettagli

La funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi

La funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi La funzione Hash Garanzia dell integrità dei dati e autenticazione dei messaggi Come funziona l Hash function Associa stringhe di bit di lunghezza arbitraria e finita stringhe di bit di lunghezza inferiore.

Dettagli

Crittografia con Python

Crittografia con Python Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Cifrari a trasposizione

Dettagli

Crittografia e OpenSource

Crittografia e OpenSource Crittografia e OpenSource Matteo Carli matteo@matteocarli.com http://www.matteocarli.com http://www.lug-acros.org Chi sono Studente di Sicurezza dei sistemi e delle reti informatiche presso il polo di

Dettagli

Crittografia classica: la storia

Crittografia classica: la storia Crittografia classica: la storia 1900 a.c. Egitto: geroglifici non standard 1500 a.c Mesopotamia: Formula con molte interpretazioni 500 a.c Israele: Codice ATBASH per il libro di Geremia 500 a.c. Plutarco:

Dettagli

Le firme elettroniche e i sistemi di firma. Approcci al problema della sicurezza

Le firme elettroniche e i sistemi di firma. Approcci al problema della sicurezza Approcci al problema della sicurezza Aspetti della sicurezza e tecnologie correlate Requisiti per la sicurezza: 1. qualcosa che sai (username/password) 2. qualcosa che hai (cellulare, token, smart-card,

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

Elementi di crittografia

Elementi di crittografia Nota di Copyright RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi

Dettagli

Crittografia. Why? Esiste un cifrario perfetto? Goals. Ozalp Babaoglu. Comunicazioni private in ambienti pubblici

Crittografia. Why? Esiste un cifrario perfetto? Goals. Ozalp Babaoglu. Comunicazioni private in ambienti pubblici Why? Crittografia Ozalp Babaoglu Comunicazioni private in ambienti pubblici ALMA MATER STUDIORUM UNIVERSITA DI BOLOGNA Babaoglu 2001-2011 Sicurezza 2 Goals Esiste un cifrario perfetto? Learn what problems

Dettagli

Cifrari Simmetrici Contemporanei

Cifrari Simmetrici Contemporanei Cifrari Simmetrici Contemporanei I cifrari simmetrici sono tuttora uno dei tipi di algoritmi crittografici più utilizzati Sono utilizzati per implementare i servizi di confidenzialità (segretezza) e autenticazione

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

Parte prima Cifrature asimmetriche 21

Parte prima Cifrature asimmetriche 21 Indice Prefazione XIII Capitolo 1 Introduzione 1 1.1 Servizi, meccanismi e attacchi 3 Servizi 3 Meccanismi 4 Attacchi 5 1.2 L architettura di sicurezza OSI 5 Servizi di sicurezza 7 Autenticazione 7 Meccanismi

Dettagli

ALGORITMI DI GENERAZIONE DI GRAFI CASUALI PER MODELLARE IL WEB OF TRUST - 1 -

ALGORITMI DI GENERAZIONE DI GRAFI CASUALI PER MODELLARE IL WEB OF TRUST - 1 - - 1 - Capitolo 1 INTRODUZIONE In crittografia il sistema PGP (Pretty Good Privacy) è forse il crittosistema più usato al mondo. PGP usa sia la crittografia asimmetrica (detta anche a chiave pubblica) sia

Dettagli

Introduzione alla crittografia ed alla crittoanalisi

Introduzione alla crittografia ed alla crittoanalisi Introduzione alla crittografia ed alla crittoanalisi di Enrico Zimuel (Sikurezza.org) Webb.it 2002 Padova 5 Luglio 2002 Note sul copyright (copyfree): Questa presentazione può essere utilizzata liberamente

Dettagli

Crittografia Asimmetrica

Crittografia Asimmetrica Sicurezza nei Sistemi Informativi Crittografia Asimmetrica Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Crittografia

Dettagli

Casualità e sicurezza Fabrizio d Amore Facoltà di Ingegneria dell informazione, informatica e statistica

Casualità e sicurezza Fabrizio d Amore Facoltà di Ingegneria dell informazione, informatica e statistica Casualità e sicurezza Fabrizio d Amore Facoltà di Ingegneria dell informazione, informatica e statistica damore@dis.uniroma1.it Casualità e sicurezza Uso della casualità nella moderna ICT sistematico in

Dettagli

Crittografia. Steganografia

Crittografia. Steganografia Crittografia Codici e segreti. La storia affascinante dei messaggi cifrati dall antico Egitto a internet. Simon Singh, Rizzoli 2001 FdI 2014/2015 GMDN 2015 1 Steganografia Steganografia: comunicazione

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

CRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola:

CRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola: CRITTOGRAFIA 2014/15 Appello del 13 gennaio 2015 Esercizio 1 Crittografia ellittica [9 punti] 1. Descrivere l algoritmo di Koblitz per trasformare un messaggio m, codificato come numero intero, in un punto

Dettagli

Introduzione alla crittografia

Introduzione alla crittografia Dipartimento di Scienze Matematiche Politecnico di Torino Gennaio 2018 La crittografia nell antichita Agli albori della crittografia Definizioni La crittografia nell antichita La crittografia nell antichita

Dettagli

Corso di Sicurezza nelle reti a.a. 2009/2010. Raccolta di alcuni quesiti del corso da 5CFU e prima parte del corso da 9CFU

Corso di Sicurezza nelle reti a.a. 2009/2010. Raccolta di alcuni quesiti del corso da 5CFU e prima parte del corso da 9CFU Università degli Studi di Parma - Facoltà di Ingegneria Corso di Sicurezza nelle reti a.a. 2009/2010 Raccolta di alcuni quesiti del corso da 5CFU e prima parte del corso da 9CFU 1) Si consideri un semplice

Dettagli

Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec

Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec Crittografia Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec Elementi di crittografia Crittografia: procedimento

Dettagli

Introduzione alle tecniche crittografiche 2. Fisica dell Informazione

Introduzione alle tecniche crittografiche 2. Fisica dell Informazione Introduzione alle tecniche crittografiche 2 Fisica dell Informazione Cifrari composti Ottenuti dall applicazione sequenziale dei metodi precedentemente visti. Non sempre sono i migliori. il DES Cifrari

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie La sicurezza digitale

Dettagli

Introduzione. Crittografia: definizione, obiettivi, funzioni e strumenti. Crittografia e sicurezza, contesti applicativi

Introduzione. Crittografia: definizione, obiettivi, funzioni e strumenti. Crittografia e sicurezza, contesti applicativi Introduzione Crittografia: definizione, obiettivi, funzioni e strumenti Crittografia e sicurezza, contesti applicativi 1 Che cosa è la crittografia Letteralmente: una tecnica che consente di nascondere

Dettagli

Introduzione alla crittografia

Introduzione alla crittografia Mensa Italia The High IQ Society In in collaborazione con l albergo La Fenice Introduzione alla crittografia Come affidare la privacy ad un equazione matematica di Enrico Zimuel 14 Luglio 2002 Francavilla

Dettagli

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. metodi crittografici

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. metodi crittografici metodi crittografici 1 sommario richiami di crittografia e applicazioni hash crittografici crittografia simmetrica crittografia asimmetrica attacchi e contromisure birthday rainbow key rollover generatori

Dettagli

Cryptographic Hash Functions. by Paolo Bernardi

Cryptographic Hash Functions. by Paolo Bernardi Cryptographic Hash Functions by Paolo Bernardi Cosa sono? y = h(x) N numero di possibili input M numero di possibili output N >> M (di solito almeno N > 2M) Input e output sono di lunghezza fissa Perché

Dettagli

crittografia a chiave pubblica

crittografia a chiave pubblica crittografia a chiave pubblica Whitfield Diffie Martin Hellman New Directions in Cryptography We stand today on the brink of a revolution in cryptography. The development of cheap digital hardware... has

Dettagli

ITC Mossotti - Novara. Verica di Informatica. Nome e Cognome:... 1) Nella cifratura convenzionale. 2) Nella crittograa a chiave pubblica

ITC Mossotti - Novara. Verica di Informatica. Nome e Cognome:... 1) Nella cifratura convenzionale. 2) Nella crittograa a chiave pubblica ITC Mossotti - Novara II Segmento - progetto POLIS Verica di Informatica Nome e Cognome:... Data e Ora:... 1) Nella cifratura convenzionale uso la chiave privata per cifrare l'impronta del messaggio uso

Dettagli

Sicurezza. Ingegneria del Software e sicurezza. Alice, Bob, e Trudy. Sicurezza non si caratterizza in modo semplice

Sicurezza. Ingegneria del Software e sicurezza. Alice, Bob, e Trudy. Sicurezza non si caratterizza in modo semplice Sicurezza nelle reti Sicurezza: molti significati crittografia autenticazione Integrità dei messaggi Certificazione e distribuzione delle chiavi Altro? Alcuni esempi: applicazioni: e-mail sicure trasporto:

Dettagli

la crittografia tratta delle "scritture nascoste", dei metodi per rendere un messaggio "offuscato"

la crittografia tratta delle scritture nascoste, dei metodi per rendere un messaggio offuscato crittografia kryptós gráphein nascosto scrivere la crittografia tratta delle "scritture nascoste", dei metodi per rendere un messaggio "offuscato" 404 a. C Lisandro riceve un corriere a Sparta recante

Dettagli

BLOWFISH. Introduzione Algoritmo. Prestazioni Cryptanalysis of Vaundenay. Egizio Raffaele

BLOWFISH. Introduzione Algoritmo. Prestazioni Cryptanalysis of Vaundenay. Egizio Raffaele Introduzione Algoritmo Prestazioni Cryptanalysis of Vaundenay Egizio Raffaele Introduzione E un cifrario a blocchi a chiave simmetrica Utilizza varie tecniche tra le quali la rete Feistel, le S-box dipendenti

Dettagli

Introduzione alle tecniche crittografiche 1. Fisica dell Informazione

Introduzione alle tecniche crittografiche 1. Fisica dell Informazione Introduzione alle tecniche crittografiche 1 Fisica dell Informazione La radice del termine crittografia, risale al greco Kruptòs, che significa "nascosto" e graphia che significa "scrittura". La storia

Dettagli

RETI DI CALCOLATORI II

RETI DI CALCOLATORI II RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2010 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright

Dettagli

metodi crittografici 2006-2007 maurizio pizzonia sicurezza dei sistemi informatici e delle reti

metodi crittografici 2006-2007 maurizio pizzonia sicurezza dei sistemi informatici e delle reti metodi crittografici 1 sommario richiami di crittografia e applicazioni hash crittografici crittografia simmetrica crittografia asimmetrica attacchi e contromisure attacchi tipici key rollover generatori

Dettagli

Introduzione alla crittografia. Diffie-Hellman e RSA

Introduzione alla crittografia. Diffie-Hellman e RSA Introduzione alla crittografia. Diffie-Hellman e RSA Daniele Giovannini Torino 2011, Crittografia a chiave pubblica: oltre RSA Università degli Studi di Trento, Lab di Matematica Industriale e Crittografia

Dettagli

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. metodi crittografici

maurizio pizzonia sicurezza dei sistemi informatici e delle reti. metodi crittografici metodi crittografici 1 sommario richiami di crittografia e applicazioni hash crittografici crittografia simmetrica crittografia asimmetrica attacchi e contromisure birthday rainbow key rollover generatori

Dettagli

crittoanalisi del DES

crittoanalisi del DES crittoanalisi del DES Di fatto, il modo più efficiente di violare il DES è un attacco a forza bruta: provare ogni possibile chiave, una dopo l altra. Ci sono due attacchi a livello teorico applicabili

Dettagli