HCM 5 rotors, Paper emulation


Home Page
The Hebern's machine

Introduction

To understand how the Hebern 5-rotor machine worked, Friedman created an emulator made from sliding strips of paper.

This paper emulator allowed him to analyze and decipher the cryptograms he studied.

Description

Each strip corresponding to a wheel: a rotor or a ratchet wheel. A ratchel wheel is described simply by a doubled alphabet. A rotor is made up of two lines, NAL and MAL (NAL1 and MAL1 for the 1st rotor). The NAL line corresponds to a doubled alphabet and the MAL line corresponds to the reverse permutation of the rotor.

A paper support allows the strips to slide. The first column allows the keying. A benchmark materializes it.

We have in order (from top to bottom): the LAW ratchet wheel, the reverse Keyboard (LFS) substitution, the rotor in position I, the rotor in position II, the rotor in position III, the rotor in position IV, the rotor in position V, the lampboard substitution (RFS) and finally the RAW ratchet wheel.

Note: The LFS and RFS permutations are fixed and do not move (they are part of the support).

Usage

Keying

The order of the five rotors depends on the key of the day. On the other hand, the lateral position of a rotor or a ratchet wheel depends on the message key. You must advance (slide to the left) with each ciphered letter, at least the strips corresponding to the rotor in position V and the RAW ratchet wheel.

We think about moving the rotors forward before encrypting. For example, if the message key is SIGNALS, put in the first column the S of the LAW wheel, the I of the NAL1 line, the G of the NAL2 line, the N of the NAL3 line, the A of the NAL4 line , the M of the NAL5 line (the rotor has moved forward), the T of the RAW wheel (which has also moved forward).

        set
         |
...MNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ LAW
         BSXRZTKDNGCHMVOLYQEUPWJAIF  LFS
         |                      |
 ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ Rotor 1
 BDFCWPAOMSHXVIEUQZYGJTNLRKBDFCWPAOMSHXVIEUQZYGJTNLRK = Army =
         |                   |
   ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ Rotor 2
   WYDHKPUQAJFOTCMIVZSEGLNRXBWYDHKPUQAJFOTCMIVZSEGLNRXB = Army =
         | |
...HIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ Rotor 3
...NXBTFMRPAWOUGIQECKYHLSZVDJNXBTFMRPAWOUGIQECKY = Army =
         ||
         ABCDEFGHIJKLMNOPQRSTUVWXYZ... Rotor 4
         DKHXWAFYORVBIMPTJEUQSCGLNZ... = Army =
         |          |
...GHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ Rotor 5
...DPLJUXZGKOBTWCVMHEQNFRISYADPLJUXZGKOBTWCVMHEQN = Army =
         |                        |
         TYOEUMXDFJQVKWBNSHCILRZAGP  RFS
         |
...NOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ RAW
         |
        set

Encryption of a character

If we want to encrypt the letter A. We start by looking for this letter in the LFS line. Then, we look for the letter below. It is the letter F of the NAL1 line.

We then look for the letter F in line MAL1. Then, we take the letter below. This is the letter A of the NAL2 line. We look for the letter A in the MAL2 line and take the letter below. This is the letter P of the NAL3 line. We look for the letter P in the MAL3 line and take the letter below. This is the letter B of the NAL4 line. We look for the letter B in the MAL4 line and take the letter below. This is the letter X of the NAL5 line. We look for the letter X in line MAL5 and take the letter below. This is the letter P of the RFS line. This is the result of the encryption: A gives P.

      set
      |
LAW   S . . . . . . . . . . . . . . . . . . . . . . . . .
LFS   . . . . . . . . . . . . . . . . . . . . . . . A . .
                                                    |
NAL1  . . . . . . . . . . . . . . . . . . . . ------F . .
MAL1  . . . . . . . . . . . . . . . . . . . . F . . . . .
                                              |
NAL2  . . ------------------------------------A . . . . .
MAL2  . . A . . . . . . . . . . . . . . . . . . . . . . .
          |
NAL3  . --P . . . . . . . . . . . . . . . . . . . . . . .
MAL3  . P . . . . . . . . . . . . . . . . . . . . . . . .
        |
NAL4  . B ------------------- . . . . . . . . . . . . . .
MAL4  . . . . . . . . . . . B . . . . . . . . . . . . . .
                            |
NAL5  . . . . . . . . . . . X----------------------------
MAL5  . . . . . . . . . . . . . . . . . . . . . . . . . X
                                                        |
RFS   . . . . . . . . . . . . . . . . . . . . . . . . . P
RAW   T . . . . . . . . . . . . . . . . . . . . . . . . .
      |
     set
Note: I describe this example also on page genuine messages, in which I use my simulator in python.

Make your own emulator

I created a document in PDF format that you can print. It allows you to create your own paper emulator of the Army Hebern 5 rotor machine.

You must cut out each strip (the five rotors and the two ratchet wheels) and the paper backing.

To put the strips on, either you make incisions at the level of the double lines, or you glue strips on the right and left for each rotor in which the strips can slide.

Instead of using paper, you can use cardboard or wood.

Here is the hyperlink: emulator.

Web Links

  • ANALYSIS OF A MECHANICO-ELECTRICAL CRYPTOGRAPH, PART I, TECHNICAL PAPER, BY WILLIAM F. FRIEDMAN Cryptanalyst, Chief of Signal Intelligence Section UNITED STATES GOVERNMENT PRINTING OFFICE, WASHINGTON: 1934, Secret. (link)
    The paper emulator is described in Section III (Basic cryptographic principles of operation).