数据加密技术(古典密码).ppt
《数据加密技术(古典密码).ppt》由会员分享,可在线阅读,更多相关《数据加密技术(古典密码).ppt(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、古典密码古典密码 用近代密码学的观点来看,许多古典用近代密码学的观点来看,许多古典密码是很不安全的,或者说是极易破译的。密码是很不安全的,或者说是极易破译的。但是我们不能忘记古典密码在历史上但是我们不能忘记古典密码在历史上发挥的巨大作用发挥的巨大作用。另外,另外,编制古典密码的基本方法对于编制古典密码的基本方法对于编制近代密码仍然有效编制近代密码仍然有效。一、古典密码古典密码C.D.Shannon(1945):l采用混淆、扩散和乘积的方法来设计密码采用混淆、扩散和乘积的方法来设计密码l混淆:使密文和明文、密钥之间的关系复混淆:使密文和明文、密钥之间的关系复杂化杂化“混淆”可以隐藏明文、密文
2、和密钥之间的任何关系。好的“混乱”可使复杂甚至强有力的密码分析工具不得奏效。最容易的方法是“代替(Substitution)”法。一、古典密码古典密码l扩散:将每一位明文和密钥的影响扩扩散:将每一位明文和密钥的影响扩大到尽可能多的密文位中。大到尽可能多的密文位中。“扩散”是一种将明文冗余度分散到密文中的方法,即将单个明文或密钥位的影响尽可能扩大到更多的密文中去,不仅将统计关系隐藏起来,也使密码分析者寻求明文冗余矿度增加了难度。最简单的“扩散”方法是“置换(Permutation)”法。一、古典密码古典密码l乘积和迭代:多种加密方法混合使用乘积和迭代:多种加密方法混合使用 对一个加密函数多次迭代
3、对一个加密函数多次迭代古典密码编码方法:古典密码编码方法:l置换,代替,加法置换,代替,加法1、置换密码、置换密码把明文中的字母重新排列,字母本身不变,但把明文中的字母重新排列,字母本身不变,但把明文中的字母重新排列,字母本身不变,但把明文中的字母重新排列,字母本身不变,但其位置改变了,这样编成的密码称为置换密码。其位置改变了,这样编成的密码称为置换密码。其位置改变了,这样编成的密码称为置换密码。其位置改变了,这样编成的密码称为置换密码。最最简简单单的的置置换换密密码码是是把把明明文文中中的的字字母母顺顺序序倒倒过来,然后截成固定长度的字母组作为密文。过来,然后截成固定长度的字母组作为密文。明
4、文:明文:明晨明晨明晨明晨5 5点发动反攻。点发动反攻。点发动反攻。点发动反攻。MING CHEN WU DIAN FA DONG FAN GONGMING CHEN WU DIAN FA DONG FAN GONG密文:密文:GNOGN AFGNO DAFNA IDUWN EHCGN IMGNOGN AFGNO DAFNA IDUWN EHCGN IM一、古典密码古典密码例如明文:例如明文:MING CHEN WU DIAN FA DONG FANMING CHEN WU DIAN FA DONG FAN GONGGONG矩阵:矩阵:MINGCH MINGCH 选出顺序:选出顺序:按列按列按
5、列按列 ENWUDIENWUDI ANFADO ANFADO 改变矩阵大小和取出序列改变矩阵大小和取出序列改变矩阵大小和取出序列改变矩阵大小和取出序列 NGFANG NGFANG 可得到不同的密码可得到不同的密码可得到不同的密码可得到不同的密码 ONGONG密文:密文:MEANO INNGN NWFFG GUAA CDDNMEANO INNGN NWFFG GUAA CDDN HIOG HIOG把明文按某一顺序排成一个矩阵,把明文按某一顺序排成一个矩阵,把明文按某一顺序排成一个矩阵,把明文按某一顺序排成一个矩阵,然后按然后按然后按然后按另一顺序选出矩阵中的字母以形成密文,最另一顺序选出矩阵中的
6、字母以形成密文,最另一顺序选出矩阵中的字母以形成密文,最另一顺序选出矩阵中的字母以形成密文,最后截成固定长度的字母组作为密文。后截成固定长度的字母组作为密文。后截成固定长度的字母组作为密文。后截成固定长度的字母组作为密文。一、古典密码古典密码2、代替密码、代替密码 首首首首先先先先构构构构造造造造一一一一个个个个或或或或多多多多个个个个密密密密文文文文字字字字母母母母表表表表,然然然然后后后后用用用用密密密密文文文文字字字字母母母母表表表表中中中中的的的的字字字字母母母母或或或或字字字字母母母母组组组组来来来来代代代代替替替替明明明明文文文文字字字字母母母母或或或或字字字字母母母母组组组组,各
7、各各各字字字字母母母母或或或或字字字字母母母母组组组组的的的的相相相相对对对对位位位位置置置置不不不不变变变变,但但但但其其其其本本本本身身身身改改改改变变变变了了了了。这这这这样样样样编编编编成成成成的的的的密密密密码码码码称称称称为为为为代代代代替替替替密密密密码。码。码。码。单表代替密码单表代替密码单表代替密码单表代替密码 多表代替密码多表代替密码多表代替密码多表代替密码 多名代替密码多名代替密码多名代替密码多名代替密码一、古典密码古典密码单表代替密码单表代替密码单表代替密码单表代替密码 只只只只使使使使用用用用一一一一个个个个密密密密文文文文字字字字母母母母表表表表,并并并并且且且且用
8、用用用密密密密文文文文字字字字母母母母表表表表中中中中的的的的一一一一个字母来代替明文字母表中的一个字母。个字母来代替明文字母表中的一个字母。个字母来代替明文字母表中的一个字母。个字母来代替明文字母表中的一个字母。明文字母表:明文字母表:明文字母表:明文字母表:A A a a a a0 0 0 0,a,a,a,a1 1 1 1,.,a,.,a,.,a,.,an-1n-1n-1n-1 密文字母表:密文字母表:密文字母表:密文字母表:B B B B b b b b0 0 0 0,b,b,b,b1 1 1 1,.,b,.,b,.,b,.,bn-1n-1n-1n-1 定义一个由定义一个由定义一个由定义
9、一个由A A A A到到到到 B B B B的映射:的映射:的映射:的映射:f:ABf:ABf:ABf:AB f(af(af(af(ai i i i)=b)=b)=b)=bi i i i 设明文:设明文:设明文:设明文:M=M=M=M=(m m m m0 0 0 0,m,m,m,m1 1 1 1,.,m,.,m,.,m,.,mn-1n-1n-1n-1 ),则密文:则密文:则密文:则密文:C=(f(mC=(f(mC=(f(mC=(f(m0 0 0 0),f(m),f(m),f(m),f(m1 1 1 1),.,f(m),.,f(m),.,f(m),.,f(mn-1n-1n-1n-1)。简单代替密
10、码的密钥就是简单代替密码的密钥就是简单代替密码的密钥就是简单代替密码的密钥就是映射函数映射函数映射函数映射函数f f f f或或或或密文字母表密文字母表密文字母表密文字母表 B B。一、古典密码古典密码单表代替密码单表代替密码单表代替密码单表代替密码、加法密码加法密码加法密码加法密码A A A A和和和和B B B B是有是有是有是有 n n个字母的字母表。个字母的字母表。个字母的字母表。个字母的字母表。定义一个由定义一个由定义一个由定义一个由A A A A到到到到B B B B的映射:的映射:的映射:的映射:f:ABf:ABf:ABf:AB f(af(af(af(ai i i i)=b)=b
11、)=b)=bi i i i=a a a aj j j=ij=ij=ij=i+k k k k mod nmod nmod nmod n加法密码是用明文字母在字母表中后面第加法密码是用明文字母在字母表中后面第加法密码是用明文字母在字母表中后面第加法密码是用明文字母在字母表中后面第 k k k k个字母来代替。个字母来代替。个字母来代替。个字母来代替。K=3 K=3 K=3 K=3 时是著名的凯撒密码。时是著名的凯撒密码。时是著名的凯撒密码。时是著名的凯撒密码。一、古典密码古典密码恺撒密码恺撒密码历史上第一个密码技术“恺撒密码”是古罗马恺撒大帝在营救西塞罗战役时用来保护重要军情的加密系统(高卢战记)
12、。明文:attack gaul 密文:DWWDFN KDXO 一、古典密码古典密码单表代替密码单表代替密码、乘法密码乘法密码乘法密码乘法密码A A A A和和和和B B B B是有是有是有是有n n个字母的字母表。个字母的字母表。个字母的字母表。个字母的字母表。定义一个由定义一个由定义一个由定义一个由A A A A到到到到B B B B的映射:的映射:的映射:的映射:f:ABf:ABf:ABf:AB f(af(af(af(ai i i i)=b)=b)=b)=bi i=a a a aj j j j j=j=j=j=ikikikik mod nmod nmod nmod n 其中,其中,其中,其
13、中,(n,k)=1n,k)=1n,k)=1n,k)=1。注意:注意:注意:注意:只有只有只有只有(n,k)=1n,k)=1n,k)=1n,k)=1,才能正确解密。才能正确解密。才能正确解密。才能正确解密。一、古典密码古典密码单表代替密码单表代替密码密钥词组代替密码:密钥词组代替密码:密钥词组代替密码:密钥词组代替密码:随机选一个词语,去掉其中的重复字母,随机选一个词语,去掉其中的重复字母,随机选一个词语,去掉其中的重复字母,随机选一个词语,去掉其中的重复字母,写到矩阵的第一行,从明文字母表中去掉这第写到矩阵的第一行,从明文字母表中去掉这第写到矩阵的第一行,从明文字母表中去掉这第写到矩阵的第一行
14、,从明文字母表中去掉这第一行的字母,其余字母顺序写入矩阵。然后按一行的字母,其余字母顺序写入矩阵。然后按一行的字母,其余字母顺序写入矩阵。然后按一行的字母,其余字母顺序写入矩阵。然后按列取出字母构成密文字母表。列取出字母构成密文字母表。列取出字母构成密文字母表。列取出字母构成密文字母表。一、古典密码古典密码举例:举例:密钥:密钥:密钥:密钥:HONG YEHONG YE 矩阵:矩阵:矩阵:矩阵:HONGYEHONGYE 选出顺序:选出顺序:选出顺序:选出顺序:按按按按列列列列 ABCDFIABCDFI JKLMPQ JKLMPQ 改变密钥、矩阵大小改变密钥、矩阵大小改变密钥、矩阵大小改变密钥、
15、矩阵大小 RSTUVW RSTUVW 和取出序列,得到不同的和取出序列,得到不同的和取出序列,得到不同的和取出序列,得到不同的 XZ XZ 密文字母表。密文字母表。密文字母表。密文字母表。密文字母表密文字母表密文字母表密文字母表 :B=B=HAJRXOBKSZNCLTGDMUYFPVEIQWHAJRXOBKSZNCLTGDMUYFPVEIQW 一、古典密码古典密码、多表代替密码多表代替密码单表代替密码的安全性不高,一个原因是单表代替密码的安全性不高,一个原因是一个明文字母只由一个密文字母代替。一个明文字母只由一个密文字母代替。构造多个密文字母表,构造多个密文字母表,构造多个密文字母表,构造多个
16、密文字母表,在密钥的控制下用相应密文字母表中的一个字在密钥的控制下用相应密文字母表中的一个字在密钥的控制下用相应密文字母表中的一个字在密钥的控制下用相应密文字母表中的一个字母来代替明文字母表中的一个字母。母来代替明文字母表中的一个字母。母来代替明文字母表中的一个字母。母来代替明文字母表中的一个字母。一个明文一个明文一个明文一个明文字母有多种代替。字母有多种代替。字母有多种代替。字母有多种代替。VigenereVigenere密码:密码:密码:密码:著名的多表代替密码著名的多表代替密码著名的多表代替密码著名的多表代替密码一、古典密码古典密码 明明明明 文文文文 字字字字 母母母母 A B C D
17、 E F G H I J K L M N O P Q R S T U V W X Y ZA 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 A 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 ZA 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 ZB 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 AB B C D E F G H I J K L M N O P Q R S T U V W
18、 X Y Z AC C D E F G H I J K L M N O P Q R S T U V W X Y Z A BC C D E F G H I J K L M N O P Q R S T U V W X Y Z A BH H I J K L M N O P Q R S T U V W X Y Z A B C D E F GH H I J K L M N O P Q R S T U V W X Y Z A B C D E F GX X Y Z A B C D E F G H I J K L M N O P Q R S T U V W X X Y Z A B C D E F G H I
19、J K L M N O P Q R S T U V W Y Y Y Y Z Z A A B B C C D D E E F F G G H H I I J J K K L L M M N N O O P P Q Q R R S S T T U U V V W W X X Z Z 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 Z 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 Vigenre方阵方阵密密密密文文文文字字字字母母母母一、古典密码古典密码 VigenreVigenre密密密密
20、码码码码的的的的代代代代替替替替规规规规则则则则是是是是用用用用明明明明文文文文字字字字母母母母在在在在VigenreVigenre方方方方阵阵阵阵中中中中的的的的列列列列和和和和密密密密钥钥钥钥字字字字母母母母在在在在VigenreVigenre方方方方阵阵阵阵中中中中的的的的行行行行的的的的交交交交点点点点处处处处的的的的字字字字母母母母来来来来代代代代替替替替该该该该明明明明文文文文字字字字母母母母。例例例例如如如如,设设设设明明明明文文文文字字字字母母母母为为为为P P,密密密密钥钥钥钥字字字字母母母母为为为为Y Y,则则则则用用用用字字字字母母母母N N来来来来代代代代替替替替明明明
21、明文文文文字字字字母母母母P P。明文明文明文明文:MING CHEN WU DIAN FA DONG FAN GONGMING CHEN WU DIAN FA DONG FAN GONG密钥密钥密钥密钥:XING CHUI PING YE KUO YUE YONG DA XING CHUI PING YE KUO YUE YONG DA JIANG LIU JIANG LIU密文密文密文密文:JQAME OYVLC QOYRP URMHK DOAMR NPJQAME OYVLC QOYRP URMHK DOAMR NP 解密就是利用解密就是利用解密就是利用解密就是利用VigenreVigen
22、re方阵进行反代替。方阵进行反代替。方阵进行反代替。方阵进行反代替。一、古典密码古典密码3 3、代数密码:、代数密码:、代数密码:、代数密码:VernamVernam密码密码密码密码 明文、密文、密钥都表示为二进制位:明文、密文、密钥都表示为二进制位:明文、密文、密钥都表示为二进制位:明文、密文、密钥都表示为二进制位:M=mM=m1 1,m,m2 2,mmn n KK =k=k1 1,k,k2 2,k kn n C=cC=c1 1,c,c2 2,c cn n 加密加密加密加密 :c c1 1=m=mi i k ki i ,i=1,2,n ,i=1,2,n 解密解密解密解密 :mm1 1=c c
23、i i k ki i ,i=1,2,n,i=1,2,n因为加解密算法是模因为加解密算法是模因为加解密算法是模因为加解密算法是模2 2加,所以称为代数密码。加,所以称为代数密码。加,所以称为代数密码。加,所以称为代数密码。对合运算对合运算对合运算对合运算:f=ff=f-1-1,模模模模 2 2加运算是对合运算。加运算是对合运算。加运算是对合运算。加运算是对合运算。密码算法是对合运算,则加密算法解密算法,工程实密码算法是对合运算,则加密算法解密算法,工程实密码算法是对合运算,则加密算法解密算法,工程实密码算法是对合运算,则加密算法解密算法,工程实现工作量减半。现工作量减半。现工作量减半。现工作量减
24、半。VernamVernam密码经不起已知明文攻击。密码经不起已知明文攻击。密码经不起已知明文攻击。密码经不起已知明文攻击。一、古典密码古典密码 如果密钥序列有重复,则如果密钥序列有重复,则如果密钥序列有重复,则如果密钥序列有重复,则VernamVernam密码是不安全密码是不安全密码是不安全密码是不安全的。的。的。的。一种极端情况:一种极端情况:一种极端情况:一种极端情况:一次一密一次一密一次一密一次一密 密钥是随机序列。密钥是随机序列。密钥是随机序列。密钥是随机序列。密钥至少和明文一样长。密钥至少和明文一样长。密钥至少和明文一样长。密钥至少和明文一样长。一个密钥只用一次。一个密钥只用一次。
25、一个密钥只用一次。一个密钥只用一次。一次一密是绝对不可破译的,但它是不实用的。一次一密是绝对不可破译的,但它是不实用的。一次一密是绝对不可破译的,但它是不实用的。一次一密是绝对不可破译的,但它是不实用的。一次一密给密码设计指出一个方向,人们用序列一次一密给密码设计指出一个方向,人们用序列一次一密给密码设计指出一个方向,人们用序列一次一密给密码设计指出一个方向,人们用序列密码逼近一次一密。密码逼近一次一密。密码逼近一次一密。密码逼近一次一密。一、古典密码古典密码二二、古典密码的穷举分析、古典密码的穷举分析1 1 1 1、单表代替密码分析、单表代替密码分析、单表代替密码分析、单表代替密码分析加法密
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 加密 技术 古典 密码
限制150内