Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea. Crittografia contemporanea

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea. Crittografia contemporanea"

Transcript

1 Crittografia contemporanea

2 Classificazione dei sistemi crittografici contemporanei Il criterio di distinzione più importante per i sistemi crittografici contemporanei riguarda il tipo e numero di chiavi usate: nei sistemi a chiave simmetrica viene utilizzata una sola chiave, nei sistemi a chiave asimmetrica ogni utente dispone di due chiavi, una pubblica e una privata. Secondariamente, i sistemi crittografici possono essere distinti in base al tipo di dati su cui lavorano: i sistemi a blocchi elaborano i dati in blocchi di dimensione fissa (ad es. 64 bit), i sistemi a flusso elaborano i dati un byte (o bit, o altra unità di informazione) per volta. 2

3 Sistemi a chiave simmetrica In questa lezione parleremo di sistemi a chiave simmetrica (e principalmente di sistemi a blocchi). X: messaggio in chiaro, Y: messaggio cifrato, K: chiave. X, K : stime di X e K da parte di un attaccante 3

4 Problemi della cifratura a chiave simmetrica Il problema principale della cifratura a chiave simmetrica consiste nella diffusione della chiave Se n persone devono comunicare tra di loro mediante messaggi crittati, sono necessarie n(n-1)/2 chiavi diverse (ordine di grandezza quadratico!). Ognuna di queste chiavi deve essere concordata tra mittente e destinatario su un canale sicuro Vedremo nelle prossime lezioni come questo problema possa essere mitigato dai sistemi a chiave asimmetrica 4

5 Caratteristica fondamentale dell algoritmo di cifratura Essere facilmente computabile ed invertibile se la chiave è nota Essere difficilmente invertibile in assenza della chiave In questo contesto, facile e difficile si riferiscono alla fattibilità pratica di effettuare una data computazione in tempi ragionevoli con le tecnologie disponibili attualmente o che potranno essere disponibili in un prossimo futuro (sicurezza computazionale). 5

6 Principio di Kerckhoffs un crittosistema deve essere sicuro anche se il suo funzionamento è di pubblico dominio, con l'eccezione della chiave In altre parole l algoritmo non deve essere segreto. Al contrario, renderlo noto al pubblico contribuisce a garantire la sua robustezza in quanto può essere analizzato dalla comunità crittanalitica. 6

7 OTP e cifrari a flusso 7

8 One-Time Pad OTP (o cifrario di Vernam) è un cifrario di Vigenère con chiave lunga quanto il testo (senza ripetizioni), totalmente casuale e utilizzabile una volta sola Il testo cifrato non ha più alcuna relazione con quello originario: questa cifratura è inviolabile se l attaccante ha accesso al solo testo cifrato (sicurezza incondizionata contro attacchi passivi) 8

9 Sicurezza di OTP (dim. intuitiva) Dimostrazione intuitiva dell inviolabilità di OTP: Dato un testo cifrato, per qualsiasi testo in chiaro della stessa lunghezza esiste una chiave (unica ed equiprobabile ) che lo genera. Esempio: testo cifrato D R E M U F C A chiave testo in chiaro chiave testo in chiaro i j l t g o u a v i t t o r i a o d s x q u q m p o m p e l m o Esercizio: scrivere un testo cifrato casuale, e trovare almeno due chiavi che lo trasformino in parole di senso compiuto 9

10 Sicurezza di OTP (dim. formale) Shannon: un cifrario è sicuro se il testo cifrato non rivela alcuna informazione riguardo al testo in chiaro. Formalmente, si richiede che: Pr, Pr,,,, Nel caso di OTP, dato un messaggio m e un testo cifrato c, e ipotizzando che le chiavi siano casuali (distribuite uniformemente su ): Pr, #.., (costante ) : insieme dei testi cifrati, : insieme delle chiavi, : insieme dei testi in chiaro, : algoritmo di cifratura applicato sul messaggio m con chiave k 10

11 One-Time Pad / 3 Ricordiamo che le chiavi devono essere casuali, uniche per ogni messaggio e lunghe (almeno) quanto il messaggio stesso. Se la chiave non è lunga quanto il messaggio, l algoritmo è vulnerabile ad un attacco di Kasiski (già visto per Vigenère) Se una stessa chiave viene usata per cifrare più messaggi, si ricade nel caso precedente Se la chiave non è casuale, allora alcune chiavi sono più probabili di altre: questo ci permette di discriminare tra due output 11

12 One-Time Pad / 3 Due problemi principali limitano l uso di OTP in pratica: Difficoltà di creare chiavi davvero casuali Necessità di condivisione delle chiavi tra mittente e destinatario Il problema di trasmettere il messaggio non è stato risolto, ma solo trasformato nel problema di condividere una chiave altrettanto lunga. Unico vantaggio: condivisione della chiave e trasmissione del messaggio possono avvenire in istanti diversi (es: condivisione iniziale sicura della chiave per proteggere la successiva trasmissione del messaggio su canale insicuro) 12

13 Richiamo sull operatore XOR L operatore exclusive-or (XOR, ) è un operatore booleano che assume valore 1 quando due bit sono diversi, e 0 quando sono uguali p q p q Esempio: = Proprietà fondamentali: A A = 0 A 0 = A A ( B C ) = ( A B ) C 13

14 OTP binario Se volessimo applicare OTP a dati binari? L alfabeto è composto da due soli simboli: 0, 1 La tabella di Vigenère si semplifica: In altre parole, l operatore binario di XOR Quindi si può realizzare una cifratura OTP su dati binari combinandoli in XOR con una sequenza casuale di bit CIFRATURA: C = M K DECIFRAUTRA: M = C K ( C K = M K K = M ) 14

15 Riutilizzo delle chiavi con OTP binario OTP binario ci permette di capire meglio perché la chiave OTP non può essere riutilizzata: C1 = M1 K C2 = M2 K M1, M2 testi in chiaro, K chiave, C1, C2 testi cifrati C1 C2 = M1 K M2 K = M1 M2 Lo XOR di due testi cifrati è uguale allo XOR dei rispettivi testi in chiaro. Permette ad esempio di identificare immediatamente porzioni di testo uguali (in quanto il risultato dello XOR è una sequenza di 0) 15

16 Esempio visuale = M1 K C1 = M2 K C2 16

