第二章信息加密技术
第二章信息加密技术
例如,如果使用的加密密钥是K=
•17 17 5 •21 18 21
• 2 2 19
•欲对明文pay more money进行加密,则现将明文按三个字母一组 分组(不足三个时补字母x),然后每组字母求密文。 •该明文的前三个字母表示为pay=(15 0 24) ,计算密文的过程如下 • (15 0 24) K=(375 819 486) mod 26=(11 13 18) =LNS •以此类推,可得密文为。
2、置换密码(换位密码)
不改变明文字母,但通过重排而更改它们的位置。 例如:矩阵变换密码、纵行换位密码
矩阵变换加密: 将明文中的字母按给定顺序安排在1个矩阵中,然后
用另一种顺序选中矩阵的字母来产生密文,一般为 列变换次序。如原列次序为1234,先列次序为2413
第二章信息加密技术
矩阵变换加密
如将明文network security按行排列在3*6矩阵 中,如下所示:
•LNS HDL EWM TRW
•解密时使用逆矩阵K-1= •? •对密文(11 13 18)T做运算 •K-1 (11 13 18)T mod 26=(431 494 570) T=(15 0 24) T=pay •Hill密码的强度在于完全隐藏了单字母的频率。
第二章信息加密技术
§2.1 古典密码
第二章信息加密技术
单表代换密码
(3)仿射密码 y=ax+b(mod 26) a,b∈Z26 当a=1时,仿射密码移位密码 如果解密是可能的,必须要求仿射函数是双射的:对任何 y ∈ Z26,方程ax+b≡y(mod 26)有唯一解。
由数论可知,当且仅当gcd(a,26)=1,对每个y有唯一解。 对于a∈Z26, gcd(a,26)=1的a只有12种选择,对于参数b没
•C1 •C2 •= •C3
•K11 K12 K13 •K21 K22 K23 •K31 K32 K33
•P1 •P2 •P3
•y1 y2 •= •X1 x2
•11 8 •3 7
•或 C=KP 其中,C和P是长度为3的列向量,分别表示密文和明文, K是3*3矩阵,表示加密密钥,加密操作要执行模26运算。
P=ROT13(ROT13(P)) • ROT13并非为保密设计,它经常用在英特网电子邮件
中隐藏特定的内容,以避免泄露一个难题的解答等。
第二章信息加密技术
单表代换密码
•(2)替换密码
•Π=
•a b c…x y z •w f e…a z w
•有26 种选 择
•有25 种选 择
•有24 种选 择
wfe…azw为密钥 排列后有26*25*24*…*1种选择, 所以密钥有26!种,太复杂,不容易记忆。
因此实际中密钥句子常被使用,密钥句子中的字母被依次填入密文 字母表(重复的字母只用一次),没用的字母按自然顺序排列 举例在后一页
第二章信息加密技术
单表代换密码 替换密码 P24 例:密钥句子为studentteacher abcdefghijklmnopqrstuvwxyz studenachrklmnopqrstuvwxyz 密钥 明文 I love you 密文 h love you
•简记为y=xK,K为密钥
•24X 26Z•= •12 16
•线性代数:可用K-1来解密,x=yk-1
•11 8 •3 7
•11 8 •3 7
•11 8 •-1•= •7 18
•3 7
•23 11
•4 d 1a •= •22 5
•11 8 •3 7
第二章信息加密技术
练习
设 设密密钥钥为为•k=
•11 8 •3 7
有要求,所以仿射密码有12*26种可能的密钥。 因为:。。。
第二章信息加密技术
多表代换密码
• 多表代换:以一系列(两个以上)代换表依次 对明文消息的字母进行代换的加密方法。
• 一次一密:对每个明文字母都采用不同的代换表 或密钥进行加密,称为一次一密密码 (理论上唯一不可破的密码)
• 周期多表代换:代换表个数有限,重复使用。 实际应用中采用,例如维吉尼亚密码
•1 2 3 4 5 6 •n e t w o r •k sec u •r i t y
•5 2 6 4 1 3 •o e r w n t •c u e k s • i yrt
给定一个置换:f =••152236445163
,根据给定的次序,按
526413的列序重新排列,得到
所以密文是 oerwntc ueks i yrt.
第二章信息加密技术
破译
Kerckhoff假设:攻击方知道所用的密码系统 目标:设计一个在Kerckhoff假设下达到的安全系
统 移位密码极易破解,仅统计出最高频度字母再与
明文字母表对应决定出位移量,就差不多得到 正确解了。
安全密码系统的一个必要条件是密钥的空间必须
足够大,使得穷举密钥搜索破译是不可能的。 (非充分条件)
明文:wearediscoveredsaveyourself 密钥:vxyzabcdefghijklmnopqrstuv 密文:RAAPDDJUFSAKYMMCLHRMEKIKXFA • 也可选取一个关键词重复成与明文同样长度作为密钥进行加密。 若取关键词为deceptive,加密结果如下: 明文:wearediscoveredsaveyourself 密钥:deceptivedeceptivedeceptive 密文:ZICVTWQNGRZGVTWAVZHCQYGLMGJ
第二章信息加密技术
§2.2 分组加密技术
§2.2.1基本概念 分组加密技术属于对称密码体制的范畴;
分组密码的工作方式是将明文分成固定长度的组,如 64bit为一组,用同一密钥和算法对每一组加密,输出 也是固定长度的密文。
解密过程正好相反,按序排列密文后,通过列置换,再按 行读取数据即可。
第二章信息加密技术
纵行换位密码
明文以固定的宽度水平地写在一张图表纸上,密文按垂直方向读出。 解密就是将密文按相同的宽度垂直地写在图表纸上,然后水平地读出明文。 Plaintext:COMPUTERGRAPHICSMAYBESLOWBUTATLEASTITSEXPENSIVE
Vigenere密码的强度在于对每个明文字母有多个密文字 母对应,因此该字母的频率信息是模糊的。
第二章信息加密技术
Vigenere密码表格
ABCDEFGHIJKLMNOPQRSTUVWXYZ BCDEFGHIJKLMNOPQRSTUVWXYZA CDEFGHIJKLMNOPQRSTUVWXYZAB DEFGHIJKLMNOPQRSTUVWXYZABC EFGHIJKLMNOPQRSTUVWXYZABCD FGHIJKLMNOPQRSTUVWXYZABCDE GHIJKLMNOPQRSTUVWXYZABCDEF HIJKLMNOPQRSTUVWXYZABCDEFG IJKLMNOPQRSTUVWXYZABCDEFGH JKLMNOPQRSTUVWXYZABCDEFGHI KLMNOPQRSTUVWXYZABCDEFGHIJ LMNOPQRSTUVWXYZABCDEFGHIJK MNOPQRSTUVWXYZABCDEFGHIJKL NOPQRSTUVWXYZABCDEFGHIJKLM OPQRSTUVWXYZABCDEFGHIJKLMN PQRSTUVWXYZABCDEFGHIJKLMNO QRSTUVWXYZABCDEFGHIJKLMNOP RSTUVWXYZABCDEFGHIJKLMNOPQ STUVWXYZABCDEFGHIJKLMNOPQR TUVWXYZABCDEFGHIJKLMNOPQRS UVWXYZABCDEFGHIJKLMNOPQRST VWXYZABCDEFGHIJKLMNOPQRSTU WXYZABCDEFGHIJKLMNOPQRSTUV XYZABCDEFGHIJKLMNOPQRSTUVW YZABCDEFGHIJKLMNOPQRSTUVWX ZABCDEFGHIJKLMNOPQRSTUVWXY
古典密码是密码学的渊源,可用手工和机 械操作来实现加解密,现在已很少采用了。
第二章信息加密技术
§2.1 古典密码
1、代换密码
通常,明文和密文由统一字母表构成。
• 加密时,通常将明文消息划分成长为L的消息 单元,称为明文组。
• L=1 单字母代换(流密码)
将明文空间的元素(如字母、二元数据等)逐个进行加 密, 这种对明文消息加密的方式称为流密码。
单表代换密码
(1)移位密码 最著名的移位密码是凯撒密码。 例:取k=3,明文字母和密文字母的对应关系为
明文:abcdefghijklmnopqrstuvwxyz
密文:DEFGHIJKLMNOPQRSTUVWXYZABC 明文m=“caser cipher is a shift substitution”所对应的
第二章信息加密技术
维吉尼亚密码(Vigenere密码)
利用Vigenere表格进行加密,加密方法如下: • 给定一个单钥字母x和一个明文字母y,密文字母则在表格中x行y
列的交叉点; • 例如,明文为:we are discovered save yourself,若取单密钥为v,
则加密时从密钥v开始,对应每个明文字母顺序向下取密钥,结果 如下:
• L>1 多码代换(分组密码)
将明文分成固定长度的组,如64bit一组,用同一密钥 和算法对每一组加密,输出也是固定长度的密文。
第二章信息加密技术
• 根据加密过程中使用代换表数目的多少
• 单表代换:对所有明文字母都用一种固定代换
•
进行加密
• 多表代换:用一个以上的代换表进行加密
• 多字母代换
第二章信息加密技术
•攻击者
在对称密码系统中,密钥的管理扮演着非常重要的角色。