Mathematics of Cryptography

Slides:



Advertisements
Similar presentations
1 Lect. 12: Number Theory. Contents Prime and Relative Prime Numbers Modular Arithmetic Fermat’s and Euler’s Theorem Extended Euclid’s Algorithm.
Advertisements

Cryptography and Network Security
Chapter 8 – Introduction to Number Theory. Prime Numbers prime numbers only have divisors of 1 and self –they cannot be written as a product of other.
Section 4.1: Primes, Factorization, and the Euclidean Algorithm Practice HW (not to hand in) From Barr Text p. 160 # 6, 7, 8, 11, 12, 13.
Chapter 8 Introduction To Number Theory. Prime Numbers Prime numbers only have divisors of 1 and Prime numbers only have divisors of 1 and self. self.
Chapter 8 Introduction to Number Theory. Prime Numbers prime numbers only have divisors of 1 and self –they cannot be written as a product of other numbers.
Primality Testing Patrick Lee 12 July 2003 (updated on 13 July 2003)
Public Key Cryptosystems - RSA Receiver Sender Eavesdroppe r p q p q p q p and q prime.
22C:19 Discrete Structures Integers and Modular Arithmetic
Week 3 - Friday.  What did we talk about last time?  AES  Public key cryptography.
22C:19 Discrete Math Integers and Modular Arithmetic Fall 2010 Sukumar Ghosh.
1 Chapter 7– Introduction to Number Theory Instructor: 孫宏民 Room: EECS 6402, Tel: , Fax :
The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
Complexity1 Pratt’s Theorem Proved. Complexity2 Introduction So far, we’ve reduced proving PRIMES  NP to proving a number theory claim. This is our next.
Chapter 8 – Introduction to Number Theory Prime Numbers

Mathematics of Cryptography Part I: Modular Arithmetic
1 Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown Chapter 4 – Finite Fields.
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
YSLInformation Security -- Public-Key Cryptography1 Prime and Relatively Prime Numbers Divisors: We say that b  0 divides a if a = mb for some m, where.
Chinese Remainder Theorem Dec 29 Picture from ………………………
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
1 Section Congruences In short, a congruence relation is an equivalence relation on the carrier of an algebra such that the operations of the algebra.
Tuesday’s lecture: Today’s lecture: One-way permutations (OWPs)
Internet Engineering Czesław Smutnicki Discrete Mathematics – Numbers Theory.
Ch1 - Algorithms with numbers Basic arithmetic Basic arithmetic Addition Addition Multiplication Multiplication Division Division Modular arithmetic Modular.
Week 4 - Wednesday.  What did we talk about last time?  Finished DES  AES.
CS480 Cryptography and Information Security
Lecture 5 Asymmetric Cryptography. Private-Key Cryptography Traditional private/secret/single key cryptography uses one key Shared by both sender and.
MA/CSSE 473 Day 9 Primality Testing Encryption Intro.
Revision. Cryptography depends on some properties of prime numbers. One of these is that it is rather easy to generate large prime numbers, but much harder.
Number-Theoretic Algorithms
MA/CSSE 473 Day 07 Extended Euclid's Algorithm Modular Division
Public Key Cryptography
Public Key Encryption Major topics The RSA scheme was devised in 1978
Introduction to Number Theory
B504/I538: Introduction to Cryptography
Chapter Applications of Number Theory Some Useful Results
Topic 12: Number Theory Basics (2)
CS 2210:0001Discrete Structures Modular Arithmetic and Cryptography
Introduction to Cryptography
Advanced Algorithms Analysis and Design
Lecture 3.2: Public Key Cryptography II
Numerical Algorithms x x-1 Numerical Algorithms
Chinese Remainder Theorem
RSA Preliminaries.
Number-Theoretic Algorithms (UNIT-4)
Cryptography and Network Security
MA/CSSE 473 Day 08 Randomized Primality Testing Carmichael Numbers
Introduction to Number Theory
RSA and El Gamal Cryptosystems
Public Key Cryptosystems - RSA
Numerical Algorithms x x-1
Number Theory (Chapter 7)
Cryptography and Network Security
Computer Security Modular Arithmetic November 12, 2018
Private-Key Cryptography
Number Theory and Euclidean Algorithm
Prime and Relatively Prime Numbers
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Introduction to Cryptography
Modular Arithmetic and the RSA Cryptosystem
Systems Architecture I
Discrete Math for CS CMPSC 360 LECTURE 13 Last time:
Classical Ciphers – 2 CSCI284 Spring 2004 GWU
Tuesday, 27 April Number-Theoretic Algorithms Chapter 31
Copyright © Zeph Grunschlag,
Patrick Lee 12 July 2003 (updated on 13 July 2003)
Presentation transcript:

