Cryptograph
Cryptograph
Introduction
Cryptography is the study of encoding and decoding secret messages. Code are called ciphers, uncoded messages are called plaintext, and coded messages are called ciphertext. The process of converting a plaintext to a ciphertext is called enciphering (encoding). The process of converting a ciphertext to a plaintext is called deciphering (decoding).
One way of encryption is to replace each letter of alphabet by a different letter or a number. For example, replace a with m, and b with k, and so on. This type of coding is simple and by a number of techniques including analysis of frequency of letters, it is easy to be braked.
Polygraphic System
Another way of encoding is to divide plain text into sets of n-letters, and replace them with n code letters. In this case invertible matrices can be used to provide a better coding, than substitution. First associate a different number with every letter of alphabet. For example we may use the following conversion table:
Suppose
Then
Both communicating parties should have knowledge of the table which list association of letters to numbers, the matrices A and . The party that want to send a message, needs to covert it to a string of numbers. As a second step that string of numbers needs to be divided into groups of 3, then multiple each group by the matrix to form new groups and build a new string of numbers. Then, send the resulted string as a string of numbers or letters. The party who is receiving the coded string should divide the string into groups of 3, then multiple by and finally convert it to letters.
Example 1:
"STUDY LINEAR ALGEBRA" First, using the conversion table, find the corresponding numbers associate with each letter. STUDY LINEAR ALGEBRA produces the following string of numbers: 19 20 21 4 25 12 9 14 5 1 18 1 12 7 5 2 18 1. Then, divide the number into groups of 3 and write each group in the form of a vector.
This will provide you with the following string which can be sent. 19 0 -18 38 -34 -17 23 -14 -18 25 -34 -18 9 3 -14 35 -33 -19
The party who receives the message, should divide it into groups of 3 and form vectors and then multiplies each vector by .
For example After obtaining a string of numbers, the conversion table can be used to convert the string to letters and obtain the decoded message.
Example 2:
Consider an association of the alphabet with numbers in the following conversion table and given matrices and . Encode and decode the message " DO NOT COME"
And let
a) Enoding the message: First, using the coversion table above, find the corresponding string of numbers associate with this message. PLEASE DO NOT COME is equivalent to 31 23 9 1 37 9 7 29 27 29 39 5 29 25 9 Next, divide the string of numbers into pairs and group them in vectors. Notice that the number of the letters in the plaintext is odd and is not divisible by 2, therefore, we add a dummy letter "E" to the end of the code and form eight different vectors. The following string of numbers is produced by muliplying the eight vectors by A. 131 208 21 32 101 156 101 166 141 226 93 142 133 212 45 72 and it is the message that should be transimited. b) Decode the message: Assuming that you have and , and the coversion table, and received the following message. You want to decode this message. 117 190 93 140 97 150 185 292 205 328 First, divide it into pairs and form five vectors. Then, multiplies each of these vectors by , and form the following string of numbers: 15 29 45 1 35 9 49 29 41 41 Finally using the conversion table, find letters of alphebet corresponding to these numbers, as a result, you will get
5
, and
the ciphertext ( coded) vectors code means obtining the matrix To do this we may form a matrix
and let
Hence,
and
. This will give us the tool to decode the message. , you may want to write you need first solve for to . as , by row reducing
Suppose that you have received the following message from a friend, LUPOZMAEAEGIUABJ using standard conversion table, it becomes 12 21 16 15 0 13 1 5 1 5 7 9 21 1 2 10, which also the same as (due to mod 26), 12 47 16 67 52 65 27 83 79 135 33 113 47 53 80 140. Unfortunatly, you do not recall the matrix or . But you know that the plaintext of the fifth through eighth letters is GOOD, is it possible that you figure out what is the orginal message? The answer is YES. Knowing the word GOOD, you can find the numerical equivalent of those letters. That is 7 15 for GO and 15 4 for OD. You also know the numerical equivalent of the fifth to eight letters in the encoded message are 52 65 for ZM and 27 83 for AE. Therefore you can form the matrix
7
and
and
to the identity
change to
is the transpose of .
9 1 13 1 7 15 15 4 19 20 21 4 5 14 20 20 Use the coversion table to find the corresponding letters: IAMAG00DSTUDENTT, which will read "I am a good student".
References
ABRAHAM S. Elementary Cryptanalysis: a Mathematical Approach. Mathematical Association of America, Mathematical Library, 1966. ALAN G. KONHEIM. Cryptography: a Primer. New York: Wiley-Interscience, 1981. ANTON, H. and C. RORRES. Elementary Linear Algebra: Applications Version, 7th ed. New York: John Wiley & Sons, Inc., 1994. KOLMAN, B. Introductory Linear Algebra with Applications. New Jersey: Prentice Hall, Inc., 1997.
10