密码分析之单表代换原理详解与算法实现

article/2025/10/4 0:35:35

【密码分析(单表代换)】

1. Equipment

(1) operating system version :WIN 10

(2) CPU instruction set: x 64

(3) software:MATLAB R2020a

2.process
  • Problem background analysis

密码分析(单表代换):
密文1:
UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZVUEPHZHMDZSHZQWSFPAPPDTSVPQUZWYMXUZUHSXEPYEPOPPZSZUFPOMBZWPFUPZHMDJUDTMOHMQ
密文2:
JXQCEFMPJASOQMDPQABCSTYSMGRQBTQOASKOAOUWCPQBDPMEEASIVMWPOQVJXQVQCSORWBQKMMYVIQAOXQPVASBFPAOJCOARQHFQPCQSOQASBQAOXXAVCJVMGSABZASJATQVJXQYSMGRQBTQGQTACSDPMEKMMYVASBDMPEARQBWOAJCMSQSAKRQVWVJIMRQAPSAKMWJIXCSTVXAJGQXAZQSMMFFMPJWSCJIMQHFQPCQSOQCSBACRIRCDQG0OASVJWBIARRJXQFRAOQVCSIXQGMPRBASBRQAPSDPMEFQMFRQGQGCRRSQZQPEQQJCSMWRCDQJCEQLWVJKIPQABCSTJXQCPKMMYVGQOASARVMBQZQRMFMWPASARICOARVYCRRVASBRQAPSXMGJMZCQGASBCSJQPFPQJIXQGMPRBAPMWSBWVCSBCDDQPQSJGAIVGQOASRQAPSIXQFAVJKIPQABCSTKMMYVCSJXCVGAIGQGMSJPQFQAJIXQECVJAYQVMMIXQPVASBOASKWCRBMSJXQCPAOXCQZQEQSJV

​ 通过题意可知,此题需要采用单表代换的方法进行密码分析,单表代换密码的密码算法加解密时使用一个固定的替换表。单表代换密码又可分为一般单表替代密码、移位密码、仿射密码等等,此处的替代密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串,即密文,替代密码的密钥就是其替换表。

​ 字母出现的频率会反映出相应语言的统计特性。大量的统计定会发现,相应语言中每个字母在相应语言中出现的概率。于是便得到该语言字母表上的一个概率分布。 例如Beker在1982年统计的样本总数为100 362,得到单码的概率分布见下表:

image-20211219085614018

  • Solution

先分析密文1,此处采用matlab中的tabulate函数来创建向量ciphertext的信息数据频率表,其代码如下:


code:

ciphertext=['UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZVUEPHZHMDZSHZQWSFPAPPDTSVPQUZWYMXUZUHSXEPYEPOPPZSZUFPOMBZWPFUPZHMDJUDTMOHMQ']';
tabulate(ciphertext)

统计密文中字母出现的频率如下:

ValueCountPercent
U108.33%
Z1411.67%
Q43.33%
S108.33%
O86.67%
V54.17%
H75.83%
X54.17%
M86.67%
P1714.17%
G21.67%
E65.00%
W43.33%
F43.33%
D54.17%
B21.67%
T32.50%
A21.67%
I10.83%
Y21.67%
J10.83%

为了方便直观对比,我将它制作成柱状图的形式:

image-20211219095215488

经过与单码的概率分布表的比对可以得知,其明文为:

​ it was disclosed yesterday that several informal but direct contacts have been made with political representatives of the viet cong in moscow

同理,密文2也按照同样的思路分析:


code:

ciphertext=['JXQCEFMPJASOQMDPQABCSTYSMGRQBTQOASKQAOUWCPQBDPMEEASIVMWPOQVJXQVQCSORWBQKMMYVJQAOXQPVASBFPAOJCOARQHFQPCQSOQASBQAOXXAVCJVMGSABZASJATQVJXQYSMGRQBTQGQTACSDPMEKMMYVASBDMPEARQBWOAJCMSQSAKRQVWVJMRQAPSAKMWJJXCSTVXAJGQXAZQSMMFFMPJWSCJIJMQHFQPCQSOQCSBACRIRCDQGOOASVJWBIARRJXQFRAOQVCSJXQGMPRBASBRQAPSDPMEFQMFRQGQGCRRSQZQPEQQJCSMWRCDQJCEQLWVJKIPQABCSTJXQCPKMMYVGQOASARVMBQZQRMFMWPASARIJCOARVYCRRVASBRQAPSXMGJMZCQGASBCSJQPFPQJJXQGMPRBAPMWSBWVCSBCDDQPQSJGAIVGQOASRQAPSJXQFAVJKIPQABCSTKMMYVCSJXCVGAIGQGMSJPQFQAJJXQECVJAYQVMMJXQPVASBOASKWCRBMSJXQCPAOXCQZQEQSJV']';
tabulate(ciphertext)