Mathematics of Cryptography Number Theory Modular Arithmetic: Two numbers equivalent mod n if their difference is multiple of n example: 7 and 10 are equivalent mod 3 but not mod 4 7 mod 3 ≡ 10 mod 3 = 1; 7 mod 4 = 3, 10 mod 4 = 2.

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Look at the applet

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number.

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p;

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p;

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p a2t+2 = a mod p;

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p a2t+2 = a mod p; a2(t+1) = a mod p;

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p a2t+2 = a mod p; a2(t+1) = a mod p; (at+1)2 = a mod p

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p a2t+2 = a mod p; a2(t+1) = a mod p; (at+1)2 = a mod p 4. so, if p = 4t + 3, then find the t, the square root of a is at+1

Mathematics of Cryptography Modulo arithmetic – Fermat's Little Theorem If p is prime and 0 < a < p, then ap-1 = 1 mod p Ex: 3(5-1) = 81 = 1 mod 5 36(29-1) = 37711171281396032013366321198900157303750656 = 1 mod 29 Every number a has either 2 square roots (a, -a ) or 0 square roots Solve x2 = a mod p where p is a prime number. 1. p mod 4 can be either 1 or 3 – suppose it is 3 2. then p = 4t + 3 where t is some positive integer 3. but a(p-1)/2 = 1 mod p; a(4t+3-1)/2 = 1 mod p; a2t+1 = 1 mod p a2t+2 = a mod p; a2(t+1) = a mod p; (at+1)2 = a mod p 4. so, if p = 4t + 3, then find the t, the square root of a is at+1 example: p=19 = 4*4+3, so t=4. Suppose a is 7 7 mod 19 = 75 mod 19 = 11 mod 19 check: 121 mod 19 = 7 mod 19

Mathematics of Cryptography Finding a prime Probability that a random number p is prime: 1/ln(p) For 100 digit number this is 1/230.

Mathematics of Cryptography Finding a prime Probability that a random number p is prime: 1/ln(p) For 100 digit number this is 1/230. But how to test for being prime?

Mathematics of Cryptography Finding a prime Probability that a random number p is prime: 1/ln(p) For 100 digit number this is 1/230. But how to test for being prime? If p is prime and 0 < a < p, then ap-1 = 1 mod p Pr(p isn't prime but ap-1 = 1 mod p) is small

} Mathematics of Cryptography Finding a prime Can always express a number p-1 as 2bc for some odd number c. ex: 48 = 243 Here is the 2b 110101100 Here is the odd number } }

Mathematics of Cryptography Finding a prime Can always express a number p-1 as 2bc for some odd number c. Then can compute ap-1 mod p by computing ac mod p and squaring the result b times. If the result is not 1 then p is not prime.

Mathematics of Cryptography Finding a prime Trivial square roots of 1 mod p : 1 mod p and -1 mod p If p is prime, there are no nontrivial square roots of 1 mod p Let x be a square root of 1 mod p. Then x2 = 1 mod p. Or, (x-1)(x+1) = 0 mod p. But x-1 and x+1 are divisible by prime p. Hence, the product cannot be divisible by p. Therefore x does not exist.

