Tanja Lange Technische Universiteit Eindhoven

Size: px
Start display at page:

Download "Tanja Lange Technische Universiteit Eindhoven"

Transcription

1 Crytanalysis Course Part I Tanja Lange Technische Universiteit Eindhoven 28 Nov 2016 with some slides by Daniel J. Bernstein

2 Main goal of this course: We are the attackers. We want to break ECC and RSA. First need to understand ECC; this is also needed for Dan s high-seed cryto course. Main motivation for ECC: Avoid index-calculus attacks that lague finite-field DL. See, e.g., yesterday s talk by P. T. H. Duong.

3 Diffie-Hellman key exchange Pick some generator P, i.e. some grou element (using additive notation here). Alice s secret key a Bob s secret key b Alice s Bob s ublic key ublic key ap b P falice; Bobg s fbob; Aliceg s shared secret = shared secret ab P b ap

4 Diffie-Hellman key exchange Pick some generator P, i.e. some grou element (using additive notation here). Alice s secret key a Bob s secret key b Alice s Bob s ublic key ublic key ap b P falice; Bobg s fbob; Aliceg s shared secret = shared secret ab P b ap What does P look like & how to comute P + Q?

5 The clock y x This is the curve x 2 + y 2 = 1. Warning: This is not an ellitic curve. Ellitic curve 6= ellise.

6 Examles of oints on this curve:

7 Examles of oints on this curve: (0; 1) = 12:00.

8 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00.

9 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00.

10 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00.

11 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) =

12 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00.

13 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00. (1=2; 3=4) =

14 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00. (1=2; 3=4) = 5:00. 3=4) = ( 1=2;

15 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00. (1=2; 3=4) = 5:00. 3=4) = 7:00. ( 1=2;

16 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00. (1=2; 3=4) = 5:00. 3=4) = 7:00. ( 1=2; ( 1=2; 1=2) = 1:30. (3=5; 4=5). ( 3=5; 4=5).

17 Examles of oints on this curve: (0; 1) = 12:00. (0; 1) = 6:00. (1; 0) = 3:00. ( 1; 0) = 9:00. ( 3=4; 1=2) = 2:00. (1=2; 3=4) = 5:00. 3=4) = 7:00. ( 1=2; ( 1=2; 1=2) = 1:30. (3=5; 4=5). ( 3=5; 4=5). (3=5; 4=5). ( 3=5; 4=5). (4=5; 3=5). ( 4=5; 3=5). (4=5; 3=5). ( 4=5; 3=5). Many more.

18 Addition on the clock: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) 1 P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1, arametrized by x = sin, y = cos.

19 Addition on the clock: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) 1 P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1, arametrized by x = sin, y = cos. Recall (sin( ); cos( )) =

20 Addition on the clock: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) 1 P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1, arametrized by x = sin, y = cos. Recall (sin( ); cos( )) = (sin 1 cos 2 + cos 1 sin 2 ;

21 Addition on the clock: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) 1 P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1, arametrized by x = sin, y = cos. Recall (sin( ); cos( )) = (sin 1 cos 2 + cos 1 sin 2 ; cos 1 cos 2 sin 1 sin 2 ).

22 Adding two oints corresonds to adding the angles 1 and 2. Angles modulo 360 are a grou, so oints on clock are a grou. Neutral element: angle = 0; oint (0; 1); 12:00. The oint with = 180 has order 2 and equals 6:00. 3:00 and 9:00 have order 4. Inverse of oint with is oint with since + ( ) = 0. There are many more oints where angle is not nice.

23 Addition on the clock: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) 1 P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1, arametrized by x = sin, y = cos. Recall (sin( ); cos( )) = (sin 1 cos 2 + cos 1 sin 2 ; cos 1 cos 2 sin 1 sin 2 ).

24 Clock addition without sin, cos: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) Use Cartesian coordinates for addition. Addition formula for the clock x 2 + y 2 = 1: sum (x 1 ; y 1 ) + (x 2 ; y 2 ) = (x 3 ; y 3 )

25 Clock addition without sin, cos: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) Use Cartesian coordinates for addition. Addition formula for the clock x 2 + y 2 = 1: sum (x 1 ; y 1 ) + (x 2 ; y 2 ) = (x 3 ; y 3 ) = (x 1 y 2 + y 1 x 2 ; y 1 y 2 x 1 x 2 ). Note (x 1 ; y 1 ) + ( x 1 ; y 1 ) = (0; 1). kp = P + P + + P {z } k coies for k 0.

26 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ;

27 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ;

28 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ; ; = ;

29 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ; ; = ; (x 1 ; y 1 ) + (0; 1) =

30 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ; ; = ; (x 1 ; y 1 ) + (0; 1) = (x 1 ; y 1 ).

31 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ; ; = ; (x 1 ; y 1 ) + (0; 1) = (x 1 ; y 1 ). (x 1 ; y 1 ) + ( x 1 ; y 1 ) =

32 Examles of clock addition: 2:00 + 5:00 = ( 3=4; 1=2) + (1=2; 3=4) = ( 1=2; 3=4) = 7:00. 5:00 + 9:00 = (1=2; 3=4) + ( 1; 0) = ( 3=4; 1=2) = 2: ; 4 24 = ; ; = ; ; = ; (x 1 ; y 1 ) + (0; 1) = (x 1 ; y 1 ). (x 1 ; y 1 ) + ( x 1 ; y 1 ) = (0; 1).

33 Clocks over finite fields Clock(F 7 ) = (x; y) 2 F7 F 7 : x 2 + y 2 = 1. Here F 7 = f0; 1; 2; 3; 4; 5; 6g = f0; 1; 2; 3; 3; 2; 1g with +; ; modulo 7. E.g. 2 5 = 3 and 3=2 = 5 in F 7.

34 >>> for x in range(7):... for y in range(7):... if (x*x+y*y) % 7 == 1:... rint (x,y)... (0, 1) (0, 6) (1, 0) (2, 2) (2, 5) (5, 2) (5, 5) (6, 0) >>>

35 >>> class F7:... def init (self,x):... self.int = x % 7... def str (self):... return str(self.int)... rer = str... >>> rint F7(2) 2 >>> rint F7(6) 6 >>> rint F7(7) 0 >>> rint F7(10) 3

