1、信息安全理论与技术11第第3 3章章 密钥管理密钥管理信息安全理论与技术1主要内容主要内容 对称密码体制的密钥管理 密钥分级 密钥生成 密钥的存储与备份 密钥分配 密钥的更新 密钥的终止和销毁 公钥密码体制的密钥管理 公钥的分配 数字证书 X.509证书 公钥基础设施PKI信息安全理论与技术1关于密钥管理关于密钥管理 密钥体制的安全应当只取决于密钥的安全,而不取决于对密码算法的保密。因此密钥管理是至关重要的。历史表明,从密钥管理的途径窃取秘密要比单纯的破译所花的代价要小得多。密钥管理包括了密钥的产生、存储、分配、组织、使用、更换和销毁等一系列技术问题。对称密码体制的密钥管理和非对称密码体制的管
2、理是完全不同的。信息安全理论与技术142024-3-314密钥管理概述密钥管理概述 密钥管理是一门综合性的技术,它除了技术性的因素之外,它密钥管理是一门综合性的技术,它除了技术性的因素之外,它还与人的因素,例如密钥的行政管理制度以及人员的素质密切相还与人的因素,例如密钥的行政管理制度以及人员的素质密切相关关。再好的技术,如果失去了必要的管理支持,终将使技术毫无。再好的技术,如果失去了必要的管理支持,终将使技术毫无意义。密码系统的安全强度总上游系统中最薄弱的环节决定的。意义。密码系统的安全强度总上游系统中最薄弱的环节决定的。但作为一个好的密钥管理系统应当尽量不依赖于人的因素,这不但作为一个好的密
3、钥管理系统应当尽量不依赖于人的因素,这不仅是为了提高密钥管理的自动化水平,最终目的还是为了提高系仅是为了提高密钥管理的自动化水平,最终目的还是为了提高系统的安全程度。统的安全程度。对密钥管理系统一般应满足:对密钥管理系统一般应满足:密钥难以被非法窃取;密钥难以被非法窃取;在一定条件下窃取了密钥也没有用;在一定条件下窃取了密钥也没有用;密钥的分配和更换过程在用户看来是透明的,用户不一定密钥的分配和更换过程在用户看来是透明的,用户不一定要亲自掌握密钥。要亲自掌握密钥。信息安全理论与技术13.1 对称密码体制的密钥管理对称密码体制的密钥管理 对称密码体制的加密钥等于解密钥,因此密钥的秘密性、真实性和
4、完整性必须同时保护。这就带来了密钥管理方面的复杂性。对于大型网络系统,由于所需要的密钥种类和数量都很多,因此密钥管理尤其困难。ANSI(美国国家标准学会,American National Standards Institute)颁布了ANSI X9.17金融机构密钥管理标准,为DES、AES等商业密码的应用提供了密钥管理指导。信息安全理论与技术166 为了适应密钥管理系统的要求,目前在现有的计为了适应密钥管理系统的要求,目前在现有的计算机网络系统和数据库系统的密钥管理系统的设计中,算机网络系统和数据库系统的密钥管理系统的设计中,大都采用了大都采用了。这种层次化的密钥结。这种层次化的密钥结构与
5、整个系统的密钥控制关系是对应的。按照密钥的构与整个系统的密钥控制关系是对应的。按照密钥的作用与类型及它们之间的相互控制关系,可以将不同作用与类型及它们之间的相互控制关系,可以将不同类型的密钥划分为类型的密钥划分为,从而组成一个层密钥系统,如下图所示。从而组成一个层密钥系统,如下图所示。密钥的结构密钥的结构信息安全理论与技术177f1 f2 fn1 fn Kn1 Kn 明文M 密文C 密钥协议1 密钥协议2 密钥协议n1 密钥协议n f1 f2 fn1 fn K1 Kn1 Kn 明文M K2 K1 K2 信息安全理论与技术188 在上图中,系统使用在上图中,系统使用一级密钥使用物理方法或其他的方
6、法进行保护),使用一级密钥使用物理方法或其他的方法进行保护),使用二二级密钥通过算法保护三级密钥级密钥通过算法保护三级密钥,以此类推,直到最后使用级,以此类推,直到最后使用级密钥通过算法保护明文数据。随着加密过程的进行,各层密密钥通过算法保护明文数据。随着加密过程的进行,各层密钥的内容动态变化,而这种变化的规则由钥的内容动态变化,而这种变化的规则由相应层次的密钥协相应层次的密钥协议控制议控制。初级密钥。所有上层密钥可称为密钥加密所有上层密钥可称为密钥加密密钥,它们的作用是保护数据加密密钥或作为其他更低层次密钥,它们的作用是保护数据加密密钥或作为其他更低层次密钥的加密密钥密钥的加密密钥。最上面一
7、层的密钥也叫主密钥,通常主密。最上面一层的密钥也叫主密钥,通常主密钥是整个密钥管理系统的核心,应该采用最安全的方式来进钥是整个密钥管理系统的核心,应该采用最安全的方式来进行保护。行保护。信息安全理论与技术19 。这样,大量的。这样,大量的数据可以通过少量动态产生的数据加密密钥(工作密钥)进行保数据可以通过少量动态产生的数据加密密钥(工作密钥)进行保护,而数据加密密钥又可以由更少量的、相对不变(使用期较长)护,而数据加密密钥又可以由更少量的、相对不变(使用期较长)的密钥加密密钥来保护。同理,的密钥加密密钥来保护。同理,在最后第二层的密钥加密密钥可在最后第二层的密钥加密密钥可以由主密钥进行保护,从
8、而保证了除了主密钥可以以明文的形式以由主密钥进行保护,从而保证了除了主密钥可以以明文的形式存储在有严密物理保护的主机密码器件中,其他密钥则以加密后存储在有严密物理保护的主机密码器件中,其他密钥则以加密后的密文形式存储,这样,就改善了密钥的安全性。的密文形式存储,这样,就改善了密钥的安全性。具体来说,层具体来说,层次化的密钥结构具有以下优点:次化的密钥结构具有以下优点:(1 1)安全性强:)安全性强:(2 2)进一步提高了密钥管理的自动化)进一步提高了密钥管理的自动化信息安全理论与技术1密钥分级密钥分级 密钥分为初级密钥、二级密钥和主密钥。初级密钥初级密钥 用于加解密数据的密钥 初级通信密钥:一
9、个密钥只使用一次,生存周期很短 初级文件密钥:与其所保护的文件有一样长的生存周期 初级密钥不能以明文形式保存 二级密钥二级密钥 用于保护初级密钥 不能以明文形式保存 主密钥主密钥 密钥管理方案中的最高级密钥,用于对二级密钥进行保护。主密钥的生存周期很长 信息安全理论与技术1密钥生成密钥生成 对密钥的基本要求对密钥的基本要求 具有良好的随机性,包括长周期性、非线性、统计意义上的等概率性以及不可预测性等。主密钥的产生主密钥的产生 用于加解密主密钥应当是高质量的真随机序列,常采用物理噪声源的方法来产生。二级密钥的产生二级密钥的产生 利用真随机数产生器芯片来产生二级密钥 使用主密钥和一个强的密码算法来
10、产生二级密钥 初级密钥的产生初级密钥的产生 把随机数视为受高级密钥(主密钥或者二级密钥)加密后的初级密钥。因此,随机数被解密后得到初级密钥。信息安全理论与技术1密钥的存储密钥的存储 安全可靠的存储介质是密钥安全存储的物质条件 安全严密的访问控制机制是密钥安全存储的管理条件 密钥安全存储的原则是不允许密钥以明文形式出现在密钥管理设备之外。信息安全理论与技术1密钥的存储形态密钥的存储形态 明文形态 密钥以明文形式存储;密文形态 密钥被加密后存储;分量形态 密钥以分量的形式存储,密钥分量不是密钥本身,而是用于产生密钥的部分参数,只有在所有密钥分量共同作用下才能产生出真正的密钥,而且只知道其中一个或部
11、分分量,无法求出其他分量。信息安全理论与技术1密钥的存储密钥的存储 主密钥的存储 以明文形式存储,存储器必须是高度安全的,不但物理上安全,而且逻辑上安全。通常是将其存储在专用密码装置中。二级密钥的存储 通常采用以高级密钥加密的形式存储二级密钥。初级密钥的存储 初级文件密钥一般采用密文形式存储,通常采用以二级文件密钥加密的形式存储初级文件密钥。初级会话密钥的存储空间是工作存储器,应当确保工作存储器的安全。信息安全理论与技术1密钥备份密钥备份 密钥的备份应当是异设备备份,甚至是异地备份。备份的密钥应当受到与存储密钥一样的保护 为了减少明文形态的密钥数量,一般采用高级密钥保护低级密钥的方式来进行备份
12、 对于高级密钥,不能以密文形态备份。为了进一步增强安全,可采用多个密钥分量的形态进行备份。密钥的备份应当方便恢复,密钥的恢复应当经过授权而且要遵循安全的规章制度。密钥的备份和恢复都要记录日志,并进行审计。信息安全理论与技术1密钥分配密钥分配 主密钥的分配主密钥的分配 采取最安全的分配方法。一般采用人工分配主密钥,由专职密钥分配人员分配并由专职安装人员妥善安装。二级密钥的分配二级密钥的分配 利用已经分配安装的主密钥对二级密钥进行加密保护,并利用计算机网络自动传输分配。KNCEKMKNCDKM网络传输KNC:二级密钥KM :主密钥信息安全理论与技术117 密钥分配技术一般需要解决两个方面的问题:密
13、钥分配技术一般需要解决两个方面的问题:为减轻负担,提为减轻负担,提高效率,引入自动密钥分配机制;为提高安全性,尽可能减少系统高效率,引入自动密钥分配机制;为提高安全性,尽可能减少系统中驻留的密钥量。中驻留的密钥量。(1)(1)密钥分配的基本方法密钥分配的基本方法 对于对于通信双方通信双方A A和和B B,密钥分配可以有以下几种方法:,密钥分配可以有以下几种方法:密钥由密钥由A A选定,然后通过物理方法安全地传递给选定,然后通过物理方法安全地传递给B B。密钥由可信赖的第三方密钥由可信赖的第三方C C选取并通过物理方法安全地发送给选取并通过物理方法安全地发送给A A和和B B。如果如果A A和和
14、B B事先已有一密钥,那么其中一方选取新密钥后,用已有事先已有一密钥,那么其中一方选取新密钥后,用已有的密钥加密新密钥发送给另一方。的密钥加密新密钥发送给另一方。如果如果A A和和B B都有一个到可信赖的第三方都有一个到可信赖的第三方C C的保密信道,那么的保密信道,那么C C就可以就可以为为A A和和B B选取密钥后安全地发送给选取密钥后安全地发送给A A和和B B。如果如果A A和和B B都在可信赖的第三方都在可信赖的第三方C C发布自己的公开密钥,那么他们用发布自己的公开密钥,那么他们用彼此的公开密钥进行保密通信。彼此的公开密钥进行保密通信。密钥分配方案密钥分配方案信息安全理论与技术11
15、818对称密码技术的密钥分配方案对称密码技术的密钥分配方案 (1 1)集中式密钥分配方案)集中式密钥分配方案 下图就是具有密钥分配中心的密钥分配方案。图中假定下图就是具有密钥分配中心的密钥分配方案。图中假定A A和和B B分别与分别与KDCKDC有一个共享的密钥有一个共享的密钥K Ka a和和K Kb b,A A希望与希望与B B建立一个逻辑连接,并且需要一次性建立一个逻辑连接,并且需要一次性会话密钥来保护经过这个连接传输的数据,具体过程如下:会话密钥来保护经过这个连接传输的数据,具体过程如下:AKDCAKDC:IDIDA AIDIDB BN1N1。A A向向KDCKDC发出会话密钥请求。发出
16、会话密钥请求。请求的消息由两请求的消息由两个数据项组成:个数据项组成:一是一是A A和和B B的身份的身份IDIDA A和和IDIDB B,二是本次业务的唯一标识符,二是本次业务的唯一标识符N1N1,每次请求所用的每次请求所用的N1N1都应不同,常用一都应不同,常用一个时间戳、一个计数器或一个随机数个时间戳、一个计数器或一个随机数作为这个标识符。为防止攻击者对作为这个标识符。为防止攻击者对N1N1的猜测,用随机数作为这个标识符最的猜测,用随机数作为这个标识符最合适。合适。信息安全理论与技术11919 KDCAKDCA:E EKaKaKsIDKsIDA AIDIDB BN1EN1EKbKb Ks
17、IDKsIDA A。KDCKDC对对A A的请求发的请求发出应答。应答是由加密出应答。应答是由加密K Ka a加密的信息,因此只有加密的信息,因此只有A A才能成功地对这一信息才能成功地对这一信息解密,并解密,并A A相信信息的确是由相信信息的确是由KDCKDC发出的。发出的。ABAB:E EKbKb KsIDKsIDA A。A A收到收到KDCKDC响应的信息后,同时将会话密响应的信息后,同时将会话密钥钥KsKs存储起来,同时将经过存储起来,同时将经过KDCKDC与与B B的共享密钥加密过的信息传送给的共享密钥加密过的信息传送给B B。B B收到后,得到会话密钥收到后,得到会话密钥KsKs,
18、并从,并从IDIDA A可知对方是可知对方是A A,而且还丛,而且还丛E EKbKb知道知道KsKs确确实来自实来自KDCKDC。由于。由于A A转发的是加密后密文,所以转发过程不会被窃听。转发的是加密后密文,所以转发过程不会被窃听。BABA:E EKsKs N2 N2。B B用会话密钥加密另一个随机数用会话密钥加密另一个随机数N2N2,并将加密,并将加密结果发送给结果发送给A A,并告诉,并告诉A A,B B当前是可以通信的。当前是可以通信的。ABAB:E EKsKsff(N2N2)。A A响应响应B B发送的信息发送的信息N2,N2,并对并对N2N2进行某种函数进行某种函数变换变换(如如f
19、 f函数函数),同时用会话密钥,同时用会话密钥KsKs进行加密,发送给进行加密,发送给B B。实际上在第步已经完成了密钥的分配实际上在第步已经完成了密钥的分配,第、两步结合第步执第、两步结合第步执行的是认证功能行的是认证功能,使使B B能够确认所收到的信息不是一个重放。能够确认所收到的信息不是一个重放。信息安全理论与技术12020(2 2)分布式密钥分配方案)分布式密钥分配方案 分布式密钥分配方案是指网络通信中各个通信方具有相同的地位分布式密钥分配方案是指网络通信中各个通信方具有相同的地位,它们它们之间的密钥分配取决于它们之间的协商之间的密钥分配取决于它们之间的协商,不手受何其他方的限制不手受
20、何其他方的限制。这种密。这种密钥分配方案要求有钥分配方案要求有n n个通信方的网络需要保存个通信方的网络需要保存n(n-1)/2n(n-1)/2个主密钥个主密钥,对于对于较大型的网络较大型的网络,这种方案是不适用的这种方案是不适用的,但是在一个小型网络或一个大型网但是在一个小型网络或一个大型网络的局部范围内络的局部范围内,这中方案还是有用的。这中方案还是有用的。如果采用分布式密钥分配方案,通信双方如果采用分布式密钥分配方案,通信双方A A和和B B建立会话密钥的过程包建立会话密钥的过程包括以下过程(见下页图所示):括以下过程(见下页图所示):分布式密钥分配方案分布式密钥分配方案 ABAB:ID
21、IDA AN1N1。A A向向B B发出一个要求会话密钥的请求,内容包括发出一个要求会话密钥的请求,内容包括A A的标识符的标识符IDIDA A和一个一次性随机数和一个一次性随机数N1N1,告知,告知A A希望与希望与B B通信,并请通信,并请B B产生一个产生一个会话密钥用于安全通信。会话密钥用于安全通信。信息安全理论与技术12121 ABAB:IDIDA AN1N1。A A向向B B发出一个要求会话密钥的请求,内容发出一个要求会话密钥的请求,内容包括包括A A的标识符的标识符IDIDA A和一个一次性随机数和一个一次性随机数N1N1,告知,告知A A希望与希望与B B通信,并通信,并请请B
22、 B产生一个会话密钥用于安全通信。产生一个会话密钥用于安全通信。BABA:E EMKmMKm KsIDKsIDA AIDIDB Bff(N1N1)N2N2。B B使用与使用与A A共享的共享的主密钥主密钥MKmMKm对应答的信息进行加密并发送给对应答的信息进行加密并发送给A A。应答的信息包括。应答的信息包括B B产产生的会话密钥生的会话密钥KsKs,A A的标识符的标识符IDIDA A、B B的标识符的标识符IDIDB B、f f(N1N1)和一个一)和一个一次性随机数次性随机数N2N2。ABAB:E EKsKsff(N2N2)。A A使用使用B B产生的会话密钥产生的会话密钥KsKs对对f
23、 f(N2N2)进行加密,并发送给进行加密,并发送给B B。信息安全理论与技术1利用公钥密码体制来分配密钥利用公钥密码体制来分配密钥 A向B发送自己产生的公钥和A的身份;B收到消息后,产生会话密钥Ks,用公钥加 密后传送给A;A用私钥解密后得到Ks。可能的问题:冒充信息安全理论与技术1ABIDA PUAksPUAAB中间人 CIDA PUAIDA PUCksPUCksPUA信息安全理论与技术1具有保密性和认证的分配方法具有保密性和认证的分配方法 A用B的公钥加密A的身份和一个一次性随机数N1后发送给B;B解密得到N1,并用A的公钥加密N1和另外一个随机数N2发送给A;A用B的公钥加密N2后发送
24、给B;A选择一个会话密钥Ks,用A的私钥加密后再用B的公钥加密,发送给B,B用A的公钥和B的私钥解密得Ks。信息安全理论与技术1密钥的更新密钥的更新 主密钥的更新主密钥的更新 更新时必须重新安装,安全要求与初次安装一样 主密钥的更新将要求受其保护的二级密钥和初级密钥都要更新 二级密钥的更新二级密钥的更新 重新产生二级密钥并且妥善安装 受其保护的初级密钥要更新 初级密钥的更新初级密钥的更新 初级会话密钥采用“一次一密”的方式工作,所以更新是非常容易的。初级文件密钥更新要麻烦的多,将原来的密文文件解密并且用新的初级文件密钥重新加密。信息安全理论与技术1密钥的终止和销毁密钥的终止和销毁 终止使用的密
25、钥并不马上销毁,而需要保留一段时间。这是为了确保受其保护的其他密钥和数据得以妥善处理。只要密钥尚未销毁,就应该妥善保护。密钥销毁要彻底清除密钥的一切存储形态和相关信息,使重复这一密钥变得不可能。值得注意的是,要采用妥善的清除存储器的方法,对于磁存储器,简单的删除、清零或写“1”都是不安全的。信息安全理论与技术12024-3-31274.密钥托管技术密钥托管技术(选进)(选进)密钥托管技术简密钥托管技术简介介 。其目的是政府机关希望在需要时可通过密钥托管提。其目的是政府机关希望在需要时可通过密钥托管提供(解密)一些特定信息,在用户的密钥丢失或损坏的情况供(解密)一些特定信息,在用户的密钥丢失或损
26、坏的情况下可通过密钥托管技术恢复出自己的密钥。密钥托管技术的下可通过密钥托管技术恢复出自己的密钥。密钥托管技术的实现手段通常是把加密的数据和数据恢复密钥联系起来,数实现手段通常是把加密的数据和数据恢复密钥联系起来,数据恢复密钥不一定是直接解密的密钥,但由它可以得到解密据恢复密钥不一定是直接解密的密钥,但由它可以得到解密密钥。密钥。一个密钥也一个密钥也有可能被折分成多个分量,分别由多个委托人持有。有可能被折分成多个分量,分别由多个委托人持有。信息安全理论与技术12024-3-3128 自从这种技术出现以来,许多人对此自从这种技术出现以来,许多人对此颇有争议颇有争议,他们认为,他们认为密钥托管技术
27、侵犯个人隐私。密钥托管技术侵犯个人隐私。尽管如此,由于这种密钥备用与恢复手段不仅对政府机关尽管如此,由于这种密钥备用与恢复手段不仅对政府机关有用,也对用户自己有用,为此许多国家都制定了相关的法有用,也对用户自己有用,为此许多国家都制定了相关的法律法规。律法规。美国政府美国政府19931993年年4 4月颁布了月颁布了EESEES标准(标准(Escrow Escrow Encryption Standard,Encryption Standard,托管加密标准),该标准体现了一种托管加密标准),该标准体现了一种新思想,即对密钥实行法定托管代理的机制新思想,即对密钥实行法定托管代理的机制。该标准使
28、用的托管加密技术不仅提供了加密功能,同时该标准使用的托管加密技术不仅提供了加密功能,同时也使政府可以在实施法律许可下的监听(也使政府可以在实施法律许可下的监听(如果向法院提供的如果向法院提供的证据表明,密码使用者是利用密码在进行危及国家安全和违证据表明,密码使用者是利用密码在进行危及国家安全和违反法律规定的事,经过法院许可,政府可以从托管代理机构反法律规定的事,经过法院许可,政府可以从托管代理机构取来密钥参数,经过合成运算,就可以直接侦听通信。取来密钥参数,经过合成运算,就可以直接侦听通信。)。)。信息安全理论与技术12024-3-3129 该标准的加密算法使用的是该标准的加密算法使用的是Sk
29、ipjackSkipjack。其后(。其后(19941994年年2 2月),美国政府进一步改进提出了月),美国政府进一步改进提出了(Key Escrow StandardKey Escrow Standard)政策,希望用这种办法加强政府)政策,希望用这种办法加强政府对密码使用的调控管理。对密码使用的调控管理。目前,目前,在美国有许多组织都参加了在美国有许多组织都参加了KESKES和和EESEES的开发工的开发工作,系统的开发者是司法部门(作,系统的开发者是司法部门(DOJDOJ),国家标准技术研),国家标准技术研究所(究所(NISTNIST)和基金自动化系统分部对初始的托管()和基金自动化系
30、统分部对初始的托管(EscrowEscrow)代理都进行了研究)代理都进行了研究,国家安全局(,国家安全局(NSANSA)负责)负责KESKES产品的生产,联邦调查局(产品的生产,联邦调查局(FBIFBI)被指定为最初的合法性)被指定为最初的合法性强制用户。强制用户。信息安全理论与技术12024-3-3130 该技术包括两个主要的核心内容:该技术包括两个主要的核心内容:(1 1)SkipjackSkipjack加密算法加密算法 是由是由NSANSA设计的,用于加解密用户之间通信的信息。它是设计的,用于加解密用户之间通信的信息。它是一个对称密码分组加密算法,密钥长为一个对称密码分组加密算法,密钥
31、长为80bits80bits,输入和输出分,输入和输出分组长度均为组长度均为64bits64bits。该算法的实现方式采用供该算法的实现方式采用供DESDES使用的联邦使用的联邦信息处理标准(信息处理标准(FIPS PUB81FIPS PUB81和和FIPS PUB81FIPS PUB81)中定义的)中定义的4 4种实现种实现方式。方式。这这4 4种实现方式为:电码本(种实现方式为:电码本(ECBECB)、密码分组链接)、密码分组链接(CBCCBC)、)、6464比特输出反馈(比特输出反馈(OFBOFB)和)和1 1、8 8、1616、3232或或6464比特密比特密码反馈(码反馈(CFBCF
32、B)模式。)模式。信息安全理论与技术12024-3-3131。据密码专家们推算,如果采用价。据密码专家们推算,如果采用价值一百万美元的机器攻破值一百万美元的机器攻破5656比特的密钥需要比特的密钥需要3.53.5小时,而攻破小时,而攻破8080比特的密钥则需要比特的密钥则需要20002000年;如果采用价值十亿美元的机器攻破年;如果采用价值十亿美元的机器攻破5656比特的密钥需要比特的密钥需要1313秒,而攻破秒,而攻破8080比特的密钥则需要比特的密钥则需要6.76.7年。虽然年。虽然一些密码学家认为一些密码学家认为SkipjackSkipjack有陷门,但对目前任何已知的攻击方有陷门,但对
33、目前任何已知的攻击方法还不存在任何风险,该算法可以在不影响政府合法监视的环境法还不存在任何风险,该算法可以在不影响政府合法监视的环境下为保密通信提供加密工具。下为保密通信提供加密工具。(2 2)LEAFLEAF(Law Enforcement Access FieldLaw Enforcement Access Field,法律实施访问,法律实施访问域)域)通过这个访问域,法律实施部门可以在法律授权的情况下,通过这个访问域,法律实施部门可以在法律授权的情况下,实现对用户之间通信的监听(解密或无密钥)。这也看成是一个实现对用户之间通信的监听(解密或无密钥)。这也看成是一个“后门后门”。信息安全理
34、论与技术12024-3-3132密钥托管技术的具体实施密钥托管技术的具体实施 该密钥托管技术具体实施时有该密钥托管技术具体实施时有3 3个主要环节:生产托管个主要环节:生产托管ClipperClipper芯片、用芯片加密通信和无密钥存取。芯片、用芯片加密通信和无密钥存取。(1 1)生产托管生产托管ClipperClipper芯片芯片 Clipper Clipper芯片主要包含:芯片主要包含:SkipjackSkipjack加密算法、加密算法、8080比特的族比特的族密钥密钥KFKF(Family KeyFamily Key,同一芯片的族密钥相同)、芯片单元,同一芯片的族密钥相同)、芯片单元标识
35、符标识符UIDUID(Unique IdentifierUnique Identifier)、)、8080比特的芯片单元密钥比特的芯片单元密钥KU(Unique KeyKU(Unique Key,由两个,由两个8080比特的芯片单元密钥分量比特的芯片单元密钥分量(KU1(KU1,KU2)KU2)异或而成)和控制软件。异或而成)和控制软件。这些内容都是固化在这些内容都是固化在ClipperClipper芯芯片上。片上。信息安全理论与技术12024-3-3133 (2 2)用芯片加密通信用芯片加密通信 通信双方为了通信,都必须有一个装有通信双方为了通信,都必须有一个装有ClipperClipper
36、芯片的安芯片的安全防窜扰设备,该设备主要实现建立安全信道所需的协议,全防窜扰设备,该设备主要实现建立安全信道所需的协议,包括包括协商或分配协商或分配用于加密通信的用于加密通信的8080比特秘密会话密钥比特秘密会话密钥KSKS。(3 3)无密钥存取)无密钥存取 在需要对加密的通信进行解密监控时(即在无密钥且合在需要对加密的通信进行解密监控时(即在无密钥且合法的情况下),可通过一个安装好的同样的法的情况下),可通过一个安装好的同样的密码算法、族密密码算法、族密钥钥KFKF和密钥加密密钥和密钥加密密钥K K的解密设备的解密设备来实现。由于被监控的通信来实现。由于被监控的通信双方使用相同的会话密钥,解
37、密设备不需要都取出通信双方双方使用相同的会话密钥,解密设备不需要都取出通信双方的的LEAFLEAF及芯片的单元密钥,而只需取出被监听一方的及芯片的单元密钥,而只需取出被监听一方的LEAFLEAF及及芯片的单元密钥。芯片的单元密钥。信息安全理论与技术12024-3-3134 密钥托管是具有备份解密密钥的加密技术,它允许获得授权者(包括用户、密钥托管是具有备份解密密钥的加密技术,它允许获得授权者(包括用户、民间组织和政府机构)在特定的条件下,借助于一个以上持有数据恢复密钥可信民间组织和政府机构)在特定的条件下,借助于一个以上持有数据恢复密钥可信赖的委托人的支持来解密密文。赖的委托人的支持来解密密文
38、。所谓数据恢复密钥,它不同于常用的加密、解密密钥,它只是为确定数据加所谓数据恢复密钥,它不同于常用的加密、解密密钥,它只是为确定数据加密密/解密提供了一种方法。而所谓密钥托管就是指存储这些数据恢复密钥的方案。解密提供了一种方法。而所谓密钥托管就是指存储这些数据恢复密钥的方案。密钥托管在逻辑上分为密钥托管在逻辑上分为3 3个主要的模块(如图个主要的模块(如图9-39-3所示):所示):USCUSC(User User Security ComponentSecurity Component,)、)、KECKEC(Key Escrow ComponentKey Escrow Component,)
39、和)和DRCDRC(Data Recovery ComponentData Recovery Component,)。这些逻辑模块是)。这些逻辑模块是密切相关的,对其中的一个设计将影响着其他模块。密切相关的,对其中的一个设计将影响着其他模块。密钥托管系统的组成密钥托管系统的组成 信息安全理论与技术12024-3-3135 下图所示的是这几个模块的相互关系:下图所示的是这几个模块的相互关系:USCUSC用密钥用密钥K K加密明文,并且在传送的加密明文,并且在传送的同时传送一个数据恢复域同时传送一个数据恢复域DRFDRF(Data Recovery FieldData Recovery Field
40、),),DRCDRC则从则从KECKEC提供的和提供的和DRFDRF中包含的信息中恢复出密钥中包含的信息中恢复出密钥K K来解密密文。来解密密文。信息安全理论与技术12024-3-31361)USC1)USC(User Security ComponentUser Security Component,用户安全模块),用户安全模块)USC USC由软件、硬件组成(一般情况下,硬件比软件安由软件、硬件组成(一般情况下,硬件比软件安全、不易发生窜扰),提供数据加密全、不易发生窜扰),提供数据加密/解密的能力,执行解密的能力,执行支持数据恢复的操作,同时也支持密钥托管。这种支持体支持数据恢复的操作,
41、同时也支持密钥托管。这种支持体现在将数据恢复域(现在将数据恢复域(DRFDRF)附加到数据上。)附加到数据上。USCUSC的功能表现在以下几个方面:的功能表现在以下几个方面:(1 1)提供具有数据加解密能力的算法及支持密钥托管提供具有数据加解密能力的算法及支持密钥托管功能的硬件或相关软件功能的硬件或相关软件。(2 2)提供通信提供通信(包括电话、电子邮件及其他类型的通(包括电话、电子邮件及其他类型的通信,由相关部门在法律许可的条件下对通信的监听后并执行信,由相关部门在法律许可的条件下对通信的监听后并执行对突发事件的解密)和对突发事件的解密)和数据存储的密钥托管数据存储的密钥托管。信息安全理论与
42、技术12024-3-3137 (3 3)(包括用户或(包括用户或USCUSC的识别符、的识别符、密钥的识别符、密钥的识别符、KECKEC或托管代理机构的识别符)或托管代理机构的识别符)和密钥和密钥(包括属(包括属于芯片单元密钥于芯片单元密钥KECKEC所使用的全局系统密钥,密钥还可以是公钥所使用的全局系统密钥,密钥还可以是公钥或私钥,私钥的备份以托管的方式由托管机构托管)。或私钥,私钥的备份以托管的方式由托管机构托管)。当用密钥当用密钥K K加密时,加密时,USCUSC必须将密文和密钥与一个或多个数必须将密文和密钥与一个或多个数据恢复密钥建立起联系,据恢复密钥建立起联系,比如在加密数据上加一个
43、比如在加密数据上加一个DRFDRF,以建立,以建立用户(收发双方)托管代理机构和密钥用户(收发双方)托管代理机构和密钥K K的密钥联系。的密钥联系。DRFDRF一般一般由一个或多个数据恢复密钥(如由一个或多个数据恢复密钥(如KECKEC的主密钥、产品密钥、收发的主密钥、产品密钥、收发双方的公钥等)加密的双方的公钥等)加密的K K组成。组成。此外,此外,DRFDRF还包括一些识别符还包括一些识别符(用于标识数据恢复密钥、托管代理机构或(用于标识数据恢复密钥、托管代理机构或KECKEC、加密算法及运、加密算法及运行方式、行方式、DRFDRF的产生方法等)和托管认证符(用于验证的产生方法等)和托管认
44、证符(用于验证DRFDRF的完的完整性)。整性)。信息安全理论与技术12024-3-31382)2)KECKEC(Key Escrow ComponentKey Escrow Component,密钥托管模块),密钥托管模块)可以作为公钥证书密钥管理系统的组成部分,也可以作为通可以作为公钥证书密钥管理系统的组成部分,也可以作为通用密钥管理的基础部分。它由密钥管理机构控制,主要用于向用密钥管理的基础部分。它由密钥管理机构控制,主要用于向DRCDRC提供所需的数据和服务,管理着数据恢复密钥的存储、传送提供所需的数据和服务,管理着数据恢复密钥的存储、传送和使用。和使用。数据恢复密钥主要用于生成数据加
45、密密钥,因此在使用数据恢复密钥主要用于生成数据加密密钥,因此在使用托管密码加密时,所有的托管加密数据都应与被托管的数据恢复托管密码加密时,所有的托管加密数据都应与被托管的数据恢复密钥联系起来。密钥联系起来。数据恢复密钥主要由以下内容组成:数据恢复密钥主要由以下内容组成:(1 1)密钥选项:包括)密钥选项:包括(由会话密钥和文件加密密钥组成,可(由会话密钥和文件加密密钥组成,可以由以由KDCKDC产生、分配和托管)、产品密钥(每一个产生、分配和托管)、产品密钥(每一个USCUSC只有惟一的产品密钥)、只有惟一的产品密钥)、(用于建立数据加密密钥的公钥和私钥,(用于建立数据加密密钥的公钥和私钥,K
46、ECKEC可以担任用户的公钥证书机可以担任用户的公钥证书机构,为用户发放公钥数字证书)、构,为用户发放公钥数字证书)、(与(与KECKEC相关,可由多个相关,可由多个USCUSC共享)。共享)。信息安全理论与技术12024-3-3139 (2 2)密钥分割密钥分割:。在密钥恢复时,就需要全部密钥托管机构参与或采用。在密钥恢复时,就需要全部密钥托管机构参与或采用。密钥分割应保证所有托管机构或其中一些联合起来能恢复数。密钥分割应保证所有托管机构或其中一些联合起来能恢复数据的密钥恢复。据的密钥恢复。(3 3)密钥的产生和分配密钥的产生和分配:。USCUSC产生的密产生的密钥可使用可验证的密钥分割方案
47、分割并托管,使得托管代理机构在不知数据恢复钥可使用可验证的密钥分割方案分割并托管,使得托管代理机构在不知数据恢复密钥的情况下验证自己所托管的密钥分量是否有效。密钥的情况下验证自己所托管的密钥分量是否有效。密钥的产生应使得用户不能够在被托管的密钥中隐藏另一密钥。密钥的产生应使得用户不能够在被托管的密钥中隐藏另一密钥。(4 4)密钥托管时间密钥托管时间:。假如托管的是用户的私钥,则可在将相应的公钥加入到公钥。假如托管的是用户的私钥,则可在将相应的公钥加入到公钥基础设施并发放公钥证书时进行托管。基础设施并发放公钥证书时进行托管。USCUSC只能把经托管机构签署了公钥证书的只能把经托管机构签署了公钥证
48、书的那些用户发送已加密的数据。那些用户发送已加密的数据。信息安全理论与技术12024-3-3140 KECKEC在向在向DRCDRC提供诸如托管的密钥等服务时,服务包括如下部分:提供诸如托管的密钥等服务时,服务包括如下部分:(1 1)授权过程:)授权过程:对操作或使用对操作或使用DRCDRC的用户进行身份认证和对访问加密数据的用户进行身份认证和对访问加密数据的授权证明的授权证明。(2 2)传送数据恢复密钥(主密钥不提供)传送数据恢复密钥(主密钥不提供):如果数据恢复密钥是会话密钥如果数据恢复密钥是会话密钥或产品密钥,或产品密钥,KECKEC向向DRCDRC直接传送数据恢复密钥直接传送数据恢复密
49、钥。密钥传送时和有效期一起传送,。密钥传送时和有效期一起传送,有效期过后,密钥将被自动销毁。有效期过后,密钥将被自动销毁。(5 5):某些系统可能会允许数据恢复密钥,但只能按规则:某些系统可能会允许数据恢复密钥,但只能按规则进行。进行。(6 6):某些系统托管的是密钥的一部分,在数据:某些系统托管的是密钥的一部分,在数据恢复密钥时,未托管的部分可使用穷举搜索法来确定。恢复密钥时,未托管的部分可使用穷举搜索法来确定。(7 7):在线或不在线都可以存储密钥。:在线或不在线都可以存储密钥。信息安全理论与技术12024-3-3141 (3 3)传送派生密钥:)传送派生密钥:。比如受时间限制的密钥,被加
50、密的数据仅能在一个特定的有效时间段内。比如受时间限制的密钥,被加密的数据仅能在一个特定的有效时间段内被解密。被解密。(4 4)解密密钥:)解密密钥:如果在如果在DRFDRF中使用主密钥加密数据加密密钥时,中使用主密钥加密数据加密密钥时,KECKEC只向只向DRCDRC发送解密密钥,而不发送主密钥发送解密密钥,而不发送主密钥。(5 5)执行门限解密:)执行门限解密:。(6 6)数据传输:)数据传输:。此外,此外,KECKEC还应对托管的密钥提供保护以防其泄露或丢失,保护手段可以是还应对托管的密钥提供保护以防其泄露或丢失,保护手段可以是技术的、程序的或法律的。例如,技术的、程序的或法律的。例如,信