统计密文中字母出现的频率如下:

ValueCountPercent
J397.17%
X203.68%
Q7313.42%
C356.43%
E101.84%
F132.39%
M397.17%
P315.70%
A519.38%
S478.64%
O203.68%
D91.65%
B244.41%
T81.47%
Y81.47%
G183.31%
R285.15%
K101.84%
U10.18%
W142.57%
I91.65%
V285.15%
H20.37%
Z61.10%
L10.18%

其柱状图如下:

image-20211219095508770

经过与单码的概率分布表的比对可以得知,其明文为:

​ The importance of reading knowledge can be acquired from many sources,these include books,teachers and practical experience and each has its own advantages.The knowledge we gain from books and formal education enables us to learn about things that we have no opportunity to experience in daily life.We can study all the places in the world and learn from people we will never meet in our life time,just by reading their books, we can also develop our analytical skill sand learn how to view and interpret the world around us in different ways,we can learn the past by reading books in this way we wont repeat them is takes of other sand can build on their achievements.

3. summary and harvest

​ 最初采用C++写的字频分析的函数,采用按位读取相应的字符,并记录到相应的tag值上,最后再用for循环进行输出,由于过程过于冗杂,统计显示的效果不是很理想。通过查找matlab的官方文档,我了解到matlab中的tabulate函数可以进行字频统计的操作,于是改用matlab完成。

​ 从实践的角度上第一次对频率分析这个破解经典密码的方法有了初步的理解。因为在自然语言里,字母表里的有些字母比其它的字母出现得更频繁。频率分析法假设密码没有隐藏这样的统计信息。例如,在简单的替换密码中,每个字母只是简单地被替换成另一个字母,那么在密文中出现频率最高的字母就最有可能是E,再按照对应的频率统计即可完成密文的破译。

初学信息安全,可能存在错误之处,还请各位不吝赐教。

受于文本原因,本文相关算法实现工程无法展示出来,现已将资源上传,可自行点击下方链接下载。

密码分析之单表代换原理详解与算法实现工程文件


http://chatgpt.dhexx.cn/article/0W0Mhg0E.shtml

相关文章

搞懂差分密码分析,看这篇文章就够了!!

搞懂差分密码分析,这篇文章就够了!! 关注我!我会不定期发一些学习信安的心得体会 文章目录 **搞懂差分密码分析,这篇文章就够了!!**一、概述二、流密码的线性特性三、差分分析四、toy cipher-差…

线性密码分析(简单笔记)

线性密码分析(简单笔记) 关于差分密码分析的可以看差分密码分析读书报告。欢迎大家讨论留言。 1、发现 在1993年的欧洲密码年会上,日本学者Matsui提出了对DES算法的一种新的攻击方法,即线性密码分析.同年的国际密码年会上,Matsui发现了DES…

密码分析

破译密码体制的一般思路 经典密码分析 古典密码分析可以理解为从密文y中得到明文x,或者是密钥k。密码分析可以分为两类:一类是发现加密方法内部结构的分析攻击,一类是将加密算法看作是黑盒,试图测试所有可能密钥进行破解蛮力攻击…

密码分析(一):差分密码分析

文章目录 一、选择明文攻击(chosen-plaintext attack, CPA)二、差分密码分析(differential cryptanalysis)1.原理2.过程2.1 S盒差分分布表2.2 S盒的差分分析 总结参考文献 差分分析是一种选择明文攻击,其基本思想是&am…

密码分析(二):线性密码分析

​ 线性密码分析 一、已知明文攻击(known-plaintext attack)二、线性密码分析基本原理三、实例3.1 S盒线性逼近表3.2 例题分析3.2.1 分析算法的过程3.2.2 攻击过程加密攻击分析 具体过程 总结参考文献 在1993年欧洲密码年会上,日本学者Matsu…

Bluehost注册流程与问题

Bluehost注册流程与问题 第一步 进入Bluehost官方网站,点击下图中粉色的 Sign Up Now 进行注册 第二步 进入下一个界面后,你可以免费获得一个新的域名,BlueHost 对第一年是免费赠送一个域名,所以输入你想要的域名,然后…

BlueHost主机从零开始使用笔记,我踩过的坑你就不要踩了.