36 >>> F7. eq = lambda a,b: \... a.int == b.int >>> >>> rint F7(7) == F7(0) True >>> rint F7(10) == F7(3) True >>> rint F7(-3) == F7(4) True >>> rint F7(0) == F7(1) False >>> rint F7(0) == F7(2) False >>> rint F7(0) == F7(3) False

37 >>> F7. add = lambda a,b: \... F7(a.int + b.int) >>> F7. sub = lambda a,b: \... F7(a.int - b.int) >>> F7. mul = lambda a,b: \... F7(a.int * b.int) >>> >>> rint F7(2) + F7(5) 0 >>> rint F7(2) - F7(5) 4 >>> rint F7(2) * F7(5) 3 >>>

38 Larger examle: Clock(F ). = class F:... def clockadd(p1,p2): x1,y1 = P1 x2,y2 = P2 x3 = x1*y2+y1*x2 y3 = y1*y2-x1*x2 return x3,y3

39 >>> P = (F(1000),F(2)) >>> P2 = clockadd(p,p) >>> rint P2 (4000, 7) >>> P3 = clockadd(p2,p) >>> rint P3 (15000, 26) >>> P4 = clockadd(p3,p) >>> P5 = clockadd(p4,p) >>> P6 = clockadd(p5,p) >>> rint P6 (780000, 1351) >>> rint clockadd(p3,p3) (780000, 1351) >>>

