爱丽丝与鲍伯查看源代码讨论查看历史
爱丽丝(Alice)与鲍伯(Bob)是广泛地代入密码学和物理学领域的通用角色。除了爱丽丝和鲍伯,还有其他相关角色。这些名称是为了方便说明议题,如果句子类似“甲想传送讯息给乙”,当议题变得越复杂,将越难理解及容易混乱。在密码学和电脑安全[1] 中,存在很多这一系列的惯用角色名称,通常是用作代表一些领域。而在典型的协议执行中,这些人物不一定是一个“人类”,而可能是一个可信赖的自动式代理人(如电脑程序)。使用这些名称有助说明的结构,有时也会用作幽默。
人物
以下列表出自布鲁斯·施奈尔所著的《应用密码学》(Applied Cryptography)。爱丽丝和鲍伯在密码学中是最基本的两位代用人物,其次是伊夫(Eve)。头一个英文字母越接近z,该角色的使用率相对上也越低。该些名称由出版于1977年4月4日,于同年9月1日修订的《取得数码签署及公钥的密码系统的方法》(A Method for Obtaining Digital Signatures and Public-Key Cryptosystems)中开始使用。在1978年,罗纳尔多·里弗斯特(Ron Rivest)使用于一篇文章《ACM的通讯》(Communications of the ACM),解释RSA加密演算法。里弗斯特否认这些名称和1969年的电影《Bob & Carol & Ted & Alice|鲍伯、卡罗尔、特德、爱丽丝》(Bob & Carol & Ted & Alice)有关,而是有其他人偶然提议。
- 爱丽丝(Alice)与鲍伯(Bob)。通例上,爱丽丝希望把一条讯息传送给鲍伯。
- 卡罗尔或查利(Carol或Charlie)是通讯中的第三位参加者。
- 戴夫(Dave)是通讯中的第四位参加者。
- 伊夫(Eve)是一位偷听者(eavesdropper),但行为通常是被动的。她拥有偷听的技术,但不会中途篡改传送的讯息。在量子密码学中,伊夫也可以指环境(environment)。
- 艾萨克(Isaac)是互联网服务提供者 (ISP)。
- 伊凡(Ivan)是发行人,使用于商业密码学中。
- 贾斯汀(Justin)是司法(justice)机关。
- 马洛里(Mallory)是一位恶意攻击者(malicious attacker)。与伊夫不同的是,马洛里会篡改传送的讯息。对付马洛里所需的信息安全技术比对伊夫的高出很多。有时亦会叫作马文(Marvin)或马利特(Mallet)。
- 马提尔达(Matilda)是一位商人(merchant),用于电子商务。
- 奥斯卡(Oscar)是敌人,通常与马洛里一样。
- 帕特(Pat)或佩吉(Peggy)是证明者(prover),维克托(Victor)是验证者(verifier)。两人会证实一项事件是否有实际进行,多使用于零知识证明。
- 普特(Plod或Officer Plod)是执法官员。名称来自伊妮·布来敦所著的儿童文学《诺弟》(Noddy)中的角色“普特先生”。
- 史蒂夫(Steve)代指隐写术(Steganography)。
- 特伦特(Trent)是一位可信赖的仲裁人(trusted arbitrator),中立的第三者,根据存在的协议而判断。
- 特鲁迪(Trudy)是侵入者(intruder),等同马洛里。
- 沃特(Walter)是看守人(warden)。根据已存在的协议而保护爱丽丝和鲍伯。
- 佐伊(Zoe)通常是一个安全协定中的最后参与者。