Efficient Leak Resistant Modular Exponentiation in RNS

Size: px
Start display at page:

Download "Efficient Leak Resistant Modular Exponentiation in RNS"

Transcription

1 Efficient Leak Resistant Modular Exponentiation in RNS Andrea Lesavourey (1), Christophe Negre (1) and Thomas Plantard (2) (1) DALI (UPVD) and LIRMM (Univ. of Montpellier, CNRS), Perpignan, France (2) CCISR, SCIT, University of Wollongong, Wollongong, Australia 24-th Symposium on Computer Arithmetic, London, July 26, / 19

2 Outline 1 Cryptography RSA cryptosystem Power analysis Montgomery multiplication in RNS 2 Randomized modular exponentiation in RNS Randomized Montgomery multiplication Proposed approach Level of randomization 3 Conclusion 2 / 19

3 Outline 1 Cryptography RSA cryptosystem Power analysis Montgomery multiplication in RNS 2 Randomized modular exponentiation in RNS Randomized Montgomery multiplication Proposed approach Level of randomization 3 Conclusion 3 / 19

4 RSA encryption (Rivest, Shamir and Adleman) Bob chooses p and q two large prime numbers and computes N = pq. He generates E and D two integers such that ED = 1 (mod (p 1)(q 1)). Public Key: N, D. Private Key: E, p, q. Alice encrypts a message m by: c = m D mod N. Bob decrypts c by doing: c E = m ED mod N = m. 4 / 19