40 >>> def scalarmult(n,p):... if n == 0: \... return (F(0),F(1))... if n == 1: return P... Q = scalarmult(n//2,p)... Q = clockadd(q,q)... if n % 2: Q = clockadd(p,q)... return Q... >>> n = oursixdigitsecret >>> scalarmult(n,p) (947472, ) >>> Can you figure out our secret n?

41 Clock crytograhy The Clock Diffie Hellman rotocol : Standardize large rime & base oint (x; y) 2 Clock(F ). Alice chooses big secret a, comutes her ublic key a(x; y). Bob chooses big secret b, comutes his ublic key b (x; y). Alice comutes a(b (x; y)). Bob comutes b (a(x; y)). They use this shared secret to encryt with AES-GCM etc.

42 Alice s secret key a Bob s secret key b Alice s Bob s ublic key ublic key a(x; Y ) b (X; Y ) falice; Bobg s fbob; Aliceg s shared secret = shared secret ab (X; Y ) b a(x; Y )

43 Alice s secret key a Bob s secret key b Alice s Bob s ublic key ublic key a(x; Y ) b (X; Y ) falice; Bobg s fbob; Aliceg s shared secret = shared secret ab (X; Y ) b a(x; Y ) Warning #1: Many are unsafe! Warning #2: Clocks aren t ellitic! To match RSA-3072 security need

44 Warning #3: Attacker sees more than ublic keys a(x; y) and b (x; y). Attacker sees how much time Alice uses to comute a(b (x; y)). Often attacker can see time for each oeration erformed by Alice, not just total time. This reveals secret scalar a. Break by timing attacks, e.g., 2011 Brumley Tuveri.

45 Warning #3: Attacker sees more than ublic keys a(x; y) and b (x; y). Attacker sees how much time Alice uses to comute a(b (x; y)). Often attacker can see time for each oeration erformed by Alice, not just total time. This reveals secret scalar a. Break by timing attacks, e.g., 2011 Brumley Tuveri. Fix: constant-time code, erforming same oerations no matter what scalar is.

46 Exercise How many multilications do you need to comute (x 1 y 2 + y 1 x 2 ; y 1 y 2 x 1 x 2 )? How many multilications do you need to double a oint, i.e. to comute (x 1 y 1 + y 1 x 1 ; y 1 y 1 x 1 x 1 )? How can you otimize the comutation if squarings are cheaer than multilications? Assume S < M < 2S.

47 Addition on an Edwards curve Change the curve on which Alice and Bob work. y neutral = (0; 1) P 1 = (x 1 ; y 1 ) P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1 30x 2 y 2. Sum of (x 1 ; y 1 ) and (x 2 ; y 2 ) is ((x 1 y 2 +y 1 x 2 )=(1 30x 1 x 2 y 1 y 2 ), (y 1 y 2 x 1 x 2 )=(1+30x 1 x 2 y 1 y 2 )).

48 The clock again, for comarison: y neutral = (0; 1) P 1 = (x 1 ; y 1 ) P 2 = (x 2 ; y 2 ) x P 3 = (x 3 ; y 3 ) x 2 + y 2 = 1. Sum of (x 1 ; y 1 ) and (x 2 ; y 2 ) is (x 1 y 2 + y 1 x 2, y 1 y 2 x 1 x 2 ).

49 Hey, there were divisions in the Edwards addition law! What if the denominators are 0? Answer: They aren t! If x i = 0 or y i = 0 then 1 30x 1 x 2 y 1 y 2 = 1 6= 0. If x 2 + y 2 = 1 30x 2 y 2 then 30x 2 y 2 < 1 so 30 jxyj < 1.

50 Hey, there were divisions in the Edwards addition law! What if the denominators are 0? Answer: They aren t! If x i = 0 or y i = 0 then 1 30x 1 x 2 y 1 y 2 = 1 6= 0. If x 2 + y 2 = 1 30x 2 y 2 then 30x 2 y 2 < 1 so 30 jxyj < 1. If x y2 1 = 1 30x2 1 y2 1 and x y2 2 = 1 30x2 2 y2 2 then 30 jx 1 y 1 j < 1 and 30 jx 2 y 2 j < 1

51 Hey, there were divisions in the Edwards addition law! What if the denominators are 0? Answer: They aren t! If x i = 0 or y i = 0 then 1 30x 1 x 2 y 1 y 2 = 1 6= 0. If x 2 + y 2 = 1 30x 2 y 2 then 30x 2 y 2 < 1 so 30 jxyj < 1. If x y2 1 = 1 30x2 1 y2 1 and x y2 2 = 1 30x2 2 y2 2 then 30 jx 1 y 1 j < 1 and 30 jx 2 y 2 j < 1 so 30 jx 1 y 1 x 2 y 2 j < 1 so 1 30x 1 x 2 y 1 y 2 > 0.

52 The Edwards addition law (x 1 ; y 1 ) + (x 2 ; y 2 ) = ((x 1 y 2 +y 1 x 2 )=(1 30x 1 x 2 y 1 y 2 ), (y 1 y 2 x 1 x 2 )=(1+30x 1 x 2 y 1 y 2 )) is a grou law for the curve x 2 + y 2 = 1 30x 2 y 2. Some calculation required: addition result is on curve; addition law is associative. Other arts of roof are easy: addition law is commutative; (0; 1) is neutral element; (x 1 ; y 1 ) + ( x 1 ; y 1 ) = (0; 1).

53 Edwards curves mod Choose an odd rime. Choose a non-square d 2 F. f(x; y) 2 F F : x 2 + y 2 = 1 + dx 2 y 2 g is a comlete Edwards curve. Roughly + 1 airs (x; y). def edwardsadd(p1,p2): x1,y1 = P1 x2,y2 = P2 x3 = (x1*y2+y1*x2)/ \ (1+d*x1*x2*y1*y2) y3 = (y1*y2-x1*x2)/ \ (1-d*x1*x2*y1*y2) return x3,y3

54 Denominators are never 0. But need different roof; x 2 + y 2 > 0 doesn t work.

55 Denominators are never 0. But need different roof; x 2 + y 2 > 0 doesn t work. Answer: Can rove that the denominators are never 0. Addition law is comlete.

56 Denominators are never 0. But need different roof; x 2 + y 2 > 0 doesn t work. Answer: Can rove that the denominators are never 0. Addition law is comlete. This roof relies on choosing non-square d.

57 Denominators are never 0. But need different roof; x 2 + y 2 > 0 doesn t work. Answer: Can rove that the denominators are never 0. Addition law is comlete. This roof relies on choosing non-square d. If we instead choose square d: curve is still ellitic, and addition seems to work, but there are failure cases, often exloitable by attackers. Safe code is more comlicated.

58 Edwards curves are cool

59 ECDSA Users can sign messages using Edwards curves. Take a oint P on an Edwards curve modulo a rime > 2. ECDSA signer needs to know the order of P. There are only finitely many other oints; about in total. Adding P to itself will eventually reach (0; 1); let ` be the smallest integer > 0 with `P = (0; 1). This ` is the order of P.

60 The signature scheme has as system arameters a curve E; a base oint P ; and a hash function h with outut length at least blog 2 `c + 1. Alice s secret key is an integer a and her ublic key is P = A ap. To sign message m, Alice comutes h(m); icks random k; comutes R = kp = (x 1 ; y 1 ); uts r y 1 mod `; comutes s k 1 (h(m) + r a) mod `. The signature on m is (r; s).

61 Anybody can verify signature given m and (r; s): Comute w 1 s 1 h(m) mod ` and w 2 s 1 r mod `. Check whether the y-coordinate of w 1 P + w 2 P equals A r modulo ` and if so, accet signature. Alice s signatures are valid: w 1 P + w 2 P = A (s 1 h(m))p + (s 1 r)p = A (s 1 (h(m) + ra))p = kp and so the y-coordinate of this exression equals r, the y-coordinate of kp.

62 Attacker s view on signatures Anybody can roduce an R = kp. Alice s rivate key is only used in s k 1 (h(m) + r a) mod `. Can fake signatures if one can break the DLP, i.e., if one can comute a from P. A Most of this course deals with methods for breaking DLPs. Sometimes attacks are easier: : :

63 If k is known for some m; (r; s) then a (sk h(m))=r mod `. If two signatures m 1 ; (r; s 1 ) and m 2 ; (r; s 2 ) have the same value for r: assume k 1 = k 2 ; observe s 1 s 2 = k 1 1 (h(m 1) + ra (h(m 2 ) + ra)); comute k = (s 1 s 2 )=(h(m 1 ) h(m 2 )). Continue as above. If bits of many k s are known (biased PRNG) can attack s k 1 (h(m) + r a) mod ` as hidden number roblem using lattice basis reduction.

64 Malicious signer Alice can set u her ublic key so that two messages of her choice share the same signature, i.e., she can claim to have signed m 1 or m 2 at will: R = (x 1 ; y 1 ) and R = ( x 1 ; y 1 ) have the same y-coordinate. Thus, (r; s) fits R = kp, s k 1 (h(m 1 ) + ra) mod ` and R = ( k)p, s k 1 (h(m 2 ) + ra) mod ` if a (h(m 1 )+h(m 2 ))=2r mod `.

65 Malicious signer Alice can set u her ublic key so that two messages of her choice share the same signature, i.e., she can claim to have signed m 1 or m 2 at will: R = (x 1 ; y 1 ) and R = ( x 1 ; y 1 ) have the same y-coordinate. Thus, (r; s) fits R = kp, s k 1 (h(m 1 ) + ra) mod ` and R = ( k)p, s k 1 (h(m 2 ) + ra) mod ` if a (h(m 1 )+h(m 2 ))=2r mod `. (Easy tweak: include bit of x 1.)

Elliptic curves. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J. Bernstein

Elliptic curves. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J. Bernstein Elliptic curves Tanja Lange Technische Universiteit Eindhoven with some slides by Daniel J. Bernstein Diffie-Hellman key exchange Pick some generator. Diffie-Hellman key exchange Pick some generator. Diffie-Hellman

More information

Public-key cryptography and the Discrete-Logarithm Problem. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J.

Public-key cryptography and the Discrete-Logarithm Problem. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J. Public-key cryptography and the Discrete-Logarithm Problem Tanja Lange Technische Universiteit Eindhoven with some slides by Daniel J. Bernstein Cryptography Let s understand what our browsers do. Schoolbook

More information

Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven. Tanja Lange Technische Universiteit Eindhoven

Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven. Tanja Lange Technische Universiteit Eindhoven ECCHacks: a gentle introduction to elliptic-curve cryptography Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven Tanja Lange Technische Universiteit Eindhoven ecchacks.cr.yp.to

More information

Signatures and DLP-I. Tanja Lange Technische Universiteit Eindhoven

Signatures and DLP-I. Tanja Lange Technische Universiteit Eindhoven Signatures and DLP-I Tanja Lange Technische Universiteit Eindhoven How to compute ap Use binary representation of a to compute a(x; Y ) in blog 2 ac doublings and at most that many additions. E.g. a =

More information

Elliptic Curves and Cryptography

Elliptic Curves and Cryptography Ellitic Curves and Crytograhy Background in Ellitic Curves We'll now turn to the fascinating theory of ellitic curves. For simlicity, we'll restrict our discussion to ellitic curves over Z, where is a

More information

A Public-Key Cryptosystem Based on Lucas Sequences

A Public-Key Cryptosystem Based on Lucas Sequences Palestine Journal of Mathematics Vol. 1(2) (2012), 148 152 Palestine Polytechnic University-PPU 2012 A Public-Key Crytosystem Based on Lucas Sequences Lhoussain El Fadil Communicated by Ayman Badawi MSC2010

More information

Cryptanalysis of Pseudorandom Generators

Cryptanalysis of Pseudorandom Generators CSE 206A: Lattice Algorithms and Alications Fall 2017 Crytanalysis of Pseudorandom Generators Instructor: Daniele Micciancio UCSD CSE As a motivating alication for the study of lattice in crytograhy we

More information

Signatures and DLP. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J. Bernstein

Signatures and DLP. Tanja Lange Technische Universiteit Eindhoven. with some slides by Daniel J. Bernstein Signatures and DLP Tanja Lange Technische Universiteit Eindhoven with some slides by Daniel J. Bernstein ECDSA Users can sign messages using Edwards curves. Take a point P on an Edwards curve modulo a

More information

ECDLP course. Daniel J. Bernstein University of Illinois at Chicago. Tanja Lange Technische Universiteit Eindhoven

ECDLP course. Daniel J. Bernstein University of Illinois at Chicago. Tanja Lange Technische Universiteit Eindhoven ECDLP course Daniel J. Bernstein University of Illinois at Chicago Tanja Lange Technische Universiteit Eindhoven Main goal of this course: We are the attackers. We want to break ECC. Enemy: ECC users.

More information

1. Introduction. 2. Background of elliptic curve group. Identity-based Digital Signature Scheme Without Bilinear Pairings

1. Introduction. 2. Background of elliptic curve group. Identity-based Digital Signature Scheme Without Bilinear Pairings Identity-based Digital Signature Scheme Without Bilinear Pairings He Debiao, Chen Jianhua, Hu Jin School of Mathematics Statistics, Wuhan niversity, Wuhan, Hubei, China, 43007 Abstract: Many identity-based

More information

CDH/DDH-Based Encryption. K&L Sections , 11.4.

CDH/DDH-Based Encryption. K&L Sections , 11.4. CDH/DDH-Based Encrytion K&L Sections 8.3.1-8.3.3, 11.4. 1 Cyclic grous A finite grou G of order q is cyclic if it has an element g of q. { 0 1 2 q 1} In this case, G = g = g, g, g,, g ; G is said to be

More information

Cryptography. Lecture 8. Arpita Patra

Cryptography. Lecture 8. Arpita Patra Crytograhy Lecture 8 Arita Patra Quick Recall and Today s Roadma >> Hash Functions- stands in between ublic and rivate key world >> Key Agreement >> Assumtions in Finite Cyclic grous - DL, CDH, DDH Grous

More information

Cryptography Assignment 3

Cryptography Assignment 3 Crytograhy Assignment Michael Orlov orlovm@cs.bgu.ac.il) Yanik Gleyzer yanik@cs.bgu.ac.il) Aril 9, 00 Abstract Solution for Assignment. The terms in this assignment are used as defined in [1]. In some

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

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding Outline EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Error detection using arity Hamming code for error detection/correction Linear Feedback Shift