一:购买时,使用官方优惠码BH可以优惠30% 二:登陆后:点击可以显示你购买的主机,点击列表中的域名即可进入管理界面! 三:特别提醒!面板中的部分功能"比如在线文件 管理上传文件",只有使用chrome浏览器才可以,使用360浏览器的时候会出现上传不了的情况. 这里就是坑1 …

hosts文件 (屏蔽网站)

hosts文件 hosts文件是什么 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开。它是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应…

2018年最新bluehost主机(中文站)购买教程,送30%优惠码!

Bluehost是一家老牌的美国主机商,行业经验达18年,以稳定性强,速度快著称,是国内使用较多主机之一,在个人站长中的口碑、使用流行度都很高。作为电子商务首选主机的BlueHost主机也深受国内外贸网站、仿牌产品等公司的喜…

bluehost虚拟主机有什么用?适合做什么网站呢?

bluehost作为比较知名的美国主机商,在国内也是非常的受欢迎,并且为了更好的服务国内用户,更是推出了中文站以及中文客服,为 国内用户提供更加本土化以及更加完善的服务,而且而且其机房专门对国内线路进行了优化&#x…

siteground主机和Bluehost主机哪个好,看完这篇你就有自己确定的答案

Siteground主机和Bluehost主机,哪个更好?哪个更适合外贸建站?读完这篇,你就有答案! 说实话......我花了太多的时间来做决定。在决定买什么相机、加入什么健身房、甚至选择什么衣服时,都是如此。我花了一下…

linux虚拟主机建站程序,bluehost中国Linux虚拟主机建站过程

无论是我们初次接触海外主机服务商的,还是已经有过使用国内主机商建站经验的,可能初次接触BlueHost(无论是英文或者是中文官方网站产品)可能在应用上稍微有一些困惑。 因为大部分海外主机都使用的cPanel面板(Linux系统主机),普通的用户肯定是…

蓝色主机 bluehost主机 启用CloudFlare的cdn加速服务

启用CloudFlare的cdn加速服务 1.到CDN官网(www.cloudflare.com),注册账号并登陆进入。 2.点击页面右上角 Add Site,输入您的域名。 3.选择CDN套餐,一般用户选择FREE版本的 4.修改DNS记录,选择之后会自动扫描域名的DNS…

Siteground和Bluehost对比,我花了7天时间研究出了结果

Siteground主机和Bluehost主机,哪个更好?哪个更适合外贸建站?读完这篇,你就有答案! 说实话......我花了太多的时间来做决定。在决定买什么相机、加入什么健身房、甚至选择什么衣服时,都是如此。我花了一下…

美国主机BlueHost vs HostEase

网站备案对于大部分个人站长而言,花费成本高、程序复杂,因此在挑选主机时,常选择免备案IDC服务商,如美国、香港主机,且前几日国内某免备案机房因个别网站涉及非法言论而配合相关部门采取停网整顿等,为此站长…

BlueHost主机建站教程

BlueHost主机支持一键安装WordPress程序与Discuz程序,下面就给大家演示一下如何一键安装WordPress程序和Discuz程序建站教程,希望对使用BlueHost主机用户有所帮助! 腾讯云最新服务器活动--云服务器免费送。 试用领取有人能领到180天。 腾讯…

Bluehost主机安装WordPress步骤

教你一个使用Bluehost主机安装WordPress步骤 使用bluehost主机创建wordpress网站非常简单,但是首先需要先注册bluehost账户。 作为优秀wordpress主机之一的bluehost主机,性价比是很不错的,价格几乎接近免费了,它有很多出色的功能…

bluehost虚拟主机速度快吗?bluehost主机评测!

bluehost虚拟主机速度快吗?众所周知,美国主机访问一般都是有延迟的,理论上是220ms,主机的访问速度与机房位置,连接线路等都有很大关系。 优越的机房硬件加上软件加速的实力,使bluehost虚拟主机的速度在海外…

Bluehost中国的主机产品和美国那边的主机有什么差别吗?

bluehost作为著名的美国主机商,为了更好的服务国内用户,与2014年推出了bluehost中文站,bluehost中国作为bluehost美国主机商在国内的独立运营部分,主要是为国内用户提供域名、虚拟主机、分销主机、VPS主机、独立服务器和网站建设等。bluehost…

bluehost中国和bluehost美国是不是一家?应该选择哪个

bluehost作为著名的美国主机商,为了更好的服务国内用户,与2014年推出了bluehost中文站,bluehost中国作为bluehost美国主机商在国内的独立运营部分,主要是为国内用户提供域名、虚拟主机、分销主机、VPS主机、独立服务器和网站建设等。bluehost…