7.

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


Cipher Terminology

As previously described, a cipher system is a system in which a substitution process occurs on individual characters or groups of characters without regard to their meaning. The actual enciphering process can be performed by hardware, software, or manually by the brainpower of one or more persons.

Plaintext and Enciphered Text

The use of a cipher system requires a message or text to operate upon. The original, unaltered contents of the message or text is known as plaintext or cleartext. Through the use of a cipher system, the meaning of the plaintext message is hidden. The process of hiding the meaning of the plaintext is known as enciphering, while the resultant text is referred to as enciphered text.

Encipherment

Figure 1.1 illustrates the encipherment process in a block diagram format. In examining Figure 1.1, note that plaintext (x) is converted to ciphertext (y) by an enciphering process (E), such that y=Ek(x), where k is a key. The enciphering process can be considered as an algorithm which operates upon the plaintext based upon the value of a key (k). Thus, the key defines the operation of the encipherment algorithm and different keys result in different ciphertext being created from a fixed plaintext.


Figure 1.1  The encipherment process results in the creation of ciphertext (y) by applying an encipherment algorithm (E) controlled by a key (k) against plaintext (x) so that y=Ek(x)

An example of the use of a modern key can be obtained by constructing a modulo 2 encipherment process. As a bit of review for readers who may not remember modulo arithmetic, when adding numbers using that arithmetic for base n you divide n into the added numbers and retain the remainder as the result of the modulo arithmetic process. That is, for our familiar base 10 the addition of 6 and 8 under modulo 10 results in a value of 4. Table 1.1 illustrates the results of modulo 2 for the four possibilities that can occur per bit position.

Table 1.1 Modulo 2 Addition

0 0 1 1
0 1 0 1
0 1 1 0

To illustrate the encipherment process using modulo 2 addition, let’s encipher the word HELP, assuming it was first stored using the 7-bit American Standard Code for Information Interchange. Let’s then assume the key was the word BURP. Table 1.2 illustrates the encipherment process using modulo 2 addition.

Table 1.2 Enciphering the word HELP with the key BURP using modulo 2 addition.

Plaintext H E L P
1001000 1000101 1001100 1010000
⊕Key B U R P
1000010 1010101 1010010 1010000
Enciphered text 0001010 0010000 0011110 0000000
LF DLE RS NUL

In examining the entries in Table 1.2, note that as a result of the modulo 2 encipherment process the plaintext HELP is converted into a sequence of 28 bits which represent four control characters—Line Feed (LF), Data Link Escape (DLE), Record Separator (RS), and Null (NUL). Thus, if a person intercepted the enciphered text they would observe the sequence LF, DLE, RS, NUL instead of the word HELP.


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