《应用密码学》课件13-密钥管理_第1页
《应用密码学》课件13-密钥管理_第2页
《应用密码学》课件13-密钥管理_第3页
《应用密码学》课件13-密钥管理_第4页
《应用密码学》课件13-密钥管理_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1密钥管理本章主要内容密钥管理简介密钥协商密钥分配PKI及数字证书简介关于密钥管理密钥体制的安全应当只取决于密钥的安全,而不取决于对密码算法的保密。因此密钥管理是至关重要的。历史表明,从密钥管理的途径窃取秘密要比单纯的破译所花的代价要小得多。密钥管理就是在授权各方之间实现密钥关系的建立和维护的一整套技术和程序。密钥管理包括了密钥的产生、存储、分配、组织、使用、更换和销毁等一系列技术问题。对称密码体制的密钥管理和非对称密码体制的管理是完全不同的。45关于密钥管理使用前状态:密钥不能用于正常的密码操作。使用状态:密钥是可用的,并处于正常使用中。使用后状态:密钥不再正常使用,但为了某种目的对其进行离线访问是可行。过期状态:密钥不再使用,所有的密钥记录已被删除。密钥管理简介密钥生成密钥的大小与产生机制直接影响密码系统的安全,所以,对于一个密码体制,如何产生好的密钥是很关键的,密钥生成是密钥生命周期的基础阶段。

1)密钥的生成一般首先通过密钥生成器借助于某种噪声源产生具有较好统计分析特性的序列,以保障生成密钥的随机性和不可预测性,然后再对这些序列进行各种随机性检验以确保其具有较好的密码特性。

2)用户可以自己生成所需的密钥,也可以从可信中心或密钥管理中心申请,密钥长度要适中。

3)不同的密码体制,其密钥的具体生成方法一般是不相同的,与相应的密码体制或标准相联系。

ANSIX9.17

Ri=EDEK1,K2(Vi

EDEK1,K2(DTi)) Vi+1=EDEK1,K2(Ri

EDEK1,K2(DTi))密钥生成密钥管理简介密钥建立密钥的建立就是使密钥安全到达密钥使用的各实体对象,通常分为密钥分配和密钥协商密钥存储密钥的安全存储实际上是针对静态密钥的保护对静态密钥的保护常有两种方法:基于口令的软保护;文件形式或利用确定算法来生成密钥。基于硬件的物理保护;存入专门密码装置中(存储型、智能型)。密钥管理简介密钥使用利用密钥进行正常的密码操作,如加密、解密、签名等,通常情况下,密钥在有效期之内都可以使用。应注意使用环境对密钥的安全性的影响。密钥管理简介密钥备份:指密钥处于使用状态时的短期存储,为密钥的恢复提供密钥源,要求安全方式存储密钥,防止密钥泄露。密钥恢复:从备份或存档中获取密钥的过程称为密钥恢复。若密钥丧失但未被泄露,就可以用安全方式从密钥备份中恢复。密钥管理简介密钥存档:当密钥不再正常时,需要对其进行存档,以便在某种情况下特别需要时(如解决争议)能够对其进行检索。存档是指对过了有效期的密钥进行长期的离线保存,密钥的后运行阶段工作.密钥托管:为政府机构提供了实施法律授权下的监听功能.密钥管理简介密钥更新:在密钥有效期快结束时,如果需要继续使用该密钥,为保证密钥的安全性,该密钥需要由一个新的密钥来取代,这就是密钥更新。密钥更新可以通过再生密钥取代原有密钥的方式来实现。密钥撤销:若密钥丢失或在密钥过期之前,需要将它从正常使用的集合中删除。密钥销毁:对于不再需要使用的密钥,要将其所有复本销毁,而不能再出现。一般的层次化的密钥结构密钥分级:三级:对数据加密的密钥二级:对三级密钥加密的密钥一级:对二级密钥保护的密钥密钥管理方案中的最高级密钥,用于对二级密钥进行保护。主密钥的生存周期很长1用于保护初级密钥2不能以明文形式保存1用于加解密数据的密钥2初级通信密钥:一个密钥只使用一次,生存周期很短3初级文件密钥:与其所保护的文件有一样长的生存周期4初级密钥不能以明文形式保存密钥管理方案中的最高级密钥,用于对二级密钥进行保护。主密钥的生存周期很长密钥管理简介会话密钥(SessionKey)在一次通信或数据交换中,用户之间所使用的密钥,是由通信用户之间进行协商得到的。它一般是动态地、仅在需要进行会话数据加密时产生,并在使用完毕后立即进行清除掉的,也称为数据加密密钥(DataEncryptingKey)。密钥加密密钥(KeyEncryptingKey)一般是用来对传输的会话密钥进行加密时采用的密钥,又称为二级密钥(SecondaryKey)。密钥加密密钥所保护的对象是实际用来保护通信或文件数据的会话密钥。主密钥(MasterKey)对应于层次化密钥结构中的最高层次,它是对密钥加密密钥进行加密的密钥,主密钥应受到严格的保护。会话密钥更换得越频繁,系统的安全性就越高。因为敌手即使获得一个会话密钥,也只能获得很少的密文。但另一方面,会话密钥更换得太频繁,又将延迟用户之间的交换,同时还造成网络负担。所以在决定会话密钥的有效期时,应权衡矛盾的两个方面。PGP系统中的初级密钥、二级密钥和主密钥

