C OMPLEXITY - THEORETIC F OUNDATIONS OF S TEGANOGRAPHY AND C OVERT C OMPUTATION Daniel Apon.

Slides:



Advertisements
Similar presentations
Computational Privacy. Overview Goal: Allow n-private computation of arbitrary funcs. –Impossible in information-theoretic setting Computational setting:
Advertisements

Many-to-one Trapdoor Functions and their Relations to Public-key Cryptosystems M. Bellare S. Halevi A. Saha S. Vadhan.
Noise, Information Theory, and Entropy (cont.) CS414 – Spring 2007 By Karrie Karahalios, Roger Cheng, Brian Bailey.
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (3) Information Security.
Rational Oblivious Transfer KARTIK NAYAK, XIONG FAN.
CS555Topic 241 Cryptography CS 555 Topic 24: Secure Function Evaluation.
CS555Topic 191 Cryptography CS 555 Topic 19: Formalization of Public Key Encrpytion.
11 Provable Security. 22 Given a ciphertext, find the corresponding plaintext.
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.
Introduction to Modern Cryptography, Lecture 12 Secure Multi-Party Computation.
7. Asymmetric encryption-
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.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
Session 4 Asymmetric ciphers.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
COVERT TWO-PARTY COMPUTATION LUIS VON AHN CARNEGIE MELLON UNIVERSITY JOINT WORK WITH NICK HOPPER JOHN LANGFORD.
Analysis of Security Protocols (V) John C. Mitchell Stanford University.
Lecturer: Moni Naor Foundations of Cryptography Lecture 4: One-time Signatures, UOWHFs.
Co-operative Private Equality Test(CPET) Ronghua Li and Chuan-Kun Wu (received June 21, 2005; revised and accepted July 4, 2005) International Journal.
Practical Techniques for Searches on Encrypted Data Author: Dawn Xiaodong Song, David Wagner, Adrian Perrig Presenter: 紀銘偉.
A Designer’s Guide to KEMs Alex Dent
What is Steganography? Examples of protocols - and attacks A new and formal approach Public Key Steganography? Reviewed papers: “On the limits of Steganography”
Asymmetric Cryptography part 1 & 2 Haya Shulman Many thanks to Amir Herzberg who donated some of the slides from
On The Cryptographic Applications of Random Functions Oded Goldreich Shafi Goldwasser Silvio Micali Advances in Cryptology-CRYPTO ‘ 84 報告人 : 陳昱升.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
1 CIS 5371 Cryptography 9. Data Integrity Techniques.
CS555Spring 2012/Topic 41 Cryptography CS 555 Topic 4: Computational Approach to Cryptography.
On Everlasting Security in the Hybrid Bounded Storage Model Danny Harnik Moni Naor.
Foundations of Cryptography Lecture 10: Pseudo-Random Permutations and the Security of Encryption Schemes Lecturer: Moni Naor Announce home )deadline.
Foundations of Cryptography Lecture 9 Lecturer: Moni Naor.
Slide 1 Vitaly Shmatikov CS 380S Oblivious Transfer and Secure Multi-Party Computation With Malicious Parties.
Foundations of Cryptography Lecture 8 Lecturer: Moni Naor.
Foundations of Cryptography Rahul Jain CS6209, Jan – April 2011
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
8. Data Integrity Techniques
The RSA Algorithm Rocky K. C. Chang, March
How to play ANY mental game
A Few Simple Applications to Cryptography Louis Salvail BRICS, Aarhus University.
Ragesh Jaiswal Indian Institute of Technology Delhi Threshold Direct Product Theorems: a survey.
One-Time Pad Or Vernam Cipher Sayed Mahdi Mohammad Hasanzadeh Spring 2004.
Basic Concepts in Number Theory Background for Random Number Generation 1.For any pair of integers n and m, m  0, there exists a unique pair of integers.
Slide 1 Vitaly Shmatikov CS 380S Yao’s Protocol. slide Yao’s Protocol uCompute any function securely … in the semi-honest model uFirst, convert.
Secure two-party computation: a visual way by Paolo D’Arco and Roberto De Prisco.
Slide 1 Yao’s Protocol. slide Yao’s Protocol uCompute any function securely … in the semi-honest model uFirst, convert the function into a boolean.
Theory of Computation II Topic presented by: Alberto Aguilar Gonzalez.
CRYPTANALYSIS OF STREAM CIPHER Bimal K Roy Cryptology Research Group Indian Statistical Institute Kolkata.
Communication System A communication system can be represented as in Figure. A message W, drawn from the index set {1, 2,..., M}, results in the signal.
Alternative Wide Block Encryption For Discussion Only.
CPS 290 Computer Security Network Tools Cryptography Basics CPS 290Page 1.
15-499Page :Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols.
NEW DIRECTIONS IN CRYPTOGRAPHY Made Harta Dwijaksara, Yi Jae Park.
ECE 101 An Introduction to Information Technology Information Coding.
Channel Coding Theorem (The most famous in IT) Channel Capacity; Problem: finding the maximum number of distinguishable signals for n uses of a communication.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Cryptographic methods. Outline  Preliminary Assumptions Public-key encryption  Oblivious Transfer (OT)  Random share based methods  Homomorphic Encryption.
Homework #1 J. H. Wang Oct. 9, 2012.
Multi-Party Computation r n parties: P 1,…,P n  P i has input s i  Parties want to compute f(s 1,…,s n ) together  P i doesn’t want any information.
Cryptography.
Digital Signature Schemes and the Random Oracle Model
Course Business I am traveling April 25-May 3rd
Topic 25: Discrete LOG, DDH + Attacks on Plain RSA
Topic 3: Perfect Secrecy
Cryptography Lecture 10.
Cryptography Lecture 5.
Cryptography Lecture 9.
Presentation transcript:

