Interactive Proofs and Secure Multi-Party Computation

Slides:



Advertisements
Similar presentations
Revisiting the efficiency of malicious two party computation David Woodruff MIT.
Advertisements

NP-Hard Nattee Niparnan.
Secure Multiparty Computations on Bitcoin
Polling With Physical Envelopes A Rigorous Analysis of a Human–Centric Protocol Tal Moran Joint work with Moni Naor.
ITIS 6200/ Secure multiparty computation – Alice has x, Bob has y, we want to calculate f(x, y) without disclosing the values – We can only do.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
Receipt-Free Universally-Verifiable Voting With Everlasting Privacy Tal Moran Joint work with Moni Naor.
Short course on quantum computing Andris Ambainis University of Latvia.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 11: Birthday Paradoxes.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
1 Adapted from Oded Goldreich’s course lecture notes.
Oblivious Transfer based on the McEliece Assumptions
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.
Optimistic Synchronous Multi-Party Contract Signing N. Asokan, Baum-Waidner, M. Schunter, M. Waidner Presented By Uday Nayak Advisor: Chris Lynch.
Lecture 20: April 12 Introduction to Randomized Algorithms and the Probabilistic Method.
Introduction to Modern Cryptography, Lecture 9 More about Digital Signatures and Identification.
Complexity ©D.Moshkovitz 1 Paths On the Reasonability of Finding Paths in Graphs.
Theory of Computing Lecture 22 MAS 714 Hartmut Klauck.
Sedgewick & Wayne (2004); Chazelle (2005) Sedgewick & Wayne (2004); Chazelle (2005)
Slide 1 Vitaly Shmatikov CS 380S Oblivious Transfer and Secure Multi-Party Computation With Malicious Parties.
Lecture 12 Commitment Schemes and Zero-Knowledge Protocols Stefan Dziembowski University of Rome La Sapienza critto09.googlepages.com.
Lecture 6: Public Key Cryptography
Quadratic Residuosity and Two Distinct Prime Factor ZK Protocols By Stephen Hall.
Physical Mapping of DNA Shanna Terry March 2, 2004.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
Complexity Classes (Ch. 34) The class P: class of problems that can be solved in time that is polynomial in the size of the input, n. if input size is.
MCS 312: NP Completeness and Approximation algorithms Instructor Neelima Gupta
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.
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.
Presented by: Suparita Parakarn Kinzang Wangdi Research Report Presentation Computer Network Security.
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.
Secure Conjunctive Keyword Search Over Encrypted Data Philippe Golle Jessica Staddon Palo Alto Research Center Brent Waters Princeton University.
Multi-Party Proofs and Computation Based in part on materials from Cornell class CS 4830.
Software Security Seminar - 1 Chapter 4. Intermediate Protocols 발표자 : 이장원 Applied Cryptography.
 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.
Zero-Knowledge Proofs Ben Hosp. Classical Proofs A proof is an argument for the truth or correctness of an assertion. A classical proof is an unambiguous.
David Evans CS588: Security and Privacy University of Virginia Computer Science Lecture 15: From Here to Oblivion.
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:
More NP-Complete and NP-hard Problems
More NP-complete problems
P & NP.
Topic 36: Zero-Knowledge Proofs
Probabilistic Algorithms
Privacy-Preserving Clustering
Introduction to Randomized Algorithms and the Probabilistic Method
On the Size of Pairing-based Non-interactive Arguments
Multi-Party Proofs and Computation
Eulerian tours Miles Jones MTThF 8:30-9:50am CSE 4140 August 15, 2016.
Zero Knowledge Anupam Datta CMU Fall 2017
The first Few Slides stolen from Boaz Barak
Course Business I am traveling April 25-May 3rd
Cryptographic protocols 2016, Lecture 12 Sigma protocols
Parameterised Complexity
Discrete Math for CS CMPSC 360 LECTURE 44 Last time:
Zcash adds privacy to Bitcoin’s decentralization
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
09 Zero Knowledge Proof Hi All, One more topic to go!
CSCI284 Spring 2009 GWU Sections 5.1, 5.2.2, 5.3
Reductions Complexity ©D.Moshkovitz.
Privacy Coins CS1952 L Spring 2019 Maurice Herlihy Brown University.
Reductions Complexity ©D.Moshkovitz.
Lecture 22 Complexity and Reductions
ITIS 6200/8200 Chap 5 Dr. Weichao Wang.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

Interactive Proofs and Secure Multi-Party Computation Based in part on materials from Cornell class CS 4830.

Interactive Proofs A prover must convince a verifier that some statement is true. Typically the prover is thought of as all powerful, while the verifier has limited computational ability. The verifier doesn’t trust the prover.

Sudoku How can the prover convince the verifier that this puzzle has a solution?

Interactive Proof Prover shows the verifier a solution. Verifier checks every row, column, 3x3 box.

Pepsi Challenge Professor Maggs claims that he can distinguish Pepsi from Coke without ever making an error. How can this claim be verified?

Experiment: Morton: Randomly decides (with equal probability) on Coke or Pepsi and hands the professor a glass containing the chosen drink. Professor: Takes a sip of the drink and announces “Coke” or “Pepsi”. Morton: Notes whether the announcement was correct, and repeats.

Verifying the Claim Suppose that the professor can actually only correctly identify a Coke or a Pepsi with probability p. After t trials, the probability that the professor gets the answer correctly every time is pt. Example, for p = 0.9, t = 100, pt < 0.00003

