Presentation is loading. Please wait.

Presentation is loading. Please wait.

The RSA Public-Key Encryption Algorithm

Similar presentations


Presentation on theme: "The RSA Public-Key Encryption Algorithm"— Presentation transcript:

1 The RSA Public-Key Encryption Algorithm
Network Security

2 The RSA Public-Key Encryption Algorithm
Objectives of the Topic After completing this topic, a student will be able to explain working of the RSA Public-Key encryption algorithm.

3 The RSA Public-Key Encryption Algorithm
Figures and material in this topic have been adapted from “Network Security Essentials : Applications and Standards”, 2014, by William Stallings.

4 The RSA Public-Key Encryption Algorithm
RSA is the best known, and widely used general public key encryption scheme. It was first published by Rivest, Shamir & Adleman of MIT in 1978.

5 The RSA Public-Key Encryption Algorithm
The RSA scheme is a cipher in which the plaintext and ciphertext are integers between 0 and n - 1 for some n. A typical size for n is 1024 bits, or 309 decimal digits. That is, n is less than

6 The RSA Public-Key Encryption Algorithm
RSA is based on exponentiation in a finite (Galois) field over integers modulo a prime. Security due to cost of factoring large numbers.

7 The RSA Public-Key Encryption Algorithm
Description Plaintext is encrypted in blocks, with each block having a binary value less than some number n. The block size must be less than or equal to log2(n) + 1; in practice, the block size is i bits, where 2i < n ≤2i+1.

8 The RSA Public-Key Encryption Algorithm
Encryption and decryption are of the following form, for some plaintext block M and ciphertext block C. C = Me mod n M = Cd mod n = (Me)d mod n = Med mod n

9 The RSA Public-Key Encryption Algorithm
Both sender and receiver must know the value of n. The sender knows the value of e, and only the receiver knows the value of d.

10 The RSA Public-Key Encryption Algorithm
Here, the public key of PU = {e, n} and the private key of PR = {d, n}. For this algorithm to be satisfactory for public-key encryption, following requirements must be met:

11 The RSA Public-Key Encryption Algorithm
1. It is possible to find values of e, d, and n such that Med mod n = M for all M < n. 2. It is relatively easy to calculate Me mod n and Cd mod n for all values of M < n. 3. It is infeasible to determine d given e and n.

12 The RSA Public-Key Encryption Algorithm
Summary

13 The RSA Public-Key Encryption Algorithm
Example Key Generation 1. Select two prime numbers, p= 17 and q= 11. 2. Calculate n = pq = 17 × 11 = 187. 3. Calculate ⱷ(n) = (p-1)(q-1)= 16 × 10 =160.

14 The RSA Public-Key Encryption Algorithm
4. Select e such that e is relatively prime to ⱷ(n) = 160 and less than ⱷ(n); we choose e=7. 5. Determine d such that de mod 160 =1 and d < 160.The correct value is d=23, because 23 × 7=161= (1 × 160)+1.

15 The RSA Public-Key Encryption Algorithm
The resulting keys are public key PU={7, 187} and private key PR= {23, 187}. Encryption Lets use these keys for a plaintext input of M = 88. Here, we need to calculate C= 887 mod 187.

16 The RSA Public-Key Encryption Algorithm
Decryption We need to calculate M = 1123 mod 187 Above expressions can be evaluated by exploiting the properties of modular arithmetic.

17 The RSA Public-Key Encryption Algorithm
The Security of RSA There are two possible approaches to defeating the RSA algorithm. The first is the brute-force approach: Try all possible private keys.

18 The RSA Public-Key Encryption Algorithm
Thus, the larger the number of bits in e and d, the more secure the algorithm. However, because the calculations involved are complex, the larger the size of the key, the slower the system will run.

19 The RSA Public-Key Encryption Algorithm
Most discussions of the cryptanalysis of RSA have focused on the task of factoring n into its two prime factors. For a large n with large prime factors, factoring is a hard problem.

20 The RSA Public-Key Encryption Algorithm
A large key size such as a 1024-bit key size (about 300 decimal digits) is considered strong enough for virtually all applications. End


Download ppt "The RSA Public-Key Encryption Algorithm"

Similar presentations


Ads by Google