17 Altri attacchi a OTP «sicurezza incondizionata» significa che non è possibile decifrare un messaggio cifrato con OTP avendo a disposizione solamente il testo cifrato, perché ogni decifrazione è ugualmente probabile e quindi indistinguibile (sicurezza rispetto agli attacchi passivi) Esistono tuttavia altri attacchi possibili a OTP, ad esempio sfruttando la sua malleabilità Un cifrario è malleabile se è possibile alterare il testo cifrato in modo da ottenere un risultato specifico in seguito alla decifratura (attacco attivo) 17

18 Malleabilità di OTP Cifratura: C = M K Un attaccante intercetta C e lo sostituisce con C = C N decifratura: M = C K = M K N K = M N Se l attaccante conosce M, può scegliere un opportuno N tale che, in fase di decifratura, il testo in chiaro originario M sia sostituito da un testo arbitrario M, scelto dall attaccante 18

19 OTP e cifrari a flusso L idea di OTP binario è alla base di molti cifrari a flusso, in cui i bit da cifrare sono elaborati indipendentemente l uno dall altro, senza la necessità di suddividerli in blocchi di dimensioni fisse In questo caso i cifrari a flusso sono basati sull uso di PRG (pseudorandom generators), generatori di sequenze di bit apparentemente casuali Naturalmente questi algoritmi non sono delle vere implementazioni di OTP, in quanto la sequenza di bit non è davvero casuale (è pur sempre generata da algoritmi deterministici ) E tuttavia sufficiente che tale sequenza sembri casuale da un punto di vista statistico (ovvero, in assenza del seed iniziale è impossibile fare delle previsioni sulla sequenza generata dall algoritmo) 19

20 Cifrari a flusso OTP Chiave casuale Testo in chiaro Testo cifrato Cifrario a flusso basato su PRG chiave PRG sequenza pseudo-casuale Testo in chiaro Testo cifrato 20

21 Cifrari a blocchi 21

22 I concetti di confusione e diffusione Introdotti da Shannon (il padre della teoria dell informazione!) nel 1949 Confusione: rendere la relazione tra chiave e testo cifrato quanto più complessa possibile Diffusione: rendere la relazione tra testo in chiaro e testo cifrato quanto più complessa possibile 22

23 Diffusione Le anomalie statistiche del testo in chiaro che lo rendono facilmente identificabile (ad es. le frequenze caratteristiche di ogni lettera) devono essere diffuse su quanti più caratteri possibili del testo cifrato, in modo da mischiarle al punto da renderle irriconoscibili. Ad esempio, la cifratura monoalfabetica non ha alcuna diffusione, perché le caratteristiche statistiche di ogni carattere in chiaro si trasmettono inalterate al carattere cifrante. 23

24 Criterio di avalanche Ne consegue che la modifica di anche un carattere del testo in chiaro dovrebbe implicare l alterazione di tutto il testo cifrato (diffusione) Analogamente, la modifica di anche un solo carattere della chiave, dovrebbe implicare l alterazione di tutto il testo cifrato (confusione) Questa proprietà è nota con il nome di criterio di avalanche 24

25 Criterio di avalanche / 2 La crittografia contemporanea si basa sull uso dei computer, quindi d ora in poi ci occuperemo di messaggi composti da bit Una definizione più formale del criterio di avalanche è la seguente: SAC (Strict Avalanche Criterion): se un bit del messaggio in chiaro o della chiave viene complementato, allora ogni bit del messaggio cifrato ha una probabilità del 50% di essere complementato In altre parole, il nuovo testo cifrato è apparentemente casuale, non ha alcuna relazione statistica con il testo cifrato precedente (Complementare un bit: cambiarne il valore. Se vale 1, diventa 0. Se vale 0, diventa 1) 25

26 Criterio di avalanche / 3 Perché il criterio di avalanche è così importante? Se due testi di input simili (o due chiavi simili) producessero due output simili, l algoritmo di crittazione sarebbe vunerabile agli attacchi crittanalitici Confrontando il testo cifrato da decodificare con il testo cifrato di un testo in chiaro a noi noto, potremmo sapere quanto vicini siamo alla soluzione 26

27 Reti SP Le reti a sostituzione-permutazione (Substitution-Permutation Networks, SPN) sono costituite da una serie di operazioni matematiche in cascata volte a garantire le proprietà di diffusione e confusione (e quindi a soddisfare il criterio di avalanche). Composte da due elementi fondamentali: -Le S-Box (substitution box) - Le P-Box (permutation box) Cifratura a blocchi! 27

28 S-Box Una Substitution Box (S-Box) è una funzione che sostituisce i bit di input con dei bit di output in modo soddisfare il criterio di avalanche. Il cambiamento di un singolo bit di input quindi deve influenzare circa la metà dei bit di output Una S-Box è un tipo particolare di cifratura a sostituzione i1 i2 i3 i4 Esempio di S-Box S-Box o1 o2 o3 o4 28

29 P-Box Una Permutation Box (P-Box) è una funzione che genera in output una permutazione dei bit di input E quindi un caso particolare di cifratura a trasposizione

30 Reti SP / 2 Nelle reti SP si alterna l uso di S-Box e P-Box, iterando il procedimento più volte (ogni iterazione è detta stadio, o round) Ad ogni iterazione la chiave viene opportunamente manipolata per estrarre una sottochiave diversa (K 0 K 3 nell immagine qui a fianco). La sottochiave viene combinata mediante XOR con il testo in chiaro (all inizio) o col testo cifrato dopo un determinato stadio. 30

31 Reti SP / 3 Le reti SP sono studiate per soddisfare il criterio di avalanche Le S-Box sono studiate affinché il cambiamento di un solo bit di input influenzi tutti i loro output Le P-Box garantiscono che l output di una S-Box allo stadio n sia diffuso come input di tutte le S-Box dello stadio n+1 Poiché chiave e testo sono combinate con uno XOR (e quindi influenzano con lo stesso peso il risultato di output), le reti SP garantiscono contemporaneamente sia la diffusione che la confusione. 31

32 Decifratura nelle reti SP Per decifrare un testo cifrato, è sufficiente applicare i passi della rete SP a ritroso, dall ultimo fino al primo Questo richiede che le S-Box siano INVERTIBILI, ovvero che, dato un output, sia possibile risalire univocamente al suo input. Esempio di S-Box non invertibile (qual è l inverso di 11?) Input Output