C OMPLEXITY - THEORETIC F OUNDATIONS OF S TEGANOGRAPHY AND C OVERT C OMPUTATION Daniel Apon

T ODAY ’ S T ALK Portrait of an invisible cake. Hopefully we have a good handle on this! Alice and Bob want to jointly compute a function without giving away their secrets! We’re baking a steganographic cake! Ingredients: Normal cryptographic notions Secure multi-party computation And in the process we answer one of life’s ultimate questions! How to find out if “he” or “she” is romantically interested in you, without risking embarrassment! f(x a, x b ) = ?

W HAT IS S TEGANOGRAPHY ? See us? We’re not doing anything out of the ordinary! I sure hope Ward didn’t notice!

Now, onto the technical fun stuff!

P RELIMINARIES U(·) = uniform distribution over strings, functions, or finite sets Given a distribution C over support X, the minimum entropy of C is:

P RELIMINARIES The statistical distance between two distributions C and D with joint support X is: Two sequences of distributions, {C k } k and {D k } k, are computationally indistinguishable (C ≈ D), if for any PPT adversary A: is negligible in k.

P RELIMINARIES A family of functions F k (·) is called pseudorandom if for is ≤ ε, for some negligible quantity ε.

P RELIMINARIES An cryptosystem E is called indistinguishable from random under chosen plaintext attack if for is ≤ ε, for some negligible quantity ε.

P RELIMINARIES A channel C h is a distribution on bit sequences with time-stamped bits, conditioned on the channel history h. Assume over blocks (e.g. symbols) of channel bits b: Sometimes we think of channels as one-way, sometimes as bidirectional, and sometimes as supporting broadcast messages only. (They all behave pretty much how you’d expect!)

S TEGANOGRAPHY Steganographic theory and an explicit construction of a steganographic system

S TEGANOGRAPHY Intuitively, steganographic secrecy results from messages that are indistinguishable from arbitrary distributions First, we need a way to encode messages to achieve arbitrary indistinguishability Then, we want to compose our new idea with canonical cryptographic themes to produce a functional steganographic system

S TEGANOGRAPHY A stegosystem is a pair of probabilistic algorithms (SE, SD) such that: SE M takes as input a key {0,1} k, a hiddentext bit-string {0,1}*, a message history h, and a sampling oracle M(h) and returns a sequence of blocks c (the stegotext) from the support of C h SD M takes as input a key K, a stegotext c, a message history h, a sampling oracle M(h), and returns a hiddentext m.

S TEGANOGRAPHY Finally, there must be a polynomial p(k) > k such that SE M and SE D also satisfy the following relationship:

S TEGANOGRAPHY The Rejection Sampling function:

S TEGANOGRAPHY

Lemma. The probability of failure of RS in the S1 procedure is bounded from above by 3/8 + ε. Let the channel in question have symbols {S 1, …, S k } and assign each symbol the occurrence probabilities {p 1, …, p k } respectively. Play the following bit-wise RS-based game: 1. Draw S a from the channel. If F(N, S a ) is correct, output S a. 2. Otherwise, draw S b from the channel and output S b.

S TEGANOGRAPHY How often do we “win”? Let S E denote the result of this game. Let D denote the event of a non-collision (when the two symbols drawn are different). Note that two successful outcomes are possible here: 1. The first symbol drawn maps to 0 (success). (1/2) 2. The first symbol maps to 1 (failure), but the second symbol drawn is a different symbol that maps to 0. (1/4 Pr[D])

S TEGANOGRAPHY Summing over the probabilities of each of these events gives: Let S i be a symbol with the greatest occurrence probability. Then,

S TEGANOGRAPHY And finally, which bounds RS’s probability of failure at 3/8 + ε, which proves the lemma.

S TEGANOGRAPHY Finally, we employ an error-correcting code to recover from RS’s chance to fail. Intuitively, we’re equating sending messages over a noisy channel with the act of sending stegotexts when RS makes mistakes. Basically, we pad redundant parity data into our messages so that the message gets through (with overwhelming probability)! A code with a stretch of 2n will correct for an error rate of up to 1/2. The well-known Hadamard code could easily be adapted here.

S TEGANOGRAPHY Theorem. If F K is pseudorandom, then S1 is universally steganographically secret against chosen hiddentext attacks.

