Skip to content

Latest commit

 

History

History
176 lines (122 loc) · 13.3 KB

README.md

File metadata and controls

176 lines (122 loc) · 13.3 KB

A global cast of characters for cryptography

Based on this proposal, here is a list of updated character names for cryptography discussions. See also: Origins and meanings of updated names.

Updated name
Original name Description (derived from Alice and Bob)
Alix Alice Generic character who generally wants to exchange a message or cryptographic key with Bo.
Bo Bob Generic character who generally wants to exchange a message or cryptographic key with Alix.
Caro Carol, Carlos, or Charlie A generic third participant.
Chux Chuck or Chad A third participant, usually of malicious intent.
Cray Craig A password cracker, often encountered in situations with stored passwords.
Davon Dan, Dave, or David A generic fourth participant.
Eri Erin A generic fifth participant, but rarely used, as "E" is usually reserved for Evan.
Evan Eve or Yves An eavesdropper, who is usually a passive attacker. While they can listen in on messages between Alix and Bo, they cannot modify them. In quantum cryptography, Evan may also represent the environment.
Fayzi Faythe A trusted advisor, courier, or intermediary. Fayzi is used infrequently and is associated with faith and faithfulness. Fayzi may be a repository of key services or courier of shared secrets.
Frankie Frank A generic sixth participant.
Gracen Grace A government representative. For example, Gracen may try to force Alix or Bo to implement backdoors in their protocols. Gracen may also deliberately weaken standards.
Heike Heidi A mischievous designer for cryptographic standards, but rarely used.
Iva Ivan An issuer, mentioned first by Ian Grigg in the context of Ricardian contracts.
Jude Judy A judge who may be called upon to resolve a potential dispute between participants.
Mallox Mallory, Mallet, or Darth A malicious attacker. Associated with Truva, an intruder. Unlike the passive Evan, Mallox 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 a Mallox is much greater than against an Evan.
Mico Michael or Mike Used as an alternative to the eavesdropper Evan, from microphone.
Niaj Niaj An alternative to the eavesdropper Evan in several South Asian nations.
Oli Olivia An oracle, who responds to queries from other participants. Oli often acts as a "black box" with some concealed state or information or as a random oracle.
Osher Oscar An opponent, similar to Mallox, but not necessarily malicious.
Pema Peggy or Pat A prover, who interacts with the verifier to show that the intended transaction has actually taken place. Pema is often found in zero-knowledge proofs.
Rudo Rupert A repudiator, who appears for interactions that desire non-repudiation.
Syd Sybil A pseudonymous attacker, who usually uses a large number of identities. For example, Syd may attempt to subvert a reputation system.
Tran Trent or Ted A trusted arbitrator, who acts as a neutral third party.
Truva Trudy An intruder.
Vero Victor or Vanna A verifier, who requires proof from the prover.
Wael Walter A warden, who may guard Alix and Bo.
Wen Wendy A whistleblower with privileged access capable of divulging information.

For interactive proof systems, there are other characters:

Updated name
Original name Description (derived from Alice and Bob)
Artha and Merle Arthur and Merlin Merle provides answers, and Artha asks questions. Merle has unbounded computational ability (like the wizard Merlin). In interactive proof systems, Merle claims the truth of a statement, and Artha questions them to verify the claim.
Pau and Ora Paul (after Paul Erdős) and Carole (anagram of oracle) Pau asks questions, and Ora provides answers. In the solution of the Twenty Questions problem, Pau asked questions, and Ora answered them. Pau and Ora were also used in combinatorial games in the roles of pusher and chooser.
Artha and Beza Arthur and Bertha Artha is the left, black, or vertical player, and Beza is the right, white, or horizontal player in a combinatorial game. Additionally, Artha, given the same outcome, prefers a game to take the fewest moves. Contrarily, Beza prefers a game to take the most moves.

Optional citation

If you use these updated names in your work, until these names become the norm, your readers might benefit from some context. Here's a citation you can choose to include:

This work uses the global cast of characters for cryptography.

Proposal: Toward a global cast of characters for cryptography

The history of Alice and Bob

Who are Alice and Bob? They are the first two of what would eventually grow to become a comprehensive cast of characters used to illustrate cryptographic concepts. Specifically, we use these characters in discussions about entities trying to communicate securely using cryptographic systems and protocols.

For example, with the advent of this cast of characters, instead of saying, “Person A sends a message to Person B,” we could now say, “Alice sends a message to Bob,” humanizing and concretizing the scenario.

The original Alice and Bob characters were first documented by Ron Rivest, Adi Shamir, and Leonard Adleman in their 1978 paper, "A Method for Obtaining Digital Signatures and Public-key Cryptosystems." The fuller cast of characters was fleshed out by Bob Schneier in his 1994 book, "Applied Cryptography: Protocols, Algorithms, and Source Code in C."

Imagining the future of communication

In 1978, when Rivest, Shamir, and Adleman published their paper, there was no internet. Digital communication was a concept of science fiction. People did business in person or over the phone.

However, there were cryptographers of the time who conceived of a future in which remote digital communication would be possible—and they were planning for it.


I certainly imagined purely electronic offices. Or buying and selling from a home terminal. I rather imagined we were moving forward, technically, into a future in which either technology could be used to protect the individual, or technology could be used to assault the individual.