33 Esercizio Tabella di corrispondenze input-output della S-Box Qual è l output di questo primo stadio, supponendo che le S-Box siano tutte uguali (si veda la tabella), che la sottochiave K 0 valga e il testo in chiaro valga ? 33

34 Le reti di Feistel Ideate da Horst Feistel, ingegnere della IBM Sono un caso particolare di reti SP, con alcune modifiche La loro struttura è alla base del funzionamento di molti degli attuali algoritmi di crittazione a chiave simmetrica 34

35 Le reti di Feistel / 2 Il testo in chiaro (di dimensione fissa, ad es. 64 bit) viene diviso in due metà, L 0 e R 0 Ad ogni stadio i la metà di destra (R i ) diventerà la metà di sinistra allo stadio successivo la metà di sinistra viene combinata in XOR con F(K i,r i ), dove K i è la sottochiave allo stadio i ed F è una funzione complessa, e diventerà la metà destra allo stadio successivo L i+1 = R i R i+1 = L i F(R i,k i ) 35

36 Relazione con le reti SP Una rete di Feistel può essere vista come una rete SP in cui F è una S- Box e lo scambio delle due metà è una P-Box Differenze rispetto alle reti SP: la chiave non è combinata direttamente in XOR col testo da cifrare, ma è un input della funzione F 36

37 Reti di Feistel: decifratura Decifrare un testo generato da una rete di Feistel è molto semplice: è sufficiente applicare lo stesso algoritmo, avendo cura di invertire solamente l ordine delle sottochiavi Vantaggio notevole, non serve scrivere un programma apposito per la decrittazione 37

38 Decifratura di Feistel: dimostrazione Consideriamo cosa accade nell ultimo stadio n di cifratura (e di conseguenza nel primo stadio di decifratura): Testo in input all ultimo stadio: [L n, R n ] Testo cifrato finale: [ L n F(K n,r n ), R n ] L n cifratura R n decifratura Primo stadio di decifratura: [ L n F(K n,r n ) F(K n,r n ), R n ] = L n R n [ L n 0, R n ] = [ L n, R n ] Usando le proprietà dello XOR! Il primo passo di decifratura annulla l ultimo di cifratura. Applicando lo stesso procedimento a tutti gli stadi, si dimostra che la decifratura permette effettivamente di recuperare il testo in chiaro 38

39 Decifratura di Feistel Proprietà fondamentale del processo di decifratura di Feistel, nonché differenza principale rispetto alle reti SP: non è necessario che F sia invertibile! Pertanto F può essere arbitrariamente complessa 39

40 Realizzazione di una rete di Feistel Scelte progettuali da considerare: Dimensioni del blocco (spesso 64 bit) Dimensioni della chiave (le più comuni oggigiorno sono a 128 bit, le chiavi fino a 64 bit sono ormai considerate insicure) Numero di stadi (tipicamente 16) Algoritmo di generazione delle sottochiavi Scelta della funzione F Altri aspetti da considerare: Velocità di cifratura/decifratura software Facilità di analisi 40

41 Cifrari basati sul modello di Feistel Il modello di Feistel è alla base della struttura di molti cifrari contemporanei: Blowfish, Camellia, CAST-128, DES, FEAL, ICE, KASUMI, LOKI97, Lucifer, MARS, MAGENTA, MISTY1, RC5, TEA, Triple DES, Twofish, XTEA, GOST_ , CAST-256, MacGuffin, RC2, RC6, Skipjack, SMS4 Studieremo ora nel dettaglio uno dei più importanti: il DES 41

42 DES Data Encryption Standard Sviluppato da IBM, deriva dal precedente Lucifer, ad opera dello stesso Feistel Nel 1976 è diventato uno standard negli USA per la protezione di dati sensibili Scelta inizialmente controversa per la lunghezza della chiave, che pare sia stata ridotta a 56 bit (rispetto ai 128 di Lucifer) per imposizione della NSA Per la segretezza di alcuni dettagli implementativi (violazione del principio di Kerckhoffs), in seguito resi pubblici 42

43 DES / 2 E un algoritmo di cifratura simmetrico a blocchi La struttura è quella di una rete di Feistel I blocchi sono di 64 bit La chiave è di 64 bit, ma ne vengono usati solo 56 Ad oggi non è più considerato sicuro. E stato sostituito dal nuovo standard AES 43

44 Struttura generale di DES Due permutazioni, IP e FP, una l inversa dell altra (non hanno alcun valore crittografico, servivano solo a rendere più efficiente l implementazione in hardware) L input viene diviso in due blocchi da 32 bit elaborati secondo il classico schema delle reti di Feistel in 16 stadi (round) 44

45 La funzione F Una funzione complessa e non invertibile E è un blocco di espansione, che trasforma i 32 bit di input in 48 bit di output, duplicando alcuni degli input S1 S8 sono delle S-Box P è una P-Box Usando la chiave a 56 bit viene generata una sottochiave a 48 bit (diversa per ogni stadio) 45

46 S-Box e P-Box nella funzione F Le S-Box ricevono 6 bit di input e hanno 4 bit di output Esempio di S-Box usata da DES: La P-Box: Fonte: 46

47 Generazione delle sottochiavi PC1 è una permutazione che estrae solo 56 dei 64 bit di chiave I 56 bit sono divisi in due gruppi di 28 bit Ad ogni stadio i due gruppi vengono ruotati di uno o due bit (a seconda dello stadio) e una ulteriore permutazione (PC2) estrae 24 bit da ognuno dei due gruppi ruotati, generando così una sottochiave da 48 bit 47

48 Attacchi a forza bruta al DES Nel 1977 Diffie e Hellman stimarono che il DES potesse essere violato in un solo giorno con una macchina dal costo stimato di $20M Nel 1993 Wiener stimò che si potesse raggiungere lo stesso risultato in 7 ore con una macchina da $1M Nel 1998 una macchina da $ realizzata da EFF (Electronic Frountier Foundation) violò effettivamente un crittogramma DES in 2 giorni 48

