Introduction to Modern Cryptography, Lecture 9 More about Digital Signatures and Identification.

Slides:



Advertisements
Similar presentations
Foundations of Cryptography Lecture 3 Lecturer: Moni Naor.
Advertisements

Foundations of Cryptography Lecture 2: One-way functions are essential for identification. Amplification: from weak to strong one-way function Lecturer:
1 Chapter 7-2 Signature Schemes. 2 Outline [1] Introduction [2] Security Requirements for Signature Schemes [3] The ElGamal Signature Scheme [4] Variants.
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
Foundations of Cryptography Lecture 5 Lecturer: Moni Naor.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
CS426Fall 2010/Lecture 351 Computer Security CS 426 Lecture 35 Commitment & Zero Knowledge Proofs.
1 Adapted from Oded Goldreich’s course lecture notes.
Zero Knowledge Proofs By Subha Rajagopalan Jaisheela Kandagal.
Attacks on Digital Signature Algorithm: RSA
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
Cryptography1 CPSC 3730 Cryptography Chapter 10 Key Management.
Introduction to Modern Cryptography Homework assignments.
Zero-Knowledge Proofs And Their Applications in Cryptographic Systems Sultan Almuhammadi ICS 454.
Chapter 7-1 Signature Schemes.
Electronic Voting Schemes and Other stuff. Requirements Only eligible voters can vote (once only) No one can tell how voter voted Publish who voted (?)
Introduction to Modern Cryptography, Lecture 7/6/07 Zero Knowledge and Applications.
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.
Chapter 9 Cryptographic Protocol Cryptography-Principles and Practice Harbin Institute of Technology School of Computer Science and Technology Zhijun Li.
Network Security – Part 2 V.T. Raja, Ph.D., Oregon State University.
Foundations of Cryptography Lecture 8 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 2 Lecturer: Moni Naor.
J. Wang. Computer Network Security Theory and Practice. Springer 2008 Chapter 4 Data Authentication Part II.
Lecture 12 Commitment Schemes and Zero-Knowledge Protocols Stefan Dziembowski University of Rome La Sapienza critto09.googlepages.com.
Lecture 6: Public Key Cryptography
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
13.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 13 Digital Signature.
Digital Signatures (DSs) The digital signatures cannot be separated from the message and attached to another The signature is not only tied to signer but.
Quadratic Residuosity and Two Distinct Prime Factor ZK Protocols By Stephen Hall.
8. Data Integrity Techniques
Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
1 SC700 A2 Internet Information Protocols 3/20/2001 Paper Presentation by J. Chu How to Explain Zero-Knowledge Protocols to Your Children.
Topic 22: Digital Schemes (2)
Digital Signatures A primer 1. Why public key cryptography? With secret key algorithms Number of key pairs to be generated is extremely large If there.
Fall 2004/Lecture 201 Cryptography CS 555 Lecture 20-b Zero-Knowledge Proof.
Based on Schneier Chapter 5: Advanced Protocols Dulal C. Kar.
CS151 Complexity Theory Lecture 13 May 11, Outline proof systems interactive proofs and their power Arthur-Merlin games.
Cryptography and Network Security Chapter 13 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Flipping coins over the telephone and other games.
Zero-knowledge proof protocols 1 CHAPTER 12: Zero-knowledge proof protocols One of the most important, and at the same time very counterintuitive, primitives.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Prepared by Dr. Lamiaa Elshenawy
Multi-Party Proofs and Computation Based in part on materials from Cornell class CS 4830.
Key Management Network Systems Security Mort Anvari.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
 5.1 Zero-Knowledge Proofs  5.2 Zero-Knowledge Proofs of Identity  5.3 Identity-Based Public-Key Cryptography  5.4 Oblivious Transfer  5.5 Oblivious.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 15: From Here to Oblivion.
1 Introduction to Information Security , Spring 2016 Lecture 4: Applied cryptography: asymmetric Zvi Ostfeld Slides credit: Eran Tromer.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Identification (User Authentication). Model Alice wishes to prove to Bob her identity in order to access a resource, obtain a service etc. Bob may ask.
Zero Knowledge r Two parties:  All powerful prover P  Polynomially bounded verifier V r P wants to prove a statement to V with the following properties:
Topic 36: Zero-Knowledge Proofs
Introduction to Modern Cryptography
Information Security message M one-way hash fingerprint f = H(M)
Information Security message M one-way hash fingerprint f = H(M)
Information Security message M one-way hash fingerprint f = H(M)
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Zero-Knowledge Proofs
Key Management Network Systems Security
Digital Signatures.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Introduction to Modern Cryptography
Cryptography Lecture 26.
ITIS 6200/8200 Chap 5 Dr. Weichao Wang.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

