Presentation is loading. Please wait.

Presentation is loading. Please wait.

RSA Prepared by: SITI ZAINAH ADNAN

Similar presentations


Presentation on theme: "RSA Prepared by: SITI ZAINAH ADNAN"— Presentation transcript:

1 RSA Prepared by: SITI ZAINAH ADNAN
If you do have any feedback or comment, please feel free to me at Your cooperation is very much appreciated !

2 RSA Is a famous implementation of public key protocol.
Deviced by Ronald Rivest, Adi Shamir and Len Adleman of MIT in 1977. Algorithm involves multiplication of large (100 digits) prime numbers to produce keys. Difficult to break the product of two large primes into its two prime factors, hence very secure.

3 Number Theory A number of concepts from number theory are essential in the design of public key cryptography Divisors Prime Number Relatively Prime Number Modular Arithmetic

4 Divisors We say that b =/ 0 divides a if a = mb for some m, where a, b, and m are integers That is, b divides a if there is no remainder on division The notation b|a is commonly used to mean b divides a Also, if b|a, we say that d is a divisor of a eg. The positive divisor of 24 are 1, 2, 3, 4, 6, 8, 12, and 24

5 Prime Number An integer p > 1 is a prime number if its only divisors are 1 and itself eg … Any integer a > 1 can be factored in a unique way as a = p1m p2m….pnm where p1 > p2 > …..pn are prime numbers and where each m > 0 eg = 7 x = 7 x 112 x 13

6 Prime Number Therefore, if P is the set of all prime numbers, then any positive integer can be written uniquely as the product of all possible prime numbers eg. 216 = 12 x 18 = (2 x 6) x (2 x 9) = (2 x 2 x 3) x (2 x 3 x 3) = 23 x 32

7 Relative Prime Numbers
We will use the notation gcd(a, b) to mean the greatest common divisor of a and b The positive integer is said to be the greatest common divisor of a and b if c is a divisor of a and of b any divisor of a and b is a divisor of c An equivalent definition is the following: gcd(a, b) = max[ k, such that k|a and k|b]

8 Relative Prime Numbers
We always take the positive value as the greatest common divisor It is easy to determine the greatest common divisor of two positive integers if we express each integer as the product of primes eg. 300 = 22 x 31 x 52 18 = 21 x 32 Therefore, gcd(18, 300) = 21 x 31 x 50 = 6

9 Relative Prime Numbers
The integers a and b are relatively prime if they have no prime factors in common, that is, if their only common factors is 1. This is equivalent to saying that a and b are relatively prime if gcd(a, b) = 1 eg. 8 and 15 are relatively prime because the divisors of 8 are 1, 2, 4, and 8, and the divisors of 15 are 1, 3, 5, and 15. So 1 is the only number on both lists

10 Modular Arithmetic Given any positive integer n and any integer a, we get a quotient q and a remainder r that obey the following relationship: a = qn + r < r < n; q = [a/n] where [x] is the largest integer less than or equal to x eg. a = 11; n = 7; 11 = 1 x 7 + 4; r = 4 Therefore we can say that = 1 x 7 + 4

11 RSA - key generation Select p, q p and q both large prime
Calculate n = p x q Calculate m = (p-1)(q-1) Select integer e gcd(e,m) = 1, 1 < e < m Calculate d de mod m = 1 Public key = { e, n } Private key = { d, n } Keep p, q, m, and d secret Make e and n public

12 RSA encrypt RSA decrypt C = Pe mod n P = Cd mod n
RSA Implementation RSA encrypt RSA decrypt C = Pe mod n P = Cd mod n

13 RSA - example 1 Steps of RSA implementation:
1. Select two prime numbers, p = 7 and q = 17 2. Calculate n = pq = 7 x 17 = 119 3. Calculate m = (7- 1)(17 - 1) = 6 x 16 = 96 4. Select e such that e is relatively prime to m = 96 and less than m, 1 < e < 96 gcd (e, 96) = 1 96 = 1 x 6 x 16 = 1 x 2 x 3 x 8 = 1 x 2 x 3 x 23 = 1 x 24 x 3 Assume that we take the smallest prime number in between of 3 to 96, so e = 5 You also can take other value as long as it fulfils the conditions – it must be relatively prime with 96 and it is less than 96

14 RSA - example 1 5. Determine d such that de = 1 mod 96 and d < 96.
de mod m = 1 d x 5 = ( ? X 96) + 1 1 x = = /5 = 19.4 2 x = = /5 = 38.6 3 x = = /5 = 57.8 4 x = = /5 = 77 Find the value which when the results mod 5 with no remainder The correct value is d = 77, because 77 x 5 = 385 = 4 x You also can take other value as long as it is a positive integer

