One Time Pad

8 slides · 2 min read · Domain 3

One Time Pad

A perfect cryptosystem that works is as follows

1. Each party has a book (pad) of symmetric keys. Each key is at least as long as the message to be encrypted.

2. A message is encrypted with the first key, then that key is discarded.

3. The message is decrypted on the other side with the first key,then that key is also discarded.

4. After each time a message is encrypted/ decrypted, the key is destroyed and never used again.

For a one-time pad to truly be perfect, the following conditions must be met by the pad

Text on this slide

  • Shared by both sides
  • Used only once
  • Be as long as the message
  • Be securely distributed
  • Made up of truly random values

The only cipher system asserted as unbreakable, as long as it is implemented properly, is referred to as a one-time pad.

These are often referred to as Vernam ciphers after the work of Gilbert Vernam, who proposed the use of a key that could be used only once and that must be as long as the plaintext and that never repeats.

The one-time pad uses the principles of the running key cipher, using the numerical values of the letters and adding those to the value of the key. However, the key is a string of random values and exactly the same length as the plaintext and is never repeated.

Stream ciphers may be, in some cases, equated to what may be referred to as one-time pads. A one-time pad uses a keystream string of bits that is generated completely at random.

The keystream will be the same length as the plaintext message, and again, both are combined using typically the XOR operation. Because the entire keystream is totally random and is used only once, a one-time pad is said to have perfect secrecy, which means it is unable to be defeated by a brute force attack. Stream ciphers were developed to try and apply the action of one-time pads. This practically means that a one-time pad is not breakable by frequency analysis or many other cryptographic attacks.

1011 - plain text 0101 - pad

  • XOR 1110 - cipher text

For example, the plain text is represented as 1011, the one-time pad is 0101, the keystream is the same length as the plain text message and both are combined using the XOR operation, the ciphertext is 1110.

Test this domain