Cryptology - Unofficial St. Mary's College of California Web Site
Cryptology - Unofficial St. Mary's College of California Web Site
Cryptology - Unofficial St. Mary's College of California Web Site
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
3.6. KOBLITZ’S KID-RSA AND PUBLIC KEY CODES 45<br />
in use today. We will study it in Chapter 12. The Kid-RSA is a Decimation<br />
Cipher with a slightly complicated setup. It <strong>of</strong>fers no actual security, hence it<br />
is a “toy” system, but will allow us to introduce the concept <strong>of</strong> public keys.<br />
Set-up <strong>of</strong> Kid-RSA:<br />
1. Choose four integers, calling them a, b, A and B.<br />
2. Compute AB − 1 and call it M.<br />
3. Compute aM + A and bM + B and call them e and d, respectively.<br />
4. Compute (ed − 1)/M and call it n.<br />
Then e and d will serve as the enciphering and deciphering keys in a Decimation<br />
Cipher modulo n.<br />
A couple <strong>of</strong> examples will help clarify.<br />
Examples:<br />
(1) Suppose we choose a = 5, b = 7, A = 4 and B = 3. Then we compute the<br />
other parameters:<br />
M = AB − 1 = 11<br />
e = aM + A = 59 and d = bM + B = 80, and<br />
n = (ed − 1)/M = (59 · 80 − 1)/11 = 429.<br />
Now we encipher numerical as usual:<br />
plaintext n u m e r i c a l<br />
plainnumbers 14 21 13 5 18 9 3 1 12<br />
×59 826 1239 767 295 1062 531 177 59 708<br />
%429 397 381 338 295 204 102 177 59 279<br />
ciphertext 397 381 338 295 204 102 177 59 279<br />
Because we are working modulo 429 we cannot at this point reduce modulo<br />
26 to retrieve a ciphertext. Instead we simply use the reduced ciphernumbers<br />
as our ciphertext. So numerical is enciphered to 397, 381, 338,<br />
295, 204, 102, 177, 59, 279.<br />
To decipher we multiply by d and reduce modulo 429:<br />
ciphertext 397 381 338 295 204 102 177 59 279<br />
×80 31760 30480 27040 23600 16320 8160 14160 4720 22320<br />
%429 14 21 13 5 18 9 3 1 12<br />
plaintext n u m e r i c a l<br />
So we retrieve our plaintext numerical.