Foundations of Cryptography Lecture 1 Lecturer: Moni Naor.

Slides:



Advertisements
Similar presentations
Moni Naor מוני נאור Cryptography and Sudoku
Advertisements

Lecturer: Moni Naor Weizmann Institute of Science
Foundations of Cryptography Lecture 3 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 7 Lecturer:Danny Harnik.
Foundations of Cryptography Lecture 2: One-way functions are essential for identification. Amplification: from weak to strong one-way function Lecturer:
1 Complexity ©D.Moshkovitz Cryptography Where Complexity Finally Comes In Handy…
Many-to-one Trapdoor Functions and their Relations to Public-key Cryptosystems M. Bellare S. Halevi A. Saha S. Vadhan.
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 11 Lecturer: Moni Naor.
Complexity Theory Lecture 1 Lecturer: Moni Naor. Computational Complexity Theory Study the resources needed to solve computational problems –Computer.
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.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Foundations of Cryptography Lecture 13 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 4 Lecturer: Moni Naor.
Short course on quantum computing Andris Ambainis University of Latvia.
Yan Huang, Jonathan Katz, David Evans University of Maryland, University of Virginia Efficient Secure Two-Party Computation Using Symmetric Cut-and-Choose.
Foundations of Cryptography Lecture 12 Lecturer: Moni Naor.
Great Theoretical Ideas in Computer Science.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
1 Adapted from Oded Goldreich’s course lecture notes.
Perfect and Statistical Secrecy, probabilistic algorithms, Definitions of Easy and Hard, 1-Way FN -- formal definition.
Lecturer: Moni Naor Foundations of Cryptography Lecture 4: One-time Signatures, UOWHFs.
Lecturer: Moni Naor Foundations of Cryptography Lecture 3: One-way on its iterates, Authentication.
Lecturer: Moni Naor Weizmann Institute of Science
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
On The Cryptographic Applications of Random Functions Oded Goldreich Shafi Goldwasser Silvio Micali Advances in Cryptology-CRYPTO ‘ 84 報告人 : 陳昱升.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Introduction to Modern Cryptography, Lecture 7/6/07 Zero Knowledge and Applications.
Theoretical Cryptography Lecture 1: Introduction, Standard Model of Cryptography, Identification, One-way functions Lecturer: Moni Naor Weizmann Institute.
Lecturer: Moni Naor Weizmann Institute of Science
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
Introduction to Modern Cryptography, Lecture 9 More about Digital Signatures and Identification.
Dr.Saleem Al_Zoubi1 Cryptography and Network Security Third Edition by William Stallings Public Key Cryptography and RSA.
On Everlasting Security in the Hybrid Bounded Storage Model Danny Harnik Moni Naor.
1 Pertemuan 08 Public Key Cryptography Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Information Theory and Security
Lecturer: Moni Naor Foundations of Cryptography Lecture 3: One-way on its Iterates, Authentication.
Cryptography and Complexity at the Weizmann Institute
Computer Security CS 426 Lecture 3
Foundations of Cryptography Lecture 9 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 8 Lecturer: Moni Naor.
Foundations of Cryptography Lecture 2 Lecturer: Moni Naor.
Public Key Model 8. Cryptography part 2.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
A Few Simple Applications to Cryptography Louis Salvail BRICS, Aarhus University.
Foundations of Cryptography Lecture 6 Lecturer: Moni Naor.
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Lecture 2: Introduction to Cryptography
Zero-knowledge proof protocols 1 CHAPTER 12: Zero-knowledge proof protocols One of the most important, and at the same time very counterintuitive, primitives.
Chapter 3 – Public Key Cryptography and RSA (A). Private-Key Cryptography traditional private/secret/single-key cryptography uses one key shared by both.
1 Diffie-Hellman (Key Exchange) Protocol Rocky K. C. Chang 9 February 2007.
Department of Computer Science Chapter 5 Introduction to Cryptography Semester 1.
1 Introduction to Quantum Information Processing CS 467 / CS 667 Phys 467 / Phys 767 C&O 481 / C&O 681 Richard Cleve DC 3524 Course.
Topic 36: Zero-Knowledge Proofs
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
NET 311 Information Security
Cryptography Lecture 5.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Where Complexity Finally Comes In Handy…
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
One Way Functions Motivation Complexity Theory Review, Motivation
Where Complexity Finally Comes In Handy…
Cryptography Lecture 23.
Where Complexity Finally Comes In Handy…
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

Foundations of Cryptography Lecture 1 Lecturer: Moni Naor

What is Cryptography? Traditionally: how to maintain secrecy in communication Alice and Bob talk while Eve tries to listen Alice Bob Eve