密钥协商密钥协商是保密通信双方(或更多方)通过公开信道的通信来共同形成秘密密钥的过程。一个密钥协商方案中,密钥的值是某个函数值,其输入量由两个成员(或更多方)提供。密钥协商的结果是:参与协商的双方(或更多方)都将得到相同的密钥,同时,所得到的密钥对于其他任何方都是不可知的。DH密钥协商协议Diffie和Hellman离散对数设p为奇素数,对于整数g,1<g<p,使得g?≡1(modp)成立的最小正整数如果是p-1,则g就是模p的原根。离散对数问题已知g是模p的原根,对于集合G={gk,k=0,1,2,…p-1},给定的x,x为整数,计算y≡gxmodp是容易的,但对于给定的y∈G,x可以表示为x≡loggymodp,当p是一个大素数的时候,要计算x是困难的。求解x≡loggymodp的问题,称为离散对数问题。DH密钥协商协议Alice和Bob协定使用p=23以及g=5,Alice,Bob分别选择a=6,b=15,计算共享密钥k.(1)Alice选择一个秘密整数a=6,计算A=gamodp并发送给Bob。A=56mod23=8.(2)Bob选择一个秘密整数b=15,计算B=gbmodp并发送给Alice。B=515mod23=19.(3)Alice计算k=B

amodp

196mod23=2.(4)Bob计算k=A

bmodp

815mod23=2.用户C用户B用户A中间人攻击选择随机数x<p计算YA=gxmodp选择随机数y<p计算YB=gymodpYAYc计算K=Yc

y

=gyzmodp计算K=Yc

x

=gxzmodp选择随机数x<p计算Yc=gzmodpYB计算K=YB

z

=gyzmodpYc计算K=YA

z

=gxzmodp无密钥密钥分配A希望传递密钥K给B,随机选取素数P>K中间人攻击Ka,PKabKbAB

单钥系统的密钥分配方法两个用户(主机、进程、应用程序)在用单钥密码体制进行保密通信时,首先必须有一个共享的秘密密钥。两个用户A和B获得共享密钥的方法:①如果A、B事先已有一密钥,则其中一方选取新密钥后,用已有的密钥加密新密钥并发送给另一方。②如果A和B与第三方C分别有一保密信道,则C为A、B选取密钥后,分别在两个保密信道上发送给A、B。密钥分配1)密钥分级管理事先有的密钥是密钥加密密钥,密钥加密密钥的分配需要其他机制和体系完成;

2)直接用新分配的密钥Ks作为下次分配密钥的共享加密密钥,(攻击者获得一个密钥就可获取以后所有的密钥)C通常被称为KDC(密钥分配中心)密钥分配(1)无中心的密钥分配KAB为两个用户A和B的共享密钥加密密钥,A与B建立会话密钥Ks需经过以下3步:①A向B发出建立会话密钥的请求和一个一次性随机数N1.②B用与A共享的密钥KAB对应答的消息加密,并发送给A;应答的消息中有B选取的会话密钥、B的身份、f(N1)和另一个一次性随机数N2.③A使用新建立的会话密钥KS对f(N2)加密后返回给B.密钥分配检查Request、B的身份和f(N1)Request,N1TBTAAB检查f(N2)A和B共享密钥KABAKDCB共享密钥Ka共享密钥Kb2:EKa[Ks∥IDA∥IDB∥N1∥EKb[Ks∥IDA]]3:EKb[Ks∥IDA]//EKs[M]1:IDA∥IDB∥N1密钥分配(单向认证协议)KS:一次性会话密钥N1:随机数Ka,Kb:A与B和KDC的共享密钥①A→KDC:IDa‖IDb‖N1②KDC→A:EKa[KS‖IDb‖N1‖EKb[KS‖IDA]]③A→B:EKb[KS‖IDa]‖EKs[M](2)有中心的密钥分配(简化Kerberos协议)用户A与KDC有共享的密钥KA,用户B与KDC有共享的密钥KB;A与B建立会话密钥Ks,需要经过下列5个步骤:密钥分配(双向认证)密钥分配检查Request和N1Request,N1TBT2AB检查f(N1)KDCTAB检查A的身份T1检查f(N2)A和C共享密钥KAB和C共享密钥KB①A向KDC发出会话密钥请求:Request||N1

