《《密钥管理》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《密钥管理》PPT课件.ppt(79页珍藏版)》请在三一办公上搜索。
1、第4章 密 钥 管 理,4.1 密钥管理的概念4.2 机密密钥分发技术4.3 公钥分发技术4.4 控制密钥使用的技术4.5 多个域的密钥管理4.6 密钥生命周期问题,4.1、密钥管理的概念,密 钥 管 理,何谓密钥管理?在特定的安全策略控制下,进行密钥的生成、存储、分发、删除、归档、恢复、审计以及使用等所有与密钥相关活动的总和。密钥管理的本质:一组技术和过程,它能够在授权方间提供密钥关系的建立和维护管理内容:域中系统用户的初始化密钥的生成、分发和安装控制密钥的使用密钥的更新、撤销和销毁密钥的存储、备份/恢复和存档,密 钥 分 类,对称密钥 对称密码系统中使用的相同的秘密密钥公钥和私钥 非对称密
2、码系统中使用的成对密钥,密钥管理要达到目标,在遇到如下威胁时,仍能保持密钥关系和密钥:危及秘密密钥的机密性(攻击机密性)危及秘密密钥或公钥的真实性(欺骗)危及密钥或公钥的未授权使用,简单密钥建立模式,点对点密钥分发问题(困境)N2问题中心化的密钥管理点对点机制利用KDC利用KTC,密钥管理:对称密钥 vs.公钥加密,4.2 机密密钥分发技术,密 钥 分 层,主密钥:不受“密码学”的保护。它们被手工分发或在一开始时建立,受程序上的控制以及物理或电子隔离的保护(最高层)加密密钥的密钥:用于传输或存储其他密钥的对称密钥或加密公钥,如保护会话密钥的密钥。数据密钥:用于对用户数据提供密钥操作(如加密、认
3、证)。会话密钥(短期)文件密钥(周期取决于文件)用于签名的私钥(长期的),高一层的密钥用来保护低一层的密钥层次越高,安全性要求也越高,按使用时间分类:长期密钥:包括主密钥、加密密钥的密钥、及有助于密钥协商的密钥多用于数据存储,或用于保护短期密钥短期密钥:包括:密钥建立协议中生成的共享密钥,及会话密钥多用于通信应用,密钥分配的基本方法,两个用户A,B在使用单钥体制(对称密钥)进行通信时,必须预先共享秘密密钥,并且应当时常更新,用户A和B共享密钥的方法主要有:A选取密钥并通过物理手段发送给B(派亲信“骑马送达”)第三方选取密钥并通过物理手段发送给A和BA,B事先已有一密钥,其中一方选取新密钥,用已
4、有密钥加密新密钥发送给另一方A和B分别与第三方C有一保密信道,C为A,B选取密钥,分别在两个保密信道上发送给A和B,密钥分配的基本方法,如果有n个用户,需要两两拥有共享密钥,一共需要n(n-1)/2的密钥(每个用户要管“99把各不相同”的钥匙!灾难!)采用第4中方法,只需要n个密钥(虽然也不少,但不用你管呀!),密钥的分层控制,用户数目很多并且分布地域很广,一个KDC无法承担,需要采用多个KDC的分层结构。本地KDC为本地用户分配密钥。不同区域内的KDC通过全局KDC沟通。,会话密钥的有效期,密钥更换越频繁,安全性越高。缺点是延迟用户的交互,造成网络负担。决定会话的有效期,应权衡利弊。面向连接
5、的协议,每次建立连接时应使用新的会话密钥。无连接的协议,无法明确确定更换密钥的频率,安全起见,每次交换都用新的密钥。经济的做法在一固定周期内对一定数目的业务使用同一会话密钥。,无中心的密钥控制,有KDC时,要求所有用户信任KDC,并且要求KDC加以保护(KDC有责任)。无KDC时没有这种限制,但是只适用于用户小的场合,无中心的密钥控制,用户A和B建立会话密钥的过程,密钥的控制使用,根据用途不同分为会话密钥(数据加密密钥)主密钥(密钥加密密钥),安全性高于会话密钥根据用途不同对密钥使用加以控制,单钥体制的密钥控制技术密钥标签,用于DES的密钥控制,8个校验位作为密钥标签1比特表示这个密钥是会话密
6、钥还是主密钥1比特表示这个密钥能否用于加密1比特表示这个密钥能否用于解密其余比特保留长度有限,限制了灵活性和功能标签以密文传送,只有解密后才能使用,限制了密钥使用的控制方式。,公钥的分配公开发布,用户将自己的公钥发给每一个其他用户方法简单,但没有认证性,因为任何人都可以伪造这种公开发布公钥的管理容易,但分发困难(张三发了!李四呢?),新密钥对再分发怎么办?,公钥的分发公用目录表,公用的公钥动态目录表,目录表的建立、维护以及公钥的分布由可信的实体和组织承担。管理员为每个用户都在目录表里建立一个目录,目录中包括两个数据项:一是用户名,二是用户的公开密钥。每一用户都亲自或以某种安全的认证通信在管理者
7、处为自己的公开密钥注册。用户可以随时替换自己的密钥。管理员定期公布或定期更新目录。用户可以通过电子手段访问目录。,公钥的分发公钥管理机构,公钥管理机构为用户建立维护动态的公钥目录。每个用户知道管理机构的公开钥。只有管理机构知道自己的秘密钥。,公钥管理机构分配公钥,有可能称为系统的瓶颈,目录容易受到敌手的串扰,公 钥 证 书,用户通过公钥证书交换各自公钥,无须与公钥管理机构联系公钥证书由证书管理机构CA(Certificate Authority)为用户建立。证书的形式为T-时间,PKA-A的公钥,IDAA的身份,SKCACA的私钥时戳T保证证书的新鲜性,防止重放旧证书。,证书的产生过程,用公钥
8、加密分发单钥密码体制的密钥,A,B,简单分配,易受到主动攻击,A,B,攻击者E,具有保密性和认证性的密钥分发,A,B,4.,4、公钥分发技术,3.4 离线服务器和证书的使用,公钥证书X.509证书PKI一种安全体系和框架,公 钥 证 书,目的:使一个实体的公钥可用于其他实体,并能验证公钥的真实性和有效性.是一个由数据部分和签名部分组成的数据结构数据部分:包括明文数据,最少包括一个公钥和一个参与方的标识符签名部分:证书颁发机构CA(Certification Authority)对数据部分的数字签名,以保证公钥的真实性用户通过公钥证书来互相交换自己的公钥,而无须与公钥管理机构联系公钥证书能以明文
9、的形式进行存储和分发,X.509证书,目前应用最广泛的证书格式是国际电信联盟ITU(International telecommunication Union)提出的X.509版本3格式。X.509标准最早于1988年颁发,此后又于1993年和1995年进行了两次修改Internet工程任务组(IETF)针对X.509在Internet环境的应用,颁发了一个作为X.509子集的RFC2459。从而使得X.509在Internet环境中得到广泛应用。,X.509证书格式,版本号:如v3序列号:由同一发行者(CA)发放的每个证书的序列号是唯一的签名算法识别符:签署证书所用的算法及相关参数.发行者名
10、称:指建立和签署证书的CA名称.有效期:包括证书有效期的起始时间和终止时间.主体名称:持有该证书的最终实体.,主体的公钥信息:包括主体的公开密钥、使用这一公开密钥算法的标识符及相关参数颁发者唯一识别符:当CA名称被重新用于其它实体时,则用这一识别符来唯一的识别发行者.(可选)主体唯一识别符:当主体的名称被重新用于其它实体时,则用这一识别符来唯一的识别主体.(可选)扩展域:包括一个或多个扩展的数据项,仅在第3版中使用签名:CA用自己的私钥对上述域的哈希值的数字签名.,任何一个用户,只要知道证书颁发机构CA的公钥,就能验证证书签名的合法性。若验证正确,则用户可相信该证书所携带的公钥是真实的,且该公
11、钥是证书所标识的那个实体的合法公钥。只要CA是可信的,公钥证书就是可信的.日常生活中使用证书的例子:汽车驾照:标识驾驶员的驾驶资格,公钥证书的好处,用户只要获得其他用户的证书,就可以获得其他用户的公钥用户只要获得CA的公钥,就可以安全地认证其他用户的公钥公钥证书为公钥的分发奠定了基础,成为公钥密码在大型网络系统中应用的关键技术电子政务、电子商务等大型网络应用系统都采用公钥证书技术,公钥证书的建立,如果所有用户都由同一CA为自己签署证书,则这一CA就必须取得所有用户的信任。用户证书除了能放在目录中以供他人访问外,还可以由用户直接发给其他用户。如果用户数量极多,则仅一个CA负责为用户签署证书是不现
12、实的,因为每一用户都必须以绝对安全的方式得到CA的公开密钥,以验证CA签署的证书。因此在用户数目极多的情况下,应有多个CA,每一CA仅为一部分用户签署证书。,X.509证书的获取,CA为用户产生的证书应有以下特征:(同一CA)其他任一用户只要得到CA的公开密钥,就能由此得到CA为该用户签署的公开密钥。除CA以外,任何其他人都不能以不被察觉的方式修改证书的内容。可直接从其他用户处获取,或从CA处获取,X.509证书的获取,设用户A已从证书颁发机构X1处获取了公钥证书,用户B已从证书颁发机构X2处获取了证书。如果A不知X2的公开密钥,他虽然能读取B的证书,但却无法验证X2的签字,因此B的证书对A来
13、说是没有用的。若两个CA X1和X2彼此间已经安全地交换了公开密钥,则A可通过以下过程获取B的公开秘钥:A从目录中获取X1签署的X2的证书,因A知道X1的公开密钥,所以能验证X2的证书,并从中得到X2的公开密钥。A再从目录中获取由X2签署的B的证书,并由X2的公开密钥对此验证,然后从中得到B的公开密钥。,X.509证书的获取,以上过程中,A是通过一个证书链来获取B的公开密钥,证书链可表示为:X1 X2 X2 B类似的,B能通过相反的证书链获取A的公开密钥:X2 X1 X1 AN个证书的证书链可表示为:X1 X2 X2 X3XNB,X.509证书的获取,X.509建议将所有CA以层次结构组织起来
14、。右图是X.509的CA层次结构的一个例子,其中的内部节点表示CA,叶节点表示用户。用户A可从目录中得到相应的证书以建立到B的证书链:XWWVVYYZZB并通过该证书链获取B的公开密钥。,X.509证书吊销列表,X.509认证业务,X.509定义了X.500目录向用户提供认证业务的一个框架,目录的作用是存放用户的公钥证书。X.509还定义了基于公钥证书的认证协议。由于X.509中定义的证书结构和认证协议已被广泛应用于S/MIME、IPSec、SSL/TLS以及SET等诸多应用过程,因此X.509已成为一个重要的标准。X.509的基础是公钥密码体制和数字签字,但其中未特别指明使用哪种密码体制(建
15、议使用RSA),也未特别指明数字签字中使用哪种杂凑函数。,PKI的概念,公钥基础设施(PKI)是指结合公钥密码体制建立的提供信息安全服务的基础设施。PKI并不是简单的一种技术,而是一种安全体系和框架。该体系在统一的安全认证标准和规范基础上提供在线身份认证,集成了CA认证、数字证书、数字签名等功能。,PKI的组成,认证机构(Certificate Authority,CA):是PKI的核心机构。核心功能是发放和管理数字证书。注册机构(Registry Authority,RA):作为CA和最终实体之间的中间实体,主要负责证书申请者的登记和初始鉴别 证书服务器:负责根据注册过程中提供的消息生成证书
16、的机器或服务证书库:是CA颁发证书和撤销证书的集中存放地。常用的实现方式是轻量级目录访问协议(LDAP)证书验证密钥备份及恢复时间服务器:用来发布可验证的时间戳,并对时间戳签名签名服务器:执行集中的签名和验证服务,CA,主要功能描述如下:接收验证最终用户数字证书的申请证书审批证书发放证书更新接收最终用户数字证书的查询、撤销产生和发布证书吊销列表(CRL)证书的归档密钥归档历史数据归档,仔细类比一下公安局的户籍管理!,CA,主要包括以下三个部分:注册服务器证书申请受理和审核机构认证机构服务器,证书的生成与分发,证书的使用,证书验证,证书的签名是有效的证书的起止日期是有效的证书只能用于最初创建它的
17、目的证书必须没有被撤销,PKI中的信任模型,建立一个管理全世界所有用户的全球性PKI是不现实的。比较可行的办法是各个国家都建立自己的PKI,一个国家之内在分别建立不同行业或不同地区的PKI。为了实现跨地区、跨行业,甚至跨国际的安全电子业务,这些不同的PKI之间的互联互通和相互信任是不可避免的。证书用户、证书主体、各个CA之间的证书认证关系系称为PKI的信任模型。已经提出的模型有树(层次)模型、森林模型等多种信任模型。,树(层次)模型,树(层次)模型是PKI的一种简单的信任模型。它比较适合具有层次结构的机构,如军队、垂直性行业、学校等。在树(层次)模型中,多个CA和最终用户构成一颗树。其中最高级
18、的一个CA为根,称为根CA,根CA是树型信任模型中的信任根源。其他CA根据其在树中的位置不同,而分别被称为中间CA和底层CA。证书的持证人(最终用户)为树的叶子。所有的CA和最终用户都遵循共同的行动准则。,一种简单的树(层次)模型,森林层次模型,在树形信任模型中,所有的CA和最终用户都遵循共同的行动准则。这对于具有层次结构的机构是可行的。但是,对于社会而言,要建立一个包容各行各业的树形,模型PKI是不现实的。于是出现了由多棵树组成的森林模型。对于森林模型,如果多棵树之间彼此没有联系、互不信任,那么分别属于不同树的最终用户之间的保密通信是无法进行的。这样,这些树便成了信任孤岛,为了避免这种情况,
19、应当在这些树之间建立某种信任关系,从而实现交叉认证。,交叉认证的方法:,各PKI的CA之间互相签发证书;由用户控制的交叉认证;由桥接CA控制的交叉认证。,森林模型与用户控制的交叉认证示例,由桥接CA控制的交叉认证模型,其他信任模型,一个实际的PKI由于历史发展的原因,其信任结构完全可能并不是一个标准的树型模型或者森林模型,而是一种更复杂的结构。但是,不管它的信任模型是什么,它必须能够为用户提供满意的认证服务。只要是用户满意的,它的存在就是合理的。,应用,安全Web通信单向认证双向认证安全电子邮件,四、控制密钥使用的技术,与密钥相关的信息,密钥拥有者有效期限密钥标识符预定的使用指定算法,密钥误用
20、的威胁,非对称密钥同时用于签名和挑战-响应实体认证密钥同时用于加密和挑战-响应实体认证对称密钥同时用于加密和消息认证因此,必须采用密钥分割,以避免多种目标中使用同一个密钥。,指不同用途的密钥在密码学上应被分割,控制对称密钥使用的技术,密钥标签/密钥变体标签比特连同密钥一起加密,以便将标签比特绑定到密钥上通过密钥变体来提供密钥分割,如:(K1,K2是K的变体)密钥公证简单密钥公证:(S是会话密钥)带偏移的密钥公证:(K1,K2)是公证密钥控制向量,控制向量,思想:将密钥标签的思想和简单密钥公证机制相结合将控制向量C以密码学形式绑定在S上,以阻止C的未授权使用。,五、多个域的密钥管理,基本概念,安
21、全域(域):实体所信任的单一授权机构所控制的一个系统(子系统)域中每个实体在其授权机构中所拥有的信任,起源于:指定实体的共享密钥或口令(对称的情况下)拥有授权机构的可信公钥(非对称的情况下)实体和授权机构间,或在同一域中的两个实体间,可建立安全通信信道(能确保真实性和机密性),两个域间的信任,Q:A和B之间如何建立信任关系?A:前提:TA与TB之间是信任的共享对称密钥KAB共享可信公钥,共享对称密钥KAB:(1)(2)(3A)(3B)(4)获取可信公钥:(1)(2)(3A)(4),交叉证书,由一个CA创建并用来验证另一个CA的公钥的证书上例中,TA创建了一个包含TB的身份识别和公钥的交叉证书,
22、涉及多证书颁发机构的信任模式,证书链:对应着CA信任模式图中的一条有向路径,该路径起始于一个初始可信CA节点,终止于签署验证公钥的证书的CA节点。例:若实体A拥有CA5的可信公钥,且希望验证由CA3签名的实体B的证书,则证书链为:(CA5CA4,CA4CA3),问题的提出分割域的信任,解决方式:采用信任模式,严格的分层信任模式中心化的信任模式多根树向后证书和通用的有向图信任模式,向后证书和通用的有向图信任模式(续),向后证书的分层模式,有向图信任模式,六、密钥生命周期问题,密钥的生命周期:密钥存在期间密钥的整个进行阶段。焦点:密钥生命周期中各阶段的保护需求主要讨论密钥的更新和存储阶段密钥管理生命周期:在密钥材料生命周期内的状态序列,密钥更新的保护需求,密钥材料应在密钥周期到期之前更新。通过适当的密钥建立协议和密钥分层,使用现有的密钥材料来建立新的密钥材料。密钥更新时,应避免对密钥材料的依赖性。如,不要用旧会话密钥来保护新会话密钥,以保证完善向前保密,密钥存储的保护需求,秘密密钥:保证机密性和真实性公钥:保证真实性签名私钥不需备份或归档,签名验证公钥需归档;加密公钥不需归档;解密私钥要求归档用于实体认证的密钥不需要备份或归档用于加密或数据源认证的所有秘密密钥,在其下保护的数据的保护周期内,应保持秘密性,并备份和归档。,密钥管理生命周期,