More information

Public Key Cryptography

Public Key Cryptography Public Key Cryptography Introduction Public Key Cryptography Unlike symmetric key, there is no need for Alice and Bob to share a common secret Alice can convey her public key to Bob in a public communication:

More information

Public Key Cryptosystems RSA

Public Key Cryptosystems RSA Public Key Crytosystems RSA 57 17 Receiver Sender 41 19 and rime 53 Attacker 47 Public Key Crytosystems RSA Comute numbers n = * 2337 323 57 17 Receiver Sender 41 19 and rime 53 Attacker 2491 47 Public

More information

Public-key Cryptography and elliptic curves

Public-key Cryptography and elliptic curves Public-key Cryptography and elliptic curves Dan Nichols University of Massachusetts Amherst nichols@math.umass.edu WINRS Research Symposium Brown University March 4, 2017 Cryptography basics Cryptography

More information

Advanced Cryptography Midterm Exam

Advanced Cryptography Midterm Exam Advanced Crytograhy Midterm Exam Solution Serge Vaudenay 17.4.2012 duration: 3h00 any document is allowed a ocket calculator is allowed communication devices are not allowed the exam invigilators will

More information

CIS 6930/4930 Computer and Network Security. Topic 5.2 Public Key Cryptography

CIS 6930/4930 Computer and Network Security. Topic 5.2 Public Key Cryptography CIS 6930/4930 Computer and Network Security Topic 5.2 Public Key Cryptography 1 Diffie-Hellman Key Exchange 2 Diffie-Hellman Protocol For negotiating a shared secret key using only public communication

More information

SQUARES IN Z/NZ. q = ( 1) (p 1)(q 1)

SQUARES IN Z/NZ. q = ( 1) (p 1)(q 1) SQUARES I Z/Z We study squares in the ring Z/Z from a theoretical and comutational oint of view. We resent two related crytograhic schemes. 1. SQUARES I Z/Z Consider for eamle the rime = 13. Write the

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

Message Authentication Codes (MACs)

Message Authentication Codes (MACs) Message Authentication Codes (MACs) Tung Chou Technische Universiteit Eindhoven, The Netherlands October 8, 2015 1 / 22 About Me 2 / 22 About Me Tung Chou (Tony) 2 / 22 About Me Tung Chou (Tony) Ph.D.