C OVERT C OMPUTATION Covert computation theory, encryption transformations between distributions, and an informal construction of a two-party covert computation protocol

Would you like to run a covert protocol to determine if we are both members of a secret, zombie army? Um… !! C OVERT C OMPUTATION

STEP 1: First, we design a covert computation protocol over the uniform channel U. STEP 2: Then, we develop a technique to transform any stegosystem over the uniform channel into a stegosystem over an arbitrary channel B. At the end, we have a covert computation protocol over the channel we’re interested in! This is an important improvement in the overall strategy, because it modularizes and simplifies the design of covert protocols!

C OVERT C OMPUTATION : S TEP 1 To design a covert computation protocol over U, we will begin with two cryptographic primitives: 2. Yao’s Protocol for secure multi-party computation 1. Oblivious Transfer

C OVERT C OMPUTATION : S TEP 1 Oblivious Transfer m1m1 m2m2 mnmn … I want m i. …whatever it is!

C OVERT C OMPUTATION : S TEP 1 Oblivious Transfer 1. Alice generates RSA keys, including modulus N, the public exponent e, and the private exponent d, picks two random messages x 0 and x 1, and sends N, e, x 0, and x 1 to Bob. 2. Bob picks random message k, encrypts k, and adds x b to the encryption of k, modulo N, and sends the result v to Alice. 3. Alice computes k 0 to be the decryption of v - x 0 and k 1 to be the decryption of v - x 1 and sends m 0 + k 0 and m 1 + k 1 to Bob. 4. Bob knows k b and so subtracts this from the corresponding messages, obtaining m b from one of them.

C OVERT C OMPUTATION : S TEP 1 Yao’s Protocol xaxa But I want to know f(x a, x b )!! xbxb I can’t tell you what x a is. And I can’t tell you what x b is… Ah ha! f(x a, x b )!!

C OVERT C OMPUTATION : S TEP 1 Yao’s Protocol Assume f can be expressed as a combinatorial circuit that Bob knows. (WLOG, all gates have 2-fan-out.) 1. Bob assigns two uniformly random k-bit values each wire W of the circuit, representing the wire holding the value 0 or 1, respectively. 2. Then Bob assigns a random permutation π i over {0,1} to each wire. If a wire W i originally had value b i, then it now has “garbled” value: 3. To each gate g, Bob assigns a unique identifier I g and a table T g. 4. Each gate g then uses a pseudorandom function F to “garble” its own functionality as follows:

C OVERT C OMPUTATION : S TEP 1 Yao’s Protocol Yao’s Garbled Tables That is, each T g outputs the XOR of a pseudorandom function applied to the two values of the “garbled” input wires and the value of the “garbled” output wire. The result is a bit string that is indistinguishable from random but that is uniquely identifiable and re-usable within the context of a specific execution of Yao’s protocol.

C OVERT C OMPUTATION : S TEP 1 Yao’s Protocol Then to compute f: 1. Bob computes garbled tables T g and sends them to Alice. 2. As Alice computes the necessary values of each circuit input wire i, Bob and Alice perform an oblivious transfer, with Bob playing the role of sender. Alice learns the uniformly random string that represents the true value, 0 or 1 respectively, for the wire she is interested in. 3. At the end of the protocol (determined by the number of gates in the circuit), Bob applies π -1 to the final output string to learn the value of the computed function.

C OVERT C OMPUTATION : S TEP 1 Finally, we define a new protocol COVERT-YAO that is Yao’s Protocol with the modification that all messages sent through oblivious transfers or elsewhere through Yao’s protocol are steganographically encoded over the uniform channel by being run through a stegosystem prior to being transmitted. Theorem. The COVERT-YAO protocol covertly realizes any functionality f for the uniform channel, U.

C OVERT C OMPUTATION : S TEP 2 Now we need to develop a transformation algorithm that, given as input a covert computation protocol for the uniform channel U, outputs a covert computation protocol for an arbitrary channel B. The first step is to recall the details of our previous stegosystem, and reword its description in terms of hash functions.

C OVERT C OMPUTATION : S TEP 2 Let denote a pair-wise independent family of hash functions H: D {0,1} c. Let denote an arbitrary distribution with support D. Let m be the message length, let c be the encryption of hiddentext messages by an appropriate error-correcting code, and let k be an iteration bound. Then we can reformulate S1 as follows:

C OVERT C OMPUTATION : S TEP 2

Lemma. Let H. Then we have: That is, the statistical distance between the channel and the output of Encode is negligible. Or in other words, the two distributions are statistically indistinguishable.

C OVERT C OMPUTATION : S TEP 2 Therefore, we can covertly transmit over B by applying Encode at the end of any message-generating process to covert the distribution of bits sent to be statistically indistinguishable from other messages in B. And so we can define the protocol as:

C OVERT C OMPUTATION : S TEP 2

And now, the big finish! Theorem. If ∏ covertly realizes the functionality f for the uniform channel, then ∑ ∏ covertly realizes f for the bidirectional channel B. Corollary. COVERT-YAO is a universal, two-party covert computation protocol.

Questions?