现代密码学:移位密码和单表置换密码

您所在的位置:网站首页 置换密码和替换密码的区别 现代密码学:移位密码和单表置换密码

现代密码学:移位密码和单表置换密码

2023-09-10 03:37| 来源: 网络整理| 查看: 265

现代密码学:移位密码和单表置换密码Part 1:移位密码(以凯撒密码为例)

古时候,战事频繁,为了在军队之间传递军情而不被敌手破解,密码学应运而生。其中最著名的一种密码便是由尤利乌斯凯撒发明的凯撒密码。

这种密码是一种移位密码,其基本思路就是将英文字母向前或向后移动一个固定位置,只有信息的接收方和发送方知道偏移量,从而起到加密的效果。我们例子中的凯撒密码就是一种偏移量为+3的移位密码(向后偏移三位),其字母对照表如下:

原信息 A B C D E F G H I J K L M 密文 D E F G H I J K L M N O P 原信息 N O P Q R S T U V W X Y Z 密文 Q R S T U V W X Y Z A B C

例如 明文 WCH IS HANDSOME 就会被加密为 ZFK LV KDQGVRPH

如果把A-Z用0-25编码,明文M = m0m1……mn, 密文C = c0c1……cn,偏移量(密钥)key = +3 ,则上述加密可以表示为 ci ≡ mi+key mod(26)

在算力尚不发达的古代,这种密码具有很高的安全性,然而在现在一个小孩子依靠电脑也可以轻而易举的破解这种密码,根本原因在于其有效密钥空间太小(仅为25),一台计算机轻轻松松的就可以将其计算出来。有兴趣的读者可以尝试破解以下密文来证明我所言不虚2333

WKDQNV IRU UHDGLQJ PB EORJ, L GR UHDOOB KRSH BRX KDYH D QLFH GDB! ORYH BRX PB GHDU IULHQG.

LI BRX KDYH EHHQ KHUH , BRX FDQ ILQG PB F SOXV SOXV FRGH DERXW FDHVDU FLSKHU DW WKH DGGUHVV EHORZ,SOHDVH JLYH PH D VWDU DQG IRUN:

kwwsv://jlwkxe.frp/WhtxlodZfk/Flskhu

PART 2:单表置换密码

单表置换密码是移位密码的一个升级,顾名思义,他不再是简单的将字母前移或者后移,而是建立一些无规律的一一对应关系,例如如下置换:

原信息 A B C D E F G H I J K L M 密文 H K W T X Y S G B P Q E J 原信息 N O P Q R S T U V W X Y Z 密文 A Z M L N O F C I D V U R

就会把明文WCH IS HANDSOME 加密为DWG BO GHATOZJX。单表置换密码实现的关键问题是置换表的构造,虽然有很多种途径可以实现,但是考虑到记忆和使用的方便,我们可以选择一个短语或者句子,删除掉其重复的字母,依次填入置换表前面的部分,再把没有用上的字母依次填入置换表的后面部分,还是用WCH IS HANDSOME来举例(别骂我我本来就帅),去掉重复字母后,得到密钥WCHISANDOME,剩余的字母为BFGJKLPQRTUVXYZ,我们就可以把A-Z的字母依次替换为:

WCHISANDOMEBFGJKLPQRTUVXYZ

单表置换密码相比于移位密码,其强度体现在更大的有效密钥空间,其置换表的字母组合高达26!种,如果再采用穷举密钥的方式来破解实在憨憨,因此对于单表置换密码最有效的攻击方法是利用自然语言的使用频率和语义分析相结合的方法,仅以英文为例。英文具有以下显著特征:

短单词(small words):在英文中只有很少几个非常短的单词。因此,如果在一个加密的文本中可以确定单词的范围,那么就能得出明显的结果。一个字母的单词只有a和I。如果不计单词的缩写,在从电子邮件中选取500k字节的样本中,只有两个字母的单词仅出现35次,而两个字母的所有组合为26×26=676种。而且,还是在那个样本中,只有三个字母的单词出现196次,而三个字母的所有组合为26×26×26=17576种。

常用单词(common words):再次分析500k字节的样本,总共有5000多个不同的单词出现。在这里,9个最常用的单词出现的总次数占总单词数的21%,20个最常用的单词出现的总次数占总单词数的30%,104个最常用的单词占50%,247个最常用的单词占60%。样本中最常用的9个单词占总词数的百分比为:

单词 the to of I a and is that in 频率% 4.65 3.02 2.61 2.2 1.95 1.82 1.68 1.62 1.57

字母频率(character frequency):在1M字节旧的电子文本中,对字母”A”到“Z”(忽略大小写)分别进行统计。发现近似频率从高往低排列(以百分比表示):

字母 e t o i a n s r h l d u c 频率 11.67 9.53 8.22 7.81 7.73 6.71 6.55 5.97 4.52 4.3 3.24 3.21 3.06 字母 m p y f g w b v k x j q z 频率 2.8 2.34 2.22 2.14 2.00 1.69 1.58 1.03 0.79 0.30 0.23 0.12 0.09

从该表中可以看出,最常用的单字母英文是e和t,其他字母使用频率相对来说就小得多。这样,攻击一个单表置换密码,首先统计密文中最常出现的字母,并据此猜出两个最常用的字母,并根据英文统计的其他特征(如字母组合等)进行试译。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3