September 11 2022
Home | Cryptography by Hand | Prev | Next · |
This is a variant of the historical CT-37c translation table. Use it when translating English to and from decimal code when using one-time pads:
CODE i a t o n e 0 1 2 3 4 5 6 b c d f g h j k l m 70 71 72 73 74 75 76 77 78 79 p q r s u v w x y z 80 81 82 83 84 85 86 87 88 89 NUM . : ' + - = ? DIG SP 90 91 92 93 94 95 96 97 98 99
0 (CODE) means that the next three digits identify a special code. You and your partner will need a codebook. Codes are a great way to represent long words or phrases (longer than four characters) that you frequently use. For example, if code 184 means "dollars" in your code book, then 0184 in a message means "dollars".
90 (NUM) means that subsequent groups of three digits represent single-digit numbers. Seeing 90 again terminates this. For example, 9000044422290 means "042", 9055590 means "5", and 9099990 means "9". Repeating a number three times reduces the likelihood that a single mistake encrypting or decrypting the message will garble the number (9001090 is clearly "0" even though there's a 1 in the message). You can add punctuation, such as 901119155590 for "1.5".
98 (DIG, or "digits") means that a long number follows. The next digit specifies how many numeric digits follow; those digits should be interpreted as literal numeric digits. For example, 98242 is "42", 986123456 is "123456", and 983020 is "020". If the number is longer than nine digits, use 98 (DIG) as many times as you need to write the complete number. 98 (DIG) is more compact than 90 (NUM) but risks getting the wrong number due to encryption and decryption mistakes. If you see or use 98 (DIG), triple-check your encryption and decryption math!
99 (SP) is a literal space character. Use it when you need to clearly separate words. (Very often, messages are readable without spaces.)