This exam is due in class on Thursday, March 11th. Do all problems. The exam totals 100 points. Please show all work as answers alone are not sufficient. Submit partial solutions for partial credit. All work submitted must be your own.
Construct the finite field GF(16).
The following ciphertext was obtained by XORing (adding mod 2) an LFSR output with the plaintext.
0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1Suppose you know that the plaintext starts: 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0
Find the complete plaintext.
Find the number of bases, b, such that 837 is an Euler psuedo prime to the base b. (Note that b is relatively prime to 837)
A plaintext x is said to be fixed if an encryption algorithm encrypts x to itself. In the RSA cryptosystem, 0 is clearly a fixed plaintext. If n = pq is the public modulus and b is the public encryption exponent of an RSA cryptosystem, show that the number of non-zero fixed plaintexts in Zn is (1 + gcd(b-1, p-1)) ´(1 + gcd(b-1, q-1)) - 1. (Hint: You will need to use the fact that if a º b mod (pq) then a º b mod p and a º b mod q.)
Here is an example of RSA ciphertext:
6340 8309 14010 8936 27358 25023 16481 25809
23614 7135 24996 30590 27570 26486 30388 9395
27584 14999 4517 12146 29421 26439 1606 17881
25774 7647 23901 7372 25774 18436 12056 13547
7908 8635 2149 1908 22076 7372 8686 1304
4082 11803 5314 107 7359 22470 7372 22827
15698 30317 4685 14696 30388 8671 29956 15705
1417 26905 25809 28347 26277 7897 20240 21519
12437 1108 27106 18743 24144 10685 25234 30155
23005 8267 9917 7994 9694 2149 10042 27705
15930 29748 8635 23645 11738 24591 20240 27212
27486 9741 2149 29329 2149 5501 14015 30155
18154 22319 27705 20321 23254 13624 3249 5443
2149 16975 16087 14600 27705 19386 7325 26277
19554 23614 7553 4734 8091 23973 14015 107
3183 17347 25234 4595 21498 6360 19837 8463
6000 31280 29413 2066 369 23204 8425 7792
25973 4477 30989The public modulus is n = 31313 and the public encryption exponent is e = 4913. Perform the following computations:
a) Factor n by trial and error.
b) Compute the private decryption exponent d using the extended Euclidean algorithm.
c) Decrypt the ciphertext, obtaining the plaintext as a sequence of elements of Z31313 . Use the square-and-multiply algorithm for modular exponentiation.
d) Translate the plaintext into English text, given that each element of Z31313 represents three alphabetic characters, as in the following examples:
DOG ®
3 × 262 + 14 × 26 + 6 = 2398
CAT ®
2 × 262 + 0 × 26 + 19 = 1371
ZZZ ®
25 × 262 + 25 × 26 + 25 = 17575