《密码学基础与应用(1)ppt课件.ppt》由会员分享,可在线阅读,更多相关《密码学基础与应用(1)ppt课件.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四讲密码学基础与应用(1)1为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益内容提要3.1 密码学的基本概念3.2 对称密钥密码算法3.3 非对称密钥密码算法3.4 单向散列函数3.5 数字签名3.6 密钥管理和公钥基础设施(PKI)3.7 OpenSSL简介2为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益内容提要3.1 密码学的基本概念3.1.1 密码学的历史3.1.2 密码学的基本概念3.1.3 算法的分类3.1.4 密码分析3.1.5 密码技术的用途
2、3.2 对称密钥密码算法3.3 非对称密钥密码算法3.4 单向散列函数3.5 数字签名3.6 密钥管理和公钥基础设施(PKI)3.7 OpenSSL简介3为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.1 密码学的历史古罗马:Caesar 密码 ABCDEFGHIGKLMNOPQRSTUVWXYZDEFGHIGKLMNOPQRSTUVWXYZABCCaesar was a great soldier密码本密文Fdhvdu zdv d juhdw vroglhu明文密文CAESAR 密码:c=(m+3)Mod 264为了
3、规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.1 密码学的历史(Cont.)美国南北战争CANYOUUNDERSTAND输入方向输出方向明文:Can you understand 密文:codtaueanurnynsd 5为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.1 密码学的历史(Cont.)转轮密码机ENIGMA,由Arthur Scherbius于1919年发明,4 轮ENIGMA在1944年装备德国海军.6为了规范事业单位聘用关系,建
4、立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.1 密码学的历史(Cont.)英国的TYPEX打字密码机,是德国3轮ENIGMA的改进型密码机。它在英国通信中使用广泛,且在破译密钥后帮助破解德国信号。7为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.1 密码学的历史(Cont.)图灵(Alan Mathison Turing)Alan Mathison Turing,19121954.英国数学家。一生对智能与机器之间的关系进行着不懈探索。1936年,24岁的图灵提出“图灵
5、机”的设想。二战期间成功地破译了纳粹德国的密码,设计并制造了 COLOSSUS,向现代计算机迈进了重要一步。1952年,图灵遭到警方拘捕,原因是同性恋。1954年6月8日,服毒自杀,年仅42岁。图灵去世12年后,美国计算机协会以他的名字命名了计算机领域的最高奖“图灵奖”。8为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益一个简单的加密算法异或9为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益一个简单的加密算法异或异或 密文:0 1 1 0 解密:密钥:0 1
6、0 1 明文:0 0 1 1已知明文、密文,怎样求得密钥?C=P KP=C K异或运算(不带进位加法):明文:0 0 1 1 加密:密钥:0 1 0 1 密文:0 1 1 0K=C P只知道密文,如何求得密文和密钥?10为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.2 密码学的基本概念密码学基本模型发送方接收方EncryptionDecryption加密:c=EK(m)解密:m=DK(c)不安全信道密码分析(Cryptanalysis)plaintextciphertextplaintextKeyKey11为了规范事
7、业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.2 密码学的基本概念(Cont.)密码编码:通过信息编码使信息保密密码分析:用分析方法解密信息基本术语明文(plain text),密文(cipher text)加密(encrypt,encryption),解密(decrypt,decryption)密码算法(Algorithm),密码(Cipher):用来加密和解密的数学函数 c=E(m),m=D(c),D(E(m)=m密钥(Key):算法中的一个变量 c=EKe(m),m=DKd(c),DKd(EKe(m)=m12为了规范事业
8、单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.3 密码算法的分类古典密码算法和现代密码算法按照算法和密钥是否分开对称密钥密码和非对称密钥密码加密和解密是否使用相同的密钥分组密码和序列密码每次操作的数据单元是否分块13为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益古典密码和现代密码古典密码代替密码(Substitution Cipher)换位密码(transposition Cipher)代替密码与换位密码的组合古典密码(受限密码)的缺陷密码体制的安全性在于保持
9、算法本身的保密性受限算法的缺陷不适合大规模生产不适合较大的或者人员变动较大的组织用户无法了解算法的安全性14为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益古典密码和现代密码(Cont.)现代密码算法把算法和密钥分开 密码算法可以公开,密钥保密密码系统的安全性在于保持密钥的保密性发送方接收方mm加密E解密Dc=Ek(m)m=Ek(c)密码分析密钥分配(秘密信道)kk15为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益对称密码算法和非对称密码算法对称密钥密码算法
10、,又称传统密码算法、秘密密钥密码算法加密和解密使用相同的密钥 Ke=Kd常用算法:DES,IDEA,Blowfish,RC2等优点加密速度快,便于硬件实现和大规模生产缺点密钥分配:必须通过保密的信道密钥个数:n(n-1)/2 无法用来签名和抗抵赖(没有第三方公证时)16为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益对称密码和非对称密码(Cont.)非对称密码,又称公开密钥密码算法加密和解密使用不同的密钥(Kp,Ks),把加密密钥公开,解密密钥保密:c=EKp(m),m=DKs(c)常用算法:RSA,DSA,背包算法,ElGa
11、mal,椭圆曲线等优点:密钥分配:不必保持信道的保密性密钥个数:n pair可以用来签名和抗抵赖缺点加密速度慢,不便于硬件实现和大规模生产17为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益分组密码和序列密码分组密码(Block Cipher)一次加密或解密操作作用于一个数据块,比如64位序列密码(Stream Cipher)一次加密或解密操作作用于一位或者一个字节随机序列随机序列密钥序列发生器PiCiCiPiKey密钥序列发生器18为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用
12、人单位和职工的合法权益3.1.4 密码分析在未知密钥的前提下,从密文恢复出明文、或者推导出密钥对密码进行分析的尝试称为攻击攻击方法分类(根据已知信息量的多少)唯密文攻击已知明文攻击选择明文攻击自适应选择明文攻击选择密文攻击选择密钥攻击19为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.4 密码分析(Cont.)Success in dealing with unkown ciphers is measured by these four things in the order named,perseverance,ca
13、reful methods of analysis,intuition,luck.The ability at least to read the language of the original text is very desirable but not essential.Parker Hitt 军事密码破译指南 的开场白毅力、审慎的分析方法、直觉、运气。20为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.4 密码分析(Cont.)密码算法的安全性如果破译算法的代价大于加密数据本身的价值,或者在信息的生命期内无法
14、破解,那么你的算法可能是安全的。一个算法被称为是计算上安全的,如果一个算法用可得到的资源不能破解。处理复杂性:计算量,CPU时间数据复杂性:所需输入数据量存储复杂性:计算所需的存储空间21为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.1.4 密码技术的主要用途数据保密数据加密/解密数据加密(存储和传输)认证技术实体身份认证数据源发认证信息完整性保护数据在传输过程中没有被插入、篡改、重发;数字签名和抗抵赖(Non-repudiation)源发抗抵赖交付抗抵赖22为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的
15、事业单位工作人员聘用制度,保障用人单位和职工的合法权益内容提要3.1 密码学的基本概念3.2 对称密钥密码算法3.2.1 对称密钥算法简介3.2.2 DES 算法原理3.2.3算法模式3.2.4 DES的安全性和速度3.2.5 其他对称密码算法简介3.3 非对称密钥密码算法3.4 单向散列函数3.5 数字签名3.6 密钥管理和公钥基础设施(PKI)3.7 OpenSSL简介23为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.1 对称密钥算法简介加密和解密使用相同的密钥:KE=KD密钥必须使用秘密的信道分配发送方接收方m
16、m加密E解密Dc=Ek(m)m=Dk(c)密钥分配(秘密信道)kk24为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.1 对称密钥算法简介(Cont.)常用对称密钥密码算法DES(Data Encryption Standard)及其各种变形IDEA(International Data Encryption Algorithm)RC2,RC4,RC5,AES(Advanced Encryption Standard)CAST-128Blowfish25为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业
17、单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.2 DES算法原理IBM 公司,70年代初提出,80年代成为国家标准DES是一种对称密钥算法,密钥长度为56bits(加上奇偶校验,通常写成64bits)是一种分组加密算法,64 bits为一个分组基本思想:混乱(Confusion)和扩散(Diffusion)使用标准的算术和逻辑运算 26为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益DES 加密过程 首先把明文分成以64 bit为单位的块m,对于每个m,执行如下操作 DES(m)=IP-1 T16 T15.T2 T
18、1 IP(m)初始置换,IP 16轮迭代,Ti,i=1,2,16末置换,IP-127为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益DES算法概要Round16 IP-1 Roud1 Roud1 Initial Permutation Plaintext64bitsciphertext64bitsPermuted Choice1 Left Circular ShiftLeft Circular ShiftLeft Circular ShiftPermuted Choice2 Permuted Choice2 Permuted
19、Choice2 28为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益初始换位(IP)初始换位(IP)58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157M=m1m2,m62m63,m64M=m58m50,m23m15,m7IP(M)29为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合
20、法权益一轮迭代Li-1Ri-1LiRi-1Ri=Li-1 f(Ri-1,Ki)Ki(48bits)32 bits32 bits32 bitsE-盒置换 S-盒代替P-盒置换32 bitsf483230为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益扩展置换(E)将Ri从32位扩展到48位目的:输入的一位影响下一步的两个替换,使得输出对输入的依赖性传播得更快,密文的每一位都依赖于明文的每一位1 2 3 45 6 7 81 2 3 4 5 6 7 8324832 1 2 3 4 5 4 5 6 7 8 9 8 9.31 32 11
21、 2 3 4 5 6 7 8 9 10 11 12 13 14 46 47 4831为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益S盒 置换将48比特压缩成32比特ES1S2S3S4S5S6Ri-1 (32 bits)Ki(48bits)48 bitsS7S832为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益S盒 置换输入6比特:b1b2b3b4b5b6输出4比特:S(b1b6,b2b3b4b5)S1b1 b2 b3 b4 b5 b601234567891
22、01112131415S101441312151183106125907101574142131106121195382411481362111512973105031512824917511314100613S2015181461134972131205101.23举例:S 1(100110)=100033为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益P-盒置换32比特输入,32比特输出123456789303132167202129122817115.11425P-盒的输出:34为了规范事业单位聘用关系,建立和完善适应社
23、会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益子密钥的生成PC-1C0D0LS1LS1C1D1LS2LS2C2D2LS16LS16C16D16PC-2K1(48bits)密钥 K,64 bits2828PC-2K2(48bits)PC-2K16(48bits)35为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益子密钥生成CiDi移位(LS)移位压缩置换(PC)Ci+1Di+1Ki36为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益子
24、密钥生成拆分:56 bits 的密钥分成两部分,Ci,Di ,各28bits循环左移:根据迭代的轮数,分别左移一位或两位12345678910 11 12 13 14 15 161122222212222221压缩置换(置换选择):从56bits中选择48bits 141711241532815621102319124268167272013241523137475530405145334844493956345346425036293237为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益末置换末置换4084816562464
25、323974715552363313864614542262303754513532161293644412522060283534311511959273424210501858263314194917572558504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157初始置换IP-1(IP(M)=M38为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权
26、益DES解密过程DES解密过程与加密过程完全相似,只不过将16次迭代的子密钥顺序倒过来,即 m=DES-1(c)=IP-1 T1T2.T15 T16 IP(c)可以证明,DES(DES-1(m)=m39为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.3 DES的算法模式电子密码本(Eletronic CoodBook,ECB)密码分组链(Cipher Block Chaining,CBC)密文反馈(Cipher FeedBack,CFB)输出反馈(Output FeedBack,OFB)40为了规范事业单位聘用关系,建
27、立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益电子密码本模式(ECB)基本的DES算法就是ECB 模式相同的输入永远产生相同的输出相当于加密、解密双方各有一个密码本,对于一个密钥,密码本有264个表项存在重放(Replay)类型的攻击,特别是对于结构化的报文:攻击者可以在不知道密钥的情况下修改被加密过的消息12345678910111213时间标记发送银行接受银行储户姓名帐号存款金额41为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益密码分组链模式(CBC)EkEkPi-1PiEkPi
28、+1EkCi-1EkCi-1EkCi-1Ci-1CiCi+1Pi-1PiPi+1IV42为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益密码分组链模式(CBC)(续)43为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.4 DES的安全性和速度弱密钥产生的子密钥相同,4个,如 000000,11111111,010101010101,10101010半弱密钥用不同的密钥加密产生相同的密文,即用一个密钥加密的信息可以用其他密钥解开,12个密钥的长度1976
29、年,耗资2000万美元的计算机,可以在一天中找到密钥。1993年,设计100万美元的计算机,3.5小时用穷举法找到密钥。44为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.5 DES的变形三重DES加密,密钥长度为112比特,k=k1k2DESDES-1DESDES-1DESDES-1mmcck1k2k1k1k2k1密钥长度211245为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益软硬件实现的速度硬件实现:商业DES芯片VLSI 公司 VM009 1
30、993年制造 200M Bytes/s软件实现:80486,CPU 66Hz,每秒加密43000个DES分组,336K Bytes/sHP 9000/887 ,CPU 125 Hz,每秒加密196,000个分组,1.53M Bytes/s 46为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益3.2.6 其他密码算法算法密钥长度迭代次数数学操作应用DES5616XOR,S-BoxKerberos,SET3DES112 or 16848XOR,S-BoxPGP,S/MIMEIDEA1288XOR,PGPBlowFish最大4481
31、6XOR,S-Box,RC5最大2048255+,,XORCAST-1284012816+,,S-BoxPGP47为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益IDEA算法简介1990年,Xuejia Lai(赖学家),James Massey,International Data Encryption Algorithm“依我看来,该算法是目前一公开的最好和最安全的分组密码算法”应用密码学,p226目前已经最为PGP的一部分48为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益IDEA算法简介(cont.)分组长度64bits,密钥长度128bits同一算法即可以加密,也可用于解密只需要简单的混合运算异或模216加模2161乘软件实现IDEA比DES快两倍安全性:弱密钥有251,1/277 赢得彩票头等奖并在同一天被闪电杀死的可能性1/25549为了规范事业单位聘用关系,建立和完善适应社会主义市场经济体制的事业单位工作人员聘用制度,保障用人单位和职工的合法权益小结基本操作:代替、换位、异或密码学基本模型算法的分类常用的对称密码DES算法的基本原理DES算法的四种模式50
限制150内