51.

Learn Encryption Techniques with BASIC and C++
(Publisher: Wordware Publishing, Inc.)
Author(s): Gil Held
ISBN: 1556225989
Publication Date: 10/01/98

Previous Table of Contents Next


Encipherment

To use the Vigenére cipher system, first select a keyword or keyword phrase. This keyword or keyword phrase, unlike those used in a keyword-based mixed alphabet, can retain repeating characters. For example, SECRET is a valid Vigenére cipher keyword, although it would be modified to SECRT if used to develop a keyword-based mixed alphabet.

Once the Vigenére keyword or keyword phrase is selected, it is repeated in tandem with the characters in the plaintext message as the plaintext message is encoded. On a repeating basis, one character from the plaintext message and one character from the keyword are used as row and column header indices. The location within the tableau where the indices intersect points to the ciphertext character which is extracted from the tableau.

Figure 5.2 illustrates an example of a Vigenére encipherment using the keyword SECRET. Due to the symmetrical structure of the tableau, you can use either the row or column for the plaintext character pointer and the opposite row or column for the keyword character pointer. For example, using the plaintext character for the row position and the keyword character for the column position results in the extraction of the ciphertext character E when the plaintext character is M and the keyword character is S. If you reverse the assignment of rows and columns, the use of the column character M and the row character of S as pointers also results in the extraction of the ciphertext character E.


Figure 5.2  A Vigenére encipherment

Although the use of a Vigenére cipher negates the use of a letter frequency count as a decipherment wedge by a cryptanalyst, this cipher system has one serious deficiency. This deficiency is known as the “probable word” attack in which a cryptanalyst first selects a word considered likely to be in the plaintext message. Then, the cryptanalyst performs a modulo 26 subtraction of each character in that word from all possible locations in the ciphertext, examining the sequence of characters produced by the modulo 26 subtraction process for a recognizable word or word fragment.


During World War I, the Italians used an encipher system known as cifrario tascabile, or “pocket cipher,” that was a modified Vigenére cipher with the digits added to the end of the plaintext alphabet, while the cipher alphabets consisted of the digits 10 to 45 in sequence. Radiograms intercepted by the Austrians that were enciphered using the cifrario tascabile usually required less than half a day for trained cryptanalysts to decipher, and provided them with a wealth of information, including the ability to respond to an Italian offensive before the offensive was launched!

Other Polyalphabetic Substitution Methods

As previously explained, a major weakness of the Vigenére cipher system is its susceptibility to a probable word attack. This susceptibility results from the use of a repeating keyword whose characters are continuously used as pointers with each plaintext character for the extraction of a ciphertext character from the tableau. To counter this susceptibility you can develop a large number of different polyalphabetic substitution methods—a few of which we will investigate in this section. However, prior to doing so let us examine the major elements of a periodic polyalphabetic substitution system.

Periodic Polyalphabetic Substitution

A periodic polyalphabetic substitution system contains one plaintext alphabet and two or more cipher alphabets. The plaintext alphabet is considered to be the primary alphabet because it serves as an extraction pointer to a column location within each cipher alphabet row. The cipher alphabets provide the characters for extraction that yield the ciphertext and are referred to as secondary alphabets.

Figure 5.3 illustrates a simple example of a periodic polyalphabetic substitution system. In this example, the plaintext alphabet is the simple sequential English alphabet A through Z, with position one commencing with the letter A. The secondary cipher alphabets are a sequence of five plaintext alphabets shifted by one, two, three, four, and five character positions. The first cipher alphabet is indicated by the row header C1, while succeeding cipher alphabets are indicated by row headers C2, C3, C4, and C5.


Figure 5.3  Periodic polyalphabetic substitution system

Operation

The operation of a periodic polyalphabetic substitution system involves locating the plaintext character in the plaintext alphabet. Next, the match position is located and serves as a pointer to the extraction of a cipher character from the first cipher alphabet. The second plaintext character is then matched against the plaintext alphabet, and the match position serves as a mechanism to extract the second cipher character from the second cipher alphabet. This process continues until a character is extracted from the last cipher alphabet. At this point the process begins anew with the result of the next plaintext match causing an extraction to occur from the first cipher alphabet.

To illustrate the use of a periodic polyalphabetic substitution system, encipher the message FIRE FRED using the system illustrated in Figure 5.3. Locating F in the plaintext and using that character location as a pointer to the first cipher alphabet (C1) results in the extraction of the cipher character G. Next, locating I in the plaintext and using its position as a pointer to the second cipher alphabet (C2) results in the extraction of the cipher character K. Similarly, R is enciphered as U, E is enciphered as I, and F is enciphered as K. Because you have now used the last cipher alphabet, encipher R, which is the sixth character in the plaintext message, using the first cipher alphabet, resulting in R being enciphered as S. Similarly, E is enciphered using the second cipher alphabet as G, while D is enciphered using the third cipher alphabet to obtain its replacement by G. Thus, the message FIRE FRED is enciphered as GKUIKSGG.

In the example shown in Figure 5.3, there was a total of five cipher alphabets. This means that the use of each cipher alphabet is repeated for every five characters in the plaintext—this polyalphabetic substitution system is then said to have a period of five. Unfortunately, this also means that if a cryptanalyst can determine the repetition period of the cipher alphabets, he or she can perform a series of character frequency analyses that could eventually result in the decipherment of an intercepted message. To add a degree of difficulty to the life of a cryptanalyst, you can consider a variety of techniques to reduce the potential of analysis and decipherment.


Previous Table of Contents Next


Learn Encryption Techniques with Basic and C++
Learn Encryption Techniques with BASIC and C++
ISBN: 1556225989
EAN: 2147483647
Year: 2005
Pages: 92
Authors: Gil Held

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net