Introduction to Modern Cryptography, Lecture 9 More about Digital Signatures and Identification

There is an interactive (randomized) proof for any statement in PSpace There is also a zero knowledge proof for any statement which has an interactive proof This is not very useful (practically) because the setting may require the prover to use exponential time

An example of an interactive proof for a statement that does not seem to be in NP Graph non-isomorphism Two graphs G, and H, prover claims that they are not isomorphic How would a polytime machine verify that they are indeed not isomorphic?

Interactive proof for graph non- isomorphism Prover presents the two graphs: Verifier chooses one of the graphs at random, performs a random permutation and asks the prover which graph was chosen.

Interactive proof for graph 3 colorability What ’ s the point? There ’ s a non- interactive proof for graph 3- colorability. So, the point is that we can give a zero knowledge proof of graph 3 colorability

Non interactive proof of graph 3 colorability

Graph 3 colorability Imagine that the prover performs a random permuation of the colors The verifier can ask to see the colors assigned to two adjacent vertices The prover will now reveal these two colors Repeat

Why is this convincing? If the graph is three colorable: then the prover can answer all the queries correctly If the graph is not three colorable, then with prob 1/E, the prover will be caught All the verifier learns is that the two vertices have different colors

What does this mean? Informally, we ’ ve shown that every problem in NP has an interactive zero knowledge proof. What would a proof be for Hamiltonian cycle?

Identification: Model Alice wishes to prove to Bob her identity in order to access a resource, obtain a service etc. Bob may ask the following: –Who are you? (prove that you ’ re Alice) –Who the **** is Alice? Eve wishes to impersonate Alice: –One time impersonation –Full impersonation (identity theft)

Identification Scenarios Local identification –Human authenticator –Device Remote identification –Human authenticator –Corporate environment (e.g. LAN) –E-commerce environment –Cable TV/Satellite: Pay-per-view; subscription verification –Remote login or from an internet cafe.

Initial Authentication The problem: how does Alice initially convince anyone that she ’ s Alice? The solution must often involve a “ real-world ” type of authentication – id card, driver ’ s license etc. Errors due to the human factor are numerous (example – the Microsoft-Verisign fiasco). Even in scenarios where OK for Alice to be whoever she claims she is, may want to at least make sure Alice is human (implemented, e.g. for new users in Yahoo mail ).

Closed Environments The initial authentication problem is fully solved by a trusted party, Carol Carol can distribute the identification material in a secure fashion, e.g by hand, or over encrypted and authenticated lines Example – a corporate environment Eve ’ s attack avenue is the Alice-Bob connection We begin by looking at remote authentication

Fiat-Shamir Scheme Initialization Set Up Basic Construction Improved Construction Zero Knowledge Removing Interaction

Initialization There is a universal N=pq and no one knows its factorization. Alternately, N is chosen by Alice and is part of Alice’s public key. Alice picks R in Z N at random. Alice computes S= R 2 mod N. S is published as Alice’s Public key. She keeps R secret.

Set Up Bob knows S. Alice keeps R secret. Who is Alice? Anyone that convinces Bob she can produce square roots mod N of S. A bad way to convince Bob: Send him R. Instead, we seek a method that will give Bob (and Eve) nothing more than being convinced Alice can produce these square roots (zero knowledge).

Basic Protocol Let S= R 2 such that Alice holds R. To convince Bob that Alice knows a square root mod N of S, Alice picks at random X in Z N, computes Y= X 2 mod N, and sends Y to Bob. Alice: “I know both a square root mod N of Y (=X) and a square root mod N of Y S (= X R). Make a choice which of the two you want me to reveal.’’ Bob flips a coin, outcome (heads/tails) determines the challenge he poses to Alice.

Basic Protocol (cont.) If Alice knows both a square root of Y (=X) and a square root of Y S (=X R) then she knows R (a square root of S). Thus if Alice does not know a square root of S, Bob will catch her cheating with probability 1/2. In the protocol, Alice will produce Y 1,Y 2,…,Y t. Bob will flip m coins b 1,b 2,…,b t as challenges. Bob accept only if Alice succeeds in all t cases.