More information

Lecture 19: Public-key Cryptography (Diffie-Hellman Key Exchange & ElGamal Encryption) Public-key Cryptography

Lecture 19: Public-key Cryptography (Diffie-Hellman Key Exchange & ElGamal Encryption) Public-key Cryptography Lecture 19: (Diffie-Hellman Key Exchange & ElGamal Encryption) Recall In private-key cryptography the secret-key sk is always established ahead of time The secrecy of the private-key cryptography relies

More information

MATH 158 FINAL EXAM 20 DECEMBER 2016

MATH 158 FINAL EXAM 20 DECEMBER 2016 MATH 158 FINAL EXAM 20 DECEMBER 2016 Name : The exam is double-sided. Make sure to read both sides of each page. The time limit is three hours. No calculators are permitted. You are permitted one page

More information

Lecture 1: Introduction to Public key cryptography

Lecture 1: Introduction to Public key cryptography Lecture 1: Introduction to Public key cryptography Thomas Johansson T. Johansson (Lund University) 1 / 44 Key distribution Symmetric key cryptography: Alice and Bob share a common secret key. Some means

More information

HILA5 Pindakaas: On the CCA security of lattice-based encryption with error correction

HILA5 Pindakaas: On the CCA security of lattice-based encryption with error correction HILA5 Pindakaas: On the CCA security of lattice-based encryption with error correction Daniel J. Bernstein 1 Leon Groot Bruinderink 2 Tanja Lange 2 Lorenz Panny 2 1 University of Illinois at Chicago 2

More information

Selecting Elliptic Curves for Cryptography Real World Issues

Selecting Elliptic Curves for Cryptography Real World Issues Selecting Elliptic Curves for Cryptography Real World Issues Michael Naehrig Cryptography Research Group Microsoft Research UW Number Theory Seminar Seattle, 28 April 2015 Elliptic Curve Cryptography 1985:

More information

14 Diffie-Hellman Key Agreement

14 Diffie-Hellman Key Agreement 14 Diffie-Hellman Key Agreement 14.1 Cyclic Groups Definition 14.1 Example Let д Z n. Define д n = {д i % n i Z}, the set of all powers of д reduced mod n. Then д is called a generator of д n, and д n

More information

Cryptography and Security Final Exam

Cryptography and Security Final Exam Cryptography and Security Final Exam Serge Vaudenay 17.1.2017 duration: 3h no documents allowed, except one 2-sided sheet of handwritten notes a pocket calculator is allowed communication devices are not

More information

Digital Signatures. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay

Digital Signatures. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay Digital Signatures Saravanan Vijayakumaran sarva@ee.iitb.ac.in Department of Electrical Engineering Indian Institute of Technology Bombay July 24, 2018 1 / 29 Group Theory Recap Groups Definition A set

More information

CS 6260 Some number theory. Groups

CS 6260 Some number theory. Groups Let Z = {..., 2, 1, 0, 1, 2,...} denote the set of integers. Let Z+ = {1, 2,...} denote the set of ositive integers and = {0, 1, 2,...} the set of non-negative integers. If a, are integers with > 0 then

More information

The Elliptic Curve in https

The Elliptic Curve in https The Elliptic Curve in https Marco Streng Universiteit Leiden 25 November 2014 Marco Streng (Universiteit Leiden) The Elliptic Curve in https 25-11-2014 1 The s in https:// HyperText Transfer Protocol

More information

A Modified Menezes-Vanstone Elliptic Curve Multi-Keys Cryptosystem

A Modified Menezes-Vanstone Elliptic Curve Multi-Keys Cryptosystem A Modified Menezes-Vanstone Ellitic Curve Multi-Keys Crytosystem By K.H. Rahouma Electrical Technology Deartment Technical College in Riyadh Riyadh, Kingdom of Saudi Arabia E-mail: kamel_rahouma@yahoo.com

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

Math 4400/6400 Homework #8 solutions. 1. Let P be an odd integer (not necessarily prime). Show that modulo 2,

Math 4400/6400 Homework #8 solutions. 1. Let P be an odd integer (not necessarily prime). Show that modulo 2, MATH 4400 roblems. Math 4400/6400 Homework # solutions 1. Let P be an odd integer not necessarily rime. Show that modulo, { P 1 0 if P 1, 7 mod, 1 if P 3, mod. Proof. Suose that P 1 mod. Then we can write

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

HENSEL S LEMMA KEITH CONRAD

HENSEL S LEMMA KEITH CONRAD HENSEL S LEMMA KEITH CONRAD 1. Introduction In the -adic integers, congruences are aroximations: for a and b in Z, a b mod n is the same as a b 1/ n. Turning information modulo one ower of into similar

More information

Introduction to Elliptic Curve Cryptography

Introduction to Elliptic Curve Cryptography Indian Statistical Institute Kolkata May 19, 2017 ElGamal Public Key Cryptosystem, 1984 Key Generation: 1 Choose a suitable large prime p 2 Choose a generator g of the cyclic group IZ p 3 Choose a cyclic

More information

8 Elliptic Curve Cryptography

8 Elliptic Curve Cryptography 8 Elliptic Curve Cryptography 8.1 Elliptic Curves over a Finite Field For the purposes of cryptography, we want to consider an elliptic curve defined over a finite field F p = Z/pZ for p a prime. Given

More information

Public-Key Cryptography. Lecture 9 Public-Key Encryption Diffie-Hellman Key-Exchange

Public-Key Cryptography. Lecture 9 Public-Key Encryption Diffie-Hellman Key-Exchange Public-Key Cryptography Lecture 9 Public-Key Encryption Diffie-Hellman Key-Exchange Shared/Symmetric-Key Encryption (a.k.a. private-key encryption) SKE: Syntax KeyGen outputs K K E scheme E Syntax a.k.a.

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

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

AN IMPROVED BABY-STEP-GIANT-STEP METHOD FOR CERTAIN ELLIPTIC CURVES. 1. Introduction

