导航:首页 > 编程大全 > 语言密码学

语言密码学

发布时间:2024-03-08 22:42:55

密码学基础一

一、 恺撒密码

1.简单介绍

凯撒密码是古时候欧洲常用的一种加密方式:英文一共26个字母,它的加密方式是将这26个字母分别平移固定的位数,

假设位数=3,那么A=>D,B=>E,如下图:

如果想加密一个单词HELLO,根据上面的唯一对比,加密后的结果应该是LHOOR。颠倒字母后的顺序,使得常人无法读懂这些语句或者单词。如何解密呢,也很简单,只需要将收到的单词向前平移3个位置,就可以恢复到加密前的单词HELLO了。

2.破解

破解凯撒密码的方法很多,有一种暴力破解的方式,就是“遍历”。根据凯撒密码的加密方式,平移固定的位数,26个英文字母总共可以平移的方式是26种,假如位数n=26,其实相当于没有平移,A=>A,循环了一次。

进行暴力破解:

n=1:LHOOR=>KGNNQ

n=2:LHOOR=>JFMMP

n=3:LHOOR=>HELLO

这样就破解了,可以推算发位数n=3,其实就是秘钥=3,

最多尝试25次即可推算出加密的n值等于多少(当然这里只是讨论原理,不排除真实情况,可能凑巧某一个错误的n值解密出来的也是一个完整的单词或一段话的情况)。

二、 替换密码

1.简单介绍

替换密码和恺撒密码原理有些类似,个人感觉相当于恺撒密码的变种,替换密码增加了字母替换的随机性.

举个简单的例子,A=>G,B=>X,C=>K

这里ABC..等26个字母都随机指向了“密码”本上的另一个随机的字母,这下就比较难反向推算出“秘钥”是多少了,数量级完全不一样。

简单的算一下可能存在的情况:

A=>有25种表示方式BCD…

B=>有除A以外24种方式表示CDE..



那么秘钥的存在情况是:

N=25!种方式,远远大于恺撒密码的26。

2.破解

面对25!数量级的加密方式,使用暴力破解的方式不再实用了,但是可以使用另一种方法,统计学

通过大量扫描英文书籍,可以得出如下结果(,这里只探究原理,并不追究这个统计的准确性):

26个字母在日常用语中的使用频率并不一样,比如字母E的使用频率遥遥领先,字母Z使用频率最低,这个相当于语言所残留在文字中的指纹,很难察觉但是真实存在。

根据这个原理,扫描“随机密码”文本,统计出各个字母的使用频率分布,找出使用频率最高的那个字母,极可能就是加密后的字母E。

3.随机加密还有很多变种,双重加密,擦掉“指纹”使得加密方式更进一步加固,不得不感叹古人的智慧,数学之美真奇妙。

阅读全文

与语言密码学相关的资料

热点内容
javacapsule 浏览:20
extjs按钮垂直居中 浏览:163
ibjsx 浏览:647
直销可编程直流电源哪里买 浏览:952
苹果6qq录音文件听不了 浏览:6
网络线怎么拔 浏览:328
webclip文件有什么危害 浏览:700
创维32e360e怎么看网络电视 浏览:824
js网站加载动画 浏览:411
shelljava 浏览:666
系统文件被删可以还原吗 浏览:835
万方等网站怎么下载 浏览:857
为什么电脑文件显示是写字板 浏览:37
百度网盘打卡压缩文件 浏览:925
英语怎么读的网站 浏览:115
怎么远程改电脑开机密码 浏览:501
可以直接打开压缩文件的浏览器 浏览:654
qq相册一个文件可以存多少张照片 浏览:894
淘宝升级是不是免费的 浏览:819
西安万利网络科技有限公司怎么样 浏览:125

友情链接