riptografie şi Securitate

Σχετικά έγγραφα
riptografie şi Securitate

Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate.

Criptosisteme cu cheie publică III

Metode iterative pentru probleme neliniare - contractii

V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile

Curs 4 Serii de numere reale

Curs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi"

DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE

a n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea

Asupra unei inegalităţi date la barajul OBMJ 2006

Curs 1 Şiruri de numere reale

(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a.

Sisteme diferenţiale liniare de ordinul 1

SERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0

Integrala nedefinită (primitive)

Planul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1

III. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă.

5.5. REZOLVAREA CIRCUITELOR CU TRANZISTOARE BIPOLARE

Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor

Examen AG. Student:... Grupa:... ianuarie 2011

Aplicaţii ale principiului I al termodinamicii la gazul ideal

Capitolul 4. Integrale improprii Integrale cu limite de integrare infinite

Metode de interpolare bazate pe diferenţe divizate

MARCAREA REZISTOARELOR

a. 11 % b. 12 % c. 13 % d. 14 %

a) (3p) Sa se calculeze XY A. b) (4p) Sa se calculeze determinantul si rangul matricei A. c) (3p) Sa se calculeze A.

BARAJ DE JUNIORI,,Euclid Cipru, 28 mai 2012 (barajul 3)

Criterii de comutativitate a grupurilor