AN IMPROVED BABY-STEP-GIANT-STEP METHOD FOR CERTAIN ELLIPTIC CURVES. 1. Introduction J. Al. Math. & Comuting Vol. 20(2006), No. 1-2,. 485-489 AN IMPROVED BABY-STEP-GIANT-STEP METHOD FOR CERTAIN ELLIPTIC CURVES BYEONG-KWEON OH, KIL-CHAN HA AND JANGHEON OH Abstract. In this aer, we slightly

More information

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculty of Mathematics and Computer Science Exam Cryptology, Tuesday 30 October 2018

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculty of Mathematics and Computer Science Exam Cryptology, Tuesday 30 October 2018 Faculty of Mathematics and Computer Science Exam Cryptology, Tuesday 30 October 2018 Name : TU/e student number : Exercise 1 2 3 4 5 total points Notes: Please hand in all sheets at the end of the exam.

More information

MATH 2710: NOTES FOR ANALYSIS

MATH 2710: NOTES FOR ANALYSIS MATH 270: NOTES FOR ANALYSIS The main ideas we will learn from analysis center around the idea of a limit. Limits occurs in several settings. We will start with finite limits of sequences, then cover infinite

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

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

Digital Signatures. Adam O Neill based on

Digital Signatures. Adam O Neill based on Digital Signatures Adam O Neill based on http://cseweb.ucsd.edu/~mihir/cse207/ Signing by hand COSMO ALICE ALICE Pay Bob $100 Cosmo Alice Alice Bank =? no Don t yes pay Bob Signing electronically SIGFILE

More information

High-speed cryptography, part 3: more cryptosystems. Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven

High-speed cryptography, part 3: more cryptosystems. Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven High-speed cryptography, part 3: more cryptosystems Daniel J. Bernstein University of Illinois at Chicago & Technische Universiteit Eindhoven Cryptographers Working systems Cryptanalytic algorithm designers

More information

CRYPTOGRAPHY AND NUMBER THEORY

CRYPTOGRAPHY AND NUMBER THEORY CRYPTOGRAPHY AND NUMBER THEORY XINYU SHI Abstract. In this paper, we will discuss a few examples of cryptographic systems, categorized into two different types: symmetric and asymmetric cryptography. We

More information

Public-Key Cryptosystems CHAPTER 4

Public-Key Cryptosystems CHAPTER 4 Public-Key Cryptosystems CHAPTER 4 Introduction How to distribute the cryptographic keys? Naïve Solution Naïve Solution Give every user P i a separate random key K ij to communicate with every P j. Disadvantage:

More information

Elliptic Curve Computations (1) View the graph and an elliptic curve Graph the elliptic curve y 2 = x 3 x over the real number field R.

Elliptic Curve Computations (1) View the graph and an elliptic curve Graph the elliptic curve y 2 = x 3 x over the real number field R. Elliptic Curve Computations (1) View the graph and an elliptic curve Graph the elliptic curve y 2 = x 3 x over the real number field R. >> v = y^2 - x*(x-1)*(x+1) v = y^2 - x*(x-1)*(x+1) >> ezplot(v, [-1,3,-5,5])

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

Elliptic Curves Spring 2015 Problem Set #1 Due: 02/13/2015

Elliptic Curves Spring 2015 Problem Set #1 Due: 02/13/2015 18.783 Ellitic Curves Sring 2015 Problem Set #1 Due: 02/13/2015 Descrition These roblems are related to the material covered in Lectures 1-2. Some of them require the use of Sage, and you will need to

More information

x 2 a mod m. has a solution. Theorem 13.2 (Euler s Criterion). Let p be an odd prime. The congruence x 2 1 mod p,

x 2 a mod m. has a solution. Theorem 13.2 (Euler s Criterion). Let p be an odd prime. The congruence x 2 1 mod p, 13. Quadratic Residues We now turn to the question of when a quadratic equation has a solution modulo m. The general quadratic equation looks like ax + bx + c 0 mod m. Assuming that m is odd or that b

More information

Edwards coordinates for elliptic curves, part 1

Edwards coordinates for elliptic curves, part 1 Edwards coordinates for elliptic curves, part 1 Tanja Lange Technische Universiteit Eindhoven tanja@hyperelliptic.org joint work with Daniel J. Bernstein 19.10.2007 Tanja Lange http://www.hyperelliptic.org/tanja/newelliptic/

More information

Digital Signature Algorithm

Digital Signature Algorithm Çetin Kaya Koç koc@cs.ucsb.edu Çetin Kaya Koç http://koclab.org Winter 2017 1 / 11 DSA: The is a US standard, proposed in 1991 by the NIST Along with the DSA, the hash function SHA-1 was also specified

More information

Introduction to Arithmetic Geometry Fall 2013 Lecture #10 10/8/2013

Introduction to Arithmetic Geometry Fall 2013 Lecture #10 10/8/2013 18.782 Introduction to Arithmetic Geometry Fall 2013 Lecture #10 10/8/2013 In this lecture we lay the groundwork needed to rove the Hasse-Minkowski theorem for Q, which states that a quadratic form over

More information

b = 10 a, is the logarithm of b to the base 10. Changing the base to e we obtain natural logarithms, so a = ln b means that b = e a.

b = 10 a, is the logarithm of b to the base 10. Changing the base to e we obtain natural logarithms, so a = ln b means that b = e a. INTRODUCTION TO CRYPTOGRAPHY 5. Discrete Logarithms Recall the classical logarithm for real numbers: If we write b = 10 a, then a = log 10 b is the logarithm of b to the base 10. Changing the base to e

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

(Workshop on Harmonic Analysis on symmetric spaces I.S.I. Bangalore : 9th July 2004) B.Sury

(Workshop on Harmonic Analysis on symmetric spaces I.S.I. Bangalore : 9th July 2004) B.Sury Is e π 163 odd or even? (Worksho on Harmonic Analysis on symmetric saces I.S.I. Bangalore : 9th July 004) B.Sury e π 163 = 653741640768743.999999999999.... The object of this talk is to exlain this amazing

More information

.4. Congruences. We say that a is congruent to b modulo N i.e. a b mod N i N divides a b or equivalently i a%n = b%n. So a is congruent modulo N to an