Mathematics of Cryptography Finding a prime Consider p-1 = 2bc again. If p is prime then ac = 1 mod p or for some r < b, a2rc = -1 mod p.

Mathematics of Cryptography Finding a prime Choose a random odd integer p to test. Calculate b = # times 2 divides p-1. Calculate m such that p = 1 + 2b m. Choose a random integer a such that 0 < a < p. If am ≡ 1 mod p || a2jm ≡ -1 mod p, for some 0 ≤ j≤ b-1, then p passes the test. A prime will pass the test for all a.

Mathematics of Cryptography Finding a prime Choose a random odd integer p to test. Calculate b = # times 2 divides p-1. Calculate m such that p = 1 + 2b m. Choose a random integer a such that 0 < a < p. If am ≡ 1 mod p || a2jm ≡ -1 mod p, for some 0 ≤ j≤ b-1, then p passes the test. A prime will pass the test for all a. A non prime number passes the test for at most 1/4 of all possible a. So, repeat N times and probability of error is (1/4)N . Look at the applet

Mathematics of Cryptography Finding a prime – importance to RSA Choose e first, then find p and q so (p-1) and (q-1) are relatively prime to e RSA is no less secure if e is always the same and small Popular values for e are 3 and 65537 For e = 3, though, must pad message or else ciphertext = plaintext Choose p ≡ 2 mod 3 so p-1 = 1 mod 3 so p is relatively prime to e So, choose random odd number, multiply by 3 and add 2, then test for primality

Mathematics of Cryptography Number Theory Modular Arithmetic: Two numbers equivalent mod n if their difference is multiple of n example: 7 and 10 are equivalent mod 3 but not mod 4 7 mod 3 ≡ 10 mod 3 = 1; 7 mod 4 = 3, 10 mod 4 = 2. Greatest Common Divisor: Largest integer that evenly divides two given numbers gcd(3, 7) = 1; gcd(294, 385) = 7; 294 = 42×7; 385 = 55×7;

Mathematics of Cryptography Number Theory Modular Arithmetic: Two numbers equivalent mod n if their difference is multiple of n example: 7 and 10 are equivalent mod 3 but not mod 4 7 mod 3 ≡ 10 mod 3 = 1; 7 mod 4 = 3, 10 mod 4 = 2. Greatest Common Divisor: Largest integer that evenly divides two given numbers gcd(3, 7) = 1; gcd(294, 385) = 7; 294 = 42×7; 385 = 55×7; Given integers m, n, suppose integer r is the smallest for which there exist integers u, v such that r > 0 and u×m + v×n = r then r is the greatest common divisor of m and n.

Mathematics of Cryptography Number Theory Modular Arithmetic: Two numbers equivalent mod n if their difference is multiple of n example: 7 and 10 are equivalent mod 3 but not mod 4 7 mod 3 ≡ 10 mod 3 = 1; 7 mod 4 = 3, 10 mod 4 = 2. Greatest Common Divisor: Largest integer that evenly divides two given numbers gcd(3, 7) = 1; gcd(294, 385) = 7; 294 = 42×7; 385 = 55×7; Given integers m, n, suppose integer r is the smallest for which there exist integers u, v such that r > 0 and u×m + v×n = r then r is the greatest common divisor of m and n. If p > r is common divisor then u×m/p + v×n/p = an integer = r/p < 1

Greatest Common Divisor 385 294

Greatest Common Divisor 385 = 1 R 91 91 = 1×385 - 1×294 294

Greatest Common Divisor 385 = 1 R 91 In other words we need the gcd of 91 + 294 and 294 294

Greatest Common Divisor 385 = 1 R 91 In other words we need the gcd of 91 + 294 and 294 294 But this is the same gcd as for 91 and 294! because (91+294)/a – 294/a = 91/a which must be an integer.

Greatest Common Divisor 385 294 91 = 1×385 - 1×294 294 91

Greatest Common Divisor 385 294 91 = 1×385 - 1×294 294 = 3 R 21 21 = 294 - 3(385 - 294) = -3×385 + 4×294 91

