情人节|致爱丽丝……
很久很久以前,有这样一对夫妇,他们密不可分,同时也是一对纠缠不清的欢喜冤家。有 A 出现的地方,就一定有 B,不管发生什么事,A 总是想方设法地给 B 发送消息,而 B 则小心翼翼地接受它。
你一定很好奇,这 A 和 B 都是谁?相信有人已经猜到了,他们就是密码学界的第一 CP :Alice and Bob。今天是情人节,我们就来重温一下他们的旷世网恋吧。
有人会问为什么不是 Peter and Jane 或者是 Mike and Linda,一定要是 Alice 和 Bob 呢?
其实 Alice 和 Bob 是两个虚构人物,他们诞生于 1978 年 2 月发表的一篇名叫《一种实现数字签名和公钥密码系统的方法》( A Method For Obtaining Digital Signatures And Public-key Cryptosystems )的论文里。
作者是三位密码学家 Rivest、Shamir 和 Adleman。如果你了解密码学的一些知识,你一定会知道一个著名的密码学体制——RSA 密码体制,就是由这三位作者姓名的首字母缩写而成。
Rivest、Shamir、Adleman 也因为提出了 RSA 密码体制,最终于 2002 年获得了计算机领域的最高奖项:ACM 图灵奖。
如果没有 Alice 和 Bob ,我们在跟别人讲解密码协议的时候,大概会这样描述:
A 与某个声称自己是 B 的人通信。为了确保无误,A 必须先看看 B 是否知道密码 K。因此 A 向 B 发送了一段随机的 X,B 用 K 将 X 加密后得到 Y 并将 Y 回传给 A。
人们通常的惯例是将信息的发送者标识为 A,将接收者标识为 B。 用 Alice 和 Bob 这样的称呼也是科技交流中最不寻常的方法,这种方法避免在描述中使用 A 和 B,而且创建了一男一女的角色,也能避免出现用 He 或者是 She 指代不明的情况。就这样 Alice 和 Bob 成为了行业惯例,甚至是多个行业的红人。
密码学家都喜欢传统。自从 Ron Rivest 在很多年前引入这两个名字后,几乎所有关于密码学的论文和书籍在叙述时都使用 Alice 和 Bob 作为虚拟主角。如果你使用 Amily 或者 Billy 作为主角的话,就没有人会相信这一章的内容了。
在 RSA 算法论文发表后,Alice 和 Bob 彻底走红了,人们开始用这两个名字代替 A 和 B,其中就有著名的《应用密码学》的作者 Bruce Schneier。
《应用密码学》的出版是 Alice 和 Bob 历史上的一个重要里程碑,主要是因为它确定了他们的其他社交圈。按照当时的习惯,Schneier 在整本书提供的示例中使用 Alice 和 Bob 作为发送者和接收者的替身。但是,鉴于本书的规模和范围,他的例子还需要其他许多参与者。因此,Schneier 创建了他的角色列表及其预期用途。以下是 Alice 和 Bob 的其他伙伴:
其中比较著名的是第三者 Eve 了。
Schneier 总结说:“Alice 和 Bob 共享过秘密,尝试过恋爱、结婚,甚至离婚。任何一件需要安全进行的事,Alice 和 Bob 都一定曾在某篇密码学文章中做过。”
1984 年 4 月,Alice 和 Bob 这对夫妻又一次名声大噪。密码学家 John Gordon 在他著名的《餐后演讲》上这样说:
多数人处于 Alice 的境地时都会选择放弃,但是 Alice 不会。她很有勇气,面对各种情况处变不惊。噪声嘈杂的电话线、税务机关和秘密警察的窃听,Alice 还是乐意去尝试和一个她并不信任、也听不清、还极有可能被别人冒充的人通信,来进行退税欺诈甚至策划政变,同时还要尽可能地减少电话费。
而编码学家则是一群认为 Alice 没疯的人。
这是第一个给 Alice 和 Bob 编故事的人。Gordon 的演讲使得使 Alice 和 Bob 成为了密码学界中的虚拟主人公。后来他回忆道:没人记得我做过什么,但是现在每个人都知道我写了有关 Alice 和 Bob 的故事。完整演讲:
https://urbigenous.net/library/alicebob.html
那么现在 Alice 和 Bob 怎么样了?是不是分手了或者是不再那么出名了。显然不是!2012 年,计算机科学家 Srini Parthasarathy 撰写了一篇题为“ Alice 和 Bob 可以去度假!”的文档。
这位印度学者希望可以用印度教神话的中心人物 Sita and Rama 来代替 Alice 和 Bob,他认为,通过将 Alice 和 Bob 换成 Sita 和 Rama,可以更好地解释他们的背景,并且他们名字的首字母(“ S”和“ R”)直接对应于通信通道中的发送方和接收方。
显然这无法撼动 Alice 和 Bob 在行业中的地位。因为 Alice 和 Bob 反映的是密码学历史上的规范和价值,我们也更希望看到他们的名字继续传承下去。希望在未来的日子里 Alice 和 Bob 能早日结束艰难的通信,幸福滴生活在一起,永远不分开。
虽然这个情人节大部分人都只能宅在家中,体验了一次“异地恋”,但是还是要祝天下的有情人终成眷属!
图书推荐:
史上最好懂的密码学
《图解密码技术(第3版)》
作者:结城浩
译者:周自恒
豆瓣评分 9.3,本书以图配文的形式,详细讲解了 6 种最重要的密码技术:对称密码、公钥密码、单向散列函数、消息认证码、数字签名和伪随机数生成器。
文末畅聊
说说今天跟你的 Alice 或者 Bob 是怎样度过的?(Alice 和 Bob 也可以是任意物件)听说在家的日子让大家厨艺见长,你都收获哪些技能?精选留言选出 3 位获得任意一本图灵新书。留言截至 2020.2.19
题图来源:freepik.com
参考文献:
1. http://cryptocouple.com/#contact
2.https://blog.csdn.net/qq_31737339/article/details/53728201
推荐阅读:
2020年图灵教育重磅新书预告,本本都让人无法割舍
DevOps面面观
调试一段代码两个小时都没搞定,继续死磕还是寻找其他方式?
情人节|致爱丽丝……相关推荐
- 致爱丽丝 之MY收藏
致爱丽丝贝多芬 精品五线谱: 双手简谱: 乐曲简介: 关于这首乐曲的创作背景有许多种说法.其中受到广泛认可的观点则认为这首乐曲可能是作者四十岁时(1810年)为他的学生,名叫伊丽莎白·罗克尔的女高音歌 ...
- 致爱丽丝用计算机怎么弹,致爱丽丝电子琴谱应该怎么弹
<致爱丽丝>是路德维希·范·贝多芬作曲的一首钢琴曲.<致爱丽丝>创作于1810年4月27日.致爱丽丝电子琴谱怎么弹?下面是学习啦小编为您整理的关于致爱丽丝的电子琴谱,希望对您有 ...
- Arduino实验——蜂鸣器播放《致爱丽丝》
蜂鸣器,是一种可以发出单调声音的器件,在电子 DIY 领域应用广泛,因为它使用简单,不像扬声器一样需要用准确的音频信号来控制.蜂鸣器分为有源蜂鸣器和无源蜂鸣器.其中 "源" 不是指 ...
- 计算机音乐致爱丽丝,听音乐《致爱丽丝》
浑然之间,喜欢上了听音乐,而且是纯音乐没有歌词的那种,已经接连几日了,每天都听一曲,今天选择的是<致爱丽丝>. 先听-- 我的台灯,此刻正趴在电脑桌上方凸起的玻璃平台上,就是身体完全着地的 ...
- 计算机音乐致爱丽丝,致爱丽丝 MIDI File Download :: MidiShow
Introduction 从http://www.piano-midi.de/下载的 "致爱丽丝" is a MIDI music piece in Classical Music ...
- 致爱丽丝用计算机怎么弹,致爱丽丝_计算机计算机计算机体系结构_新浪博客
这篇文章,写给我的爱人. 昨天再见你时,你的状态并不好,但我并不像以前那样不知所措,因为我很清楚,我们的爱情早已发生了质的变化,我早已不在乎你的状态有多坏,我终于了解到,你是一个传统的女生,你是在乎我 ...
- 电子人的浪漫--致爱丽丝音乐盒
- 致爱丽丝c语言程序,献给爱丽丝简谱(致爱丽丝简谱c调初学者)
新手,拿到五线谱怎么玩五线谱? Coco Music呦 作为一个新的钢琴演奏者,当你终于听懂了五线谱,怀着极大的兴趣打印了一个自己想学很久的乐谱,虽然准备"爬楼梯"数音符,但面对突 ...
- 最被中国人误读的37个消费符号,绝对值得一读
Backpackers 背包旅行 曾策划过<丽江的柔软时光>的大蕃茄传媒机构的张姗姗描述她所见到的国内所谓"背包客"的怪现象:一个曾经进藏两次的老背包客和朋友一起去杭州 ...
最新文章
- 深入理解 Java 虚拟机-如何利用 VisualVM 对高并发项目进行性能分析
- 打开脑科学研究的另一扇窗:脑神经化学活体原位电化学分析新技术
- Rhythmk 一步一步学 JAVA(11)Ibatis 环境配置
- c语言课程思政教案设计,设计类专业课程思政教学案例及教学设计
- SQL SERVER 如果判断text类型数据不为空
- 石油采集(求联通区域) 2018多校寒假集训 (dfs+二分匹配)
- Java - Thinking in Java 第2章 一切都是对象
- 为什么工厂招人越来越不容易?是招工难还是待遇低?
- ubuntu18.04窗口截图和选区截图快捷键
- python global用法_python可视化——pyechart库
- matlab卷积动画实现
- python+django+mysql二手交易系统毕业设计毕设开题报告
- 16万大奖,名企offer,翼支付杯大数据建模大赛邀你来战!
- css 平行四边形 梯形 组合_CSS实现平行四边形布局
- 冬至时节饮食养生要注意“三多三少
- Unity动画系统学习方向
- 人工智能(AI)在未来的发展趋势和应用场景
- 超时锁定计算机,Win10电脑设置锁定屏幕超时怎么办
- 连接肠菌与宿主的桥梁:肠菌代谢物——肠菌功能研究新篇章
- 题目:什么是内联函数
热门文章
- jsp连接mysql数据库 例子_jsp连接mysql数据库的例子
- linux下git的HEAD,Git工具详解以及与GitHub的配合使用
- 苹果测试软件testflight游戏,苹果内测工具TestFlight的使用
- mysql 多表并列查询_MySQL-18(多表查询INNER/LEFT/RIGHT JOIN)
- sip 时序图_时序图怎么看_教你如何看懂时序图 - 什么是时序图_时序图怎么看_教你如何看懂时序图...
- 【c语言】蓝桥杯算法提高 Quadratic Equation
- Python-----多线程threading用法
- Kotlin尾递归优化
- UNP总结 Chapter 11 名字与地址转换
- 《构建高可用Linux服务器 第3版》—— 1.4 Linux服务器的日志管理