现代密码学理论与实践第2章-传统加密技术课件.pptx

上传人:牧羊曲112 文档编号:3842607 上传时间:2023-03-24 格式:PPTX 页数:82 大小:1.76MB
返回 下载 相关 举报
现代密码学理论与实践第2章-传统加密技术课件.pptx_第1页
第1页 / 共82页
现代密码学理论与实践第2章-传统加密技术课件.pptx_第2页
第2页 / 共82页
现代密码学理论与实践第2章-传统加密技术课件.pptx_第3页
第3页 / 共82页
现代密码学理论与实践第2章-传统加密技术课件.pptx_第4页
第4页 / 共82页
现代密码学理论与实践第2章-传统加密技术课件.pptx_第5页
第5页 / 共82页
点击查看更多>>
资源描述

《现代密码学理论与实践第2章-传统加密技术课件.pptx》由会员分享,可在线阅读,更多相关《现代密码学理论与实践第2章-传统加密技术课件.pptx(82页珍藏版)》请在三一办公上搜索。

1、2019-6-6,谢谢观赏,现代密码学理论与实践第2章 传统加密技术,2019-6-6,谢谢观赏,2/81,Part OneSymmetric Ciphers,Road Map for Part OneChp.2,Classical Encryption TechniquesChp.3,Block Cipher and the Data Encryption StandardChp.4,Finite FieldsChp.5,Advanced Encryption StandardChp.6,More on Symmetric CiphersChp.7,Confidentiality Using

2、 Symmetric Encryption,2019-6-6,谢谢观赏,3/81,Chapter 2 Classical Encryption Techniques,Many savages at the present day regard their names as vital parts of themselves,and therefore take great pains to conceal their real names,lest these should give to evil-disposed persons a handle by which to injure th

3、eir owners.The Golden Bough,Sir James George Frazer,2019-6-6,谢谢观赏,4/81,密码学的演变历史(1)William Friedman,1918,William Friedmans The Index of Coincidence and its Applications in CryptographyWilliam Frederick Friedman(Sept.24,1891 Nov.12,1969)美国陆军密码专家。1930年代,他领导了陆军的一个研究部门Signals Intelligence Service(SIS),其中

4、一部分服务一直延续到五十年代。三十年代晚期,在他的指导下,Frank Rowlett 破解了日本人的PURPLE加密机(紫密),截获了日本的大量外交和军事的秘密。,2019-6-6,谢谢观赏,5/81,密码学的演变历史(2)香农的贡献,1948年,Claude Shannons发表“The Communication Theory of Secrecy System”,成为现代密码学理论基础。1949年,Shannon在其著名的“信息论”发表一年之后,又发表了论文“保密系统的通信理论”,首次将密码学研究置于坚实的数学基础上。该理论的重大贡献在于:建立了通信保密/密码学严格的理论基础;证明了一次

5、一密(one-time pad)的密码系统是完善保密的,导致了对流密码的研究和应用;提出分组密码设计应该遵循的准则,如扩散性和混淆性;证明了消息冗余使得破译者统计分析成功的理论值(唯一解距离),2019-6-6,谢谢观赏,6/81,密码学的演变历史(2),Claude Elwood Shannon(Apr.30,1916 Feb.24,2001),美国电气工程师和数学家,被誉为信息论之父 the father of information theory.香农之有名在于他以1948年发表的那篇旷世论文而奠定了现代信息论基础。其实早在1937年,当21岁的香农还是MIT的硕士研究生时,他便在他的硕

6、士论文中论述了布尔代数的电子实现和应用,可以构建和解决任何逻辑的和数字的关系,因此奠定了数字计算机和数字电路设计理论的基础。他的硕士论文一直被认为是迄今最重要的硕士论文。1949-1967,密码学研究处于沉寂时期,2019-6-6,谢谢观赏,7/81,密码学的演变历史(3)Feistel,Whitfield Diffie,Matin Hellman,1971,IBM发明Luciffer Cipher,128位密钥作分组加密。这项发明是由Horst Feistel(Jan.30,1915Nov.14,1990)领导的,他是密码学家,当时在IBM负责设计加密器,他的工作最终激发了70年代Data