第1项是A和B的身份,第2项是这次业务的惟一识别符N1,称N1为一次性随机数,可以是时戳、计数器或随机数。密钥分配每次请求所用的N1都应不同,且为防止假冒,应使敌手对N1难以猜测②KDC为A的请求发出应答EKA(Ks||Request||N1||EKB(Ks||IDA||N1))消息中包括A希望得到的两项内容:一次性会话密钥KS;

A在①中发出的请求;随机数N1

消息中还有B希望得到的两项内容:一次性会话密钥KS;A的身份(例如A的网络地址)IDA。密钥分配这两项由KB加密,将由A转发给B,以建立A、B之间的连接并用于向B证明A的身份。应答是由KA加密的消息,因此只有A才能成功地对这一消息解密。A能验证自己发出的请求在被KDC收到之前,是否被他人篡改。而且A还能根据一次性随机数相信自己收到的应答不是重放的过去的应答。③A存储会话密钥,并向B转发EKB(KS‖IDA||N1).密钥分配B收到后,可得会话密钥KS,并从IDA可知另一方是A,而且还从EKB知道KS的确来自KDC转发的是由KB加密后的密文,所以转发过程不会被窃听④B用会话密钥KS加密另一个随机数N2,并将加密结果EKs(N2)发送给A.⑤A以f(N2)作为对B的应答,其中f是对N2进行某种变换的函数,并将应答用会话密钥加密后EKs(f(N2))发送给B。

密钥分配这两步可使B相信第③步收到的消息不是一个重放第③步就已完成密钥分配,第④、⑤两步结合第③步执行的是认证功能。网络中如果用户数目非常多而且分布的地域非常广,一个KDC就无法承担为用户分配密钥的重任。问题的解决方法是使用多个KDC的分层结构。同一范围的用户在进行保密通信时,由本地KDC为他们分配密钥。两个不同范围的用户想获得共享密钥,则可通过各自的本地KDC,而两个本地KDC的沟通又需经过一个全局KDC。密钥分配

公钥系统的密钥分配(1)利用公钥加密算法的密钥分配①A把自己的身份IDA和公钥证书发送给B。②B用A的公开钥PKA加密随机选取的会话密钥Ks,发送EPKA(Ks)给A。只有A能解读②中的加密消息,所以B发来的消息中N1的存在可使A相信对方的确是B。密钥分配密钥分配PKA,IDA,N1TBAB检查N1中人攻击ABIDAPKAksPKAAB中间人CIDAPKAIDAPKCksPKCksPKA具有保密性和认证的分配方法①A用B的公钥加密A的身份和一个一次性随机数N1后发送给B;②B解密得到N1,并用A的公钥加密N1和另外一个随机数N2发送给A;③A用B的公钥加密N2后发送给B;④A选择一个会话密钥Ks,用A的私钥加密后再用B的公钥加密,发送给B,B用A的公钥和B的私钥解密得Ks。中间人攻击1.在公钥体制中,每一用户U都有自己的公开钥PKU

和秘密钥SKU

。如果任意两个用户A、B按以下方式通信,A发给B消息(EPKB(m),A),B收到后,自动向A返回消息(EPKA(m),B)以通知A,B确实收到报文m,

1)问用户C怎样通过攻击手段获取报文m?

2)若通信格式变为:

A发给B消息:EPKB(ESKA(m),m,A)

B向A返回消息:EPKA(ESKB(m),m,B)

这时的安全性如何?作业AB中间人CMPKB(M),

CMPKB(M),

AMPKC(M),

CMPKA(M),

