Analysis of the RSA Encryption Algorithm

Slides:



Advertisements
Similar presentations
Number Theory Algorithms and Cryptography Algorithms Prepared by John Reif, Ph.D. Analysis of Algorithms.
Advertisements

CS 483 – SD SECTION BY DR. DANIYAL ALGHAZZAWI (4) Information Security.
CSE331: Introduction to Networks and Security Lecture 19 Fall 2002.
BY : Darshana Chaturvedi.  INTRODUCTION  RSA ALGORITHM  EXAMPLES  RSA IS EFFECTIVE  FERMAT’S LITTLE THEOREM  EUCLID’S ALGORITHM  REFERENCES.
Public Key Encryption Algorithm
Primality Testing By Ho, Ching Hei Cheung, Wai Kwok.
RSA ( Rivest, Shamir, Adleman) Public Key Cryptosystem
The RSA Cryptosystem and Factoring Integers (II) Rong-Jaye Chen.
and Factoring Integers
Public Encryption: RSA
RSA Encryption William Lu. RSA Background  Basic technique first discovered in 1973 by Clifford Cocks of CESG (part of British GCHQ)  Invented in 1977.
Chapter 3 Encryption Algorithms & Systems (Part C)
RSA Encryption Caitlin O’Dwyer. What is an RSA Number? An RSA number n is a number s.t. n=pq Where p and q are distinct, large, prime integers.
“RSA”. 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.
 Introduction  Requirements for RSA  Ingredients for RSA  RSA Algorithm  RSA Example  Problems on RSA.
Prime Numbers Prime numbers only have divisors of 1 and self
1 Network Security Lecture 6 Public Key Algorithms Waleed Ejaz
RSA Public Key Algorithm. RSA Algorithm history  Invented in 1977 at MIT  Named for Ron Rivest, Adi Shamir, and Len Adleman  Based on 2 keys, 1 public.
RSA and its Mathematics Behind
RSA Ramki Thurimella.
10/1/2015 9:38:06 AM1AIIS. OUTLINE Introduction Goals In Cryptography Secrete Key Cryptography Public Key Cryptograpgy Digital Signatures 2 10/1/2015.
BASIC CRYPTOGRAPHIC CONCEPTS. Public Key Cryptography  Uses two keys for every simplex logical communication link.  Public key  Private key  The use.
Improving Encryption Algorithms Betty Huang Computer Systems Lab
Day 37 8: Network Security8-1. 8: Network Security8-2 Symmetric key cryptography symmetric key crypto: Bob and Alice share know same (symmetric) key:
Public-Key Encryption
1 Public-Key Cryptography and Message Authentication.
1 Number Theory and Advanced Cryptography 5. Cryptanalysis of RSA Chih-Hung Wang Sept Part I: Introduction to Number Theory Part II: Advanced Cryptography.
RSA Prepared by: SITI ZAINAH ADNAN
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
RSA Slides by Kent Seamons and Tim van der Horst Last Updated: Oct 1, 2013.
Algebra of RSA codes Yinduo Ma Tong Li. Ron Rivest, Adi Shamir and Leonard Adleman.
The RSA Algorithm. Content Review of Encryption RSA An RSA example.
RSA and its Mathematics Behind July Topics  Modular Arithmetic  Greatest Common Divisor  Euler’s Identity  RSA algorithm  Security in RSA.
Public Key Cryptosystems RSA Diffie-Hellman Department of Computer Engineering Sharif University of Technology 3/8/2006.
POON TENG HIN.  RSA  Shamir’s Three-Pass Protocol  Other issues.
CS Modular Division and RSA1 RSA Public Key Encryption To do RSA we need fast Modular Exponentiation and Primality generation which we have shown.
CS 4803 Fall 04 Public Key Algorithms. Modular Arithmetic n Public key algorithms are based on modular arithmetic. n Modular addition. n Modular multiplication.
Primality Testing. Introduction The primality test provides the probability of whether or not a large number is prime. Several theorems including Fermat’s.
RSA Pubic Key Encryption CSCI 5857: Encoding and Encryption.
Information and Computer Security CPIS 312 Lab 8 1 Asymmetric Key Algorithms RSA Algorithm TRIGUI Mohamed Salim.
RSA Algorithm Date: 96/10/17 Wun-Long Yang. Outline Introduction to RSA algorithm RSA efficient implementation & profiling.
Lecture 5 Asymmetric Cryptography. Private-Key Cryptography Traditional private/secret/single key cryptography uses one key Shared by both sender and.
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.
RSA cryptosystem with large key length
Public Key Cryptography
CS480 Cryptography and Information Security
Public Key Encryption Major topics The RSA scheme was devised in 1978
Public Key Encryption.
Chapter Applications of Number Theory Some Useful Results
Dr. Richard Spillman Pacific Lutheran University
RSA Slides by Kent Seamons and Tim van der Horst
ALGORITHM NUMBER THEORY
Number-Theoretic Algorithms (UNIT-4)
RSA and El Gamal Cryptosystems
Public-key Cryptography
Number Theory and Euclidean Algorithm
PART VII Security.
Rivest, Shamir and Adleman
Public-key encryption
Symmetric-Key Cryptography
Where Complexity Finally Comes In Handy…
Chapter -5 PUBLIC-KEY CRYPTOGRAPHY AND RSA
Symmetric-Key Cryptography
PUBLIC-KEY CRYPTOGRAPHY AND RSA – Chapter 9
Where Complexity Finally Comes In Handy…
Introduction to Algorithms Second Edition by
Introduction to Cryptography
Oblivious Transfer.
The RSA Public-Key Encryption Algorithm
Where Complexity Finally Comes In Handy…
Presentation transcript:

