Text extracted via OCR from the original document. May contain errors from the scanning process.
216 Are the Androids Dreaming Yet?
One perfect way to encode a message is to use a one-time pad. On
a sheet of paper I write a completely random set of numbers or letters
— since we are going to translate numbers to letters it does not matter
which. I make a copy and give it to a person I later want to send a coded
message. Because I will only use these two paired sheets once it helps to
make a few of them - a pad in fact. By convention, we refer to a single
sheet or a whole book as a one-time pad code. Here is the one-time pad I
created earlier. It is just a random sequence of letters and spaces.
kaleygngaloiuebldlan dlkawoqyevbax gmlsosuebal
To code a message, I substitute numbers for letters as with the
progressive cypher earlier again using modulo arithmetic to wrap around
if I reach the letter ‘z. I have applied my one-time pad to the hello reader
message below to get ‘sfacngfvbpta.
hello reader
sfacngfvbpta
This code is unbreakable — almost! Notice there are very few clues
for anyone wanting to decode it without holding a copy of the pad. Spaces
do not necessarily indicate breaks between words, and letter patterns are
absent. It has only one flaw. The total number of characters and spaces
could have some meaning. This is a problem because if I routinely
communicated bombing targets and my message was “Bomb Bath’. You
could figure out the sender was not going to bomb Bristol if the message
were shorter than 11 letters and spaces. To avoid this problem, messages
are extended with nonsense at beginning and end to make sure no
information can be gleaned from the length. The convention is to code
messages to the full length of the pad. You must never reuse a pad. Each
time you code a message, rip off that page rather like a calendar. Destroy
it and use the next page for the next message. At the other end, the
recipient uses his copy of the pad to run the process in reverse. Decode
the message by swapping each letter according to the modulo method,
rip the page from the pad, and burn it. Because each key is only used
once you can't use any sort of statistical method to work out the message,
making the one-time pad perfectly secure. Claude Shannon proved this
in 1945 while working for Bell Corporation but, due to wartime secrecy,
his proof was not published until 1948.
HOUSE_OVERSIGHT_015906