One-Time-Pad (OTP) is a symmetric encryption method in which the key is used only once for the encryption of a single message. The key has at least the same length as the message itself. The method is considered to be very secure.
What is a One-Time-Pad (OTP)?
The abbreviation OTP stands for the term one-time-pad and refers to a symmetric encryption method that uses the key only for the encryption of a single message at a time. OTP should not be confused with the term One-Time Password, which is also often abbreviated to OTP.
The key used for One-Time-Pad must be at least as long as the message to be encrypted. The characters of the key must also not contain patterns and must be random. Digital encryption with OTP involves XORing the plaintext with the key. For this purpose, the message and the key are first transformed into a bit sequence.
The encrypted message is created by exclusive-or-linking the first bit of the key with the first bit of the message and then all other bits in the specified order. XORing the encrypted text with the key reverses the process and restores the plaintext.
One-time-pad encryption is considered very secure, but it is very costly due to the requirements for key length and key properties. To use the method, the communication partners must be in possession of the same key. This key must be exchanged beforehand via a secure medium.
If the keys are not randomly selected or are used more than once, the security of the procedure is no longer guaranteed. The origins of One-Time-Pad go back to the American cryptologist Frank Miller, who first proposed the method in 1882. Gilbert Vernam applied for a patent for it at the beginning of the twentieth century.
The application of OTP was, for example, the highly secure direct teletype connection between the Soviet Secretary General and the American President during the Cold War.
The requirements for the OTP key
To ensure that one-time encryption with One-Time-Pad is actually secure and that the secret code cannot be decrypted without authorization, the key used must meet the following mandatory requirements:
- The key must have at least the same length as the message to be encrypted
- The characters of the key must be random and equally distributed
- The key must be known only to the communication partners
- Each key is to be used only for the encryption of a single message
These requirements make the symmetric encryption method quite complex to use. For example, if large amounts of data are to be encrypted, long keys must be generated. Encrypting a memory stick or a complete hard disk requires keys the size of a memory stick or a hard disk as well.
Random generators must be used to generate the keys. Often computers generate only pseudo-random numbers that depend on certain algorithms or starting values. The less random the characters of the key, the less secure the procedure.
Another hurdle to the use of one-time encryption is the effort required to exchange keys. For each message, the partners must first obtain the corresponding key. A secure procedure must be selected for this. Because of the effort required for key exchange and the required key lengths, the procedure has not become established in the Internet environment.