Wonders of the Digital Envelope

Slides:



Advertisements
Similar presentations
Polylogarithmic Private Approximations and Efficient Matching
Advertisements

Moni Naor מוני נאור Cryptography and Sudoku
Secure Computation Slides stolen from Joe Kilian & Vitali Shmatikov Boaz Barak.
Statistical Zero-Knowledge Arguments for NP from Any One-Way Function Salil Vadhan Minh Nguyen Shien Jin Ong Harvard University.
OPENING THE BLACK BOX Boaz Barak Institute for Advanced Study Princeton, NJ New Techniques in Cryptography.
Secure Computation of Linear Algebraic Functions
The Complexity of Zero-Knowledge Proofs Salil Vadhan Harvard University.
Efficient Zero-Knowledge Proof Systems Jens Groth University College London.
Rational Oblivious Transfer KARTIK NAYAK, XIONG FAN.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
Short course on quantum computing Andris Ambainis University of Latvia.
Zero-Knowledge Proofs J.W. Pope M.S. – Mathematics May 2004.
Great Theoretical Ideas in Computer Science.
CS426Fall 2010/Lecture 351 Computer Security CS 426 Lecture 35 Commitment & Zero Knowledge Proofs.
Zero Knowledge Proofs By Subha Rajagopalan Jaisheela Kandagal.
CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz.
Oblivious Transfer based on the McEliece Assumptions
Digital Envelopes, Zero Knowledge, and other wonders of modern cryptography (How computational complexity enables digital security & privacy) Guy Rothblum.
1 Introduction to Secure Computation Benny Pinkas HP Labs, Princeton.
CRYPTOGRAPHY WHAT IS IT GOOD FOR? Andrej Bogdanov Chinese University of Hong Kong CMSC 5719 | 6 Feb 2012.
Introduction to Modern Cryptography, Lecture 7/6/07 Zero Knowledge and Applications.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
Sedgewick & Wayne (2004); Chazelle (2005) Sedgewick & Wayne (2004); Chazelle (2005)
Lecture 20: April 12 Introduction to Randomized Algorithms and the Probabilistic Method.
Introduction to Modern Cryptography, Lecture 9 More about Digital Signatures and Identification.
Chapter 9 Cryptographic Protocol Cryptography-Principles and Practice Harbin Institute of Technology School of Computer Science and Technology Zhijun Li.
Sedgewick & Wayne (2004); Chazelle (2005) Sedgewick & Wayne (2004); Chazelle (2005)
Games Computers (and Computer Scientists) Play Avi Wigderson.
Computer Science Science of Computation Omer Reingold.
David Froot.  How do we transmit information and data, especially over the internet, in a way that is secure and unreadable by anyone but the sender.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Randomness – A computational complexity view Avi Wigderson Institute for Advanced Study.
Of 28 Probabilistically Checkable Proofs Madhu Sudan Microsoft Research June 11, 2015TIFR: Probabilistically Checkable Proofs1.
How to play ANY mental game
Lecture 19 Page 1 CS 111 Online Symmetric Cryptosystems C = E(K,P) P = D(K,C) E() and D() are not necessarily the same operations.
CSCI 3130: Formal languages and automata theory Andrej Bogdanov The Chinese University of Hong Kong Interaction,
Cryptography Dec 29. This Lecture In this last lecture for number theory, we will see probably the most important application of number theory in computer.
Wonders of the Digital Envelope Avi Wigderson Institute for Advanced Study.
The Power and Weakness of Randomness (when you are short on time) Avi Wigderson School of Mathematics Institute for Advanced Study.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
On the Practical Feasibility of Secure Distributed Computing A Case Study Gregory Neven, Frank Piessens, Bart De Decker Dept. of Computer Science, K.U.Leuven.
Secure two-party computation: a visual way by Paolo D’Arco and Roberto De Prisco.
Fall 2004/Lecture 201 Cryptography CS 555 Lecture 20-b Zero-Knowledge Proof.
Introduction to Modern Cryptography Sharif University Spring 2015 Data and Network Security Lab Sharif University of Technology Department of Computer.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
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.
Introduction to Modern Cryptography Sharif University Spring 2015 Data and Network Security Lab Sharif University of Technology Department of Computer.
Cryptography In the Bounded Quantum-Storage Model Christian Schaffner, BRICS University of Århus, Denmark ECRYPT Autumn School, Bertinoro Wednesday, October.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
Some Fundamental Insights of Computational Complexity Theory Avi Wigderson IAS, Princeton, NJ Hebrew University, Jerusalem.
Zero-knowledge proof protocols 1 CHAPTER 12: Zero-knowledge proof protocols One of the most important, and at the same time very counterintuitive, primitives.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Interaction,
Zero Knowledge Proofs Matthew Pouliotte Anthony Pringle Cryptography November 22, 2005 “A proof is whatever convinces me.” -~ Shimon Even.
Great Theoretical Ideas In Computer Science Anupam GuptaCS Fall 2006 Lecture 15Oct 17, 2006Carnegie Mellon University Algebraic Structures: Groups,
Software Security Seminar - 1 Chapter 4. Intermediate Protocols 발표자 : 이장원 Applied Cryptography.
NPC.
Cryptography CS Lecture 19 Prof. Amit Sahai.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 15: From Here to Oblivion.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
Topic 36: Zero-Knowledge Proofs
Cryptography and Pseudorandomness
Introduction to Randomized Algorithms and the Probabilistic Method
Cryptographic Hash Function
Big Numbers: Mathematics and Internet Commerce
Zero Knowledge Anupam Datta CMU Fall 2017
Zero-Knowledge Proofs
ITIS 6200/8200 Chap 5 Dr. Weichao Wang.
Presentation transcript:

Wonders of the Digital Envelope Computational complexity based cryptography Theoretical ideas behind e-commerce and the internet revolution

Lecture III - plan - Cryptography before computational complexity - The ambitions of modern cryptography The assumptions of modern cryptography The “digital envelope” and its power Zero-knowledge proofs Private communication Oblivious computation

Cryptography before computational complexity Secret communication Assuming shared information which no one else has

What do we want to do? Here are the ambitions of modern cryptography

Modern Cryptography The basic conflict between: Secrecy / Privacy Resilience / Fault Tolerance Tasks Implements Code books Encryption Driver License These two basic issues occur in lots of human interactions. Usually, physical implements were invented to deal with privacy & resilience Identification Money transfer Notes, checks Sealed envelopes Public bids

Digitally, with no trusted parties Modern Cryptography Tasks Implements ALL NONE Info protection Locks Poker game Play cards Public lottery Coins, dice Sign contracts Lawyers We want to do everything digitally, with no physical implements (and no trusted parties). Digitally, with no trusted parties

What are we assuming? The axioms underlying modern cryptography

Axiom 1: Agents are computationally limited. Consequence 1: Only tasks having efficient algorithms can be performed This can be defined in many ways – one common one is that Agents can toss coins, and compute for polynomial time (but other definitions make sense, such as memory bounds etc).

Easy and Hard Problems asymptotic complexity of functions Multiplication mult(23,67) = 1541 grade school algorithm: n2 steps on n digit inputs EASY Can be performed quickly for huge integers Factoring factor(1541) = (23,67) best known algorithm: exp(n) steps on n digits HARD? We don’t know! We’ll assume it. Axiom 2: Factoring is hard!

Axiom 1: Agents are computationally limited Axiom 2: Factoring is hard Easy p,q pq Impossible (p,q) and pq are information theoretically equivalent for primes p,q. However, computationally they are very different! Theorem: Axioms  digital

One-way functions Axiom 1: Agents are computationally limited Axiom 2’: The exist one-way functions E x E(x) Easy Impossible Example: E(p,q) = pq E is multiplication We have other E’s More generally, we can assume “one-way” functions, and multiplication is one of a few candidates for such function we have. Nature may provide others (but this is only an analogy). Easy Impossible Nature’s one-way functions: 2nd law of Thermodynamics

Properties of the Envelope x E(x) OPEN CLOSED Easy to insert x (any value, even 1 bit) Hard to compute content (even partial info) Impossible to change content (E(x) defines x) Easy to verify that x is the content To prove this properties from the axioms is very difficult (even defining these exactly is difficult). These definitions are initiated in the seminal paper of Goldwasser-Micali “Probabilistic Encryption” 1981. Theorem:  Cryptography

Examples of increasing difficulty The power of the digital envelope Examples of increasing difficulty Mind games of the 1980’s – before Internet & E-commerce were imagined Theory came much before practice!

Public bid (players in one room) $130 $120 $150 Phase 1: Commit E (130) E (120) E (150) Phase 2: Expose Everyone sees what everyone else does And hears whatever everyone else says This is the simplest and most ideal application of real envelopes! Commitment protocol 130 120 150 Theorem:  Simultaneity

Public Lottery (on the phone) Blum 1981 Public Lottery (on the phone) Alice Bob Alice: if I get the car (else you do) Bob: flipping... Bob: flipping... You lost! What did you pick? Here the players are on the phone, They cannot see what the other is doing. They decide to toss a coin and see who gets the car – can they do it? The envelope prevents Bob from seeing the value, but Alice can’t change her mind later. Theorem:  Symmetry breaking

Identification / Passwords Public password file Name E (pswd) … … alice Palice =E (…) avi Pavi=E (einat) bob Pbob =E (…) login: avi password: einat Password file can be public, since the envelopes do not reveal their contents (the passords). On the other the computer can quickly check that a candidate password is correct, by the envelope property (applying E is easy). Computer: 1 checks if E (pswd)= Pavi 2 erases password from screen

