Oblivious Transfer.

Slides:



Advertisements
Similar presentations
BY : Darshana Chaturvedi.  INTRODUCTION  RSA ALGORITHM  EXAMPLES  RSA IS EFFECTIVE  FERMAT’S LITTLE THEOREM  EUCLID’S ALGORITHM  REFERENCES.
Advertisements

The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
Public Encryption: RSA
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
WS Algorithmentheorie 03 – Randomized Algorithms (Public Key Cryptosystems) Prof. Dr. Th. Ottmann.
Chapter 3 Encryption Algorithms & Systems (Part C)
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
Public Key Algorithms 4/17/2017 M. Chatterjee.
“RSA”. RSA  by Rivest, Shamir & Adleman of MIT in 1977  best known & widely used public-key scheme  RSA is a block cipher, plain & cipher text are.
Codes, Ciphers, and Cryptography-RSA Encryption
Introduction to Public Key Cryptography
Public Key Model 8. Cryptography part 2.
Public Key Encryption and the RSA Public Key Algorithm CSCI 5857: Encoding and Encryption.
The RSA Algorithm Based on the idea that factorization of integers into their prime factors is hard. ★ n=p . q, where p and q are distinct primes Proposed.
 Introduction  Requirements for RSA  Ingredients for RSA  RSA Algorithm  RSA Example  Problems on RSA.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
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.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
1 Lect. 13 : Public Key Encryption RSA ElGamal. 2 Shamir Rivest Adleman RSA Public Key Systems  RSA is the first public key cryptosystem  Proposed in.
Improving Encryption Algorithms Betty Huang Computer Systems Lab
Introduction to Algorithms Second Edition by Cormen, Leiserson, Rivest & Stein Chapter 31.
By Yernar.  Background  Key generation  Encryption  Decryption  Preset Bits  Example.
Darci Miyashiro Math 480 April 29, 2013
1 Public-Key Cryptography and Message Authentication.
Algebra of RSA codes Yinduo Ma Tong Li. Ron Rivest, Adi Shamir and Leonard Adleman.
The RSA Algorithm. Content Review of Encryption RSA An RSA example.
Network Security Lecture 18 Presented by: Dr. Munam Ali Shah.
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
CS 4803 Fall 04 Public Key Algorithms. Modular Arithmetic n Public key algorithms are based on modular arithmetic. n Modular addition. n Modular multiplication.
RSA Pubic Key Encryption CSCI 5857: Encoding and Encryption.
Intro to Cryptography ICS 6D Sandy Irani. Cryptography Intro Alice wants to send a message to Bob so that even if Eve can see the transmitted information,
Cryptographic methods. Outline  Preliminary Assumptions Public-key encryption  Oblivious Transfer (OT)  Random share based methods  Homomorphic Encryption.
Lecture 5 Asymmetric Cryptography. Private-Key Cryptography Traditional private/secret/single key cryptography uses one key Shared by both sender and.
Revision. Cryptography depends on some properties of prime numbers. One of these is that it is rather easy to generate large prime numbers, but much harder.
Encryption Take 2: Practical details
Public Key Cryptography
Public Key Encryption.
Asymmetric-Key Cryptography
1. Public Key Encryption (A Simple Case)
Public-Key Cryptography RSA Rivest-Shamir-Adelmann Public-Key System
Advanced Algorithms Analysis and Design
RSA Public Key Encryption Algorithm
RSA Preliminaries.
Public Key Encryption and Digital Signatures
RSA and El Gamal Cryptosystems
Chapters 14,15 Security.
Taehyung Kim HPC Lab. POSTECH
The RSA Algorithm JooSeok Song Tue.
Course Business I am traveling April 25-May 3rd
Chap 6: Security and Protection
Private-Key Cryptography
Real-world Security of Public Key Crypto
Number Theory and Euclidean Algorithm
ICS 353: Design and Analysis of Algorithms
Rivest, Shamir and Adleman
Analysis of the RSA Encryption Algorithm
CSE 321 Discrete Structures
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Digital Signatures…!.
Chapters 14,15 Security.
Where Complexity Finally Comes In Handy…
Chapter -5 PUBLIC-KEY CRYPTOGRAPHY AND RSA
Chapter 3 - Public-Key Cryptography & Authentication
Cryptology Design Fundamentals
PUBLIC-KEY CRYPTOGRAPHY AND RSA – Chapter 9
Where Complexity Finally Comes In Handy…
Introduction to Algorithms Second Edition by
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
The RSA Public-Key Encryption Algorithm
Where Complexity Finally Comes In Handy…
Presentation transcript:

