Practical Cryptography in High Dimensional Tori Marten van Dijk 1, Robert Granger 2, Dan Page 2, Karl Rubin 3, Alice Silverberg 3, Martijn Stam 2, David.

Slides:



Advertisements
Similar presentations
Asymptotically Optimal Communication for Torus- Based Cryptography David Woodruff MIT Joint work with Marten van Dijk Philips/MIT.
Advertisements

1+eps-Approximate Sparse Recovery Eric Price MIT David Woodruff IBM Almaden.
By Claudia Fiorini, Enrico Martinelli, Fabio Massacci
Lecture 3.3: Public Key Cryptography III CS 436/636/736 Spring 2012 Nitesh Saxena.
Scott CH Huang COM5336 Cryptography Lecture 14 XTR Cryptosystem Scott CH Huang COM 5336 Cryptography Lecture 10.
The XTR public key system (extended version of Crypto 2000 presentation) Arjen K. Lenstra Citibank, New York Technical University Eindhoven Eric R. Verheul.
7. Asymmetric encryption-
CNS2010handout 8 :: introduction to number theory1 computer and network security matt barrie.
Elliptic Curve Cryptography (ECC) Mustafa Demirhan Bhaskar Anepu Ajit Kunjal.
HW6 due tomorrow Teams T will get to pick their presentation day in the order Teams T will get to pick their presentation day in the orderQuestions? Review.
Remote Timing Attacks -Rashmi Kukanur. Agenda  Timing Attacks  Case Study : –David Brumley –Dan Boneh  Defenses.
Windows Core Security1© 2006 Microsoft Corp Cryptography: Helping Number Theorists Bring Home the Bacon Since 1977 Dan Shumow SDE Windows Core Security.
1 Cryptosystems Based on Discrete Logarithms. 2 Outline [1] Discrete Logarithm Problem [2] Algorithms for Discrete Logarithm –A trivial algorithm –Shanks’
CS470, A.SelcukElGamal Cryptosystem1 ElGamal Cryptosystem and variants CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Hidden pairings and trapdoor DDH groups Alexander W. Dent Joint work with Steven D. Galbraith.
Dr. Lo’ai Tawalbeh Fall 2005 Chapter 10 – Key Management; Other Public Key Cryptosystems Dr. Lo’ai Tawalbeh Computer Engineering Department Jordan University.
Public Encryption: RSA
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
Introduction to Computer and Network Security Iliano Cervesato 26 August 2008 – Modern Cryptography.
1 Section 2.3 Complexity of Algorithms. 2 Computational Complexity Measure of algorithm efficiency in terms of: –Time: how long it takes computer to solve.
1 NTRU: A Ring-Based Public Key Cryptosystem Jeffrey Hoffstein, Jill Pipher, Joseph H. Silverman LNCS 1423, 1998.
Dan Boneh Basic key exchange The Diffie-Hellman protocol Online Cryptography Course Dan Boneh.
CSCI 172/283 Fall 2010 Public Key Cryptography. New paradigm introduced by Diffie and Hellman The mailbox analogy: Bob has a locked mailbox Alice can.
“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.
Lecture 6: Public Key Cryptography
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.
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
ElGamal Public Key Cryptography CS 303 Alg. Number Theory & Cryptography Jeremy Johnson Taher ElGamal, "A Public-Key Cryptosystem and a Signature Scheme.
The RSA Algorithm Rocky K. C. Chang, March
Lecture 7 Discrete Logarithms
RSA and its Mathematics Behind
HW6 due tomorrow Teams T will get to pick their presentation day in the order Teams T will get to pick their presentation day in the order Teams mostly.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
Optimistic Mixing for Exit-Polls Philippe Golle, Stanford Sheng Zhong, Yale Dan Boneh, Stanford Markus Jakobsson, RSA Labs Ari Juels, RSA Labs.
1 Lecture 9 Public Key Cryptography Public Key Algorithms CIS CIS 5357 Network Security.
Midterm Review Cryptography & Network Security
Lecture 3.4: Public Key Cryptography IV CS 436/636/736 Spring 2013 Nitesh Saxena.
Cryptography and Network Security Chapter 10 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
CS461/ECE422 Spring 2012 Nikita Borisov — UIUC1.  Text Chapters 2 and 21  Handbook of Applied Cryptography, Chapter 8 
Understanding Cryptography by Christof Paar and Jan Pelzl These slides were prepared by Christof Paar and Jan Pelzl Chapter 8 –
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
RSA and its Mathematics Behind July Topics  Modular Arithmetic  Greatest Common Divisor  Euler’s Identity  RSA algorithm  Security in RSA.
PUBLIC KEY CRYPTOGRAPHY ALGORITHM Concept and Example 1IT352 | Network Security |Najwa AlGhamdi.
Scott CH Huang COM 5336 Cryptography Lecture 6 Public Key Cryptography & RSA Scott CH Huang COM 5336 Cryptography Lecture 6.
Understanding Cryptography by Christof Paar and Jan Pelzl These slides were prepared by Tim Güneysu, Christof Paar and Jan Pelzl.
Nawaf M Albadia
Chapter 9 Public Key Cryptography and RSA. Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender.
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
China Summer School on Lattices and Cryptography Craig Gentry and Shai Halevi June 4, 2014 Homomorphic Encryption over Polynomial Rings.
Chapter 4: Public Key Cryptography
UNIVERSITY OF BIELSKO- BIALA AKADEMIA TECHNICZNO-HUMANISTYCZNA Faculty of Mechanical Engineering and Computer Science.
Cryptography issues – elliptic curves Presented by Tom Nykiel.
11 RSA Variants.  Scheme ◦ Select s.t. p and q = 3 mod 4 ◦ n=pq, public key =n, private key =p,q ◦ y= e k (x)=x (x+b) mod n ◦ x=d k (y)=  y mod n.
Almost Entirely Correct Mixing With Applications to Voting Philippe Golle Dan Boneh Stanford University.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
1 Diffie-Hellman (Key Exchange) Protocol Rocky K. C. Chang 9 February 2007.
COM 5336 Lecture 8 Digital Signatures
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
RSA Pubic Key Encryption CSCI 5857: Encoding and Encryption.
1 Diffie-Hellman (Key Exchange) Protocol Rocky K. C. Chang 9 February 2007.
Lecture 6. RSA Use in Encryption to encrypt a message M the sender: – obtains public key of recipient PU={e,n} – computes: C = M e mod n, where 0≤M
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Key Exchange in Systems VPN usually has two phases –Handshake protocol: key exchange between parties sets symmetric keys –Traffic protocol: communication.
Outline Primitive Element Theorem Diffie Hellman Key Distribution
D. Cheung – IQC/UWaterloo, Canada D. K. Pradhan – UBristol, UK
RSA and El Gamal Cryptosystems
Homework 3 As announced: not due today 
Presentation transcript:

