B504/I538: Introduction to Cryptography

Slides:



Advertisements
Similar presentations
CS555Topic 191 Cryptography CS 555 Topic 19: Formalization of Public Key Encrpytion.
Advertisements

7. Asymmetric encryption-
Great Theoretical Ideas in Computer Science.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Introduction to Modern Cryptography Lecture 7 1.RSA Public Key CryptoSystem 2.One way Trapdoor Functions.
CSCI 172/283 Fall 2010 Public Key Cryptography. New paradigm introduced by Diffie and Hellman The mailbox analogy: Bob has a locked mailbox Alice can.
0x1A Great Papers in Computer Security
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
8. Data Integrity Techniques
ElGamal Public Key Cryptography CS 303 Alg. Number Theory & Cryptography Jeremy Johnson Taher ElGamal, "A Public-Key Cryptosystem and a Signature Scheme.
Cryptography Lecture 8 Stefan Dziembowski
Great Theoretical Ideas in Computer Science.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Cryptography Lecture 9 Stefan Dziembowski
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
11 RSA Variants.  Scheme ◦ Select s.t. p and q = 3 mod 4 ◦ n=pq, public key =n, private key =p,q ◦ y= e k (x)=x (x+b) mod n ◦ x=d k (y)=  y mod n.
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
Diffie-Hellman Key Exchange first public-key type scheme proposed by Diffie & Hellman in 1976 along with the exposition of public key concepts – note:
Ryan Henry I 538 /B 609 : Introduction to Cryptography.
多媒體網路安全實驗室 Variations of Diffie-Hellman Problem Proceedings of ICICS 2003, LNCS 2836, Springer-Verlag, 2003, pp. 301–312 Feng Bao, Robert H. Deng, Huafei.
Key Exchange in Systems VPN usually has two phases –Handshake protocol: key exchange between parties sets symmetric keys –Traffic protocol: communication.
Assignment 4 is due! Assignment 5 is out and is due in two weeks!
Topic 36: Zero-Knowledge Proofs
Outline Primitive Element Theorem Diffie Hellman Key Distribution
Topic 26: Discrete LOG Applications
Cryptography Lecture 5 Arpita Patra © Arpita Patra.
B504/I538: Introduction to Cryptography
B504/I538: Introduction to Cryptography
B504/I538: Introduction to Cryptography
Group theory exercise.
Topic 24: Finding Prime Numbers, RSA
Secrecy of (fixed-length) stream ciphers
Cryptography Lecture 22.
Cryptography Lecture 23.
B504/I538: Introduction to Cryptography
B504/I538: Introduction to Cryptography
Topic 25: Discrete LOG, DDH + Attacks on Plain RSA
Topic 30: El-Gamal Encryption
Number Theory and Euclidean Algorithm
B504/I538: Introduction to Cryptography
Foundations of Network and Computer Security
Cryptography Lecture 24.
Cryptography Lecture 25.
B504/I538: Introduction to Cryptography
Cryptographic protocols 2016, Lecture 3 Key Exchange, CDH, DDH
Cryptographic protocols 2015, Lecture 3 Key Exchange, CDH, DDH
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Digital Signatures.
El Gamal and Diffie Hellman
Cryptography Lecture 5.
Where Complexity Finally Comes In Handy…
Where Complexity Finally Comes In Handy…
Cryptography Lecture 18.
Oblivious Transfer.
Cryptography Lecture 20.
Cryptography Lecture 21.
Cryptography Lecture 19.
Cryptography Lecture 21.
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Cryptography Lecture 23.
Cryptography Lecture 26.
Diffie-Hellman Algorithm
Where Complexity Finally Comes In Handy…
Lecture 6.2: Protocols - Authentication and Key Exchange II
Presentation transcript:

B504/I538: Introduction to Cryptography Spring 2017 • Lecture 20 (2017—03—23)

Recall: Modular eth roots Defn: Let n and e be positive integers and let a∈℥n. Then b∈℥n is called an eth root of a modulo n if We write b≡a1/e mod n to indicate that b is an eth root of a modulo n. a≡be mod n. ??? Q: When does a unique solution for a1/e mod n exist? A: If gcd(e,φ(n))=1, then a1/e≡ad mod n where d≔e-1 mod φ(n) If gcd(e,φ(n))≠1, then a1/e may or may not exist; if it does exist, it is not unique