Analysis of the RSA Encryption Algorithm Betty Huang Computer Systems Lab 2009-2010 1 1

Abstract The RSA encryption algorithm is commonly used in public security due to the asymmetric nature of the cipher. The procedure is deceptively simple, though; given two random (large) prime numbers p and q, of which n = pq, and message m, the encrypted text is defined as c = me (mod n). E is some number that is coprime to the totient(n). The public key (n, e), however, makes it difficult for the user to find the private key (n, d), due to the fact that given only n, it is extremely difficult to find the prime factors p and q. The fastest methods currently have O(sqrt(n)) complexity, but require expensive resources and technology (Kaliski). The aim of this paper is to improve on the factorization process required by the RSA encryption algorithm. 2 2

Background Purpose of Encryption Algorithms One-way functions Hash functions: MD5, SHA family Block Cipher: DES, Blowfish 3 3

Asymmetric Block Cipher RSA Rivest, Shamir, Adleman Asymmetric Block Cipher Different Keys for Encryption/Decryption 4

Block Ciphers A block cipher consists of two paired algorithms, one for encryption, E, and the other for decryption, E-1. Both algorithms accept two inputs: an input block of size n bits and a key of size k bits, yielding an n-bit output block. For any one fixed key, decryption is the inverse function of encryption, so that for any block M and key K. M is termed the plaintext and C the ciphertext. 5 5

Process Initialization: n = pq, with p and q primes e relatively prime to φ(n) = (p − 1) (q − 1) d inverse of e in Zφ(n) Keys: Public key: (n, e) Private key: (n, d) Encryption: Message M 1 < M < N C = M^e mod n Decryption: M = C^d mod n 6

An Example Keys: Setup: public key: (119, 5) p = 7, q = 17 private key: (119, 77) Encryption: M = 19 C = 195 mod 119 = 66 Decryption: C = 6677 mod 119 = 19 Setup: p = 7, q = 17 n = 7*17 = 119 φ(pq) = 6*16 = 96 choose e coprime to φ(pq) ex: e = 5 find d such that de = 1 (mod φ(pq)) d = 77 7

Algorithms Prime Generation Primality Tests (Miller-Rabin, etc) GCD Euler’s Totient Function Modular Multiplicative Inverse Chinese Remainder Theorem Integer Factorization 8

Development GMP Library RSA Algorithm Implementation Integer Factorization 9

Development Trial Division Given a number n, test numbers less than n to find prime divisors 10

Development Fermat’s Theorem n = x2 – y2 n = (x + y)(x – y) Find s = (x - y), t = (x + y) x = (s + t) /2, y = (t - s) / 2 11

Pollard’s Rho Method Development sequence of pseudo-random integers constructed in the following way: x0 = random(0, N − 1) xi = f (xi−1 ) (mod N ), i = 1, 2, · · · where f is a polynomial with integer coefficients, eg. in most practical implementations of the algorithm f (x) = x2 + α, α = 0, -2 12

Results Factorization of Fermat 6: 264 + 1 = 18,446,744,073,709,551,617 Factors into: 274,177 × 67,280,421,310,721 13

Results 14

Results 15