![]() |
| ![]() |
关闭本窗口 | ||
何奇
赵晓芳 密钥认证——把物理世界中的安全数字化 对任何有效地加密/解密和数字签名来讲,密钥的安全分发和管理是最基本的决定性的前提。密码学是为电子商务提供安全性的一种有效途径。加密、解密和数字签名、身份验证是密码学为信息交互达到安全性而提供的最基本的功能。在这些基本功能的基础之上,一系列的新的因特网安全应用系统在近年来已经出现,如电子付账系统、电子投票系统、虚拟专用网络等。 ----任何安全系统的建立都依赖于系统用户之间存在的各种信任形式,网络安全也是一样。通常,不同的问题就有不同的信任形式存在,用以在特定的条件下减小风险。就一个实体来讲,在特定的环境下,采用哪一种信任形式取决于实体所采取的策略或现有的组织形式。我们不妨思考一下在日常生活中建立信任模式的过程,在交互过程中,达到信任关系的目的是唯一的,但信任关系的建立有很多种,自觉的、规则强制的、公共道德制约认可的、法律制约的、利益驱动的等等。不同的对象、不同的操作流程可能采取不同的信任规则。而这些具体的规则在网络的实现中怎样体现出来,是网络安全要考虑和解决的问题。 ----目前的网络安全解决方案中,多采用两种信任形式,一种是第三方信任,另一种是直接信任。基于公钥框架结构的交换信任和信任的管理,是网络信息安全的基本保障。信任维护的两个基本点,一是证书本身的内容就是信任,二是在参与各方所构成的环境中安全保障措施在起作用。这两点来自于进行信任交换的商业目的实现过程中风险的控制过程,这也正是证书策略中所要涵盖的。信任和风险是相对的,管理策略中风险的控制是不可缺少的部分。本文的目的是介绍这些概念及其相关信息,使人们明白在特定的情况下,应该采用哪一种信任形式,而目前的解决方案中还存在哪些缺点和不足。本文比较清晰地介绍了网络安全中信任是什么、可以以什么形式存在,在管理这些信任关系时要考虑到哪些因素。 第三方信任 ----通常业界普遍认为第三方信任是基于公钥密码的网络安全产品得以大规模实现的必要条件。公钥密码需要获得用户的公钥,然而在大规模的网络中,期望每个用户已经与所有其他的用户建立了关系是不可行及不切实际的。另外,由于用户的公钥必须是能在很广的范围内获得,一个公钥和一个个体的联系必须由可信任的第三方来保证,以防止伪装冒充。实际上,用户信任由第三方认证的公钥,是因为他们的组织机构有安全的可以信赖的权利。 ----第三方的认证代理也就是我们称谓的“认证中心”(CA)。一个认证中心是一个可信任的实体,它的核心职责就是认证用户的身份。从本质上讲,CA的职能与政府中发放护照的机构相类似。护照是一个公民的可信的证件,是由相应的权力机构发放的,证明一个人是不是他所声称的这个人。任何其他的国家或地区,如果信任这个国家的政府护照发放办公室,并验证护照不是伪造的,就会信任其公民身份的真实性。这是第三方认证的一个非常好的例子。 ----与护照相类似,网上用户的电子身份证是由一个CA来发放的,是这个CA信任他的一种证明,这样,通过第三方信任,任何信任第三方的人也应该信任这个用户。 ----不管是护照发放机构还是CA都是政策和事理结合的产物。就拿护照发放机构来讲,政府有一系列的政策决定哪个人可以成为公民,申请和发放护照的步骤是怎样的。与此相类似,CA可以看作是在一个组织中决定网络安全策略的一群人,由他们来决定给这个组织中的哪个人发放网络上的电子身份证书。 ----从物理的角度来看,护照发放机构是安全的、权威认可的纸质证书的制造者,他们有专用的设备以特别的方法安全地把一个公民的各种信息,包括姓名、照片、出生年月等“封装”在一起,这样要不留痕迹地对护照进行修改就极为困难了,因此,检查护照的人可以确认护照的完整性。 ----同护照发放机构拥有专用的设备一样,CA有一个计算平台以及电子密码的密钥,可以用于为网络用户制造和验证安全的电子“证书”,而证书的真实性和完整性是通过CA用私钥签名得到的数字签名来保证的,用户利用CA确认的公钥来验证证书上的签名。 ----护照发放机构必须物理上防止有人接近他制造护照的设备,以确保护照的真实性。类似地,CA签名用的私钥也必须小心保管以防止别人接近,私钥的使用要获得CA内高层可信任人员的同意。我们可以看到,比较合理的情况是,一个CA管辖的范围是与他的组织行为中的权利范围相对等的。 ----CA发放的是证书。一个网络用户的证书可以看成是其护照的电子等价物。证书同样包含有可以验证持有者身份的安全信息。例如,证书中有持有者的姓名。用户证书中最关键的一条信息是他的公钥。证书中的公钥用来为证书的持有者加密数据或通知对方验证持有者的数字签名。 ----既然关系到信任,证书就涉及到两个很重要的问题。第一个相关的问题是,怎样保证证书的信息是安全的,即一个人怎样才能相信证书中的姓名和公钥确实属于证书的持有者。事实上,如果不能保证这个层次的信任成立,就没有人能保证他是在为某个特定的人进行数据加密,或验证特定的个人数字签名。 ----要人对封装于证书中的用户公钥和其他信息(主要是姓名)之间的关系建立起信任,CA利用他的签名私钥对证书的信息进行数字签名。CA的数字签名提供了3个重要的因素,以满足对证书的安全和信任的要求。首先,通过定义,我们知道,证书上一个有效的数字签名是证书完整性的保证;其次,CA是唯一可以使用其签名私钥的实体,验证证书上的签名可以确信该证书是由特定的CA发放的;第三,同样,因为只有CA可以使用其签名私钥,CA不能否认其对证书进行的签名。 ----既然CA的数字签名保证了证书的安全,和证书的信任有关的第二个问题是,CA本身是否值得信任。用护照的情形相对应,可以看成是个人对护照发放者的信任。例如,一个B国的公民进入A国,他呈上一本B国护照机关发放的合法的护照,海关的人员就要评价一下B国的护照机关是否是可信任的。为了得到结论,A国的海关人员很可能要参考一下A国目前可信任国家的名单,这个名单可能是由边界管理委员会内部的高层政策小组来决定的。 ----两个CA安全地交换密钥信息,这样每个CA都可以有效地验证另一方密钥的可信任性,我们称这样的过程为交叉认证。事实上,交叉认证是第三方信任的扩展,即一个CA的网络用户信任其他所有自己CA交叉认证的CA用户。 ----从技术的角度来看,交叉认证要制造两个CA之间的交叉证书。当CA“甲”和CA“乙”进行交叉认证,CA“甲”制造一个证书并在上面签名,这个证书上包含有CA“乙”的公钥,反之亦然。因此,不管用户属于哪一个CA,都能保证每个CA信任另外一个,也因此,在一个CA的用户通过第三方信任的扩展可以信任另一个CA的用户。 ----安全地交换密钥信息本身没有什么,就其引发的技术处理细节远没有处理交叉认证的问题多。由于交叉认证是第三方信任的扩展,因此对每个CA来讲,最重要的事情是要能完全适应其他的安全策略。我们还是回头参考护照的情况,如果一个国家没有事先对另外一个国家的护照制造和发放的策略进行调查,就声称他信任这个国家的护照,这几乎是不可能的事情。譬如,在建立信任关系之前,每个国家都会希望了解其他国家在发放护照之前通过怎样的过程细节来验证一个所谓公民的身份。CA的交叉认证也会产生同样的问题。譬如,在交叉认证之前,两个CA都会去了解对方的安全策略,包括在CA内哪个人负责高层的安全职责。同时,还可能要两个CA的代表签署一个具有法律依据的协议。在这些协议中会陈述双方需要的安全策略,并签字保证这些策略要切实实施。 直接信任 ----一旦存在了直接信任,这种建立在私人关系之上的个体间的密钥交换就为确保安全通信提供了一种有力的机制。 公钥框架结构中的信任 ----在讨论公钥框架结构的信任管理之前,需要进一步对“信任”给出一个比较好理解的定义。在X.509中,是如下定义信任的:“通常来讲,一个实体设想另一个实体的行为会是他所期望的,则可以称为第一个实体是信任第二个实体的。”(Generally,anentitycanbesaidto“trust"asecondentitywhenit(thefirstentity)makestheassumptionthat ----当然,第一个实体所做的假设只是针对在一个相关范围内第二个实体的行为而言的,因此他们之间的信任关系也仅仅限于这个范围。对信任的背叛与简单的入侵是不同的。当事人之间不同类型的信任关系获得的保证也不相同。基于公钥技术下的信任关系就是要确保另一方实体身份描述的真实性以及双方实体许诺事项在法律上的可执行性。 ----信任是一个建立已久的观念,随便我们能举出很多传统信任关系的例子,譬如,银行和银行客户之间、老板和雇员之间、政府和市民之间、媒体和订阅者之间、行业协会和会员之间等等。传统的信任关系是建立基于公钥技术之上的信任关系的最主要的基础。 ----在公钥技术领域,要建立信任关系,对第一个实体来讲,一个必需的步骤就是在第二个实体那里引入一个公钥,并对其他的实体确保存储或通信的完整性。引入公钥的实体,由于其意图在于“依赖”公钥来保护他与公钥持有者之间后续的交流。 ----任何一个实体都可能同时既是信任方,又是被信任方(公钥持有方)。为了简单起见,在本文的讨论中把这两种角色截然分开。 ----为了避免在两个当事人之间造成混乱,公钥密码的引入操作必须遵循一定的方式,以保证公钥的真实性、完整性和清晰性,这里真实性和完整性是指公钥一定是来自确定的持有者、一定能收到并且中间没有被修改,而清晰性是指信任方对公钥认可的使用方式的理解必须和公钥持有人的理解是一样的。这些安全特性只有通过已经存在的、能够达到必须保证的信任关系才能得到承认。从中,我们可以明白一件事情,即没有物理上已经存在的信任关系或约束关系是不可能凭空在数字世界中建立起一个信任关系。进一步讲,现实存在的信任关系只有经过资格审查和组合才能形成具有新的特性的信任关系。因此,我们在这里所关注的是如何基于公钥技术、利用已经存在的传统信任关系作为工作的起点,通过什么样的方式建立具有期望特性的信任关系。 信任与风险 ----·与公钥相关的身份描述不正确或是容易令人误解; ----·公钥持有者的私钥被其他实体获得; ----·公钥持有者一向不被怀疑的特权最近被削弱或出现问题; ----·公钥持有者有很大的权利不受他签名的限制,甚至反悔而不按信任方期望的行事; ----·公钥持有者没有充分保护委托给他的安全信息的机密性; ----·其他。 ----对个体之间的行为,信任方与密钥持有的团体之间有着密切、长期的关系,在这种情况下的风险分配,信任方可以估计出他所承担的风险,并决定是否接受。但是,在电子商务中,信任方可能没有资格来评估风险、或者评估后选择不接受。在这种情况下的风险,其自身是不能有效排除的,且一旦出现失败,会伤害到当事人,这时,他可能会试图依赖外部的可信任机构。 ----风险管理有很多策略: ----最小化:即降低发生失败的概率,为了使风险最小,风险承担方在可行的范围内尽量降低能造成失败的事件发生的概率。换句话讲,为了避免造成失败事件的发生,各方都要尽量按照对方的期望(也是协议的规定)行事。 ----·避免或牵制后果的发生:如果一方的期望没有达到,另一方会尽可能地降低因此产生的重大经济损失。譬如,泄露密钥持有者的密钥是对信任方的一种背信弃义的行为,但是如果密钥持有者在信任方受到伤害之前通知信任方,则受到的仅仅是名义上的损失。 ----·承担剩余的风险原因:通常,要经济有效地把造成失败的发生概率降为零是不可能的,因此剩余的风险是必须承担的,这种风险一般是分散在一个很大的风险承担的团体中,也因此在财政上讲,这时的风险是一笔固定的、可以预算的开支,而不是不可估计的失败概率。风险的分散可能随时随地发生,因此,同地理、团体等因素一样,货币的时间价值也与此相关。 ----信任方和密钥持有者所采取的安全措施要放到公钥应用所要达到的特定商业目标所构成的环境中进行评价,如果剩余风险是不可接受的,则必须对选择的安全措施进行调整。 ----我们并不是想建议安全措施的选择要在文字上遵循这样的过程方式,事实上,这样的过程需要进行大量的判断和实践。 ----与选择适当的安全措施这一问题相独立的另一个问题是“保证"。即,如果各方完全执行采取的安全措施,就会把期望的商业目标的风险降低到可以接受的程度,因此需要各方保证安全措施在各自的环境中以及外在的环境中都得到切实完全的贯彻执行。在交易中,信任方基本上是可以根据传统的信任资源确定一个可信任的第三方来帮助他承担风险,适当的资源可能包括雇主、银行、医生、政府等,但并不仅限于这些。 ----可信任的第三方,通常也就是现实世界中的认证权利机构了。本文暂时不讨论到底什么人适合认证中心,认证中心是否对所有的应用是适合的。本文只是简单地从事项上看,一旦依赖或信任认证机构,这时的密钥持有者就被称为用户,这是因为,有些时候,密钥持有者会有选择地认购一种认证机构的服务。一旦我们越来越依赖电子商务系统,认证机构就需要接受信任方非常严格的风险评估。一个与用户群体有着长期密切关系的的认证机构,能更好地获得信任,在注册和控制那个群体的行为中减小相关的风险。为了把直接控制之下的事件风险控制在可接受的范围内,认证机构将不得不重新分配他们确实直接控制的各方与其他事件相关的那部分风险,如用户和信任方。大家都经常说信任是不可以传递的。然而,在目前的很多系统中,非常清楚信任是可以传递的:信任方信任认证机构,认证机构信任用户,因此,信任方信任用户。但是,无论如何,如果这种信任链过度地延伸,信任就遭到了稀释。每一次交易会对一方产生一定的风险,因此风险随交易次数成比例加剧。如果一个群体的每个成员都按相同的频率进行交易,则集聚的风险与群体的大小成等比,风险随群体的大小在增长。风险管理比单纯的技术考虑更加严重影响对规模的限制。通常,一个单一的信任方在他生活的不同方面的不同交易依赖不止一个可信任源。 ----有四种可用的机制可以把信任方的一部分风险转移到用户或认证机构身上: ----·现有的公共法规,如法令条例、规则、诉讼制度,以及其他政府发布的规定。虽然现在还没有公钥框架结构下风险分担的规定,但有相关的消费者权益保护法以及相关的商业欺诈等规定。 ----·数字签名法案,目前在我国还没有这样的法案出台,在美国也是今年7月份克林顿总统才签署了这个法案。不过在此之前,美国的大部分州已经通过了数字签名的法案,在我国,也应该只是时间问题。 ----·直接控制。 ----·合同,是在任何情况下澄清所分担的责任所必需的。但是,如果不使用标准的条款,合同是很难起草、协商和完成的。 ----信任方更愿意信任那些与用户群体有着密切的或直接的、长期的关系的认证机构,这也是人之常情。而在认证权利机构上建立认证中心有明显的优点。因此,建议建立在具有明确组织行为和职责基础之上的网络信息应用,一定要按照现实世界存在的模式来建立数字的信任关系和隶属关系,这里的“建立”一词更准确地讲应该是“迁移”或“映射”。 证书及安全策略 总结
推荐本文给好友 我要投稿>> 进入信息化BBS论坛 | ||
![]() | 世纪科创电脑系统有限公司版权所有 | ![]() |