当前位置: 首页 > news >正文

密码学中的爱丽丝与鲍勃

 密码学中的爱丽丝与鲍勃

转载自:维基百科

爱丽丝(Alice)与鲍伯(Bob)是广泛地代入密码学和物理学领域的通用角色。除了爱丽丝和鲍伯,还有其他相关角色。这些名称是为了方便说明议题,如果句子类似“甲想传送讯息给乙”,当议题变得越复杂,将越难理解及容易混乱。在密码学和电脑安全中,存在很多这一系列的惯用角色名称,通常是用作代表一些领域。而在典型的协议执行中,这些人物不一定是一个“人类”,而可能是一个可信赖的自动式代理人(如电脑程序)。使用这些名称有助说明的结构,有时也会用作幽默。

人物列表

一个以爱丽丝和鲍伯解释非对称密钥加密的例子以下列表出自布鲁斯·施奈尔所著的《应用密码学》(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加密演算法。

爱丽丝(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)通常是一个安全协议中的最后参与者。

相关文章:

  • 产业新低:杜拜太阳能得标价跌破3美分!
  • 网络客户端
  • FFmpeg深入分析之零-基础
  • linux 查看文件数
  • Android Studio中架包打包和依赖冲突解决
  • 二十三、oracle pl/sql分类三 包
  • 自己写的一部分斗地主的程序,没有去写界面,临时是用黑框来显示的
  • 《计算机网络(第五版)》中学习理论与实践
  • ADB操作命令相关
  • IBM云对象存储Cleversafe 大力拓展全新战场
  • ETHERCHANNEL的配置
  • 使用 FreeMarker 替换 JSP 的 10 个理由
  • flex中textinput限制输入长度与某些字符
  • RxJava 2.x 使用最佳实践
  • 在Cisco路由器上实现PPTP server及 Radius认证
  • JS 中的深拷贝与浅拷贝
  • laravel5.5 视图共享数据
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Vue2 SSR 的优化之旅
  • 第13期 DApp 榜单 :来,吃我这波安利
  • 解决iview多表头动态更改列元素发生的错误
  • 聊一聊前端的监控
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 容器服务kubernetes弹性伸缩高级用法
  • 如何进阶一名有竞争力的程序员?
  • 物联网链路协议
  • 一、python与pycharm的安装
  • 原生 js 实现移动端 Touch 滑动反弹
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • #《AI中文版》V3 第 1 章 概述
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • (done) 两个矩阵 “相似” 是什么意思?
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (ZT)薛涌:谈贫说富
  • (博弈 sg入门)kiki's game -- hdu -- 2147
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (免费分享)基于springboot,vue疗养中心管理系统
  • (十八)用JAVA编写MP3解码器——迷你播放器
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • **登录+JWT+异常处理+拦截器+ThreadLocal-开发思想与代码实现**
  • .Net core 6.0 升8.0
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • /etc/skel 目录作用
  • @Bean有哪些属性
  • @value 静态变量_Python彻底搞懂:变量、对象、赋值、引用、拷贝
  • [ 网络基础篇 ] MAP 迈普交换机常用命令详解
  • [android] 看博客学习hashCode()和equals()
  • [C\C++]读入优化【技巧】
  • [C++ 从入门到精通] 12.重载运算符、赋值运算符重载、析构函数
  • [C++] 默认构造函数、参数化构造函数、拷贝构造函数、移动构造函数及其使用案例
  • [C++][基础]1_变量、常量和基本类型
  • [CSS3备忘] transform animation 等