密码学基本原理和发展——近代密码学

这篇具有很好参考价值的文章主要介绍了密码学基本原理和发展——近代密码学。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1 密码机通信模型

2 Enigma密码机构造

3 Enigma密码机加解密过程

3.1 加密过程

3.2 解密过程

4 Enigma密码机的安全性

5 Enigma密码机破解

5.1 波兰雷耶夫斯基破解

5.2 图灵破解



       近代密码一般指20世纪初~20世纪70年代期间的密码技术。20世纪初电报的出现第一次使远距离快速传递信息成为可能, 它实现了远距离通讯的即时传输,但是也带来了新的安全问题,为保证每条信息的安全,需要给每条信息加密,随着一战的爆发,也进一步促进了密码技术的发展。近代密码利用电子和计算机技术设计出更加复杂的密码体系,虽然技术上有了很大进步,但并未形成理论体系,该阶段基本加密原理仍然和古典加密原理类似,仍然是替代及置换的基本原理,但是因为应用到了机电技术,近代密码体制的替代/置换方式从古典密码的单表代换转变为多表代换,这使得人工破译密码的成本变得极高。

       这里介绍以恩尼格玛(enigma)密码机为代表的转轮密码机Enigma密码机1918年由德国人亚瑟·谢尔比乌斯发明,随后被应用于军事,最终被英国人破译,Enigma密码机的发明是密码学发展史上的一次飞跃,密码学就此进入机械密码时代。

1 密码机通信模型

密码学基本原理和发展——近代密码学
图1 密码机通信模型

       发送者和接收者各自拥有一台enigma。发送者用enigma将明文加密,将生成的密文通过无线电发送给接收者。接收者将接收到的密文用自己的enigma解密,得到明文。发送者和接收者会事先收到一份叫国防军密码本的册子,它记录了发送者和接收者所使用的每日密钥,发送者和接收者需要分别按册子的指示来设置enigma。

2 Enigma密码机构造

       Enigma密码机是一个装满复杂精密元件的盒子,主要包括键盘(26个)、转轮(3个)、显示灯(标注了同样字母的26个小灯)和接线板,如下图所示。

密码学基本原理和发展——近代密码学
图2 Enigma密码机外观

       本章节开始我们讲到了轮转密码机的加密原理其实也是置换,即通过一定的置换方式将明文置换为密文,下图显示了当按下键盘的A键时,使灯盘D亮的电流示意图,即将A置换为D的过程。

密码学基本原理和发展——近代密码学
图3 Enigma电流流动线路图

       电流从电池(1)通过双向键盘开关(2)进入插板(3)。接下来,它穿过三个/四个已安装的转子(5)的布线,并进入反射器(6)。反射器通过完全不同的路径将电流返回,通过转子(5)和进入轮(4),流经连接有电缆(8)的插头“ S”(7)和插头“ D”,再通过另一个双向开关(9)点亮相应的灯。

       如果转子的作用仅仅是把一个字母简单的换成另一个字母,那么在一千多年前就能通过字频法破译,Enigma密码机的巧妙之处在于其核心部件——转子,其构造如下图所示。

密码学基本原理和发展——近代密码学
图5 转子构造

        通过键盘键入一个字母时,第一个转子会转动1格,所以当连续键入26个字母时,第一个转子正好转动26格(即1圈),此时第二个转子转动1格,连续键入26*26个字母时,第一个转子转动26圈,第二个转子转动1圈,连续键入26*26*26个字母时,第一个转子转动26*26圈,第二个转子转动26圈,第三个转子转动1圈。这种机制利用不同齿轮的传动比原理,类似于秒针、分针和时针的转动。通过第一章维吉尼亚密码的学习我们知道这种三转子的组合密钥长度为26*26*26,理论上只要信息长度低于密钥长度时,便无法破解。

       接下来讲下为什么输入信号A,经过转子和反射器后会输出信号H,每个转子两侧都有26个引脚和26个触点,上一个转子的触电与下一个转子的引脚与下一个转子的触点连接,如下图所示。

密码学基本原理和发展——近代密码学
图6 转子内部结构拆分

              

       如果输入信号A,转子内部电流信号流转如下图所示。 

