Alice and Bob are the names of fictional characters used for convenience and to aid comprehension. For example, "How can Bob send a private message M to Alice in a public-key cryptosystem?" is believed to be easier to describe and understand than "How can B send a private message M to A in a public-key cryptosystem?"
The first mention of Alice and Bob in the context of cryptography was in Rivest, Shamir, and Adleman's 1978 article "A method for obtaining digital signatures and public-key cryptosystems." They wrote, "For our scenarios we suppose that A and B (also known as Alice and Bob) are two users of a public-key cryptosystem" (p. 121). Previous to this article, cryptographers typically referred to message senders and receivers as A and B, or other simple symbols. In fact, in the two previous articles by Rivest, Shamir, and Adleman, introducing the RSA cryptosystem, there is no mention of Alice and Bob.
Within a few years, however, reference to Alice and Bob in cryptological literature became a common trope. Cryptographers would often begin their academic papers with reference to Alice and Bob. For instance, Michael Rabin began his 1981 paper, "Bob and Alice each have a secret, SB and SA, respectively, which they want to exchange." Early on, Alice and Bob were starting to appear in other domains, such as in Manuel Blum's 1981 article, "Coin Flipping by Telephone: A Protocol for Solving Impossible Problems," which begins, "Alice and Bob want to flip a coin by telephone."
Although Alice and Bob were invented with no reference to their personality, authors soon began adding colorful descriptions. In 1983, Blum invented a backstory about a troubled relationship between Alice and Bob, writing, "Alice and Bob, recently divorced, mutually distrustful, still do business together. They live on opposite coasts, communicate mainly by telephone, and use their computers to transact business over the telephone." In 1984, John Gordon delivered his famous[to whom?] "After Dinner Speech" about Alice and Bob, which he imagines to be the first "definitive biography of Alice and Bob."
In addition to adding backstories and personalities to Alice and Bob, authors soon added other characters, with their own personalities. The first to be added was Eve, the "eavesdropper." Eve was invented in 1988 by Charles Bennet, Gilles Brassard, and Jean-Marc Robert, in their paper, "Privacy Amplification by Public Discussion." In Bruce Schneier's book Applied Cryptography, other characters are listed.
Cast of characters
An example of an "Alice and Bob" used in cryptography.
The most common characters are Alice and Bob. Eve, Mallory, and Trent are also common names, and have fairly well-established "personalities" (or functions). The names often use rhyming mnemonics (for example, Eve, "eavesdropper"; Mallory, "malicious"). Other names are much less common, and flexible in use.
Alice and Bob. The original, generic characters. Generally, Alice and Bob want to exchange a message or cryptographic key.
Carol, Carlos or Charlie. A generic third participant.
Chuck. A third participant, usually of malicious intent.
Craig. A password cracker, often encountered in situations with stored passwords.
Dan, Dave or David. A generic fourth participant.
Erin. A generic fifth participant, but rarely used, as "E" is usually reserved for Eve.
Eve. An eavesdropper, who is usually a passive attacker. While she can listen in on messages between Alice and Bob, she cannot modify them. In quantum cryptography, Eve may also represent the environment.
Faythe. A trusted advisor, courier or intermediary. Faythe is used infrequently, and is associated with Faith and Faithfulness. Faythe may be a repository of key service or courier of shared secrets.
Frank. A generic sixth participant.
Grace. A government representative. For example, Grace may try to force Alice or Bob to implement backdoors in their protocols. May also deliberately weaken standards.
Heidi. A mischievous designer for cryptographic standards, but rarely used.
Judy. A judge who may be called upon to resolve a potential dispute between participants.
Mallory or (less commonly) Mallet A malicious attacker. Associated with Trudy, an intruder. Unlike the passive Eve, Mallory/Mallet is an active attacker (often used in man-in-the-middle attacks), who can modify messages, substitute messages, or replay old messages. The difficulty of securing a system against Mallory/Mallet is much greater than against Eve.
Michael, or Mike. Used as an alternative to the eavesdropper Eve. See Microphone.
Niaj. Used as an alternative to the eavesdropper Eve in several South Asian nations
Olivia. An oracle, who provides external data to smart contracts residing on distributed ledger (commonly referred to as blockchain) systems.
Oscar. An opponent, similar to Mallory, but not necessarily malicious.
Peggy, or Pat. A prover, who interacts with the system to show that the intended transaction has actually taken place. Peggy is often found in zero-knowledge proofs. Similar to Victor or Vanna.
Arthur and Merlin: Merlin provides answers, and Arthur asks questions. Merlin has unbounded computational ability (like the wizard Merlin). In interactive proof systems, Merlin claims the truth of a statement, and Arthur (like King Arthur), questions him to verify the claim.
Arthur and Bertha. Arthur is the "Left", "Black", or "Vertical" player, and Bertha is the "Right", "White", or "Horizontal" player in a combinatorial game. Additionally, Arthur, given the same outcome, prefers a game to take the fewest number of moves. Bertha likewise prefers a game to take the most number of moves.
The names Alice and Bob are also often used to name the participants in thought experiments in physics.
^Bruce Schneier (1994), Applied Cryptography: Protocols, Algorithms, and Source Code in C, Wiley, ISBN9780471597568, p. 44: "Mallet can intercept Alice's database inquiry, and substitute his own public key for Alice's. He can do the same to Bob."
^Charles L. Perkins et al. (2000), Firewalls: 24seven, Network Press, ISBN9780782125290, p. 130: "Mallet maintains the illusion that Alice and Bob are talking to each other rather than to him by intercepting the messages and retransmitting them."
^Brian LaMacchia (2002), .NET Framework Security, Addison-Wesley, ISBN9780672321849, p. 616: "Mallet represents an active adversary that not only listens to all communications between Alice and Bob but can also modify the contents of any communication he sees while it is in transit."
^Shlomi Dolev, ed. (2009), Algorithmic Aspects of Wireless Sensor Networks, Springer, ISBN9783642054334, p. 67: "We model key choices of Alice, Bob and adversary Mallet as independent random variables A, B and M [...]"