Joint
Intelligence Training
Center
(J.I.T.C.)
Cryptology
406: Classic Ciphers
Laboratory
Session 5: ALBERTI CIPHER
DISK
I.
Objective
In this
exercise the student will learn to encipher and decipher short
messages using the Alberti cipher disk. NOTE: You can complete this
assignment at home. No field work
required.
II.
Definitions
Algorithm:
A formula, or step-by-step procedure, for solving a mathematical
problem.
Base Plate: the larger, fixed Alberti disk. Plaintext is always
read on the base plate.
Ciphertext:
the encrypted
version of a message that the sender wishes to transmit to the
receiver(s).
Decipher
(decrypt, decode): to convert a ciphertext message to plain
text.
Encipher
(encrypt, encode): to convert a
plaintext
message to
ciphertext.
Frequency
analysis: In cryptanalysis, the study of the frequency and
patterns of letters or groups of letters in a ciphertext. The
method is used as an aid in breaking classic
ciphers.
Key
(keytext): in cryptography, the key is a piece of information (a
parameter) that determines the functional output of a cryptographic
algorithm or cipher. Without the key, an algorithm will have no
result. In encryption, the key specifies a particular
transformation of plaintext into ciphertext, or vice versa during
decryption.
Monoalphabetic
cipher: any cipher based on substitution, using a single
substitution alphabet over the entire message.
Plaintext: an unencrypted message that the sender wishes to
transmit to the receiver(s).
Polyalphabetic
cipher: any cipher based on substitution, using multiple
substitution alphabets.
Rotor: the smaller, movable Alberti disk. Ciphertext is always read
on the
rotor.
III.
History
Leon
Battista Alberti (1404–1472) was an Italian author, artist,
architect, poet, priest, linguist, philosopher and general
Renaissance polymath.
Being an
accomplished cryptographer, he
>
published the earliest book on cryptanalysis in western
Europe,
>
created the first polyalphabetic cipher (now known as the Alberti
cipher) and
>
invented the first encryption machine (the Alberti Cipher
Disk).
His polyalphabetic cipher was the most significant advance in
cryptography since Julius Caesar's time.
For this,
cryptography historian David Kahn* christened Alberti the
"Father of Western Cryptography."
Alberti
cipher disk (left); Templar cipher disk (right)
Alberti was active in Italian Freemasonry. This led him into
a relationship with the Knights Templar that remains unclear.
Historians speculate that he designed the Templar Cipher Disk
and taught the Knights how to use it to secure their
clandestine communications. Both devices work using the same
principals.
* David Kahn, The Codebreakers: the story of secret writing. New
York: MacMillan, 1967, (still in print; very entertaining; highly
recommended).
IV.
How the Alberti Cipher
Disk
Works
Initially
the Rotor (red) is aligned with the Baseplate (blue) so that all
the letters and numbers match (red 'A' opposite blue 'A', etc.). If
the Rotor is turned one space clockwise, this puts red '9' opposite
blue 'A', etc. In Example 1 the KEY is '9' because we set '9'
on the rotor under 'A' on the baseplate and leave it at this
setting for the entire message.
Example
1: Clockwise Rotor shift (left); Enciphered message
(right)
The
plaintext message is now composed from the baseplate (blue). It's
ciphertext equivalent is read from the rotor (red).
This is identical to the simple and ancient monoalphabetic
substitution method
called
the Caesar shift
cipher
. In this system every 'A' is encrypted as '9', every 'B' is
encrypted as 'A', etc. While this encipherment may discourage the
casual kibitzer, it provides no security against
a cryptanalyst with only rudimentary skills.
Adding
another key, we alternate the first clockwise shift with a
second, counter- clockwise shift to 'B'. Now the KEY is '9B' which
reflects these alternating clockwise/counterclockwise
shifts.
Example
2: Counterclockwise Rotor shift (left); Enciphered message
(right)
The
additional shift produces an improved ciphertext. The
plaintext 'A' can now appear as either '9' or 'B' in the
ciphertext. Plaintext 'T' can appear in ciphertext as either 'U' or
'S'. While this encryption would not deter a skilled cryptanalyst
for very long, the significant difference is that this
is now a
polyalphabetic
cipher, albeit the simplest version of its type. The polyalphabetic
system has unlimited substitution possibilities, based on the
length of the key being
used.
V. Frequency
Analysis
The frequency distribution of the letters in our written
language is a useful tool in the analysis of
substitution ciphers. The following chart illustrates the
relative frequency of letters used in the English language. 'E' is
the most commonly used letter, followed by 'T', 'A', 'O' and 'I'
respectively.
Normal
English language letter frequency
Monoalphabetic ciphers can disguise the plaintext, but they
cannot alter the frequency, or pattern, of the letters being used.
Polyalphabetic ciphers, properly used, can redistribute the letter
frequency, increasing the security of the cipher.
The following chart compares the frequency distributions of the
examples used above.
Note that in the polyalphabetic cipher (Example 2) the distribution
is spread among more letters (10 vs 9) and is more evenly
distributed (or flatter) than in the monoalphabetic equivalent
(Example 1). Now consider the following, a polyalphabetic cipher
using a five-character key. The five disks represent each setting
of the key.
The resulting frequency distribution (Example 3) is flatter
yet with little resemblance to the monoalphabetic
distribution.
VI.
Constructing an Alberti Cipher Disk
The Alberti Cipher Disk is a simple device. Print the following
illustration then carefully cut out the disk and the baseplate.
Place the rotor on top of the base plate then pin them together at
their common rotation axis. A cheap stud earring makes a good
center pin.
Alberti
cipher disk: rotor (left); baseplate (right)
With any cipher, encryption and decryption is easiest using a blank
form designed especially for this purpose. You can view and print a
blank form for this exercise by clicking
here.
VII. Deciphering a Message
You are an intelligence officer for OSS, the legendary wartime
intelligence organization.
ROMEO,
a trusted field agent, has transmitted the following message,
encrypted using the Alberti cipher disk:
QTAMW IOLF3 XUEP0 TXWYI 6Y42M 0FKYC 9YXVN VFV51 YJY1D Q1XKW A9YNS
AUWI9
Follow these step to decipher the message.
1.
Determine the key (see below).
2. Copy
the ciphertext and the key into a blank form.
3. Use
the Alberti cipher disk to derive the plaintext
message.
You refer to a top secret list and confirm that the key
for this message is
HTVMJE6.
Enter both the ciphertext and the repetitive key in the appropriate
boxes on the form. Turn the rotor until the first key character
('H') is aligned under the 'A' on the outer baseplate. Find the
first ciphertext character ('Q') on the rotor. Above 'Q' on the
rotor you find 'J' on the base plate. This is the first character
in the plaintext message. You write 'J' in the first box on the
plaintext line.
To find the second plaintext letter, turn the rotor until the
second key character ('T') is aligned under the 'A' on the
baseplate. The second ciphertext character (also 'T') is now
aligned under 'A' on the baseplate. 'A' therefore is the second
character in the plaintext message, so write 'A' in the second
box on the plaintext line. Complete this example to read the secret
message. A few additional plaintext letters are inserted as an aid
in this exercise.
Historical Note: The
Royal
Navy used the
Alberti
cipher
(British
Naval Cypher No. 2)
until
early 1942, when they discovered that the Germans had broken
the code and were reading their secret messages.
VIII. Things to Think About
The
Vigenere cipher is an historical descendant of the
Alberti cipher. Theoretically the two methods are identical. the
only practical difference is that the Vigenere employs a table of
shifted alphabets rather than a rotor device.
As with most ciphers a longer key increases the strength and
security of the ciphertext. In fact, the ultimate key, one that is
unique, used only once, is random and the same length as the
message produces an unbreakable ciphertext. This is the definition
of a
one-time pad cipher.
IX. Date-Name-Key Algorithm
Any cipher, even the one-time pad, is only as secure as its
key. Several ciphers with perfect key security have been developed
in recent years, including Private Key Encryption
(see
GC1KBPY). With all
classic ciphers, however, including the Alberti, security of the
key is the weakest link. The problem is, of course, that both the
sender and the receiver of any encrypted message must share a
common key. This means that the key must be distributed among all
parties who need to communicate using the cipher.
Historically the most common approach to this problem is to
distribute a list of keys to all users in a network.
In World
War II, for example,
the Kriegsmarine
(German
Navy
) used the supposedly unbreakable Enigma Machine cipher
protect its radio communications. Every ship in their fleet carried
a booklet that listed the daily rotor settings (a type of key) and
was updated quarterly. The British codebreakers at Bletchley Park
made little progress on the Enigma cipher until the Royal Navy
adopted the tactic of capturing unarmed German weather reporting
ships in the North Atlantic. This gave them access to the rotor
settings as well as the rotors, which they disassembled to study
their internal wiring patterns.
A practical alternative is to develop an algorithm to generate the
key. In the following example, the date that the message is
sent is combined with the sender's name (in this case, 'ROMEO') to
generate the key.
The above table illustrates how ROMEO generates the key for his
messages to be sent on 15 June 2009. In the 'DATE' line (red) he
copies the date in the standard seven-character format. To the
right he enters the numerical equivalent (N.E.) of each character.
Numbers are used at their face values. Letters are assigned values
according to position (A=1, B=2, ..., Z=26).
In the 'NAME' line (blue) ROMEO copies his code name, repetitively,
under each character in the 'DATE' line. To the right he again
enters the N.E. of each character.
On the bottom line he sums the N.E. values in each column using
mod 26 arithmetic. This means that if the sum exceeds 26
(the number of letters in the English alphabet) we subtract 26 from
the sum and use the difference.
Example
1: U (21) + E (5) = 26 (Z)
Examle 2:
N (14) + O (15) = 29 - 26 = 3 (C)
Mod 26 arithmetic keeps the N.E. sums in the range of 1 to 26.
Finally, ROMEO generates his key (STWZCRX) by assigning letter
equivalents to each of the mod 26 sums.
This is not a practical alternative for a large network with many
spies. Without knowing who sent a message the receiver may have to
generate numerous keys before hitting on the correct key that
allows decipherment. For a small spy ring with just a few
correspondents this method works quite well.
X. Laboratory Assignment
You control a small network of agents that includes ROMEO, a
veteran who monitors the activities of
KAOS enemy spies in the Nashville area. On 25 APR 69 you
receive a wireless message from ROMEO. He has established a new
dead drop in White House, Tennessee. The following
Alberti encryption provides you with its location and
description.
Y10XM
XMXU1 UZQT6 LL96V W4T6S CJQS8 FKF8B 6B68V 2E75T U51Y7 Z1KVV
TS5V7
0G1B6 1BZ4X 6WD9A WW510 EZ1FX T5DZB AXFQB UCF1C RCZBC 4714L BE5X6
UR95V
A1WGC FD4R1 GA316 T2TZ1 WT4DX 11BC1 9Y536 410GA 0AXP8 X0L7D 4ZOA0
BC19X
B9X7R
7JKKG
Use the Date-Name-Key algorithm described in Section IX to
generate the key. Follow ROMEO's instructions to complete this
assignment.
XI. Extra Credit
One week later ROMEO sends you the following message:
ZVNT7
ZX4T3 HVC4V 7IMRF 13UHX N319R JYPXA 44IUU LFZSZ QYLIZ 87Y94
5AU6T
7F1A4
ATTX2 Z32YU 1A9UC IZ1X4 UBFV8 FA4EN 95828 3J6B5 A96F6 LBBQG
J41Z5
WCNC1
0W4G3 1HERS 1TZC8 Z86RR AG99D U281R 83N0Z 8BT3Y U1Z5T 311E0
SULNY
018U2
Y1CE5 B3YUX GF4JW RX0AX 7XZ1F 9Q5J5 GB673 URXGA X3H10 1D4GI
VFYVC
7QQ1E
VTHY1 C744L K7GH8 U3SQK
Again use the Date-Name-Key algorithm to generate the key.
Follow ROMEO's encrypted instructions to earn extra credit for your
efforts.