49 Altri algoritmi basati su reti di Feistel: 3DES Triple DES migliora sensibilmente la sicurezza di DES, ed è ancora considerato valido (si stima fino al 2030) Sono necessarie tre chiavi DES (per un totale di 168 bit) codifica K 1 K 2 K 3 Encrypt Decrypt Encrypt decodifica Decrypt Encrypt Decrypt K 3 K 2 K 1 Usato, in diverse varianti, nelle transazioni commerciali elettroniche (circuiti VISA, Mastercard ) 49

50 3DES keying options Opzione 1: le chiavi K1, K2 e K3 sono diverse e indipendenti Opzione 2: K1 = K3, K2 diversa Opzione 3: K1 = K2 = K3 50

51 3DES keying option 1 K 1 K 2 K 3 Encrypt Decrypt Encrypt K1, K2 e K3 indipendenti Lunghezza totale della chiave: 56 x 3 = 168 bit Ma in realtà sono necessari meno di tentativi per un attacco a forza bruta! La sicurezza di 3DES con keying option 1 è pari a quella di un algoritmo con chiave di 112 bit a causa del meet-in-the-middle attack 51

52 Meet-in-the-middle attack K 1 K 2 K 3 Ecco perché non si usa 2DES m Encrypt Decrypt Encrypt c Supponiamo di avere una coppia nota di testo in chiaro / testo cifrato Calcolare tutte le cifrature possibili dei primi due passi dell algoritmo, eseguendo in totale di 2 56 x 2 56 = cifrature Calcolare tutte le decifrature possibili per l ultimo passo, per un totale di 2 56 decifrature Cercare una coppia di risultati uguali Complessità totale dell attacco: cifrature/decifrature (quindi nell ordine di grandezza di ) 52

53 3DES keying option 2 K 1 K 2 K 1 Encrypt Decrypt Encrypt Due chiavi da 56 bit -> sicurezza a 112 bit La sicurezza è quindi comparabile a quella della keying option 1, ma col vantaggio di usare chiavi più piccole Sarebbe una pessima idea usare solo due DES encrypt consecutivi (meet-in-the-middle attack) 53

54 3DES keying option 3 K 1 K 1 K 1 Encrypt Decrypt Encrypt Usato esclusivamente per garantire la compatibilità con DES: i primi due passi si annullano, per cui l applicazione di 3DES con keying option 3 è equivalente a quella di DES normale (è il motivo per cui il blocco centrale è una decrittazione!) Sicurezza della chiave: 56 bit, come DES 54

55 Blowfish Sviluppato da Bruce Schneier, uno dei guru della crittografia contemporanea Blocchi da 32 bit, chiavi fino a 448 bit, 16 stadi (il simbolo rappresenta la somma modulo 2 32 ) La funzione F Schema generale 55

56 RC5 Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Sviluppato da Ronald Rivest, uno dei padri della crittografia a chiave asimmetrica Blocchi da 32, 64 o 128 bit, chiavi fino a 2040 bit (solitamente: 128), numero di stadi fino a 255 (solitamente: 12). Estremamente semplice e veloce, ha introdotto la novità dei data-dependent shifts 2 stadi di RC5 56

57 TEA Sicurezza nelle applicazioni multimediali: lezione 3, crittografia contemporanea Famoso soprattutto per essere suscettibile a diversi tipi di attacchi crittanalitici, che hanno portato nel 2002 alla possibilità di hackerare la console da gioco Xbox affinché potesse eseguire codice arbitrario (sfruttato per eseguire Linux su una Xbox) 57

58 AES Nel 1997 il NIST (National Institute of Standards and Technology) USA organizzò un concorso per sostituire l ormai insicuro DES e definire un nuovo standard crittografico, l Advanced Encryption Standard (AES) 15 candidati: CAST-256, CRYPTON, DEAL, DFC, E2, FROG, HPC, LOKI97, MAGENTA, MARS, RC6, Rijndael, SAFER+, Serpent, Twofish Gli algoritmi furono sottoposti alle più rigorose analisi crittografiche, finché nel 2000 Rijndael divenne ufficialmente il nuovo standard, grazie alle sue caratteristiche di robustezza alla crittanalisi e velocità di esecuzione. 58

59 AES / 2 Blocchi di 128 bit, chiavi da 128, 192 o 256 bit Basato una combinazione di permutazioni e sostituzioni (analogo ad una rete SP), ma non è una rete di Feistel. L input viene organizzato in una griglia di 4x4 byte che subisce 4 trasformazioni ad ogni stadio (gli stadi sono 10 nel caso di chiavi a 128 bit) 59

60 AES / 3 Prima trasformazione: ogni byte viene trasformato da una S-Box Seconda trasformazione: le righe della matrice subiscono uno shift (equivalente ad una P-Box) 60

61 AES / 4 Terza trasformazione: ogni colonna viene trasformata secondo una procedura equivalente ad una S-Box Quarta trasformazione: ogni byte viene combinato in XOR con la sottochiave 61

62 Tecniche di cifratura Gli algoritmi di cifratura a blocchi lavorano su blocchi di dimensione fissa (es. 64 bit). Ma come cifrare dei dati più lunghi della dimensione del blocco? Modalità Descrizione Applicazioni Electronic Codebook (ECB) Cipher Block Chaining (CBC) Counter (CTR) Ciascun blocco è cifrato in maniera indipendente, usando la stessa chiave Ogni blocco in input è combinato in XOR con l output del passo precedente Ogni blocco in input è combinato in XOR con un contatore crittografato Trasmissione di dati molto brevi Trasmissione a blocchi Trasmissione a blocchi. Particolarmente veloce 62

63 ECB Electronic Codebook Ogni blocco è cifrato con la stessa chiave e trasmesso in maniera indipendente dagli altri Estremamente insicuro. Blocchi uguali hanno codifiche uguali (violazione del criterio di diffusione) 63

64 ECB / 2 64

65 CBC Cipher Block Chaining Risolve i problemi di ECB combinando ogni blocco con l output della cifratura precedente Note: -IV (initialization vector) è un vettore di inizializzazione casuale da trasmettere assieme alla chiave -nella fase di decifratura si sfruttano le proprietà dello XOR, in particolare: A B B = A 65

66 CTR - Counter Studiato per la trasmissione a blocchi Più robusto agli errori CBC (un errore nella trasmissione di un crittogramma non influisce su quello successivo) Particolarmente veloce (si possono eseguire più decrittazioni in parallelo se più dati arrivano contemporaneamente) 66