Greatest Common Divisor 385 294 91 = 1×385 - 1×294 294 91 21 = -3×385 + 4×294 91 21

Greatest Common Divisor 385 294 91 = 1×385 - 1×294 294 91 21 = -3×385 + 4×294 91 = 4 R 7 7 = 1×385 -1×294 - 4(-3×385 + 4×294) = 13×385 - 17×294 21

Greatest Common Divisor 385 294 294 91 91 21 7 = 1×385 -1×294 - 4(-3×385 + 4×294) = 13×385 - 17×294 21 7

Greatest Common Divisor 385 294 294 91 91 21 7 = 1×385 -1×294 - 4(-3×385 + 4×294) = 13×385 - 17×294 21 = 3 R 0 7

Greatest Common Divisor 385 294 294 91 91 21 7 = 1×385 -1×294 - 4(-3×385 + 4×294) = 13×385 - 17×294 21 7 So, the gcd of 385 and 294 is 7

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v.

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime.

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42:

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42 =5

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42 42 - 8×5 = 2

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42 42 - 8×5  2 = 1×42 - 8(1×89 - 2×42) = -8×89 + 17×42

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42 42 - 8×5  2 = 1×42 - 8(1×89 - 2×42) = -8×89 + 17×42 5 - 2×2 = 1

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42 42 - 8×5  2 = 1×42 - 8(1×89 - 2×42) = -8×89 + 17×42 5 - 2×2  1 = 1×89 - 2×42 - 2(-8×89 + 17×42) = 17×89 - 36×42

Mathematics of Cryptography Finding Multiplicative Inverses Find an inverse of m mod n. That is, a number u such that u×m = 1 mod n. In other words, find u such that u×m + v×n = 1 for some v. Apply previous algorithm (gcd(m,n)) to get u, v but only if m and n are relatively prime. Example: Inverse of 89 mod 42: 89 - 2×42  5 = 1×89 - 2×42 42 - 8×5  2 = 1×42 - 8(1×89 - 2×42) = -8×89 + 17×42 5 - 2×2  1 = 1×89 - 2×42 - 2(-8×89 + 17×42) = 17×89 - 36×42 Conclusion: 17 is the inverse of 89 mod 42! Look at the applet

Mathematics of Cryptography Chinese Remainder Theorem There are certain things whose number is unknown. Repeatedly divided by 3, the remainder is 2; by 5 the remainder is 3; and by 7 the remainder is 2. What will be the number?

Mathematics of Cryptography Chinese Remainder Theorem There are certain things whose number is unknown. Repeatedly divided by 3, the remainder is 2; by 5 the remainder is 3; and by 7 the remainder is 2. What will be the number? Application: An army general about 2000 years ago sent by messenger a note to the emperor telling how many troops he had. But the number was encrypted in the following way: dividing 602 by 3 gives a remainder of 2 dividing 602 by 5 gives a remainder of 2 dividing 602 by 7 gives a remainder of 0 dividing 602 by 11 gives a remainder of 8 So the message is: 2,2,0,8 It turns out that by the Chinese Remainder Theorem (CRT) it is possible to uniquely determine the number of troops provided all the divisions were by relatively prime numbers.

Mathematics of Cryptography Chinese Remainder Theorem There are certain things whose number is unknown. Repeatedly divided by 3, the remainder is 2; by 5 the remainder is 3; and by 7 the remainder is 2. What will be the number? Application: An old Chinese woman on the way to the market came upon a horse and rider. The horse stepped on her basket and crushed the eggs in her basket. The rider offered to pay for the broken eggs and asked how many eggs were in the basket. She did not remember the exact number, but when she had taken them out two at a time, there was one egg left. The same happened when she picked them out three, four, five, and six at a time, but when she took them seven at a time they came out even. What is the smallest number of eggs she could have had?

Mathematics of Cryptography Chinese Remainder Theorem If the prime factorization of n is n1×n2×...×nk then the system of equations: x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n.

