Encryption via a One-Time Pad

Dan Morgan 76

This article presents an example of how message encryption is done using a one-time pad(OTP).

In cryptography, the OTP is a very simple, yet completely unbreakable, symmetric cipher. The OTP is essentially a pad of papers on which each page has a unique set of random letters. The sender and receiver are given two pads. One half of one set for encipher and one half of another set for decipher goes to each person. Each letter on the pad is used to determine a single letter of the enciphered message. Since the letters on the pad are random, there is no formula that can be determined by studying the letters. Assuming that the pad is not compromised, and each page is used only once, the OTP system is unbreakable. That is why the one time pad is considered to be the holy grail of cryptography.  

The rules of OTP use are:

1. The key text code must always be longer than the message to be encrypted.
2. Use each key text one time, then destroy it.
3. The OTP must be kept secure to avoid compromise.

This is an example of a ONE TIME PAD page – The pad page name is the first key group, This would be page “UMAZP”.

UMAZP ETDRA NFJEW LKUKK OBWYM XWDKJ BDIZC HAVQZ LKJOD NJIBZ
IGXNX WAYHN MTJSY BJVDC YLDTE RYAEM NXVBD YVCAN VVRWQ IWNCS
LPIJU TFXYZ KBWKU VMLBA BLYEB WPEVK MMLIE JZQOD TNNHU AAYKW
BVWDB TSJYI AINOF CXTRB LJIME GCYUZ DSOAW WLIZM THAYG BOHVY
DOPTV UYDTM OLYLS ATCSX USRSD KUCGG UIHXP ERFWV NOKHT

The key letters on the pad, and the messages themselves, are typically written in 5-letter groups. This helps the communicators to verify the length of the message, and if something was misunderstood, the receiving person could ask for a certain group to be repeated. When encrypting the message to be sent, the first 5 letter group on the encrypt pad page is sent “in the clear” or not encrypted, in order for the receiving communicator to locate the correct page in the pad to start decrypt from. Numbers are written long hand; “1” is written “one” etc. If the last word group does not equal 5 letters the remaining plain text letters are filled in with the letter(s) x to finish out the message. Each message should end with the letters “BTAR” to signify the end of the message to the receiver. Each page of the pad is sealed and must not be opened until actually enciphering or deciphering. The key text may not be reused and the used pages should be burned with the resulting ashes mixed in water to make a slurry after each use.”

To use the OTP, a method is needed for mixing a letter of plain text with the corresponding letter of the key text (from the pad), to produce a letter of enciphered text. The method used is called a “Vigenere’s Tableau”, or Tri-graph (see the first picture, below). The Tri-graph has the alphabet in the left-most column, and also across the top (printed in black in the picture). For each row, there is a shifted-reverse alphabet (printed in red). So, the “A” row lists the alphabet backwards, beginning with Z and ending with A. The “B” row begins with Y and ends with Z, etc.

otp_side1

Begin message encryption by first removing the top page from the pad. The page is removed so that the plain text message is not impressed into the paper of the page below. The plain text message is written directly under the key text on the removed page starting at the second key text group. The first group is not encrypted in order to identify to the receiving party, the page to start decryption with. To encrypt the first letter in a message, go to the row on the Tri-graph corresponding to the plain-text letter, then go to the column indicated by the first letter on your OTP. The letter at the row-column intersection is the encrypted letter. The Tri-graph does not contain any ‘secret’ information – it simply provides the mechanism for combining plain and key text into enciphered text.

For example, suppose that the message is “AMMO RESUPPLY AT OLD BARN TONIGHT” :

ETDRA NFJEW LKUKK OBWYM XWDKJ BDIZC HAVQC- this is the key text (from example above).
AMMOR ESUPP LYATO LDBAR NTONI GHTBT ARXXX —– this is the plain text written in 5 letter groups directly below the key text.
VUKUI ICWGO DRFWB AVCYW PKICI SPYZE SIKMD—– this is the enciphered text.

“E” from the cipher text, plus “A” from the plain text combined in the trigraph equals “V”. To decrypt a message, combine the Trigraph letter with the decrypt pad letter to break out the plain text message. If your wondering why the first group UMAZP was not used in the example above, remember, it would be sent in the clear, to i.d. the page to start decrypt with. When sending a message with this method, the sender should include a special, pre-arranged word, known only to the sender and receiver, in the same group, say…group 5, of every message. If this word is left out, the receiver would suspect that the pad or sender had been compromised. All computer based encryption methods use a similar type of authentication.

In order to generate your own OTP, you need a True Random Alpha Generator. Beware of any generator listed as a “Pseudo-random Alpha Generator. The pseudo generator uses a computer based mathematical algorithm that can be broken, while a true generator uses the algorithm in combination with some random, chaotic input, such external noise, to accomplish generation. One example of an inexpensive (about $20) true random generator can be found at: http://www.truly-random.com/ . It is listed as a pseudo generator, but note that it will generate true random characters with the addition of a sound card on any computer. Attach any small external microphone to the sound card. The software will inform you if you have an adequate sound level input to randomize. When running the program select True Random, uppercase, length 5, choose the number of groups (I usually select 100), no duplicates, and press generate. Copy and paste to any word processor document and format for 10 groups in each row. Print out your pages, crop and staple into pads. I would seal the edges of each pad with wax. Then the pages must be pealed apart when needed and tampering would be evident. Make two copies of each pad marking one as encrypt and the other decrypt. Send the encrypt pad from one set, and a decrypt pad from another set, to whomever you wish to communicate with. Don’t forget to also send along a Trigraph. Another method would be to copy your key text on to flash drives and distribute them.

This tried and true method of encryption is slow and cumbersome. It can be used for all types of communication; dead letter drops, snail mail, email, telephone and radio communications. It requires p

http://danmorgan76.wordpress.com/2013/09/30/encryption-via-a-one-time-pad/

3 thoughts on “Encryption via a One-Time Pad

  1. It is fairly simple, but not as explained here. There are many good web sites if you google “one time pads”. Basically you create a bunch of one time pads using a random number generator. (Google random number generator for a bunch of generators). Then you print out 2 copies of each group you have produced, and give each pair a name, like, apple, orange, grape, etc. One copy of each group has to go to your buddy, or if you are conversing with a militia, print 30 copies of each group. If any of these copies falls into enemy hands than the entire thing is compromised, and everyone destroys all copies, and starts again. To use the one time pad, you start at the first page, etc. apple, and broadcast your encoded message. (everyone uses the same cheat sheet to encode or decode the messages) After this message is completed, everyone destroys the copy of apple, and the next message will be the random numbered sheet called orange. A little research will fill you in on how to best use the system. It is secure, but cumbersome, because every party has to have this pad of paper distributed by one leader. How do they get it? Mail, internet, hand carried. Lots of traps along the way of receiving your pad, and lots of chances that someones pad will be compromised by the enemy. Hope I helped.

Join the Conversation

Your email address will not be published. Required fields are marked *


*