B第二种方案,采用了数字签名,中间人截获消息,没法伪造签名作业2采用DH密钥协商协议,素数q=97,Y=5A和B分别选择随机数a=36和b=58求A,B共享密钥K解:DH密钥协商,共享密钥K实际就等于K=Yab(mod97)=536*58(mod97)=596*21+72(mod97)=572(mod97)72=1001000(模重复平方或者平方剩余)52(mod97)=25252(mod97)=43432(mod97)=66*5(mod97)=30302(mod97)=27272(mod97)=50502(mod97)=75改进DH密钥协商协议SKA(A,B)SKB(B,A)45补充资料公钥基础设施PKI公钥证书、证书管理机构、证书管理系统、围绕证书服务的各种软硬件设备以及相应的法律基础共同组成公开密钥基础设施PKI。PKI是一种标准的密钥管理平台,它能够为所有网络应用透明地提供采用加密和数据签名等密码服务所必须的密钥和证书管理。美国是最早(1996)推动PKI建设的国家。1998年中国的电信行业建立了我国第一个行业CA,此后金融、工商、外贸、海关和一些省市也建立了自己的行业CA或地方CA。PKI基本组件证书库密钥服务器证书颁发机构CA注册认证机构RAPKI的逻辑结构PKI应用证书发布系统注册机构RA证书机构CA软硬件系统PKI策略数字证书

CA是PKI在实际应用中受信任的第三方实体CA是网络应用信任的起点CA可以向企业、个人、网络设备等需要表明和验证身份的实体颁发数字证书CertificateAuthority证书证书颁发机构(CA)RA是验证和注册实体实际信息的权威机构;

用于在证书申请过程中注册和核实数字证书申请者的身份;

是CA的重要组成部分。国密标准中规定的RA功能:

身份注册、名称指定信息审核、提交请求证书下载、传递密钥对注册权威机构(RA)RA注册用户使用用户CA公开服务CA中心信任体系结构对于一个小范围的系统,由CA兼管RA的职能也是可以的。但随着用户的增多,CA与RA应当职责分开。申请证书的方式:在线的:WEB浏览器方式离线的数字证书的生命周期密钥产生证书签发Bob密钥使用Bob证书检验密钥过期密钥更新证书管理8.证书响应7.证书请求4.注册建立请求5.注册建立结果6.注册结果3.注册表格提交2.注册表格应答终端实体RACA1.注册表格请求(一)证书注册与发布申请人提交证书请求;RA对证书请求进行审核;CA生成证书;下载并安装证书;证书发布.证书库9.证书发布(二)证书的存放使用IC卡存放直接存放在磁盘或自己的终端上USBKey证书库证书管理(三)证书撤销当条件(雇佣关系结束、证书中信息修改等)要求证书的有效期在证书结束日期之前终止;或者要求用户与私钥分离时(私钥可能以某种方式泄露),证书被撤销。2.证书撤销响应1.证书撤销请求2.证书撤销响应1.证书撤销请求RACA带外请求终端实体证书库3.撤销发布证书管理证书撤销列表发布者名字签名算法标识更新时间被撤销的证书的列表证书序列号撤销时间证书序列号撤销时间::签名证书撤销列表(CRL)会无限增加吗?证书管理(四)证书状态查询定期下载证书撤销列表(CRL);在线证书状态协议OCSP(OnlineCertificateStatusProtocol),其目的为了克服基于CRL的撤销方案的局限性,为证书状态查询提供即时的最新响应。OCSP使用证书序列号、CA名称和公开密钥的散列值作为关键字查询目标的证书。证书管理(五)证书验证在证书撤销列表(CRL)中查询确认该证书是否被CA撤销;检测证书拥有者是否为预期的用户;检查证书的有效期,确保该证书是否有效;检查该证书的预期用途是否符合CA在该证书中指定的所有策略限制;使用CA证书公钥和算法验证终端实体证书签名有效性。证书管理(六)证书的更新下列情况需更新最终实体证书原证书过期;一些属性的改变;实体要求发放新证书(如密钥可能泄露)

CA签名密钥更新证书管理PKI案例电子税务网上银行网上证券案例CA认证:中国金融认证中心中国金融认证中心(ChinaFinancialCertificationAuthority,简称CFCA),是由中国人民银行牵头,联合中国工商银行、中国农业银行、中国银行、中国建设银行、交通银行、中信实业银行、光大银行、招商银行、华夏银行、广东发展银行、深圳发展银行、民生银行、福建兴业银行、上海

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论