Cryptography
 Computer Science Computer Catlog Cryptography Catlog

 Caesar Cipher Digital Signature Public key cryptography Symmetric vs. public-key Key Management Stream Ciphers Self-Synchronizing Ciphers Feedback Shift Registers Modes of Operation Multiple Encryption Transposition Ciphers Substitution Ciphers Poly-alpha Substitutions Poly-alpha Cipher Machine Cryptanalysis Ciphers Data Encryption Standard DES Algorithm IDEA Algorithm RC5 Algorithm RSA Encryption Rabin Encryption ElGamal Encryption MD4 & MD5 Secure Hash Algorithm Kerberos Authentication Diffie-Hellman protocols Key Management Life Cycle

### Classical ciphers and historical development

The term classical ciphers refers to encryption techniques which have become well-known over time, and generally created prior to the second half of the twentieth century (in some cases, many hundreds of years earlier). Many classical techniques are variations of simple substitution and simple transposition. Some techniques that are not technically block ciphers are also included here for convenience and context.

Classical ciphers and techniques are for historical and pedagogical reasons only. They illustrate important basic principles and common pitfalls. However, since these techniques are neither sophisticated nor secure against current cryptanalytic capabilities, they are not generally suitable for practical use.

### Transposition ciphers (background)

For a simple transposition cipher with fixed period t, encryption involves grouping the plaintext into blocks of t characters, and applying to each block a single permutation e on the numbers 1 through t. More precisely, the ciphertext corresponding to plaintext block m = m1 .... mt is c = Ee(m) = me(1) .... me(t). The encryption key is e, which implicitly defines t; the key space K has cardinality t! for a given value t. Decryption involves use of the permutation d which inverts e. The mathematical notation obscures the simplicity of the encryption procedure, as is evident

Simple transposition. Consider a simple transposition cipher with t = 6 and e = (6 4 1 3 5 2). The message m = CAESAR is encrypted to c = RSCEAA. Decryption uses the inverse permutation d = (3 6 4 2 5 1). The transposition may be represented by a two-row matrix with the second indicating the position to which the element indexed by the corresponding number of the first is mapped to: Encryption may be done by writing a block of plaintext under headings "3 6 4 2 5 1", and then reading off the characters under the headings in numerical order.

Terminology: transposition vs. permutation. While the term "transposition" is traditionally used to describe a transposition cipher may alternately be called a permutation on the set {1, 2….6}. The latter terminology is used, for example, in substitution-permutation networks, and in DES. A mnemonic keyword may be used in place of a key, although this may seriously decrease the key space entropy. For example, for n = 6, the keyword "CIPHER" could be used to specify the column ordering 1, 5, 4, 2, 3, 6 (by alphabetic priority).

Sequential composition of two or more simple transpositions with respective periods t1, t2…. ti is called a compound transposition. The compound transposition is equivalent to a simple transposition of period t = lcm(t1….. ti).

Recognizing simple transposition. Although simple transposition ciphers alter dependencies between consecutive characters, they are easily recognized because they preserve the frequency distribution of each character.