Recall: The eth root problem Defn: The eth root problem (aka the RSA problem) is: Given (n,e,a) such that n=pq for distinct s-bit primes p and q, a∈℥n, and gcd(e,φ(n))=1, compute a1/e mod n. One possible solution: compute d≔e-1 mod φ(n) and output ad mod n Fact: Computing d≔e-1 mod φ(n) is equivalent to factoring n!

Recall: Discrete logarithms Defn: Let G be a group with |G|=n and let g,h∈G. A discrete logarithm (DL) of h to the base g in G is a number x∈ℤn such that We write x=logg h to indicate that x is a DL of h to the base g ??? h=gx in G. Q: Does the DL of h to the base g always exist? A: No! But it does always exists if g is a generator of G. Q: If the DL of h to the base g exists, is it unique? A: Sort of… If x1 and x2 are DLs of h to the base g, then x1≡x2 mod |g| (i.e., the DL is unique in ℤ|g|).

Recall: The DL problem Defn: The DL problem is: Given (G,q,g,h) such that (G,•) is a cyclic group of s-bit prime order q, g is a generator of G, and h is an arbitrary element of G, compute x≡logg h. If (G,+) is an additive group, then the DL problem is, given (G,q,g,h) as above, to compute k such that k·g=h in G.

Intractable problems Intuitively, a problem is intractable if no PPT algorithm can solve a uniform random instance the problem, except with negligible probability Q: How do we formalize the notion of intractability for problems defined in a finite group? A: Very carefully… Algorithm must be PPT in what parameter? Success probability must be negligible in what parameter? Instance must be uniform random instance from what sample space?

Group generating algorithm The DL problem is both defined in a finite group ⇒ no parameter to grow large! Problem may be easy in some groups and hard in others Defn: A group generating algorithm G is a PPT algorithm that, on input a security parameter 1s∈1ℕ, outputs a description of a finite group (G,•) with s-bit prime order q and a fixed generator g∈G. We write (G,q,g)← G(1s) to indicate that (G,•) is a group with s-bit prime order q and generator g, sampled from the output of G.

Group generating algorithm Idea: Don’t consider problem instances in a particular fixed group (G,•); rather, consider instances in groups (G,q,g)←G(1s) sampled from a fixed group generating algorithm G! Q: How do we formalize the notion of intractability for problems defined in a finite group? Q1: Algorithm must be PPT in what parameter? A1: The security parameter s such that (G,q,g)←G(1s) Q2: Success probability must be negligible in what parameter? A2: The security parameter s such that (G,q,g)←G(1s) Q3: Instance must be uniform random instance from what sample space? A3: The set of problem instances in (G,•)

The DL assumption Challenger (C) Attacker (A) 1 s 1 s (G,q,g)←G(1 s) x∊℥q h≔gx (G,q,g,h) x’ Let E be the event that x≡x’ mod q Define A’s advantage to be AdvDL,G(A)≔Pr[E] Defn: Let G be a fixed group generating algorithm. The discrete logarithm (DL) assumption holds with respect to G if, for every PPT algorithm A, there exists a negligible function ε:ℕ→ℝ+ such that AdvDL,G(A)≤ε(s).

Average-case hardness of DL Thm (informal): Let (G,•) be a group with prime order q. If the DL problem in is hard for some instance, then it is hard for almost every instance! Proof (sketch): Assume that it is hard to compute x≡logg h in (G,•) Idea: Reduce hardness of computing x≡logg h to hardness of solving a uniform random instance in (G,•) Randomize g: (G,q,g,h)→(G,q,gr,h) for r∊℥q ⇒ logg h≡(loggr h)•r mod q Randomize h: (G,q,g,h)→(G,q,g,hs) for s∊℥q ⇒ logg h≡(logg hs)•s-1 mod q ☐

RSA instance generating algorithm Defn: An RSA instance generating algorithm G is a PPT algorithm that, on input a security parameter 1s∈1ℕ, outputs a pair of distinct s-bit primes (p,q) and e∊℥φ(pq). We write (p,q,e)← G(1s) to indicate that s-bit primes (p,q) and e∈℥φ(pq) are sampled from the output of G.

The eth root assumption Challenger (C) Attacker (A) 1 s (p,q,e)←G(1 s) N≔p·q a∊℥N b≔ae mod N 1 s (N,e,b) a’ Let E be the event that a≡a’ mod N Define A’s advantage to be AdvRSA,G(A)≔Pr[E] Defn: Let G be a fixed RSA instance generating algorithm. The eth root (RSA) assumption holds with respect to G if, for every PPT algorithm A, there exists a negligible function ε:ℕ→ℝ+ such that AdvRSA,G(A)≤ε(s).

