内容正文:
第五章
数学与信息技术
二进制
5.1
逻辑术语与逻辑运算
5.2
数学与密码学
5.3
5.3
数学与密码学
数学与密码学
5.3
在日常生活中,我们登录网站、电子邮箱,手机屏幕解锁,POS机付款时通常都要输入密码,这种输入的“密码”其实严格来讲应该是一种“口令”,因 为它还不是本来意义上的“加密代码”.
观察
我们这里所说的密码,是指通信双方按照约定的法则进行信息特殊变换的一种手段.依照这种法则,将原始信息(明文)变为加密代码(密文),这个过程称为加密变换,简称加密;反过来,将密文变为明文的过程称为脱密变换,简称脱密或解密.
在通信过程中,经由有线电或无线电传输的加密代码被非法窃取,并在算法未知的情况下被恢复信息原文,这一过程称为破译.
抽象
加密
解密
明文
密文
原始明文
数学与密码学
5.3
随着信息科技的高速发展,信息安全越来越重要,小到个人信息,大到国家安全.
密码学就是研究编制密码和破译密码的技术科学,它包含两个方面:
研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学.
随着科学技术的发展与应用,密码学已成为一门综合性的尖端科学,它与语言学、数学、电子学、计算机科学等有着广泛而密切的联系.
数学与密码学
5.3
探索
密码在早期仅对文字或数码进行加密和脱密变换,但随着技术的发展,渐渐拓展到图像、音频、视频、数据等领域.其实最初的密码很简单,就是将一个符号映射成另一个符号.如当你看到“L dp d whdfkhu”时肯定一头雾水,但其实它是经过加密后的密文.如果我们知道了下面的加密规则,破译它就易如反掌.
数学与密码学
5.3
这是“皑撒移位密码”,规则是字母往前移三位.L往前移三位是I,d往前移三位是a,p往前移三位是m,……以此类推,我们就可以得到加密前的明文是“I am a teacher".
皑撒移位密码作为一种古老的加密体制,在古罗马时期就很流行了,它的基本思想就是通过把字母向前或者向后移动一定的位数来实现加密或解密.如果约定把字母向后移动三位,那么明文A就变成了D,B就变成了E,Z就变成了C,可见,位数就成了皑撒移位密码加密和解密的密钥.
数学与密码学
5.3
由于这种映射规律太明显,密码很容易被破解,也有用单一密码对应表的:
明文
密文
A
B
B
E
C
A
D
F
E
K
…
…
R
P
S
T
…
…
Y
Q
如果单纯看映射表,杂乱无章,确实没办法知道映射关系,破译难度增加,但仍属于替换加密法,即用一个字符替换另一个字符的加密方法.类似的还有“猪圈加密法”,把26个字母写进下面四个表格区域中,加密时用围着这个字母的图形来代替.这种加密方法不是用一个字母代替一个字母,而是用一个符号来代替一个字母.
Z
J
数学与密码学
5.3
如密码“ ”对应的就是“MARKS”.
由于语言在使用过程中各个词是有特定频率的,因此只要多截获密文,使用统计学就能破解这种密码.后来有经验的编码者就把一个词映射成多个密码,这样就难以呈现出明显的统计规律.一个好的编码函数,不应该仅凭几个自变量和函数值就被破译者推断出函数本身,这样就不会出现破解几次密码就导致所有密码都被破解出来.
数学与密码学
5.3
想一想
如果把26个字母对应于0到25这26个数字,你能把向前移三位的密码编码规则用函数表达式写出来吗?
序号
字母
0
A
1
B
2
C
3
D
4
E
5
F
…
…
20
U
21
V
22
W
23
X
24
Y
25
Z
设明文字母序号为,密文字母序号为,显然:
当时,;
当时,.
甚至可以写成一个统一的形式:
.
数学与密码学
5.3
更一般地,还可以用(其中常数是与26互质)来编制密码,它是一种一次函数的值除以26的余数形式,所以这类密码称为线性同余密码,也称仿射密码.
例
在Excel中利用“MOD”函数及自动填充计算,很容易得到明文字母与密文字母对照表:
解
密码加密变换是,其中,制作明文字母与密文字母对照表.
数学与密码学
5.3
明文字母
A
序号
加密序号
密文字母
B
C
D
E
F
G
0
1
2
3
4
5
6
19
24
3
8
13
18
23
T
Y
D
I
N
S
X
2
7
C
H
7
8
H
I
数学与密码学
5.3
明文字母
J
序号
加密序号
密文字母
K
L
M
N
O
P
9
10
11
12
13
14
15
12
17
22
1
6
11
16
M
R
W
B
G
L
Q
21
0
V
A
16
17
Q
R
数学与密码学
5.3
明文字母
S
序号
加密序号
密文字母
T
U
V
W
X
Y
18
19
20
21
22
23
24
5
10
15
20
25
4
9
F
K
P
U