67 Osservazione: si noti come in CTR l algoritmo di cifratura non è applicato direttamente al testo da cifrare, ma al contatore Il testo in chiaro viene poi combinato in XOR con il risultato della cifratura E sufficiente a garan re la sicurezza dell algoritmo? Rileggere le considerazioni fatte a suo tempo su OTP binario 67

68 Crittanalisi contemporanea Rompere un cifrario significa semplicemente trovare una debolezza nello stesso che può essere sfruttata con una complessità minore della forza bruta. Non importa che forza bruta richieda cifrature: un attacco che richiedesse cifrature sarebbe considerato una rottura. La rottura potrebbe anche richiedere quantità irrealistiche di testi in chiaro noti o di memoria disponibile. In parole povere, una rottura può essere semplicemente una debolezza certificabile: la prova che il cifrario non si comporta come previsto. Bruce Schneier 68

69 Scenari di crittanalisi solo testo cifrato: l'attaccante ha accesso solo ad una collezione di testi cifrati. Testo in chiaro noto: l'attaccante ha un insieme di testi cifrati dei quali conosce i corrispondenti testi in chiaro. Testo in chiaro scelto: l'attaccante può ottenere i testi cifrati corrispondenti ad un insieme arbitrario di testi in chiaro di sua scelta. Attacco alle chiavi correlate: l'attaccante può ottenere uno stesso testo in chiaro cifrato con due differenti chiavi. Le chiavi sono ignote ma la relazione fra esse è nota: ad esempio, due chiavi che differiscono solo di 1 bit. 69

70 Risultati della crittanalisi violazione totale: l'attaccante deduce la chiave segreta deduzione globale: l'attaccante scopre un algoritmo funzionalmente equivalente per la cifratura e la decifratura, ma senza conoscere la chiave; deduzione locale: l'attaccante scopre testi in chiaro non noti in precedenza; deduzione dell'informazione: l'attaccante ottiene alcune informazioni di Shannon sui testi in chiaro (o sui testi cifrati) non note precedentemente; algoritmo discriminante: l'attaccante può distinguere il cifrario da una permutazione casuale. 70

71 Tecniche di crittanalisi Esistono diverse tecniche di crittanalisi, le più famose sono: Crittanalisi differenziale: è una tecnica a testo in chiaro scelto. Si crittano due testi in chiaro con differenze note e si analizza come tali differenze si propagano fino all output, alla ricerca di eventuali regolarità (in un buon algoritmo invece la relazione tra testo in chiaro e testo cifrato è sempre apparentemente casuale confusione e diffusione!). Crittanalisi lineare: si cercano delle funzioni lineari che mettano in relazione testo in chiaro, testo crittato e chiave 71

72 Esempio: crittanalisi di DES Mediante tecniche di crittanalisi differenziale, DES può essere violato conoscendo 2 43 testi in chiaro scelti Mediante tecniche di crittanalisi lineare, DES può essere violato conoscendo 2 41 testi in chiaro 72

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

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

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

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

Il cifrario di Vigenère. Bizzoni Stefano De Persiis Angela Freddi Giordana

Il cifrario di Vigenère. Bizzoni Stefano De Persiis Angela Freddi Giordana Il cifrario di Vigenère Bizzoni Stefano De Persiis Angela Freddi Giordana Cifrari monoalfabetico e polialfabetico mono: cifrari a sostituzione o a trasposizione, associano ad ogni lettera dell alfabeto

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

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

Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia

Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia Cristina Turrini UNIMI - 2015/2016 Cristina Turrini (UNIMI - 2015/2016) Elementi di Algebra e di Matematica Discreta

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

!"### "$ " 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

Crittografia simmetrica

Crittografia simmetrica One-Time Pad Se viene usata una chiave casuale lunga come il messaggio il cifrario sarà sicuro Crittografia simmetrica Ing. Michela Cancellaro Ing. Federica Battisti Esempio: Ciphertext= ankyodkyurepfjbyojdsplreyiunofdoiuerfpluytd

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

Il Ricevente comunica pubblicamente una chiave e. Il Mittente codifica il messaggio usando la funzione f(m, e) = C e

Il Ricevente comunica pubblicamente una chiave e. Il Mittente codifica il messaggio usando la funzione f(m, e) = C e Crittografia a chiave pubblica. Il problema della crittografia è semplice da enunciare: vi sono due persone, il Mittente e il Ricevente, che vogliono comunicare fra loro senza che nessun altro possa leggere

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

Introduzione alla Crittografia. L algoritmo DES. Bruno Martino - Fabio Guglietta

Introduzione alla Crittografia. L algoritmo DES. Bruno Martino - Fabio Guglietta Introduzione alla Crittografia L algoritmo DES Bruno Martino - Fabio Guglietta Cosa faremo oggi? Convenzioni Uso della libreria di utilita Struttura del programma Modalita operative Uso della libreria

Dettagli

Altri cifrari a blocchi

Altri cifrari a blocchi Altri cifrari a blocchi Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci RC2 [1989] IDEA (International

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 Sicurezza CCA In un attacco CCA, è capace di

Dettagli

Corso di Crittografia Prof. Dario Catalano. Advanced Encryption Standard

Corso di Crittografia Prof. Dario Catalano. Advanced Encryption Standard Corso di Crittografia Prof. Dario Catalano Advanced Encryption Standard Perche un nuovo standard? n Quando si è deciso di sostituire DES, questo era ancora sicuro. n Sorge naturale la questione del perche

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

Steganografia in un. Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06

Steganografia in un. Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06 Steganografia in un file di testo Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06 Steganografia È l arte di nascondere un messaggio all interno di un altro messaggio

Dettagli

Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo

Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo DEFINIZIONE DEGLI OBIETTIVI DISCIPLINARI DEI MODULI - SCELTA DEI CONTENUTI Modulo Unità didattiche

Dettagli

Teorema di Thevenin generalizzato

Teorema di Thevenin generalizzato Teorema di Thevenin generalizzato Si considerino due reti elettriche lineari, A e B, aventi rispettivamente N A e N B nodi interni. Esse si interfacciano attraverso n (n 3) fili di collegamento, in cui

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

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

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

Università degli Studi di Milano

Università degli Studi di Milano Università degli Studi di Milano Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche FABIO SCOTTI I cifrari polialfabetici: Vigenère Laboratorio di programmazione per la sicurezza Indice

Dettagli

La codifica digitale

La codifica digitale La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore

Dettagli

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette Crittografia Cenni Damiano Carra Università degli Studi di Verona Dipartimento di Informatica La crittografia! Scienza che si occupa di proteggere l informazione rendendola sicura, in modo che un utente

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) Attacchi statistici

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