The RSA trapdoor permutation Observation: The eth root assumption is qualitatively different from the DL assumption In DL assumption, attacker gets complete output of G In eth root assumption, attacker learns N=p·q but not p and q; if attacker knows (p,q) the eth root problem is easy! This is our first example of a trapdoor permutation with (p,q) being the trapdoor More on this later…

Diffie-Hellman key exchange protocol What if Alice and Bob don’t already share a secret ket? Enc (m) Alice Bob Eve m =?

Diffie-Hellman key exchange protocol a∊℥q b∊℥q ≔h((gb)a) ≔h((ga)b) ga gb Enc (m) Alice Bob Eve =? m=? Suppose (G,q,g)←G(1s) for some group generating algorithm G

Security of Diffie-Hellman key exchange Q: Suppose the DL assumption holds with respect to G. Is the Diffie-Hellman protocol “secure” in the presence of an eavesdroppers? A: Errr…well, probably? DL assumption implies that it is hard for an eavesdropper to compute a from ga or b from gb But, is it hard to compute gab from ga and gb?

Diffie-Hellman assumption Challenger (C) Attacker (A) 1 s 1 s (G,q,g)←G(1 s) a,b∊℥q h1≔ga, h2≔gb (G,q,g,h1,h2) h Let E be the event that h=gab Define A’s advantage to be AdvCDH,G(A)≔Pr[E] Defn: Let G be a group generating algorithm. The (computational) Diffie-Hellman (CDH) assumption holds with respect to G if, for every PPT algorithm A, there exists a negligible function ε:ℕ→ℝ+ such that AdvCDH,G(A)≤ε(s).

Decision Diffie-Hellman assumption A tuple (G,q,g,ga,gb,h) is a DH tuple if and only if h=gab Game 0: (input to A is a DH tuple) 1s∈1ℕ 1s∈1ℕ Challenger Distinguisher (D) (G,q,g)←G(1 s) a,b∊℥q (G,q,g,ga,gb,gab) b’∈{0,1} Game 1: (input to A is not a DH tuple) 1s∈1ℕ Challenger Distinguisher (D) 1s∈1ℕ (G,q,g)←G(1 s) a,b,c∊℥q (G,q,g,ga,gb,gc) b’∈{0,1} Let E be the event that b’=0 in Game 0 or b’=1 in Game 1 17 Defn: AdvDDH,G(D)≔|Pr[E]- ½|

Decision Diffie-Hellman assumption Defn: Let G be a group generating algorithm. The Decision Diffie-Hellman (DDH) assumption holds with respect to G if, for every PPT algorithm A, there exists a negligible function ε:ℕ→ℝ+ such that AdvDDH,G(A)≤ε(s).

The DL, CDH, and DDH assumptions Thm: Let G be a group generating algorithm. Fact 1: If the DDH assumption holds with respect to G, then the CDH assumption also holds with respect to G. The converse is believed to be false. Fact 2: If the CDH assumption holds with respect to G, then the DL assumption also holds with respect to G. The converse is not known to be true.

Public-key encryption schemes Defn: A public-key encryption scheme is a triple of algorithms (Gen, Enc, Dec) such that Gen:1ℕ→Ke×Kd is a randomized “keypair generation” algorithm; Enc:Ke×M→C is an (often randomized) “encryption” algorithm; Dec:Kd×C→M is a deterministic “decryption” algorithm. Usually write Encke(m) and Deckd(m) instead of Enc(ke,m) and Dec(kd,m) Ke is the encryption key space Kd is the decryption key space M is the message space C is the ciphertext space (set of possible encryption keys) (set of possible decryption keys) (set of possible messages) (set of possible ciphertexts)

Pr[Deckd(Encke(m))=m|(ke,kd)←Gen(1s)]≥1-ε(s) Correctness Intuitively: Correctness is the property of being able to decrypt (given the appropriate decryption key) Defn: A public-key encryption scheme (Gen, Enc, Dec) with message space M is correct if there exists a negligible function ε:ℕ→ℝ+ such that, ∀s∈ℕ and ∀m∈M, Pr[Deckd(Encke(m))=m|(ke,kd)←Gen(1s)]≥1-ε(s)

That’s all for today, folks!