Oblivious Transfer

Outline Preliminary Requirements protocols

Assumptions Semi-honest party assumption Malicious party assumption Parties honestly follow the security protocol Parties might be curious about the transferred data Malicious party assumption The malicious party can do anything Transfer false data Turn down the protocol Collusion Often, we can handle semi-honest + integrity verification

Public-key encryption Let (G,E,D) be a public-key encryption scheme G is a key-generation algorithm (pk,sk)  G Pk: public key Sk: secret key Terms Plaintext: the original text, denoted as m Ciphertext: the encrypted text, denoted as c Encryption: c = Epk(m) Decryption: m = Dsk(c) Concept of one-way function: knowing c, pk, and the function Epk, it is still computationally intractable to find m. *Check literature for different implementations

Example: the RSA algorithm Based on the idea that factorization of integers into their prime factors is hard.​ ★ n=p.q, where p and q are distinct primes​ Proposed by Rivest, Shamir, and Adleman​ in 1977 and a paper was published in The Communications of ACM in 1978​

RSA Key generation Alice encrypts M as C≡Me (mod n)​ Bob chooses two primes p,q and compute n=pq​ Bob chooses e with gcd(e,(p-1)(q-1))=​ gcd(e, ψ(n))=1​ ψ(n) Euler's totient function counting the positive integers up to a given integer n that are relatively prime to n Bob solves de≡1 (mod ψ(n))​ Bob makes (n, e) public and (p,q,d) secret​ Alice encrypts M as C≡Me (mod n)​ Bob decrypts by computing M≡Cd (mod n)

Correctness Euler’s theorem RSA correctness proof: If a and n are co-prime, i.e., gcd(a, n)=1, Then: aψ(n) = 1 mod n RSA correctness proof: Cd ≡ (Me)d ≡ Med ≡ M1+kψ(n)  ≡M  (mod n)

security Finding d -> finding ψ(n) -> finding p and q from n the fastest factorization algorithm for b-bit number

1-out-of-2 Oblivious Transfer (OT) Setting Sender has two messages m0 and m1 Receiver has a single bit {0,1} and wants to learn m , but does not want the sender know which bit is selected. Outputs Sender knows nothing about  Receiver obtain m and learns nothing of m1-

A simple protocol Assume that a public-key can be sampled without knowledge of its secret key (knowing pk only): The protocol is simplified with this assumption Knowing pk but not knowing sk – tricky to do that Both parties are honest

A simple Protocol for Oblivious Transfer Receiver (with input ): Receiver chooses one key-pair (pk,sk) and one public-key pk’ (oblivious key generation), but does not know sk’ (pk’ cannot be released by sender; sender should not know which is the pk’) Receiver sets pk = pk, pk1- = pk’ Receiver sends pk0,pk1 to sender Sender (with input m0,m1): Sends c0=Epk0(m0), c1=Epk1(m1) Receiver: Decrypts c using sk and obtains m. Note: receiver can decrypt for pk but not for pk1-

Cost Receiver: Sender: Computation: two key generation operations; one decryption Communication: 2 PKs Sender: Computation: two encryption ops Communication: 2 ciphertext

A more practical 1 out of 2 OT Protocol m0 and m1  Alice’s messages Generate a RSA key-pair: Public Key or PK (N, e) Secret Key or SK (d) 2. Generate random messages: x0 and x1 3. Decrypt the two possible ks as Alice does not know b hence xb used in computing v by Bob: k0 = (v – x0)^d mod N k1 = (v – x1)^d mod N 4. Hide messages m0 and m1 as m0’=m0+k0 m1’=m1+k1 b 𝜖 {0,1}  Bob’s input bit Generate a random message: k Encrypt k as: E(k) = ke 3. Compute: v = xb + ke mod N 4. Retrieve: mb = mb’ - k PK, x0, and x1 Alice (sender) v Bob (receiver) m0’ and m1’

security Assume Bob wants to know m0 security: Bob cannot know k1 Needs to know d Alice cannot distinguish k0, k1

Costs Bob Alice Computation: 1 rand msg + 1 encryption + 2 mod add Communication: v Alice Computation: 1 key generation, 2 rand msgs + 2 decryption + 2 mod add Communication: pk + 2 rand msgs + 2 decrypted msgs

Reducing costs There are more efficient 1-out-of-2 protocols developed recently

Generalization Similarly, we can define 1-out-of-k oblivious transfer Protocol remains the same: Choose k-1 public keys for which the secret key is unknown Choose 1 public-key and secret-key pair