




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、密码学基础介绍技术创新,变革未来在开放的、非安全的网络上如何安全的传送数据?我怎么确认你发给我的文件没被别人篡改过?引入了解密码学的基本概念认识对称和非对称密码掌握密钥交换技术了解数字签名了解公共密钥基础设施课程目标学习完本课程,您应该能够:密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录信息安全目标机密性(Confidentiality)完整性(Integrity)不可否认性(Non-reputation)密码学密码学是研究信息系统安全保密的科学。分为密码编码学和密码分析学。密码编码学(Cryptography)主要研究对信息进行编码,实现对信息的隐蔽。密码分析学(C
2、ryptanalysis)主要研究加密消息的破译或消息的伪造 。 密码学的研究目的是在不安全的信道中传输安全信息。明文和密文明文你我都能读懂的信息 你要听从我的命令。密文经过编码后的只有通过特定解码才能读懂的信息天王盖地虎,白塔镇河妖。代换密码代换密码中,明文的字符将会被其他的字符所代替,常用方法为查表法。ABCDEFGHIJKLMXNYAHPOGZQWBTNOPQRSTUVWXYZSFLRCVMUEKJDI明文HELLO密文GHBBF置换密码在置换密码中,保持明文的所有字母不变,只是利用置换打乱了明文字母的位置。x12345(x)45213列1列2列3列4列5hellokitty列1列2列3
3、列4列5llohettyki明文hello kitty密文llohe ttyki一次一密根据密码本逐个进行加密,每个密码本均有完全相同的两本。在加密时只使用一次,用另一个相同的密码本进行解密,使用后将密码本销毁。一次一密可以实现无条件的安全性。加密和解密加密:将明文编码为密文的过程被称之为加密。而加密的方法即被称之为加密算法。 解密将密文解码为明文的过程称之为解密,它是加密的相反过程。同样,解密的方法被称之为解密算法。密钥密钥是算法的关键不管是加密算法还是解密算法,都要使用到密钥。密钥是类似于一次一密中的密码本的东西,它作为算法的重要材料来参与编码计算。密钥和密码算法的关系无论是加密还是解密都
4、牵扯到两个概念:加密(或解密)算法和密钥;一般来讲,加解密的算法是可以公开的,但是密钥只能是被通信的双方所拥有,密钥是保证通讯安全的根本。密码体制明文、密文、密钥、加密算法和解密算法五个元素构成了密码体制,密码体制是一个使通信双方能进行秘密通信的协议。从数学上来讲,密码体制是一个五元组(P,C,K,E,D),其中:(1) P是明文的集合;C是密文的集合;(2) K是密钥构成的有限集,成为密钥空间;(3) E是加密算法,D是解密算法对于K中的某个密钥k,存在相应的加密算法e(属于E)和解密算法d(属于D),使得dk (ek (p)=p.加密解密中间者明文公共信道加密密钥k1解密密钥k2发送方接收
5、方C=Ek1(P)密文P=Dk2(C)明文P密码体制分类流密码和分组密码对称和非对称密码密码分析攻击仅有密文攻击攻击者可以获得密文,并且知道加密算法,在此种情况下所进行的密文破解攻击。已知明文攻击攻击者知道某些明文和密文的对应,根据已有的这些信息进行的密文破解攻击。可选明文攻击攻击者可以选择某些明文进行加密,并且获得明文对应的密文,在此基础上所进行的密文破解攻击。密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录送信的问题Alice要给Bob送信,其中信件的内容非常重要,最好亲自交给Bob。但两人又无法见面,只能交给邮递员运送或让其他人转交。AliceBobAlice可以
6、把信件放到箱子里,然后用锁将箱子锁住,然后再交给邮递员,这样不就不怕别人打开了嘛!Bob怎么打开箱子?需要钥匙!Alice如何将钥匙传递给Bob?如何保证信件不被别人打开呢?对称密码体制钥匙相同Alice锁箱子用的钥匙和Bob打开箱子用的钥匙是相同的。对称密码体制加密密钥和解密密钥相同的密码体制称为对称密码学。由于对称密码中的密钥是严格私有的,因此对称密码体制也称为私钥密码体制。两者相同可相互推导加密密钥解密密钥加密密钥解密密钥对称密码算法数据加密标准算法DES:Data Encryption Standard 密钥长度=56位三重DES3DES:Triple Data Encryption
7、Standard 使用三个不同的密钥,每个长度为56位高级数据加密标准算法AES:Advanced Encrytion Standard密钥长度=128/192/256位(可选)IDEA算法IDEA:International Data Encryption Algorithm密钥长度=128位RC5算法由RSA公司的Ron Rivest发明密钥长度可变对称密码的特点加密和解密密钥相同;必须保证密钥被安全的分发或交换;密钥量级为参与者的平方级别,数目较多;适合对大量数据加密,加解密速度快;加解密操作易于通过硬件实现。密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录密钥分
8、发打开箱子的关键Bob需要拿到Alice手中的钥匙,那如何才能拿到呢?密钥分发将钥匙从Alice传递给Bob对应于密码学中的密钥分发。所谓密钥分发就是要在不让其他人看到密钥的情况下将一个密钥传递给希望交换数据的双方。密钥分发是对称密码学的关键,其中密钥的安全性也是对称密码学安全性的重要保证。这个被发送者和接收者共同拥有的密钥一般称为共享密钥。密钥分发方法1,密钥由Alice选择,然后物理地传递给Bob。2,由第三方Tom选择一对相同的密钥,然后物理地传递给Alice和Bob。3,如果Alice和Bob在不久以前使用过一个密钥,一方可以使用旧密钥加密新密钥并传输给另一方。4,如果Alice和Bo
9、b每人都有一个到第三方Tom的加密连接,Tom就可以用加密连接把密钥传递给Alice和Bob。Diffie-Hellman密钥交换算法目的在非安全的通信信道上安全的建立共享密钥。用途DH算法可用于密钥分发,但不能用于加密或解密消息。DH算法实现假设Alice和Bob要产生共享密钥,来用于加密和解密,则DH算法可以这样实现:1,Alice和Bob实现选择两个非常大的素数n和g,这两个数无需保密;2,Alice选择一个非常大的随机数a,并且做计算X=gamod n,然后Alice将X发送给Bob;3,Bob也独立的选择一个非常大的随机数b,并且做计算Y= gb mod n,然后Bob将Y发送给Al
10、ice;4,Alice使用a和从Bob接收的Y做计算,计算出K1=Ya mod n;5,Bob使用b和从Alice接收的X做计算,计算出K2=Xb mod n;最终K1=K2=gab mod n就是共享密钥。中间人攻击DH密钥交换容易被中间人攻击(man-in-the-middle)所破坏:第三方Mallory插在Alice和Bob的中间,侦听Alice和Bob之间的通信。当Alice向Bob发起通信时扮演Bob;当Bob向Alice发起通信时扮演Alice。Alice和Bob都与Mallory协商了一个密钥,然后Mallory就可以监听和传递Alice和Bob之间的通信,而Alice和Bob
11、全然不知。AliceBobMallory密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录继续送信问题Bob收到箱子后,拿出K2钥匙,将锁打开,取出箱子里的信件。假设Bob有一把锁和两个钥匙K1和K2,其中K1用于将锁锁上,而K2用于将锁打开,K1和K2这两个钥匙是不一样的。那么Alice和Bob怎么安全传递这封信件呢?Bob将锁和钥匙K1通过某个途径提供给Alice,这个途径可以是不安全的。Alice随后把信件放到箱子里,然后用K1和锁将箱子锁住,然后再交给邮递员。公钥和私钥非对称密码体制的加密和解密密钥不同,有如下概念:公钥Alice将锁锁上所用的钥匙K1。公钥是可以
12、公开的密钥。任何想给Bob发送秘密邮件的人都可以获得Bob的公钥。私钥Bob开锁所用的钥匙K2。私钥需要被严格保密,它是保密通信的保证。只有Bob才能拥有。非对称密码体制加密密钥和解密密钥不相同的密码体制称为非对称密码体制。由于非对称密码体制中的公钥是可以公开的,因此非对称密码也被称为公钥密码体制两者不同不可相互推导加密密钥解密密钥加密密钥解密密钥Diffie-Hellman密钥交换算法DH算法非对称密码学的第一个算法DH算法用于密钥交换。其中的X为公钥,而a为对应私钥;Y为公钥,b为对应私钥。RSA算法RSA算法是使用与研究最广泛的算法 RSA算法1977年由Ron Rivest、Adi S
13、hamir和Len Adleman发明,1978年正式公布。算法实现1,生成两个大素数p和q,计算npq2,选择一个随机数b,3,求b的逆为a (即满足ab=1 mod (p-1)(q-1)4,则公钥为(n, b),私钥为(p, q, a)密文y=xb mod n,明文ya mod n=(xb)a=x ab=x1=x公钥密码算法的安全性离散对数分解难题DH算法基于“有限域上的离散对数分解”这个难题。即:在已知X和g的情况下,在数学上计算出a是不可行的(时间无限长或代价过高)。素因子分解难题RSA算法基于“素因子分解”这个数学难题。即:p和q为两个大素数,npq。在已知n的情况下,分解出来p和q
14、是计算困难的。公钥密码算法的安全性都是基于数学难题的,其中有两个主要的数学难题:公钥密码的特点公钥用于加密,私钥用于解密,公私钥既不相同也不相关;密钥交换可以通过公共信道进行,无需保密;密钥量级为参与者的数目;既可以用于加解密,也可以用于数字签名;加解密速度慢,不适合大量的数据加密,常用于为对称密码协商共享密钥;加解密操作难以通过硬件实现。密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录还是送信问题Bob终于打开了箱子,并且看到了信件,在信件的末尾,Bob看到了Alice的签名,但Bob又有疑虑了。Alice以前的签名都用钢笔,这次怎么是圆珠笔签名呢?到底是不是Alic
15、e本人签的?数字签名日常生活中手写签名的电子对应物重要认证手段,实现用户对电子形式存放消息的认证。数字签名过程明文密文Internet密文明文AliceBob使用Alice的私钥加密即:签名使用Alice的公钥解密即:验证签名和验证签名即Alice使用私钥对消息进行加密的过程;加密的方法称为签名算法。所谓验证即Bob使用Alice的公钥对签名进行解密的过程;解密的方法称为验证算法。数字签名方案一个数字签名方案包括两个部分:签名算法和验证算法。Alice使用一个私密的签名算法sig来为消息x签名,签名结果sig(x)能够被一个公开的验证算法ver所验证。给定数据对(x,y),验证算法根据签名是否
16、有效而返回True或False的答案。如果y =sig(x), 则ver(x,y)=true;如果y!=sig(x), 则ver(x,y)=false.签名的问题日常生活中,我们一般只在文件的末尾签名。数字签名是否要对整个文档签名呢?消息摘要消息摘要指一段消息的摘要或指纹,也被称为哈希值(hash),它类似于IP报文中的CRC校验、类似于我们的指纹。哈希函数哈希函数用来产生消息摘要哈希函数将任意长度的消息变成固定长度的短消息,哈希函数也称为散列函数、杂凑函数。哈希函数是单向函数从消息摘要来推知原消息是不可行的。哈希函数的安全性是由发生碰撞的概率决定的。如果攻击者能够轻易地构造出两个不同的消息具
17、有相同的消息摘要,那么这样的哈希函数是不可靠的。MD5MD5(Message Digest )算法由Ron Rivest发明,最早发布的MD2、MD4都因为安全性问题被抛弃。自1991年MD5发布至今,MD5被广泛应用。MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位哈希值。 SHA-1SHA (Secure Hash Algorithm,安全散列算法) 是美国国家安全局 (NSA) 设计,美国国家标准与技术研究院 (NIST) 发布的一系列密码哈希函数,其中SHA-1
18、作为SHA-0的继任者于1995年发布。 对于长度小于264位的消息,SHA-1会产生一个160位的消息摘要。 数字签名和哈希函数数字签名几乎都和哈希函数结合使用签名实施:对消息x进行哈希运算,得到消息摘要z=h (x)对z进行签名y=sigk(z),有序对(x,y)在信道上传输。DSA1991年美国国家标准与技术学会(NIST)提出了数字签名标准(DSS),DSS提供了一种核查电子传输数据及发送者身份的一种方式。DSS签名为计算和核实数字签名指定了一个数字签名算法(Digital Signature Algorithm,DSA)。DSA由于商业应用和专利归属的原因,没有得到很好的推广。DSA
19、属于非对称密码算法,仅用于数字签名,不可用于加密。RSARSA不仅用于加密,也可以用于数字签名。RSA算法是RSA数据安全公司的收费产品,由于公司自身的商业推广,再加上RSA本身得到IBM、Novell、Apple、Microsoft等公司的支持,已经成为数字签名算法事实上的标准。数字签名实现(1)假设Alice要将消息M传送给Bob,并且将数字签名S和M一起发送给Bob。第一步Alice使用SHA-1哈希函数计算出M的消息摘要MD1MMD1SHA-1数字签名实现(2)第二步Alice使用自己的私钥对摘要进行签名,输出数字签名DS。MD1DS第三步Alice将消息M连同数字签名DS一同发送给B
20、ob。MDSInternetMDS数字签名实现(3)第四步Bob收到Alice发送的消息M和数字签名DS。Bob选择相同的哈希函数,计算出M的摘要MD2。MMD2SHA-1第五步Bob使用Alice的公钥解密数字签名DS,得到MD1。 注意:签名是使用私钥加密、公钥解密。DSMD1Bob使用Alice的公钥解密数字签名数字签名实现(4)第六步Bob接下来对MD1和MD2进行比较,如果MD1=MD2,则Bob接受如下两个事实:1,信息M是完整的,未被别人修改过;2,信息M确实是Alice发送的,而并非其他人;如果MD1 !=MD2,则说明消息被别人篡改过,Bob不接受此消息。公钥交换的问题Ali
21、ce如何确定发给Bob的密文确实是使用Bob的公钥加密的?Bob如何确定用来解密Alice数字签名的公钥确实是Alice的?公钥交换的中间人攻击AliceBobMallory7,Bob使用自己公钥20对应的私钥解密,以为消息就是来自Alice1,Hi Bob,我是Alice,请给我你的公钥,我的是102,Bob,我是Alice,请给我你的公钥,我的是304,Hi Alice,我是Bob,我的公钥是303,Hi Alice,我的公钥是205,Alice使用公钥30加密消息,Alice将密文发送给Bob6,Mallory截获密文,使用公钥30对应的私钥解密,然后使用Bob的公钥20加密消息Mall
22、ory将重新生成的密文发送给Bob密码学基本概念对称密码密钥分发技术非对称密码数字签名公共密钥基础设施目录PKI的作用PKI(Public Key Infrastructure ) 即“公共密码基础设施”,是一种遵循既定标准的密钥管理平台。PKI是利用公钥理论和技术建立的提供安全服务的基础设施。PKI能够为网络应用提供加密和数字签名等密码服务及所必需的密钥和数字证书管理体系。PKI中的关键技术通过数字签名提供不可否认服务将公钥和个人身份建立联系对公钥的集中管理实现方式:引入数字证书(Certificate)数字证书数字证书是由权威机构CA证书授权中心发行的,能提供在Internet上进行身份验
23、证的一种权威性电子文档,人们可以在互联网交往中用它来证明自己的身份和识别对方的身份。 网络上的“居民身份证”,将公钥和个人身份绑定在一起。X.509标准数字证书的格式遵循X.509标准,X.509是由国际电信联盟(ITU-T)制定的数字证书标准。X.509共有三种版本,目前使用的X.509 Version3。证书授权中心证书授权中心(Certificate Authority,简称CA),是一个可信的第三方机构,它负责发放和作废数字证书,并提供证书作废列表以供查询。CA按照层次结构工作,这个层次叫做证书链,最初一级的CA称为根CA。二级CA根CA三级CA二级CA二级CA三级CA三级CA三级CA
24、证书注册中心证书注册中心(Registration Authority,简称RA)是处于注册用户和CA之间的机构,负责用户注册信息的记录和验证、密钥生成和密钥对归档、证书作废请求的管理。CA注册用户RA注册用户注册用户数字证书的生成(1)第一步用户通过软件或其他途径生成公私钥对,其中公钥要提交给RA进行注册,私钥自己保管。注册用户生成公私钥对公钥要提交给RA私钥自己保管数字证书的生成(2)第二步注册用户将自己的身份信息(名字、国家、联系方式)连同公钥一起生成证书请求,并将证书请求提交给RA。证书请求的格式为PKCS#10,证书请求一般是由应用程序向导生成的。数字证书的生成(3)第三步RA在收到注册用户的证书请求后,需要对注册用户的身份进行验证,主要验证有:1,确认注册用户的身份信息正确;2,确认注册用户拥有和证书请求相对应的私钥。如果验证通过,则RA将所有用户的信息提交给CA。数字证书的生成(4)第四步CA在收到证书请求后,为注册用户信息签名后,生成数字证书,并将证书的拷贝存放在证书目录中。SHA-1信息摘要RSACA的私钥数字签名123CA的数字签名54身份认证回到“公钥交换的问题”1,Alice如
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国申字阀数据监测研究报告
- (三模)广西2025届高中毕业班4月份适应性测试 语文试卷(含答案解析)
- 2025年中国锥柄气钻市场调查研究报告
- 阑尾炎病人护理教学查房
- 小学生规范站姿坐姿与着装指南
- 高考美术培训招生
- DB63T 2409-2025 高寒复杂地形下飞机人工增雨(雪)探测方案设计指南
- 焊接作业安全知识讲解
- 热处理基础知识
- 火电厂基础知识介绍
- 2025至2030年石榴养生酒项目投资价值分析报告
- 招投标综合实训心得
- 政府会计知到课后答案智慧树章节测试答案2025年春西安财经大学
- 七年级数学新北师大版(2024)下册第一章《整式的乘除》单元检测习题(含简单答案)
- DZ/T 0462.3-2023 矿产资源“三率”指标要求 第3部分:铁、锰、铬、钒、钛(正式版)
- 幼儿园红色小故事PPT:抗日小英雄王二小的故事
- 幼儿园大班数学口算练习题可打印
- 导向系统设计(课堂PPT)
- 软件测试(验收)大纲【精选文档】
- 转向架检修工艺(初稿)
- 七年级下册英语阅读和完型填空训练及答案
评论
0/150
提交评论