Download presentation
Presentation is loading. Please wait.
Published byRoderick Bates Modified over 9 years ago
1
“RSA”
2
RSA by Rivest, Shamir & Adleman of MIT in 1977 best known & widely used public-key scheme RSA is a block cipher, plain & cipher text are integers between 0 and n-1,size of n is typically1024 bits based on exponentiation and modulation a prime exponentiation takes O((log n) 3 ) operations (easy) exponentiation takes O((log n) 3 ) operations (easy) security due to cost of factoring large numbers factorization takes O(e log n log log n ) operations (hard) factorization takes O(e log n log log n ) operations (hard)
3
RSA Key Setup Each user generates a public/private key pair by selecting two large primes at random - p, q Computing their system modulus n=p.q note ø(n)=(p-1)(q-1) note ø(n)=(p-1)(q-1) Selecting at random the encryption key e where 1<e<ø(n), gcd(e,ø(n))=1where 1<e<ø(n), gcd(e,ø(n))=1 Solve following equation to find decryption key d e.d mod ø(n) =1 and 0≤d≤n e.d mod ø(n) =1 and 0≤d≤n Publish their public encryption key: PU={e,n} Keep secret private decryption key: PR={d,n}
4
RSA En/decryption to encrypt a message M the sender: obtains public key of recipient PU={e,n} obtains public key of recipient PU={e,n} computes: C = M e mod n, where 0≤M<n computes: C = M e mod n, where 0≤M<n to decrypt the ciphertext C the owner: uses their private key PR={d,n} uses their private key PR={d,n} computes: M = C d mod n computes: M = C d mod n note that the message M must be smaller than the modulus n (block if needed)
5
Why RSA Works It is infeasible to determine d given e and n because of Euler's Theorem: a ø(n) mod n =1 where gcd(a,n)=1 a ø(n) mod n =1 where gcd(a,n)=1 in RSA have: n=p.q n=p.q ø(n)=(p-1)(q-1) ø(n)=(p-1)(q-1) carefully choose e & d to be inverses mod ø(n) ed mod φ(n) = 1 carefully choose e & d to be inverses mod ø(n) ed mod φ(n) = 1
6
RSA Example - Key Setup 1. Select primes: p=17 & q=11 2. Calculate n = pq =17 x 11=187 3. Calculate ø(n)=(p–1)(q-1)=16x10=160 4. Select e between 1 and 160 : gcd(e,160)=1; choose e=7 5. Determine d : de mod 160 =1 and d < 160 Value is d=23 since 23x7=161 6. Publish public key PU={7,187} 7. Keep secret private key PR={23,187}
7
RSA Example - En/Decryption sample RSA encryption/decryption is: given message M = 88 (nb. 88<187 ) encryption: C = 88 7 mod 187 = 11 decryption: M = 11 23 mod 187 = 88
8
RSA ENCRYPTION… AN EXAMPLE C = M e mod nM = C d mod n Public key: (5,119)Private key: (77,119) 19 5 = 2476099 = 20807 with -------------- remainder 119 of 66 Plain Text 19 66 77 = 66 77 = remainder -------- of 19 119 Plain Text 19 Cipher text
9
RSA Exercise Perform encryption and decryption using RSA algorithm 1) p=5,q=11, e=3 & M=9 1) p=5,q=11, e=3 & M=9 2) p=11,q=13,e=11,M=7 2) p=11,q=13,e=11,M=7
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.