第5章 密钥分配与密钥管理.ppt
《第5章 密钥分配与密钥管理.ppt》由会员分享,可在线阅读,更多相关《第5章 密钥分配与密钥管理.ppt(124页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第第第5 5章章章章 密钥分配与密钥管理密钥分配与密钥管理密钥分配与密钥管理密钥分配与密钥管理郝艳华郝艳华漳州师范学院计算机科学与工程系漳州师范学院计算机科学与工程系12/27/202215.1 单钥加密体制的密钥分配单钥加密体制的密钥分配5.2 公钥加密体制的密钥管理公钥加密体制的密钥管理5.3 密钥托管密钥托管5.4 随机数的产生随机数的产生5.5 秘密分割秘密分割12/27/202225.1 单钥加密体制的密钥分配单钥加密体制的密钥分配5.1.1 密钥分配的基本方法密钥分配的基本方法两个用户(主机、进程、应用程序)在用单两个用户(主机、进程、应用程序)在用单钥密码体制进行保密通信时,首
2、先必须有一钥密码体制进行保密通信时,首先必须有一个共享的秘密密钥,而且为防止攻击者得到个共享的秘密密钥,而且为防止攻击者得到密钥,还必须时常更新密钥。因此,密钥,还必须时常更新密钥。因此,密码系密码系统的强度也依赖于密钥分配技术。统的强度也依赖于密钥分配技术。12/27/20223两个用户两个用户A和和B获得共享密钥的方法有以下几种:获得共享密钥的方法有以下几种:密钥由密钥由A选取并通过物理手段发送给选取并通过物理手段发送给B。密钥由第三方选取并通过物理手段发送给密钥由第三方选取并通过物理手段发送给A和和B。如果如果A、B事先已有一密钥,则其中一方选取新事先已有一密钥,则其中一方选取新密钥后,
3、用已有的密钥加密新密钥并发送给另密钥后,用已有的密钥加密新密钥并发送给另一方。一方。如果如果A和和B与第三方与第三方C分别有一保密信道,则分别有一保密信道,则C为为A、B选取密钥后,分别在两个保密信道上发选取密钥后,分别在两个保密信道上发送给送给A、B。12/27/20224前两种方法称为前两种方法称为人工发送人工发送。在通信网中,。在通信网中,若只有个别用户想进行保密通信,密钥的若只有个别用户想进行保密通信,密钥的人工发送还是可行的。然而如果所有用户人工发送还是可行的。然而如果所有用户都要求支持加密服务,则任意一对希望通都要求支持加密服务,则任意一对希望通信的用户都必须有一共享密钥。如果有信
4、的用户都必须有一共享密钥。如果有n个用户,则密钥数目为个用户,则密钥数目为n(n-1)/2。因此当因此当n很大时,密钥分配的代价非常大,密钥的很大时,密钥分配的代价非常大,密钥的人工发送是不可行的。人工发送是不可行的。12/27/20225第第3种方法,攻击者一旦获得一个密钥就可获取种方法,攻击者一旦获得一个密钥就可获取以后所有的密钥;而且用这种方法对所有用户分以后所有的密钥;而且用这种方法对所有用户分配初始密钥时,代价仍然很大。配初始密钥时,代价仍然很大。第第4种方法比较常用,其中的第三方通常是一个种方法比较常用,其中的第三方通常是一个负责为用户分配密钥的密钥分配中心。这时每一负责为用户分配
5、密钥的密钥分配中心。这时每一用户必须和密钥分配中心有一个共享密钥,称用户必须和密钥分配中心有一个共享密钥,称为为主密钥主密钥。通过主密钥分配给一对用户的密钥称为。通过主密钥分配给一对用户的密钥称为会话密钥会话密钥,用于这一对用户之间的保密通信。通,用于这一对用户之间的保密通信。通信完成后,会话密钥即被销毁。如上所述,如果信完成后,会话密钥即被销毁。如上所述,如果用户数为用户数为n,则会话密钥数为则会话密钥数为n(n-1)/2。但主密钥但主密钥数却只需数却只需n个,所以主密钥可通过物理手段发送。个,所以主密钥可通过物理手段发送。12/27/202265.1.2 一个实例一个实例假定两个用户假定两
6、个用户A、B分别与密钥分配中心分别与密钥分配中心KDC(key distribution center)有一个共有一个共享的主密钥享的主密钥KA和和KB,A希望与希望与B建立一建立一个共享的一次性会话密钥,可通过以下个共享的一次性会话密钥,可通过以下几步来完成:几步来完成:12/27/20227图图5.1 密钥分配实例密钥分配实例12/27/20228 A向向KDC发出会话密钥请求发出会话密钥请求。表示请求的。表示请求的消息由两个数据项组成,第消息由两个数据项组成,第1项是项是A和和B的的身份,第身份,第2项是这次业务的惟一识别符项是这次业务的惟一识别符N1,称称N1为一次性随机数,可以是时戳
7、、计为一次性随机数,可以是时戳、计数器或随机数。每次请求所用的数器或随机数。每次请求所用的N1都应不都应不同,且为防止假冒,应使敌手对同,且为防止假冒,应使敌手对N1难以猜难以猜测。因此用随机数作为这个识别符最为合测。因此用随机数作为这个识别符最为合适。适。12/27/20229 KDC为为A的请求发出应答的请求发出应答。应答是由。应答是由KA加密加密的消息,因此只有的消息,因此只有A才能成功地对这一消息解才能成功地对这一消息解密,并且密,并且A可相信这一消息的确是由可相信这一消息的确是由KDC 发出发出的。消息中包括的。消息中包括A希望得到的两项内容:希望得到的两项内容:一次性会话密钥一次性
8、会话密钥KS;A在在中发出的请求,包括一次性随机数中发出的请求,包括一次性随机数N1,目的是使目的是使A将收到的应答与发出的请求相比较,将收到的应答与发出的请求相比较,看是否匹配。看是否匹配。因此因此A能验证自己发出的请求在被能验证自己发出的请求在被KDC收到之收到之前,是否被他人篡改。而且前,是否被他人篡改。而且A还能根据一次性还能根据一次性随机数相信自己收到的应答不是重放的过去的随机数相信自己收到的应答不是重放的过去的应答。应答。12/27/202210 此外,消息中还有此外,消息中还有B希望得到的两项内容:希望得到的两项内容:一次性会话密钥一次性会话密钥KS;A的身份(例如的身份(例如A
9、的网络地址)的网络地址)IDA。这两项由这两项由KB加密,将由加密,将由A转发给转发给B,以建立以建立A、B之之间的连接并用于向间的连接并用于向B证明证明A的身份。的身份。A存储会话密钥,并向存储会话密钥,并向B转发转发EKBKSIDA。因为因为转发的是由转发的是由KB加密后的密文,所以转发过程不会加密后的密文,所以转发过程不会被窃听。被窃听。B收到后,可得会话密钥收到后,可得会话密钥KS,并从并从IDA可可知另一方是知另一方是A,而且还从而且还从EKB知道知道KS的确来自的确来自KDC。12/27/202211 这一步完成后,会话密钥就安全地分配给这一步完成后,会话密钥就安全地分配给了了A、
10、B。然而还需要继续以下两步工作:然而还需要继续以下两步工作:B用会话密钥用会话密钥KS加密另一个一次性随机数加密另一个一次性随机数N2,并将加密结果发送给并将加密结果发送给A。A以以f(N2)作为对作为对B的应答,其中的应答,其中f是对是对N2进进行某种变换(例如加行某种变换(例如加1)的函数,并将应答)的函数,并将应答用会话密钥加密后发送给用会话密钥加密后发送给B。这两步可使这两步可使B相信第相信第步收到的消息不是一步收到的消息不是一个重放。个重放。注意:注意:第第步就已完成密钥分配,第步就已完成密钥分配,第、两步结合第两步结合第步执行的是认证功能。步执行的是认证功能。12/27/20221
11、25.1.3 密钥的分层控制密钥的分层控制网络中如果用户数目非常多而且分布的地域非常广,一个网络中如果用户数目非常多而且分布的地域非常广,一个KDC就无法承担为用户分配密钥的重任。问题的解决方就无法承担为用户分配密钥的重任。问题的解决方法是使用多个法是使用多个KDC的分层结构。的分层结构。例如,在每个小范围例如,在每个小范围(如一个(如一个LAN或一个建筑物)内,都建立一个本地或一个建筑物)内,都建立一个本地KDC。同一范围的用户在进行保密通信时,由本地同一范围的用户在进行保密通信时,由本地KDC为他们为他们分配密钥。如果两个不同范围的用户想获得共享密钥,则分配密钥。如果两个不同范围的用户想获
12、得共享密钥,则可通过各自的本地可通过各自的本地KDC,而两个本地而两个本地KDC的沟通又需经的沟通又需经过一个全局过一个全局KDC。这样就建立了两层这样就建立了两层KDC。类似地,根类似地,根据网络中用户的数目及分布的地域,可建立据网络中用户的数目及分布的地域,可建立3层或多层层或多层KDC。分层结构可减少主密钥的分布,分层结构可减少主密钥的分布,因为大多数主密钥是在本因为大多数主密钥是在本地地KDC和本地用户之间共享。再者,分层结构还可将虚和本地用户之间共享。再者,分层结构还可将虚假假KDC的危害限制到一个局部区域。的危害限制到一个局部区域。12/27/2022135.1.4 会话密钥的有效
13、期会话密钥的有效期会话密钥更换得越频繁,系统的安全性就会话密钥更换得越频繁,系统的安全性就越高。越高。因为敌手即使获得一个会话密钥,因为敌手即使获得一个会话密钥,也只能获得很少的密文。也只能获得很少的密文。会话密钥更换得太频繁,又将延迟用户之会话密钥更换得太频繁,又将延迟用户之间的交换,同时还造成网络负担。间的交换,同时还造成网络负担。所以在决定会话密钥的有效期时,应权衡所以在决定会话密钥的有效期时,应权衡矛盾的两个方面。矛盾的两个方面。12/27/202214对面向连接的协议,在连接未建立前或断对面向连接的协议,在连接未建立前或断开时,会话密钥的有效期可以很长。开时,会话密钥的有效期可以很长
14、。而每而每次建立连接时,都应使用新的会话密钥。次建立连接时,都应使用新的会话密钥。如果逻辑连接的时间很长,则应定期更换如果逻辑连接的时间很长,则应定期更换会话密钥。会话密钥。无连接协议(如面向业务的协议),无法无连接协议(如面向业务的协议),无法明确地决定更换密钥的频率。明确地决定更换密钥的频率。为安全起见,为安全起见,用户每进行一次交换,都用新的会话密钥。用户每进行一次交换,都用新的会话密钥。然而这又失去了无连接协议主要的优势,然而这又失去了无连接协议主要的优势,即对每个业务都有最少的费用和最短的延即对每个业务都有最少的费用和最短的延迟。比较好的方案迟。比较好的方案是在某一固定周期内或是在某
15、一固定周期内或对一定数目的业务使用同一会话密钥。对一定数目的业务使用同一会话密钥。12/27/2022155.1.5 无中心的密钥控制无中心的密钥控制用密钥分配中心为用户分配密钥时,要用密钥分配中心为用户分配密钥时,要求所有用户都信任求所有用户都信任KDC,同时还要求对同时还要求对KDC加以保护。加以保护。如果密钥的分配是无中心的,则不必有如果密钥的分配是无中心的,则不必有以上两个要求。然而如果每个用户都能以上两个要求。然而如果每个用户都能和自己想与之建立联系的另一用户安全和自己想与之建立联系的另一用户安全地通信,则对有地通信,则对有n个用户的网络来说,主个用户的网络来说,主密钥应多达密钥应多
16、达n(n-1)/2个。当个。当n很大时,这很大时,这种方案无实用价值,但在整个网络的局种方案无实用价值,但在整个网络的局部范围却非常有用。部范围却非常有用。12/27/202216无中心的密钥分配时,两个用户无中心的密钥分配时,两个用户A和和B建立会建立会话密钥需经过以下话密钥需经过以下3步:步:A向向B发出建立会话密钥的请求和一个一次发出建立会话密钥的请求和一个一次性随机数性随机数N1。B用与用与A共享的主密钥共享的主密钥MKm对应答的消息加对应答的消息加密,并发送给密,并发送给A。应答的消息中有应答的消息中有B选取的选取的会话密钥、会话密钥、B的身份、的身份、f(N1)和另一个一次性和另一
17、个一次性随机数随机数N2。A使用新建立的会话密钥使用新建立的会话密钥KS对对f(N2)加密后加密后返回给返回给B。12/27/202217图图图图5.2 5.2 无中心的密钥分配无中心的密钥分配无中心的密钥分配无中心的密钥分配12/27/2022185.1.6 密钥的控制使用密钥的控制使用密钥可根据其不同用途分为密钥可根据其不同用途分为会话密钥会话密钥和和主密钥主密钥两种类型,会话密钥又称为两种类型,会话密钥又称为数据数据加密密钥加密密钥,主密钥又称为,主密钥又称为密钥加密密钥密钥加密密钥。由于密钥的用途不同,因此对密钥的使由于密钥的用途不同,因此对密钥的使用方式也需要加以某种控制。用方式也需
18、要加以某种控制。如果主密钥泄露了,则相应的会话密钥如果主密钥泄露了,则相应的会话密钥也将泄露,因此也将泄露,因此主密钥的安全性应高于主密钥的安全性应高于会话密钥的安全性会话密钥的安全性。一般在密钥分配中。一般在密钥分配中心以及终端系统中主密钥都是物理上安心以及终端系统中主密钥都是物理上安全的,如果把主密钥当作会话密钥注入全的,如果把主密钥当作会话密钥注入加密设备,那么其安全性则降低。加密设备,那么其安全性则降低。12/27/202219单钥体制中的密钥控制技术有以下两种。单钥体制中的密钥控制技术有以下两种。(1)密钥标签密钥标签用于用于DES的密钥控制,将的密钥控制,将DES的的64比特密比特
19、密钥中的钥中的8个校验位作为控制使用这一密钥个校验位作为控制使用这一密钥的标签。标签中各比特的含义为:的标签。标签中各比特的含义为:一个比特表示这个密钥是会话密钥还是主密一个比特表示这个密钥是会话密钥还是主密钥;钥;一个比特表示这个密钥是否能用于加密;一个比特表示这个密钥是否能用于加密;一个比特表示这个密钥是否能用于解密;一个比特表示这个密钥是否能用于解密;其他比特无特定含义,留待以后使用。其他比特无特定含义,留待以后使用。12/27/202220由于标签是在密钥之中,在分配密钥时,由于标签是在密钥之中,在分配密钥时,标签与密钥一起被标签与密钥一起被加密加密,因此可对标签起,因此可对标签起到保
20、护作用。到保护作用。本方案的缺点:本方案的缺点:标签的长度被限制为标签的长度被限制为8比特,限制了它的灵活比特,限制了它的灵活性和功能;性和功能;由于标签是以密文形式传送,只有解密后才由于标签是以密文形式传送,只有解密后才能使用,因而限制了对密钥使用的控制方式。能使用,因而限制了对密钥使用的控制方式。12/27/202221(2)控制矢量控制矢量这一方案比上一方案灵活。方案中对每一这一方案比上一方案灵活。方案中对每一会话密钥都指定了一个相应的控制矢量,会话密钥都指定了一个相应的控制矢量,控制矢量分为控制矢量分为若干字段若干字段,分别用于说明在,分别用于说明在不同情况下密钥是被允许使用还是不被允
21、不同情况下密钥是被允许使用还是不被允许使用,且控制矢量的许使用,且控制矢量的长度可变长度可变。控制矢量是在控制矢量是在KDC产生密钥时产生密钥时加在密钥之加在密钥之中中的。的。12/27/202222首先由一杂凑函数将控制矢量压缩到与加密密钥等首先由一杂凑函数将控制矢量压缩到与加密密钥等首先由一杂凑函数将控制矢量压缩到与加密密钥等首先由一杂凑函数将控制矢量压缩到与加密密钥等长,然后与主密钥异或后作为加密会话密钥的密钥,长,然后与主密钥异或后作为加密会话密钥的密钥,长,然后与主密钥异或后作为加密会话密钥的密钥,长,然后与主密钥异或后作为加密会话密钥的密钥,即即即即其中其中其中其中CVCV是控制矢
22、量,是控制矢量,是控制矢量,是控制矢量,h h是杂凑函数,是杂凑函数,是杂凑函数,是杂凑函数,KKmm是主密钥,是主密钥,是主密钥,是主密钥,KKS S是会话密钥。会话密钥的恢复过程表示为是会话密钥。会话密钥的恢复过程表示为是会话密钥。会话密钥的恢复过程表示为是会话密钥。会话密钥的恢复过程表示为:12/27/202223图图5.3 控制矢量的使用方式控制矢量的使用方式12/27/202224KDC在向用户发送会话密钥时,同时以明在向用户发送会话密钥时,同时以明文形式发送控制矢量。用户只有使用与文形式发送控制矢量。用户只有使用与KDC共享的主密钥以及共享的主密钥以及KDC发送来的控制发送来的控制
23、矢量才能恢复会话密钥,因此还必须保留矢量才能恢复会话密钥,因此还必须保留会话密钥和它的控制矢量之间的对应关系。会话密钥和它的控制矢量之间的对应关系。与使用与使用8比特的密钥标签相比,使用控制矢比特的密钥标签相比,使用控制矢量有两个优点量有两个优点:控制矢量的长度没有限制,因此可对密钥的使控制矢量的长度没有限制,因此可对密钥的使用施加任意复杂的控制用施加任意复杂的控制;控制矢量始终是以明文形式存在,因此可在任控制矢量始终是以明文形式存在,因此可在任一阶段对密钥的使用施加控制。一阶段对密钥的使用施加控制。12/27/2022255.2 公钥加密体制的密钥管理公钥加密体制的密钥管理前一节介绍了单钥密
24、码体制中的密钥分配前一节介绍了单钥密码体制中的密钥分配问题,而公钥加密的一个主要用途是分配问题,而公钥加密的一个主要用途是分配单钥密码体制使用的密钥。单钥密码体制使用的密钥。本节介绍两方面内容:本节介绍两方面内容:公钥密码体制所用的公开密钥的分配公钥密码体制所用的公开密钥的分配如何用公钥体制来分配单钥密码体制所需的密如何用公钥体制来分配单钥密码体制所需的密钥。钥。12/27/2022265.2.1 公钥的分配公钥的分配1.公开发布公开发布公开发布指用户将自己的公钥发给每一其他用户,公开发布指用户将自己的公钥发给每一其他用户,或向某一团体广播。例如或向某一团体广播。例如PGP(pretty go
25、od privacy)中采用了中采用了RSA算法,它的很多用户都是算法,它的很多用户都是将自己的公钥附加到消息上,然后发送到公开(公将自己的公钥附加到消息上,然后发送到公开(公共)区域,如因特网邮件列表。共)区域,如因特网邮件列表。这种方法虽然简单,但有一个非常大的缺点,即任这种方法虽然简单,但有一个非常大的缺点,即任何人都可伪造这种公开发布。如果某个用户假装是何人都可伪造这种公开发布。如果某个用户假装是用户用户A并以并以A的名义向另一用户发送或广播自己的的名义向另一用户发送或广播自己的公开钥,则在公开钥,则在A发现假冒者以前,这一假冒者可解发现假冒者以前,这一假冒者可解读所有意欲发向读所有意
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第5章 密钥分配与密钥管理 密钥 分配 管理
限制150内