History of Cryptography Very ancient occupation Biblical times - איך נלכדה ששך ותתפש תהלת כל הארץ איך היתה לשמה בבל בגויים Many interesting books and sources, especially about the Enigma –David Kahn, The Codebreakers, 1967 –Gaj and Orlowski, Facts and Myths of Enigma: Breaking Stereotypes Eurocrypt 2003 Not the subject of this course

Modern Times Up to the mid 70’s - mostly classified military work Since then - explosive growth –Commercial applications –Scientific work: tight relationship with Computational Complexity Theory –Major works: Diffie-Hellman, Rivest, Shamir and Adleman (RSA) Recently - more involved models for more diverse tasks. How to maintain the secrecy, integrity and functionality in computer and communication system.

Complexity Theory - Study the resources needed to solve computational problems –computer time, memory Identify problems that are infeasible to compute. Cryptography - Find ways to specify security requirements of systems Use the computational infeasibility of problems in order to obtain security. The development of these two areas is tightly connected! The interplay between these areas is the subject of the course Cryptography and Complexity

Administrivia Instructor: Moni Naor Grader: Guy Rothblum When: Thursday 14:00--16:00 Where: Ziskind 1 Home page of the course: METHOD OF EVALUATION : around 12 homework assignments and a final (in class) exam –Homework assignments should be turned in on time (usually two weeks after they are given)! –Try and do as many problems from each set. –You may (and are encouraged to) discuss the problems with other students, but the write-up should be individual.

Official Description Cryptography deals with methods for protecting the privacy, integrity and functionality of computer and communication systems. The goal of the course is to provide a firm foundation to the construction of such methods. In particular we will cover topics such as notions of security of a cryptosystem, proof techniques for demonstrating security and cryptographic primitives such as one-way functions and trapdoor permutations

Sources Books : Oded Goldreich, Foundations of Cryptography Vol 1, Basic Tools, Cambridge,2001 Other volumes in Web courses Trevisan and Wagner: Bellare and Rogaway:

Three Basic Issues in Cryptography Identification Authentication Encryption