15 RSA - example 1 Therefore, n = 119, m = 96, e = 5, d = 77
The resulting keys are: Public key = { e, n } and Private key = { d, n} Public key = {5, 119} and Private key = {77, 119} Assume that P is the plaintext and C is the ciphertext The encryption is C = P5 mod 119 The decryption is P = C77 mod 119

16 RSA - example 1 Public key = { e, n } and Private key = { d, n}
Public key = {5, 119} and Private key = {77, 119} Given P = 4 The encryption is C = P5 mod 119 C = 45 mod 119 = 1024 mod 119 = 72 The decryption is P = C77 mod 119 P = 7227 mod 119 = 4

17 RSA - example 2 Steps of RSA implementation:
1. Select two prime numbers, p = 7 and q = 11 2. Calculate n = pq = 7 x 11 = 77 3. Calculate m = (7- 1)(11 - 1) = 6 x 10 = 60 4. Select e such that e is relatively prime to m = 60 and less than m, 1 < e < 60 gcd (e, 60) = 1 60 = 1 x 10 x 6 = 1 x 2 x 5 x 2 x 3 = 1 x 22 x 3 x 5 Assume that we take any prime number in between of 7 to 60, so e = 37 You also can take other value as long as it fulfils the conditions – it must be relatively prime with 60 and it is less than 60

18 RSA - example 2 5. Determine d such that de = 1 mod 60 and d < 60
de mod m = 1 d x 37 = ( ? X 60) + 1 1 x = = /37 = 1.6 2 x = = /37 = 3.2 3 x = = /37 = 4.8 4 x = = /37 = 6.5 5 x = = /37 = 8.1 6 x = = /37 = 9.7 7 x = = /37 = 11.3 8 x = = /37 = 13

19 RSA - example 2 Find the value which when the results mod 5 with no remainder The correct value is d = 13, because 13 x 37 = 481 = 8 x You also can take other value as long as it is a positive integer

20 RSA - example 2 Therefore, n = 77, m = 60, e = 37, d = 13
The resulting keys are: Public key = { e, n } and Private key = { d, n} Public key = {37, 77} and Private key = {13, 77} Assume that P is the plaintext and C is the ciphertext The encryption is C = P37 mod 77 The decryption is P = C13 mod 77

21 RSA - example 2 Public key = { e, n } and Private key = { d, n}
Public key = {37, 77} and Private key = {13, 77} Given P = 5 The encryption is C = P37 mod 77 C = 537 mod 77 = 1024 mod 77 = 47 The decryption is P = C77 mod 119 P = 4713 mod 77 = 5

22 RSA - example 3 Steps of RSA implementation:
1. Select two prime numbers, p = 3 and q = 11 2. Calculate n = pq = 3 x 11 = 33 3. Calculate m = (3- 1)(11 - 1) = 2 x 10 = 20 4. Select e such that e is relatively prime to m = 20 and less than m, 1 < e < 20 gcd (e, 20) = 1 20 = 1 x 2 x 10 = 1 x 2 x 2 x 5 = 1 x 22 x 5 Assume that we take the smallest prime number in between of 2, 5 to 20, so e = 3 You also can take other value as long as it fulfils the conditions – it must be relatively prime with 20 and it is less than 20

23 RSA - example 3 5. Determine d such that de = 1 mod 20 and d < 20
de mod m = 1 d x 3 = ( ? X 20) + 1 1 x = = /3 = 7 2 x = = /3 = 13.6 Find the value which when the results mod 3 with no remainder The correct value is d = 7, because 7 x 3 = 21 = 1 x You also can take other value as long as it is a positive integer

24 RSA - example 3 Therefore, n = 33, m = 20, e = 3, d = 7
The resulting keys are: Public key = { e, n } and Private key = { d, n} Public key = {3, 33} and Private key = {7, 33} Assume that P is the plaintext and C is the ciphertext The encryption is C = P3 mod 33 The decryption is P = C7 mod 33

25 RSA - example 3 Public key = { e, n } and Private key = { d, n}
Public key = {3, 33} and Private key = {7, 33} Given P = 6 The encryption is C = P3 mod 33 C = 63 mod 33 = 216 mod 33 = 18 The decryption is P = C7 mod 33 P = 187 mod 33 = 6

