《物联网技术与应用:Chap2 古典密码》由会员分享,可在线阅读,更多相关《物联网技术与应用:Chap2 古典密码(94页珍藏版)》请在金锄头文库上搜索。
1、Chap2 古典密码古典密码目目 录录1.密码学的起源、发展和现状密码学的起源、发展和现状2.密码学基本概念密码学基本概念3.典型几种古典密码技术典型几种古典密码技术密码学发展阶段密码学发展阶段19491949年之前年之前 密码学是一门艺术密码学是一门艺术1949194919751975年年 密码学成为科学密码学成为科学19751975年以后年以后 密码学的新方向密码学的新方向公钥密码学公钥密码学第第1阶段古典密码阶段古典密码 密码学还不是科学密码学还不是科学, ,而是艺术而是艺术 出现一些密码算法和加密设备出现一些密码算法和加密设备 密码算法的基本手段密码算法的基本手段出现出现,针对的是字符
2、,针对的是字符 简单的密码分析手段出现简单的密码分析手段出现 主要特点:数据的安全基于算法的保密主要特点:数据的安全基于算法的保密密码学发展史5n1.古代加密方法(手工阶段)n公元前公元前1世纪世纪,著名的,著名的恺撒恺撒(Caesar)密码密码被被用于高卢战争中,这是一种简单易行的单字用于高卢战争中,这是一种简单易行的单字母替代密码母替代密码 n它是将字母表中的字母依次后移一定的位置它是将字母表中的字母依次后移一定的位置得到的得到的明码表:明码表: 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 密码表:密码表: F G H I J K
3、 L M N O P Q R S T U V W X Y Z A B C D E密码学的发展历史n公元前440年出现在古希腊战争中的隐写术。当时为了安全传送军事情报,奴隶主剃光奴隶的头发,将情报写在奴隶的光头上,待头发长长后将奴隶送到另一个部落,再次剃光头发,原有的信息复现出来,从而实现这两个部落之间的秘密通信。n公元前400年,斯巴达人就发明了“塞塔式密码”,即把长条纸螺旋形地斜绕在一个多棱棒上,将文字沿棒的水平方向从左到右书写,写一个字旋转一下,写完一行再另起一行从左到右写,直到写完。解下来后,纸条上的文字消息杂乱无章、无法理解,这就是密文,但将它绕在另一个同等尺寸的棒子上后,就能看到原始
4、的消息。这是最早的密码技术。最早的换位密码术最早的换位密码术n隐写术(steganography):将消息隐藏在其他消息中“信息隐藏”n隐写墨水/藏头诗/藏尾诗n漏格方法(1550年)-卡尔达诺漏格n绘画2024/8/1计算机科学与技术学院8大大风风渐渐起起,寒寒流流攻攻击击着着我们的肌体,预示明天5点的活动开始时会有困难。中国的藏头诗n水浒传中梁山为了拉卢俊义入伙,“智多星”吴用和宋江便生出一段“吴用智赚玉麒麟”的故事来,利用卢俊义正为躲避“血光之灾”的惶恐心理,口占四句卦歌:芦花丛中一扁舟,俊杰俄从此地游。义士若能知此理,反躬难逃可无忧。n电影:唐伯虎点秋香唐伯虎点秋香2024/8/1计算
5、机科学与技术学院9n2.古典密码(机械阶段)古典密码的加密方法一般是文字置换,使用手工或机械变换的方式实现。古典密码系统已经初步体现出近代密码系统的雏形,它比古代加密方法复杂,其变化较小。古典密码的代表密码体制主要有:单表代替密码、多表代替密码及转轮密码。20世纪早期密码机世纪早期密码机n公元公元16世纪晚期,英国的世纪晚期,英国的菲利普斯菲利普斯(Philips)利用利用频度分析法频度分析法成功破解苏格兰女成功破解苏格兰女王玛丽的密码信,信中策划暗杀英国女王伊王玛丽的密码信,信中策划暗杀英国女王伊丽莎白,这次解密将玛丽送上了断头台丽莎白,这次解密将玛丽送上了断头台 12電影電影伊莉莎白:輝伊
6、莉莎白:輝煌年代煌年代通过分析每个符号出现的频率而轻易地破译代换式密码。2024/8/1计算机科学与技术学院13摩尔斯电码:信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号等。由美国人艾尔菲德维尔发明,当时他正在协助SamuelMorse进行摩尔斯电报机的发明(1835年)n1917-1-17:齐默尔曼电报被“40号房间”截获。2月23日,密电揭开:n德国将在1917年2月1日开始无限制潜艇战,用潜艇攻击战时包括中立国在内的海上商运船n为阻止美国参战,德国建议墨西哥入侵美国,并承诺帮助墨西哥从美国手中夺回得克萨斯、新墨西哥和亚利桑那三州n德国还要墨西哥说服日本共同进攻美国,德国
7、将提供军事和资金援助n密电揭开后,美国在4月16日向德国宣战2024/8/1计算机科学与技术学院14齐默尔曼电报2024/8/1计算机科学与技术学院15德国方面在一战结束十德国方面在一战结束十年之后才知道真相:年之后才知道真相:19231923年出版的年出版的温斯顿温斯顿丘吉尔丘吉尔的著作的著作世界世界危机危机,提到了英俄在,提到了英俄在军事方面的合作,指出军事方面的合作,指出俄国人在一战中曾经成俄国人在一战中曾经成功地破译了某些德军密功地破译了某些德军密码码n德国的亚瑟亚瑟歇尔比乌斯歇尔比乌斯(ArthurScherbius)发明了“谜”(ENIGMA,恩格玛密码机),用于军事和商业上。19
8、25年,“谜”开始系列生产,在20年间,德国军方购入了3万多台“谜”,亦难倒了“40号房号房”,成为德国在二次大战的重要工具2024/8/1计算机科学与技术学院1617 亚瑟亚瑟歇尔比歇尔比乌斯乌斯(Arthur Scherbius)德国人德国人 阿兰阿兰图灵图灵(Alan Turing)英国人英国人 2024/8/1计算机科学与技术学院182024/8/1计算机科学与技术学院19n一台图灵一台图灵“炸弹炸弹”高高2m2m,长,长2m2m,宽,宽1m1m。图灵的研究于。图灵的研究于19401940年初完成,机器由英国塔布拉丁机械厂制造年初完成,机器由英国塔布拉丁机械厂制造 n同样在第二次世界大
9、战中,同样在第二次世界大战中,美美国人国人破译了被称为破译了被称为“紫密紫密”的的日本日本“九七式九七式”密码机密码密码机密码n靠此,美军在中途岛海战中炸靠此,美军在中途岛海战中炸死了偷袭珍珠港的元凶日本舰死了偷袭珍珠港的元凶日本舰队总司令队总司令山本五十六山本五十六2024/8/1计算机科学与技术学院20 计算机使得基于复杂计算的密码成为可能计算机使得基于复杂计算的密码成为可能 相关技术的发展相关技术的发展19491949年年ShannonShannon的的“The Communication Theory of Secret The Communication Theory of Secr
10、et SystemsSystems” 保密系统的信息理论(“CommunicationTheoryofSecrecySystems”),产生了信息论19671967年年David KahnDavid Kahn的的The CodebreakersThe Codebreakers1971-731971-73年年IBM WatsonIBM Watson实验室实验室的的Horst FeistelHorst Feistel等几篇技术报告等几篇技术报告主要特点:主要特点:数据的安全基于密钥而不是算法的保密数据的安全基于密钥而不是算法的保密 第第2阶段阶段 194919751975-现代密码学的开端n197
11、5年年1月月15日,对计算机系统和网络进行加密的日,对计算机系统和网络进行加密的DES(Data Encryption Standard,数据加密标准)由美国,数据加密标准)由美国国家标准局国家标准局NIST颁布为国家标准颁布为国家标准密码术历史上具有密码术历史上具有里程碑意里程碑意义义的事件的事件n1976年年,当时在美国斯坦福大学的,当时在美国斯坦福大学的Diffie和和Hellman两人提出两人提出了了公钥密码公钥密码的新思想(的新思想(“New Direction in Cryptography”),),把密钥分为加密公钥和解密私钥,这是密码学的一场把密钥分为加密公钥和解密私钥,这是密
12、码学的一场革命革命 n1977年年,美国的,美国的Ronald Rivest、Adi Shamir和和Len Adleman提出第一个较完善的公钥密码体制提出第一个较完善的公钥密码体制RSA体制体制,这,这是一种建立在大数因子分解基础上的算法是一种建立在大数因子分解基础上的算法2024/8/1计算机科学与技术学院22目目 录录1.密码学的起源、发展和现状密码学的起源、发展和现状2.密码学基本概念密码学基本概念3.典型几种古典密码技术典型几种古典密码技术基本概念基本概念密码学密码学(Cryptology): 是研究信息系统安全是研究信息系统安全保密的科学保密的科学.密码编码学密码编码学(Cryp
13、tography): 主要研究对信主要研究对信息进行编码息进行编码,实现对信息的隐蔽实现对信息的隐蔽.密码分析学密码分析学(Cryptanalytics):主要研究加密主要研究加密消息的破译或消息的伪造消息的破译或消息的伪造.u明文明文(Plaintext)原始的消息u密文密文 (Ciphertext)加密后的消息u加加密密算法算法(Encryption algorithm) 加密算法对明文进行各种代换和变换.u解密算法解密算法(Decryption algorithm)加密算法的逆运行.u密钥密钥 (Secret Key )对加密与解密过程进行控制的参数基本概念基本概念明文记为明文记为P且且
14、P为字符序列,为字符序列, P=P1,P2,Pn密文记为密文记为C, C=C1,C2,Cn明文和密文之间的变换记为明文和密文之间的变换记为 C=E(P)及及P=D(C)其中其中 C表示密文,表示密文,E为加密算法;为加密算法;P为明文,为明文,D为解密算法为解密算法我们要求密码系统满足:我们要求密码系统满足:P=D(E(P)基本概念基本概念 需要密钥的加密算法,记为:需要密钥的加密算法,记为:C=E(K,P),即密文消息同时即密文消息同时依赖于初始明文和密钥的值。实际上,依赖于初始明文和密钥的值。实际上,E是一组加密算法,是一组加密算法,而密钥则用于选择其中特定的一个算法。而密钥则用于选择其中
15、特定的一个算法。 加密与解密的密钥相同,即:加密与解密的密钥相同,即:P=D(K,E(K,P) 加密与解密的密钥不同,则:加密与解密的密钥不同,则:P=D(KD,E(KE,P)基本概念基本概念密码体系是一个五元组密码体系是一个五元组(P,C,K,E,D)满足条件:满足条件: (1)P是可能明文的有限集;(明文空间)是可能明文的有限集;(明文空间) (2)C是可能密文的有限集;(密文空间)是可能密文的有限集;(密文空间) (3)K是一切可能密钥构成的有限集;(密钥空间)是一切可能密钥构成的有限集;(密钥空间) (4)任意)任意k K,有一个加密算法,有一个加密算法 和相应的解密和相应的解密算法算
16、法 ,使得,使得 和和 分别为加分别为加密解密函数,密解密函数, 满足满足dk(ek(x)=x ,这里,这里 x P。密码体系形式化描述密码体系形式化描述常规加密简化模型常规加密简化模型u共享一个密钥u加密算法要足够强,算法不需要保密u保证只有发送者和接收者知道密钥常规加密系统的模型常规加密系统的模型 加密算法足够强大:仅知密文很难破译出明文加密算法足够强大:仅知密文很难破译出明文惟有发送者和接收者知道的秘密密钥惟有发送者和接收者知道的秘密密钥 基于密钥的安全性,而不是基于算法的安全性:基于基于密钥的安全性,而不是基于算法的安全性:基于密文和加密文和加/解密算法很难破译出明文解密算法很难破译出
17、明文 算法开放性:开放算法,便于实现算法开放性:开放算法,便于实现常规加密的安全性常规加密的安全性 受限制的(受限制的(restricted)算法算法 算法的保密性基于保持算法的秘密算法的保密性基于保持算法的秘密 基于密钥(基于密钥(key-based)的算法的算法 算法的保密性基于对密钥的保密算法的保密性基于对密钥的保密保密内容保密内容 对称密码算法(对称密码算法(symmetric cipher) 加密密钥和解密密钥相同,或实质上等同,即从一个易于推出另一个加密密钥和解密密钥相同,或实质上等同,即从一个易于推出另一个 又称秘密密钥算法或单密钥算法又称秘密密钥算法或单密钥算法 非对称密钥算法
18、(非对称密钥算法(asymmetric cipher) 加密密钥和解密密钥不相同,从一个很难推出另一个加密密钥和解密密钥不相同,从一个很难推出另一个 又称公开密钥算法(又称公开密钥算法(public-key cipher) 公开密钥算法用一个密钥进行加密公开密钥算法用一个密钥进行加密, 而用另一个进行解密而用另一个进行解密 其中的加密密钥可以公开其中的加密密钥可以公开,又称公开密钥(又称公开密钥(public key),简称公钥。解密密钥,简称公钥。解密密钥必须保密必须保密,又称私人密钥(又称私人密钥(private key)私钥,简称私钥私钥,简称私钥密钥数量密钥数量 分组密码(分组密码(b
19、lock cipher) 将明文分成固定长度的组,用同一密钥和算法对每一将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文。块加密,输出也是固定长度的密文。 流密码(流密码(stream cipher) 又称序列密码。又称序列密码。序列密码每次加密一位或一字节的明序列密码每次加密一位或一字节的明文。文。明文处理方式明文处理方式密码分析密码分析试图破译单条消息试图破译单条消息试图识别加密的消息格式,以便借助直接的解密算法破译试图识别加密的消息格式,以便借助直接的解密算法破译后续的消息后续的消息试图找到加密算法中的普遍缺陷(无须截取任何消息)试图找到加密算法中的普遍缺陷(
20、无须截取任何消息)密码分析的条件与工具密码分析的条件与工具 已知加密算法已知加密算法 截取到明文、密文中已知或推测的数据项截取到明文、密文中已知或推测的数据项 数学或统计工具和技术数学或统计工具和技术 语言特性语言特性 计算机计算机 技巧与运气技巧与运气密码分析类型密码分析类型加密方案的安全性加密方案的安全性无条件安全无条件安全unconditional security:无论提供的密文有:无论提供的密文有多少,如果由一个加密方案产生的密文中包含的信息不足多少,如果由一个加密方案产生的密文中包含的信息不足以唯一地决定对应的明文以唯一地决定对应的明文除了一次一密的方案外,没有无条件安全的算法除了
21、一次一密的方案外,没有无条件安全的算法n计算安全计算安全computational security破译的成本超过加密信息的价值破译的成本超过加密信息的价值破译的时间超过该信息有用的生命周期破译的时间超过该信息有用的生命周期攻击的复杂性分析攻击的复杂性分析数据复杂性(数据复杂性(data complexity)用作攻击输入所)用作攻击输入所需要的数据需要的数据处理复杂性(处理复杂性(processing complexity)完成攻击)完成攻击所需要的时间所需要的时间存储需求(存储需求(storage requirement)进行攻击所)进行攻击所需要的数据量需要的数据量密钥搜索所需平均时间密
22、钥搜索所需平均时间目目 录录1.密码学的起源、发展和现状密码学的起源、发展和现状2.密码学基本概念密码学基本概念3.典型几种古典密码技术典型几种古典密码技术 替代替代 置换置换 转子机转子机经典加密技术经典加密技术2.2 替代技术n加密算法的两个基本原理:加密算法的两个基本原理:代替和置换代替(Substitution):):将明文中的每个元素映射成另一个元素。置换(置换(Permutation):): Rearrangment of existent elements将明文中的元素重新排列,明文中的字母保持不变。替换替换换位换位替代技术 代代替替技技术术的的分分类类单字母密码单字母密码(明文
23、的一个字符用相应的一个密文字符代替)多字母密码多字母密码单表代替单表代替多表代替多表代替Caesar密码密码Vigenere密码密码转子机转子机Hill cipherPlayfair cipher 明文的字母由其它字母或数字或符号代替明文的字母由其它字母或数字或符号代替 若该明文被视为一个比特序列,则替代涉及到用若该明文被视为一个比特序列,则替代涉及到用密文比特模式代替明文比特模式密文比特模式代替明文比特模式替代(代替)替代(代替)恺撒密码恺撒密码破译以下密文:破译以下密文:wuhdwb lpsrvvleohTREATY IMPOSSIBLECi=E(Pi)=Pi+3加密算法:加密算法:字母表
24、:字母表:(密码本)密码本) ABCDEFGHIJKLMNOPQRSTUVWXYZ defghijklmnopqrstuvwxyzabc恺撒密码恺撒密码破译以下密文:破译以下密文:wuhdwb lpsrvvleohTREATY IMPOSSIBLECi=E(Pi)=Pi+3加密算法:加密算法:字母表:字母表:(密码本)密码本) ABCDEFGHIJKLMNOPQRSTUVWXYZ defghijklmnopqrstuvwxyzabc恺撒密码恺撒密码(caesar cipher)破译以下密文:破译以下密文:wuhdwb lpsrvvleohTREATY IMPOSSIBLECi=E(Pi)=Pi
25、+3加密算法:加密算法:字母表:字母表:(密码本)密码本)ABCDEFGHIJKLMNOPQRSTUVWXYZ(对应数字(对应数字0:a,1. 25:z)defghijklmnopqrstuvwxyzabcn一般化的一般化的Caesar加密算法为:加密算法为: C=E(k,p)=(p+k)mod26n一般化的一般化的Caesar解密算法为:解密算法为: p=D(k,C)=(C-k)mod26nCaesar密码分析:密码分析:由于()加解密算法已知()可能尝试的密钥只有25个(3)明文所用的语言是已知的所以:很容易受到唯密文攻击恺撒密码恺撒密码恺撒密码的特点恺撒密码的特点n单字母密码(简单替换技
26、术)单字母密码(简单替换技术)n简单,便于记忆简单,便于记忆n缺点:结构过于简单,密码分析员只使用很缺点:结构过于简单,密码分析员只使用很少的信息就可预言加密的整个结构少的信息就可预言加密的整个结构2024/8/1大连理工大学单表代替密码单表代替密码n密文是26个字母的任意置换,密钥是明文字母到密文字母的一个字母表.这种密码称单表代换密码n不能抵抗明文统计特性的攻击密钥空间:密钥空间: 26! 26! 4 x 10 4 x 102626 大于大于5656位位DESDES的密钥空间。的密钥空间。例:例:UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESXUDBMETSXAIZVU
27、EPHZHMDZSHZOWSFPAPPDTSVPQUZWYMXUZUHSXEPYEPOPDZSZUFPOMBZWPFUPZHMDJUDTMOHMQ在英语中,字母在英语中,字母e是用得最多的,其次为是用得最多的,其次为t ,0,a,h,I等。最常用的两字母组等。最常用的两字母组依次是依次是:th,in,er,re及及an。最常用的三字母组是。最常用的三字母组是:the,ing,and及及ion。对抗频率分析的办法n多名或同音代替密码n多表代替密码n多字母代替密码多名代替密码n与简单代替密码类似,只是映射是一对多的,每个明文字母可以加密成多个密文字母。例如,A可能对应于5、13、25B可能对应于7
28、、9、31、42n当对字母的赋值个数与字母出现频率成比例时。这是因为密文符号的相关分布会近似于平均的,可以挫败频率分析。n然而,若明文字母的其它统计信息在密文中仍很明显时,那么仍然是可破译的。多表代替密码n定义:定义:以一系列(两个以上)代换表依此对明文消息的字母进行代换的方法。非周期多表代替密码:代换表是非周期的无限序列一次一密密码(onetimepadding):对每个明文每次采用不同的代换表。周期多表代替密码:代换表个数有限,重复使用。多表代替密码-PlayfairnPlayfair:将明文中的双字母组合作为一个单元对待,并将这些单元转换为密文的双字母组合。n55变换矩阵: I与J视为同
29、一字符(cipher为秘钥)C I P H ER A B D FG K L M NO Q S T UV W X Y Zn加密规则:按成对字母加密1) 相同对中的字母加分隔符(如x)2) balloon ba lx lo on3) 同行取右边: he EC4) 同列取下边: dm MT5) 其他取交叉: kt MQ OD TRPlayfair举例n以前面的55变换矩阵(cipher)为例 C I P H ER A B D FG K L M N (cipher) balloon, book,fillO Q S T UV W X Y Z(1)balloon ba lx lo on db sp gs
30、ug(2)book bo ok rs qg(3)fill fi lx lx ae sp spPlayfair密码分析nPlayfair有26X26=676种字母对组合n字符出现几率一定程度上被均匀化n基于字母频率的攻击比较困难n依然保留了相当的结构信息59字母出现的相对频率字母出现的相对频率*60希尔希尔(Hill)密码密码n另一个有趣的多表代换密码另一个有趣的多表代换密码n1929年由数学家年由数学家Lester Hill发明发明n加密方法是由加密方法是由m个线性方程决定的,方程中每个线性方程决定的,方程中每个字母被指定为一个数值(个字母被指定为一个数值(a=0,b=1,z=25)模m倒数
31、设,若存在使得,称a 有模m倒数记作命题整数a有模m倒数的充要条件为a与m无公共素因子模26倒数表25175112371931521912523211917151197531a 1(mod26) a62举例:求思考:64Hill密码的加密码的加/解密过程解密过程n明文分组并编码明文分组并编码nCKP mod 26,其中,其中,K为密钥矩阵,为密钥矩阵,P、C分别为明、密文分组分别为明、密文分组加密加密:解密解密:n密文分组并编码密文分组并编码nPK-1C mod 26 对密钥矩阵对密钥矩阵K的要求:在的要求:在mod 26下可逆下可逆.*65密密钥矩矩阵K明文分组明文分组P“mor”明文明文编
32、码 P加密加密 C mod 26C,即,即C“HDL”Hill密码的例子密码的例子加密加密:K1*66密密钥矩矩阵K明文明文P“mor”明文明文 P解密解密 P mod 26CC“HDL”Hill密码的例子密码的例子解密解密:K1Hill密码特点n完全隐藏了字符(对)的频率信息n线性变换的安全性很脆弱,易被已知明文攻击击破。n对于一个mxm的hill密码,假定有m个明文-密文对,明文和密文的长度都是m.可以把明文和密文对记为:68多表代多表代换密码换密码Polyalphabetic CiphersPolyalphabetic Ciphersn代换规则:代换规则:n使用一系列相关的单表替代规则使
33、用一系列相关的单表替代规则n一个密钥决定对一个给定的变换选择特定的规则一个密钥决定对一个给定的变换选择特定的规则n例:例:nVigenre密码(密码(1858)nBeaufort 密码密码nVernam密码密码Vigenre密码的历史密码的历史nBlaise de VigenBlaise de Vigen re re 发明了多字母替换密发明了多字母替换密码(码(polyalphabetic substitution polyalphabetic substitution ciphercipher)n随着破译单表密码的技术提高,使得随着破译单表密码的技术提高,使得vigenvigen re ci
34、pher re cipher 逐渐被各国使用逐渐被各国使用n18541854年,首次被年,首次被 Charles Babbage Charles Babbage 攻破,攻破,但没有公开但没有公开n Friedrich KasiskiFriedrich Kasiski于于18631863年攻破并发表了年攻破并发表了此密码的各种变形,被沿用到此密码的各种变形,被沿用到2020世纪世纪70Vigenre密码密码n方式一:数学公式计算方式一:数学公式计算n设明文设明文 P = p1p2pn,密钥,密钥 k = k1k2kn,密,密文文C = c1c2cnn加密:加密: ci= pi+ki (mod 2
35、6),=1,2,n;n说明:若明文长度大于说明:若明文长度大于n,则,则k重复使用。重复使用。加密加密:*71n方式二:查表法方式二:查表法 (密钥(密钥k,明文,明文P)密文密文CVigenre密码密码72Vigenre密码密码n方法一:数学公式计算方法一:数学公式计算npi = ciki (mod 26),=1,2,n;n方法二:查表方法二:查表n密钥密钥k行里密文行里密文C所在列的顶部字母所在列的顶部字母明文明文P解密:解密:73Vigenre密码例子密码例子n加密过程:加密过程:nP“encode and decode”,k“mykey”字母序号字母序号encodeanddecode明
36、文明文编码P =4132143401333421434密密钥编码k =122410424122410424122410424加密加密C =1637121827162423727162624728模运算模运算111102密文密文C =QLMSBQYXHBQAYHC74Vigenre密码例子密码例子n解密过程:解密过程:nC“QLMSBQYXHBQAYHC”,k“mykey”字母序号字母序号123456789101112131415密文密文编码C=161112181162423711602472密密钥编码k=122410424122410424122410424加密加密C=4-13214-2340
37、133-234-24143-22模运算模运算133324密文解密文解码C=encodeanddecode75Vigenre密码的安全性密码的安全性n密钥空间:密钥空间:|K|26nn字母的统计规律进一步降低字母的统计规律进一步降低n明、密文字母不是一一对应关系明、密文字母不是一一对应关系n特例:特例:n当当k1 k2 kn k时,是时,是Caesar密码密码nVigenre本人建议:密钥与明文一样长本人建议:密钥与明文一样长Vigenre密码分析n攻击攻击:n首先作单表代换假设,用频率分析方法首先作单表代换假设,用频率分析方法n然后猜测然后猜测Vigenre密钥关键字长度密钥关键字长度n密钥:
38、密钥: deceptivedeceptivedeceptiven明文:明文: wearediscoveredsaveyourselfn密文:密文: Z I CVTWQNGRZGVTWAVZHCQYGLMGJn反攻击反攻击:用与消息一样长的非周期性的密钥。:用与消息一样长的非周期性的密钥。n相应的攻击:密钥和明文有相同的字母频率分布相应的攻击:密钥和明文有相同的字母频率分布n对抗技术对抗技术:选择与明文一样长而且没有统计关系的密钥。:选择与明文一样长而且没有统计关系的密钥。n技术的关键:密钥构造方法。技术的关键:密钥构造方法。nVernam密码:用循环的带子构造密钥。密码:用循环的带子构造密钥。
39、(最终密钥还是重复最终密钥还是重复)n一次一密:产生随机密钥,不重复。不可破一次一密:产生随机密钥,不重复。不可破n一次一密实际一次一密实际很少使用。很少使用。Vernam密码n1918年,Gillbert Vernam建议密钥与明文一样长并且没有统计关系的密钥内容,他采用的是二进制数据: 加密:Ci = Pi Ki 解密 Pi = Ci Ki 核心:构造和消息一样长的随机密钥 78一次一密一次一密n随机密钥随机密钥n安全强度取决于密钥的随机性安全强度取决于密钥的随机性n理论上不可破理论上不可破n实际上不可行实际上不可行n产生大量的随机密钥难产生大量的随机密钥难n密钥分配与保护更难密钥分配与保
40、护更难总结总结n替换是密码学中有效的加密方法。本世纪上半叶用于外交替换是密码学中有效的加密方法。本世纪上半叶用于外交通信通信n破译威胁来自破译威胁来自n频率分布频率分布n重合指数重合指数n考虑最可能的字母及可能出现的单词考虑最可能的字母及可能出现的单词n重复结构分析及克思斯基方法重复结构分析及克思斯基方法n持久性、组织性、创造性和运气持久性、组织性、创造性和运气 通过执行对明文字母的置换,取得一种类型完全通过执行对明文字母的置换,取得一种类型完全不同的映射,即置换密码。不同的映射,即置换密码。 若该明文被视为一个比特序列,则置换涉及到用若该明文被视为一个比特序列,则置换涉及到用密文比特模式代替
41、明文比特模式密文比特模式代替明文比特模式置换置换置换密码置换密码Transposition CiphersTransposition Ciphersn n栅栏技术栅栏技术:按对角线的顺序写出明文,以行按对角线的顺序写出明文,以行的顺序读出作为密文的顺序读出作为密文n易破译n n矩阵排列法矩阵排列法n纯置换密码易识别n n多次置换多次置换:多阶段加密,安全性更高*82例:栅栏技术例:栅栏技术n明文:meetmeafterthetogapartyn写为:m e m a t r h t g p r y e t e f e t e o a a tn读出密文为:MEMATRHTGPRYETEFETEOA
42、AT改改 进进n带有密钥带有密钥n再改进:重复加密,多步置换再改进:重复加密,多步置换*83n更加复杂的移位更加复杂的移位n以指定的行将明文写作多行以指定的行将明文写作多行n按照密钥指定的列读出按照密钥指定的列读出nKey:nPlaintext: nCiphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ 例:例:矩阵排列法矩阵排列法4 3 1 2 5 6 7attackpostponeduntiltw oam xyz 通过多个加密阶段的组合,能使密码分析变得极为困难通过多个加密阶段的组合,能使密码分析变得极为困难 对置换和替代都适合对置换和替代都适合转子机转子机htt
43、p:/ 密码机密码机(德国德国)隐写术是关于信息隐藏,即不让计划的接收者之外的任何人知道信息的传递事件(而不只是信息的内容)的一门技巧与科学。隐写术英文作“Steganography”,来源于约翰尼斯特里特米乌斯的一本看上去是有关黑魔法,实际上是讲密码学与隐写术的一本书Steganographia中。此书书名来源于希腊语,意为“隐秘书写”。应用:古希腊的斯巴达人曾将军事情报刻在普通的木板上,用石蜡填平,收信的一方只要用火烤热木板,融化石蜡后,就可以看到密信。使用最广泛的密写方法恐怕要算化学密写了,牛奶、白矾、果汁等都曾充当过密写药水的角色。SteganographyDeargeorge,Gre
44、etingstoallatOxford.ManythanksforyourLetterandforthesummerexaminationpackage.AllEntryFormsandFeesFormsshouldbereadyForfinaldespatchtothesyndicatebyFriday20thorattheverylatest,Imtold,bythe21st.Adminhasimprovedhere,thoughtheresroomForimprovementstill;justgiveusalltwoorthreeMoreyearsandwellreallyshowyo
45、u!PleaseDontletthesewrethed16+proposalsdestroyYourbasicOandApattern.CertainlythisSortofchange,ifimplementedimmediately,Wouldbringchaos.sincerelyyours,2.5隐写术侦探侦探Morse的疑惑的疑惑利用一整段文本信息中单词的某个子集利用一整段文本信息中单词的某个子集其他常用的隐写术:其他常用的隐写术:n字符标记:选择一些印刷字母或打字机打出的文本,用铅笔在其上书写一遍。这些标记需要做得在一般场合下辨认不出,除非将纸张按某个角度对着亮光看。n不可见墨水:
46、有些物质用来书写后不留下可见痕迹,除非加热或加之以某种化学物质。n针刺:在某些字母上刺上小的针孔,这一般是分辨不出来的,除非对着光线。n打字机的色带校正:用黑色的色带在行之间打印。用这种色带打印后的东西只在强光下可见。2.2隐写术n图像中隐藏秘密消息:即用消息比特来替代图像的每个字节中最不重要的比特。因为大多数图像标准所规定的顔色等级比人类眼睛能够觉察到的要多得多,所以图像并没有多大改变,但是,秘密消息却能够在接收端剥离出来。用这种方法可在1024*1024灰色度的图片中存储64K字节的消息。*912.2隐写术n隐写术的主要缺点是:隐写术的主要缺点是:它要用大量的开销来隐藏相对少量的信息比特;
47、且一旦该系统被发现,就会变得毫无价值。n隐写术现代使用其实很普遍,既有合法的应用也有非法的应用。合法使用的应用程序包括保护知识产权(如版权)给图片加上所谓的水印。相反,违法的目的包括出于法律原因隐藏信息。隐写术也可以用作数字水印,这里一条消息(往往只是一个标识符)被隐藏到一幅图像中,使得其来源能够被跟踪或校验。隐写术的研究与应用隐写术的研究与应用近几年来,隐写术领域已经成为了信息安全的焦点。因为每个Web站点都依赖多媒体,如音频、视频和图像。隐写术这项技术可以将秘密信息嵌入到数字媒介中而不损坏它的载体的质量。用于版权保护的数字水印技术已经进入了初步实用化阶段,IBM公司在其“数字图书馆”软件中就提供了数字水印功能。隐写术的研究与应用隐写术的研究与应用