7、Encryption Standard(DES)的研发高潮1976-1977,美国国家标准局正式公布实施DES1975,Whitfield Diffie 和 Matin Hellman,发表A New Direction in Cryptography,首次提出适应网络保密通信的公开密钥思想,揭开现代密码学研究的序幕,具有划时代的意义,2019-6-6,谢谢观赏,8/81,密码学的演变历史(4)R.S.A.,Abbas El Gamal,Lai Xuejia,1977-1978,Ronald Rivest,Adi Shamir,Len Adleman第一次提出公开密钥密码系统的实现方法RSA1

8、981,成立International Association for Cryptology Research1985,Abbas El Gamal提出概率密码系统ElGamal方法1990-1992,Lai Xuejia and James:IDEA,The International Data Encryption Algorithm2000,AES,Advanced Encryption Standard,2019-6-6,谢谢观赏,9/81,Cryptology(保密学),源自希腊语(Greek)Krypts:hidden;logos:word,是密码学和密码处理过程的研究Crypto

9、graphy:The Science and Study of Secret Writing,密码编码学Cryptanalysis:The Science and Study of Secret Breaking,密码破译学Cipher:A secret method of writing 加密方法Encipher(encipherment),encryption:将明文转换成密文的过程Decipher(decipherment),decryption:将密文还原成明文的过程Plaintext(cleartext):原始的可读数据,明文Ciphertext(Cryptogram):加密后的不可

10、解读之文件,密文Key:密钥,对加密与解密过程进行控制的参数E(m):Encryption Transformation 加密变换D(c):Decryption Transformation 解密变换,密码学基本术语 Terminologies,2019-6-6,谢谢观赏,10/81,什么是密码?简单地说它就是一组含有参数K的变换E。设已知消息m,通过变换Ek得密文C,这个过程称为加密,E为加密算法,k不同,密文C亦不同。传统的保密通信机制:,简单加密系统模型,2019-6-6,谢谢观赏,11/81,理论安全,或无条件安全Theoretical Secure(or Perfect Secure

11、)攻击者无论截获多少密文,都无法得到足够的信息来唯一地决定明文。Shannon用理论证明:欲达理论安全,加密密钥长度必须大于等于明文长度,密钥只用一次,用完即丢,即一次一密,One-time Pad,不实用。实际安全,或计算上安全Practical Secure(or Computationally Secure)如果攻击者拥有无限资源,任何密码系统都是可以被破译的;但是在有限的资源范围内,攻击者都不能通过系统的分析方法来破解系统,则称这个系统是计算上安全的或破译这个系统是计算上不可行(Computationally Infeasible)。,理论安全和实际安全,2019-6-6,谢谢观赏,1

