截图
简介
这是数据加密技术ppt,包括了数据加密概述,密码学的发展,密码学基本概念与分类,密码分析学,传统密码技术,对称密钥密码,公钥密码体制,数字签名与认证技术,加密软件等内容,欢迎点击下载。
数据加密技术ppt是由红软PPT免费下载网推荐的一款课件PPT类型的PowerPoint.
第二章 数据加密及认证技术 计算机科学学院 网络工程教研室 梁晓 Email: xiaoliang.edu@foxmail.com Tel: 13540013002 主要内容 数据加密概述 密码学的发展 密码学基本概念与分类 密码分析学 传统密码技术 对称密钥密码 公钥密码体制 数字签名与认证技术 加密软件 密码学的起源 古代加密方法大约起源于公元前440年出现在古希腊战争中的隐写术。 古希腊的斯巴达人曾将军事情报刻在普通的木板上,用石蜡填平,收信的一方只要用火烤热木板,融化石蜡后,就可以看到密信。 密码学用于通信的另一个记录是斯巴达人于公元前400年应用锥形指挥棒在军官间传递秘密信息。 我国古代的藏头诗、藏尾诗、漏格诗 《水浒传》 “吴用智赚玉麒麟”一回中的诗 卢花滩上有扁舟,俊杰黄昏独自游。 义到尽头原是命,反躬逃难必无忧。 明代怪杰徐文长: 平湖一色万顷秋, 湖光渺渺水长流。 秋月圆圆世间少, 月好四时最宜秋。 密码学在军事中的应用 1894年甲午海战中北洋水师的覆灭,虽然其根本的原因在于清朝廷的腐败, 但是日本人破译了清军的密码也是一个重要的原因; 二战中, 美国利用破译密码所获得的情报为其外交服务; 在1962年的古巴导弹危机中,苏美剑拔弩张,形势严峻。据悉,美国人心生一计,故意用能被苏联截收、破译的密码告知其军队,准备与苏联开战。这一手果然吓住了赫鲁晓夫; 1994年, 美国的情报机构通过截获国际电讯得知,法国与沙特阿拉伯正在进行一笔数亿美元的军火交易,美国先行一步从法国人手中抢下了这笔大生意。 密码学从军事走向生活 电子邮件 自动提款机(ATM) 网上银行/网上证券 信用卡购物(POS机) 生活中的密码学 案例一: 甲给乙写的私人信件,丙未经甲乙允许擅自阅读此信——非授权访问 案例二: 甲和乙正常通信,丙冒充甲并且: 制造欺诈信息给乙; 窜改甲给乙发的合法信息; ——中间人攻击 案例三: 甲在某时某地给乙发了信,乙否认收到了该信——抵赖 密码学的发展史 第一阶段:1949年以前 古典密码阶段 计算机技术出现以前 密码学作为一种艺术,而不是一门科学 第二阶段:1949年~1975年 现代密码学初期 标志:1949年Shannon发表的《保密系统的信息理论》一文。 密码学进入了科学的轨道,密码学成为科学 主要技术: 单密钥的对称密钥加密算法 第三阶段:1976年~ 现代密码学阶段 标志:1976年Diffie和Hellman发表了《密码学新方向》一文。 新的密码体制 : 公开密钥体制 第一阶段-古典密码 古典密码的加密方法一般是代换与置换,使用手工或机械变换的方式实现; 代表密码体制主要有: 单表替代密码:Caesar密码; 多表替代密码:Playfair密码、Hill密码、Vigenere密码; 转轮密码:著名的Enigma密码,第二次世界大战中使用过。 主要特点:数据的安全基于算法的保密。 第二阶段 现代密码学初期 1949~1975 1949年,香农发表了《保密系统的信息理论》 证明了密码编码学是如何置于坚实的数学基础之上的,从此密码学发展成为一个专门学科——标志性事件 为对称密码体制的发展奠定了理论基础; 1967年,大韦卡恩的专著《破译者》详细描述了密码学的历史; 1971-73年,IBM Watson实验室的Horst Feistel等几篇技术报告,DES算法的产生; 主要特点:数据的安全基于密钥而不是算法的保密。 第三阶段:1976~ 公钥密码学 公钥密码学成为主要研究方向; 主要特点:公钥密码使得发送端和接收端无密钥传输的保密通信成为可能。 代表性事件: 1976年, Diffie和Hellman发表的革命性论文《密码学新方向》(New deryctions in cryptography), 突破了传统密码体制使用秘密密钥所带来的密钥管理难题, 使密码的发展进入了一个全新的发展时期。 1977年,Rivest,Shamir和Adleman提出了RSA公钥算法。 DES算法出现。 80年代,出现IDEA和CAST等算法。 90年代,对称密钥密码算法进一步成熟,Rijndael,RC6等出现,逐步出现椭圆曲线等其他公钥算法。 2001年,Rijndael成为DES算法的替代者。 密码学的新方向 密码专用芯片集成 密码技术是信息安全的核心技术,无处不在,目前已经渗透到大部分安全产品之中,正向芯片化方向发展。在芯片设计制造方面,目前微电子水平已经发展到0.1um工艺以下,芯片设计的水平很高。 我国在密码专用芯片领域的研究起步落后于国外,近年来我国集成电路产业技术的创新和自我开发能力得到了提高,微电子工业得到了发展,从而推动了密码专用芯片的发展。加快密码专用芯片的研制将会推动我国信息安全系统的完善。 量子密码技术 量子技术在密码学上的应用分为两类: 一是利用量子计算机对传统密码体制的分析; 二是利用单光子的测不准原理在光纤级实现密钥管理和信息加密,即量子密码学。 量子计算机是一种传统意义上的超大规模并行计算系统,利用量子计算机可以在几秒钟内分解RSA129的公钥。 DNA密码技术 随着DNA计算的发展,有科学家开始把DNA用于密码学领域。Reif等人提出用DNA实现一次一密的密码系统,Celland等人提出用DNA隐藏消息。 Dan Boneh等人用DNA计算机破译了DES,并且声称任何小于64位的密钥都可以用这种方法破译 Salomaa也宣称现有的很多数学困难问题可以通过DNA计算机进行穷举搜索得到结果,而其中很多困难问题都是现代密码系统的安全依据。 什么是密码学 密码学基本概念 密码体制分类 密码学基本概念 密码学(cryptology) : 研究信息的保密和复原保密信息以获取其真实内容的学科称为密码学。 包括: 密码编码学(cryptography):研究对信息进行编码,实现隐蔽信息的一门学科。 密码分析学(cryptanalytics):不知道任何加密细节的条件下解密消息的技术,即“破译”。 密码编码学 (1)密码编码学是密码学的一个分支,研究与信息安全(例如:机密性、完整性、可鉴别性)有关的数学技术。 (2)密码编码学是包含数据变换的原理、工具和方法的一门学科,这种数据变换的目的是为了隐藏数据的信息内容,阻止对数据的篡改以及防止未经认可使用数据。 (3)密码编码学是论述使明文变得不可懂的密文,以及把已加密的消息变换成可懂形式的艺术和技巧。 Kerckhoff原理 Auguste Kerckhoff在1883年发表了一篇论文,认为一个密码系统中唯一应该保密的只有密钥。他认为,密码算法应该对外公开,如果一个密码系统需要保密的越多,可能的弱点也越多。 这种观点对于密码研究者和私营部门来说已经是一种常识,但是军事部门和政府则不这么认为。世界上大部分的政府都研制自己的算法并且不对外公开。 密码体制分类的三种方法 替代密码 vs. 换位密码 对称密码算法 vs. 非对称密码算法 分组密码 vs. 流密码 密码体制分类 按转换明文为密文的运算类型分类: 替代密码(Substitution Cipher): 就是明文中的每一个字符被替换成密文中的另一个字符。接收者对密文做反向替换就可以恢复出明文。 置换密码(Permutation Cipher): 又称换位密码(Transposition Cipher):明文的字母保持相同,但顺序被打乱了。 密码体制分类 按所用的密钥数分类: 对称密码算法(Symmetric cipher):加密密钥和解密密钥相同,或实质上等同,即从一个易于推出另一个。又称传统密码算法(Conventional cipher)、秘密密钥算法或单密钥算法。 DES、3DES、IDEA、AES 非对称密码算法(Asymmetric cipher) :加密密钥和解密密钥不同,从一个很难推出另一个。又叫公钥密码算法(Public-key cipher)。其中的加密密钥可以公开,称为公开密钥(public key),简称公钥;解密密钥必须保密,称为私人密钥(private key),简称私钥。 RSA、ECC、ElGamal 密码体制分类 按处理明文的方法分类: 分组(块)密码: 将明文分成固定长度的组,用同一密钥和算法对每一块加密,输出也是固定长度的密文; DES、IDEA、RC2、RC4、RC5; 序列(流)密码: 序列密码每次加密一位或一字节的明文; One-time padding、Vigenére、Vernam; 流密码模型 分组密码模型 分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。 密码分析学 攻击传统密码体制的一般方法: 穷举攻击: 对一条密文尝试所有可能的密钥。平均而言,成功至少需要尝试所有可能密钥的一半。 密码分析:利用算法的性质和明文的特征或某些明密文对。 密码分析学是在不知道密钥的情况下,恢复出明文的科学; 成功的密码分析能恢复出消息的明文或密钥; 密码分析学 (1)密码分析学是密码学的一个分支,它与另一个分支学科——密码编码学是两个相互对立、相互依存、相辅相成、相互促进的学科。 (2)密码分析学是企图挫败编码技术以及更一般说来的信息安全服务的数学技术学科。 (3)密码分析学是对密码体制、密码体制的输入输出关系进行分析,以便推出机密变量、包括明文在内的敏感数据。有时又称作密码破译学(code breaking) 密码分析攻击的典型方式 假设通信双方,Alice和Bob已经完成了秘钥交换,秘钥k是双方已知的,开始进行如下通信: 密码分析攻击的典型方式 攻击者已知加密算法,已知待破解的密文: 唯密文攻击: 密码分析者有一些消息的密文,这些消息都用同一加密算法加密。 密码分析者的任务是恢复尽可能多的明文,或者最好是能推算出加密消息的密钥来,以便可采用相同的密钥解出其他被加密的消息。 密码分析攻击的典型方式 攻击者已知加密算法,已知待破解的密文,已知一条或者多条明文-密文对; 已知明文攻击: 密码分析者不仅可得到一些消息的密文,而且也知道这些消息的明文。 分析者的任务就是用加密信息推出用来加密的密钥或推导出一个算法,此算法可以对用同一密钥加密的任何新的消息进行解密。 密码分析攻击的典型方式 攻击者已知加密算法,已知待破解的密文,能够获得通过加密算法生成自选的明文-密文对; 选择明文攻击: 分析者不仅可得到一些消息的密文和相应的明文,而且他们也可选择被加密的明文。这比已知明文攻击更有效。因为密码分析者能选择特定的明文块去加密,那些块可能产生更多关于密钥的信息,分析者的任务是推出用来加密消息的密钥或导出一个算法,此算法可以对用同一密钥加密的任何新的消息进行解密. 通常,加密算法被设计成能够抵御已知明文攻击 密码分析攻击的典型方式 自适应选择明文攻击: 这是选择明文攻击的特殊情况。密码分析者不仅能选择被加密的明文,而且也能基于以前加密的结果修正这个选择。在选择明文攻击中,密码分析者还可以选择一大块被加密的明文,而在自适应选择密文攻击中,可选取较小的明文块,然后再基于第一块的结果选择另一明文块,依此类推。 选择密文攻击: 密码分析者能选择不同的被加密的密文,并可得到对应的解密的明文,例如密码分析者存取一个防窜改的自动解密盒,密码分析者的任务是推出密钥。 两个概念 绝对安全,unconditional security 无论花多少时间,攻击者都无法将密文解密 原因:攻击者所需要的信息不在密文里。 除一次一密外,所有的加密算法都不是绝对安全的 计算安全,computational security 破译密码的代价超过密文信息的价值; 破译密码的时间超出了密文信息的有效生命期。 穷举攻击 主要内容 数据加密概述 传统密码技术 (一)替代技术 (二)换位技术 对称密钥密码技术 公钥密码体制 数字签名与认证技术 加密软件 (一)替代技术 替代法: 将明文字母替换成其他字母、数字或符号的方法; 如果把明文看成是0或1的序列,那么密文就是0或1比特序列的另一种表达。 包括: (1)凯撒密码 (2)单表替代密码 (3)多表替代密码 (1)凯撒密码(Caesar Cipher) 由古罗马人Julius Caesar发明的一种密码体制,它是使用最早的密码体制之一;首先用在军事通信中; 替代原理: 用字母后的第三个字母代替 字母表看作是循环的,即z后面的字母是a 凯撒密码 映射表中,明文字母中在字母表中的相应位置数为C,(如A=1,B=2,…)形式如下: 设k=3;对于明文P=compute systems则 f(C)=(3+3) mod 26=6=F f(O)=(15+3)mod 26=18=R f(M)=(13+3)mod 26=16=P ┆ f(S)=(19+3) mod 26=22=V 密文C= Ek(P)=FRPSXRWHUVBVWHPV。 凯撒密码的一般形式 将英文字母表左环移k(0≤k<26)位得到替换表,则得一般的Caesar算法。 共有26种可能的密码算法(25种可用) 将每个字母分配一个数值,如a=0,b=1等,则算法可表示为: 加密算法:C = Ek(P) = (P + k) mod 26 解密算法:P = Dk(C) = (C – k) mod 26 凯撒密码的安全性分析 凯撒密码的三个特征: 加密和解密算法已知 需尝试的密钥只有25个 所破译的明文语言已知,其意义易于识别 大多数情况下,密码算法是已知的,这三个特征使穷举攻击很容易实现 抗攻击分析: 使明文的语言未知:例如将明文压缩再进行加密 加大密钥空间:如允许字母的任意替代 (2)单表替代密码 不是简单有序地字母移位 每个明文字母映射到一个不同的随机密文字母 密钥数目: 26! 包括: 棋盘密码 仿射密码 移位代换密码:凯撒密码 多项式代换密码 乘数/采样密码 密钥短语密码 单表替代密码分析 密钥空间: 26! > 4 x 1026 大于56位DES(数据加密标准)的密钥空间 貌似安全,实则不然 : -基于语言统计规律仍可破译 单表替代密码分析 举例: 字母相对频率分析: 单表替代密码分析 初步分析: 解密结果: 解决方法:目标-减少密文中的明文结构残留度 字母组合加密:playfair密码 多表替代密码:Vigenère密码 Playfair密码 单表替代缺陷是:密文带有原始字母使用频率的一些统计学特征。 对策:每个字母提供多种代换。 最著名的多表代换密码—— Playfair密码: Charles Wheatstone 于1854年发明, 用其朋友Baron Playfair 命名 把明文中的双字母音节作为一个单元并将其转换成密文的“双字母音节” Playfair密钥矩阵 加密结果基于一个 5 x 5 字母矩阵 从左到右,从上到下: 填写密钥单词 用其他字母填写剩下的空缺 I = J 加/解密步骤 加密 明文分组(填充):2个字母/组 同行字母对加密:循环向右,ei→FK 同列字母对加密:循环向下,cu→EM,xi→AS 其它字母对加密:矩形对角线字母,且按行排序,hs→BP,es→IL(或JL) 解密 加密的逆向操作 安全性分析 安全性优于简单的单表代换密码: 共有26x26个字母对,判断单个字母对困难; 字母对的相对频率的统计规律低于单个字母的频率; 利用频率分析字母对较困难; 虽然明文中字母的统计规律在密文中得到了降低,但密文中仍含有明文的部分结构信息; 给定几百个字母,即可被攻破; (3)多表替代密码 替代规则: 使用一系列相关的单表替代规则 密钥决定给定变换的具体规则 例如: Vigenère密码(1858) Beaufort 密码 Vernam密码 Vigenère方阵 Vigenère密码示例 加密过程: P=“encode and decode”,k=“mykey” Vigenère密码示例 解密过程: C=“QLMSBQYXHBQAYHC”,k=“mykey” Vigenère密码 加密过程: 数学公式计算 设明文 P = p1p2…pn,密钥 K = k1k2…km,密文C = c1c2…cn 加密: ci= ( pi+ki mod m) mod 26; 说明:若明文长度大于n,则k重复使用。 Vigenère密码 解密过程: 数学公式计算 pi = (ci-ki mod m ) mod 26; 安全性分析 每个明文字母对应着多个密文字母,明、密文字母不是一一对应关系 一条消息中,同样的字母在不同的位置映射成不同的密文; 字母的统计规律进一步降低; Vigenère本人建议:密钥与明文一样长; Vigenère代换表中的每一行就是一Caesar密码; 安全性分析 举例: 密文用数字描述后: 密码分析思路: 集中精力找到密钥长度; 采用单表替代分析方法; Germany: Enigma轮转机密码系统 (二)换位密码 Transposition Ciphers 换位: 对明文字母的某种置换,采用移位发进行加密; 明文中的字母重新排列,位置发生变化; 栅栏技术:按对角线的顺序写出明文,以行的顺序读出作为密文 易破译 矩阵排列法: 纯置换密码易识别 多次置换:多阶段加密,安全性更高 例: 明文: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 读出密文为: MEMATRHTGPRYETEFETEOAAT 改 进 带有密钥 再改进:重复加密,多步置换 更加复杂的移位 以指定的行将明文写作多行 按照密钥指定的列读出 Key: Plaintext: Ciphertext: TTNAAPTMTSUOAODWCOIXKNLYPETZ 主要内容 数据加密概述 传统密码技术 对称密钥密码技术 Feistel密码结构 数据加密标准DES 公钥密码体制 数字签名与认证技术 加密软件 对称密码算法 数据加密标准(DES) 国际数据加密算法(IDEA) 高级数据加密标准(AES) 对称加密模型 回顾 代替密码(Substitution Cipher): 就是明文中的每一个字符被替换成密文中的另一个字符。接收者对密文做反向替换就可以恢复出明文。 置换密码(Permutation Cipher): 又称换位密码:明文的字母保持相同,但顺序被打乱了。 基本思想 扩散(Diffusion):将每一位明文数字的影响尽可能的散布到多个输出密文数字中,更隐蔽明文数字的统计特性。 混乱(Confusion):使得密文的统计特征与明文、密钥之间的关系尽量复杂化。 使用标准的算术运算和逻辑运算。 Shannon:在理想的密码系统中,密文的所有的统计特性与所使用的密钥独立。 Feistel密码结构 明文分组分为左右两个部分L0和R0,数据的这两部分通过n次循环处理后,再结合起来生成密文分组; 每i次循环都以上一次循环输出比特串的左右两个部分Li-1和Ri-1,以及K产生的子密钥Ki作为输入。 子密钥Ki是用子密钥生成算法从密钥K中生成的 Feistel密码结构 所有循环的结构都相同,置换在数据的左半部分进行,先对数据的右半部分应用循环函数F,然后对函数输出结果和数据的左半部分取异或(XOR); 循环函数对每次循环都有相同的通用结构,仅仅是每次循环子密钥Ki不同; 在置换之后,执行由数据左右两部分互换构成的交换; Feistel密码结构 加密过程和解密过程形式化描述分别如下公式所示: 加密: Li = Ri-1;Ri = Li-1F(Ri-1, Ki) 解密: Ri-1 = Li;Li-1 = RiF(Ri-1, Ki) = RiF(Li, Ki) Feistel的核心参数 分组大小 密钥长度 循环次数 子密钥产生算法 循环函数 DES的产生 1974年8月27日,NBS开始第二次征集,IBM提交了算法LUCIFER。 1975年3月17日,NBS公开了全部细节。 1976年,NBS指派了两个小组进行评价。 1976年11月23日,采纳为联邦标准,批准用于非军事场合的各种政府机构。 1977年1月15日,“数据加密标准”FIPS PUB 46发布。 DES的应用 1979年,美国银行协会批准使用DES。 1980年,美国国家标准局(ANSI)同意DES作为私人使用的标准,称之为DEA(ANSI X.392) 1983年,国际化标准组织(ISO)同意将DES作为国际标准,称之为DEA-1 1998年12月以后,美国政府不再将DES作为联邦加密标准 DES特点 设计目标:用于加密保护静态储存和传输信道中的数据,安全使用10-15年 综合应用了置换、代替等多种密码技术 分组密码: 分组长度为64位,密钥56位 采用feistel结构 面向二进制的密码算法 加密解密共用一个算法 DES算法流程 DES加密过程 DES解密过程 DES的安全性 破解密码的时间与密钥长度之间的关系 应该注意到的一个事实是,DES经过了可能是当今最多的被分析或被攻击的对象,但未发现任何结构方面的漏洞。 DES算法最终之所以被破译的关键是密钥的长度问题。 DES总结 DES改造思路 两重DES 三重DES 三重DES 主要内容 数据加密概述 传统密码技术 对称密钥密码技术 公钥密码体制 公钥密码算法原理 RSA算法 其他公钥密码算法 数字签名与认证技术 加密软件 公钥密码算法 对称密钥密码系统的缺陷: 密钥必须经过安全的信道分配,密钥管理复杂 无法用于数字签名 非对称密钥密码,也称公开密钥密码,由Diffie, Hellman 1976年提出; 使用两个密钥,对于密钥分配、数字签名、认证等有深远影响; 和DES等对称算法不同,公钥体制的形式和结构导致公钥算法必须使用某种数学结构,而不能再使用替代和置换等初等方法。从形式上看,公钥算法将比对称算法更简洁和易于理解。 公钥密码用于加密 每个通信实体有一对密钥(公钥,私钥)。 使用方式一: A向B发送消息,用B的公钥加密 B收到密文后,用自己的私钥解密 公钥密码用于签名 使用方式二: A向B发送消息,用A的私钥加密(签名) B收到密文后,用A的公钥解密(验证) 公钥密码算法的表示 对称密钥密码 密钥:会话密钥(Ks) 加密函数:C= EKs[P] 对密文C,解密函数:DKs[C], 公开密钥 (KUa,KRa) 加密/签名:C= EKUb[P],EKRa[P] 解密/验证:P= DKRb[C],DKUa[C] 签名和加密同时使用 Z= EKUb [Y] = EKUb [ EKRa (X) ] X= DKUa[Y] = DKUa [ DKRb (Z) ] 对公钥密码算法的要求 参与方B容易产生密钥对 公钥KUb,私钥KRb 已知KUb,发送者A的加密操作是容易的: C=EKUb(P) 已知KRb,接收者B解密操作是容易的: P=DKRb (C) = DKRb ( EKUb (P) ) 已知KUb,求KRb是计算上不可行的; 已知KUb和C, 欲恢复P是计算上不可行的。 常见公钥密码算法及应用 三种用途: 加密/解密:发送方用对方公钥加密,接收方用自己的私钥解密 数字签名:发送方用自己的私钥签署报文,接收方用对方的公钥验证对方的签名 密钥交换:双方协商会话密钥 RSA密码体制 1978年,MIT三位年青数学家R.L.Rivest,A.Shamir和L.Adleman用数论构造双钥密码的方法,称作MIT体制,后被广泛称为RSA体制; 它既可用于加密、又可用于数字签名; RSA算法的安全性基于数论中大整数分解的困难性; 参数选择 1. 取两个大素数 p, q , 保密; 2. 计算n=pq,公开n; 3. 计算欧拉函数ф(n) =(p-1)(q-1); 4. 任意取一个与ф(n) 互素的小整数e, 即 gcd (e, ф(n) )=1, 1
展开