— Whitfield Diffie, co-inventor of Diffie-Hellman-Merkle key exchange, a cryptographic method for securely exchanging encryption keys over a public network


I could foresee a world in which buying a loaf of bread would involve an electronic funds transfer.

— Martin Hellman, co-inventor of Diffie-Hellman-Merkle key exchange


But they [Diffie, Hellman, and Merkle] also had the genius of knowing what might be done to protect our privacy, to protect commerce in such a future.

— Leonard Adleman, co-inventor of the RSA algorithm

Vision becomes reality

As just one example, today, the Transport Layer Security (TLS) protocol is used to encrypt data in transit between clients and servers. TLS supports a range of key exchange mechanisms, including Elliptic Curve Diffie-Hellman (ECDHE) and Ephemeral Diffie-Hellman (DHE), both even more secure evolutions of the original Diffie-Hellman-Merkle key exchange.

When billions of people worldwide use web and mobile apps to connect and communicate, most apps use TLS to enable secure client-server communication.

Not only are we buying bread and working in "electronic offices," secure digital communication has enabled global connections at a scale that people might only have dreamt of 45 years ago.

An update to reflect the global community

The original cast of Alice and Bob characters serves cryptography well and plays a role in helping people from around the world communicate about cryptographic topics.

This proposal suggests updating character names to reflect the global impact of cryptography and the global community's contributions to this study and practice.

People can choose to use updated character names in place of original character names.

Get the list
See A global cast of characters for cryptography.

How were the updated names selected?

Names were selected based on the following criteria:

  • Enables a global community to see itself reflected in discussions when learning about, creating, and using cryptographic solutions

  • Includes at least the first two letters of the original character or role name

    This is meant to help people with recall when transitioning to using updated names.

  • Lends itself to gender neutrality

    This removes the need to specify gender unless it's integral to the topic. This can lead to simplified communication as people can use a single set of singular gender-neutral pronouns: they, their, and them and their forms.

    Use of singular gender-neutral pronouns is increasingly becoming the standard for technical documentation. See Gender-neutral pronouns in the "Google developer documentation style guide."

Origins and meanings of updated names

Here's the list of updated names and their origins and meanings. I compiled names, origins, and meanings based on internet research.

I am certain this work contains flaws. For these unintentional flaws, I sincerely apologize in advance.

I humbly request the community's feedback to help improve upon this list and correct errors.

Updated name
Updated name origin and meaning Original name
Alix Origin: French
Meaning: Noble
Alice
Artha Origin: Sanskrit
Meaning: Riches, wealth
Arthur
Beza Origin: Ethiopian/Amharic
Meaning: Payment, redemption
Bertha
Bo Origin: Chinese
Meaning: Wave
Bob
Caro Origin: Italian
Meaning: Dear, precious
Carol, Carlos, or Charlie
Chux Origin: None
Meaning: None
Chuck or Chad
Cray Origin: Gaelic
Meaning: Curly, prolific
Craig
Davon Origin: English
Meaning: Form of David, meaning beloved, friend
Dan, Dave, or David
Eri Origin: Japanese
Meaning: Blessed prize or reason
Erin
Evan Origin: Welsh
Meaning: Gift, graciousness
Eve or Yves
Fayzi Origin: Arabic
Meaning: Abundance
Faythe
Frankie Origin: English
Meaning: Free
Frank
Gracen Origin: English
Meaning: Steward
Grace
Heike Origin: German
Meaning: Estate rule
Heidi
Iva Origin: Slavic
Meaning: Willow
Ivan
Jude Origin: English, Hebrew
Meaning: Praised
Judy
Mallox Origin: None
Meaning: None
Mallory, Mallet, or Darth
Merle Origin: Estonian
Meaning: Sea
Merlin
Mico Origin: Native American (Choctaw)
Meaning: Chief, leader
Michael or Mike
Niaj Origin: Sanskrit
Meaning: Knowledge, leadership, fairness
Niaj
Oli Origin: Hawaiian
Meaning: Song
Olivia
Ora Origin: Hebrew / Latin
Meaning: Light / Pray
Carole (anagram of oracle)
Osher Origin: Hebrew
Meaning: Happiness
Oscar
Pau Origin: Chinese
Meaning: Treasure, jewel
Paul
Pema Origin: Tibetan
Meaning: Lotus
Peggy or Pat
Rudo Origin: Zimbabwe Shona
Meaning: Love
Rupert
Syd Origin: English
Meaning: Short for Sydney
Sybil
Tran Origin: Vietnamese
Meaning: Peace, calm
Trent or Ted
Truva Origin: Turkish
Meaning: Referring to the ancient city of Troy
Trudy
Vero Origin: Malagasy
Meaning: A tall grass
Victor or Vanna
Wael Origin: Arabic
Meaning: Refuge, shelter
Walter
Wen Origin: Chinese
Meaning: Literature, culture, writing
Wendy

Provide feedback

The success of this proposal depends on constructive feedback and adoption by the 🌏🌍🌎 community.

To provide feedback on this proposal, please open an issue.

If you support this proposal or use the updated cast of characters in your work, consider st⭐️rring this repo.

When contributing to this repo, please follow the community code of conduct.

Gratitude

  • Thank you to P.S. for opening my eyes to the need for more global representation in example person names in technical documentation.

  • Thank you to the "Google developer documentation style guide" for providing their list of Example person names, which helped inspire this work.