密钥管理技术
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
密钥管理技术
一、摘要
密钥管理是处理密钥自产生到最终销毁的整个过程的的所有问题,包括系统的初始化,密钥的产生、存储、备份/装入、分配、保护、更新、控制、丢失、吊销和销毁等。其中分配和存储是最大的难题。密钥管理不仅影响系统的安全性,而且涉及到系统的可靠性、有效性和经济性。当然密钥管理也涉及到物理上、人事上、规程上和制度上的一些问题。
密钥管理包括:
1、产生与所要求安全级别相称的合适密钥;
2、根据访问控制的要求,对于每个密钥决定哪个实体应该接受密钥的拷贝;
3、用可靠办法使这些密钥对开放系统中的实体是可用的,即安全地将这些密钥分配给用户;
4、某些密钥管理功能将在网络应用实现环境之外执行,包括用可靠手段对密钥进行物理的分配。
二、关键字
密钥种类密钥的生成、存储、分配、更新和撤销密钥共享会议密钥分配密钥托管
三、正文
(一)密钥种类
1、在一个密码系统中,按照加密的内容不同,密钥可以分为一般数据加密密钥
(会话密钥)和密钥加密密钥。密钥加密密钥还可分为次主密钥和主密钥。
(1)、会话密钥, 两个通信终端用户在一次会话或交换数据时所用的密钥。一般由
系统通过密钥交换协议动态产生。它使用的时间很短,从而限制了密码分析者攻
击时所能得到的同一密钥加密的密文量。丢失时对系统保密性影响不大。
(2)、密钥加密密钥(Key Encrypting Key,KEK), 用于传送会话密钥时采用的密
钥。
(3)、主密钥(Mater Key)主密钥是对密钥加密密钥进行加密的密钥,存于主机
的处理器中。
2、密钥种类区别
(1)、会话密钥
会话密钥(Session Key),指两个通信终端用户一次通话或交换数据时使用的密钥。它位于密码系统中整个密钥层次的最低层,仅对临时的通话或交换数据使用。
会话密钥若用来对传输的数据进行保护则称为数据加密密钥,若用作保护文件则称为文件密钥,若供通信双方专用就称为专用密钥。
会话密钥大多是临时的、动态的,只有在需要时才通过协议取得,用完后就丢掉了,从而可降低密钥的分配存储量。
基于运算速度的考虑,会话密钥普遍是用对称密码算法来进行的
(2)、密钥加密密钥
密钥加密密钥(Key Encryption Key)用于对会话密钥或下层密钥进行保护,也称次主密钥(Submaster Key)、二级密钥(Secondary Key)。
在通信网络中,每一个节点都分配有一个这类密钥,每个节点到其他各节点的密钥加密密钥是不同的。但是,任两个节点间的密钥加密密钥却是相同的,共
享的,这是整个系统预先分配和内置的。在这种系统中,密钥加密密钥就是系统
预先给任两个节点间设置的共享密钥,该应用建立在对称密码体制的基础之上。
在建有公钥密码体制的系统中,所有用户都拥有公、私钥对。如果用户间要进行数据传输,协商一个会话密钥是必要的,会话密钥的传递可以用接收方的公
钥加密来进行,接收方用自己的私钥解密,从而安全获得会话密钥,再利用它进
行数据加密并发送给接收方。在这种系统中,密钥加密密钥就是建有公钥密码基
础的用户的公钥。
密钥加密密钥是为了保证两点间安全传递会话密钥或下层密钥而设置的,处在密钥管理的中间层次。
(3)、主密钥
主密钥位于密码系统中整个密钥层次的最高层,主要用于对密钥加密密钥、会话密钥或其它下层密钥的保护。它是由用户选定或系统分配给用户的,分发基
于物理渠道或其他可靠的方法。
密钥的层次结构如图所示。主密钥处在最高层,用某种加密算法保护密钥加密密钥,也可直接加密会话密钥,会话密钥处在最低层,基于某种加密算法保护
数据或其他重要信息。
密钥的层次结构使得除了主密钥外,其他密钥以密文方式存储,有效地保护了密
钥的安全。
(二)密钥的生成、存储、分配、更新和撤销
1、密钥的生成
密钥的产生可以用手工方式,也可以用随机数生成器。对于一些常用的密码体制而言,密钥的选取和长度都有严格的要求和限制,尤其是对于公钥密码体制,公
私钥对还必须满足一定的运算关系。总之,不同的密码体制,其密钥的具体生成方
法一般是不相同的。
(1)、密钥产生的硬件技术
噪声源输出随机数序列有以下常见的几种:
1)伪随机序列:也称作伪码,具有近似随机序列(噪声)的性质,而又能按一定规律(周期)产生和复制的序列。
一般用数学方法和少量的种子密钥来产生。
一般都有良好的、能受理论检验的随机统计特性,但当序列的长度超过了唯一解的
距离时,就成了一个可预测的序列。
常用的伪随机序列有m序列、M序列和R-S序列。
2)物理随机序列:
物理随机序列是用热噪声等客观方法产生的随机序列。实际的物理噪声往往要受到温度、电源、电路特性等因素的限制,其统计特性常代有一定的偏向性。因此
也不能算是真正的随机序列。
3)准随机序列:
用数学方法和物理方法相结合产生的随机序列。这种随机序列可以克服前两者的缺点,具有很好的随机性。
物理噪声源按照产生的方法不同有以下常见的几种:
1)基于力学噪声源的密钥产生技术
通常利用硬币、骰子等抛散落地的随机性产生密钥。这种方法效率低,而且随机性较差。
2)基于电子学噪声源的密钥产生技术
这种方法利用电子方法对噪声器件(如真空管、稳压二极管等)的噪声进行放大、整形处理后产生密钥随机序列。根据噪声迭代的原理将电子器件的内部噪声放大,
形成频率随机变化的信号,在外界采样信号CLK的控制下,对此信号进行采样锁存,
然后输出信号为"0"、"1"随机的数字序列。
3)基于混沌理论的密钥产生技术
在混沌现象中,只要初始条件稍有不同,其结果就大相径庭,难以预测,在有些情况下,反映这类现象的数学模型又是十分简单。因此利用混沌理论的方法,不仅
可以产生噪声,而且噪声序列的随机性好,产生效率高。
(2)、针对不同密钥类型的产生方法
1)主机主密钥的产生
这类密钥通常要用诸如掷硬币、骰子,从随机数表中选数等随机方式产生,以保证密钥的随机性,避免可预测性。而任何机器和算法所产生的密钥都有被预测的危险。
主机主密钥是控制产生其他加密密钥的密钥,而且长时间保持不变,因此它的安全性是至关重要的。
2)加密密钥的产生
加密密钥可以由机器自动产生,也可以由密钥操作员选定。密钥加密密钥构成的密钥表存储在主机中的辅助存储器中,只有密钥产生器才能对此表进行增加、修改、删除、和更换密钥,其副本则以秘密方式送给相应的终端或主机。一个由个终端用户的通信网,若要求任一对用户之间彼此能进行保密通信,则需要个密钥加密密钥。当较大时,难免有一个或数个被敌手掌握。因此密钥产生算法应当能够保证其他用户的密钥加密密钥仍有足够的安全性。可用随机比特产生器(如噪声二极管振荡器等)或伪随机数产生器生成这类密钥,也可用主密钥控制下的某种算法来产生。
3)会话密钥的产生
会话密钥可在密钥加密密钥作用下通过某种加密算法动态地产生,如用初始密钥控制一非线性移存器或用密钥加密密钥控制DES算法产生。初始密钥可用产生密钥加密密钥或主机主密钥的方法生成。
2、密钥的存储
密钥的存储不同于一般的数据存储,需要保密存储。保密存储有两种方法:一种是基于密钥的软保护;另一种方法是基于硬件的物理保护。前者使用加密算法对用户密钥(包括口令)加密,然后密钥以密文形式存储。后者将密钥存储于与计算机相分离的某种物理设备中,以实现密钥的物理隔离保护。如智能卡、USB盘或其他存储设备。
3、密钥的分配
密钥的分配要解决两个问题:
a.密钥的自动分配机制,自动分配密钥以提高系统的效率;
b.应该尽可能减少系统中驻留的密钥量。
根据密钥信息的交换方式,密钥分配可以分成三类:
a.人工密钥分发;