Crittografia. Corso di Laurea Specialistica. in Informatica. Generatori di Numeri PseudoCasuali

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Crittografia. Corso di Laurea Specialistica. in Informatica. Generatori di Numeri PseudoCasuali"

Transcript

1 Crittografia Corso di Laurea Specialistica in Informatica Generatori di Numeri PseudoCasuali Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca alberto.leporati@unimib.it leporati@disco.unimib.it

2 molti algoritmi crittografici necessitano di (tanti) bit casuali le sorgenti casuali (macroscopiche) sono rare in Natura Ø produrre bit casuali è costoso idea: si usa un generatore di numeri pseudocasuali (PRNG) dato un seme casuale, un PRNG produce una sequenza di bit che è indistinguibile da una sequenza di bit casuali Alberto Leporati Corso di Crittografia 2

3 indistinguibile significa che nessun algoritmo eseguibile in tempo polinomiale su una MdT probabilistica sa decidere se la sequenza emessa dal PRNG è casuale oppure calcolata Ø nozione di tipo computazionale la casualità sembra esistere veramente in Natura Ø non sarebbe una nozione di tipo computazionale Alberto Leporati Corso di Crittografia 3

4 definizione: un PRNG è un algoritmo, eseguibile in tempo polinomiale su una MdT deterministica, che calcola una funzione e tale che: G : {0,1} k Ø {0,1} l(k), con l(k) > k per ogni algoritmo D (distinguisher) œ PPT per ogni polinomio p( ) per tutti gli interi k sufficientemente grandi vale: ) Pr[ {0,1} ; ( ) : ( ) 1] Pr[ {0,1} : ( ) 1] k l ( k x r G x D r = r D r = < ) p 1 ( k Alberto Leporati Corso di Crittografia 4

5 osservazione: la distanza tra le due distribuzioni di probabilità corrisponde alla capacità di inganno di G i PRNG possono essere uniformi o non uniformi generatore congruenziale lineare: siano a, b ed m tre interi tali che 0 a, b < m dato un seme intero s, con 0 s < m, il sistema di equazioni: x x 0 i = = s ax i 1 + b mod m i 1 si chiama generatore congruenziale lineare Alberto Leporati Corso di Crittografia 5

6 proposto da Lehmer nel 1951 la scelta di a, b ed m è critica per non ottenere sequenze facili da prevedere viene usato spesso (ma non in Crittografia) non è un buon generatore: i numeri prodotti presentano relazioni lineari se Eve scopre quattro valori x 0, x 1, x 2, x 3 prodotti, risolvendo il sistema di equazioni: trova i valori di a, b, ed m x x x ax ax ax b b b mod mod mod m m m Alberto Leporati Corso di Crittografia 6

7 problema: costruire una funzione G : {0,1} k Ø {0,1} l(k) che allunga l input, verificando i requisiti della definizione domanda: dobbiamo costruire una funzione diversa per ogni possibile funzione l(k)? Alberto Leporati Corso di Crittografia 7

8 risposta: no. A partire da un PRNG H : {0,1} k Ø {0,1} k+1 possiamo costruire qualunque PRNG G : {0,1} k Ø {0,1} l(k) come segue: G(x 0 ) x 1 σ 1 = H(x 0 ) x 2 σ 2 = H(x 1 ) x l(k) σ l(k) = H(x l(k)-1 ) output (σ 1, σ 2,, σ l(k) x i œ {0,1} i œ i œ {1, 2,, l(k)} Alberto Leporati Corso di Crittografia 8

9 abbiamo quindi ridotto il problema di costruire G a quello di costruire H, che allunga l input di un solo bit ci basterà una funzione one-way definiamo il concetto di hard-core bit se f è una funzione (permutazione) one-way, è difficile da invertire: dato y, è difficile calcolare x tale che f(x) = y se x è difficile da calcolare, alcuni suoi bit saranno difficili da calcolare (se x œ {0,1} n, devono essere più di log 2 n, ad esempio n/4) Alberto Leporati Corso di Crittografia 9

10 i bit difficili da calcolare sono hard-core bit per f formalmente, un hard-core bit è l output di un predicato hard-core definizione: sia f : {0,1} n Ø {0,1} n una permutazione one-way, e B: {0,1} n Ø {0,1} un predicato calcolabile in tempo polinomiale su una MdT deterministica. B è un predicato hard-core per f se " algoritmo A œ PPT e " polinomio p( ) $ n A,p tale che: n n n A p Pr[ x {0,1} ; b A ( f ( x )) : b = B ( x )] +, 1 2 p 1 ( n ) Alberto Leporati Corso di Crittografia 10

11 utilizzando f e B possiamo costruire un PRNG G : {0,1} k Ø {0,1} k+1 come segue: G( x ) = f(x) B(x) k bit 1 bit k bit osservazione: l output di G è difficile da prevedere domanda: come facciamo a costruire predicati hard-core? caso speciale: se g è un generatore di p * e y = g z mod p, allora msb(z) è un predicato hard-core per l esponenziazione modulare [Blum e Micali] Alberto Leporati Corso di Crittografia 11

12 quindi, possiamo costruire un PRNG basato sull esponenziazione modulare come segue: G(z) = g z msb(z) in generale, possiamo procedere come segue definizione: siano x = (x 1, x 2,, x n ) e y = (y 1, y 2,, y n ) due sequenze di n bit. Il prodotto interno modulo 2 tra x e y, denotato con x, yú, è definito come segue: n n i i i= 1 i= 1 def x, y = x y mod 2 = ( x i y i ) Alberto Leporati Corso di Crittografia 12

13 teorema (Goldreich Levin): sia f(x) una permutazione one-way, e sia g(x, y) = f(x) y, con x = y = n. Allora la funzione: B(x, y) = def x, yú è un predicato hard-core per g osservazione: se f è una permutazione one-way, anche g lo è quindi, data (solo) la permutazione one-way f su {0,1} n, possiamo costruire un PRNG G : {0,1} 2n Ø {0,1} 2n+1 Alberto Leporati Corso di Crittografia 13

14 come segue: G(x, y) = g(x, y) B(x, y) = f(x) y x, yú domanda: quando abbiamo un algoritmo G che pensiamo essere un PRNG, come facciamo a dimostrarlo? idea: possiamo eseguire dei test sulla sequenza di bit prodotti da G, per vedere se ci sono relazioni statistiche tra di essi problema: i test (e le relazioni da testare) sono infiniti! questo significa che non possiamo dimostrare che G è uno PRNG? Alberto Leporati Corso di Crittografia 14

15 per fortuna, Yao ha dimostrato che esiste un test universale definizione: sia G : {0,1} k Ø {0,1} l(k). G è impredicibile se e solo se " i œ {1,2,, l(k)}, " polinomio p( ) e " algoritmo A œ PPT, $ k A,p tale che " k k A,p : Pr[ x {0,1} k ; ( σ 1,..., ˆ σ i σ l ( k ) ) A ( = σ G 1 ( x,..., ); σ i ) : = ˆ 1 σ i σ i ] p 1 ( k ) Alberto Leporati Corso di Crittografia 15

16 informalmente, G è impredicibile se il problema di indovinare l i-esimo bit della sequenza prodotto in output, dati i primi i-1 bit, è intrattabile con indovinare si intende significativamente meglio rispetto a lanciare una moneta non truccata teorema [Yao, 1985]: G è un PRNG se e solo se è impredicibile Alberto Leporati Corso di Crittografia 16

17 Cifratura ciclica proposta da Meyer e Matyas nel 1982 a partire da una master key (seme) si produce una sequenza di chiavi di sessione si usa un contatore avente periodo il valore del contatore viene usato come chiave (o come testo in chiaro) in un crittosistema simmetrico ogni volta che viene usato, il contatore viene incrementato Alberto Leporati Corso di Crittografia 17

18 Cifratura ciclica per rafforzare ulteriormente lo schema si può usare una sequenza di input più complicata contatore con periodo N C C+1 master key k m ENC x i = Ekm (C+1) Alberto Leporati Corso di Crittografia 18

19 Keystream nel modo OFB si può anche usare il modo di funzionamento OFB di un crittosistema simmetrico per generare un keystream, che poi si usa come l output di un PRNG z 0 z 1 E k z 2 E k m 1 m 2 c 1 c 2 Alberto Leporati Corso di Crittografia 19

20 ANSI X9.17 è uno dei PRNG crittografici migliori tra quelli noti viene usato in PGP utilizza 3DES come indicato in figura (vedere prossima slide) input: DT i : rappresentazione a 64 bit della data e dell ora attuali. Viene aggiornato ad ogni blocco pseudocasuale generato V i : seme da 64 bit chiavi: k 1, k 2 : da 64 bit ciascuna Vengono usate nei tre moduli di 3DES, in modalità EDE (encryption decryption encryption) Alberto Leporati Corso di Crittografia 20

21 ANSI X9.17 Alberto Leporati Corso di Crittografia 21

22 ANSI X9.17 output: R i : blocco pseudocasuale da 64 bit V i+1 : valore aggiornato del seme dalla figura si vede che: R i = EDEk1,k2 (V i EDE k1,k2 (DT i )) V i+1 = EDEk1,k2 (R i EDE k1,k2 (DT i )) riassumendo, il PRNG: usa una chiave da 112 bit vengono fatte nove cifrature/decifrature con DES si usano i valori pseudocasuali DT i e V i, che cambiano ad ogni valore prodotto Alberto Leporati Corso di Crittografia 22

23 ANSI X9.17 per quanto riguarda la sicurezza: la quantità di informazioni da compromettere è enorme anche se Eve riesce a trovare un R i, non riesce comunque a trovare i successivi Alberto Leporati Corso di Crittografia 23

24 Generatore di Blum, Blum e Shub (BBS) proposto nel 1986 siano p e q numeri primi (grandi) tali che: p ª q ª 3 mod 4 sia n = pÿ q si sceglie a caso s tale che MCD(s, n) = 1 (s non è multiplo né di p né di q) il generatore produce la sequenza di bit: B 1, B 2, con il seguente algoritmo Alberto Leporati Corso di Crittografia 24

25 Generatore di Blum, Blum e Shub (BBS) BBS(s) X 0 = s 2 mod n i = 1 while (true) do X i = (X i-1 ) 2 mod n B i = X i mod B i = lsb(x i ) la sicurezza si basa sulla (congetturata) difficoltà di fattorizzare n Alberto Leporati Corso di Crittografia 25

26 Generatore di Blum, Blum e Shub (BBS) si dimostra che BBS supera il next-bit test ovvero, non esiste nessun algoritmo polinomiale che, dati i primi k bit della sequenza di output: B 1, B 2,, B k è in grado di indovinare il (k+1)-esimo (cioè B k+1 ) con probabilità > ½ Alberto Leporati Corso di Crittografia 26

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

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

Dettagli

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

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

Dettagli

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

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

Crittografia. Crittosistemi a Chiave Pubblica. Corso di Laurea Specialistica. in Informatica

Crittografia. Crittosistemi a Chiave Pubblica. Corso di Laurea Specialistica. in Informatica Crittografia Corso di Laurea Specialistica in Informatica Crittosistemi a Chiave Pubblica Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca

Dettagli

maggiore velocità per cifratura/decifratura l uso di chiavi più corte comporta: memorizzazione efficiente Alberto Leporati Corso di Crittografia 2

maggiore velocità per cifratura/decifratura l uso di chiavi più corte comporta: memorizzazione efficiente Alberto Leporati Corso di Crittografia 2 Crittografia Corso di Laurea Specialistica in Informatica Crittosistemi basati sulle Curve Ellittiche Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di

Dettagli

Crittografia. Corso di Laurea Specialistica. in Informatica. Crittosistemi basati sulle Curve. Ellittiche

Crittografia. Corso di Laurea Specialistica. in Informatica. Crittosistemi basati sulle Curve. Ellittiche Crittografia Corso di Laurea Specialistica in Informatica Crittosistemi basati sulle Curve Ellittiche Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di

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

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

Crittografia Moderna. Segretezza Perfetta: nozioni

Crittografia Moderna. Segretezza Perfetta: nozioni Crittografia Moderna Segretezza Perfetta: nozioni Segretezza perfetta Ci occuperemo di schemi di cifratura perfettamente sicuri Avversari di potere computazionale illimitato confidenzialità / riservatezza

Dettagli

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema Numeri casuali Importanti per molte primitive crittografiche un avversario non deve determinarli o indovinarli se non con una bassa probabilità Generazione Deterministica? Anyone who considers arithmetical

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

le sorgenti casuali (macroscopiche) sono idea: si usa un generatore di numeri sequenza di bit casuali Alberto Leporati Corso di Crittografia 2

le sorgenti casuali (macroscopiche) sono idea: si usa un generatore di numeri sequenza di bit casuali Alberto Leporati Corso di Crittografia 2 Crttografa Corso d Laurea Specalstca Iformatca Geerator d Numer PseudoCasual Alberto Leporat Dpartmeto d Iformatca, Sstemstca e Comucazoe Uverstà degl Stud d Mlao Bcocca e-mal: alberto.leporat@umb.t leporat@dsco.umb.t

Dettagli

una possibile funzione unidirezionale

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

Dettagli

Crittografia. Corso di Laurea Magistrale in Informatica Algebra, Teoria dei Numeri e Relative Assunzioni. Ugo Dal Lago. Anno Accademico

Crittografia. Corso di Laurea Magistrale in Informatica Algebra, Teoria dei Numeri e Relative Assunzioni. Ugo Dal Lago. Anno Accademico Crittografia Corso di Laurea Magistrale in Informatica Algebra, Teoria dei Numeri e Relative Assunzioni Ugo Dal Lago Anno Accademico 2018-2019 Dove Eravamo Rimasti? Predicati Hard-Core Generatori Pseudocasuali

Dettagli

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema Numeri casuali Importanti per molte primitive crittografiche un avversario non deve determinarli o indovinarli se non con una bassa probabilità Generazione Deterministica? Anyone who considers arithmetical

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

5. Analisi dei dati di input

5. Analisi dei dati di input Anno accademico 2007/08 Analisi e scelta dei dati di input Per l esecuzione di una simulazione è necessario disporre di dati di input che siano una adeguata rappresentazione di ciò che accadrà in realtà

Dettagli

Crittografia e sicurezza delle reti. 1. Classi complessità probabilistiche e OWF 2. Test primalità

Crittografia e sicurezza delle reti. 1. Classi complessità probabilistiche e OWF 2. Test primalità Crittografia e sicurezza delle reti 1. Classi complessità probabilistiche e OWF 2. Test primalità Classi di complessità Una classe di complessità è una classe di problemi di decisione (linguaggi) che possono

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

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema

Numeri casuali. Randomness by obscurity. Generazione Deterministica? Caratteristiche del sistema. Caratteristiche del sistema Numeri casuali Importanti per molte primitive crittografiche un avversario non deve determinarli o indovinarli se non con una bassa probabilità Generazione Deterministica? Anyone who considers arithmetical

Dettagli

NUMERI CASUALI E SIMULAZIONE

NUMERI CASUALI E SIMULAZIONE NUMERI CASUALI E SIMULAZIONE NUMERI CASUALI Usati in: statistica programmi di simulazione... Strumenti: - tabelle di numeri casuali - generatori hardware - generatori software DESCRIZIONE DEL PROBLEMA

Dettagli

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

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

Dettagli

Metodi di Ottimizzazione

Metodi di Ottimizzazione Metodi di Ottimizzazione Stefano Gualandi Università di Pavia, Dipartimento di Matematica email: twitter: blog: stefano.gualandi@unipv.it @famospaghi, @famoconti http://stegua.github.com Metodi di Ottimizzazione

Dettagli

una possibile funzione unidirezionale

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

Dettagli

Corso di Crittografia Prof. Dario Catalano. Primitive Asimmetriche

Corso di Crittografia Prof. Dario Catalano. Primitive Asimmetriche Corso di Crittografia Prof. Dario Catalano Primitive Asimmetriche Introduzione n Oggi discuteremo le primitive sulla base delle quali costruire sistemi asimmetrici affidabili. n Nel caso della crittografia

Dettagli

Cenni di teoria dell informazione

Cenni di teoria dell informazione Cenni di teoria dell informazione Gregorio D Agostino 12 Maggio 2017 Cifrario perfetto Un cifrario si dice perfetto se l informazione mutua tra crittogramma e messaggio è nulla: I(M C) = 0 = H(M) H(M

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

GENERAZIONE DI NUMERI PSEUDOCASUALI

GENERAZIONE DI NUMERI PSEUDOCASUALI GENERAZIONE DI NUMERI PSEUDOCASUALI Corso di Tecniche di Simulazione, a.a. 2005/2006 Francesca Mazzia Dipartimento di Matematica Università di Bari 24 Aprile 2006 Francesca Mazzia (Univ. Bari) GENERAZIONE

Dettagli

CALCOLO NUMERICO. Prof. Di Capua Giuseppe. Appunti di Informatica - Prof. Di Capua 1

CALCOLO NUMERICO. Prof. Di Capua Giuseppe. Appunti di Informatica - Prof. Di Capua 1 CALCOLO NUMERICO Prof. Di Capua Giuseppe Appunti di Informatica - Prof. Di Capua 1 INTRODUZIONE Quando algoritmi algebrici non determinano la soluzione di un problema o il loro «costo» è molto alto, allora

Dettagli

2.3.1 Generazione di numeri pseudocasuali con distribuzione uniforme

2.3.1 Generazione di numeri pseudocasuali con distribuzione uniforme GENERAZIONE DI OSSERVAZIONI CASUALI 145 2.3 GENERAZIONE DI OSSERVAZIONI CASUALI Una volta determinate le distribuzioni di input, la simulazione dovrà generare durante ogni esecuzione osservazioni casuali

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

Limiti della calcolabilità

Limiti della calcolabilità Limiti della calcolabilità Argomenti della lezione Macchina di Turing universale Il problema della terminazione Altri problemi indecidibili Macchine di Turing in forma ridotta Per ogni MT M esiste una

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

una possibile funzione unidirezionale

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

Dettagli

una possibile funzione unidirezionale

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

Dettagli

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 Costruzioni Vedremo alcune costruzioni basate

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

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

idea della crittografia a chiave pubblica

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

Dettagli

Corso di Crittografia

Corso di Crittografia Corso di Crittografia Esercizi Addizionali su Cifrari Simmetrici e MAC 1. Sia F : {0, 1} k {0, 1}`! {0, 1} L una funzione pseudocasuale sicura e si consideri il seguente cifrario simmetrico. Lo spazio

Dettagli

L algoritmo AKS. L algoritmo AKS. Seminario per il corso di Elementi di Algebra Computazionale. Oscar Papini. 22 luglio 2013

L algoritmo AKS. L algoritmo AKS. Seminario per il corso di Elementi di Algebra Computazionale. Oscar Papini. 22 luglio 2013 L algoritmo AKS Seminario per il corso di Elementi di Algebra Computazionale Oscar Papini 22 luglio 2013 Test di primalità Come facciamo a sapere se un numero n è primo? Definizione (Test di primalità)

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

Progetto Lauree Scientifiche Crittografia V incontro

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

Dettagli

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

Crittografia. Firme Digitali e Funzioni di Hash. Corso di Laurea Specialistica. in Informatica

Crittografia. Firme Digitali e Funzioni di Hash. Corso di Laurea Specialistica. in Informatica Crittografia Corso di Laurea Specialistica in Informatica Firme Digitali e Funzioni di Hash Alberto Leporati Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi di Milano Bicocca

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

(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

Il concetto di calcolatore e di algoritmo

Il concetto di calcolatore e di algoritmo Il concetto di calcolatore e di algoritmo Elementi di Informatica e Programmazione Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Informatica

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

La matematica negli algoritmi. Maat: dea egizia dell ordine. Liber Abaci 1202

La matematica negli algoritmi. Maat: dea egizia dell ordine. Liber Abaci 1202 La matematica negli algoritmi Maat: dea egizia dell ordine Liber Abaci 1202 Tre concetti di base La decidibilità il concetto di algoritmo non esistono dimostrazioni gratis La crescita esponenziale rappresentazione

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

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

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

Generatori di numeri pseudocasuali

Generatori di numeri pseudocasuali Generatori di numeri pseudocasuali Davide Buffelli, Marco Tramarin, Federico Turrin Università degli Studi di Padova Dipartimento di Ingegneria dell Informazione Algoritmica Avanzata 8 giugno 2017 1 /

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

Capitolo 11. Teoria della computazione Pearson Addison-Wesley. All rights reserved

Capitolo 11. Teoria della computazione Pearson Addison-Wesley. All rights reserved Capitolo 11 Teoria della computazione 2007 Pearson Addison-Wesley. All rights reserved Capitolo 11: Teoria della computazione 11.1 Funzioni e loro calcolo 11.2 Macchine di Turing 11.3 Linguaggi gg di programmazione

Dettagli

Teoria dei Fenomeni Aleatori AA 2012/13

Teoria dei Fenomeni Aleatori AA 2012/13 Simulazione al Calcolatore La simulazione al calcolatore (computer simulation), (nel caso qui considerato simulazione stocastica) si basa sulla generazione, mediante calcolatore, di sequenze di numeri

Dettagli

Probabilità e Statistica

Probabilità e Statistica Probabilità e Statistica Non faremo una trattazione sistematica di probabilità e statistica (si veda in proposito il corso di Esperimentazioni III) Richiameremo alcuni argomenti che avete già visto quando

Dettagli

Teoria della Calcolabilità

Teoria della Calcolabilità Teoria della Calcolabilità! Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo.! L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici

Dettagli

Gruppi, Anelli, Campi

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

Dettagli

Problemi, algoritmi, calcolatore

Problemi, algoritmi, calcolatore Problemi, algoritmi, calcolatore Informatica e Programmazione Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin Problemi, algoritmi, calcolatori Introduzione

Dettagli

Generazione di numeri random. Distribuzioni uniformi

Generazione di numeri random. Distribuzioni uniformi Generazione di numeri random Distribuzioni uniformi I numeri random Per numero random (o numero casuale) si intende una variabile aleatoria distribuita in modo uniforme tra 0 e 1. Le proprietà statistiche

Dettagli

Minimi quadrati e massima verosimiglianza

Minimi quadrati e massima verosimiglianza Minimi quadrati e massima verosimiglianza 1 Introduzione Nella scorsa lezione abbiamo assunto che la forma delle probilità sottostanti al problema fosse nota e abbiamo usato gli esempi per stimare i parametri

Dettagli

Teoria della complessità

Teoria della complessità Teoria della complessità Materiale consigliato: testo del corso capitolo 34 Introduzione agli algoritmi e strutture dati T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein McGraw Hill, 2005 Denise Salvi

Dettagli

una possibile funzione unidirezionale

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

Dettagli

Fully Homomorphic Ecryption

Fully Homomorphic Ecryption Fully Homomorphic Ecryption Statistical Indistingushability Date due distribuzioni di probabilità X, Y definite su un supporto (finito) A. X,Y = ω A Pr[X = ω] Pr[Y = ω] X e Y sono statisticamente indistinguibili

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

Corso di Crittografia Prof. Dario Catalano. Cifrari Simmetrici (Prima Parte)

Corso di Crittografia Prof. Dario Catalano. Cifrari Simmetrici (Prima Parte) Corso di Crittografia Prof. Dario Catalano Cifrari Simmetrici (Prima Parte) Introduzione n Oggi (ri)parleremo di schemi di cifratura. n Consisitono in n Un algoritmo di cifratura ENC n Un algoritmo di

Dettagli

Esercitazione per la prova scritta

Esercitazione per la prova scritta Esercitazione per la prova scritta x 2 Esercizio 1 x n k in ECB/CBC/CFB/OFB Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci

Dettagli

Teoria della Calcolabilità!

Teoria della Calcolabilità! Teoria della Calcolabilità Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo. L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici

Dettagli

una possibile funzione unidirezionale

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

Dettagli

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

Complessità computazionale. Complessità e Crittografia

Complessità computazionale. Complessità e Crittografia computazionale e Crittografia Piero A. Bonatti Università di Napoli Federico II Laurea Magistrale in Informatica Tema della lezione I Le funzioni crittografiche per cifrare e decifrare messaggi comunemente

Dettagli

Corso di Crittografia

Corso di Crittografia Corso di Crittografia Prova in Itinere del 21 Giugno 2013 1. Si definisca formalmente il concetto di indistinguibilità ind-id-cpa per cifrari basati sull identità. 2. Si consideri il seguente problema

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

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

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

Dettagli

Teoria dei Fenomeni Aleatori AA 2012/13

Teoria dei Fenomeni Aleatori AA 2012/13 Simulazione al Calcolatore La simulazione al calcolatore (computer simulation), (nel caso qui considerato simulazione stocastica) si basa sulla generazione, mediante calcolatore, di sequenze di numeri

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

Fondamenti dell informatica

Fondamenti dell informatica Fondamenti dell informatica Funzioni ricorsive e linguaggi funzionali Rosario Culmone rosario.culmone@unicam.it 16/4/2008 UNICAM - p. 1/21 Funzioni ricorsive Metodo di definizione di algoritmi introdotto

Dettagli

SICUREZZA DI SHANNON E SICUREZZA COMPUTAZIONALE

SICUREZZA DI SHANNON E SICUREZZA COMPUTAZIONALE Alma Mater Studiorum Università di Bologna SCUOLA DI SCIENZE Corso di Laurea in Matematica SICUREZZA DI SHANNON E SICUREZZA COMPUTAZIONALE Tesi di Laurea in Crittografia Relatore: Chiar.mo Prof. DAVIDE

Dettagli

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

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

Dettagli

Analisi e scelta dei dati di input

Analisi e scelta dei dati di input Capitolo 4 Analisi e scelta dei dati di input 4.1 Introduzione Per l esecuzione di una simulazione è necessario disporre di dati di input che siano una adeguata rappresentazione di ciò che accadrà in realtà

Dettagli

Analisi e scelta dei dati di input

Analisi e scelta dei dati di input Capitolo 4 Analisi e scelta dei dati di input 4.1 Introduzione Per l esecuzione di una simulazione è necessario disporre di dati di input che siano una adeguata rappresentazione di ciò che accadrà in realtà

Dettagli

Corso di Crittografia

Corso di Crittografia Prova in Itinere del 24 Aprile 203 2. Sia SE=(KeyGen,Enc,Dec) uncifrariosimmetricoesianom, K, C gli insiemi dei messaggi, delle chiavi e dei crittotesti, rispettivamente. M = {, 2, 3} K = {, 2, 3} Supponiamo

Dettagli

Number Theory. Teoria dei numeri. Teorema della divisione. Corso di Sicurezza su reti Concetti preliminari per RSA

Number Theory. Teoria dei numeri. Teorema della divisione. Corso di Sicurezza su reti Concetti preliminari per RSA Number Theory Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Teoria dei numeri Concetti preliminari per

Dettagli

Dal messaggio a sequenze di numeri

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

Dettagli

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

Teoria della Calcolabilità!

Teoria della Calcolabilità! Teoria della Calcolabilità! Si occupa delle questioni fondamentali circa la potenza e le limitazioni dei sistemi di calcolo.! L'origine risale alla prima metà del ventesimo secolo, quando i logici matematici

Dettagli

Capitolo 8: Teoria della complessitá

Capitolo 8: Teoria della complessitá Capitolo 8: Teoria della complessitá 1 La Teoria della calcolabilitá considera aspetti qualitativi della soluzione di problemi. Distingue il calcolabile dal non calcolabile. La Teoria della complessitá

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

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

Aritmetica 2009/10 Compitino 3/11/ x 16 mod 23 3x 2 mod 5

Aritmetica 2009/10 Compitino 3/11/ x 16 mod 23 3x 2 mod 5 Aritmetica 2009/10 Compitino 3/11/2009 1. Trovare le soluzioni intere del sistema 4 x 16 mod 23 3x 2 mod 5 Esempio risoluzione: Cerchiamo di riportarci ad un sistema di congruenze lineari. Calcoliamo l

Dettagli