Example: Identification When the time is right, Alice wants to send an `approve’ message to Bob. They want to prevent Eve from interfering –Bob should be sure that Alice indeed approves Alice Bob Eve

Rigorous Specification of Security To define security of a system must specify: 1.What constitute a failure of the system 2.The power of the adversary –computational –access to the system –what it means to break the system.

Specification of the Problem Alice and Bob communicate through a channel N,Y Bob has two external states {N,Y} Eve completely controls the channel Requirements: YIf Alice wants to approve and Eve does not interfere – Bob moves to state Y NIf Alice does not approve, then for any behavior from Eve, Bob stays in N If Alice wants to approve and Eve does interfere - no requirements from the external state

Can we guarantee the requirements? No – when Alice wants to approve she sends (and receives) a finite set of bits on the channel. Eve can guess them. To the rescue - probability. –Want that Eve will succeed with low probability. –How low? Related to the string length that Alice sends…

Example: Identification Alice Bob Eve X X ??

Suppose there is a setup period There is a setup where Alice and Bob can agree on a common secret –Eve only controls the channel, does not see the internal state of Alice and Bob (only external state of Bob) Simple solution: – Alice and Bob choose a random string X  R  {0,1} n –When Alice wants to approve – she sends X –If Bob gets any symbols on channel – compares to X YIf equal moves to Y NIf not equal moves permanently to N

Eve’s probability of success If Alice did not send X and Eve put some string X’ on the channel, then Y – Bob moves to Y only if X=X’ Prob[X=X’] ≤ 2 -n Good news: can make it a small as we wish What to do if Alice and Bob cannot agree on a uniformly generated string X?

Less than perfect random variables Suppose X is chosen according to some distribution P x cover some set of symbols Γ What is Eve’s best strategy? What is her probability of success

(Shannon) Entropy Let X be random variable over alphabet Γ with distribution P x The (Shannon) entropy of X is H(X) = - ∑ x  Γ P x (x) log P x (x) Where we take 0 log 0 to be 0. Represents how much we can compress X

Examples If X=0 (constant) then H(x) = 0 –Only case where H(X)=0 when X is constnat –All other cases H(X) >0 If X  {0,1} and Prob[X=0] = p and Prob[X=1]=1-p, then H(X) = -p log p + (1-p) log (1-p) ≡ H(p) If X  {0,1} n and is uniformly distributed, then H(X) = - ∑ x  {0,1} n 1/2 n log 1/2 n = 2 n /2 n n = n

Properties of Entropy Entropy is bounded H(X) ≤ log | Γ | with equality only if X is uniform over Γ

Does High Entropy Suffice for Identification? If Alice and bob agree on X  {0,1} n where X has high entropy (say H(X) ≥ n/2 ), what are Eve’s chances of cheating? Can be high: say –Prob[X=0 n ] = 1/2 –For any x  {0,1} n-1 Prob[X=x ] = 1/2 n Then H(X) = n/2+1/2 But Eve can cheat with probability at least ½ by guessing that X=0 n

Another Notion: Min Entropy Let X be random variable over alphabet Γ with distribution P x The min entropy of X is H min (X) = - log max x  Γ P x (x) The min entropy represents the most likely value of X Property: H min (X) ≤ H(X) Why?

High Min Entropy and Passwords Claim: if Alice and Bob agree on such that H min (X) ≥ m, then the probability that Eve succeeds in cheating is at most 2 -m Proof: Make Eve deterministic, by picking her best choice, X’ = x’. Prob[X=x’] = P x (x’) ≤ max x  Γ P x (x) = 2 –H min (X) ≤ 2 -m Conclusion: passwords should be chosen to have high min-entropy!

One-time vs. many times This was good for a single identification. What about many identification? Later…

A different scenario – now Charlie is involved Bob has no proof that Alice indeed identified If there are two possible verifiers, Bob and Charlie, they can each pretend to each other to be Alice –Can each have there own string –But, assume that they share the setup phase Whatever Bob knows Charlie know Relevent when they are many of them

The new requirement YIf Alice wants to approve and Eve does not interfere – Bob moves to state Y NIf Alice does not approve, then for any behavior from Eve and Charlie, Bob stays in N Similarly if Bob and Charlie are switched Alice Bob Eve Charlie

Can we achieve the requirements? Observation: what Bob and Charlie received in the setup phase might as well be public Therefore can reduce to the previous scenario (with no setup)… To the rescue - complexity Alice should be able to perform something that neither Bob nor Charlie (nor Eve) can do Must assume that the parties are not computationally all powerful!

Function and inversions We say that a function f is hard to invert if given y= f(x) it is hard to find x’ such that y=f(x’) –x’ need not be equal to x –We will use f -1 (y) to denote the set of preimages of y To discuss hard must specify a computational model Use two flavors: –Concrete –Asymptotic

One-way functions - asymptotics A function f: {0,1} n → {0,1} n is called a one-way function, if f is a polynomial-time computable function for every probabilistic polynomial-time algorithm A, every positive polynomial p(.), and all sufficiently large n’s Prob[A[f(x)]  f -1 (f(x)) ] ≤ 1/p(n) Where x is chosen uniformly in {0,1} n and the probability is also over the internal coin flips of A

One-way functions – concrete version A function f: {0,1} n → {0,1} n is called a (t,ε) one-way function, if f is a polynomial-time computable function (independent of t) for every t-time algorithm A, Prob[A[f(x)]  f -1 (f(x)) ] ≤ ε Where x is chosen uniformly in {0,1} n and the probability is also over the internal coin flips of A Can either think of t and ε as being fixed or as t(n), ε(n)

Complexity Theory and One-way Functions Claim: if P=NP then there are no one-way functions Proof: for any one-way function f: {0,1} n → {0,1} n consider the language : –Consisting of strings of the form {y, b 1, b 2 …b k } –There is an x  {0,1} n s.t. f(x)=y and –The first k bits of x are b 1, b 2 …b k L f is NP – guess x and check If L f is P then f is invertable in polynomial time

A few properties and questions concerning one-way functions Major open problem: connect the existence of one-way functions and P=NP? question. If f is one-to-one it is a called a one-way permutation. In what complexity class does the problem of inverting one-way permutations reside? Homework If f is a one-way function, is f’ where f’(x) is f(x) with the last bit chopped a one-way function? If f is a one-way function, is f L where f L (x) consists of the first half of the bits of f(x) a one-way function? Homework If f is a one way function is g(x) = f(f(x)) necessarily a one-way function? Homework

Solution to the password problem Assume that – f: {0,1} n → {0,1} n is a (t,ε) one-way function –Adversaries run times is bounded by t Setup phase: Alice chooses x  {0,1} n, computes y=f(x) and given Bob and Charlie y When Alice wants to approve – she sends X If Bob gets any symbols on channel – call them z; compute f(z) and compares to y Y –If equal moves to state Y N –If not equal moves permanently to state N

Eve’s and Charlie’s probability of success If Alice did not send x and Eve (Charlie) put some string x’ on the channel to Bob, then: Y –Bob moves to state Y only if f(x’)=y=f(x) –But we know that Prob[A[f(x)]  f -1 (f(x)) ] ≤ ε or else we can use Eve to break the one-way function Good news: if ε can be made as small as we wish, then we have a good scheme. Can be used for monitoring Similar to the Unix password scheme –f(x) stored in login file –DES used as the one-way function.