Problem: Eavesdropping & repeated use! Wishful thinking: Theorem:  Identification Problem: Eavesdropping & repeated use! Wishful thinking: Computer should check if I know x such that E (x)=Pavi without actually getting x We login many times into the system. Very different than previous examples, where critical information was of no use for anything after it was being revealed. Someone may be (surely is) monitoring the communication line It would be nice if we could convince the computer (or our bank, etc) that we know our password, without actually giving it (in this way, noone can copy it) Zero-Knowledge Proof: Convincing Reveals no information

Copyrights Dr. Alice: I can prove Riemann’s Hypothesis Prof. Bob: Impossible! What is the proof? Dr. Alice: Lemma…Proof…Lemma…Proof... Another example where wishful thinking helps. Any other situation if protecting intellectual rights is relevant. Prof. Bob: Amazing!! I’ll recommend tenure Amazing!! I’ll publish first

Zero-Knowledge Proof “Claim” Bob Alice (“proof”) Accept/Reject Goldwasser-Micali -Rackoff 1984 “Claim” Bob Alice (“proof”) Accept/Reject Formally defining zero-knowledge is quite complicated. But the inuition is simple. Alice and Bob both know the claim to be proven. They can each toss random coins. They interact for a few rounds, after which Bob decides to accept or reject the claim. They can use randomness, and Bob fails to detect a false claim by an arbitrarily small probability (which he chooses, and depends only on his coin tosses). Bob accepts Bob learns nothing “Claim” true  “Claim” false  Bob rejects with high probability

The universality of Zero-Knowledge Goldreich-Micali -Wigderson 1986 Theorem: Everything you can prove at all, you can prove in Zero-Knowledge We’ll see the intuition for the proof of this universality theorem in several stages. First, we’ll argue it for “map-coloring claims”, and demo a zero-knowledge proof for such claims. Then we explain why the ability to do that takes care of all possible mathematical claims

ZK-proofs of Map Coloring Input: planar map M 4-COL: is M 4-colorable? YES! 3-COL: is M 3-colorable? Let’s look at different types of claims. We had”I know my password” and “I can prove the Riemann hypothesis”. Now – “I can color this map in 3 colors”. Famous 4-color theorem of Appel and Haken, states that every planar map can be 4-colored (so a claim that a map is 4-colorable is not an interesting one – always true). HARD! Typical “claim”: map M is 3-colorable Theorem [GMW]: Such claims have ZK-proofs

I’ll prove this claim in zero-knowledge Claim: This map is 3-colorable (with R Y G ) Note: if I have any 3-coloring of any map Then I immediately have 6 Q P F M O N L K J I H G E C B D A This basic combinatorial property of colorings, namely that the colors can be renamed at random, will be essential.

Q P F M O N L K J I H G E C D A Structure of proof: Repeat (until satisfied) - I hide a random one of my 6 colorings in digital envelopes You pick a pair of adjacent countries I open this pair of envelopes Reject if RR,YY,GG or illegal color Q P F M O N L K J I H G E C B D A

Zero-knowledge proof demo For each one of these colorings (encrypted by digital envelopes) which I chose randomly For each slide, do the following. First, you need to get out of presentation mode. Let the audience pick a pair of adjacent countries. Then drag the white covers of the envelopes, only on these two countries, to reveal the underlying colors. Don’t reveal the colors of any other country.

L K E I J G O M D B A F C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O D M B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

L K E I J G O M D B F A C N Q H P

A, B are integers, describing the wealth of these millionaires They want to engage in a kind of “zero-knowledge “ conversation, Which will reveal nothing to either, except who is richer.

Why is it a Zero-Knowledge Proof? Exposed information is useless (Bob learns nothing) M 3-colorable  Probability [Accept] =1 (Alice always convinces Bob) M not 3-colorable Prob [Accept] < .99  Prob [Accept in 300 trials] < 1/billion (Alice rarely convince Bob) If the coloring was legal, and each time a random renaming of the 6 possible ones was chosen: 1) ZK – at every step, only a pair of random distinct colors was exposed. 2) Bob would never find a reason to reject. But if the map is not 3-coloring, there must be either a pair of adjacent countries with the same color, or an illegal color somewhere. If the pair is picked randomly, Bob would catch this error with at least 1% probability. If he repeats it k times, the probability he doesn’t catch an error drops exponentially like .99k Which becomes tiny very quickly.