密码学基本原理和发展——近代密码学
图7 第一次输入A信号流转图

       再次输入信号A时,Right Rotor转动一格,剩下的两个转子不动,其内部电流信号流转如下图所示。

密码学基本原理和发展——近代密码学
图8 第二次输入A信号流转图

       Enigma最左侧的设备是一个“反射器”, 它将最后一个转子的其中两个触点连接起来,并将电流沿一个不同的路线导回。这就使加密过程与解密过程变得一致,因此,使用两台配置相同的机器,一台可以用于加密信息,另一台用于解密信息,而无需使用庞大的机制在加密和解密模式之间进行切换。但是,反射器也使恩尼格玛具有了如下性质:加密后得到的字母与输入的字母永远不会相同。这在概念上和密码学上都是一个严重的错误,这个错误最终被盟军解码人员利用。

       B站上有enigma密码机演示视频,感兴趣的可以b站上搜索观看,能够更直观的了解enigma密码机的工作原理。

3 Enigma密码机加解密过程

3.1 加密过程

       发信人首先按照约定好的规则插好接线板并设置好转子初始位置,也就是设置好enigma密码机密钥。接着依次通过键盘键入明文,并把灯泡亮的字母记录下来便得到了密文,最后将密文发通过电报方式送出去。

3.2 解密过程

       当收信人接收到密文后,使用相同的enigma密码机并设置好发信人相同密钥。接着依次通过键盘键入密文,并把灯泡亮的字母记录下来便得到了明文。

4 Enigma密码机的安全性

       Enigma密码机的本质是一种多表替换,我们之前学习过的凯撒密码和维吉尼亚密码也是替换密码,但后两种密码我们知道会有字母频率的漏洞,主要因为他们的加密都是使用的同一张密码表,而Enigma密码机每加密一个字母,就会转动一下,相当于换了一张密码表,基本可以做到加密一个字母就更换一次密码表并且不重复,所以无法通过高阶字频分析来破解Enigma密码机,只能通过枚举来破解了。我们可以通过数学概率的计算方法来计算enigma具有的所有字母映射的可能性,从而评估其安全性。

       若密码机由三个转子组成,则三个转子的初始位置,一共有 P1= 26*26*26=17576种组合;

三个转子不同相对位置有P2=6种组合;

       ​插线板由26个孔位,最多可以插13根线,以插10根线来举例计算,那么共有

密码学基本原理和发展——近代密码学

       所以总的密钥空间P=P1 *P2 *P3≈1.5*1019,密钥一般每次或者每日根据密码本来更新,信息发送方每使用Enigma密码机加密一条信息时,都要按照密钥来初始化密码机,同理信息接收方每次也要使用相同的密钥来解密信息。

5 Enigma密码机破解

       Enigma加密机可以称得上是古典密码阶段的巅峰,由于其巨大的密钥空间,使用完全依靠人工枚举破解几乎不可能。虽然enigma加密算法非常强大,但是其本质也是一种较为复杂的密码替换,与凯撒密码及维吉尼亚密码本质上没有差异,其安全性是依赖于巨大的密钥空间,与Enigma密码机同时期的计算机械破解Enigma密码的难度极高。

5.1 波兰雷耶夫斯基破解

       Enigma密码机早期被认为是无法破解的存在,英法等国一开始便放弃了enigma密码机的破解,而波兰由于地理位置处于德国和苏联之间,与两国关系都不好,且德国与苏联也互相虎视眈眈,处于中间的波兰具有非常严重的危机感,波兰当局表示enigma密码机无论如何都得破解,在语言学家表示对enigma密码机无从下手时,波兰当局请到了数学家参与enigma密码机的破解工作,数学家雷耶夫斯基、罗佐基和佐加尔斯基就承担起早期enigma密码机破译工作。

       早期德国人为了增加密码机的安全性,设置了双重加密,即当日密钥+信息密钥组合形成最终密钥,如当日密钥为ABC,信息发送方先将转子拨到ABC,然后随机想三个字母(假设为DEF,DEF被称为信息密钥),加密DEF后得到密文(假设为MCL),接下来将转子拨到DEF,开始正式写信,具体过程如下图所示。