Practical Cryptography in High Dimensional Tori Marten van Dijk 1, Robert Granger 2, Dan Page 2, Karl Rubin 3, Alice Silverberg 3, Martijn Stam 2, David Woodruff 1 MIT CSAIL, University of Bristol, UC Irvine

Outline 1.Application of Torus Cryptography 2.Goals of Torus Cryptography -Security -Efficiency -Space – Compression -Time – Exponentiations 3.Our Contribution 4.Implementation 5.Conclusion

Sample Application gbgb gaga b 2 Z q a 2 Z q Target: Secret key exchange over insecure channel Setting: Cyclic group G q µ F * p n of order q Key g ab

Outline 1.Application of Torus Cryptography 2.Goals of Torus Cryptography -Security -Efficiency -Space – Compression -Time – Exponentiations 3.Our Contribution 4.Implementation 5.Conclusion

Security Setting: G q µ F * p n How to choose G q ? Security: Can’t compute g ab from g a, g b (CDH) 1.Pollard  : log 2 q > Index Calculus: n log 2 p > Pohlig-Hellman: G q not in proper subfield

Security: Pohlig-Hellman Setting: G q µ F * p n How to choose G q ? Pohlig-Hellman: G q not in proper subfield F * p n is cyclic of cardinality p n – 1 =  d | n  d (p),  d (p) is the d-th cyclotomic polynomial.  1 (p) = p-1,  2 (p) = p+1,  3 (p) = p 2 + p + 1,  6 (p) = p 2 – p + 1

Security: Pohlig-Hellman Setting: G q µ F * p n How to choose G q ? Pohlig-Hellman: G q not in proper subfield Example: |F * p 6 | = p 6 -1 = (p-1)(p+1)(p 2 +p+1)(p 2 -p+1) =  1 (p)  2 (p) ¢  3 (p) ¢  6 (p)  d (p) ¼ p  (d), where  (d) is Euler totient function

Security: Pohlig-Hellman Setting: G q µ F * p n How to choose G q ? Pohlig-Hellman: G q not in proper subfield [Lenstra]: If q |  n (p), q > n, then G q is not in a proper subfield. Order  n (p) subgroup is torus T n (F p ) Other tori: T 1 = {g 2 F * p n : g p-1 = 1} = F * p, T 2 = {g 2 F * p n : g p+1 = 1}, T d = {g 2 F * p n : g  d (p) = 1} for d | n Choose G q µ T n (F p )