This means, for each 1 ≤ i ≤ k, there is an ri and si such that Mathematics of Cryptography Chinese Remainder Theorem Why? Define ni = n1 n2 ... ni-1ni+1 ... nk This means, for each 1 ≤ i ≤ k, there is an ri and si such that ri ni + si ni = 1 and ri and si can be found using the gcd algorithm. Since ni contains all nj as factors except for ni it is evenly divisible by all but ni. Then si ni = 0 mod nj for all i ≠ j and si ni = 1 mod ni

Mathematics of Cryptography Chinese Remainder Theorem Why? The solution is k x = ∑ ai si ni mod n1 n2 ... nk i=1 Therefore, as a check x mod n1 = a1  1 + a2 0 + a3 0 + ... + ak 0 = a1 x mod n2 = a1  0 + a2 1 + a3 0 + ... + ak 0 = a2 x mod n3 = a1  0 + a2 0 + a3 1 + ... + ak 0 = a3 ... x mod nk = a1  0 + a2 0 + a3 0 + ... + ak 1 = ak

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7 x = 2 mod 3  7×5×(M/3)-1 = 1 mod 3  (M/3)-1 mod 3 = 2

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7 x = 2 mod 3  7×5×(M/3)-1 = 1 mod 3  (M/3)-1 mod 3 = 2 x = 3 mod 5  7×3×(M/5)-1= 1 mod 5  (M/5)-1 mod 5 = 1

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7 x = 2 mod 3  7×5×(M/3)-1 = 1 mod 3  (M/3)-1 mod 3 = 2 x = 3 mod 5  7×3×(M/5)-1= 1 mod 5  (M/5)-1 mod 5 = 1 x = 2 mod 7  5×3×(M/7)-1 =1 mod 7  (M/7)-1 mod 7 = 1

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7 x = 2 mod 3  7×5×(M/3)-1 = 1 mod 3  (M/3)-1 mod 3 = 2 x = 3 mod 5  7×3×(M/5)-1= 1 mod 5  (M/5)-1 mod 5 = 1 x = 2 mod 7  5×3×(M/7)-1 =1 mod 7  (M/7)-1 mod 7 = 1 x = 2×35×2 + 3×21×1 + 2×15×1 mod 3×5×7 = 23

Mathematics of Cryptography Chinese Remainder Theorem x mod n1 = a1 x = a1 mod n1 x mod n2 = a2 x = a2 mod n2 x mod n3 = a3 x = a3 mod n3 ... ... x mod nk = ak x = ak mod nk has a unique solution x given any a1, a2, ..., ak where x < n. First problem: M = 3×5×7, x = 2 mod 3, x = 3 mod 5, x = 2 mod 7 x = 2 mod 3  7×5×(M/3)-1 = 1 mod 3  (M/3)-1 mod 3 = 2 x = 3 mod 5  7×3×(M/5)-1= 1 mod 5  (M/5)-1 mod 5 = 1 x = 2 mod 7  5×3×(M/7)-1 =1 mod 7  (M/7)-1 mod 7 = 1 x = 2×35×2 + 3×21×1 + 2×15×1 mod 3×5×7 = 23 Hence solution(s) is(are): x = 23 also (128, 233, ...)

Mathematics of Cryptography Chinese Remainder Theorem Second problem: x = 1 mod 2  x = 2×t + 1 x = 1 mod 3  x = 3×p + 1 x = 1 mod 4  x = 4×r + 1 x = 1 mod 5  x = 5×s + 1 x = 1 mod 6  x = 6×q + 1 x = 0 mod 7  x = 7×w

