美文网首页
图解密码技术学习-第二章 历史上的密码

图解密码技术学习-第二章 历史上的密码

作者: JMasche | 来源:发表于2016-08-12 04:50 被阅读146次

凯撒密码

原理

  • 凯撒密码的实现方式就是对字母进行平移,加密向右平移的话,解密就向左平移
  • 凯撒密码的算法就是平移,密钥就是平移的长度

破解

  • 凯撒密码是可以被暴力破解的。原因是如果是26个英文字母的话,字母的便宜最多也就是26种,把这些都尝试一遍是不需要花太多时间和成本的

简单替换密码

原理

  • 这个算法也很简单,实质上就是一张字母对照表。例如,字母A对应字母H,以此类推。
  • 这个算法里的密钥就是这张字母对照表

破解

  • 暴力破解此算法很难。因为密钥空间会有 252423...*1 = 4兆的1000兆倍,破解需要花费的时间太长了
  • 此算法仍旧可以破解。对照表的特点是,相同字母每次加密后的值不是随机的,而是固定的。如果一篇文章很长,会导致相同的明文字母会重复出现多次,而相同的密文也就重复多次。完全可以根据英文字母在单词的出现频率的多少,来猜测对应的字母代表什么
  • 相同明文每次加密后变成固定值的密码算法是不安全的

Enigma

原理

  • Enigma的密码原理还是非常先进和现代的,体现在下面几个地方。
    1、出现了密钥加密密钥,即针对加密密钥进行加密。现在的加密算法还在进行加密。
    2、对于相同的明文,每次加密后生成的密文不相同,这点根据上面简单替换密码的破解,就知道其重要性
    3、具备简单的容错。对于加密密钥,通过重复两次,进行容错的校验。虽然这给破解带来了便利。
    4、不依赖于加密算法本身来实现加密。由于存在加密密钥,所以哪怕即使拿到了Enigma机器,也没办法破解密文。
  • Enigma的机械结构:
    由接线板、三个转子组成。当输入一个字符时,电流通过由接线板和转子同时确定的线路,会产生到一个新的对应字符上。这个类似现在由软件实现的加密算法了。
  • Enigma加解密的步骤:
    1、加密加密密钥。用于加密明文的密钥,是由发送者想出来的三个字母。这个由于需要用于解密,要发送给接收方,所以需要针对此加密密钥进行加密。
    针对加密密钥进行加密,使用的密钥是国防军发布的"每日密码本"的当日密码
    首先根据当日密码设置Enigma机器,然后发送者想一个加密密钥,在机器上输入2次。每输入一个字符,第一个转子就旋转一下,保证了每个字符加密后的结果都不同。
    最终得到的是加密后的6个字符,也就是2遍的加密密码。
    2、加密发送明文。发送者想出的加密密钥是三个字符的,其实是表示三个转子的初始位置设置。
    所以,首先根据加密密钥设置三个转子的初始位置,然后再逐个输入正文的字符。
    由于每输入一个字符后,三个转子都会根据之前的规定旋转,所以即使是相同的明文,加密后的结果也不相同。
    3、合并发送。将加密后的加密密钥 和 加密后的密文 合并后,一起发送给接收者。
    4、解密加密密钥。接收者拿到发送后的全文后,先取前6个字符,再依据每日密码设置机器进行解密。
    如果解密后的6个字符是重复两次的相同字符时,证明发送过程没有问题。
    5、解密正文。根据解密后的加密密钥设置机器,然后输入正文,完整正文的解密。

破解

  • 弱点
    1、用于加密密钥的密钥不是随机的。这个是指的每日密码本是固定的,而且是预先设定发布的,其安全性大大降低。
    2、加密密钥是头6个字符且重复2次。相当于所有人都知道密钥存放的地方,而且很有规律,这样可以方便猜测极为关键的加密密钥。
    3、加密密钥的加密强度较弱。相对于正文的加密是三个转子都旋转,加密加密密钥时只有一个转子旋转,强度自然减弱。
    4、加密密钥是人为想出的。是的,人才是所有保密手段中最薄弱的环节。人可能想到的加密密钥是aaa之类的简单密钥,这样破解的人可以猜测,即使不能直接猜测出来,也大大方便了推导。
  • 破解
    突破口还是在加密密钥的特性上,就是上面弱点的第2点上。
    再加上,用于加密加密密钥的每日密码一天内是没法变化的,这就导致一个结果是一天之内有大量的样本用于解密。
    转子总共才3个,每个转子的位置只有26个,所以也就有262626种可能性。使用机器暴力是可以找到每日密码做相关破解。
  • 趣事
    德国人为了测试机器,发布了一条全l(小写L)的消息,这条用于测试的消息给了盟军以破解的方便。
    因为加密后不可能加密成原来的字符,所以可以通过密文推测明文就是全l,因为通篇没有出现l这个字符。
    根据大量的样本进行排列组合,就推测初接线板和转子状态的线索。

密码算法和密钥分开

原因也很简单,密码算法是需要重用的,但是密钥不能重用,因为重用会带来破解风险。

相关文章

  • 图解密码技术学习-第二章 历史上的密码

    凯撒密码 原理 凯撒密码的实现方式就是对字母进行平移,加密向右平移的话,解密就向左平移 凯撒密码的算法就是平移,密...

  • 密码学基础之密码学家的工具箱

    《图解密码技术》把以下项重要的密码技术称作“密码学家的工具箱”。 对称密码 公钥密码 单向散列函数 消息认证码 数...

  • 密码学入门之密码

    最近在研读《图解密码技术》这本书,将有一系列的密码学学习笔记,涉及到密码的相关概念、对称加密、非对称加密、单向散列...

  • 密码学基础知识

    密码学 推荐书籍 图解密码技术 结城浩 著 周自恒 译 密码学概览 密码学概览图密码学概览 消息的特性 机密...

  • 密码学家的工具箱(golang代码实现)

    本文参考《图解密码技术》第三版    密码学家的工具箱,指六种常用加密方式包括对称密码、非对称密码、单向散列函数、...

  • 《科学学习的理论与实践》笔记10

    【觉察日记】 《破解高效学习的密码》笔记:第二章:元认知高效学习五维调控技术简介/技术原理(P15-019) 心理...

  • 区块链书籍

    技术方向:区块链技术指南、(有公开版本不用找pdf) 《精通比特币》 《图解密码技术》 第三版不止把基础密码学用图...

  • 《图解密码技术》笔记(一)——密码

    本书版权属于出版社和作者所有。除非另有声明,没有书面许可任何人不得转载或使用整体或任何部分的内容。此文章只作为个人...

  • 分组密码的模式

    《图解密码技术》 第四章读书笔记。本文中的图都来自此书。 关键概念 分组密码(Block Cipher): 只能用...

  • 日系计算机书籍

    1. 计算机图解入门系列 图解HTTP 图解TCP/IP : 第5版 图解密码技术 图解服务器端网络架构 图解机器...

网友评论

      本文标题:图解密码技术学习-第二章 历史上的密码

      本文链接:https://www.haomeiwen.com/subject/ippssttx.html