## On the Subject of the Lorenz CM

A machine that knows no bounds when it comes to ciphers.

This cipher uses 2 pages.

Create an Lorenz machine by following the instructions below:

• 1: Write down 16 zeros for row 1, 13 zeros for row 2, 11 zeros for row 3, 9 zeros for row 4, and 7 zeros for row 5.
• 2: For each letter on page 1 screen 1, replace the zero with a one with at row 1, at the column equal to the alphabetic position of the letter (A1Z26). Shift the bits to the left equal to the alphabet position of the letter displayed on page 1 screen A, minus 1 (A0Z25).
• 3: Repeat step 2 for row 2 using the letters on page 1 screen 2 and the letter on page 1 screen B.
• 4: Repeat step 2 for row 3 using the letters on page 1 screen 3 and the letter on page 1 screen C.
• 5: Repeat step 2 for row 4 using the letters on page 1 screen 4 and the letter on page 1 screen D.
• 6: Repeat step 2 for row 5 using the letters on page 2 screen 1 and the letter on page 2 screen A.

If the Boolean Expression on page 2 screen B is true, the machine is using an XOR Gate. Otherwise, it is using an XNOR Gate.

For each letter of the encrypted word, do the following:

• Convert the Nth letter of the encrypted word into a 5 digit binary number (A = 00000, B = 00001...Z = 11001).
• Read the left most column of the Lorenz Machine top to bottom so that the top-most bit becomes the most significant bit and the bottom-most bit becomes the least significant bit.
• Apply the gate the machine is using to the 2 binary numbers.
• If the Nth bit on page 2 screen 3 is a 1, invert the bits.
• Convert the resulting binary number back into a letter (A0Z25) to get your Nth Decrypted letter.
• If the Nth bit on screen 2 is a 1, shift each row on the Lorenz Machine to the left one.
 A N 00000 01101 00001 01110 00010 01111 00011 10000 00100 10001 00101 10010 00110 10011 00111 10100 01000 10101 01001 10110 01010 10111 01011 11000 01100 11001
INPUTXORXNOR
0001
0110
1010
1101

#### Example

Encrypted Word: BMECBX
Page 1 Screens 1A: DFGJKLOP, F
Page 1 Screens 2B: DFGIKLM, J
Page 1 Screens 3C: ABDEHJ, I
Page 1 Screens 4D: BEFH, I
Page 2 Screens 1A: BDG, E
Page 2 Screen 2: 11100
Page 2 Screen 3: 001100
Using XNOR Gate

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

Shifting the rows: FJIIE

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

B → 00001 + 10000 + 0 → 01110 → O
1st bit is a 1, shifting the Lorenz Machine

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

M → 01100 + 11100 + 0 → 01111 → P
2nd bit is a 1, shifting the Lorenz Machine

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

E → 00100 + 01011 + 1 → 01111 → P
3rd bit is a 1, shifting the Lorenz Machine

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

C → 00010 + 01100 + 1 → 01110 → O
4th bit is a 0, don’t shift the Lorenz Machine

B → 00001 + 01100 + 0 → 10010 → S
5th bit is a 0, don’t shift the Lorenz Machine

X → 10111 + 01100 + 0 → 00100 → E

Decrypted Word: OPPOSE