Data Encryption Standard. Alessandro Ballini Silvio Donnini Roberto Pariset Alberto Pettini

Data Encryption Standard. Alessandro Ballini Silvio Donnini Roberto Pariset Alberto Pettini Data Encryption Standard Alessandro Ballini Silvio Donnini Roberto Pariset Alberto Pettini DES, breve storia 1973: Il National Bureau of Standards (NBS) pubblica un bando in cui richiede un algoritmo di

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica)

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica) Crittografia asimmetrica (a chiave pubblica) Problemi legati alla crittografia simmetrica Il principale problema della crittografia simmetrica sta nella necessità di disporre di un canale sicuro per la

Dettagli

Teoria dell informazione

Teoria dell informazione Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Teoria dell informazione A.A. 2008-09 Alberto Perotti DELEN-DAUIN Modello di sistema di comunicazione Il modello di

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

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.

PORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1. PORTE LOGICHE Premessa Le principali parti elettroniche dei computer sono costituite da circuiti digitali che, come è noto, elaborano segnali logici basati sullo 0 e sull 1. I mattoni fondamentali dei

Dettagli

Crittografia classica: la storia

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

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

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

Cifrari a blocchi. Esercizi con OpenSSL. Alfredo De Santis. Marzo Dipartimento di Informatica Università di Salerno

Cifrari a blocchi. Esercizi con OpenSSL. Alfredo De Santis. Marzo Dipartimento di Informatica Università di Salerno Cifrari a blocchi Esercizi con OpenSSL Alfredo De Santis Dipartimento di Informatica Università di Salerno ads@unisa.it http://www.dia.unisa.it/professori/ads Marzo 2017 Strumenti Necessari Per lo svolgimento

Dettagli

RC4 RC4. Davide Cerri. Davide Cerri CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/

RC4 RC4. Davide Cerri. Davide Cerri CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ POLITECNICO DI MILANO CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ è un cifrario a flusso progettato da Ron Rivest (la R di RSA) nel 1987. Era un segreto commerciale della

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

Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica. Crittografia classica

Sicurezza nelle applicazioni multimediali: lezione 2, crittografia classica. Crittografia classica Crittografia classica Introduzione alla crittografia La crittografia è il processo di trasformazione di un messaggio in modo da renderlo incomprensibile per tutti, tranne che per il legittimo destinatario

Dettagli

Corso di Crittografia Prof. Dario Catalano. Firme Digitali

Corso di Crittografia Prof. Dario Catalano. Firme Digitali Corso di Crittografia Prof. Dario Catalano Firme Digitali Introduzione n Una firma digitale e l equivalente informatico di una firma convenzionale. n Molto simile a MA, solo che qui abbiamo una struttura

Dettagli

Ancora sui criteri di divisibilità di Marco Bono

Ancora sui criteri di divisibilità di Marco Bono Ancora sui criteri di divisibilità di Talvolta può essere utile conoscere i divisori di un numero senza effettuare le divisioni, anche se la diffusione delle calcolatrici elettroniche, sotto varie forme,

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 5, funzioni di hash. Funzioni crittografiche di hash

Sicurezza nelle applicazioni multimediali: lezione 5, funzioni di hash. Funzioni crittografiche di hash Funzioni crittografiche di hash Codici di checksum Un codice di checksum è una firma di dimensione fissa (ad es. 32 bit) calcolata a partire da un messaggio (*) di lunghezza variabile. Ogni messaggio ha

Dettagli

FIRMA ELETTRONICA. Il sistema di garanzia è stato individuato nella crittografia in quanto è in grado di assicurare:

FIRMA ELETTRONICA. Il sistema di garanzia è stato individuato nella crittografia in quanto è in grado di assicurare: Il sistema di garanzia è stato individuato nella crittografia in quanto è in grado di assicurare: Riservatezza (protezione delle informazioni da accessi non autorizzati) Integrità (garanzia che l'informazione

Dettagli

Capitolo 8 La sicurezza nelle reti

Capitolo 8 La sicurezza nelle reti Capitolo 8 La sicurezza nelle reti Reti di calcolatori e Internet: Un approccio top-down 4 a edizione Jim Kurose, Keith Ross Pearson Paravia Bruno Mondadori Spa 2008 Capitolo 8: La sicurezza nelle reti

Dettagli

Generatori di sequenze pseudocasuali. Manuela Aprile Maria Chiara Fumi

Generatori di sequenze pseudocasuali. Manuela Aprile Maria Chiara Fumi Generatori di sequenze pseudocasuali Manuela Aprile Maria Chiara Fumi Indice Concetti base e terminologia Random bit generator Pseudorandom bit generator Cenni di statistica Test Statistici Concetti base

Dettagli

Teoria dell Informazione

Teoria dell Informazione Corso di Laurea Magistrale in Scienze dell Informazione Editoriale, Pubblica e Sociale Teoria dell Informazione Cosa è l informazione L informazione è qualcosa che si possiede e si può dare ad un altro

Dettagli

Sicurezza e Crittografia

Sicurezza e Crittografia Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti Prof. Gabriele D'Angelo, Università di Bologna https://www.unibo.it/sitoweb/g.dangelo/

Dettagli

Storia della crittografia

Storia della crittografia Storia della crittografia (dal 700 all RSA) Salvatore Di Giovanni 1 sommario cilindro di Jefferson cifrario di Playfair cifrario di Delastelle cifra campale germanica cifrario di Vernam macchina Lorentz

Dettagli

0ROWLSOLFD]LRQHH'LYLVLRQH WUDQXPHULUHODWLYL

0ROWLSOLFD]LRQHH'LYLVLRQH WUDQXPHULUHODWLYL 0ROWLSOLFD]LRQHH'LYLVLRQH WUDQXPHULUHODWLYL Salvatore Orlando & Marta Simeoni Arch. Elab. - S. Orlando 1 0ROWLSOLFD]LRQHWUDQXPHULLQWHUL Oltre ai circuiti per realizzare somme e sottrazioni di interi, è