密码学基本原理和发展——近代密码学
图9 双重加密过程

       所以真正加密信件内容的其实是信息密钥(DEF),所以收件人需要知道信息密钥(EDF)后才能解密。问题是信息密钥是发送者每天拍脑袋想出来的,接收者是如何知道信息密钥的呢?这就需要双方约定好将信息密钥加密后的密文MCL写在每封信的开头。由于enigma是对称加密的,所以接收者只需用每日密钥(ABC)将信件开头的MCL解密便得到发送者拍脑袋想出来的信息密钥(DEF),接下来用信息密钥进行解密即可,具体过程如下图所示。

密码学基本原理和发展——近代密码学
图10 双重解密过程

       如此一来,每日密钥虽然只有一个,但是信息密钥每次确是不一样的,所以即使一天发送100封信,就对应100个信息密钥,这大大增加了人工破译难度。

       但是德国人有个习惯,就是将重要的事情说两遍,所以每封密信的开头6个字母中,是由2个信息密钥组成的,如下所示。

密码学基本原理和发展——近代密码学

       明文的D被加密为M/H、E被加密为C/A、F被加密为L/Q,也就是说密文的第1个和第3个字母是由同一个明文字母加密得到的、第2个和第4个字母是由同一个明文字母加密得到的、第3个和第6个字母是由同一个明文字母加密得到的,雷耶夫斯基正是根据这一线索发现了Enigma置换群方程,设计出了用来收集数据的“炸弹机”(Bomba),这也是人类首次将严格的数学化方法应用到密码破译领域,炸弹机可以在数个小时内破解出密钥,具体的分析步骤本文不再赘述,感兴趣的可以关注b站UP主“Ele实验室”,讲解和动画演示都非常深刻且易理解。

5.2 图灵破解

       由于雷耶夫斯基利用社会工程学的方法,破解了enigma密码机,但是这种方法也十分脆弱,一旦德国人修补上这个漏洞或者升级密码机,雷耶夫斯基的破解方法就难以适用。在绝对的军事实力面前,德国闪击波兰,一个月后波兰沦陷,雷耶夫斯基等“波兰密码三杰”也被迫逃亡,战后雷耶夫斯基几经流转后回到波兰一所中学任教,鲁日茨基和佐加尔斯基则在逃亡途中不幸遇难,令人唏嘘。1980年雷耶夫斯基在华沙去世,安葬在波兰的Powazki公墓,2000年,波兰政府向“波兰密码三杰” 追授波兰最高勋章。

       波兰沦陷后,破解enigma密码机的任务交到了英国人手里,在德国人改掉重要事情说两遍并且使用多五转子enigma加密机后,雷耶夫斯基的破解方法就变得极其被动,图灵受雷耶夫斯基的启发,图灵破解Enigma密码破译思想是利用Enigma密码机自反特性,若某一位从来没有该字母,那么明文该位困可能就是该字母,再结合德军发送报文的特点猜测报文首句明文(如早上6.05分发送天气预报,猜测首句明文有wetter,也被称为已知明文攻击),由此构造明文密文对应关系和字母循环圈,图灵团队甚至造出一台bomb machine来专门破解恩尼格码密码,bomb machine如下图所示。bomb machine从原理上不受限德国人重要事情说两遍的限制,且得到丘吉尔的大力支持,英国提供给图灵的人力和物力资源都不是波兰提供给雷耶夫斯基的资源能比的。图灵设计制造的bomb machine原理这里也不再赘述,感兴趣的可以看b站Ele实验室。

密码学基本原理和发展——近代密码学
图11 图灵炸弹机

       Enigma曾被誉为不可破解的密码,尽管现在看来Enigma密码机的破译方法很多,但其光辉不可磨灭,它所代表的着加密的理念对于加密算法有着深远的影响。

       从公元前404年到20世纪70年代,从滚筒密码到enigma密码机,从单表替换到多表替换,从凯撒到维吉尼亚,再到雷耶夫斯基和图灵。人类使用密码的历史几乎与使用文字的时间一样长,人类已在加密与解密之间相互纠缠了数千年,未来亦是如此,基于共钥密码学的现代加密技术正熠熠生辉,而以区块链和量子加密等加密技术也悄然来临。文章来源地址https://www.toymoban.com/news/detail-456182.html

