首页 百科知识 密钥管理技术

密钥管理技术

时间:2022-06-17 百科知识 版权反馈
【摘要】:3.1 密钥管理技术最早的密码体制没有密钥的概念,那时对密码算法和密钥还没有明显的区分。一个计算机系统的密钥管理方案必须注意每一个细小环节,否则就会带来意想不到的损失。而密钥管理的问题则要复杂得多,不仅与技术有关,还与人的因素有关。一个好的密钥管理系统应当尽量不依赖于人的因素,这不仅是为了提高密钥管理的自动化水平,根本目的还是为了提高系统的安全程度。

3.1 密钥管理技术

最早的密码体制没有密钥的概念,那时对密码算法和密钥还没有明显的区分。随着信息加密需求量的迅速增加,经常产生大量的新的密码算法,需要耗费大量的人力、物力,于是人们逐渐采用将密码中的一部分加密算法或加密参数固定不变(这是保密的基本因素),而另一部分可经常更换的加密形式。这种可经常变化的部分就是通常意义下的密钥。所以,从本质上讲,密钥和密码算法可以看作一回事:密钥可理解为可以经常更换的那部分算法,算法也可理解为不便于经常变化的那部分密钥。

密钥同密码算法的分离大大促进了密码技术的发展,使数据加密的保密性和安全性大大提高,这不仅使大量本来必须按照密级进行管理的加密设备可以取消密级,而且使加密设备里的核心部分——密钥也可以经常更换,从而使密码算法完全公开成为可能。如果一个密码系统的算法经不起公开,那么按照现在的标准看,这种密码系统的安全性是很弱的,其理由有:

(1)对于没有独立设计密码能力的用户,只能使用商品密码,而一个商用密码机的软硬件原理是无法加以保密的,特别是对于国家级的破译能力来说,解剖一个加密设备的代价与破译一种密码的代价相比是可以忽略不计的。密码算法不可能一泄密就更换,必须准备依靠密钥的变化来保密。

(2)保密问题不仅是一个理论问题,而且与密码的使用有密切关系。如果必须把算法和加密装置当作绝密件管理,往往难以保证使用中的安全。

(3)在数据库存加密等技术中,往往要求密码设计者本人在不掌握密钥的情况下也无法读到保密信息,所以算法必须经受公开的分析。

如果考虑到在研制过程中所花费的巨大经济代价,对密码算法还是应该进行保护的,但这种保护的意义应只相当于对软件产品的技术保护,也就是说,信息的保密不能建立在这种保护的基础上。

密钥管理历来是一个很棘手的问题,是一项复杂细致的长期工作。一个计算机系统的密钥管理方案必须注意每一个细小环节,否则就会带来意想不到的损失。每个具体系统的密钥设计必须与具体的使用环境和保密要求相结合,万能的密钥管理体制是不存在的。

从密码技术的发展看,现在已经可以设计出高强度的密码算法,使之能够承受国家级的破译力量的攻击。在这个意义上讲,密码算法问题已经解决,密码系统的安全性只取决于密钥的安全性。因此,在考虑计算机系统的密码设计时,需要解决的核心问题是密钥管理问题,而不是密码算法问题。当然,这并不是说密码算法问题无足轻重,而是说一个密码算法的抗破译能力可以通过一定的客观检验方法进行分析和论证,因而完全可以做到对所使用的算法强度有充分的把握。对算法的选择必须很慎重,但这个问题再困难,也仅仅与密码算法本身的纯技术性能有关,而且已经出现了一大批成熟的密码算法可供选择和借鉴,即使没有这方面的设计能力,抄一个现成的算法或请有关部门编一个新的算法也不困难。而密钥管理的问题则要复杂得多,不仅与技术有关,还与人的因素有关。技术上搞得再完善,通过人员这个口子仍然可以把核心机密泄露出去。特别是当密钥管理存在一些漏洞时,从密钥管理的途径窃取秘密要比单纯从破译的途径窃取秘密的代价小得多。

一个好的密钥管理系统应当尽量不依赖于人的因素,这不仅是为了提高密钥管理的自动化水平,根本目的还是为了提高系统的安全程度。为此有以下具体要求:

(1)密钥难以被非法窃取;

(2)在一定条件下窃取了密钥也没有用;

(3)密钥的分配和更换过程在用户看来是透明的,用户不一定要亲自掌握密钥。

在下面的介绍中,通常把达到上述要求的程度作为评价一个密钥管理系统的性能好坏的标准。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