Protecting communications against forgery
Daniel J. Bernstein · 2008
This paper is an introduction to cryptography. It covers secret-key message-authentication codes, unpredictable random functions, public-key secret-sharing systems, and public-key signature systems. Cryptography protects communications against espionage: an eavesdropper who intercepts a message will be unable to decipher it. This is useful for many types of information: credit-card transactions, medical records, love letters. Cryptography also protects communications against sabotage: a forger who fabricates or modifies a message will be unable to deceive the receiver. This is useful for all types of information. If the receiver does not care about the authenticity of a message, why is he listening to the message in the first place? This paper explains how cryptography prevents forgery. Section 2 explains how to protect n messages if the sender and receiver share 128( n + 1)secret bits. Section 3 explains how the sender and receiver can generate many shared secret bits from a short shared secret. Section 4 explains how the sender and receiver can generate a short shared secret from a public conversation. Section 5 explains how the sender can protect a message sent to many receivers, without sharing any secrets.