Dettagli

1.2d: La codifica Digitale dei caratteri

1.2d: La codifica Digitale dei caratteri 1.2d: La codifica Digitale dei caratteri 2 12 ott 2011 Bibliografia Curtin, 3.6 (vecchie edizioni) Curtin, 2.5 (nuova edizione) CR pag. 9-14 Questi lucidi 3 12 ott 2011 La codifica dei caratteri Un testo

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi Codice BCD Prima di passare alla rappresentazione dei numeri relativi in binario vediamo un tipo di codifica che ha una certa rilevanza in alcune applicazioni: il codice BCD (Binary Coded Decimal). È un

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

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link Sicurezza ai livelli di rete e data link Sicurezza a livello applicativo Ma l utilizzo di meccanismi di cifratura e autenticazione può essere introdotto anche ai livelli inferiori dello stack 2 Sicurezza

Dettagli

Sistemi Web per il turismo - lezione 3 -

Sistemi Web per il turismo - lezione 3 - Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa

Dettagli

RETI DI CALCOLATORI. Crittografia. La crittografia

RETI DI CALCOLATORI. Crittografia. La crittografia RETI DI CALCOLATORI Crittografia La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice ed è il fondamento su cui si basano i meccanismi di autenticazione,

Dettagli

Crittografia classica. Cifrario di Cesare. Cifrari classici di sostituzione. Crittografia Classica cenni storici

Crittografia classica. Cifrario di Cesare. Cifrari classici di sostituzione. Crittografia Classica cenni storici Sicurezza nei Sistemi Informativi Crittografia classica Cifrari: Crittografia Classica cenni storici Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it a sostituzione: monoalfabetica polialfabetica a

Dettagli

Sommario. Introduzione alla Sicurezza Web

Sommario. Introduzione alla Sicurezza Web Sommario Introduzione alla Sicurezza Web Considerazioni generali IPSec Secure Socket Layer (SSL) e Transport Layer Security (TLS) Secure Electronic Transaction (SET) Introduzione alla crittografia Introduzione

Dettagli

Analisi Numerica. Debora Botturi ALTAIR. Debora Botturi. Laboratorio di Sistemi e Segnali

Analisi Numerica. Debora Botturi ALTAIR.  Debora Botturi. Laboratorio di Sistemi e Segnali Analisi Numerica ALTAIR http://metropolis.sci.univr.it Argomenti Argomenti Argomenti Rappresentazione di sistemi con variabili di stato; Tecniche di integrazione numerica Obiettivo: risolvere sistemi di

Dettagli

Crittografia e sicurezza delle reti. WEP: Wired Equivalent Privacy

Crittografia e sicurezza delle reti. WEP: Wired Equivalent Privacy Crittografia e sicurezza delle reti WEP: Wired Equivalent Privacy Stream Ciphers Inizia con una chiave segreta ( seed ) Genera uno stream di byte (Keystream): byte i dello stream è funzione della chiave

Dettagli

Richiami di Algebra di Commutazione

Richiami di Algebra di Commutazione LABORATORIO DI ARCHITETTURA DEI CALCOLATORI lezione n Prof. Rosario Cerbone rosario.cerbone@libero.it http://digilander.libero.it/rosario.cerbone a.a. 6-7 Richiami di Algebra di Commutazione In questa

Dettagli

Architetture aritmetiche

Architetture aritmetiche Architetture aritmetiche Sommatori: : Full Adder, Ripple Carry Sommatori: Carry Look-Ahead Ahead, Carry Save, Add/Subtract Moltiplicatori: Combinatori, Wallace,, Sequenziali Circuiti per aritmetica in

Dettagli

Crittografia a chiave segreta

Crittografia a chiave segreta Sicurezza nei Sistemi Informativi Schema generico di un algoritmo crittografico Crittografia a chiave simmetrica Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica

Dettagli

La codifica di sorgente

La codifica di sorgente Tecn_prog_sist_inform Gerboni Roberta è la rappresentazione efficiente dei dati generati da una sorgente discreta al fine poi di trasmetterli su di un opportuno canale privo di rumore. La codifica di canale

Dettagli

Rappresentazione dell Informazione

Rappresentazione dell Informazione Rappresentazione dell Informazione Rappresentazione delle informazioni in codice binario Caratteri Naturali e Reali positivi Interi Razionali Rappresentazione del testo Una stringa di bit per ogni simbolo

Dettagli

Crittografia. Appunti a cura del prof. Ing. Mario Catalano

Crittografia. Appunti a cura del prof. Ing. Mario Catalano Crittografia Appunti a cura del prof. Ing. Mario Catalano La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice. Solitamente, i meccanismi crittografici

Dettagli

Protocollo di Yao. Secure Two-Party Computation. Prof. Paolo D Arco. Università degli Studi di Salerno

Protocollo di Yao. Secure Two-Party Computation. Prof. Paolo D Arco. Università degli Studi di Salerno Protocollo di Yao Secure Two-Party Computation Prof. Paolo D Arco Università degli Studi di Salerno Presentazione a cura di Michele Boccia e Francesco Matarazzo made with LATEX 12 Giugno, 2012 Prof. Paolo

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

Lezione 7 Sommatori e Moltiplicatori

Lezione 7 Sommatori e Moltiplicatori Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 /36 Sommario

Dettagli

Roberto Maieli La trasmissione dell informazione

Roberto Maieli La trasmissione dell informazione Roberto Maieli La trasmissione dell informazione Corso di AIC Sistema di comunicazione Sorgente messaggio Sistema di trasmissione Trasmettitore Canale di trasmissione segnale Ricevitore rumore messaggio

Dettagli

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi

Lezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare

Dettagli

Elementi di Teoria dei Sistemi. Definizione di sistema dinamico. Cosa significa Dinamico? Sistema dinamico a tempo continuo