26 RSA - example 4 Steps of RSA implementation:
1. Select two prime numbers, p = 5 and q = 11 2. Calculate n = pq = 5 x 11 = 55 3. Calculate m = (5- 1)(11 - 1) = 4 x 10 = 40 4. Select e such that e is relatively prime to m = 40 and less than m, 1 < e < 40 gcd (e,40) = 1 40 = 1 x 4 x 10 = 1 x 2 x 2 x 2 x 5 = 1 x 23 x 5 Assume that we take the smallest prime number in between of 2, 5 to 40, so e = 3 You also can take other value as long as it fulfils the conditions – it must be relatively prime with 40 and it is less than 40

27 RSA - example 4 5. Determine d such that de = 1 mod 40 and d < 40
de mod m = 1 d x 3 = ( ? X 40) + 1 1 x = = /3 = 13.6 2 x = = /3 = 27 Find the value which when the results mod 3 with no remainder The correct value is d = 27, because 27 x 3 = 81 = 2 x You also can take other value as long as it is a positive integer

28 RSA - example 4 Therefore, n = 55, m = 40, e = 3, d = 27
The resulting keys are: Public key = { e, n } and Private key = { d, n} Public key = {3, 55} and Private key = {27, 55} Assume that P is the plaintext and C is the ciphertext The encryption is C = P3 mod 55 The decryption is P = C27 mod 55

29 RSA - example 4 Public key = { e, n } and Private key = { d, n}
Public key = {3, 55} and Private key = {27, 55} Given P = 4 The encryption is C = P3 mod 55 C = 43 mod 55 = 64 mod 55 = 9 The decryption is P = C27 mod 55 P = 927 mod 55 = 4

30 RSA - example 5 Steps of RSA implementation:
1. Select two prime numbers, p = 11 and q = 17 2. Calculate n = pq = 11 x 17 = 187 3. Calculate m = (11- 1)(17 - 1) = 10 x 16 = 160 4. Select e such that e is relatively prime to m = 160 and less than m, 1 < e < 160 gcd (e,160) = 1 160 = 1 x 10 x 16 = 1 x 2 x 10 x 2 x 8 = 1 x 2 x 2 x 5 x 2 x 2 x 2 = 1 x 26 x 5 Assume that we take the smallest prime number in between of 2, 5 to 160, so e = 3 You also can take other value as long as it fulfils the conditions – it must be relatively prime with 160 and it is less than 160

31 RSA - example 5 5. Determine d such that de = 1 mod 160 and d < 160
de mod m = 1 d x 3 = ( ? X 160) + 1 1 x = = /3 = 53.6 2 x = = /3 = 107 Find the value which when the results mod 3 with no remainder The correct value is d = 107, because 107 x 3 = 321 = 2 x You also can take other value as long as it is a positive integer

32 RSA - example 5 Therefore, n = 187, m = 160, e = 3, d = 107
The resulting keys are: Public key = { e, n } and Private key = { d, n} Public key = {3, 187} and Private key = {107, 187} Assume that P is the plaintext and C is the ciphertext The encryption is C = P3 mod 187 The decryption is P = C107 mod 187

33 RSA - example 5 Public key = {3, 187} and Private key = {107, 187}
Given P = 7 The encryption is C = P3 mod 187 C = 73 mod 187 = 343 mod 187 = 156 The decryption is P = C107 mod 187 P = mod 187 = 7

34 RSA of trap-door function
A trap-door function is a function that is easy to compute ‘forwards’ but hard to compute ‘backwards’ Specifically, it should be fairly cheap to compute the output given the input, but computationally infeasible to recover the input given the output It is also called as a one-way-function is one that maps a domain into a range such that every function value has a unique inverse, with the condition that the calculation of the function is easy whereas the calculation of the inverse is infeasible

35 How secure is your RSA ? With the knowledge of Public key = {3, 187} and ciphertext, C = 156, how to recover the plaintext, P ? The decryption is P = Cd mod 187 P = 156d mod 187 Actually there are infinite possibility of d that we can try to recover the plaintext. Such condition make RSA very secure because the it is computationally expensive to do brute-force analysis (trying all the possible key)

36 How secure is your RSA ? In 1977, RSA inventors offered a $100 reward for the return of a plaintext sentences, an event they predicted might not occur for some 40 quadrillion years with the public key length of 129 decimal digits or around 428 bits In April 1994, a group working over the Internet claimed the prize after only eight months of work


Download ppt "RSA Prepared by: SITI ZAINAH ADNAN"

Similar presentations


Ads by Google