巨人机:第一台可编程电子计算机

ABC之后,历史仍未安排ENIAC出场。1943年,电子时期的第2个重要角色诞生在图灵所处的布莱切利。

研制背景

1941年6月,意识到谜机可能已被破解的德军启用了一种复杂度更高的加密系统,并且这一次英国没能拿到相应的机器,布莱切利的密码学们要和一个完全未知的强大敌人抗争。在听闻德国人用一种海鱼的名字称呼这套系统后,布莱切利也给它起了个绰号——“金枪鱼”。

1941年8月,“金枪鱼”的操作员由于一时疏忽将同一条信息发送了两遍,尽管两条密文并不一样,但经验丰富的布莱切利在截获之后立马意识到它们指向同一条明文。这个小小的马脚,被这里绝顶聪明的密码学家们牢牢抓住,真可谓一叶知秋,他们据此精准地推测出“金枪鱼”的组成结构和工作原理。它包括12个谜机那样的转轮,每个转轮的旋转模式各不相同,每个转轮上导电触点的数量也不一样,导电触点可以在接通和断开两个状态之间切换,使用前可改变各触点的状态和转轮的起始位置。

30022-5b3f6ffb186d3425.jpg
金枪鱼(图片来自维基百科)
30022-6c52e00068442f49.jpg
金枪鱼转轮导电触点特写(图片来自维基百科)

和谜机的字符级加密不同,“金枪鱼”进行的是编码级加密,当时的电传打字机使用的ITA2码制(国际电报字母表第2号)用5位二进制对单个字符进行编码,“金枪鱼”将这些二进制位与特定的二进制密钥进行异或运算后生成密文。异或是一种特别的逻辑运算,它是可逆的,明文和密钥异或之后生成密文,反之,密文和密钥异或之后又可以得到明文,这就是“金枪鱼”加密和解密的基本原理。

ITA2 秘钥 密文
0 0 0
0 1 1
1 0 1
1 1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值