5 An algorithm for modular exponentiation : Right-to-left Square-and-multiply Require: A modulus N, an integer X [0, N[ and an exponent E = (e l 1,..., e 0 ) 2 Ensure: R = X E (mod N) 1: R 1 2: Z X 3: for i from 0 to l 1 do 4: if e i = 1 then 5: R R Z (mod N) 6: end if 7: Z Z 2 (mod N) 8: end for 9: return R X E = X l 1 e i 2 i i=0 X E = X e l 12 l 1 X e 12 1 X e / 19

6 Simple power analysis E = (e l,..., e 0 ) 2 and X [0, N[ Square-and-multiply R 1 Z X for i = 0 to l 1 do if e i = 1 then R R Z mod N endif Z Z 2 mod N endfor return(r) 6 / 19

7 Simple power analysis E = (e l,..., e 0 ) 2 and X [0, N[ Square-and-multiply R 1 Z X for i = 0 to l 1 do if e i = 1 then R R Z mod N endif Z Z 2 mod N endfor return(r) Square-and-multiply-always R 0 1 R 1 1 Z X for i = 0 to l 1 do if e i = 0 then R 0 R 0 Z mod N else R 1 R 1 Z mod N endif endfor Z Z 2 mod N return(r 1 ) Montgomery-ladder R 1 R X for i = l to 1 do if k i = 1 then R R R mod N R R 2 mod N else R R R mod N R R 2 endif endfor return(r) 6 / 19

8 Differential power analysis m loop 1 e 1 = 1 loop 2 e 2 = 0 loop 3 e 3 = 1 loop 4 e 4 = 0 loop 5 e 5 =?? 7 / 19

9 Differential power analysis m loop 1 e 1 = 1 r 1 loop 2 e 2 = 0 r 2 loop 3 e 3 = 1 r 3 loop 4 e 4 = 0 r 4 loop 5 e 5 =?? 0 r 5 1 r 5 7 / 19

10 Differential power analysis m trace 1 trace 2 trace 3... trace L loop 1 e 1 = 1 r 1 loop 2 e 2 = 0 r 2 loop 3 e 3 = 1 r 3 loop 4 e 4 = 0 r 4 loop 5 e 5 =?? 0 r 5 1 r 5 7 / 19

11 Differential power analysis m loop 1 e 1 = 1 r 1 loop 2 e 2 = 0 r 2 loop 3 e 3 = 1 r 3 loop 4 e 4 = 0 r 4 loop 5 e 5 =?? 0 r 5 1 r 5 trace 1 Differentials: trace 2 trace 3.. correct guess wrong guess. trace L 7 / 19

12 Differential power analysis m loop 1 e 1 = 1 r 1 loop 2 e 2 = 0 r 2 loop 3 e 3 = 1 r 3 loop 4 e 4 = 0 r 4 loop 5 e 5 =?? 0 r 5 1 r 5 trace 1 Differentials: trace 2 trace 3.. correct guess wrong guess. trace L Counter-measure: Randomization of the exponent and data. 7 / 19

13 Montgomery multiplication Basic modular multiplication. For X, Y [0, N[ 1 Product. Z X Y 2 Reduction. Q Z/N and R Z Q N 8 / 19

14 Montgomery multiplication Basic modular multiplication. For X, Y [0, N[ 1 Product. Z X Y 2 Reduction. Q Z/N and R Z Q N Montgomery Multiplication Require: X, Y [0, N[ and A = 2 n > N Ensure: R = X Y A 1 (mod N) 1: Z X Y 2: Q N 1 Z (mod A) 3: R (Z Q N)/A X Y Z 1 Z 0

15 Montgomery multiplication Basic modular multiplication. For X, Y [0, N[ 1 Product. Z X Y 2 Reduction. Q Z/N and R Z Q N Montgomery Multiplication Require: X, Y [0, N[ and A = 2 n > N Ensure: R = X Y A 1 (mod N) 1: Z X Y 2: Q N 1 Z (mod A) 3: R (Z Q N)/A X Y Z 1 Z 0 Z 0 = Q N 8 / 19

16 Montgomery multiplication Basic modular multiplication. For X, Y [0, N[ 1 Product. Z X Y 2 Reduction. Q Z/N and R Z Q N Montgomery Multiplication Require: X, Y [0, N[ and A = 2 n > N Ensure: R = X Y A 1 (mod N) 1: Z X Y 2: Q N 1 Z (mod A) 3: R (Z Q N)/A X Y Z 1 Z 0 Z 0 R 0 2 n R = Q N 8 / 19

17 Montgomery multiplication Basic modular multiplication. For X, Y [0, N[ 1 Product. Z X Y 2 Reduction. Q Z/N and R Z Q N Montgomery Multiplication Require: X, Y [0, N[ and A = 2 n > N Ensure: R = X Y A 1 (mod N) 1: Z X Y 2: Q N 1 Z (mod A) 3: R (Z Q N)/A Montgomery representation. 1 X = XA mod N provides X Y Z 1 Z 0 Z 0 R 0 2 n R = Q N 2 MontMul( X, Ỹ ) = (XA) (YA) A 1 mod N = XYA mod N 8 / 19

18 Montgomery multiplication in residue number system Let A = {a 1,..., a t } be a set t co-prime integers. 9 / 19

19 Montgomery multiplication in residue number system Let A = {a 1,..., a t } be a set t co-prime integers. An integer X such that 0 X < A = t i=1 a i is represented by [X ] A = (x 1 = X mod a 1,..., x t = X mod a t ). 9 / 19

20 Montgomery multiplication in residue number system Let A = {a 1,..., a t } be a set t co-prime integers. An integer X such that 0 X < A = t i=1 a i is represented by [X ] A = (x 1 = X mod a 1,..., x t = X mod a t ). The Chinese remainder theorem tell us that for op {+, } [X ] A op [Y ] A = ([x 1 op y 1 ] a1,..., [x t op y t ] at ) X op Y mod A 9 / 19

21 Montgomery multiplication in residue number system Let A = {a 1,..., a t } be a set t co-prime integers. An integer X such that 0 X < A = t i=1 a i is represented by [X ] A = (x 1 = X mod a 1,..., x t = X mod a t ). The Chinese remainder theorem tell us that for op {+, } [X ] A op [Y ] A = ([x 1 op y 1 ] a1,..., [x t op y t ] at ) X op Y mod A Montgomery Multiplication in RNS Require: X, Y in A B Ensure: XYA 1 mod N in A B 1: [Q] A [XYN 1 ] A 3: [Z] B [(XY QN)A 1 ] B 5: return (Z A B ) 9 / 19

22 Montgomery multiplication in residue number system Let A = {a 1,..., a t } be a set t co-prime integers. An integer X such that 0 X < A = t i=1 a i is represented by [X ] A = (x 1 = X mod a 1,..., x t = X mod a t ). The Chinese remainder theorem tell us that for op {+, } [X ] A op [Y ] A = ([x 1 op y 1 ] a1,..., [x t op y t ] at ) X op Y mod A Montgomery Multiplication in RNS Require: X, Y in A B Ensure: XYA 1 mod N in A B 1: [Q] A [XYN 1 ] A 2: [Q] B BE A B ([Q] A ) 3: [Z] B [(XY QN)A 1 ] B 4: [Z] A BE B A ([Z] B ) 5: return (Z A B ) 9 / 19

23 Outline 1 Cryptography RSA cryptosystem Power analysis Montgomery multiplication in RNS 2 Randomized modular exponentiation in RNS Randomized Montgomery multiplication Proposed approach Level of randomization 3 Conclusion 10 / 19

24 Randomization in RNS (LRA CHES 2004) We have X old = [XA old ] Aold B old we permute the basis elements A old B old A new B new A B a 1 b 1 a 2 a t 1 a t b t b t 1 this leads to a new representation of X X new = [XA new ] Anew B new Cost Two Montgomery multiplications : XA old mod N XA old A new mod N XA new mod N. 11 / 19

25 Randomized square-and-multiply-always Input: N, X [0, N[, E = (e l 1,..., e 0 ) 2 and M = {m 1,..., m 2t }. Output: X E mod N Square-and-mult-always A, B random split M Z [ X ] A B, R 0 [ 1] A B, R 1 [ 1] A B for i from 0 to l 1 do R ei MM RNS( R ei, Z, A, B) Z MM RNS( Z, Z, A, B) end for return R 1 12 / 19

26 Randomized square-and-multiply-always Input: N, X [0, N[, E = (e l 1,..., e 0 ) 2 and M = {m 1,..., m 2t }. Output: X E mod N Randomized Square-and-mult-always A, B random split M Z [ X ] A B, R 0 [ 1] A B, R 1 [ 1] A B for i from 0 to l 1 do R ei MM RNS( R ei, Z, A, B) Z MM RNS( Z, Z, A, B) Randomise(A old, B old, A, B) Z Update( Z, A old, B old, A, B) R 0 Update( R 0, A old, B old, A, B) R 1 Update( R 1, A old, B old, A, B) end for return R 1 12 / 19

27 Randomized square-and-multiply-always Input: N, X [0, N[, E = (e l 1,..., e 0 ) 2 and M = {m 1,..., m 2t }. Output: X E mod N Randomized Square-and-mult-always A, B random split M Z [ X ] A B, R 0 [ 1] A B, R 1 [ 1] A B for i from 0 to l 1 do R ei MM RNS( R ei, Z, A, B) Z MM RNS( Z, Z, A, B) Randomise(A old, B old, A, B) Z Update( Z, A old, B old, A, B) R 0 Update( R 0, A old, B old, A, B) R 1 Update( R 1, A old, B old, A, B) end for return R 1 12 / 19

28 Randomized square-and-multiply-always Input: N, X [0, N[, E = (e l 1,..., e 0 ) 2 and M = {m 1,..., m 2t }. Output: X E mod N Randomized Square-and-mult-always A, B random split M Z [ X ] A B, R 0 [ 1] A B, R 1 [ 1] A B for i from 0 to l 1 do R ei MM RNS( R ei, Z, A, B) Z MM RNS( Z, Z, A, B) Randomise(A old, B old, A, B) Z Update( Z, A old, B old, A, B) R 0 Update( R 0, A old, B old, A, B) R 1 Update( R 1, A old, B old, A, B) end for return R 1 Proposed A, B random split M Z [ X ] A B, R 0 [ 1] A B, R 1 [ 1] A B for i from 0 to l 1 do A e i, B e i random split M R ei MM RNS( R ei, Z, A e i, B e i ) Z MM RNS( Z, Z, A, B) Randomise(A old, B old, A, B) Z Update( Z, A old, B old, A, B) end for return R 1 12 / 19

29 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } 13 / 19

30 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } Initialization: A = {m 1, m 2 }, B = {m 3, m 4 } leads to R 1 = m 1 m 2 mod N Z = Xm 1 m 2 mod N 13 / 19

31 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } Initialization: A = {m 1, m 2 }, B = {m 3, m 4 } leads to R 1 = m 1 m 2 mod N Z = Xm 1 m 2 mod N Loop 1: A 1 = {m 2, m 4 }, B 1 = {m 1, m 3 } we get R 1 = (m 1 m 2 ) (Xm 1 m 2 ) (m 1 }{{} Z 2 m 1 4 }{{} ) Mont. factor = Xm 2 1m 2 m / 19

32 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } Initialization: A = {m 1, m 2 }, B = {m 3, m 4 } leads to R 1 = m 1 m 2 mod N Z = Xm 1 m 2 mod N Loop 1: A 1 = {m 2, m 4 }, B 1 = {m 1, m 3 } we get R 1 = (m 1 m 2 ) (Xm 1 m 2 ) (m 1 }{{} Z A = {m 1, m 3 }, B = {m 2, m 4 } leads to 2 m 1 4 }{{} ) Mont. factor Z = X 2 m 1 m 3 = Xm 2 1m 2 m / 19

33 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } Initialization: A = {m 1, m 2 }, B = {m 3, m 4 } leads to R 1 = m 1 m 2 mod N Z = Xm 1 m 2 mod N Loop 1: A 1 = {m 2, m 4 }, B 1 = {m 1, m 3 } we get R 1 = (m 1 m 2 ) (Xm 1 m 2 ) (m 1 }{{} Z A = {m 1, m 3 }, B = {m 2, m 4 } leads to 2 m 1 4 }{{} ) Mont. factor Z = X 2 m 1 m 3 = Xm 2 1m 2 m 1 4 Loop 2: A 1 = {m 1, m 4 }, B 1 = {m 2, m 3 } we get R 1 = Xm1m 2 2 m4 1 (X 2 m 1 m 3 ) (m1 1 m 1 4 ) = X 3 m1m 2 2 m 3 m / 19

34 Example For E = 7 = (111) 2 and M = {m 1, m 2, m 3, m 4 } Initialization: A = {m 1, m 2 }, B = {m 3, m 4 } leads to R 1 = m 1 m 2 mod N Z = Xm 1 m 2 mod N Loop 1: A 1 = {m 2, m 4 }, B 1 = {m 1, m 3 } we get R 1 = (m 1 m 2 ) (Xm 1 m 2 ) (m 1 }{{} Z A = {m 1, m 3 }, B = {m 2, m 4 } leads to 2 m 1 4 }{{} ) Mont. factor Z = X 2 m 1 m 3 = Xm 2 1m 2 m 1 4 Loop 2: A 1 = {m 1, m 4 }, B 1 = {m 2, m 3 } we get R 1 = Xm1m 2 2 m4 1 (X 2 m 1 m 3 ) (m1 1 m 1 4 ) = X 3 m1m 2 2 m 3 m4 2 Etc. 13 / 19

35 Random evolution of the mask After i loop iterations we have and each γ (i) j γ (i+1) j = γ (i) j R (i) i 1 1 = X evolves randomly as + δ (i) j γ (i) j with δ (i) j 2t j=0 e j 2 j j=0 m γ(i) j j { 1, 0, 1} and mod N P(δ (i) j = 1) = 1/8, P(δ (i) j = 1) = 1/8, P(δ (i) j = 0) = 3/4. δ (1) j = 1 δ (2) j = 0 δ (3) j = 1 δ (4) j = 0 δ (5) j = i (loop iterations) 14 / 19

36 Removing the final mask Problem: at the end we have to remove the final mask 2t 2t X = X E m γ(l) j j mod N. j=1 mγ(l) j j=1 j from Strategy: we force γ (l) j to be equal 0 as follows During the first half of the iterations each γ (i) j evolves freely. During the second half we constrain each γ (i) j to decrease toward 0. γ (i) j l i (loop iterations) 15 / 19

37 Level of randomization The probabilities of the mask exponents satisfy P(γ (i) j = d) = d+ (i d)/2 ( i i k k=d k)( P(Γ (i) = Γ) t j=1 P(γ(i) j ) i 2k+d ( 1 2k d ( 3 k d) 8) 4 = γ j ) t j=1 P(γ(i) j = 0) 16 / 19

38 Level of randomization The probabilities of the mask exponents satisfy P(γ (i) j = d) = d+ (i d)/2 ( i i k k=d k)( P(Γ (i) = Γ) t j=1 P(γ(i) j ) i 2k+d ( 1 2k d ( 3 k d) 8) 4 = γ j ) t j=1 P(γ(i) j = 0) Comparison: for a 2048-bit RSA modulus and t = 32: CHES 04: Montgomery-ladder, 4MM RNS per randomization, all masks are controled. Proposed: right-left square-and-multiply-always, 2MM RNS per randomization the masks for R 0 and R 1 are not controled. Approach loop 1 loop 5 loop 10 loop 50 loop 100 CHES Proposed / 19

39 Outline 1 Cryptography RSA cryptosystem Power analysis Montgomery multiplication in RNS 2 Randomized modular exponentiation in RNS Randomized Montgomery multiplication Proposed approach Level of randomization 3 Conclusion 17 / 19

40 Conclusion Secure embedded implementation of RSA: Randomized modular exponentiation But leak resistant arithmetic (CHES 04) is costly: 4 MM RNS per randomization 18 / 19

41 Conclusion Secure embedded implementation of RSA: Randomized modular exponentiation But leak resistant arithmetic (CHES 04) is costly: 4 MM RNS per randomization We proposed: To apply LRA to right-to-left exponentiation. Avoid some correction of Montgomery Factor. This decreases the computational cost: 2 MM RNS per randomization. Increases the level of randomization after a small number of loop. 18 / 19

42 Conclusion Secure embedded implementation of RSA: Randomized modular exponentiation But leak resistant arithmetic (CHES 04) is costly: 4 MM RNS per randomization We proposed: To apply LRA to right-to-left exponentiation. Avoid some correction of Montgomery Factor. This decreases the computational cost: 2 MM RNS per randomization. Increases the level of randomization after a small number of loop. Perspectives: A better estimation of the level of randomization. Is it a good counter-measure against horizontal power analysis? 18 / 19

43 Thank you for your attention! 19 / 19

Lazy Leak Resistant Exponentiation in RNS

Lazy Leak Resistant Exponentiation in RNS Lazy Leak Resistant Exponentiation in RNS Andrea Lesavourey, Christophe Negre, Thomas Plantard To cite this version: Andrea Lesavourey, Christophe Negre, Thomas Plantard. Lazy Leak Resistant Exponentiation

More information

Efficient randomized regular modular exponentiation using combined Montgomery and Barrett multiplications

Efficient randomized regular modular exponentiation using combined Montgomery and Barrett multiplications University of Wollongong Research Online Faculty of Engineering and Information Sciences - Papers: Part A Faculty of Engineering and Information Sciences 2016 Efficient randomized regular modular exponentiation

More information

Algorithm for RSA and Hyperelliptic Curve Cryptosystems Resistant to Simple Power Analysis

Algorithm for RSA and Hyperelliptic Curve Cryptosystems Resistant to Simple Power Analysis Algorithm for RSA and Hyperelliptic Curve Cryptosystems Resistant to Simple Power Analysis Christophe Negre ici joined work with T. Plantard (U. of Wollongong, Australia) Journees Nationales GDR IM January

More information

Efficient Modular Exponentiation Based on Multiple Multiplications by a Common Operand

Efficient Modular Exponentiation Based on Multiple Multiplications by a Common Operand Efficient Modular Exponentiation Based on Multiple Multiplications by a Common Operand Christophe Negre, Thomas Plantard, Jean-Marc Robert Team DALI (UPVD) and LIRMM (UM2, CNRS), France CCISR, SCIT, (University

More information

10 Modular Arithmetic and Cryptography

10 Modular Arithmetic and Cryptography 10 Modular Arithmetic and Cryptography 10.1 Encryption and Decryption Encryption is used to send messages secretly. The sender has a message or plaintext. Encryption by the sender takes the plaintext and

More information

Elliptic Curve Cryptography and Security of Embedded Devices

Elliptic Curve Cryptography and Security of Embedded Devices Elliptic Curve Cryptography and Security of Embedded Devices Ph.D. Defense Vincent Verneuil Institut de Mathématiques de Bordeaux Inside Secure June 13th, 2012 V. Verneuil - Elliptic Curve Cryptography

More information

RSA-256bit 數位電路實驗 TA: 吳柏辰. Author: Trumen

RSA-256bit 數位電路實驗 TA: 吳柏辰. Author: Trumen RSA-256bit 數位電路實驗 TA: 吳柏辰 Author: Trumen Outline Introduction to Cryptography RSA Algorithm Montgomery Algorithm for RSA-256 bit 2 Introduction to Cryptography 3 Communication Is Insecure Alice Bob Paparazzi

More information

Public Key Cryptography. All secret key algorithms & hash algorithms do the same thing but public key algorithms look very different from each other.

Public Key Cryptography. All secret key algorithms & hash algorithms do the same thing but public key algorithms look very different from each other. Public Key Cryptography All secret key algorithms & hash algorithms do the same thing but public key algorithms look very different from each other. The thing that is common among all of them is that each

More information

Cosc 412: Cryptography and complexity Lecture 7 (22/8/2018) Knapsacks and attacks

Cosc 412: Cryptography and complexity Lecture 7 (22/8/2018) Knapsacks and attacks 1 Cosc 412: Cryptography and complexity Lecture 7 (22/8/2018) Knapsacks and attacks Michael Albert michael.albert@cs.otago.ac.nz 2 This week Arithmetic Knapsack cryptosystems Attacks on knapsacks Some

More information

Discrete Mathematics GCD, LCM, RSA Algorithm

Discrete Mathematics GCD, LCM, RSA Algorithm Discrete Mathematics GCD, LCM, RSA Algorithm Abdul Hameed http://informationtechnology.pk/pucit abdul.hameed@pucit.edu.pk Lecture 16 Greatest Common Divisor 2 Greatest common divisor The greatest common

More information

Encryption: The RSA Public Key Cipher

Encryption: The RSA Public Key Cipher Encryption: The RSA Public Key Cipher Michael Brockway March 5, 2018 Overview Transport-layer security employs an asymmetric public cryptosystem to allow two parties (usually a client application and a

More information

Efficient regular modular exponentiation using multiplicative half-size splitting

Efficient regular modular exponentiation using multiplicative half-size splitting J Cryptogr Eng (17) 7:45 53 DOI 1.17/s13389-16-134-5 SHORT COMMUNICATION Efficient regular modular exponentiation using multiplicative half-size splitting Christophe Negre 1, Thomas Plantard 3,4 Received:

More information

RSA. Ramki Thurimella

RSA. Ramki Thurimella RSA Ramki Thurimella Public-Key Cryptography Symmetric cryptography: same key is used for encryption and decryption. Asymmetric cryptography: different keys used for encryption and decryption. Public-Key

More information

during transmission safeguard information Cryptography: used to CRYPTOGRAPHY BACKGROUND OF THE MATHEMATICAL

during transmission safeguard information Cryptography: used to CRYPTOGRAPHY BACKGROUND OF THE MATHEMATICAL THE MATHEMATICAL BACKGROUND OF CRYPTOGRAPHY Cryptography: used to safeguard information during transmission (e.g., credit card number for internet shopping) as opposed to Coding Theory: used to transmit

More information

Mathematics of Cryptography

Mathematics of Cryptography UNIT - III Mathematics of Cryptography Part III: Primes and Related Congruence Equations 1 Objectives To introduce prime numbers and their applications in cryptography. To discuss some primality test algorithms

More information

Public Key Cryptography

Public Key Cryptography T H E U N I V E R S I T Y O F B R I T I S H C O L U M B I A Public Key Cryptography EECE 412 1 What is it? Two keys Sender uses recipient s public key to encrypt Receiver uses his private key to decrypt

More information

Definition: For a positive integer n, if 0<a<n and gcd(a,n)=1, a is relatively prime to n. Ahmet Burak Can Hacettepe University

Definition: For a positive integer n, if 0<a<n and gcd(a,n)=1, a is relatively prime to n. Ahmet Burak Can Hacettepe University Number Theory, Public Key Cryptography, RSA Ahmet Burak Can Hacettepe University abc@hacettepe.edu.tr The Euler Phi Function For a positive integer n, if 0

More information

Lecture V : Public Key Cryptography

Lecture V : Public Key Cryptography Lecture V : Public Key Cryptography Internet Security: Principles & Practices John K. Zao, PhD (Harvard) SMIEEE Amir Rezapoor Computer Science Department, National Chiao Tung University 2 Outline Functional

More information

Logic gates. Quantum logic gates. α β 0 1 X = 1 0. Quantum NOT gate (X gate) Classical NOT gate NOT A. Matrix form representation

Logic gates. Quantum logic gates. α β 0 1 X = 1 0. Quantum NOT gate (X gate) Classical NOT gate NOT A. Matrix form representation Quantum logic gates Logic gates Classical NOT gate Quantum NOT gate (X gate) A NOT A α 0 + β 1 X α 1 + β 0 A N O T A 0 1 1 0 Matrix form representation 0 1 X = 1 0 The only non-trivial single bit gate

More information

Addition. Ch1 - Algorithms with numbers. Multiplication. al-khwārizmī. al-khwārizmī. Division 53+35=88. Cost? (n number of bits) 13x11=143. Cost?

Addition. Ch1 - Algorithms with numbers. Multiplication. al-khwārizmī. al-khwārizmī. Division 53+35=88. Cost? (n number of bits) 13x11=143. Cost? Ch - Algorithms with numbers Addition Basic arithmetic Addition ultiplication Division odular arithmetic factoring is hard Primality testing 53+35=88 Cost? (n number of bits) O(n) ultiplication al-khwārizmī

More information

Cryptography and RSA. Group (1854, Cayley) Upcoming Interview? Outline. Commutative or Abelian Groups

Cryptography and RSA. Group (1854, Cayley) Upcoming Interview? Outline. Commutative or Abelian Groups Great Theoretical Ideas in CS V. Adamchik CS 15-251 Upcoming Interview? Lecture 24 Carnegie Mellon University Cryptography and RSA How the World's Smartest Company Selects the Most Creative Thinkers Groups

More information

ECE596C: Handout #11

ECE596C: Handout #11 ECE596C: Handout #11 Public Key Cryptosystems Electrical and Computer Engineering, University of Arizona, Loukas Lazos Abstract In this lecture we introduce necessary mathematical background for studying

More information

Security Issues in Cloud Computing Modern Cryptography II Asymmetric Cryptography

Security Issues in Cloud Computing Modern Cryptography II Asymmetric Cryptography Security Issues in Cloud Computing Modern Cryptography II Asymmetric Cryptography Peter Schwabe October 21 and 28, 2011 So far we assumed that Alice and Bob both have some key, which nobody else has. How

More information

Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 1, 2013

Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 1, 2013 RSA Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 1, 2013 Recap Recap Number theory o What is a prime number? o What is prime factorization? o What is a GCD? o What does relatively prime

More information

Theme : Cryptography. Instructor : Prof. C Pandu Rangan. Speaker : Arun Moorthy CS

Theme : Cryptography. Instructor : Prof. C Pandu Rangan. Speaker : Arun Moorthy CS 1 C Theme : Cryptography Instructor : Prof. C Pandu Rangan Speaker : Arun Moorthy 93115 CS 2 RSA Cryptosystem Outline of the Talk! Introduction to RSA! Working of the RSA system and associated terminology!

More information

Cryptography. pieces from work by Gordon Royle

Cryptography. pieces from work by Gordon Royle Cryptography pieces from work by Gordon Royle The set-up Cryptography is the mathematics of devising secure communication systems, whereas cryptanalysis is the mathematics of breaking such systems. We

More information

The RSA public encryption scheme: How I learned to stop worrying and love buying stuff online

The RSA public encryption scheme: How I learned to stop worrying and love buying stuff online The RSA public encryption scheme: How I learned to stop worrying and love buying stuff online Anthony Várilly-Alvarado Rice University Mathematics Leadership Institute, June 2010 Our Goal Today I will

More information

Number Theory & Modern Cryptography

Number Theory & Modern Cryptography Number Theory & Modern Cryptography Week 12 Stallings: Ch 4, 8, 9, 10 CNT-4403: 2.April.2015 1 Introduction Increasing importance in cryptography Public Key Crypto and Signatures Concern operations on

More information

Number Theory. Modular Arithmetic

Number Theory. Modular Arithmetic Number Theory The branch of mathematics that is important in IT security especially in cryptography. Deals only in integer numbers and the process can be done in a very fast manner. Modular Arithmetic

More information

COMP424 Computer Security

COMP424 Computer Security COMP424 Computer Security Prof. Wiegley jeffw@csun.edu Rivest, Shamir & Adelman (RSA) Implementation 1 Relatively prime Prime: n, is prime if its only two factors are 1 and n. (and n 1). Relatively prime:

More information

CPE 776:DATA SECURITY & CRYPTOGRAPHY. Some Number Theory and Classical Crypto Systems

CPE 776:DATA SECURITY & CRYPTOGRAPHY. Some Number Theory and Classical Crypto Systems CPE 776:DATA SECURITY & CRYPTOGRAPHY Some Number Theory and Classical Crypto Systems Dr. Lo ai Tawalbeh Computer Engineering Department Jordan University of Science and Technology Jordan Some Number Theory

More information

Outline. Computer Arithmetic for Cryptography in the Arith Group. LIRMM Montpellier Laboratory of Computer Science, Robotics, and Microelectronics

Outline. Computer Arithmetic for Cryptography in the Arith Group. LIRMM Montpellier Laboratory of Computer Science, Robotics, and Microelectronics Outline Computer Arithmetic for Cryptography in the Arith Group Arnaud Tisserand LIRMM, CNRS Univ. Montpellier 2 Arith Group Crypto Puces Porquerolles, April 16 18, 2007 Introduction LIRMM Laboratory Arith

More information

Lemma 1.2. (1) If p is prime, then ϕ(p) = p 1. (2) If p q are two primes, then ϕ(pq) = (p 1)(q 1).

Lemma 1.2. (1) If p is prime, then ϕ(p) = p 1. (2) If p q are two primes, then ϕ(pq) = (p 1)(q 1). 1 Background 1.1 The group of units MAT 3343, APPLIED ALGEBRA, FALL 2003 Handout 3: The RSA Cryptosystem Peter Selinger Let (R, +, ) be a ring. Then R forms an abelian group under addition. R does not

More information

Numbers. Çetin Kaya Koç Winter / 18

Numbers. Çetin Kaya Koç   Winter / 18 Çetin Kaya Koç http://koclab.cs.ucsb.edu Winter 2016 1 / 18 Number Systems and Sets We represent the set of integers as Z = {..., 3, 2, 1,0,1,2,3,...} We denote the set of positive integers modulo n as

More information

Elliptic Curve Cryptography

Elliptic Curve Cryptography Elliptic Curve Cryptography Elliptic Curves An elliptic curve is a cubic equation of the form: y + axy + by = x 3 + cx + dx + e where a, b, c, d and e are real numbers. A special addition operation is

More information

basics of security/cryptography

basics of security/cryptography RSA Cryptography basics of security/cryptography Bob encrypts message M into ciphertext C=P(M) using a public key; Bob sends C to Alice Alice decrypts ciphertext back into M using a private key (secret)

More information

ICS141: Discrete Mathematics for Computer Science I

ICS141: Discrete Mathematics for Computer Science I ICS141: Discrete Mathematics for Computer Science I Dept. Information & Computer Sci., Jan Stelovsky based on slides by Dr. Baek and Dr. Still Originals by Dr. M. P. Frank and Dr. J.L. Gross Provided by

More information

Public Key Cryptography

Public Key Cryptography Public Key Cryptography Spotlight on Science J. Robert Buchanan Department of Mathematics 2011 What is Cryptography? cryptography: study of methods for sending messages in a form that only be understood

More information

Introduction to Modern Cryptography. Benny Chor

Introduction to Modern Cryptography. Benny Chor Introduction to Modern Cryptography Benny Chor RSA Public Key Encryption Factoring Algorithms Lecture 7 Tel-Aviv University Revised March 1st, 2008 Reminder: The Prime Number Theorem Let π(x) denote the

More information

Ma/CS 6a Class 3: The RSA Algorithm

Ma/CS 6a Class 3: The RSA Algorithm Ma/CS 6a Class 3: The RSA Algorithm By Adam Sheffer Reminder: Putnam Competition Signup ends Wednesday 10/08. Signup sheets available in all Sloan classrooms, Math office, or contact Kathy Carreon, kcarreon@caltech.edu.

More information

Partial Key Exposure: Generalized Framework to Attack RSA

Partial Key Exposure: Generalized Framework to Attack RSA Partial Key Exposure: Generalized Framework to Attack RSA Cryptology Research Group Indian Statistical Institute, Kolkata 12 December 2011 Outline of the Talk 1 RSA - A brief overview 2 Partial Key Exposure

More information

Lecture Notes, Week 6

Lecture Notes, Week 6 YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE CPSC 467b: Cryptography and Computer Security Week 6 (rev. 3) Professor M. J. Fischer February 15 & 17, 2005 1 RSA Security Lecture Notes, Week 6 Several

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security Outline Quadratic residues Useful tests Digital Signatures CPSC 467b: Cryptography and Computer Security Lecture 14 Michael J. Fischer Department of Computer Science Yale University March 1, 2010 Michael

More information

RSA RSA public key cryptosystem

RSA RSA public key cryptosystem RSA 1 RSA As we have seen, the security of most cipher systems rests on the users keeping secret a special key, for anyone possessing the key can encrypt and/or decrypt the messages sent between them.

More information

Cryptography. Course 1: Remainder: RSA. Jean-Sébastien Coron. September 21, Université du Luxembourg

Cryptography. Course 1: Remainder: RSA. Jean-Sébastien Coron. September 21, Université du Luxembourg Course 1: Remainder: RSA Université du Luxembourg September 21, 2010 Public-key encryption Public-key encryption: two keys. One key is made public and used to encrypt. The other key is kept private and

More information

dit-upm RSA Cybersecurity Cryptography

dit-upm RSA Cybersecurity Cryptography -upm Cybersecurity Cryptography José A. Mañas < http://www.dit.upm.es/~pepe/> Information Technology Department Universidad Politécnica de Madrid 4 october 2018 public key (asymmetric) public key secret

More information

Public Key Encryption

Public Key Encryption Public Key Encryption 3/13/2012 Cryptography 1 Facts About Numbers Prime number p: p is an integer p 2 The only divisors of p are 1 and p s 2, 7, 19 are primes -3, 0, 1, 6 are not primes Prime decomposition

More information

10 Public Key Cryptography : RSA

10 Public Key Cryptography : RSA 10 Public Key Cryptography : RSA 10.1 Introduction The idea behind a public-key system is that it might be possible to find a cryptosystem where it is computationally infeasible to determine d K even if

More information

Carmen s Core Concepts (Math 135)

Carmen s Core Concepts (Math 135) Carmen s Core Concepts (Math 135) Carmen Bruni University of Waterloo Week 8 1 The following are equivalent (TFAE) 2 Inverses 3 More on Multiplicative Inverses 4 Linear Congruence Theorem 2 [LCT2] 5 Fermat

More information

Side Channel Attack to Actual Cryptanalysis: Breaking CRT-RSA with Low Weight Decryption Exponents

Side Channel Attack to Actual Cryptanalysis: Breaking CRT-RSA with Low Weight Decryption Exponents Side Channel Attack to Actual Cryptanalysis: Breaking CRT-RSA with Low Weight Decryption Exponents Santanu Sarkar and Subhamoy Maitra Leuven, Belgium 12 September, 2012 Outline of the Talk RSA Cryptosystem

More information

Optimal Use of Montgomery Multiplication on Smart Cards

Optimal Use of Montgomery Multiplication on Smart Cards Optimal Use of Montgomery Multiplication on Smart Cards Arnaud Boscher and Robert Naciri Oberthur Card Systems SA, 71-73, rue des Hautes Pâtures, 92726 Nanterre Cedex, France {a.boscher, r.naciri}@oberthurcs.com

More information

Chapter 8 Public-key Cryptography and Digital Signatures

Chapter 8 Public-key Cryptography and Digital Signatures Chapter 8 Public-key Cryptography and Digital Signatures v 1. Introduction to Public-key Cryptography 2. Example of Public-key Algorithm: Diffie- Hellman Key Exchange Scheme 3. RSA Encryption and Digital

More information

CSC 5930/9010 Modern Cryptography: Number Theory

CSC 5930/9010 Modern Cryptography: Number Theory CSC 5930/9010 Modern Cryptography: Number Theory Professor Henry Carter Fall 2018 Recap Hash functions map arbitrary-length strings to fixedlength outputs Cryptographic hashes should be collision-resistant

More information

19. Coding for Secrecy

19. Coding for Secrecy 19. Coding for Secrecy 19.1 Introduction Protecting sensitive information from the prying eyes and ears of others is an important issue today as much as it has been for thousands of years. Government secrets,

More information

University of Tokyo: Advanced Algorithms Summer Lecture 6 27 May. Let s keep in mind definitions from the previous lecture:

University of Tokyo: Advanced Algorithms Summer Lecture 6 27 May. Let s keep in mind definitions from the previous lecture: University of Tokyo: Advanced Algorithms Summer 2010 Lecture 6 27 May Lecturer: François Le Gall Scribe: Baljak Valentina As opposed to prime factorization, primality testing is determining whether a given

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security CPSC 467b: Cryptography and Computer Security Michael J. Fischer Lecture 8 February 1, 2012 CPSC 467b, Lecture 8 1/42 Number Theory Needed for RSA Z n : The integers mod n Modular arithmetic GCD Relatively

More information

1 Recommended Reading 1. 2 Public Key/Private Key Cryptography Overview RSA Algorithm... 2

1 Recommended Reading 1. 2 Public Key/Private Key Cryptography Overview RSA Algorithm... 2 Contents 1 Recommended Reading 1 2 Public Key/Private Key Cryptography 1 2.1 Overview............................................. 1 2.2 RSA Algorithm.......................................... 2 3 A Number

More information

THE CUBIC PUBLIC-KEY TRANSFORMATION*

THE CUBIC PUBLIC-KEY TRANSFORMATION* CIRCUITS SYSTEMS SIGNAL PROCESSING c Birkhäuser Boston (2007) VOL. 26, NO. 3, 2007, PP. 353 359 DOI: 10.1007/s00034-006-0309-x THE CUBIC PUBLIC-KEY TRANSFORMATION* Subhash Kak 1 Abstract. This note proposes

More information

Public Key 9/17/2018. Symmetric Cryptography Review. Symmetric Cryptography: Shortcomings (1) Symmetric Cryptography: Analogy

Public Key 9/17/2018. Symmetric Cryptography Review. Symmetric Cryptography: Shortcomings (1) Symmetric Cryptography: Analogy Symmetric Cryptography Review Alice Bob Public Key x e K (x) y d K (y) x K K Instructor: Dr. Wei (Lisa) Li Department of Computer Science, GSU Two properties of symmetric (secret-key) crypto-systems: The

More information

5199/IOC5063 Theory of Cryptology, 2014 Fall

5199/IOC5063 Theory of Cryptology, 2014 Fall 5199/IOC5063 Theory of Cryptology, 2014 Fall Homework 2 Reference Solution 1. This is about the RSA common modulus problem. Consider that two users A and B use the same modulus n = 146171 for the RSA encryption.

More information

Asymmetric Encryption

Asymmetric Encryption -3 s s Encryption Comp Sci 3600 Outline -3 s s 1-3 2 3 4 5 s s Outline -3 s s 1-3 2 3 4 5 s s Function Using Bitwise XOR -3 s s Key Properties for -3 s s The most important property of a hash function

More information

A VLSI Algorithm for Modular Multiplication/Division

A VLSI Algorithm for Modular Multiplication/Division A VLSI Algorithm for Modular Multiplication/Division Marcelo E. Kaihara and Naofumi Takagi Department of Information Engineering Nagoya University Nagoya, 464-8603, Japan mkaihara@takagi.nuie.nagoya-u.ac.jp

More information

Math 412: Number Theory Lecture 13 Applications of

Math 412: Number Theory Lecture 13 Applications of Math 412: Number Theory Lecture 13 Applications of Gexin Yu gyu@wm.edu College of William and Mary Partition of integers A partition λ of the positive integer n is a non increasing sequence of positive

More information

Theory of Computation Chapter 12: Cryptography

Theory of Computation Chapter 12: Cryptography Theory of Computation Chapter 12: Cryptography Guan-Shieng Huang Dec. 20, 2006 0-0 Introduction Alice wants to communicate with Bob secretely. x Alice Bob John Alice y=e(e,x) y Bob y??? John Assumption

More information

CS March 17, 2009

CS March 17, 2009 Discrete Mathematics CS 2610 March 17, 2009 Number Theory Elementary number theory, concerned with numbers, usually integers and their properties or rational numbers mainly divisibility among integers

More information

Topics in Cryptography. Lecture 5: Basic Number Theory

Topics in Cryptography. Lecture 5: Basic Number Theory Topics in Cryptography Lecture 5: Basic Number Theory Benny Pinkas page 1 1 Classical symmetric ciphers Alice and Bob share a private key k. System is secure as long as k is secret. Major problem: generating

More information

Algorithmic Number Theory and Public-key Cryptography

Algorithmic Number Theory and Public-key Cryptography Algorithmic Number Theory and Public-key Cryptography Course 3 University of Luxembourg March 22, 2018 The RSA algorithm The RSA algorithm is the most widely-used public-key encryption algorithm Invented

More information

MATH3302 Cryptography Problem Set 2

MATH3302 Cryptography Problem Set 2 MATH3302 Cryptography Problem Set 2 These questions are based on the material in Section 4: Shannon s Theory, Section 5: Modern Cryptography, Section 6: The Data Encryption Standard, Section 7: International

More information

Blinded Fault Resistant Exponentiation FDTC 06

Blinded Fault Resistant Exponentiation FDTC 06 Previous Work Our Algorithm Guillaume Fumaroli 1 David Vigilant 2 1 Thales Communications guillaume.fumaroli@fr.thalesgroup.com 2 Gemalto david.vigilant@gemalto.com FDTC 06 Outline Previous Work Our Algorithm

More information

Introduction. What is RSA. A Guide To RSA by Robert Yates. Topics

Introduction. What is RSA. A Guide To RSA by Robert Yates. Topics A Guide To RSA by Robert Yates. Topics Introduction...01/09 What is RSA...01/09 Mod-Exponentiation...02/09 Euler's Theorem...03/09 RSA Algorithm...08/09 RSA Security...09/09 Introduction Welcome to my

More information

CIS 551 / TCOM 401 Computer and Network Security

CIS 551 / TCOM 401 Computer and Network Security CIS 551 / TCOM 401 Computer and Network Security Spring 2008 Lecture 15 3/20/08 CIS/TCOM 551 1 Announcements Project 3 available on the web. Get the handout in class today. Project 3 is due April 4th It

More information

Side-channel analysis in code-based cryptography

Side-channel analysis in code-based cryptography 1 Side-channel analysis in code-based cryptography Tania RICHMOND IMATH Laboratory University of Toulon SoSySec Seminar Rennes, April 5, 2017 Outline McEliece cryptosystem Timing Attack Power consumption

More information

OWO Lecture: Modular Arithmetic with Algorithmic Applications

OWO Lecture: Modular Arithmetic with Algorithmic Applications OWO Lecture: Modular Arithmetic with Algorithmic Applications Martin Otto Winter Term 2008/09 Contents 1 Basic ingredients 1 2 Modular arithmetic 2 2.1 Going in circles.......................... 2 2.2

More information

CS483 Design and Analysis of Algorithms

CS483 Design and Analysis of Algorithms CS483 Design and Analysis of Algorithms Lectures 2-3 Algorithms with Numbers Instructor: Fei Li lifei@cs.gmu.edu with subject: CS483 Office hours: STII, Room 443, Friday 4:00pm - 6:00pm or by appointments

More information

A New Attack on RSA with Two or Three Decryption Exponents

A New Attack on RSA with Two or Three Decryption Exponents A New Attack on RSA with Two or Three Decryption Exponents Abderrahmane Nitaj Laboratoire de Mathématiques Nicolas Oresme Université de Caen, France nitaj@math.unicaen.fr http://www.math.unicaen.fr/~nitaj

More information

2. Cryptography 2.5. ElGamal cryptosystems and Discrete logarithms

2. Cryptography 2.5. ElGamal cryptosystems and Discrete logarithms CRYPTOGRAPHY 19 Cryptography 5 ElGamal cryptosystems and Discrete logarithms Definition Let G be a cyclic group of order n and let α be a generator of G For each A G there exists an uniue 0 a n 1 such

More information

Applied Cryptography and Computer Security CSE 664 Spring 2018

Applied Cryptography and Computer Security CSE 664 Spring 2018 Applied Cryptography and Computer Security Lecture 12: Introduction to Number Theory II Department of Computer Science and Engineering University at Buffalo 1 Lecture Outline This time we ll finish the

More information

Computing the RSA Secret Key is Deterministic Polynomial Time Equivalent to Factoring

Computing the RSA Secret Key is Deterministic Polynomial Time Equivalent to Factoring Computing the RSA Secret Key is Deterministic Polynomial Time Equivalent to Factoring Alexander May Faculty of Computer Science, Electrical Engineering and Mathematics University of Paderborn 33102 Paderborn,

More information

Provable Security for Public-Key Schemes. Outline. I Basics. Secrecy of Communications. Outline. David Pointcheval

Provable Security for Public-Key Schemes. Outline. I Basics. Secrecy of Communications. Outline. David Pointcheval Provable Security for Public-Key Schemes I Basics David Pointcheval Ecole normale supérieure, CNRS & INRIA IACR-SEAMS School Cryptographie: Foundations and New Directions November 2016 Hanoi Vietnam Introduction

More information

Montgomery-Suitable Cryptosystems

Montgomery-Suitable Cryptosystems Montgomery-Suitable Cryptosystems [Published in G. Cohen, S. Litsyn, A. Lobstein, and G. Zémor, Eds., Algebraic Coding, vol. 781 of Lecture Notes in Computer Science, pp. 75-81, Springer-Verlag, 1994.]

More information

8.1 Principles of Public-Key Cryptosystems

8.1 Principles of Public-Key Cryptosystems Public-key cryptography is a radical departure from all that has gone before. Right up to modern times all cryptographic systems have been based on the elementary tools of substitution and permutation.

More information

Cryptography CS 555. Topic 18: RSA Implementation and Security. CS555 Topic 18 1

Cryptography CS 555. Topic 18: RSA Implementation and Security. CS555 Topic 18 1 Cryptography CS 555 Topic 18: RSA Implementation and Security Topic 18 1 Outline and Readings Outline RSA implementation issues Factoring large numbers Knowing (e,d) enables factoring Prime testing Readings:

More information

Introduction to Elliptic Curve Cryptography. Anupam Datta

Introduction to Elliptic Curve Cryptography. Anupam Datta Introduction to Elliptic Curve Cryptography Anupam Datta 18-733 Elliptic Curve Cryptography Public Key Cryptosystem Duality between Elliptic Curve Cryptography and Discrete Log Based Cryptography Groups

More information

Horizontal and Vertical Side-Channel Attacks against Secure RSA Implementations

Horizontal and Vertical Side-Channel Attacks against Secure RSA Implementations Introduction Clavier et al s Paper This Paper Horizontal and Vertical Side-Channel Attacks against Secure RSA Implementations Aurélie Bauer Éliane Jaulmes Emmanuel Prouff Justine Wild ANSSI Session ID:

More information

2 3 DIGITAL SIGNATURE STANDARD (DSS) [PROPOSED BY NIST, 1991] Pick an x 2 Z p,1 as the private key Compute y = g x (mod p) asthe public key To sign a

2 3 DIGITAL SIGNATURE STANDARD (DSS) [PROPOSED BY NIST, 1991] Pick an x 2 Z p,1 as the private key Compute y = g x (mod p) asthe public key To sign a 6.857 Computer and Network Security Fall Term, 1997 Lecture 8 : September 30, 1997 Lecturer: Ron Rivest Scribe: Debajit Ghosh 1 Topics Covered Public Key Cryptography Review of ElGamal DSS RSA Elliptic

More information

ALG 4.0 Number Theory Algorithms:

ALG 4.0 Number Theory Algorithms: Algorithms Professor John Reif ALG 4.0 Number Theory Algorithms: (a) GCD (b) Multiplicative Inverse (c) Fermat & Euler's Theorems (d) Public Key Cryptographic Systems (e) Primality Testing Greatest Common

More information

Cryptography. P. Danziger. Transmit...Bob...

Cryptography. P. Danziger. Transmit...Bob... 10.4 Cryptography P. Danziger 1 Cipher Schemes A cryptographic scheme is an example of a code. The special requirement is that the encoded message be difficult to retrieve without some special piece of

More information

Lecture 22: RSA Encryption. RSA Encryption

Lecture 22: RSA Encryption. RSA Encryption Lecture 22: Recall: RSA Assumption We pick two primes uniformly and independently at random p, q $ P n We define N = p q We shall work over the group (Z N, ), where Z N is the set of all natural numbers

More information

LECTURE 5: APPLICATIONS TO CRYPTOGRAPHY AND COMPUTATIONS

LECTURE 5: APPLICATIONS TO CRYPTOGRAPHY AND COMPUTATIONS LECTURE 5: APPLICATIONS TO CRYPTOGRAPHY AND COMPUTATIONS Modular arithmetics that we have discussed in the previous lectures is very useful in Cryptography and Computer Science. Here we discuss several

More information

Congruence Classes. Number Theory Essentials. Modular Arithmetic Systems

Congruence Classes. Number Theory Essentials. Modular Arithmetic Systems Cryptography Introduction to Number Theory 1 Preview Integers Prime Numbers Modular Arithmetic Totient Function Euler's Theorem Fermat's Little Theorem Euclid's Algorithm 2 Introduction to Number Theory

More information

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography David R. Wilkins Copyright c David R. Wilkins 2006 Contents 9 Introduction to Number Theory and Cryptography 1 9.1 Subgroups

More information

Public-key Cryptography and elliptic curves

Public-key Cryptography and elliptic curves Public-key Cryptography and elliptic curves Dan Nichols nichols@math.umass.edu University of Massachusetts Oct. 14, 2015 Cryptography basics Cryptography is the study of secure communications. Here are

More information

Square Always Exponentiation

Square Always Exponentiation Square Always Exponentiation Christophe Clavier 1 Benoit Feix 1,2 Georges Gagnerot 1,2 Mylène Roussellet 2 Vincent Verneuil 2,3 1 XLIM-Université de Limoges, France 2 INSIDE Secure, Aix-en-Provence, France

More information

Introduction to Modern Cryptography. Benny Chor

Introduction to Modern Cryptography. Benny Chor Introduction to Modern Cryptography Benny Chor RSA: Review and Properties Factoring Algorithms Trapdoor One Way Functions PKC Based on Discrete Logs (Elgamal) Signature Schemes Lecture 8 Tel-Aviv University

More information

From Fixed-Length to Arbitrary-Length RSA Encoding Schemes Revisited

From Fixed-Length to Arbitrary-Length RSA Encoding Schemes Revisited From Fixed-Length to Arbitrary-Length RSA Encoding Schemes Revisited Julien Cathalo 1, Jean-Sébastien Coron 2, and David Naccache 2,3 1 UCL Crypto Group Place du Levant 3, Louvain-la-Neuve, B-1348, Belgium

More information

Number Theory. CSS322: Security and Cryptography. Sirindhorn International Institute of Technology Thammasat University CSS322. Number Theory.

Number Theory. CSS322: Security and Cryptography. Sirindhorn International Institute of Technology Thammasat University CSS322. Number Theory. CSS322: Security and Cryptography Sirindhorn International Institute of Technology Thammasat University Prepared by Steven Gordon on 29 December 2011 CSS322Y11S2L06, Steve/Courses/2011/S2/CSS322/Lectures/number.tex,

More information

Ti Secured communications

Ti Secured communications Ti5318800 Secured communications Pekka Jäppinen September 20, 2007 Pekka Jäppinen, Lappeenranta University of Technology: September 20, 2007 Relies on use of two keys: Public and private Sometimes called

More information

YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE

YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE YALE UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE CPSC 467a: Cryptography and Computer Security Notes 13 (rev. 2) Professor M. J. Fischer October 22, 2008 53 Chinese Remainder Theorem Lecture Notes 13 We

More information

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography CIS 6930/4930 Computer and Network Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography 1 Review of Modular Arithmetic 2 Remainders and Congruency For any integer a and any positive

More information

Introduction to Cryptography. Lecture 6

Introduction to Cryptography. Lecture 6 Introduction to Cryptography Lecture 6 Benny Pinkas page 1 Public Key Encryption page 2 Classical symmetric ciphers Alice and Bob share a private key k. System is secure as long as k is secret. Major problem:

More information