12、2/81,加密的基本概念,密码体制加密系统采用的基本工作方式称为密码体制,密码体制的基本要素是密码算法和密钥。密码算法是一些公式、法则或程序;密钥是密码算法中的控制参数。加密系统可以用数学符号来描述:SP,C,K,E,DP:明文空间 C:密文空间K:密钥空间 E:加密变换D:解密变换 kK,则有CEk(P),PDk(C)Dk(Ek(P),或者DkEk-1,且EkDk-1。,2019-6-6,谢谢观赏,13/81,对称密码体制(Symmetric System,One-key System,Secret-key System)加密密钥和解密密钥相同,或者一个密钥可以从另一个导出,能加密就能解密,

13、加密能力和解密能力是结合在一起的,开放性差。非对称密码体制(Asymmetric System,Two-key System,Public-key System)加密密钥和解密密钥不相同,从一个密钥导出另一个密钥是计算上不可行的,加密能力和解密能力是分开的,开放性好。,对称密码体制和非对称密码体制,2019-6-6,谢谢观赏,14/81,序列密码如果密文不仅与最初给定的算法和密钥有关,同时也与明文位置有关(是所处位置的函数),则称为序列密码体制。加密以明文比特为单位,以伪随机序列与明文序列模2加后,作为密文序列。分组密码如果经过加密所得到的密文仅与给定的密码算法和密钥有关,与被处理的明文数据在

14、整个明文中的位置无关,则称为分组密码体制。通常以大于等于64位的数据块为单位,加密得相同长度的密文。,序列密码体制和分组密码体制,2019-6-6,谢谢观赏,15/81,确定型密码体制和概率密码体制确定型:当明文和密钥确定后,密文也就唯一地确定了;概率型:当明文和密钥确定后,密文通过客观随机因素从一个密文集合中产生,密文形式不确定,称为概率型密码体制。单向函数型密码体制和双向变换型密码体制单向函数型密码体制适用于不需要解密的场合,容易将明文加密成密文,如哈希函数;双向变换型密码体制可以进行可逆的加密、解密变换。,其他加密体制,2019-6-6,谢谢观赏,16/81,现代密码学的基本原则设计加密

15、系统时,总是假定密码算法是可以公开的,需要保密的是密钥。一个密码系统的安全性不在算法的保密,而在于密钥,即Kerckhoff原则。对加密系统的要求 系统应该是实际上安全的(practical secure),截获密文或已知明文密文对时,要决定密钥或任意明文在计算上是不可行的。加密解密算法适用于密钥空间中的所有元素。系统易于实现,使用方便。系统的安全性不依赖于对加密体制或加密算法的保密,而依赖于密钥。系统的应用不应使通信网络的效率过分降低。,现代密码学基本原则及加密系统要求,2019-6-6,谢谢观赏,17/81,对称加密系统由以下五部分组成Plaintext:明文Encryption algo

16、rithm:加密算法Key:密钥Ciphertext:密文Decryption algorithm:解密算法加密算法必须足够强大,使破译者不能仅根据密文破译消息收发双方必须在某种安全的形式下获得密钥并必须保证密钥的安全,2.1 对称密码系统的模型,2019-6-6,谢谢观赏,18/81,传统密码的简化模型,2019-6-6,谢谢观赏,19/81,对称密码系统的要求,使用对称密码系统有两个基本要求一个强加密算法一个只有发送方和接收方知道的秘密密钥Y=EK(X)X=DK(Y)必须假定加密算法是公开的因此必须有安全的途径或信道分发密钥,2019-6-6,谢谢观赏,20/81,传统密码体制的模型,Y=

17、Ek(X)X=Dk(Y),2019-6-6,谢谢观赏,21/81,密码编码学(Cryptography)密码编码系统根据以下三个独立方面进行分类用于将明文转换为密文的操作类型:代换和置换所使用的密钥的数量和方式:对称密码体制(单钥系统、秘密密钥系统)非对称密码体制(双钥系统、公开密钥系统)明文的处理方式:分组加密和流加密密码分析学(Cryptanalysis)密码分析:试图破译密文得到明文或试图获得密钥的过程为密码分析,密码破译的策略取决于加密方法及可供破译者使用的信息。穷举攻击:对密文尝试所有可能的密钥,直到把它转化为可读的有意义的明文,至少要尝试1/2种所有可能的密钥。,Cryptolog

18、y 密码学,2019-6-6,谢谢观赏,22/81,对加密信息的攻击类型,唯密文攻击 only know algorithm and ciphertext,is statistical,know or can identify plaintext 已知明文攻击 know/suspect plaintext and ciphertext选择明文攻击 select plaintext and obtain ciphertext选择密文攻击 select ciphertext and obtain plaintext选择文本攻击 select plaintext or ciphertext to e

19、n/decrypt,2019-6-6,谢谢观赏,23/81,2019-6-6,谢谢观赏,24/81,穷举攻击,总是可以简单地尝试每一个可能的密钥 穷举攻击是最基本的攻击,难度与密钥长度成正比 平均来说要获得成功必须尝试所有可能密钥的一半,2019-6-6,谢谢观赏,25/81,2.2 代换密码(Substitution),代换法是将明文字母替换成其他字母、数字或符号的加密方法如果把明文看成是二进制序列的话,代换就是用密文位串来代换明文位串代换法改变明文内容的表示形式,保持内容元素之间相对位置不变已知最早的代换密码是由Julius Caesar发明的恺撒密码Caesar Cipher,对字母表中

20、的每个字母用它之后的第3个字母来代换。例如:meet me after the toga partyPHHW PH DIWHU WKH WRJD SDUWB,2019-6-6,谢谢观赏,26/81,2.2.1 Caesar Cipher,Caesar实际上是一种单表代换密码明文字母用密文字母表中对应字母代替,例:明文字母表 Pp0,p1,pn-1密文字母表 Cc0,c1,cn-1密钥为正整数k,加密:i+k j(mod n)解密:j-k i(mod n)Caesar Cipher,加密:C=E(p)=(p+k)mod 26 解密:p=D(C)=(C-k)mod 26,0A;1B;25Z,201

21、9-6-6,谢谢观赏,27/81,Caesar Cipher,定义如下变换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 zD E F G H I J K L M N O P Q R S T U V W X Y Z A B C让每个字母等价于一个数值a b c d e f g h i j k l m0 1 2 3 4 5 6 7 8 9 10 11 12n o p q r s t u v w x y Z13 14 15 16 17 18 19 20 21 22 23 24 25Caesar密码可以表示如下C=E(p)=(p+k)mod(26)

22、p=D(C)=(C-k)mod(26),这里k=3,2019-6-6,谢谢观赏,28/81,对Caesar密码的攻击,如果已知某给定密文是Caesar密码,穷举攻击是很容易实现的,因为只要简单地测试所有25种可能的密钥Caesar密码的三个重要特征使我们可以采用穷举攻击分析方法已知加密和解密算法所需测试的密钥只有25个明文所用的语言是已知的,且其意义易于识别比如,破解密文PHHW PH DIWHU WKH WRJD SDUWB,或者,GCUA VQ DTGCM,2019-6-6,谢谢观赏,29/81,2019-6-6,谢谢观赏,30/81,对Caesar密码的攻击,如果明文所用语言不为我们所知

23、,则明文输出不可识别,而且输入可能按某种方式经过缩写或压缩,则识别就更加困难例如,2019-6-6,谢谢观赏,31/81,2.2.2 Monoalphabetic Cipher单表代换密码,单表代换密码不只是25种可能的密钥,而是允许任意代换,增加密钥空间 每个明文字母可以随机映射到任意一个密文字母,密文行是26个字母的任意置换,那么有26!或大于4x1026种可能的密钥,每条消息用一个字母表加密 这样密钥有26个字母长 Plain:abcdefghijklmnopqrstuvwxyz Cipher:DKVQFIBJWPESCXHTMYAUOLRGZNPlaintext:ifwewishtor

24、eplacelettersCiphertext:WIRFRWAJUHYFTSDVFSFUUFYA,2019-6-6,谢谢观赏,32/81,单表代换密码的安全性分析,只要密文字符是26个字母的一个排列即可。单表代换密码中每条消息用一个字母表加密这样有26!=4x1026种可能的密钥,超过 400,000,000,000,000,000,000,000,0004x1026=400万亿亿 这比DES的密钥空间大10个数量级,看起来是安全的,应该可以抵御穷举攻击,其实不然 这是因为语言的一些规律和特性,2019-6-6,谢谢观赏,33/81,语言的冗余性和密码攻击,人类的语言是有冗余性的 比如从“th

25、 lrd s m shphrd shll nt wnt”中我们可以大概猜出些什么字母使用的频率是不一样的 英文字母E是使用最频繁的,然后是T,R,N,I,O,A,S等 有些字母使用得很少,如Z,J,K,Q,X 这样可以得到英文字母使用频率分布表同时,统计双字母组合和三字母组合的使用频率也是非常有用的,2019-6-6,谢谢观赏,34/81,英文字母的相对使用频率,2019-6-6,谢谢观赏,35/81,英文字母使用频率用于密码分析,关键的一点,单表代换不能改变相关字母出现的频率 这是由阿拉伯科学家在公元九世纪就分析发现了所以,只要统计密文中字母出现的频率,与已知的统计值做比较就可以分析出相应明

26、文字母了如果Caesar密码中字母呈现出通常的峰值和低谷,那么单表代换也会呈现相同的特性,比如:峰值在:A-E-H-I,N-O,R-S-T低谷在:J-K,Q,X-Z双字母、三字母出现特性表也会有助于破译密文,2019-6-6,谢谢观赏,36/81,单表代换密码攻击举例,给定密文:UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZVUEPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSXEPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ统计相关字母出现的次数(see textbook)可以猜测P和Z是e和t,ZW是

27、th,这样ZWP就是the这样反复试验并不断修正错误,最后可得:it was disclosed yesterday that several informal but direct contacts have been made with political representatives of the viet cong in moscow,2019-6-6,谢谢观赏,37/81,2.2.3 Playfair密码,单表代换尽管有大量的密钥,也不能提供足够的安全性,因为密文中残留了大量的明文结构,一种解决办法是引进多表代换密码。Playfair密码是最著名的多表代换密码,它把明文中的双字母音

28、节作为一个单元转换成密文的双字母音节。Playfair密码是由英国科学家Charles Wheatstone在1854年发明的,用了他的朋友Baron Playfair的名字命名。Playfair算法基于一个由密钥词构成的5x5字母矩阵,2019-6-6,谢谢观赏,38/81,Playfair密码的密钥矩阵,假定使用的密钥词是MONARCHY先在5x5矩阵中填上密钥词,去掉重复字母 再将剩余的字母按字母表的顺序从左至右、从上至下填在矩阵剩下的格子中,I和J当作一个字母,2019-6-6,谢谢观赏,39/81,Playfair密码的加密,对明文按如下规则一次加密两个字母 如果该字母对的两个字母是

29、相同的,则在其中插入一个填充字母,如 x,“balloon”加密成“ba lx lo on”落在同一行的明文字母对中的字母由其右边的字母来代换,每行中最右的字母用该行最左边的第一个字母来代换,如“ar”加密成“RM”落在同一列的明文字母对中的字母由其下面的字母来代换,每列中最下面的一个字母用该列最上面的第一个字母来代换,如“mu”加密成“CM”其他的每组明文字母对中的字母按如下方式代换:该字母所在行为密文所在行,另一字母所在列为密文所在列,如“hs”变换成“BP”,“ea”代换为“IM”或“JM”(as desired),2019-6-6,谢谢观赏,40/81,Playfair密码的安全性,P

30、layfair密码安全性比单表代换大为提高因为有26个字母,因此有26 x 26=676字母对,对单个字母对进行判断要困难得多。单个字母的相对频率比字母对的相对频率在统计规律上要好,利用频率分析字母对就更困难些,需要676输入的频率表来进行分析。被广泛地使用了许多年,包括在一战和二战时期。英国军队使用了一个世纪,曾保证是安全的,但1915年被德军破译。1941年起,德军和盖世太保使用双表playfair,1944年秋季被英国的Bletchey Park破译。因为它的密文仍然完好地保留了明文语言的大部分结构特征,它仍然是相对容易攻破的,几百个字母的密文就足够分析出规律了。,2019-6-6,谢谢

31、观赏,41/81,字母出现的相对频率,“明文”曲线画出7万个字母的频率分布,对文中出现的每个字母计数,结果除以字母e的出现次数。加密后的曲线体现了加密后字母频率分布被掩盖的程度,如果完全被掩盖,则应该是一条水平线。,2019-6-6,谢谢观赏,42/81,2.2.4 Hill密码,1929年数学家Lester Hill发明Hill密码将m个连续的明文字母替换成m个密文字母,这由m个线性方程决定,每个字母指定一个数值(a=0,b=1,z=25),假如m为3:c1=(k11p1+k12p2+k13p3)mod 26c2=(k21p1+k22p2+k23p3)mod 26c3=(k31p1+k32p

32、2+k33p3)mod 26用列向量和矩阵表示为 或 C=KP mod 26 C和P是长度为3的列向量,分别代表密文和明文 K是一个3x3矩阵,代表加密密钥,运算按模26执行,2019-6-6,谢谢观赏,43/81,Hill密码,明文paymoremoney,加密密钥为明文前三个字母用向量15 0 24表示,则照此转换剩下字母,可得密文LNSHDLEWMTRW解密需要用到矩阵K的逆K-1,由KK-1=I 定义,I是单位矩阵,2019-6-6,谢谢观赏,44/81,Hill密码,KK-1=I 可以验证如下Hill密码系统可以表示如下C=E(K,P)=KP mod 26P=D(K,C)=K-1C

33、mod 26=K-1KP=P,2019-6-6,谢谢观赏,45/81,2.2.5 Polyalphabetic Ciphers多表代换密码,改进简单的单表代换的方法是在明文消息中采用不同的单表代换,这就是多表代换密码poly-alphabetic substitution ciphers 因为需要猜测更多的字母表,并且频率分布特性也变得平坦了,所以使得密码破译更加困难使用一密钥词对每个明文字母选择一个字母表来加密依次使用每个字母表 如果到了密钥词最后一个字母,则从头开始继续,2019-6-6,谢谢观赏,46/81,Vigenre密码,最简单的多表代换密码是Vigenre密码,它其实是多重Cae

34、sar密码 26个密码水平放置,最左边是密钥字母,顶部排列的是明文的标准字母表加密一条消息需要与消息一样长的密钥,密钥是密钥词的重复,比如,密钥词为K=k1 k2.kd 加密:给定密钥字母x和明文字母y,密文字母是位于x行和y列的那个字母密钥词的第i 字母,表明使用第i个字母表,轮流使用字母表,如果到了消息的第d个字母时则从头再做 解密:密钥字母决定行,行里密文字母所在列的顶部字母就是明文字母,2019-6-6,谢谢观赏,47/81,2019-6-6,谢谢观赏,48/81,Example,写下明文 在明文之上重复写下密钥像使用Caesar cipher密钥那样使用每一个密钥字母,加密每一个明文

35、字母比如,使用密钥deceptivekey:deceptivedeceptivedeceptiveplaintext:wearediscoveredsaveyourselfciphertext:ZICVTWQNGRZGVTWAVZHCQYGLMGJ,2019-6-6,谢谢观赏,49/81,Vigenre密码的安全性,每一个明文字母可以有多个密文字母对应,这样字母使用的频率特性减弱了,但是没有完全消失攻击者首先要分析密文是否是用单表代换加密的,即通过简单的测试密文的统计特性如果认为是用Vigenre密码加密的,破译能否取得进展将取决于能否判定密钥词的长度,要通过发现重复序列来判断如果密钥词长度是

36、N,那么密码实际上包含了N个单表代换密钥词的周期性可以用与明文信息一样长的不重复密钥词来消除,如“密钥自动生成系统”,但是密文和明文具有相同频率分布特性,仍然是易受攻击的最终措施是选择与明文毫无统计关系且和它一样长的密钥,2019-6-6,谢谢观赏,50/81,Kasiski Method to break Vigenre卡西斯基方法破解Vigenre,破解Vigenre的方法是由Charles Babbage(巴贝奇)和Friedrich Kasiski(卡西斯基)分别发现的密文中的重复性可以暗示出密钥词长度 如果两个相同明文序列之间的距离是密钥词长度的整数倍,那么产生的密文序列也是相同的前

37、例中“red”的两次出现相隔9个字母,因此得到了两个相同密文序列VTW这时攻击者就可以猜测密钥词的长度是3或者9这样攻击者可以像先前攻击单表密码那样分别进行攻击密钥词的周期性可以用与明文信息一样长的不重复密钥词来消除,Autokey Cipher,2019-6-6,谢谢观赏,51/81,Autokey Cipher,最理想的是让密钥和要加密的消息一样长Vigenre提出了autokey cipher,密钥词keyword放在消息前面作为密钥key前缀知道了密钥词能够破译密文的前面一些字母,据此可以解密密文消息的其余部分 但是这种方法仍然具有字母使用的频率特性可供分析例如,给定密钥词:decep

38、tivekey:deceptivewearediscoveredsavplaintext:wearediscoveredsaveyourselfciphertext:ZICVTWQNGKZEIIGASXSTSLVVWLA,2019-6-6,谢谢观赏,52/81,2.2.6 One-Time Pad一次一密,Joseph Mauborgne提出使用与消息一样长且无重复的随机密钥来加密消息,密钥只对一个消息加解密,之后弃之不用;每条新消息都需要与其等长的新密钥,这就是一次一密,它是不可攻破的。一次一密运算基于二进制数据而非字母加密:ci=pi ki,pi是明文第i个二进制位,ki是密钥第i个二进制

39、位,ci是密文第i个二进制位,是异或运算密文是通过对明文和密钥的逐位异或而成的,根据异或运算的性质,解密过程为pi=ci ki,给出任何长度与密文一样的明文,都存在着一个密钥产生这个明文。如果用穷举法搜索所有可能的密钥,会得到大量可读、清楚的明文,但是无法确定哪个才是真正所需的,因而这种密码不可破。一次一密的两个限制产生大规模随机密钥有实际困难密钥的分配和保护无法保证,2019-6-6,谢谢观赏,53/81,2.3 Transposition Ciphers置换密码,置换密码改变明文内容元素的相对位置,保持内容的表现形式不变通常称为transposition或者permutation密码 通过

40、重新安排消息字母的位置来隐藏明文信息,而不是用其他字母来代换明文字母这种方法是很容易破译的,因为密文拥有与明文一样的字母频率统计特性,2019-6-6,谢谢观赏,54/81,一维变换矩阵转置二维变换图形转置,Transposition or permutation置换密码,2019-6-6,谢谢观赏,55/81,栅栏技术 Rail Fence cipher,按照对角线的顺序写出明文,按行的顺序读出作为密文如加密 meet me after the toga party:m e m a t r h t g p r y e t e f e t e o a a t可以得到密文MEMATRHTGPRY

41、ETEFETEOAAT,2019-6-6,谢谢观赏,56/81,Row Transposition Ciphers行置换密码,一个更复杂的方案是把消息一行一行地写成矩形块,然后按列读出,但是把列的次序打乱,列的次序就是算法的密钥,例如:Key:4 3 1 2 5 6 7Plaintext:a t t a c k p o s t p o n e d u n t i l t w o a m x y zCiphertext:TTNAAPTMTSUOAODWCOIXKNLYPETZ可以采用多步置换来得到相对较高的安全性,2019-6-6,谢谢观赏,57/81,乘积密码Product Ciphers,单

42、纯的代换或者置换密码是不安全的,因为语言的特性因此可以考虑连续使用若干这样的密码使其难以破解,但是:两次代换只生成更复杂的代换两次置换只生成更复杂的置换如果在一次代换之后跟一次置换,可以生成一种新的更难破解的密码,这就是乘积密码乘积密码是从古典密码通往现代密码的桥梁,2019-6-6,谢谢观赏,58/81,2.4 Rotor Machines转轮密码机,在现代密码系统出现之前,转轮密码机是最为广泛使用的多重加密器,尤其是在第二次世界大战中。German Enigma,Japanese Purple,Allied Hagelin转轮密码机实现了一个非常复杂、变化多端的代换密码。转轮机使用一组相互

43、独立的旋转圆筒,可以通过电脉冲,每个圆筒有26个输入和26个输出,每个输入仅与一个输出相连,一个圆筒就定义了一个单表代换。每按下一个键,圆筒旋转一个位置,内部连线相应改变,就定义了不同的单表代换密码,经过26个明文字母,圆筒回到初始状态,就得到一个周期为26的多表代换密码。3个圆筒的转轮机就有263=17576个不同的代换字母表,2019-6-6,谢谢观赏,59/81,Enigma:密码学界划时代的丰碑,http:/(科技中国介绍德国发明家亚瑟谢尔比乌斯)Enigma(转轮密码机)在密码学界里,绝对是划时代的丰碑。它所凝聚成的不是一座丰碑,而是两座:研究并制造出Enigma是一座,研究并破解E

44、nigma是另一座。只要稍微了解一下Enigma的历史,我们就会被其中闪耀的人类智慧之美所折服;而如果要向这样辉煌的智慧敬献花环的话,主要应该献给三个人:首先是德国人亚瑟谢尔比乌斯(Arthur Scherbius);其次是波兰人马里安雷耶夫斯基(Marian Rejewski);然后是英国人阿兰图灵(Alan Turing)。德国人发明了Enigma;波兰人初步破解了简单的Enigma;而英国人彻底终结了最高难度的Enigma。,2019-6-6,谢谢观赏,60/81,亚瑟谢尔比乌斯和Enigma,1918年,德国发明家亚瑟谢尔比乌斯(Arthur Scherbius)和理查德里特Ritte

45、r创办了一家新技术应用公司,利用现代化的电气技术,来取代手工编码加密方法,发明了一种能够自动编码的机器。谢尔比乌斯给自己所发明的电气编码机械取名“恩尼格玛”(Enigma,意为哑谜)。恩尼格玛密码机是一种用于加密与解密文件的密码机。确切地说,恩尼格玛是一系列相似的转子机械的统称,包括了一系列不同的型号。恩尼格玛密码机可以简单分为三个部分:键盘、转子和显示器。,2019-6-6,谢谢观赏,61/81,亚瑟谢尔比乌斯和Enigma,转轮机是Vigenere 密码的一种实现。每个转轮是字母的任意组合,有26个位置,并且完成一种简单代替。例如:一个转轮可能被用线连起来以完成用“F”代替“A”,用“U”

46、代替“B”,用“L”代替“C”等等,而转轮的输出端连接到相邻的下一转轮的输入端。例如,在4个转轮的密码机中,第一个转轮可能用“F”代替“A”,第二个转轮可能用“Y”代替“F”,第三个转轮可能用“E”代替“Y”,第四个转轮可能用“C”代替“E”,“C”应该是输出密文。那么当转轮移动后,下一次代替将不同了。为使机器更安全,可以把几个转轮和移动的齿轮结合起来。因为所有转轮以不同的速度移动,n个转轮的机器的周期是26n。为进一步阻止密码分析,有些转轮机在每个转轮上还有不同的位置号。恩尼格玛一般有三个转轮,从五个转轮中选择。转轮机中有一块稍微改变明文序列的插板,有一个反射轮导致每个转轮对每一个明文字母操

47、作两次。,2019-6-6,谢谢观赏,62/81,Enigma三个转轮的连接示意,2019-6-6,谢谢观赏,63/81,Enigma的使用,使用恩尼格玛通讯时,发信人首先调节三个转子的初始方向,这个转子的初始方向就是密钥,是收发双方预先约定好的。然后依次键入明文,并把显示器上灯泡闪亮的字母依次记下来,最后把记录下的字母按照顺序用正常的电报方式发送出去。收信方收到电文后,只要也使用一台恩尼格玛,按照原来的约定,把转子的方向调整到和发信方相同的初始方向上,然后依次键入收到的密文,显示器上自动闪亮的字母就是明文了。使用恩尼格玛解密和加密的过程完全一样,这就是反射器的作用,同时反射器的一个副作用就是

48、一个字母永远也不会被加密成它自己,因为反射器中一个字母总是被连接到另一个不同的字母。,2019-6-6,谢谢观赏,64/81,Enigma的破解波兰数学家和密码学家雷耶夫斯基,波兰数学家和密码学家马里安雷耶夫斯基(Marian Adam Rejewski,1905年8月26日1980年2月13日),20世纪30年代领导波兰密码学家率先对德国使用的Enigma密码进行了系统性的研究和破译。雷耶夫斯基首次将严格的数学化方法应用到密码破译领域,这在密码学的历史上是一个重要成就。雷耶夫斯基等人在二战期间破译了大量来自德国的信息,成为整个二战期间盟国破译德军Enigma密码的基础。雷耶夫斯基与波兰数学家

49、杰尔兹罗佐基和亨里克佐加尔斯基并称为密码研究领域的“波兰三杰”。2000年7月17日,波兰政府向雷耶夫斯基、罗佐基和佐加尔斯基追授波兰最高勋章。2001年4月21日,雷耶夫斯基、罗佐基和佐加尔斯基纪念基金在波兰华沙设立,基金会在华沙和伦敦设置了纪念波兰数学家的铭牌。,2019-6-6,谢谢观赏,65/81,Enigma的破解英国伦敦附近的柏雷屈里庄园密码学校,2019-6-6,谢谢观赏,66/81,Enigma的破解计算机科学之父阿兰图灵,阿兰麦席森图灵 Alan Mathison Turing(1912年6月23日-1954年6月7日)是英国著名的数学家和逻辑学家,被称为计算机科学之父、人工

50、智能之父,是计算机逻辑的奠基者,提出了“图灵机”和“图灵测试”等重要概念。1936年英国政府在白金汉郡的柏雷屈里庄园设立代码及加密学校(GC&CS,Government Code and Cipher School),集结了一大批为破译ENIGMA作出卓越贡献的人们,图灵发明了绰号为“炸弹”(Bombes)的解密机器,被看成一位天才解密分析专家,而于1945年获政府的最高奖大英帝国荣誉勋章(O.B.E.勋章)。人们认为,通用计算机的概念就是阿兰麦席森图灵提出来的 战争结束,柏雷屈里庄园被关闭,“炸弹”被拆毁,所有战时有关密码分析和破译的档案资料都被销毁,直到1967年波兰出版第一本关于波兰破译

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号