第四章传统密码学 密码分析 密码学更关心在计算上不可破译的密码系统。如果一个算法 用(现在或将来)可得到的资源(公开数据)都不能破译, 这个算法则被认为在计算上是安全的。 可以用不同方式衡量攻击方法的复杂性: 数据复杂性。用作攻击输入所需的数据量。 处理复杂性。完成攻击所需要的时间,这个经常叫做工作因 素 存储需求。进行攻击所需要的存储量。 作为一个法则,攻击的复杂性取这三个因数的最小化,有些 攻击包括这三种复杂性的折中:存储需求越大,攻击可能越 快
11 三、密码分析 第四章 传统密码学 密码学更关心在计算上不可破译的密码系统。如果一个算法 用(现在或将来)可得到的资源(公开数据 )都不能破译, 这个算法则被认为在计算上是安全的。 可以用不同方式衡量攻击方法的复杂性: 数据复杂性。用作攻击输入所需的数据量。 处理复杂性。完成攻击所需要的时间,这个经常叫做工作因 素。 存储需求。进行攻击所需要的存储量。 作为一个法则,攻击的复杂性取这三个因数的最小化,有些 攻击包括这三种复杂性的折中:存储需求越大,攻击可能越 快
第四章传统密码学 四、传统密码学 1、移位法:将明文字母互相换位,明文的字母不变,但顺 序被打乱了。例如:线路加密法 明文以固定的宽度水平写出,密文按垂直方向读出。 明文: COMPUTERSYSTEMSECURITY COMPU TERSY STEMS ECURI TY 密文: CTSETOETCYMREUPSMRUYSI
12 四、传统密码学 第四章 传统密码学 1、移位法 :将明文字母互相换位,明文的字母不变,但顺 序被打乱了。 例如:线路加密法 明文以固定的宽度水平写出,密文按垂直方向读出。 明文:COMPUTERSYSTEMSECURITY COMPU TERSY STEMS ECURI TY 密文:CTSETOETCYMREUPSMRUYSI
第四章传统密码学 四、传统密码学 2、代替法:代替密码就是明文中每一个字符被替换成密文 中的另外一个字符,代替后的各字母保持原来位置。对密文 进行逆替换就可恢复出明文。有四种类型的代替密码:(1) (1)单表(简单)代替密码:就是明文的一个字符用相应 的一个密文字符代替。加密过程中是从明文字母表到密文字 母表的一一映射。例:恺撒( Caesar)密码。 2)同音代替密码:它与简单代替密码系统相似,唯一的 不同是单个字符明文可以映射成密文的几个字符之一同音代 替的密文并不唯 3)多字母组代替密码:字符块被成组加密,例如“ABA 可能对应“RTQ”,ABB可能对应“SLL”等。例:Paya密码。 (4)多表代替密码:由多个单字母密码构成,每个密钥加 密对应位置的明文。例:维吉尼亚密码。 13
13 四、传统密码学 第四章 传统密码学 2、代替法 :代替密码就是明文中每一个字符被替换成密文 中的另外一个字符,代替后的各字母保持原来位置。对密文 进行逆替换就可恢复出明文。有四种类型的代替密码:(1) (1)单表(简单)代替密码:就是明文的一个字符用相应 的一个密文字符代替。加密过程中是从明文字母表到密文字 母表的一一映射。例:恺撒(Caesar)密码。 (2)同音代替密码:它与简单代替密码系统相似,唯一的 不同是单个字符明文可以映射成密文的几个字符之一同音代 替的密文并不唯一。 (3)多字母组代替密码:字符块被成组加密,例如“ABA” 可能对应“RTQ” ,ABB可能对应“SLL”等。例:Playfair密码。 (4)多表代替密码:由多个单字母密码构成,每个密钥加 密对应位置的明文。 例:维吉尼亚密码
第四章传统密码学 四、传统密码学 3、凯撒( Caesar)密码 令26个字母分别对应于0~25,a=1,b=2.y=25,z=0 凯撒加密变换实际上是c≡(m+k)mod26 其中m是明文对应的数据,c是与明文对应的密文数据,k是 加密用的参数,叫密钥。比如明文: data security对应数据 序列:4,1,20,1,19,5,3,21,18,9,20,25 k=5时,得密文序列 9,6,25,6,24,10,8,0,23,14,25,4 密文: ifyxjhzwnyd 缺点:容易破解密码
14 四、传统密码学 第四章 传统密码学 3、凯撒(Caesar)密码 令26个字母分别对应于0~25,a=1,b=2……y=25,z=0。 凯撒加密变换实际上是c≡ (m + k) mod 26 其中m是明文对应的数据,c是与明文对应的密文数据,k是 加密用的参数,叫密钥。比如明文:data security 对应数据 序列:4,1,20,1,19,5,3,21,18,9,20,25 k=5时,得密文序列 9,6,25,6,24,10,8,0,23,14,25,4 密文:ifyxjhzwnyd 缺点:容易破解密码
第四章传统密码学 四、传统密码学 移位密码:如凯撒( Caesar)密码。 仿射密码:如果选取k1,k两个参数,其中k1与26互素, 令c≡(k1m+k2)mod26。这种变换称为仿射变换。 置换密码 1*.置换n的表示: 0123.232425 ∏ 012′3′.23′2425 2密钥空间K很大,|k=26!X4×1025,破译者穷举搜索 是不行的,然而,可由统计的方式破译它。 3移位密码体制是替换密码体制的一个特例,它仅含26 个置换做为密钥空间
15 置换密码: 1 * . 置换π的表示: π= 2 *密钥空间K很大,|k|=26! ≈ 4×1026 ,破译者穷举搜索 是不行的,然而,可由统计的方式破译它。 3 *移位密码体制是替换密码体制的一个特例,它仅含26 个置换做为密钥空间 四、传统密码学 第四章 传统密码学 移位密码:如凯撒(Caesar)密码 。 仿射密码:如果选取k1,k2两个参数,其中 k1 与 26 互素, 令c≡(k1 m + k2 )mod 26。这种变换称为仿射变换。 ( 0 1 2 3 ..23 24 25 0' 1' 2' 3' ..23' 24' 25' )