.4. Congruences. We say that a is congruent to b modulo N i.e. a b mod N i N divides a b or equivalently i a%n = b%n. So a is congruent modulo N to an . Modular arithmetic.. Divisibility. Given ositive numbers a; b, if a 6= 0 we can write b = aq + r for aroriate integers q; r such that 0 r a. The number r is the remainder. We say that a divides b (or

More information

SIGNATURE SCHEMES & CRYPTOGRAPHIC HASH FUNCTIONS. CIS 400/628 Spring 2005 Introduction to Cryptography

SIGNATURE SCHEMES & CRYPTOGRAPHIC HASH FUNCTIONS. CIS 400/628 Spring 2005 Introduction to Cryptography SIGNATURE SCHEMES & CRYPTOGRAPHIC HASH FUNCTIONS CIS 400/628 Spring 2005 Introduction to Cryptography This is based on Chapter 8 of Trappe and Washington DIGITAL SIGNATURES message sig 1. How do we bind

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

Elliptic Curve Cryptography

Elliptic Curve Cryptography The State of the Art of Elliptic Curve Cryptography Ernst Kani Department of Mathematics and Statistics Queen s University Kingston, Ontario Elliptic Curve Cryptography 1 Outline 1. ECC: Advantages and

More information

True & Deterministic Random Number Generators

True & Deterministic Random Number Generators True & Deterministic Random Number Generators Çetin Kaya Koç http://cs.ucsb.edu/~koc koc@cs.ucsb.edu 1.0 0.5 1.0 0.5 0.5 1.0 0.5 1.0 Koç (http://cs.ucsb.edu/~koc) HRL RNG April 11, 2013 1 / 47 Random Numbers

More information

Practice Assignment 2 Discussion 24/02/ /02/2018

Practice Assignment 2 Discussion 24/02/ /02/2018 German University in Cairo Faculty of MET (CSEN 1001 Computer and Network Security Course) Dr. Amr El Mougy 1 RSA 1.1 RSA Encryption Practice Assignment 2 Discussion 24/02/2018-29/02/2018 Perform encryption

More information

Lattice Attacks on the DGHV Homomorphic Encryption Scheme

Lattice Attacks on the DGHV Homomorphic Encryption Scheme Lattice Attacks on the DGHV Homomorhic Encrytion Scheme Abderrahmane Nitaj 1 and Tajjeeddine Rachidi 2 1 Laboratoire de Mathématiques Nicolas Oresme Université de Caen Basse Normandie, France abderrahmanenitaj@unicaenfr

More information

An Overview of Witt Vectors

An Overview of Witt Vectors An Overview of Witt Vectors Daniel Finkel December 7, 2007 Abstract This aer offers a brief overview of the basics of Witt vectors. As an alication, we summarize work of Bartolo and Falcone to rove that

More information

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security CPSC 467b: Cryptography and Computer Security Instructor: Michael Fischer Lecture by Ewa Syta Lecture 13 March 3, 2013 CPSC 467b, Lecture 13 1/52 Elliptic Curves Basics Elliptic Curve Cryptography CPSC

More information

Other Public-Key Cryptosystems

Other Public-Key Cryptosystems Other Public-Key Cryptosystems Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-11/

More information

L7. Diffie-Hellman (Key Exchange) Protocol. Rocky K. C. Chang, 5 March 2015

L7. Diffie-Hellman (Key Exchange) Protocol. Rocky K. C. Chang, 5 March 2015 L7. Diffie-Hellman (Key Exchange) Protocol Rocky K. C. Chang, 5 March 2015 1 Outline The basic foundation: multiplicative group modulo prime The basic Diffie-Hellman (DH) protocol The discrete logarithm

More information

Primes - Problem Sheet 5 - Solutions

Primes - Problem Sheet 5 - Solutions Primes - Problem Sheet 5 - Solutions Class number, and reduction of quadratic forms Positive-definite Q1) Aly the roof of Theorem 5.5 to find reduced forms equivalent to the following, also give matrices

More information

Practice Final Solutions

Practice Final Solutions Practice Final Solutions 1. True or false: (a) If a is a sum of three squares, and b is a sum of three squares, then so is ab. False: Consider a 14, b 2. (b) No number of the form 4 m (8n + 7) can be written

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

CPSC 467b: Cryptography and Computer Security

CPSC 467b: Cryptography and Computer Security CPSC 467b: Cryptography and Computer Security Michael J. Fischer Lecture 11 February 21, 2013 CPSC 467b, Lecture 11 1/27 Discrete Logarithm Diffie-Hellman Key Exchange ElGamal Key Agreement Primitive Roots

More information

Cryptography IV: Asymmetric Ciphers

Cryptography IV: Asymmetric Ciphers Cryptography IV: Asymmetric Ciphers Computer Security Lecture 7 David Aspinall School of Informatics University of Edinburgh 31st January 2011 Outline Background RSA Diffie-Hellman ElGamal Summary Outline

More information

AP Calculus Testbank (Chapter 10) (Mr. Surowski)

AP Calculus Testbank (Chapter 10) (Mr. Surowski) AP Calculus Testbank (Chater 1) (Mr. Surowski) Part I. Multile-Choice Questions 1. The grah in the xy-lane reresented by x = 3 sin t and y = cost is (A) a circle (B) an ellise (C) a hyerbola (D) a arabola

More information

CPSC 467: Cryptography and Computer Security

CPSC 467: Cryptography and Computer Security CPSC 467: Cryptography and Computer Security Michael J. Fischer Lecture 11 October 7, 2015 CPSC 467, Lecture 11 1/37 Digital Signature Algorithms Signatures from commutative cryptosystems Signatures from

More information

Multiplicative group law on the folium of Descartes

Multiplicative group law on the folium of Descartes Multilicative grou law on the folium of Descartes Steluţa Pricoie and Constantin Udrişte Abstract. The folium of Descartes is still studied and understood today. Not only did it rovide for the roof of

More information

Number theory (Chapter 4)

Number theory (Chapter 4) EECS 203 Spring 2016 Lecture 12 Page 1 of 8 Number theory (Chapter 4) Review Compute 6 11 mod 13 in an efficient way What is the prime factorization of 100? 138? What is gcd(100, 138)? What is lcm(100,138)?