到了这里,关于密码学基本原理和发展——近代密码学的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【密码学】量子安全的密码学算法以及原理介绍

    (1)“代数格密码套件”(CRYSTALS)包含两个密码原语Kyber和Dilithium。Kyber是一种抗适应性选择密文攻击(IND-CCA2)安全密钥封装机制,Dilithium是一种高度不可伪造性(EUF-CMA)安全数字签名算法。两种密码都是为了应对量子计算机的攻击,并且在操作过程中只需更改几个参数即

    2024年02月11日
    浏览(37)
  • 密码学基本概念

    密码学的安全目标至少包含三个方面: (1)保密性(Confidentiality):信息仅被合法用户访问(浏览、阅读、打印等),不被泄露给非授权的用户、实体或过程。 提高保密性的手段有:防侦察、防辐射、数据加密、物理保密等。 (2)完整性(Integrity):资源只有授权方或以授

    2024年02月22日
    浏览(31)
  • 密码学 | 多重签名:基本概念

    目录 摘要 1  什么是多重签名? 2  多重签名的作用 2.1  联名账户 2.2  提高安全性 2.3  秘钥备份 3  比特币的多重签名 3.1  对比一 3.2  对比二 3.2.1  线性性 3.2.2  不可延展性 3.2.3  安全性证明 3.2.4  效率高、占用空间少 ⚠️ 原文: 多重签名:Schnorr 协议与 ECDSA 协议 - 知乎

    2024年04月25日
    浏览(23)
  • 网络安全:密码学基本理论.

    密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学. 目录 网络安全:密码学基本理论. 密码学基本概念: 密码安全性分析: 密码体系分析:

    2024年02月16日
    浏览(24)
  • 密码学的100个基本概念

    密码学作为信息安全的基础,极为重要,本文分为上下两部分,总计10个章节,回顾了密码学的100个基本概念,供小伙伴们学习参考。本文将先介绍前五个章节的内容。 一、密码学历史 二、密码学基础 三、分组密码 四、序列密码 五、哈希函数 1.密码学 密码学(cryptography)源

    2024年01月24日
    浏览(24)
  • 密码学——古典密码中的基本加密运算附简单例题

    本篇文章将对古典密码中使用到的基本加解密运算进行总结,并展示个别加减密运算的简单例题,从而使读者更加容易理解古典密码中的基本加减密运算的原理。 首先引入密码学中的几个基本定义: M:明文空间,明文的集合 C:密文空间,密文的集合 K:密钥空间(也称密钥

    2024年02月12日
    浏览(55)
  • 区块链学习二———密码学原理

    比特币中使用到了密码学的知识,主要是哈希函数与数字签名 哈希碰撞的含义:不同的输入,哈希值是相同的 x≠y,H(x) = H(y) 输入空间较大 输出空间较小,出现哈希碰撞的情况很常见。碰撞是客观存在的。 实际中,靠一个个数试,去找到两个不同的数的哈希值是相同的,几

    2024年02月08日
    浏览(30)
  • 一、区块链技术与应用-密码学原理

            加密货币(crypto-currency)         密码学中所用的哈希函数被称为cryptographic hash function 它有两个重要的性质:          1.      collisiion resistance(哈希碰撞)           两个不同的输入 哈希函数结果却相同 哈希碰撞是不可避免的 因为输入空间远远大于输出空间

    2023年04月10日
    浏览(24)
  • 【区块链学习笔记01】BTC-密码学原理-哈希函数

    区块链中最基础的密码学原理就是哈希算法,以下为哈希函数的简单介绍: 哈希函数是一种只只能加密但是不能解密的算法,哈希函数可以将任意长度的信息转化为固定长度的字符串。类似“8b46ec792e943de34605981980751a3c1e008218f77eeb27e474b594f7685019”这样。 当输入相同的值时,得到

    2024年02月03日
    浏览(31)
  • RACE IPEMD:构建安全基石的密码学原理与实践

    title: RACE IPEMD:构建安全基石的密码学原理与实践 date: 2024/4/16 16:53:56 updated: 2024/4/16 16:53:56 tags: IPEMD 哈希算法 SHA-1 SHA-2/3 消息摘要 数字签名 安全分析 在当今信息爆炸的时代,数据安全和隐私保护变得尤为重要。密码学作为信息安全领域的重要支柱,扮演着保护数据、通信和

    2024年04月16日
    浏览(21)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包