What does it have to do with Riemann’s Hypothesis? Theorem: There is an efficient algorithm A: A “Claim” + “Proof length” Map M “Claim” true M 3-colorable Here we use the fact that 3-coloring is NP-complete, which allows a translation of any problem with a short proof into a map coloring problem (as well as the proof itself to a legal coloring) via the Cook-Levin theorem. “Proof” 3-coloring of M A is the Cook-Levin “dictionary”, proving that 3-coloring is NP-complete

 Theorem [GMW]: + short proof  efficient ZK proof Theorem [GMW]: The incredible utility of ZK protocols – They guarantee correct behavior of agents, despite the existence of secrets. Theorem [GMW]:  fault-tolerant protocols

si secret Making any protocol fault-tolerant 1.P2 send m1(s2) 2.P7 send m2(s7,m1) 3.P1 send m3(s1,m1 ,m2) P1 s7 P7 A protocol is just a sequence of instructions (like a program) but to many players. Each should send a message, according to a specified rule (function) at appropriate steps. The problem is how do others make sure a particular player sent the correct message – after all it depends on his/hers private secrets! We are oversimplifying here. The secrets si are encrypted before hand via E(si) The properties of the envelope allow using the proof that the players can use these short proofs without cheating, as they are committed to them. Suppose that in step 1 P2 sends X How do we know that X=m1(s2)? s2 is a short proof of correctness! P2 proves correctness in zero-knowledge!!

So Far... Fault Tolerance (we can force players to behave well!) Privacy/Secrecy (even when all players behave well)

Private communication Alice and Bob want to have a completely private conversation. They share no private information Many in this audience has already faced and solved this problem often! Alice, Bob and their problems were born before cryptography! This famous 60’s movies is about discussing your feelings. Alice and Bob want to do so in a manner that will not allow carol and Ted To understand a single word. They share no common private information.

Public-key encryption E-commerce security Diffie-Hellman, Merkle Rivest-Shamir-Adleman 1976-77 I want to purchase “War and Peace”. My credit card is number is 1111 2222 3333 4444 you EA EC EB This is the important idea of public-key cryptography, which initiated computationally based crypto. We need more than the digital envelope as we defined it, but rather “personal” envelopes. Eg Bob’s envelopes can allow anyone to send him secret information, which only he can understand. No prior shared information is needed – only the hardness of factoring (the famous RSA protocol) Easy for everyone Personal Digital envelope x E (x) B Hard for everyone Easy for Bob Factoring is hard

The Millionaires’ Problem Both want to know who is richer Neither gets any other information Privacy problems exist even when there are no eavesdroppers! A, B are integers, describing the wealth of these millionaires They want to engage in a kind of “zero-knowledge “ conversation, Which will reveal nothing to either, except who is richer. 0 if A>B g(A,B)= 1 if AB

Computing with secret inputs winner 0 Democrats Si = 1 Republicans g … … S1 S2 Si Sn Elections: g = Majority Here is another basic problem – elections. We want to do it digitally, so that everyone learns the outcome, But no user (or subset of users) Learns anything more than can be inferred from their secrets and the outcome. All players are honest. All players learn g(S1,S2,…,Sn) No subset learns anything more

Yao 1987 Oblivious computation How to compute natural functions privately? Generalize: Try to do it for every function Specialize: Identify a universal function Solve it (using special envelopes) Here is yao’s famous “Oblivious computation” solutions to all these problems. (Yao did the 2-player case. It was generalized to any number of players in Goldreich-Micali-Wigderson 1987)

Computation in small steps OR V Ignore privacy. Every g has a Boolean circuit g(inputs) AND V 1 V 1 V V 1 First, we abstract it and generalize it, to attempt any functions. Any function g has such a “Boolean circuit” (which is how you’d implement it in hardware). One needs to add “negation” gate, but we’ll ignore it. If privacy is no issue, the players can evaluate the circuit gate by gate V V V 1 1

Computing with envelopes I AND is universal 1 Possible with personal a Alice b Bob AND The locality and simplicity of computation reveals that we should first somehow handle the basic steps –AND and OR. AND is a universal (complete ) problem. If we manage to solve it “privately” (OR is dual, so similar) Yao shows how to do that with personal envelopes – it is an ingenious protocol, and defining exactly what it means to “compute with envelopes”, namely how the players jointly hold the value without any of them having access to it or the ability to change it, is complex. Than we can compute any function privately! Axiom 2: Factoring is hard

Computing with envelopes II g(inputs) 1 1 V 1 V V 1 Once we can do a basic step, we can do them all in sequence! At the end, the players have the ability to open the last envelope – the one they are interested in opening. V V V 1 1

Summary Practically every cryptographic task can be performed securely & privately Assuming that players are computationally bounded and Factoring is hard. Computational complexity is essential! Hard problems can be useful! - The theory predated (& enabled) the Internet - What if factoring is easy? - We have (very) few alternatives. Major open question: Can cryptography be based on NP-complete problems ?