Outline 1.Application of Torus Cryptography 2.Goals of Torus Cryptography -Security -Efficiency -Space – Compression -Time – Exponentiations 3.Our Contribution 4.Implementation 5.Conclusion

Efficiency: Communication - Represent G q with n log 2 p bits - But G q is much smaller! Can’t we do better? - We don’t know how to efficiently achieve log 2 q bits - We can achieve |T n (F p )| ¼  (n) log 2 p bits for some n LUC[LS], XTR [LV], CEILIDH [RS] Setting: G q µ T n (F p ) µ F * p n

Efficiency: Communication - Affine space A n (F p ) = n-tuples (g 1, …, g n ) 2 (F p ) n - LUC: T 2 (F p ) $ A 1 (F p ) - XTR: T 6 (F p ) $ A 2 (F p ) -CEILIDH: T n (F p ) $ A  (n) (F p ) if and only if n is a product of at most two prime powers - If n the product of at most two prime powers,  (n)/n >= 1/3 and this is achieved for n = 6. Setting: G q µ T n (F p ) µ F * p n

Efficiency: Communication Setting: G q µ T n (F p ) µ F * p n - Ideally want a map T n (F p ) $ A  (n) (F p ) for all n - [vdW]: 8 n, 9 m and a map T n (F p ) x A m (F p ) $ A m +  (n) (F p ) - But I thought we wanted a different type of map… nm ……

Efficiency: Communication Setting: G q µ T n (F p ) µ F * p n Wanted: T n (F p ) $ A  (n) (F p ) Got: T n (F p ) x A m (F p ) A m +  (n) (F p ) - Is this useful? Yes! - If your application has m ¢ log p extra bits E to transmit or store, can compute  (g, E)   -1

Efficiency: Computation -[vDW]: T n (F p ) x A m $ A m +  (n) -Problem 1: m may be too large for applications -Problem 2: very computationally inefficient -[vDW]: Ask, can computation be reduced?

Outline 1.Application of Torus Cryptography 2.Goals of Torus Cryptography -Security -Efficiency -Space – Compression -Time – Exponentiations 3.Our Contribution 4.Implementation 5.Conclusion

Our Contribution Reduce m in the map T n (F p ) x A m $ A m +  (n) Better for more applications More computationally efficient Give the first implementation of T 30 (F p ) and show it is practical

Our Contribution Let n = 30. Our map is inspired by the equation:  30 (p) ¢  6 (p) =  6 (p 5 ) This suggests a mapping: T 30 (F p ) x T 6 (F p ) $ T 6 (F p5 ) We can represent T 6 (F p ) and T 6 (F p5 ) using CEILIDH! Get an “almost bijection” T 30 (F p ) x A 2 (F p ) $ A 10 (F p ) Affine surplus m = 2, instead of m = 32 in [vDW]

Our Contribution T 30 (F p ) x A 2 (F p ) T 30 (F p ) x T 6 (F p ) T 6 (F p 5 ) A 2 (F p 5 ) = A 10 (F p ) CEILIDH decompressionCRT CEILIDH compression

Applications Let’s compress two elements of T 30 (F p ) in different ways: Using CEILIDH, takes 20 p-ary symbols Using [vDW], takes 48 p-ary symbols Using our map, takes = 18 p-ary symbols Obtain 10% ciphertext size reduction in ElGamal variants Our map: T 30 (F p ) x A 2 (F p ) $ A 10 (F p )

Our Contribution Also have T 210 x A 22 ! A 232 For n = 210, [vDW] had m = 264 Simplicity of map greatly improves computation For n = 30, Forward direction =1 multiplication + CEILIDH maps Reverse direction = 1 exponentiation + CEILIDH maps

Outline 1.Application of Torus Cryptography 2.Goals of Torus Cryptography -Security -Efficiency -Space – Compression -Time – Exponentiations 3.Our Contribution 4.Our Implementation 5.Conclusion

Parameter Selection We only consider T 30 (F p ) µ F * p 30 Using a Macintosh G5 dual 2.5GHz computer, we got: log 2 |G q |log 2 pSecurityHow long did it take us? bit RSA~ 1 per minute bit RSA~ 1 per hour

Timings T 6 (F p L )T 30 (F p S ) Compress.13 ms Decompress.19 ms4.9 ms T 6 (F p L )T 30 (F p S ) Binary5.21 ms9.12 ms Sliding Window4.39 ms7.53 ms p S -ary3.11 ms JSF single2.79 ms4.57 ms Timings based on log 2 (p L ) ¼ 5 log 2 (p S ), and G q with log 2 q ¼ GHz Pentium 4 with 1GB of memory

Conclusion T 30 (F p ) crypto is practical! Compression outperforms existing schemes for as few as 2 elements The method is only slightly slower (2-3) than T 6 (F p 5 ) and XTR