Elementi di Teoria dei Sistemi. Definizione di sistema dinamico. Cosa significa Dinamico? Sistema dinamico a tempo continuo Parte 2, 1 Parte 2, 2 Elementi di Teoria dei Sistemi Definizione di sistema dinamico Parte 2, 3 Sistema dinamico a tempo continuo Cosa significa Dinamico? Parte 2, 4? e` univocamente determinata? Ingresso

Dettagli

FUNZIONI BOOLEANE. Vero Falso

FUNZIONI BOOLEANE. Vero Falso FUNZIONI BOOLEANE Le funzioni booleane prendono il nome da Boole, un matematico che introdusse un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono

Dettagli

schema di firma definizione formale

schema di firma definizione formale schema di firma Alice firma un messaggio da mandare a Bob ci sono due componenti: un algoritmo sig per firmare e un algoritmo ver per verificare quello per firmare dev essere privato (solo Alice può firmare)

Dettagli

1) Probabilità di errore di trasmissione. 2) Capacità di canale. 3) Esempi di calcolo della capacità. 4) Disuguaglianza di Fano

1) Probabilità di errore di trasmissione. 2) Capacità di canale. 3) Esempi di calcolo della capacità. 4) Disuguaglianza di Fano Argomenti della Lezione 1) Probabilità di errore di trasmissione ) Capacità di canale 3) Esempi di calcolo della capacità 4) Disuguaglianza di Fano 5) Teorema inverso della codifica di canale 1 Probabilità

Dettagli

Moltiplicazione e Divisione tra numeri relativi

Moltiplicazione e Divisione tra numeri relativi Moltiplicazione e Divisione tra numeri relativi Salvatore Orlando & Marta Simeoni Arch. Elab.A M. Simeoni 1 Moltiplicazione tra numeri interi Oltre ai circuiti per realizzare somme e sottrazioni di interi,

Dettagli

Laurea Magistrale in Bioingegneria Corso di Informatica Medica (Prof. Giovanni Sparacino) A.A. 2008-2009

Laurea Magistrale in Bioingegneria Corso di Informatica Medica (Prof. Giovanni Sparacino) A.A. 2008-2009 Laurea Magistrale in Bioingegneria Corso di Informatica Medica (Prof. Giovanni Sparacino) A.A. 2008-2009 Homework Parte 3: Sicurezza dei dati sanitari Esercizi, e relative soluzioni, a cura dell Ing. Costanza

Dettagli

Scambio delle chiavi. mercoledì 7 dicembre 2011

Scambio delle chiavi. mercoledì 7 dicembre 2011 Scambio delle chiavi 1 mercoledì 7 dicembre 2011 Distribuzione della chiave Dati due terminali A e B, si possono avere varie alternative per la distribuzione delle chiavi. 1. A sceglie una chiave e la

Dettagli

Anno 4 Matrice inversa

Anno 4 Matrice inversa Anno 4 Matrice inversa 1 Introduzione In questa lezione parleremo della matrice inversa di una matrice quadrata: definizione metodo per individuarla Al termine della lezione sarai in grado di: descrivere

Dettagli

Nell informatica esistono alcuni problemi particolarmente rilevanti, poiché essi:

Nell informatica esistono alcuni problemi particolarmente rilevanti, poiché essi: Pag 24 3) Il problema della ricerca Nell informatica esistono alcuni problemi particolarmente rilevanti, poiché essi: si incontrano in una grande varietà di situazioni reali; appaiono come sottoproblemi

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

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

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento Fondamenti di Informatica Algoritmi di Ricerca e di Ordinamento 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare se un elemento fa parte della sequenza oppure l elemento

Dettagli

La crittografia moderna e la sua applicazione

La crittografia moderna e la sua applicazione La crittografia moderna e la sua applicazione Corso FSE per la GdF Crittosistemi basati sulle Curve Ellittiche Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli

Dettagli

La codifica. dell informazione

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

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Moltiplicazione e divisione tra numeri interi: algoritmi e circuiti slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello Operazioni aritmetiche e logiche Abbiamo visto che le ALU sono in grado

Dettagli

Crittografia avanzata Lezione del 7 Marzo 2011

Crittografia avanzata Lezione del 7 Marzo 2011 Crittografia avanzata Lezione del 7 Marzo 2011 L'informazione nei messaggi (1) L'informazione nei messaggi è generalmente ridondante. Es. nelle parole di una frase inglese il contenuto di informazione

Dettagli

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006

Array e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 12 Array e Oggetti A. Miola Dicembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Array e Oggetti 1 Contenuti Array paralleli

Dettagli

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3

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

Sistemi lineari - Parte Seconda - Esercizi

Sistemi lineari - Parte Seconda - Esercizi Sistemi lineari - Parte Seconda - Esercizi Terminologia Operazioni elementari sulle righe. Equivalenza per righe. Riduzione a scala per righe. Rango di una matrice. Forma canonica per righe. Eliminazione

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

CRITTOGRAFIA E NUMERI PRIMI TFA A059 ANNA NOBILI OTTAVIANO ROSI

CRITTOGRAFIA E NUMERI PRIMI TFA A059 ANNA NOBILI OTTAVIANO ROSI CRITTOGRAFIA E NUMERI PRIMI TFA A059 ANNA NOBILI OTTAVIANO ROSI Cenni Storici Nasce dall esigenza di avere metodi efficienti per comunicare in modo segreto e sicuro. La crittografia non mira a nascondere

Dettagli

..., x M. : codice o sequenza di bit che rappresentano il messaggio x i ; n i : lunghezza in bit del codice C X i

..., x M. : codice o sequenza di bit che rappresentano il messaggio x i ; n i : lunghezza in bit del codice C X i Definizioni X : sorgente di informazione discreta; X k : messaggi prodotti da X ; ogni messaggio è una v.c.d., k è l'indice temporale; alfabeto di X : insieme {x,..., x } degli messaggi che la sorgente

Dettagli

Rapida Nota sulla Rappresentazione dei Caratteri

Rapida Nota sulla Rappresentazione dei Caratteri TECNOLOGIA DIGITALE TECNOLOGIA DIGITALE (segue) CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale Dati ed operazioni vengono codificati tramite sequenze di bit 8 bit

Dettagli

Esercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale

Esercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale Esercizi svolti 1. Matrici e operazioni fra matrici 1.1 Date le matrici 1 2 1 6 A = B = 5 2 9 15 6 risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale Osservazione iniziale: qualunque

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

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A =

Esercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A = Esercitazione di Calcolo Numerico 22 Aprile 29. Determinare la fattorizzazione LU della matrice a A = 3a 2 a 2a a a 2 ed utilizzarla per calcolare il det(a). 2. Calcolare il determinante della matrice

Dettagli