Mathematics of Cryptography Chinese Remainder Theorem Second problem: Whoops! not a prime factorization x = 1 mod 2  x = 2×t + 1 x = 1 mod 3  x = 3×p + 1 x = 1 mod 4  x = 4×r + 1 x = 1 mod 5  x = 5×s + 1 x = 1 mod 6  x = 6×q + 1 x = 0 mod 7  x = 7×w so, 2×t = 3×p = 4×r = 5×s = 6×q from last two q = v×5 and s = v×6 but r = 3×q/2 so q = v×2×5 and s = v×2×6 making r = v×3×5 also p = 2×q = v×4×5 and t = 2×r = v×30 so x = 60×v + 1; n = 7×w 7×w = 60×v + 1

Mathematics of Cryptography Chinese Remainder Theorem Immediate consequence: Suppose everyone's RSA public key e part is 3. Consider the same message sent to three people. These are: c[1] = m3 mod n[1] c[2] = m3 mod n[2] c[3] = m3 mod n[3] By the Chinese Remainder Theorem One can compute m3 mod n[1]×n[2]×n[3] Since m is smaller than any of the n[i], m3 is known and taking the cube root finds m.

Mathematics of Cryptography Z*n All numbers less than n that are relatively prime with n Examples: Z*10 = { 1, 3, 7, 9 }; Z*15 = { 1, 2, 4, 7, 8, 11, 13, 14 } If numbers a, b are members of Z*n then so is a×b mod n. Examples: 4×11 mod 15 = 44 mod 15 = 14; 13×14 mod 15 = 182 mod 15 = 2.

Mathematics of Cryptography Z*n All numbers less than n that are relatively prime with n Examples: Z*10 = { 1, 3, 7, 9 }; Z*15 = { 1, 2, 4, 7, 8, 11, 13, 14 } If numbers a, b are members of Z*n then so is a×b mod n. Examples: 4×11 mod 15 = 44 mod 15 = 14; 13×14 mod 15 = 182 mod 15 = 2. Why? Since a and b are relatively prime to n there must be integers s.t. u×a + v×n = 1 and w×b + x×n = 1.

Mathematics of Cryptography Z*n All numbers less than n that are relatively prime with n Examples: Z*10 = { 1, 3, 7, 9 }; Z*15 = { 1, 2, 4, 7, 8, 11, 13, 14 } If numbers a, b are members of Z*n then so is a×b mod n. Examples: 4×11 mod 15 = 44 mod 15 = 14; 13×14 mod 15 = 182 mod 15 = 2. Why? Since a and b are relatively prime to n there must be integers s.t. u×a + v×n = 1 and w×b + x×n = 1. Multiply both equations: (u×w)×a×b + (u×x×a + v×w×b + x×v×n)×n = 1 Hence a×b is relatively prime to n.

Mathematics of Cryptography Euler's Totient Function: Defined: (n) is number of elements in Z*n. Example: (7) = 6 ({1,2,3,4,5,6}) ; (10) = 4 ({1,3,7,9}) Suppose n = p×q and p and q are relatively prime Example: (70): { 1, 3, 9, 11, 13, 17, 19, 23, 27, 29, 31, 33, 37, 39, 41, 43, 47, 51, 53, 57, 59, 61, 67, 69} (70) = (7)(10) = 24. Why?

Mathematics of Cryptography Euler's Totient Function: Defined: (n) is number of elements in Z*n. Example: (7) = 6 ({1,2,3,4,5,6}) ; (10) = 4 ({1,3,7,9}) Suppose n = p×q and p and q are relatively prime Example: (70): { 1, 3, 9, 11, 13, 17, 19, 23, 27, 29, 31, 33, 37, 39, 41, 43, 47, 51, 53, 57, 59, 61, 67, 69} (70) = (7)(10) = 24. Why? By the Chinese Remainder Theorem there is a 1-1 correspondence between a number m and mp = m mod p mq = m mod q

Mathematics of Cryptography Euler's Totient Function: Defined: (n) is number of elements in Z*n. Example: (7) = 6 ({1,2,3,4,5,6}) ; (10) = 4 ({1,3,7,9}) Suppose n = p×q and p and q are relatively prime Example: (70): { 1, 3, 9, 11, 13, 17, 19, 23, 27, 29, 31, 33, 37, 39, 41, 43, 47, 51, 53, 57, 59, 61, 67, 69} (70) = (7)(10) = 24. Why? By the Chinese Remainder Theorem there is a 1-1 correspondence between a number m and mp = m mod p mq = m mod q If m is relatively prime to pq, then there are integers u,v, such that um + vpq = 1.

