11.07.2015 Views

Abstract Algebra Theory and Applications - Computer Science ...

Abstract Algebra Theory and Applications - Computer Science ...

Abstract Algebra Theory and Applications - Computer Science ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

102 CHAPTER 6 INTRODUCTION TO CRYPTOGRAPHYExample 5. Before exploring the theory behind the RSA cryptosystemor attempting to use large integers, we will use some small integers just tosee that the system does indeed work. Suppose that we wish to send somemessage, which when digitized is 23. Let p = 23 <strong>and</strong> q = 29. Then<strong>and</strong>n = pq = 667φ(n) = m = (p − 1)(q − 1) = 616.We can let E = 487, since gcd(616, 487) = 1.computed to be23 487 mod 667 = 368.The encoded message isThis computation can be reasonably done by using the method of repeatedsquares as described in Chapter 3. Using the Euclidean algorithm, we determinethat 191E = 1 + 151m; therefore, the decrypting key is (n, D) =(667, 191). We can recover the original message by calculating368 191 mod 667 = 23.Now let us examine why the RSA cryptosystem works. We know thatDE ≡ 1 (mod m); hence, there exists a k such thatBy Theorem 5.12,DE = km + 1 = kφ(n) + 1.y D = (x E ) D = x DE = x km+1 = (x φ(n) ) k x = x mod n.We can now ask how one would go about breaking the RSA cryptosystem.To find D given n <strong>and</strong> E, we simply need to factor n <strong>and</strong> solve for Dby using the Euclidean algorithm. If we had known that 667 = 23 · 29 inExample 5, we could have recovered D.Message VerificationThere is a problem of message verification in public key cryptosystems.Since the encoding key is public knowledge, anyone has the ability to sendan encoded message. If Alice receives a message from Bob, she would liketo be able to verify that it was Bob who actually sent the message. Supposethat Bob’s encrypting key is (n ′ , E ′ ) <strong>and</strong> his decrypting key is (n ′ , D ′ ).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!