Introduction to Cryptography Lecture 8

Introduction to Cryptography Lecture 8

Reminder: RSA Public Key Cryptosystem * * • The multiplicative group ZN =Zpq . The size of the group is φ(n) = φ(pq) = (p-1) (q-1) Introduction to Cryptography • Public key : Lecture 8 – N=pq the product of two primes – e such that gcd (e, φ(N))=1 (are these hard to find?) • Private key: Rabin’s encryption system, – d such that de ≡1 mod φ(N) Digital signatures ∈ • Encryption of M ZN* e – C=E(M)=M mod N Benny Pinkas ∈ • Decryption of C ZN* d – M=D(C)=C mod N (why does it work?) December 18, 2005 Introduction to Cryptography, Benny Pinkas page 1 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 2 Reminders Rabin’s encryption systems • The Chinese Remainder Theorem (CRT): • Key generation: – Let N=pq with gcd( p,q)=1. – Private key: random primes p,q (e.g. 512 bits long). ∈ × – Then for every pair (y,z) Zp Zq there exists a unique – Public key: N=pq . ∈ x Zn, s.t. • x=y mod p • Encryption: • x=z mod q ∈ * – Plaintext m ZN . – Ciphertext: c = m 2 mod N. (very efficient) • Quadratic Residues: ∈ * ∈ * 2 1/2 – The square root of x Zp is y Zp s.t. y =x mod p. • Decryption: Compute c mod N. ∈ * – x Zp has either 2 or 0 square roots, and is denoted as a Quadratic Residue (QR) or Non Quadratic Residue (NQR), respectively. ∈ * (p-1)/2 – Euler’s theorem: x Zp is a QR iff x = 1 mod p. December 18, 2005 Introduction to Cryptography, Benny Pinkas page 3 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 4 1 Square roots modulo N Square roots modulo N • ⇒⇒⇒ Let x be a quadratic residue (QR) modulo N=pq, t hen • N= pq . – x mod p is a QR mod p. x mod q is a QR mod q • If x has a square root modulo N then it has 4 different square roots modulo N. – x mod p has two roots mod p: y and p - y – Let A be s.t. A2=x mod N. – x mod q has two roots mod q: z and q - z – Let c be s.t. c=1 mod p, c=-1 mod q. • ⇐⇐⇐ If x is a QR mod p and mod q, it is a QR mod N. (Follows – Then A, -A, cA, -cA are all square roots of x modulo N. from the Chinese remainder theorem.) • Exactly ¼ of the elements are QR mod N. – Each combination of roots modulo p and q results in a root × • QR N = QR p QR q. |QR N| = (p-1)(q-1)/4 modulo N. – We get four roots modulo pq : A, B, pq – A, pq – B • Assume that p=q=3 mod 4. (Blum integers.) – (y,z ) -> A, ( p - y, q - z) -> pq – A – -1 is an NQR mod p and mod q (Euler’s thm). – (y, q - z) -> B, ( p – y, z) -> pq – B – Exactly one of the roots is a QR mod p and a QR mod q. – Similarly, for every combination of QR/NQR mod p and mod q. = (y,z) · (1,-1) December 18, 2005 Introduction to Cryptography, Benny Pinkas page 5 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 6 Finding square roots modulo N Decryption of Rabin cryptosystem • Need to compute y=x 1/2 mod N. • Input: c, p, q. (p=q=3 mod 4) • Suppose we know (the private key) p, q . • Decryption: – Compute the roots of x modulo p, q . Use Chinese – Compute m =c (p+1)/4 mod p. remainder theorem to find x. p (q+1)/4 – Compute mq =c mod q. – Use CRT to compute the four roots mod N, i.e. four values • Computing square roots in Z * p , mod N corresponding to [m , p-m ] × [m , q-m ] ∈ (p-1)/2 p p q q – Recall, x QR p iff x =1 mod p. – Assume p=3 mod 4. (p is a Blum integer). – Compute the root as y=x (p+1)/4 mod p. • There are four possible options for the plaintext! • (p+1)/4 is an integer – The receiver must select the correct plaintext • y2 = (x (p+1)/4 )2 = x (p+1)/2 = x (p-1)/2 x = x – This can be solved by requiring the sender to embed some redundancy in m – If p=1 mod 4 the computation is more complicated (no deterministic algorithm is known) • E.g., a string of bits of specific form December 18, 2005 Introduction to Cryptography, Benny Pinkas page 7 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 8 2 Security of the Rabin cryptosystem Security of the Rabin cryptosystem • The Rabin cryptosystem is secure against passive • Security against chosen plaintext attacks attacks iff factoring is hard. ☺ • Suppose there is an adversary that breaks the system – Adversary’s input: N, c – Adversary’s output: m s.t. m2= c mod N. • The Rabin cryptosystem is completely insecure against chosen-ciphertext attacks • We show a reduction showing that given this adversary we can break the factoring assumption. • I.e., we build an algorithm: – Input: N – Operation: can ask queries to the Rabin decryption oracle – Output: the factoring of N. • Therefore, if one can break Rabin’s cryptosystem it can also solve factoring. • Therefore, if factoring is hard the Rabin cryptosystem is “secure”. December 18, 2005 Introduction to Cryptography, Benny Pinkas page 9 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 10 The reduction Insecurity against chosen-ciphertext attacks • Input: N • A chosen-ciphertext attack reveals the factorization of N. • Operation: • The attacker’s challenge is to decrypt a ciphertext c. – Choose random x. • It can ask the receiver to decrypt any ciphertext except c. – Send N and c=x 2 mod N, to adversary. • The attacker can use the receiver as the “adversary” in the – Adversary answers with y s.t. c=y 2 mod N. reduction, namely – If y=x or y=N-x, go back to step 1. – Chooses a random x and send c=x 2 mod N to the receiver – Otherwise happens with – The receiver returns a square root y of c prob 1/2 • x2 - y2 = 0 mod N. – With probability ½, x ≠ y and x ≠ -y. In this case the attacker • 0 ≠ (x-y)(x+y) = cN = cpq. can factor N by computing gcd (x-y,N). • Compute gcd (x+y,N) , gcd (x-y,N) and obtain p or q. – • (The gcd is not N since 0<x,y<N, and therefore (The attack does not depend on homomorphic properties of –N < x+y,x-y < 2N , and it’s known that x+y,x-y≠0,N ). the ciphertext. Namely, it is not required that E(x)E(y)=E(xy).) December 18, 2005 Introduction to Cryptography, Benny Pinkas page 11 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 12 3 Handwritten signatures • Associate a document with an signer (individual) • Signature can be verified against a different signature of the individual • It is hard to forge the signature… • It is hard to change the document after it was signed… Digital Signatures • Signatures are legally binding December 18, 2005 Introduction to Cryptography, Benny Pinkas page 13 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 14 Desiderata for digital signatures Non Repudiation • Associate a document to an signer • Prevent sender from denying that it sent the message • I.e., the receiver can prove to third parties that the • A digital signature is attached to a document (rather message was signed by the sender then be part of it) • The signature is easy to verify but hard to forge • This is different than message authentication (MACs) – Signing is done using knowledge of a private key – There the receiver is assured that the message was sent – Verification is done using a public key associated with the by the receiver and was not changed in transit signer (rather than comparing to an original signature) – But the receiver cannot prove this to other parties – It is impossible to change even one bit in the signed document • MACs: sender and receiver share a secret key K • A copy of a digitally signed document is as good as the • If R sees a message MACed with K, it knows that it could original signed document. have only been generated by S • But if R shows the MAC to a third party, it cannot prove that • Digital signatures could be legally binding… the MAC was generated by S and not by R December 18, 2005 Introduction to Cryptography, Benny Pinkas page 15 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 16 4 Diffie-Hellman Signing/verification process “New directions in cryptography” (1976) • In public key encryption signing Private signature key Document M – The encryption function is a trapdoor permutation f algorithm signer • Everyone can encrypt = compute f(). (using the public key) • Only Alice can decrypt = compute f- -1(). (using her private key) Public verification key • Alice can use f for signing Signature of M – Alice signs m by computing s=f -1(m). – Verification is done by computing m=f(s). verification • Intuition: since only Alice can compute f- -1() , forgery is infeasible. Signature algorithm verifier depends on M • Caveat: none of the established practical signature valid / invalid schemes following this paradigm is provably secure December 18, 2005 Introduction to Cryptography, Benny Pinkas page 17 December 18, 2005 Introduction to Cryptography, Benny Pinkas page 18 Example: simple RSA based signatures Message lengths • Key generation: (as in RSA) • A technical problem: – Alice picks random p,q .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us