Mathematics of Cryptography Euler's Totient Function: Substituting m = mp + kp gives ump + (uk + vq)p = 1 so mp is relatively prime to p. Same for mq and q. Therefore, m in Z*pq means mp is in Z*p and mq is in Z*q. Why? By the Chinese Remainder Theorem there is a 1-1 correspondence between a number m and mp = m mod p mq = m mod q If m is relatively prime to pq, then there are integers u,v, such that um + vpq = 1.

Mathematics of Cryptography Euler's Totient Function: Substituting m = mp + kp gives ump + (uk + vq)p = 1 so mp is relatively prime to p. Same for mq and q. Therefore, m in Z*pq means mp is in Z*p and mq is in Z*q. Similar tricks can be used to show that mq in Z*q and mp in Z*p imply m in Z*pq. Why? By the Chinese Remainder Theorem there is a 1-1 correspondence between a number m and mp = m mod p mq = m mod q If m is relatively prime to pq, then there are integers u,v, such that um + vpq = 1.

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, a(n) = 1 mod n. Why? By example: suppose n = 10, a = 3. Multiply all elements of Z*n = { 1, 3, 7, 9 } to get x = 189. But x mod 10 = 9 which is an element of Z*n. The inverse of x is 9.

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, a(n) = 1 mod n. Why? By example: suppose n = 10, a = 3. Multiply all elements of Z*n = { 1, 3, 7, 9 } to get x = 189. But x mod 10 = 9 which is an element of Z*n. The inverse of x is 9. Multiply all elements of Z*n by 3 and multiply all those numbers: (3×1)×(3×3)×(3×7)×(3×9) = 3(n)×x But 3×1 = 3, 3×3 = 9, 3×7 = 1, 3×9 = 7 (all mod 10) Hence a(n)×x = x mod n. So, a(n) = 1 mod n

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, and any non-neg int k, a(k×(n)+1) = a mod n. Why?

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, and any non-neg int k, a(k×(n)+1) = a mod n. Why? a(k×(n)+1) = (a(n))k×a = 1k×a = a

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, and any non-neg int k, a(k×(n)+1) = a mod n. Why? a(k×(n)+1) = (a(n))k×a = 1k×a = a For all a and any non-neg int k, a(k×(n)+1) = a mod n, if n = p×q, p and q are prime then (n) = (p-1)×(q-1)

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, and any non-neg int k, a(k×(n)+1) = a mod n. Why? a(k×(n)+1) = (a(n))k×a = 1k×a = a For all a and any non-neg int k, a(k×(n)+1) = a mod n, if n = p×q, p and q are prime then (n) = (p-1)×(q-1) Why?

Mathematics of Cryptography Euler's Theorem: For all a in Z*n, and any non-neg int k, a(k×(n)+1) = a mod n. Why? a(k×(n)+1) = (a(n))k×a = 1k×a = a For all a and any non-neg int k, a(k×(n)+1) = a mod n, if n = p×q, p and q are prime then (n) = (p-1)×(q-1) Why? Only interesting case: a is a multiple of p or q. Suppose a is a multiple of q. Since a is relatively prime to p, a(p) = 1 mod p. Since (n)=(p)×(q), (mod p) a(k×(n)+1) = (a((p)×(q)))k×a = 1(k×(n))×a = a mod p and a=0 mod q so a(k×(n)+1) = 0 = a mod q. By CRT a(k×(n)+1) = a mod n.

Mathematics of Cryptography RSA: e – relatively prime to (n) d – such that e*d-1 divisible by (n) hence (e*d-1) / (n) = k so e*d = k*(n) + 1 therefore me*d = mk*(n)+1= m mod n