More information

MTH234 Chapter 15 - Multiple Integrals Michigan State University

MTH234 Chapter 15 - Multiple Integrals Michigan State University MTH24 Chater 15 - Multile Integrals Michigan State University 6 Surface Area Just as arc length is an alication of a single integral, surface area is an alication of double integrals. In 15.6 we comute

More information

Overview. Public Key Algorithms II

Overview. Public Key Algorithms II Public Key Algorithms II Dr. Arjan Durresi Louisiana State University Baton Rouge, LA 70810 Durresi@csc.lsu.Edu These slides are available at: http://www.csc.lsu.edu/~durresi/csc4601-04/ Louisiana State

More information

Public Key Algorithms

Public Key Algorithms Public Key Algorithms Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-09/

More information

Introduction to Cryptography. Lecture 8

Introduction to Cryptography. Lecture 8 Introduction to Cryptography Lecture 8 Benny Pinkas page 1 1 Groups we will use Multiplication modulo a prime number p (G, ) = ({1,2,,p-1}, ) E.g., Z 7* = ( {1,2,3,4,5,6}, ) Z p * Z N * Multiplication

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

Notes for Lecture 17

Notes for Lecture 17 U.C. Berkeley CS276: Cryptography Handout N17 Luca Trevisan March 17, 2009 Notes for Lecture 17 Scribed by Matt Finifter, posted April 8, 2009 Summary Today we begin to talk about public-key cryptography,

More information

CPSC 467: Cryptography and Computer Security

CPSC 467: Cryptography and Computer Security CPSC 467: Cryptography and Computer Security Michael J. Fischer 1 Lecture 13 October 16, 2017 (notes revised 10/23/17) 1 Derived from lecture notes by Ewa Syta. CPSC 467, Lecture 13 1/57 Elliptic Curves

More information

Hyperelliptic-curve cryptography. D. J. Bernstein University of Illinois at Chicago

Hyperelliptic-curve cryptography. D. J. Bernstein University of Illinois at Chicago Hyperelliptic-curve cryptography D. J. Bernstein University of Illinois at Chicago Thanks to: NSF DMS 0140542 NSF ITR 0716498 Alfred P. Sloan Foundation Two parts to this talk: 1. Elliptic curves; modern

More information

QUADRATIC RECIPROCITY

QUADRATIC RECIPROCITY QUADRATIC RECIPROCITY JORDAN SCHETTLER Abstract. The goals of this roject are to have the reader(s) gain an areciation for the usefulness of Legendre symbols and ultimately recreate Eisenstein s slick

More information

Lecture 28: Public-key Cryptography. Public-key Cryptography

Lecture 28: Public-key Cryptography. Public-key Cryptography Lecture 28: Recall In private-key cryptography the secret-key sk is always established ahead of time The secrecy of the private-key cryptography relies on the fact that the adversary does not have access

More information

Lattices. A Lattice is a discrete subgroup of the additive group of n-dimensional space R n.

Lattices. A Lattice is a discrete subgroup of the additive group of n-dimensional space R n. Lattices A Lattice is a discrete subgroup of the additive group of n-dimensional space R n. Lattices have many uses in cryptography. They may be used to define cryptosystems and to break other ciphers.

More information

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculty of Mathematics and Computer Science Exam Cryptology, Friday 25 January 2019

TECHNISCHE UNIVERSITEIT EINDHOVEN Faculty of Mathematics and Computer Science Exam Cryptology, Friday 25 January 2019 Faculty of Mathematics and Computer Science Exam Cryptology, Friday 25 January 2019 Name : TU/e student number : Exercise 1 2 3 4 5 total points Notes: Please hand in all sheets at the end of the exam.

More information

Elliptic curves: Theory and Applications. Day 4: The discrete logarithm problem.

Elliptic curves: Theory and Applications. Day 4: The discrete logarithm problem. Elliptic curves: Theory and Applications. Day 4: The discrete logarithm problem. Elisa Lorenzo García Université de Rennes 1 14-09-2017 Elisa Lorenzo García (Rennes 1) Elliptic Curves 4 14-09-2017 1 /

More information

Elliptic Curve Cryptography

Elliptic Curve Cryptography AIMS-VOLKSWAGEN STIFTUNG WORKSHOP ON INTRODUCTION TO COMPUTER ALGEBRA AND APPLICATIONS Douala, Cameroon, October 12, 2017 Elliptic Curve Cryptography presented by : BANSIMBA Gilda Rech BANSIMBA Gilda Rech

More information

Intro to Public Key Cryptography Diffie & Hellman Key Exchange

Intro to Public Key Cryptography Diffie & Hellman Key Exchange Introduction to Modern Cryptography Lecture 5 Number Theory: 1. Quadratic residues. 2. The discrete log problem. Intro to Public Key Cryptography Diffie & Hellman Key Exchange Course Summary - Math Part

More information

Introduction to Modern Cryptography. Lecture RSA Public Key CryptoSystem 2. One way Trapdoor Functions

Introduction to Modern Cryptography. Lecture RSA Public Key CryptoSystem 2. One way Trapdoor Functions Introduction to Modern Cryptography Lecture 7 1. RSA Public Key CryptoSystem 2. One way Trapdoor Functions Diffie and Hellman (76) New Directions in Cryptography Split the Bob s secret key K to two parts:

More information

Randomness Extraction in finite fields F p

Randomness Extraction in finite fields F p Randomness Extraction in finite fields F n Abdoul Aziz Ciss École doctorale de Mathématiques et d Informatique, Université Cheikh Anta Dio de Dakar, Sénégal BP: 5005, Dakar Fann abdoul.ciss@ucad.edu.sn,

More information

Polynomial Interpolation in the Elliptic Curve Cryptosystem

Polynomial Interpolation in the Elliptic Curve Cryptosystem Journal of Mathematics and Statistics 7 (4): 326-331, 2011 ISSN 1549-3644 2011 Science Publications Polynomial Interpolation in the Elliptic Curve Cryptosystem Liew Khang Jie and Hailiza Kamarulhaili School

More information