密码学 | 维吉尼亚密码(Vigener)

这篇具有很好参考价值的文章主要介绍了密码学 | 维吉尼亚密码(Vigener)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 单字母替换(前备知识)

密码学 | 维吉尼亚密码(Vigener)
在大量英文文献以及普通英文文章中,研究者发现这种文章中单词出现的频率符合一定的规律。如上表所示,例如a出现的频率在8.2%左右,e出现的频率最高,在12.4%左右。y、z频率最低,在0.1%左右。

1 以这些统计规律计算各个字母出现概率的平方和:
密码学 | 维吉尼亚密码(Vigener)
平方和基本稳定在0.065。计算过程如下:
密码学 | 维吉尼亚密码(Vigener)
2 若此时我们并不知道各个字母所拥有的频率,使用均匀分布的方法,假设所有字母出现的频率均为1/26,则所得到的概率的平方和为:
密码学 | 维吉尼亚密码(Vigener)
以如上的两个值0.065和0.038来进行维吉尼亚密码的解密。

2 维吉尼亚密码是啥

密码学 | 维吉尼亚密码(Vigener)
首先要确定一个长度为n的密钥,使用其进行循环加密明文,具体方法为用明文中的单字符和密钥中的各个字符进行对应相加得到密文。在解密时,对应相减得到明文。

此时很容易得知相同明文在不同密钥的加密下,得到的密文是不同的。

3 想办法得到密钥

  1. Kasiski 测试法(基于密文)
    密码学 | 维吉尼亚密码(Vigener)

面对一连串未知含义的密文时,先找到总是重复出现的有序序列(多找几对),为之后合理推算密钥长度做基础。

  1. 重合指数法(基于密文)

先猜测可能的密钥长度n,在讲整体密文分成n组,因为每间隔n个单位长度的字母总是使用同一个单位密钥进行加密。统计每个分组的所统计的各个字母频率的平方和。例子如下:

密码学 | 维吉尼亚密码(Vigener)
可以发现,猜测密钥长度为5,所计算出的5个分组的平方和基础处于0.065的上下界内,至于是否接受该结果可以使用假设检验的知识进行判断;若猜测错误的话,子串的重合指数极大可能在0.038附近,在此例中,我们认为密钥长度为5在很大程度上是可能的。
之后可加密的字母共有26种,那么看解密后的哪种明文有意义即可,或者再次使用统计学上的规律:
密码学 | 维吉尼亚密码(Vigener)
只有正确解密到的明文才能符合最终0.065的重合指数,而其他的都是随机值分布在0.038附近。

  1. 暴力(使用选择明文攻击)

直接用一长串a送入输入端,观察根据密钥得到的密文,进而反推密钥。文章来源地址https://www.toymoban.com/news/detail-499088.html

到了这里,关于密码学 | 维吉尼亚密码(Vigener)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【密码学-1】一文入门非对称密码学

    本文共1932字,完成阅读约需6分钟。 犹记得2021年年初的一波区块链热潮让无数人第一次了解到了“公钥”和“私钥”的概念,那么,究竟什么是公钥私钥呢?和常见的密钥又有什么区别和联系呢?本文目的在用尽可能短的时间和简洁的语言,带你快速了解非对称密码学的基本

    2023年04月08日
    浏览(71)
  • 【密码学】python密码学库pycryptodome

    记录了一本几乎是10年前的书(python绝技–用python成为顶级黑客)中过时的内容 里面提到了python标准库中自带的crypt库,经验证Python 3.12.1中并没有这个自带的库,密码学相关的库目前(2024.1.12)是一个自包含库pycryptodome,导入的是 import Crypto pypi库的页面 可以在文档中查看详

    2024年01月17日
    浏览(49)
  • 密码学基本原理和发展——近代密码学

    目录 1 密码机通信模型 2 Enigma密码机构造 3 Enigma密码机加解密过程 3.1 加密过程 3.2 解密过程 4 Enigma密码机的安全性 5 Enigma密码机破解 5.1 波兰雷耶夫斯基破解 5.2 图灵破解        近代密码一般指20世纪初~20世纪70年代期间的密码技术。20 世纪初电报的出现第一次使远距离

    2024年02月06日
    浏览(34)
  • 密码学基本原理和发展——古典密码学

      目录 1 滚筒密码 2 棋盘密码 3 凯撒密码 4 单表代换与多表代换 4.1 单表代换 4.2 多表代换         密码技术最早起源于公元前404年的希腊,此后密码大致经历了 古典密码、近代密码和现代密码三个阶段。         古典密码(公元前五世纪~19世纪末)代表性的是 滚桶密

    2024年02月05日
    浏览(39)
  • 【密码学】量子安全的密码学算法以及原理介绍

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

    2024年02月11日
    浏览(42)
  • 程序猿成长之路之密码学篇-密码学简介

    在阅读本文前需要了解的术语: 授权人/非授权人:授权人指获取了查看数据权限的用户,非授权人则是指未获取到权限的用户。 明文/密文:明文指没有加密的数据内容,密文是指加密后的数据内容 CIA(密码学中不是美国中情局的意思,是信息安全三要素): C-Confidentiality 机

    2024年02月04日
    浏览(30)
  • 密码学:公钥密码.(非对称密码)

    公钥密码 (Public Key Cryptography),又称为 非对称密码 ,其最大特征是 加密和解密不再使用相同的密钥 ,而使用不同的密钥。使用者会将一个密钥公开,而将另一个密钥私人持有,这时这两个密钥被称为 公钥和私钥 。一般来说,公钥和私钥是难以互相计算的,但它们可以互相

    2024年02月03日
    浏览(43)
  • 凯撒密码——密码学

      代码如下:

    2024年02月02日
    浏览(24)
  • 【密码学】三、分组密码概述

    分组密码算法是将输入数据划分成固定长度的组进行加密和解密的一类对称密码算法。本章主要介绍分组密码概述、DES、AES,以及分组密码的工作模式和分组密码分析。 分组密码是一种单钥或对称密码算法,通信双方使用相同的密钥加密和解密。 在分组密码中,要将明文分

    2024年02月16日
    浏览(31)
  • 密码学入门——环游密码世界

    图解密码技术 第三版 1.1 本书主要角色 1.2 加密与解密 加密 解密 密码破译 2.1 密钥 加密,解密与密钥 2.2 对称密码和公钥密码 1.对称密码是指在加密和解密时使用同一密钥的方式。 2.公钥密码是指在加密和解密时使用不同密钥的方式。因此,公钥密码又称非对称密码。 2.3 混

    2024年02月10日
    浏览(30)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包