古典密码1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
定义:如果a (x )·b (x )=1 mod p (x ),称a (x )是b (x )的乘法逆元乘法逆元
记为1
()()mod ()
b x a x p x −=
古典密码
•古典密码对于今天来说,是极不安全的,是极易破解的,但其基本方法仍然是近、现代密码学的基础。
•古典密码运用的两种基本技术:
–代换法:将明文字母替换成其他字母、数字
或符号
–置换法:明文的字母保持相同,但顺序被打
乱
1. 代换密码
–通常建立一个替换表.加密时将需要加密的明
文依次通过查表,替换为相应的字符,即密文。
–代换密码可以分为两类:
¾单表代换
对明文消息中出现的同一个字母.在加密时都用同一个
固定的字母来代换。如,移位密码、仿射密码
¾多表代换
明文消息中出现的同一个字母,在加密时不是完全被同
一个固定的字母代换,而是根据其出现的位置次序,用
不同的字母代换。如,维吉利亚密码、P1ayfair密码。
如,明文: hello
密文: YATTR 明文: hello
密文: ABNZF
←可能是单表代换←不是单表代换
()()mod k c E m m k q ==+加密变换:{0,1,2,,1}q q =−]"选定常数q 和k (密钥)
()()mod k m D c c k q
==−解密变换:明文空间=密文空间=1)加法密码:
(1) 单表代换密码
2)移位密码
()()mod 26
k c E m m k ==+加密变换:26{0,1,2,,25}=]"()()mod 26k m D c c k ==−解密变换:
明文空间=密文空间=移位密码的一个典型代表就是Caesar 密码.它是移位密码当k =3时的特例
, 密钥k
英文字母被编码为该字母的序号
英文a b c d e f g h i j k l m n o p q r s t u v w x y Z 数字0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2425
3()(3)(mod 26),025
c E m m m ==+≤≤加密变换:
解密变换:
3()(3)(mod 26),025
m D c c c ==−≤≤3) Caesar 密码(恺撒密码)——是加法密码其密钥k =3定义如下变换
a b c d e f g h i j k l m n o p q r s t u v w x y z D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
例. 设明文消息为:I am mine ,试用恺撒密码对其进行加密,然后再进行解密。解:英文字母被编码为该字母的序号
英文a b c d e f g h i j k l m n o p q r s t u v w x y Z 数字0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2425明文消息对应的数字依次为:8 0 12 13 8 13 4
。
用恺撒密码对它们依次加密如下:
E 3(8)=8+3(mod 26)=11,对应的字母为l
E 3(0)=0+3(mod 26)=3,对应的字母为d
E 3(12)=12+3(mod 26)=15,对应的字母为p
E 3(13)=13+3(mod 26)=16,对应的字母为q
E 3(4)=4+3(mod 26)=7,对应的字母为h
密文消息为ldpq1qh 。
加法密码易受使用穷举密钥搜索(蛮力攻击)——惟密文攻击
加法密码的弱点
密钥空间是非常小的,仅有25把密钥.
伊夫用1~7对密钥进行尝试。因为密钥的长度是7
,
例.伊夫拦截了密文“UVACLYFZLJBYL”,她如何用蛮力攻击破解密码。
解:这就表明,明文是"not very secure"。密文: UVACLYFZLJBYL
k = 1→明文: tuzbkxeykiaxk
k = 2→明文: styajwdxjhzwj
k = 3→明文: rsxzivcwigyvi
k = 4→明文: qrwyhubvhfxuh
k = 5→明文: pqvxgtaugewtg
k = 6→明文: opuwfsztfdvsf
k = 7→明文: notverysecure
英文字母的相对使用频率
加法密码也容易遭受统计攻击。如果对手使用一个长的密文的话,这点就毋庸置疑了。对手可以运用特殊语言字符的出现频率。
加密:解密:112()()(mod 26)
k m D c k c k −==−12()(mod 26)k c E m k m k ==+4)仿射密码(affine cipher)
, ∀m ∈Z 26
明、密文空间与移位密码相同.
密钥空间为1212261{(,)|,,gcd(,26)1}K k k k k k =∈=]加法密码是k 1=1 的仿射密码中的一个特例。
运用仿射密码对带有密钥对(7, 2)的字母" n"进行例.
加密。
解:先把明文字母n 转化为数字13。
由加密算法,得
119(mod 26)
c = 9×13 +2==15
再把c=15 转化为字母得到密文P。