http://jgallian/msproject06/c hap8.html#chap8ex5
TRANSCRIPT
Applet Link
http://www.d.umn.edu/~jgallian/msproject06/chap8.html#chap8ex5
An Introduction to the RSA Public-Key Cryptosystem
Naomi Tesar
RSA Public-Key Cryptosystem
developed by Ron L. Rivest, Adi Shamir and Leonard Adleman in A Method for Obtaining Digital Signatures and Public-Key Cryptosystems (1977)
RSA security depends on the difficulty of factoring large numbers
Encryption/Decryption
encryption: converting information to code decryption: converting code to information
private-key encryption shared private key used for encryption and
decryption
public-key encryption (RSA) one public key used for encryption and one private
key used for decryption
Encryption/Decryption
http://msdn.microsoft.com/en-us/library/ff647097.aspx
Digital Signatures
Person A’sSSN
encrypted[person A’s private key]
encryptedSSN
encrypted[bank’s public key]
person A sendsmessage to bank
decrypted[bank’s private key]
encryptedSSN
encryptedSSN
message
decrypted[person A’s public key]
Person A’sSSN
encryptedSSN
message
Mathematics Involved
Two integers are relatively prime if they have no common factors other than 1.
Euler’s Totient Function is defined as the number of positive integers less than or equal to that are relatively prime to .
Mathematics Involved
Modular arithmetic is the arithmetic of congruences.
Let , , be integers with . Then is congruent to modulo or provided that divides .
Definitions
message: the numerical message yet to be encrypted
ciphertext: the encrypted message
public key:
private key:
Step 1: Key Generation
choose two distinct primes and and compute
find
choose such that and
determine satisfying
Step 2: Encryption
person A gives the public key to person B
person B converts the message into an integer such that
person B computes
person B sends to person A
Step 3: Decryption
person A recovers by with private key
person A recovers the original message
RSA Example
let and , then
find and choose
compute to find
let and encrypt
to decrypt,
Proof
Define
(1)and (2)
as the public and private key representations of a message for .
Proof
We want to prove that
(3)and . (4)
To begin, substitute equations (1) and (2) into equations (3) and (4), respectively.
Proof
Thus,
and
.
Now, show that .
Proof
By the generation of the private key , we are given .
By the definition of modular congruence, we know that . (5)
Proof
Now, since and are relatively prime, the totient of is .
Next, substitute this into expression (5) to obtain .
Proof
By the properties of divisors, we now have
and ,
where there is some integer such that
.
Proof
Since is prime,
and therefore, . (6)
Now, by the reflexive property of modular arithmetic, we can write
,
Proof
which gives us . (7)
Next, substitute relation (6) into relation (7) to obtain
. (8)
Proof
Since is prime, any integer that satisfies
(8)
must either be relatively prime to (case I) or a multiple of (case II).
Proof
Case I: is relatively prime to
Fermat’s Little Theorem says .
Next, we can write
or . (9)
Proof
Combining (8)and , (9)
we obtain . (10)
Proof
Case II: is a multiple of If , then for any integer we know that .
By modular congruence, we can now write
Thus, .
Proof
Therefore,
for all .
Applying the same method for , we obtain .Since and are relatively prime, we know
.
Proof
By the modular property of symmetry, . (11)Since , there is only one integer that will satisfy relation (11), and thus
. (12)Therefore,
.
Conclusions
The RSA Public-Key Cryptosystem allows users to securely send messages and verify the authenticity of these messages using digital signatures.
The RSA Public-Key Cryptosystem works because the public key representation of the message is the inverse of the private key representation of the message.
Conclusions
The RSA Public-Key Cryptosystem draws from simple principles from number theory and abstract algebra, yet is nearly unbreakable.
RSA security is based on the difficulty factoring large numbers. Given with ~1000 digits, it is difficult to recover
prime factors and for .
References
Hungerford, Thomas W. "Chapter 2: Congruence in Z and Modular Arithmetic." Abstract Algebra: An Introduction. Philadelphia: Saunders College, 1990. 23-37. Print.
Hungerford, Thomas W. "Chapter 12: Public-Key Cryptography." Abstract Algebra: An Introduction. Philadelphia: Saunders College, 1990. 373-378. Print.
Joel Chan, “Three Guys and a Large Number,” Math Horizons 2(3), 1995.
Neal Koblitz and Alfred Menezes, “A Survey of Public-Key Cryptosystems,” SIAM Review 46(4), 2004.
Robert Boyer and J Strother Moore, “Proof Checking the RSA Public Key Encryption Algorithm,” American Mathematical Monthly 91(3), 1984.
R. Rivest, A. Shamir, L. Adleman, “A Method for Obtaining Digital Signatures and Public Key Cryptosystems” MIT/LCS/TM-82, Apr 1977
Weisstein, Eric W. “Euclidean Algorithm.” From MathWorld—A Wolfram Web Resource. http://mathworld.wolfram.com/EuclideanAlgorithm.html
Weisstein, Eric W. “Relatively Prime.” From MathWorld—A Wolfram Web Resource. http://mathworld.wolfram.com/RelativelyPrime.html
Weisstein, Eric W. “Totient Function.” From MathWorld—A Wolfram Web Resource. http://mathworld.wolfram.com/TotientFunction.html