SEMINAR 14. Funcţii de mai multe variabile (continuare) ( = 1 z(x,y) x = 0. x = f. x + f. y = f. = x. = 1 y. y = x ( y = = 0

Examen AG. Student:... Grupa: ianuarie 2016

5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE.

Curs 2 Şiruri de numere reale

Problema a II - a (10 puncte) Diferite circuite electrice


O generalizare a unei probleme de algebră dată la Olimpiada de Matematică, faza judeţeană, 2013

Definiţia generală Cazul 1. Elipsa şi hiperbola Cercul Cazul 2. Parabola Reprezentari parametrice ale conicelor Tangente la conice

Fig Impedanţa condensatoarelor electrolitice SMD cu Al cu electrolit semiuscat în funcţie de frecvenţă [36].

Seminariile Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reziduurilor

Esalonul Redus pe Linii (ERL). Subspatii.

Prelegerea 11. Securitatea sistemului RSA Informaţii despre p şi q

Cum folosim cazuri particulare în rezolvarea unor probleme

Conice - Câteva proprietǎţi elementare

COLEGIUL NATIONAL CONSTANTIN CARABELLA TARGOVISTE. CONCURSUL JUDETEAN DE MATEMATICA CEZAR IVANESCU Editia a VI-a 26 februarie 2005.

Seminar 5 Analiza stabilității sistemelor liniare

Subiecte Clasa a VII-a

2.1 Sfera. (EGS) ecuaţie care poartă denumirea de ecuaţia generală asferei. (EGS) reprezintă osferă cu centrul în punctul. 2 + p 2

Lucrare. Varianta aprilie I 1 Definiţi noţiunile de număr prim şi număr ireductibil. Soluţie. Vezi Curs 6 Definiţiile 1 şi 2. sau p b.

R R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale.

6 n=1. cos 2n. 6 n=1. n=1. este CONV (fiind seria armonică pentru α = 6 > 1), rezultă

8 Intervale de încredere

Capitolul 2. Integrala stochastică

CURS 11: ALGEBRĂ Spaţii liniare euclidiene. Produs scalar real. Spaţiu euclidian. Produs scalar complex. Spaţiu unitar. Noţiunea de normă.

Subiecte Clasa a VIII-a

Cursul Măsuri reale. D.Rusu, Teoria măsurii şi integrala Lebesgue 15

T R A I A N ( ) Trigonometrie. \ kπ; k. este periodică (perioada principală T * =π ), impară, nemărginită.

f(x) = l 0. Atunci f are local semnul lui l, adică, U 0 V(x 0 ) astfel încât sgnf(x) = sgnl, x U 0 D\{x 0 }. < f(x) < l +

VII.2. PROBLEME REZOLVATE

Laborator 11. Mulţimi Julia. Temă

Ecuaţia generală Probleme de tangenţă Sfera prin 4 puncte necoplanare. Elipsoidul Hiperboloizi Paraboloizi Conul Cilindrul. 1 Sfera.

Prelegerea 10. Sistemul de criptare RSA Descrierea sistemului RSA

SEMINARUL 3. Cap. II Serii de numere reale. asociat seriei. (3n 5)(3n 2) + 1. (3n 2)(3n+1) (3n 2) (3n + 1) = a

2 Transformări liniare între spaţii finit dimensionale

Capitolul 4 PROPRIETĂŢI TOPOLOGICE ŞI DE NUMĂRARE ALE LUI R. 4.1 Proprietăţi topologice ale lui R Puncte de acumulare

Sisteme liniare - metode directe

Olimpiada Naţională de Matematică Etapa locală Clasa a IX-a M 1

Εμπορική αλληλογραφία Ηλεκτρονική Αλληλογραφία

Lectia VI Structura de spatiu an E 3. Dreapta si planul ca subspatii ane


Functii Breviar teoretic 8 ianuarie ianuarie 2011

V O. = v I v stabilizator

Principiul Inductiei Matematice.

Câmp de probabilitate II

2. Sisteme de forţe concurente...1 Cuprins...1 Introducere Aspecte teoretice Aplicaţii rezolvate...3

prin egalizarea histogramei

1.3 Baza a unui spaţiu vectorial. Dimensiune

Conice. Lect. dr. Constantin-Cosmin Todea. U.T. Cluj-Napoca

Curs 7. Definiţia II Un grup G este o mulţime, împreună cu o operaţie binară

Acesta este capitolul 6 Metode şi protocoale criptografice al ediţiei

Spatii liniare. Exemple Subspaţiu liniar Acoperire (înfăşurătoare) liniară. Mulţime infinită liniar independentă

Algoritmica grafurilor XI. Cuplaje in grafuri. Masuri de calitate. Numere Ramsey

Concurs MATE-INFO UBB, 1 aprilie 2017 Proba scrisă la MATEMATICĂ

Profesor Blaga Mirela-Gabriela DREAPTA

5.4. MULTIPLEXOARE A 0 A 1 A 2

EDITURA PARALELA 45 MATEMATICĂ DE EXCELENŢĂ. Clasa a X-a Ediţia a II-a, revizuită. pentru concursuri, olimpiade şi centre de excelenţă

Componente şi Circuite Electronice Pasive. Laborator 4. Măsurarea parametrilor mărimilor electrice

Sistemul electronic de plată Brands

Curs 2 DIODE. CIRCUITE DR

7 Distribuţia normală

Spaţii vectoriale. Definiţia 1.1. Fie (K, +, ) un corp şi (V, +) un grup abelian.

Programarea dinamica I

Ecuatii exponentiale. Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. a x = b, (1)

TEMA 9: FUNCȚII DE MAI MULTE VARIABILE. Obiective:

Laborator 6. Integrarea ecuaţiilor diferenţiale

IV. CUADRIPOLI SI FILTRE ELECTRICE CAP. 13. CUADRIPOLI ELECTRICI

Definiţia 1.1 Fiind date mulţimile A (alfabetul sursă) şi B (alfabetul cod), o codificare

Componente şi Circuite Electronice Pasive. Laborator 3. Divizorul de tensiune. Divizorul de curent

FLUXURI MAXIME ÎN REŢELE DE TRANSPORT. x 4

Capitolul 2 - HIDROCARBURI 2.5.ARENE

Transcript:

riptografie şi Securitate - Prelegerea 21.2 - Sistemul de criptare ElGamal Adela Georgescu, Ruxandra F. Olimid Facultatea de Matematică şi Informatică Universitatea din Bucureşti

Cuprins 1. Scurt istoric 2. Sistemul de criptare ElGamal 3. Securitate Criptografie şi Securitate 2/19,

Sistemul de criptare ElGamal 1976 - Diffie şi Hellman definesc conceptul de criptografie asimetrică; Criptografie şi Securitate 3/19,

Sistemul de criptare ElGamal 1976 - Diffie şi Hellman definesc conceptul de criptografie asimetrică; 1977 - R.Rivest, A.Shamir şi Leonard Adleman introduc sistemul RSA; Criptografie şi Securitate 3/19,

Sistemul de criptare ElGamal 1976 - Diffie şi Hellman definesc conceptul de criptografie asimetrică; 1977 - R.Rivest, A.Shamir şi Leonard Adleman introduc sistemul RSA; 1985 - T.ElGamal propune un nou sistem de criptare. Criptografie şi Securitate 3/19,

Sistemul de criptare ElGamal Se bazează pe DLP... Criptografie şi Securitate 4/19,

Sistemul de criptare ElGamal Se bazează pe DLP...... sau mai exact pe dificultatea problemei DDH... Criptografie şi Securitate 4/19,

Sistemul de criptare ElGamal Se bazează pe DLP...... sau mai exact pe dificultatea problemei DDH...... şi pe următoarea observaţie simplă: Criptografie şi Securitate 4/19,

Sistemul de criptare ElGamal Se bazează pe DLP...... sau mai exact pe dificultatea problemei DDH...... şi pe următoarea observaţie simplă: Observaţie Fie G un grup finit şi m R G. Dacă g R G, atunci g = m g rămâne aleator în G: Pr[m g = g ] = 1/ G unde probabilitatea este dată de alegerea aleatoare a lui g. Criptografie şi Securitate 4/19,

Sistemul de criptare ElGamal Dacă emitătorul şi receptorul folosesc g drept cheie secretă, atunci un mesaj m G se criptează ca: g = m g Criptografie şi Securitate 5/19,

Sistemul de criptare ElGamal Dacă emitătorul şi receptorul folosesc g drept cheie secretă, atunci un mesaj m G se criptează ca: Receptorul decriptează: g = m g m = g g 1 Criptografie şi Securitate 5/19,

Sistemul de criptare ElGamal Dacă emitătorul şi receptorul folosesc g drept cheie secretă, atunci un mesaj m G se criptează ca: Receptorul decriptează: g = m g m = g g 1 Abordarea este asemănătoare cu OTP, unde se folosea grupul secvenţelor de lungime fixată împreună cu operaţia XOR; Criptografie şi Securitate 5/19,

Sistemul de criptare ElGamal Dacă emitătorul şi receptorul folosesc g drept cheie secretă, atunci un mesaj m G se criptează ca: Receptorul decriptează: g = m g m = g g 1 Abordarea este asemănătoare cu OTP, unde se folosea grupul secvenţelor de lungime fixată împreună cu operaţia XOR; O astfel de construcţie este deci perfect sigură (dacă g este total aleator!). Criptografie şi Securitate 5/19,

Sistemul de criptare ElGamal În criptografia cu cheie publică, se foloseşte g pseudoaleator, deci se pierde securitatea perfectă; Criptografie şi Securitate 6/19,

Sistemul de criptare ElGamal În criptografia cu cheie publică, se foloseşte g pseudoaleator, deci se pierde securitatea perfectă; Ideea de bază este alegerea lui g astfel încât la recepţie să poată fi calculat pe baza cheii secrete... Criptografie şi Securitate 6/19,

Sistemul de criptare ElGamal În criptografia cu cheie publică, se foloseşte g pseudoaleator, deci se pierde securitatea perfectă; Ideea de bază este alegerea lui g astfel încât la recepţie să poată fi calculat pe baza cheii secrete...... dar g să pară aleator pentru un adversar; Criptografie şi Securitate 6/19,

Sistemul de criptare ElGamal În criptografia cu cheie publică, se foloseşte g pseudoaleator, deci se pierde securitatea perfectă; Ideea de bază este alegerea lui g astfel încât la recepţie să poată fi calculat pe baza cheii secrete...... dar g să pară aleator pentru un adversar; Pentru aceasta se foloseşte prezumţia DDH, construcţia fiind imediată din schimbul de chei Diffie-Hellman. Criptografie şi Securitate 6/19,

Sistemul de criptare ElGamal Definim sistemul de criptare ElGamal pe baza ideii prezentate anterior; 1. Se generează (G, q, g), se alege x R Z q şi se calculează h = g x ; Cheia publică este: (G, q, g, h); Cheia privată este (G, q, g, x); 2. Enc: dată o cheie publică (G, q, g, h) şi un mesaj m G, alege y R Z q şi întoarce c = (c 1, c 2 ) = (g y, m h y ); 3. Dec: dată o cheie secretă (G, q, g, x) şi un mesaj criptat c = (c 1, c 2 ), întoarce m = c 2 c x 1. Criptografie şi Securitate 7/19,

Securitate - Problema 1 Problema 1: Determinismul Întrebare: Este sistemul ElGamal determinist? Criptografie şi Securitate 8/19,

Securitate - Problema 1 Problema 1: Determinismul Întrebare: Este sistemul ElGamal determinist? Răspuns: NU! Sistemul este nedeterminist, datorită alegerii aleatoare a lui y la fiecare criptare. Criptografie şi Securitate 8/19,

Securitate - Problema 1 Problema 1: Determinismul Întrebare: Este sistemul ElGamal determinist? Răspuns: NU! Sistemul este nedeterminist, datorită alegerii aleatoare a lui y la fiecare criptare. Un acelaşi mesaj m se poate cripta diferit, pentru y y : c = (c 1, c 2 ) = (g y, m h y ) c = (c 1, c 2) = (g y, m h y ) Criptografie şi Securitate 8/19,

Securitate - Problema 1 Problema 1: Determinismul Întrebare: Este sistemul ElGamal determinist? Răspuns: NU! Sistemul este nedeterminist, datorită alegerii aleatoare a lui y la fiecare criptare. Un acelaşi mesaj m se poate cripta diferit, pentru y y : c = (c 1, c 2 ) = (g y, m h y ) c = (c 1, c 2) = (g y, m h y ) În caz contrar, sistemul NU ar putea fi CPA-sigur. Criptografie şi Securitate 8/19,

Securitate - Problema 2 Problema 2: Dificultatea DLP Întrebare: Rămâne ElGamal sigur dacă problema DLP este simplă? Criptografie şi Securitate 9/19,

Securitate - Problema 2 Problema 2: Dificultatea DLP Întrebare: Rămâne ElGamal sigur dacă problema DLP este simplă? Răspuns: NU! Se determină x a.î. h = g x, apoi se decriptează orice mesaj pentru că se cunoaşte cheia secretă. Criptografie şi Securitate 9/19,

Securitate - Problema 3 Problema 3: Proprietatea de homomorfism Fie m 1, m 2 2 texte clare şi c 1 = (c 11, c 12 ), c 2 = (c 21, c 22 ) textele criptate corespunzătoare; Criptografie şi Securitate 10/19,

Securitate - Problema 3 Problema 3: Proprietatea de homomorfism Fie m 1, m 2 2 texte clare şi c 1 = (c 11, c 12 ), c 2 = (c 21, c 22 ) textele criptate corespunzătoare; Atunci: c 1 c 2 = (c 11 c 21, c 12 c 22 ) = (g y1 g y 2, m 1 h y1 m 2 h y 2 ) Criptografie şi Securitate 10/19,

Securitate - Problema 3 Problema 3: Proprietatea de homomorfism Fie m 1, m 2 2 texte clare şi c 1 = (c 11, c 12 ), c 2 = (c 21, c 22 ) textele criptate corespunzătoare; Atunci: c 1 c 2 = (c 11 c 21, c 12 c 22 ) = (g y1 g y 2, m 1 h y1 m 2 h y 2 ) Întrebare: Dacă un adversar cunoaşte c 1 şi c 2 criptările lui m 1, respectiv m 2, ce poate spune despre c 1 c 2? Criptografie şi Securitate 10/19,

Securitate - Problema 3 Problema 3: Proprietatea de homomorfism Fie m 1, m 2 2 texte clare şi c 1 = (c 11, c 12 ), c 2 = (c 21, c 22 ) textele criptate corespunzătoare; Atunci: c 1 c 2 = (c 11 c 21, c 12 c 22 ) = (g y1 g y 2, m 1 h y1 m 2 h y 2 ) Întrebare: Dacă un adversar cunoaşte c 1 şi c 2 criptările lui m 1, respectiv m 2, ce poate spune despre c 1 c 2? Răspuns: c 1 c 2 este criptarea lui m 1 m 2 folosind y = y 1 + y 2 : c 1 c 2 = (g y 1+y 2, m 1 m 2 h y 1+y 2 ) Criptografie şi Securitate 10/19,

Securitate - Problema 3 Problema 3: Proprietatea de homomorfism Fie m 1, m 2 2 texte clare şi c 1 = (c 11, c 12 ), c 2 = (c 21, c 22 ) textele criptate corespunzătoare; Atunci: c 1 c 2 = (c 11 c 21, c 12 c 22 ) = (g y1 g y 2, m 1 h y1 m 2 h y 2 ) Întrebare: Dacă un adversar cunoaşte c 1 şi c 2 criptările lui m 1, respectiv m 2, ce poate spune despre c 1 c 2? Răspuns: c 1 c 2 este criptarea lui m 1 m 2 folosind y = y 1 + y 2 : c 1 c 2 = (g y 1+y 2, m 1 m 2 h y 1+y 2 ) Un sistem de criptare care satisface Dec s k(c 1 c 2 ) = Dec sk (c 1 ) Dec sk (c 2 ) se numeşte sistem de criptare homomorfic. (homomorfismul este deseori o proprietate utilă în criptografie) Criptografie şi Securitate 10/19,

Securitate - Problema 4 Problema 4: Utilizarea multiplă a parametrilor publici Este comun în practică pentru un administrator să fixeze parametrii publici (G, q, g), apoi fiecare utilizator să îşi genereze doar cheia secretă x şi să publice h = g x ; Criptografie şi Securitate 11/19,

Securitate - Problema 4 Problema 4: Utilizarea multiplă a parametrilor publici Este comun în practică pentru un administrator să fixeze parametrii publici (G, q, g), apoi fiecare utilizator să îşi genereze doar cheia secretă x şi să publice h = g x ; Întrebare: Este corect să se utilizeze de mai multe ori aceiaşi parametrii publici (G, q, g)? Criptografie şi Securitate 11/19,

Securitate - Problema 4 Problema 4: Utilizarea multiplă a parametrilor publici Este comun în practică pentru un administrator să fixeze parametrii publici (G, q, g), apoi fiecare utilizator să îşi genereze doar cheia secretă x şi să publice h = g x ; Întrebare: Este corect să se utilizeze de mai multe ori aceiaşi parametrii publici (G, q, g)? Răspuns: Se consideră că DA. Cunoaşterea parametrilor publici pare să nu conducă la rezolvarea DDH. Criptografie şi Securitate 11/19,

Securitate - Problema 4 Problema 4: Utilizarea multiplă a parametrilor publici Este comun în practică pentru un administrator să fixeze parametrii publici (G, q, g), apoi fiecare utilizator să îşi genereze doar cheia secretă x şi să publice h = g x ; Întrebare: Este corect să se utilizeze de mai multe ori aceiaşi parametrii publici (G, q, g)? Răspuns: Se consideră că DA. Cunoaşterea parametrilor publici pare să nu conducă la rezolvarea DDH. Atenţie! Acest lucru nu se întâmpla şi la RSA, unde modulul NU trebuie utilizat de mai multe ori. Criptografie şi Securitate 11/19,

Securitate - teoremă Teoremă Dacă problema decizională Diffie-Hellman (DDH) este dificilă în grupul G, atunci schema de criptare ElGamal este CPA-sigură. Criptografie şi Securitate 12/19,

Securitate - teoremă Teoremă Dacă problema decizională Diffie-Hellman (DDH) este dificilă în grupul G, atunci schema de criptare ElGamal este CPA-sigură. Notăm cu Π schema de criptare ElGamal. E suficient să arătăm că schema este sigură la interceptare simplă; Criptografie şi Securitate 12/19,

Securitate - teoremă Teoremă Dacă problema decizională Diffie-Hellman (DDH) este dificilă în grupul G, atunci schema de criptare ElGamal este CPA-sigură. Notăm cu Π schema de criptare ElGamal. E suficient să arătăm că schema este sigură la interceptare simplă; Fie A un adversar PPT; notăm cu ɛ(n) = Pr[PubKA,Π eav (n) = 1] probabilitatea ca A să câstige experimentul de mai jos folosit pentru a defini securitatea la interceptare simplă. Criptografie şi Securitate 12/19,

Demonstraţie Criptografie şi Securitate 13/19,

Demonstraţie Considerăm schema modificată Π care diferă de schema Π prin faptul că algoritmul de criptare alege aleator y, z Z q şi întoarce textul criptat (g y, g z m) Criptografie şi Securitate 13/19,

Demonstraţie A doua componentă a textului criptat din Π este un element uniform distribuit din G şi independent de m; Criptografie şi Securitate 14/19,

Demonstraţie A doua componentă a textului criptat din Π este un element uniform distribuit din G şi independent de m; Prima componentă este şi ea independentă de m; rezultă că Pr[PubK eav A, Π (n) = 1] = 1 2 Criptografie şi Securitate 14/19,

Demonstraţie A doua componentă a textului criptat din Π este un element uniform distribuit din G şi independent de m; Prima componentă este şi ea independentă de m; rezultă că Pr[PubK eav A, Π (n) = 1] = 1 2 Deşi Π nu e o schemă de criptare (nu se poate decripta), experimentul PubK eav (n) este bine-definit pentru că foloseşte A, Π doar algoritmul de criptare; Criptografie şi Securitate 14/19,

Demonstraţie A doua componentă a textului criptat din Π este un element uniform distribuit din G şi independent de m; Prima componentă este şi ea independentă de m; rezultă că Pr[PubK eav A, Π (n) = 1] = 1 2 Deşi Π nu e o schemă de criptare (nu se poate decripta), experimentul PubK eav (n) este bine-definit pentru că foloseşte A, Π doar algoritmul de criptare; Aratăm că A poate fi folosit de un algoritm D ca o subrutină pentru a rezolva problema DDH cu probabilitate ɛ(n); Criptografie şi Securitate 14/19,

Demonstraţie Algoritmul D primeşte la intrare tuplul (G, q, g, g 1, g 2, g 3 ), unde g 1 = g x, g 2 = g y şi g 3 = g xy sau g 3 = g z pentru x, y, z aleatoare, după care: Criptografie şi Securitate 15/19,

Demonstraţie Algoritmul D primeşte la intrare tuplul (G, q, g, g 1, g 2, g 3 ), unde g 1 = g x, g 2 = g y şi g 3 = g xy sau g 3 = g z pentru x, y, z aleatoare, după care: 1. Alege pk = (G, q, g, g 1 ) şi execută A(pk) şi obţine două mesaje m 0 şi m 1 ; Criptografie şi Securitate 15/19,

Demonstraţie Algoritmul D primeşte la intrare tuplul (G, q, g, g 1, g 2, g 3 ), unde g 1 = g x, g 2 = g y şi g 3 = g xy sau g 3 = g z pentru x, y, z aleatoare, după care: 1. Alege pk = (G, q, g, g 1 ) şi execută A(pk) şi obţine două mesaje m 0 şi m 1 ; 2. Alege un bit aleator b şi notează c 1 = g 2 şi c 2 = g 3 m b ; Criptografie şi Securitate 15/19,

Demonstraţie Algoritmul D primeşte la intrare tuplul (G, q, g, g 1, g 2, g 3 ), unde g 1 = g x, g 2 = g y şi g 3 = g xy sau g 3 = g z pentru x, y, z aleatoare, după care: 1. Alege pk = (G, q, g, g 1 ) şi execută A(pk) şi obţine două mesaje m 0 şi m 1 ; 2. Alege un bit aleator b şi notează c 1 = g 2 şi c 2 = g 3 m b ; 3. Îi dă textul criptat (c 1, c 2 ) lui A şi obţine de la el un bit b. Dacă b = b, D întoarce 1, altfel întoarce 0. Criptografie şi Securitate 15/19,

Demonstraţie Algoritmul D primeşte la intrare tuplul (G, q, g, g 1, g 2, g 3 ), unde g 1 = g x, g 2 = g y şi g 3 = g xy sau g 3 = g z pentru x, y, z aleatoare, după care: 1. Alege pk = (G, q, g, g 1 ) şi execută A(pk) şi obţine două mesaje m 0 şi m 1 ; 2. Alege un bit aleator b şi notează c 1 = g 2 şi c 2 = g 3 m b ; 3. Îi dă textul criptat (c 1, c 2 ) lui A şi obţine de la el un bit b. Dacă b = b, D întoarce 1, altfel întoarce 0. În continuare, analizăm comportamentul lui D considerând două cazuri: Criptografie şi Securitate 15/19,

Demonstraţie Cazul 1: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y, z Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g z. Criptografie şi Securitate 16/19,

Demonstraţie Cazul 1: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y, z Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g z. Atunci D execută A cu cheia publică pk = (G, q, g, g x ) şi textul criptat construit (c 1, c 2 ) = (g y, g z m b ); Criptografie şi Securitate 16/19,

Demonstraţie Cazul 1: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y, z Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g z. Atunci D execută A cu cheia publică pk = (G, q, g, g x ) şi textul criptat construit (c 1, c 2 ) = (g y, g z m b ); În acest caz, A nu poate distinge între cele două situaţii: atunci când este executat ca o subrutină a lui D interacţionând cu el sau atunci când efectuează experimentul PubK eav A, Π (n) Criptografie şi Securitate 16/19,

Demonstraţie Cazul 1: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y, z Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g z. Atunci D execută A cu cheia publică pk = (G, q, g, g x ) şi textul criptat construit (c 1, c 2 ) = (g y, g z m b ); În acest caz, A nu poate distinge între cele două situaţii: atunci când este executat ca o subrutină a lui D interacţionând cu el sau atunci când efectuează experimentul PubK eav A, Π (n) Cum D întoarce 1 exact atunci când output-ul b al lui A este egal cu b, rezultă că: Criptografie şi Securitate 16/19,

Demonstraţie Pr[D(G, q, g, g x, g y, g z ) = 1] = Pr[PubK eav A, Π (n) = 1] = 1 2 Criptografie şi Securitate 17/19,

Demonstraţie Pr[D(G, q, g, g x, g y, g z ) = 1] = Pr[PubK eav A, Π (n) = 1] = 1 2 Cazul 2: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g xy. Criptografie şi Securitate 17/19,

Demonstraţie Pr[D(G, q, g, g x, g y, g z ) = 1] = Pr[PubK eav A, Π (n) = 1] = 1 2 Cazul 2: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g xy. Atunci D execută A cu cheia publică pk = (G, q, g, g x ) şi textul criptat construit (c 1, c 2 ) = (g y, g xy m b ) = (g y, (g x ) y m b ) Criptografie şi Securitate 17/19,

Demonstraţie Pr[D(G, q, g, g x, g y, g z ) = 1] = Pr[PubK eav A, Π (n) = 1] = 1 2 Cazul 2: Să presupunem că tuplul pe care D îl primeşte la intrare este generat alegând aleator x, y Z q şi calculând g 1 = g x, g 2 = g y şi g 3 = g xy. Atunci D execută A cu cheia publică pk = (G, q, g, g x ) şi textul criptat construit (c 1, c 2 ) = (g y, g xy m b ) = (g y, (g x ) y m b ) În acest caz, A nu poate distinge între următoarele două situaţii: atunci când este executat ca o subrutină a lui D sau atunci când efectuează experimentul PubK eav A,Π (n) Criptografie şi Securitate 17/19,

Demonstraţie Cum D întoarce 1 exact atunci când output-ul b al lui A este egal cu b, rezultă că: Pr[D(G, q, g, g x, g y, g xy ) = 1] = Pr[PubKA,Π eav (n) = 1] = ɛ(n) Criptografie şi Securitate 18/19,

Demonstraţie Cum D întoarce 1 exact atunci când output-ul b al lui A este egal cu b, rezultă că: Pr[D(G, q, g, g x, g y, g xy ) = 1] = Pr[PubKA,Π eav (n) = 1] = ɛ(n) Dar cum problema DDH este dificilă, rezultă că există o funcţie neglijabilă negl a.î. negl(n) Pr[D(G, q, g, g x, g y, g z ) = 1] Pr[D(G, q, g, g x, g y, g xy ) = 1] = 1 2 ɛ(n) Criptografie şi Securitate 18/19,

Demonstraţie Cum D întoarce 1 exact atunci când output-ul b al lui A este egal cu b, rezultă că: Pr[D(G, q, g, g x, g y, g xy ) = 1] = Pr[PubKA,Π eav (n) = 1] = ɛ(n) Dar cum problema DDH este dificilă, rezultă că există o funcţie neglijabilă negl a.î. negl(n) Pr[D(G, q, g, g x, g y, g z ) = 1] Pr[D(G, q, g, g x, g y, g xy ) = 1] = 1 2 ɛ(n) Adică ɛ(n) 1 2 + negl(n). Criptografie şi Securitate 18/19,

Important de reţinut! Sistemul de criptare ElGamal Proprietatea de homomorfism Criptografie şi Securitate 19/19,