Basic Protocol, repeat t times: S=R 2, Y i =X i 2 b i 1, 0 X i R, X i Bob to Alice (challenge) Alice to Bob (t response) Bob accepts iff all t challenges are met.

Reducing the communication, Larger public key, setup: Alice picks m numbers R 1,R 2,…,R m in Z N at random. Alice computes S 1 = R 1 2 mod N, …, S m = R m 2 mod N. Alice publishes a public key S 1,S 2,…,S m. She keeps R 1,R 2,…,R m secret.

Reducing the communication, increasing the size of the public key: Y=X 2 b 1,b 2,…,b m 1, 0, …, 0 Z= X times Product of R j with b j =1 Bob to Alice (challenge) Alice to Bob Bob accepts iff Z 2 =Y times product of S j with b j =1

Correctness of Protocol (Intuition ONLY) 1.A cheating Eve, without knowledge of R i ’s, will be caught with high probability. 2. Zero Knowledge: By eavesdropping, Eve learns nothing (all she learns she can simulate on her own). Crucial ingredients: 1. Interaction. 2. Randomness.

Removing randomization by Verifier Y=X 2 b 1 b 2 …b m = H(Y) 1, 0, …, 0 Bob to Alice (challenge) Alice to Bob Bob accepts iff challenges are met. Let H be a secure hash function Z= X times Product of R j with b j =1

What we have is a signature scheme b 1 b 2 …b m = H(M,Y) 1, 1, 0, 1 …, 0 Message M Z= X times Product of R j with b j =1 Alice to Bob Bob accepts iff challenges are met. Let H be secure hash function Y=X 2

Correctness of Fiat-Shamir (Intuition ONLY) A cheating Eve, without knowledge of R i ’s, cannot succeed in producing Y that will be hashed to a convenient bit vector b 1 b 2 … b m since m is too long and H behaves like a random function (so the chances of hitting a bit vector favorable to Eve are negligible). FS scheme used in practice.

El-Gamal Signature Scheme Pick a prime p of length 1024 bits such that DL in Z p * is hard. Let g be a generator of Z p *. Pick x in [2,p-2] at random. Compute y=g x mod p. Public key: p,g,y. Private key: x. Generation

El-Gamal Signature Scheme Hash: Let m=H(M). Pick k in [1,p-2] relatively prime to p-1 at random. Compute r=g k mod p. Compute s=(m-rx)k -1 mod (p-1) (***) Output r and s. Signing M

El-Gamal Signature Scheme Compute m=H(M). Accept if 0<r<p and y r r s =g m mod p. else reject. What’s going on? By (***) s=(m-rx)k -1 mod p-1, so sk+rx=m. Now r=g k so r s =g ks, and y=g x so y r =g rx, implying y r r s =g m. Verify M,r,s,PK

The Digital Signature Algorithm (DSA) Let p be an L bit prime such that the discrete log problem mod p is intractable Let q be a 160 bit prime that divides p-1 Let α be a q’th root of 1 modulo p. How do we compute α?

The Digital Signature Algorithm (DSA) p – prime, q – prime, p-1 = 0 mod q, α = 1 (1/q) mod p Private key: random 1 ≤ s ≤ q-1. Public key: (p, q, α, β = α s mod p) Signature on message M: –Choose a random 1 ≤ k ≤ p-1, secret!! Part II: (SHA (M) + s (PART I)) / k mod q Part I: ((α k mod p) mod q

The Digital Signature Algorithm (DSA) –p – prime, q – prime, p-1 = 0 mod q, α = 1 (1/q) mod p, Private key: random 1 ≤ s ≤ q-1. Public key: (p, q, α, β = α s mod p). Signature on message M: Choose a random 1 ≤ k ≤ p-1, secret!! –Part I: ((α k mod p) mod q –Part II: (SHA (M) + s (PART I)) /k mod q Verification: –e 1 = SHA (M) / (PART II) mod q –e 2 = (PART I) / (PART II) mod q –OK if

The Digital Signature Algorithm Homework 2 part II: Prove that if the signature is generated correctly then the verification works correctly. What happens if PART II of the signature is 0?