Zero-Knowledge Proof Prover wants to convince verifier that prover knows a solution to a problem without revealing any information about the solution.

Hamilton Path A graph has a Hamilton path if there is a path through the graph that visits every vertex exactly once. 1 5 2 6 4 7 3

Zero-Knowledge Proof Prover: Draw the graph on a piece of cardboard with vertices positioned at random places. Don’t write down the labels, 1,…,n, of the vertices. Cover everything in the drawing except the vertices with scratch-off paint. Give the cardboard to the verifier

Verification The verifier flips an unbiased random coin, then based on the outcome asks the prover to do one of two things: 1: Scratch off all the paint and then label the vertices. The verifier then checks that the drawn graph matches the original input graph. 2: Scratch off just enough paint to reveal the edges of a Hamilton path. The verifier then knows that the drawn graph is Hamiltonian. If the graph is Hamiltonian, the prover always succeeds. If the graph is not Hamiltonian, the prover fails with probability ½.

Zero Knowledge The verifier never learns anything about the Hamilton path. Revealing a labeled drawing of the graph provides no new information. 4 6 7 2 3 5 1

Zero Knowledge Revealing a path, but no other edges, connecting n unlabeled vertices at random positions provides no new information.

Reduction to Hamilton Path Note that Hamilton Path is NP-complete, i.e., every other problem in NP can be reduced to Hamilton Path ZKP for Hamilton Path → ZKP for all NP!

How to flip a coin over the Internet 1. First party chooses a random number X in the range [0-,2256) publishes A := SHA256(X) 2. Second party likewise chooses a number Y publishes B := SHA256(Y) 3. After receiving A,B, both parties reveal X and Y If (X+Y) is even, first party wins. What if first party waits to see SHA256(Y) before choosing X? What if first party tries to change X after seeing Y?

Scratch-off Paint Implemented by publishing hash to commit to a value that will be revealed later

Graph Isomorphism Two graphs G1=(V,E1) and G2=(V,E2) are isomorphic if there is a bijection f:VV s.t. {u,v}E1  {f(u),f(v)} E2. (Not known to be in P, or to be NP-hard.) 1 2 1 2 3 4 3 4

Zero-Knowledge Proof Prover randomly relabels the vertices of G1 and publishes the resulting graph Gr. Gr is also a random relabeling of the vertices of G2. Verifier randomly chooses to see isomorphism between G1 and Gr or between Gr and G2. If prover knows bijection from G1 to G2, then it can produce both of these bijections. If prover doesn’t know, then one must be incorrect. Verifier either gets a random relabeling of G1 or a random relabeling of G2.

Example G1 Gr G2 1 2 1 2 1 2 3 4 3 4 3 4

Zcash Cryptocurrency A privacy-preserving version of BitCoin Addresses and amounts for transactions involving “zerocoins” are not publicly visible in the BlockChain Nevertheless, the correctness of each transaction can be verified using a zero-knowledge proof.

Secure Multi-Party Computation Each party i holds an input xi. The parties wish to compute a function f(x1, x2, …, xn). No party should learn anything about any other party’s input except what is implied by the value of the function. - all in the absence of a trusted third party -

Two-Party Secure AND Computation Alice and Bob wish to know whether they mutually have feelings for each other. If both have feelings for the other, great! If Alice loves Bob but Bob does not love Alice back, Alice will be embarrassed -- she would not want Bob to know that she loves Bob (or vice versa)

Securely computing AND truth table A B AND 0 0 0 0 1 0 1 0 0 1 1 1 both learn the others’ input by definition Bob does not learn which case Alice does not learn which case

Protocol place Alice’s input cards, heart, Bob’s input cards in order, face down shuffle (cycle shift) reveal

The Room Suppose there is a room with two doors on opposite walls and no windows. Alice and Bob walk to opposite doors. At an agreed time, if either party likes the other, they open their door and look across the room to the opposite door.

Yao’s Millionaires’ Problem Alice and Bob want to determine who has more millions. Suppose Alice has I millions and Bob has J millions, where 1 ≤ I,J ≤ 10. Neither party should learn anything about the net worth of the other except who has more millions.

Yao’s First Algorithm (Sketch) Bob picks a secret random number x and encrypts it with Alice’s public RSA key, C = E(x). Bob then sends m = C – J + 1 to Alice, which looks random. Alice decrypts m, m+1, m+2, …, m+9, i.e., Yi = D(m+i-1), 1 ≤ i ≤ 10. The Yi look like random numbers. YJ is Bob’s secret x, but Alice doesn’t know J and can’t distinguish YJ from the other Yi. Bob cannot compute the Yi (except YJ) because he can’t decrypt m, m+1, m+2, …, m+9 (For simplicity, let’s assume that none of the Yi are consecutive numbers) For i ≤ I, Alice sets Wi = Yi. For i > I, Alice sets Wi = Yi+1 I.e., Alice adds 1 to Yi for each i larger than her own wealth I. Alice sends W1, W2, …, W10 to Bob. If WJ = x, then Alice has more millions (I > J), otherwise Bob has more. Note Bob cannot compare the Wi to the Yi because he can’t compute the Yi.

Related Example Alice, Bob, and Trent bid in an auction. Only the second highest bid and the winning bidder should be revealed.

Multiparty TLS Computation Two parties hold shares of the split private RSA key. The parties implement functions such as decryption and signing without learning each other’s shares of the other party.