1-1古典密码之代换与置换
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
11 8
(9,20)
3
7
=(3,4)
(11,24)
11
3
8
7
= (11,22)
因此密文为DELW 解密 略。
3.维吉尼亚密码
16 世 纪 晚 期 , 法 国 外 交 官 维 吉 尼 亚 (Vigenere) 发明,引入了“密钥” 的概念。
维吉尼亚密码
维吉尼亚密码体制的数学描述
对于密码体制的五元组(P, C, K, E, D)有 • P=C=K=(Z26)m,m是一个正整数 • 对任意的k=(k1,k2,...,km)∈K, x=(x1,x2,...,xm)∈P, y=(y1,y2,...,ym)∈C,定义 ek(x)=(x1+k1,x2+k2,...,xm+km) dk(y)=(y1-k1,y2-k2,...,ym-km) • 以上运算均在Z26上运行(模26)
,y ) = (y ,y ,
m
π-1(1)
π-1(2)
,y ) π-1(m)
• 其中π-1为置换π的逆置换
置换密码举例
设m=6,密钥为如下的置换π
x
1
2
3
4
5
6
π(x)
3
5
1
6
4
2
将两行对调并重新排序可得逆置换π-1如下
y
1
2
3
4
5
6Leabharlann π-1(y)36
1
5
2
4
即
eπ(x1,x2,x3,x4 ,x5,x6 ) = (x3,x5,x1,x6,x4 ,x2 ) dπ(y1,y2,y3,y4 ,y5,y6 ) = (y3,y6 ,y1,y5,y2,y4 )
三个密文值分别为0,23,6,相应的密文为AXG 解密过程略
希尔(Hill)密码
2.希尔密码
对于密码体制的五元组(P, C, K, E, D)有 P=C=(Z26)m,m是一个不小于2的正整数 K是定义在Z26上的m×m可逆矩阵的集合 取密钥k∈K,k为一个m×m矩阵,记为(kij),对 x=(x1,x2,...,xm)∈P, y=(y1,y2,...,ym)∈C,定义 ek(x)=xk dk(y)=yk-1 k-1表示k的逆矩阵 以上运算均在Z26上运行(模26)
代换密码的数学描述
代换密码体制的数学描述 对于密码体制的五元组(P, C, K, E, D)有
P=C=Z26 K是由26个数字0,1,2,...,25的所有可能的置换组成 对任意的置换π∈K,定义
eπ(x)=π(x) dπ(y)=π-1(y) π-1表示置换π的逆置换
注 :(1)加密函数必须是单射 (2)dπ(eπ(x))=x
代换密码
曾公亮《武经总要》(北宋)
◆ 将常用军事情报编为40种
◆1请弓、2请箭、3请刀、4请甲、5请枪旗 6请锅幕、7请马、8 请衣赐、9请粮料、10请草料 11请车牛、12请船、13请攻城守具、14请添兵、15请移营 16请进军、17请退军、18请固守、19未见贼、20 见贼讫 21贼多、22贼少、23贼相敌、24贼添兵、25贼移营 26贼进兵、27贼退兵、28贼固守、29围得贼城、30解围城 31被贼围、32贼围解、33战不胜、34战大胜、35战大捷 36将士投降、37将士叛、38士卒病、39都将病、40战小胜
代换密码
任取一个置换,可以得到一个加密函数,例如下表所示的置换规则
a b c d e f g h i j k l mn o p q r s t u vwx y z X N Y A H P O G Z QWB T S F L R C VMU E K J D I
解密函数为逆置换π-1
A B C D E F G H I J K L MN O P Q R S T U VWX Y Z d l r y v o h e z xwp t b g f j q nmu s k a c i
古典密码
代换与置换
CONTENT
代换密码
目 置换密码
录
代换密码
加密:将明文字符按照对应关系代换成另 外的密文字符。 解密:将密文字符按照对应关系还原成明 文字符。 密钥:对应关系。
代换密码
12345 1 ABCDE 2 F G H IJ K 3 L MNOP 4 QRSTU 5 V WX Y Z
=(x3,x5,x1,x6,x4,x2)
置换密码的特性
y
1
2
3
4
5
6
π-1(y)
3
6
1
5
2
4
解密密钥为
0 0 1 0 0 0
0
0
0
0
1
0
Kπ -1
=
1
0
0 0
0 0
0 0
0 0
0
1
0 0 0 1 0 0 0 1 0 0 0 0
0 0 1 0 0 0
0 1
0
0
0 1 0 0 0 0 0 0 0 1 0 0
0 0
加密函数为eπ(x)=xKπ
0
0
1 0
=(x1,x2,x3,x4,x5,x6)
0
0
0 1
0 0
1 0 0 0
0
0
0
1
0 0 0 0
0
0
1
0
0 0 0 0 0 1 0 0
◆ 205-123 B.C.,棋盘密码 HELLO 2315313134
代换密码
◆ 50 B.C.,恺撒密码
◆ 明文: the quick brown fox jumps over the lazy dog
◆ 密文: WKH TXLFN EURZQ IRA MXPSV RYHU WKH ODCB GRJ
k i,j =
1 0
若i = π(j) 否则
使用矩阵Kπ为密钥的希尔密码等价于使用置换π为密钥的置换密码,且
K-1 = K
π
π-1
置换密码的特性
x
1
2
3
4
5
6
π(x)
3
5
1
6
4
2
前例中,等价的希尔密码加密密钥为
0 0 1 0 0 0
0
0
0
0
0
1
Kπ
=
1
0
0 0
0 0
0 0
置换密码
• shesellsseashellsbytheseashore
• EESLSHSALSESLSHBLEHSYEETHRAEOS
试解密 MGZVYZLGHCMHJMYXSSFMNHAHYCDLMHA thisciphertextcannotbedecrypted
几种常用的代换密码
1.仿射密码
对于密码体制的五元组(P, C, K, E, D)有
P=C=Z26 K={(a,b)∈Z26×Z26 : gcd(a,26)=1} 对任意的k=(a,b)∈K, x,y∈Z26,定义
当a=1时,又称为移位密码。
密钥空间大小 φ(26) ×26=312
仿射密码举例
设仿射密码的密钥k=(7,3),试给出明文hot的加解 密过程。
加密函数为ek(x)=7x+3 解密函数为dk(y)=7-1(y-3)=15(y-3)=15y-19 验证dk(ek(x))=dk(7x+3)=15(7x+3)-19
ek(x)=(ax+b)mod26 dk(y)=a-1(y-b)mod26 a-1是a关于模26乘法的逆
abcde f gh i j k lm
0 1 2 3 4 5 6 7 8 9 10 11 12
nopq r s t uvwx y z
13 14 15 16 17 18 19 20 21 22 23 24 25
=x+45-19=x
仿射密码举例
a b c d e f g h i j k l mn o p q r s t u vwx 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 24 25
字母hot对应的明文数值为7,14,19,分别加密如下: (7×7+3)mod26=52mod26=0 (7×14+3)mod26=101mod26=23 (7×19+3)mod26=136mod26=6
置换密码举例
使用该密码加密明文
shesellsseashellsbytheseashore
首先将明文字母每六个分为一组:
shesel | lsseas | hellsb | ythese | ashore
对每组字母使用加密变换可得
EESLSH | SALSES | LSHBLE | HSYEET | HRAEOS
即密文为
EESLSHSALSESLSHBLEHSYEETHRAEOS
置换密码的特性
置换密码实际上是希尔密码的特殊形式
给定集合{1,2,...,m}的一个置换π,定义置换π的关联置换矩阵Kπ=(Ki,j)m×m,其元素值为
eπ(x1,x2, ,xm ) = (xπ(1),xπ(2), ,xπ(m))
希尔密码举例
2.希尔密码
11 8
设m=2,取密钥k=
3
7
根据y=xk 和 x=yk-1
11 8
有(y1,y2)=(x1,x2)
3
7
7
k-1=
23
18 11
,则(x1,x2)=(y1,y2)
7
23
18 11
假设明文july,加密过程
解密函数为dπ(y)=yKπ-1
0
0
0
0
1
0
1 0 0 0 0 0
=(y1,y2,y3,y4,y5,y6)
0
0
0
0
0
1
=(y3,y6,y1,y5,y2,y4)
0 0 0 1 0 0 0 1 0 0 0 0
重点回顾
代换密码
• thisciphertextcannotbedecrypted • MGZVYZLGHCMHJMYXSSFMNHAHYCDLMHA
代换密码
曾公密码
选择一首五言律诗作为密码本
国破山河在,城春草木深 感时花溅泪,恨别鸟惊心 烽火连三月,家书抵万金 白头搔更短,浑欲不胜簪
——杜甫《春望》
加密过程:找到军情对应的字,做标记后放在普通公文中发送。
例:传输消息1请弓 在第1个字“国”上标记
解密过程:字验
例:通过标记的“国”恢复消息1请弓
得到密文 VPXZGIAXIVWPUBTTMJPWIZITWZT
20 17 4 2 8 15 22 25 19
+(mod26)
置换密码
加密
将明文字符按照一定的规则移动位置,得到排列错乱的密文,字符本身不变。
解密
将密文字符按照相应的逆向规则还原成原来的顺序。
密钥
移位规则
置换密码
500 B.C.,斯巴达人在军事上用于加解密。
19 7 8 18 2 17 2 8 15 7 4 17 21 15 23 25 6 8
24 15 19 14 18 24 2 8 15 7 4 17 0 23 8 21 22 15
+(mod26)
18 19 4 12 8 18 2 8 15 7 4 17
20 1 19 19 12 9
13 14 19 18 4 2 2 8 15 7 4 17 15 22 8 25 8 19
维吉尼亚密码
a b c d e f g h i j k l mn o p q r s t u vwx 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 24 25
假设m=6,密钥字为CIPHER,加密明文thiscryptosystemisnotsecure 密钥字对应的数字串为k=(2,8,15,7,4,17) 加密
置换密码
置换密码体制密码体制的数学描述
对于密码体制的五元组(P, C, K, E, D)有 • P=C=(Z26)m,m是一个正整数 • K是由所有定义在集合{1,2,...,m}上的置换组成 • 对任意的密钥(即置换)π,定义
eπ(x1,x2 , dπ(y1,y2 ,
,xm ) = (xπ(1),xπ(2), ,xπ(m))