一种基于历史角色的信任协商构建方法及系统的制作方法

文档序号:7767616阅读:366来源:国知局
专利名称:一种基于历史角色的信任协商构建方法及系统的制作方法
技术领域
本发明属于网络安全访问控制方面的信任协商领域,具体涉及一种基于历史角色 的信任协商构建方法和系统,本发明为开放网络环境下的用户提供安全的跨域资源共享服 务。
背景技术
信任协商是网络安全访问控制方面的一个新领域,旨在为分布在各安全域的用户 提供资源共享与安全互操作。目前,单一安全域中的访问控制系统(包括自主访问控制系 统、强制访问控制系统、基于角色的访问控制系统等)并不适用于分布式环境下的多安全 域。信任协商则弥补了单域访问控制系统的不足,能有效控制与约束用户跨域资源访问行 为。在开放式环境下,出于对多域身份联合互操作的需求,自动信任协商对系统的要 求主要体现在信任协商系统必须提供相关协议,保证信任协商的顺利进行,这要求协议必 须支持(1)证书所有权在协商过程中,当接收到远程证书时,系统要求发送者证明其拥 有与提交证书公钥相对应私钥,以证明其对证书的所有权,防止攻击者窃取他人证书实现 对资源的非法访问。系统可以提供不同的安全协议来实现,但必须对交换的数据进行最大 的安全控制,支持对证书所有权的检查。(2)证书有效性交换证书的有效性,是保证协商成功的关键。在系统收到证书 时,通过数字签名来检查证书内容的完整性,以防止攻击者篡改证书内容来骗取资源的访 问权。而且还要检查证书是否过期与吊销,以防止攻击者利用失效的证书来达到非法访问 资源的目的。(3)证书链发现在协商过程中,有些证书并不是保存在本地,系统应该提供额外 的机制和工具来实时发现与查找这些证书,以保证信任协商的成功。(4)隐私保护机制保护资源与证书的暴露,是保护用户隐私的前提。而访问控制 策略也会泄漏用户的某些隐私,因此保护用户的隐私还要保护敏感策略。自动信任协商系 统充分考虑自动信任协商过程中的每个要素,提供合理的机制和解决方案,以充分保护用 户的隐私。(5)支持多种协商策略设计良好的协商系统,应提供多种协商策略。例如,最大 化的保护信息,还是把系统的计算量放在首位。自动信任协商系统应允许用户自主的选择 协商策略,并提供某种机制,使得协商顺利进行,即使协商双方采用不同的协商策略。这也 是支持多种应用的基本需求。(6)快速协商策略在开放式环境中,很多资源的访问控制策略是标准的,例如, 信用卡的申请。而且,在很多情况下,协商的过程是类似的,例如不同的学生访问图书馆的 在线资源。甚至,同一实体会多次访问同一资源。自动信任协商系统应采取适当的机制,合 理利用以前计算的证书暴露序列,以加速后续的协商。
5
在自动信任协商中,某些实体之间存在着经常性的资源共享和访问,如何加速经 常进行协商的实体之间的协商过程是一个值得研究的问题。目前已有多种自动信任协商系 统用来实现跨域的资源共享,但没有一种系统能完全满足自动信任协商的需求,尤其是对 快速协商的支持。Trust-X在支持快速协商策略方面迈出了一大步。Trust-X利用信任票来加速了 协商双方后续的协商过程。然而该模型存在以下的不足。第一,在开放式环境中,参与交易的实体在不停的变化中。如何判断所请求的资源 的控制者为信任票据中的资源控制者?在Trust-X中是靠协商者的主观臆断,因此,在协 商者判断错误的情况下,信任票据并不能使用。第二,信任票据的使用范围有限。信任票据说明了协商的双方曾经对某一资源R 进行过成功的协商,因此,信任票据只能在再次申请资源R时才有用。然而,在很多情况下, 两个不同的资源R和R'的暴露策略基本相同,甚至完全相同。但是拥有R的信任票据的请 求者在请求资源R'时却不得不重复证书的暴露。第三,在Trust-X中,信任票据的生命周期有两种定义方式由信任票据的发布者 定义一个时间,或双方根据暴露的证书序列中有效期最短的证书来定义信任票据的生命周 期。然而,每个证书都有可能因为种种原因随时被吊销。因此,在第一种定义方式中,生命周 期定义的过长,则存在着一定的安全隐患;定义的太短,则信任票据起不到应有的作用。在 第二种定义方式中,如果在再次协商时信任票据失效,则在有效期内的证书也不得不再次 向对方暴露。第四,在Trust-X中,只要拥有合法的信任票据,资源的控制者就向资源的请求者 暴露资源,而没有考虑到颁发信任票据后资源的访问控制策略是否发生了改变。这对于资 源的控制者来说,存在这一定的安全隐患。通过以上的分析可以看出,在开放式环境中,Trust-X根本无法真正的利用信任票 据来加速后续的协商过程。

发明内容
本发明的目的在于根据自动信任协商对系统的需求,提出一种基于历史角色的信 任协商构建方法,该方法能够解决自动信任协商系统跨域资源共享的快速协商效率问题, 并具有保护隐私安全和协商效率高的特点;本发明还提供了实现该方法的系统。本发明提供的一种基于历史角色的信任协商构建方法,其步骤包括(1)当请求方向资源方提交对某一资源的请求时,首先触发信任协商的寒暄阶段, 确认双方身份并判断双方是否有历史协商成功记录信息。(2)寒暄阶段结束之后双方进入信任发展阶段,通过互相披露访问控制策略和证 书,找出一个安全的证书暴露序列以访问请求的资源。(3)双方在信任协商成功后进入信任维护阶段,保存在本次协商中协商对方的相 关信息,以加快双方的后续协商过程。实现上述信任协商构建方法的系统,其特征在于,该系统包括访问控制策略库、证 书库、角色库、证书收集器、历史信息库、角色分配策略库、角色分配器、协商策略模块、证书 验证器、一致性检验器和证书暴露序列构造器;访问控制策略库用于存放所有资源的访问控制策略;证书库用来存放所有的本地证书;历史信息库用来存放所有协商对方的历史信 息的数据库;角色库用于保存本地所设的所有角色,以及该角色所拥有的权限;角色分配 策略库用于存放角色分配策略的数据库;协商策略模块用来定义什么时候向协商对方披露什么信息,用于指导信任关系的 合理建立,控制协商暴露的消息内容。其操作依赖于策略一致性验证器的执行结果。协商策 略模块接收来自协商对方的访问控制策略、协商对方的证书以及协商对方所提供的消息, 并结合自己的协商策略,将其提交给一致性验证器,并由一致性验证器验证的结果来决定 向协商对方提交本地的访问控制策略、本地证书或向协商对方披露相关的消息;证书验证器模块用来验证对方所提交的证书是否被篡改、是否已失效,以及是否 已被吊销;证书验证器模块从协商策略模块接收协商对方所提交的证书,并提交给证书权 威,由证书权威判断该证书是否有效,并将证书权威所验证的结果提交给协商策略;一致性检验器接收访问控制策略库提交的访问控制策略、证书库提交的本地证 书、角色提交的本地角色和权限之间的关系、证书收集器收集到的存放于网络的证书、历史 信息库提交的协商对方的历史信息记录,以及协商策略所传递过来的协商对方的访问控制 策略、协商对方的证书或者协商对方的消息,进行综合的分析和验证,决定向协商对手传递 什么样的协商结果,并将该决定提交给协商策略模块,由协商策略模块构造出适当的反馈 并送达协商对方;证书暴露序列构造器通过收集双方在协商过程中所有和协商相关的而且可能被 暴露的证书,构成一个安全的证书暴露序列,协商双方按照证书暴露序列的顺序交互的向 对方披露相关的证书集,以满足被请求资源的访问控制策略,使服务器能够安全的向请求 方暴露被请求资源;角色分配器接收来自证书暴露序列构造器所提供的证书暴露序列,确定在协商过 程中,协商对方所暴露的证书,并根据角色分配策略库所提供的角色分配策略,为协商对方 分配适当的角色,并将该角色以及证书暴露序列一起提交给历史信息库。本发明使协商成功的双方在自己的历史信息库中为对方更新角色,并记录得到该 角色双方的证书暴露序列。具体而言,本发明具有如下特征及优点(1)显著提高协商效率本发明在协商成功时,协商双方进行信任维护的工作,分别在自己的历史信息库 中为对方更新角色,以及得到该角色所需的双方的证书暴露序列。在双方再次进行协商时, 只要历史信息库中记录的角色有权访问被请求的资源,则无需再次进行协商,直接按照该 角色的证书暴露序列暴露证书即可。因此大大的缩短了双方的后续协商,尤其是协商策略 很复杂的时候。(2)提供更高的安全性首先,在本发明中,利用名片来唯一的识别开放环境下的每一个实体。因为即使攻 击者窃取了双方的名片,没有对应的密钥,他仍然无法解密他所窃取到的信息。其次,在协 商的过程中向对方发送消息的时候,所发送的消息是由自己的名片的私钥进行签名,如果 攻击者对劫取的信息篡改之后再发给接受方,则在接收方进行签名验证算法时被发现。因 此有效地抵抗了入侵者的攻击。最后,在该方法中如果资源的提供者修改了某一资源的暴 露策略,则针对该资源进行的协商都会按照新的暴露策略进行。因为协商是根据资源的暴露策略以及对方已经暴露的证书进行的,而不是简单的检查对方以前是否成功的访问过该 资源。(3)有效地防止信息泄露在本发明中,效率的提高并不是建立在收集协商对方证书的基础之上,而是保存 对方可以得到的角色,以及得到该角色的证书暴露序列。因此,本发明可以很好的保护个人 的隐私,避免恶意的协商对手的证书收集活动。


图1为本发明基于历史角色信任协商构建方法的一种具体实施方式
的流程图;图2为本发明的寒暄阶段协商协议;图3为本发明基于历史角色信任协商构建方法的全局结构图。
具体实施例方式下面结合附图和实例对本发明作进一步详细的说明。定义1名片(visiting card)是一个由其主体定义的不包含任何敏感信息的用于 自我身份介绍的数字证书,该证书可在任何情况下向其他实体暴露。定义2角色(role)指一个或一群用户在组织内可执行的操作的集合。一个实体 可经授权拥有多个角色,一个角色可授权给多个实体。每个角色可访问多种资源,每个资源 也可由不同的角色访问。在本发明中,协商者在一次成功的信任协商后,根据协商对方在协商过程中所暴 露的数字证书,为协商对方分配一定的角色(每个角色拥有一定的权限),并在历史信息库 中记录该实体得到的角色集,以及得到该角色的证书暴露序列。在双方再次进行协商时,协 商双方都可以根据对方所拥有的角色,以及该角色的权限来进行协商,以加快协商双方的 后续协商过程。本发明的协商过程可以分为三个阶段寒暄阶段、信任发展阶段和信任维护阶段, 其流程图如图1所示。(1)寒暄阶段当请求方提交对某一资源的请求时,首先触发信任协商的寒暄阶段。寒暄阶段的目的在于协商双方都向对方进行自我介绍,并回忆双方此前是否发生 过成功的协商。寒暄阶段的关键问题在于根据对方提交的名片来判断协商对方是否是一个 完全的陌生人,而且还要判断对方是否是该名片的证书持有人。如果协商对方不是完全的 陌生人,则协商双方开始清理对方的历史信息记录,即查看协商对方在过去的协商中曾被 赋予的角色,删除过期的角色。如果协商对方是一个完全的陌生人,则本地的历史信息库中 不存在对方的记录,直接进入信任发展阶段,双方按照传统的信任协商的方法进行交互,力 求找出一个安全的证书暴露序列或者证明协商失败。寒暄阶段协商协议如图2所示。(2)信任发展阶段信任发展阶段的目的是为了找出一个安全的证书暴露序列,使得双方可以按序安 全的暴露自己的证书,从而建立起信任关系,使得资源的请求方可以访问他所请求的资源。在本发明中,进入信任发展阶段之后,服务器首先查看协商对方在过去的协商中被赋予了哪些角色,以及这些角色允许访问的资源。如果被请求的资源R包含于协商对方的某个角色允许访问的资源集中,则协商双 方根据记录在历史信息库中的该角色所对应的证书暴露序列,开始进行双边的数字证书暴 露和验证。如果被请求的资源R并不包含于协商对方的任意一个角色允许访问的资源集中, 则服务器向对方提交所请求资源的访问控制策略。客户端根据服务器提交的访问控制策 略,本地证书以及本地证书的访问控制策略,以及服务器端的历史信息记录中所记录的服 务器曾被赋予的角色,计算出应该向服务器提交的证书集或相应的访问控制策略或相应的 消息。服务器的协商策略模块将客户端提供的访问控制策略、证书或消息,提交给服务器的 一致性验证器。服务器的一致性验证器根据协商策略模块提交的访问控制策略、证书,结及 消息,结合本地资源的访问控制策略,再次计算协商对方是否满足R的访问控制策略。如果 满足,则生成一个安全的证书暴露序列。否则,一致性验证器通过协商策略模块结合本地的 协商策略向对方提交相应的访问控制策略、证书或消息。双方重复以上过程,直到协商双方 找到一个安全的证书暴露序列或肯定不存在安全的证书暴露序列。如果不存在安全的证书 暴露序列,则协商失败,协商过程结束。当协商双方找到一个安全的证书暴露序列之后,协 商双方开始根据该证书暴露序列进行双边的数字证书暴露和验证。双方交互暴露的证书由证书验证模块提交给证书权威进行验证。如果所有证书都 没有篡改、假冒、过期或吊销,则双方建立起信任关系,服务器方将向对方披露对方请求的 资源,并进入信任维护阶段。否则,协商失败,整个协商过程结束。(3)信任维护阶段信任维护阶段的目的在于保存在本次协商中协商对方的相关信息,以加快双方的 后续协商过程。在信任发展阶段,如果协商双方协商成功,建立起信任关系,则触发信任维 护阶段。否则,双方协商失败,协商终止,不再执行信任维护。在信任维护阶段,无论是资源的请求方还是资源的提供方,在达成成功的协商之 后,都要进行信任维护的工作。如果协商双方是第一次进行协商,或曾经有过协商但对方历 史信息记录已过期,则需要在自己的历史信息库中为对方增加一条历史信息记录,根据本 次协商中所暴露的证书,为协商对方赋予一定的角色,并记录该角色对应的证书暴露序列。 如果双方不是初次协商,而且本地的历史信息库中保存了协商对方的历史信息记录,则只 需要在协商对方的历史信息中加入协商对方在本次协商后为协商对方赋予的新的角色,以 及得到该角色双方的证书暴露序列。下面结合图1和图2,进一步举例说明本发明方法的具体实现过程,其步骤如下(1)当请求方A向资源方B提交对某一资源的请求时,首先触发信任协商的寒暄阶 段。(1. 1)请求方A提出一个请求,并提交自己的名片VCardA。(1. 2)资源方B用VCardA&公钥HfeyA加密的随机生成的字符串Sb,生成密文CTB。 资源方B向请求方A返回CTB,并提交自己的名片VCardB。(1. 3)请求方A用VCardA的私钥SKeyA解密CTB,得到字符串S’B,然后用SKeyA对 S’ B进行签名,得到签名后的消息STB。同时,请求方A用VCardB的公钥加密的随机 生成的字符串SA,生成密文CTA。请求方A向资源方B返回STb和CTA。
(1. 4)资源方B用VCardB的私钥SKeyB解密CTA,得到字符串S’A,然后用SKeyB对 S’ 4进行签名,得到签名后的消息STA。资源方B向请求方A返回STA。(1. 5)在请求方A—方,用其私钥SKeyA来验证STA。如果验证通过而且S’A = SA, 则充分说明资源方B为VCardB的主体。请求方A在其历史信息库中查找有关VCardB的记 录。如果存在该记录,则说明请求方A和资源方B曾经有过成功的协商,如果没有这样的记 录,则说明请求方A和资源方B以前没有进行过协商,或曾经进行过成功的协商但以前的记 录已经过期而被从历史信息库中删除了,则在协商成功之后再在历史信息库中增加有关资 源方B的记录。此外,如果验证STa返回false或S’A兴Sa,则说明资源方B不是VCardB的 主体。同样的,资源方B也进行同样的工作。因为只有数字证书的证书持有人才能解密由该数字证书的公钥所加密的信息。为 了防止攻击者窃取他人名片实现非授权的访问,在本发明中,每个协商者要协商对方解密 由其提交的名片的公钥加密的一个随机的字符串。如果对方解密成功,则说明对方是他所 提交的名片的证书持有人,否则,则认为对方是盗用他人名片。因为利用一个数字证书的私 钥签名信息,可用该证书的公钥进行验证。如上所述,在本发明中,每个协商者要向对方证 明自己是所提交的名片的持有人,则必须要将对方加密的信息进行解密,然后出示给对方。 但是,解密的信息在传送的过程中,会遭受到篡改等攻击。因此,在本发明中,每个协商者要 将自己传送给对方的信息用自己的名片的私钥进行签名,而且,协商对方可以用公钥来进 行验证信息的真实性。总的来说,在寒暄阶段的每一次加密,都是为了要对方证明对方的确是所提交的 名片的主体,每一次解密则是证明了自己是所提交的名片的主体。签名和验证签名是为了 要对方判断自己所发过去的消息是否被篡改。(2)寒暄阶段结束之后进入信任发展阶段,找出一个安全的证书暴露序列以访问 请求的资源。(2. 1)服务器首先查看协商对方在过去的协商中被赋予了哪些角色,以及这些角 色允许访问的资源。(2. 2)如果被请求的资源包含于协商对方的某个角色允许访问的资源集中,则协 商双方根据记录在历史信息库中的该角色所对应的证书暴露序列,双方开始交互的证书暴 露。否则,服务器的策略一致性验证器向对方提交相应的访问控制策略。(2. 3)客户端根据服务器提交的访问控制策略,本地证书以及本地证书的访问控 制策略,以及服务器端的历史信息记录中所记录的服务器曾经暴露的数字证书,计算出应 该向服务器提交的证书集或相应的访问控制策略。(2. 4)服务器的策略一致性验证器根据对方提交的访问控制策略、证书、对方的历 史信息记录中所记录的证书、以及本地资源的访问控制策略,再次计算协商对方是否满足 被请求资源的访问控制策略。如果满足,则生成一个安全的证书暴露序列。否则,策略一致 性验证器通过协商策略模块向对方提交相应的访问控制策略。(2. 5)访问方A和资源方B重复(2. 3)和(2. 4)的过程,直到协商双方找到一个安 全的证书暴露序列或肯定不存在安全的证书暴露序列。如果不存在安全的证书暴露序列, 则协商失败。当访问方A和资源方B找到一个安全的证书暴露序列之后,访问方A和资源方 B开始交互的证书暴露。双方交互暴露的证书由证书验证模块交由证书权威进行验证,如果
10所有证书都没有篡改、假冒、过期或吊销,则双方建立起信任关系,资源方B将向访问方A披 露对方请求的资源。否则协商失败。(3)信任维护阶段的目的在于保存在本次协商中协商对方的相关信息,以加快双 方的后续协商过程。(3. 1)在信任发展阶段,如果访问方A和资源方B协商成功,则触发信任维护阶段。 否则,双方协商失败,协商终止,不再执行信任维护。(3. 2)协商双方在达成成功的协商之后,都进行信任维护的工作。若无关于对方的 历史记录信息,则访问方A和资源方B都在在自己的历史信息库中为对方增加一条历史信 息记录,根据本次协商中所暴露的证书,为协商对方赋予一定的角色,并记录该角色对应的 证书暴露序列。否则,只需要在协商对方的历史信息中加入协商对方在本次协商后为协商 对方赋予的新的角色,以及得到该角色双方的证书暴露序列。本发明还提供了实现该方法的系统,如图3所示。在本系统中,协商双方通过协商 代理进行协商,系统包括访问控制策略库、证书库、角色库、证书收集器、历史信息库、角色 分配策略库、角色分配器、协商策略模块、证书验证器、一致性检验器和证书暴露序列构造器。访问控制策略库(Access Control Policy Base)。访问控制策略库存放所有资源 的访问控制策略。在本发明中,敏感资源包括服务、证书、访问控制策略等。当协商对方请 求某个资源时,系统首先查看该资源是否具有访问控制策略,如果有,则查看具体的访问控 制策略,并将其提交给一致性验证器,作为一致性验证器决定验证结果的依据。证书库(Credential Base)。用来存放所有的本地证书。但并不是所有的证书都 存在本地,对于没有存放在本地的证书,应该记录存放该证书的位置。证书库将本地所拥有 的证书提交给一致性验证器,作为一致性验证器决定验证结果的依据。历史信息库(History Information Base)。历史信息库用来存放所有协商对方的 历史信息的数据库。每个协商对方通过其名片对应一条历史信息记录。历史信息库将协商 对方的历史信息记录提交给一致性验证器,作为一致性验证器决定验证结果的依据。角色库(Role Base)。保存本地所设的所有角色,以及该角色所拥有的权限。本地 所设的角色以及每个角色所拥有的权限由用户定义。角色库将所有的角色及其所拥有的权 限提交给一致性验证器,作为一致性验证器决定验证结果的依据。角色分配策略库(Role Assign Policy Base)。存放角色分配策略的数据库,角色 分配策略由用户定义。角色分配策略库作为角色分配的依据,将角色分配策略提交给角色 分配器,帮助角色分配器为协商对方分配角色。协商策略模块(Negotiation Strategy)。协商策略定义了什么时候向对方披露什 么信息,用于指导信任关系的合理建立,控制协商暴露的消息内容。协商策略是协商代理的 核心模块,其操作依赖于策略一致性验证器的执行结果。协商策略模块接收来自协商对方 的访问控制策略、协商对方的证书以及协商对方所提供的消息,并结合自己的协商策略,将 其提交给一致性验证器,并由一致性验证器验证的结果来决定向协商对方提交本地的访问 控制策略或本地证书或向协商对方披露相关的消息。证书验证器(Credential Verifier)模块。证书验证器用来验证对方所提交的证 书是否被篡改、是否已失效,以及是否已被吊销。证书验证器模块从协商策略接收协商对方所提交的证书,并提交给证书权威,由证书权威判断该证书是否有效,并将证书权威所验证 的结果提交给协商策略。一致性检验器(Compliance Checker)。其作用有两个。第一,根据协商对方的访 问控制策略和自己拥有的证书,计算出满足对方访问控制策略的数字证书集。第二,根据协 商对方暴露的数字证书集判断是否满足对方请求资源的访问控制策略。一致性验证器接收 访问控制策略库提交的访问控制策略、证书库提交的本地证书、角色提交的本地角色和权 限之间的关系、证书收集器收集到的存放于网络的证书、历史信息库提交的协商对方的历 史信息记录,以及协商策略所传递过来的协商对方的访问控制策略、协商对方的证书或者 协商对方的消息,进行综合的分析和验证,决定向协商对手传递什么样的协商结果,并将该 决定提交给协商策略模块,由协商策略模块构造出适当的反馈并送达协商对方。iiE-zP^Mii^iJl^jit^l (Credential Disclosure Sequence Constructor) iiE-^^ 露序列构造器是用来构造一个安全的证书暴露序列。证书暴露序列构造器通过收集双方在 协商过程中所有和协商相关的而且可能被暴露的证书,构成一个安全的证书暴露序列,协 商双方按照证书暴露序列的顺列交互的向对方披露相关的证书集,则可最终满足被请求资 源的访问控制策略,从而服务器可安全的向请求方暴露被请求资源。角色分配器(Role Assigner)。角色分配器用来为一个实体分配角色,从而获得该 角色所拥有的权限。在本发明中,角色分配器接收来自证书暴露序列构造器所提供的证书 暴露序列,来确定在协商过程中,协商对方所暴露的证书,并根据角色分配策略库所提供的 角色分配策略,为协商对方分配适当的角色,并将该角色以及证书暴露序列一起提交给历 史信息库。在本发明中,在双方再次进行协商时,只要历史信息记录中的角色有权访问被请 求的资源,则无需再次进行协商,直接按照该角色的证书暴露序列暴露即可,因此大大的加 快了双方的后续协商过程。本发明适合所有的协商环境,它并不要求所有的用户都会采用本发明所阐述的方 法。如果请求方(或资源的提供者)在寒暄阶段没有向对方提交自己的名片,则说明请求 方(或资源的提供者)没有采用本发明的方法。在这种情况下,协商只执行信任发展阶段, 而且在信任发展阶段,双方在协商的过程中,均不需查看历史信息库中的历史信息记录。本发明不仅局限于上述具体实施方式
,本领域一般技术人员根据本发明公开的内 容,可以采用其它多种具体实施方式
实施本发明,因此,凡是采用本发明的设计结构和思 路,做一些简单的变化或更改的设计,都落入本发明保护的范围。
权利要求
1.一种基于历史角色的信任协商构建方法,其特征在于,其步骤包括(1)寒暄阶段当请求方向资源方提交对某一资源的请求时,首先触发信任协商的寒暄阶段,确认双 方身份及是否有历史协商成功记录信息;(2)信任发展阶段寒暄阶段结束之后双方进入信任发展阶段,通过互相披露访问控制策略和证书,找出 一个安全的证书暴露序列以访问请求的资源;如果找到,触发信任维护阶段;否则,双方协 商失败,协商终止,不再执行信任维护;(3)信任维护阶段在信任维护阶段,无论是资源的请求方还是资源的提供方,在达成成功的协商之后,都 要进行信任维护的工作。如果协商双方是第一次进行协商,或曾经有过协商但对方历史信 息记录已过期,则需要在自己的历史信息库中为对方增加一条历史信息记录,根据本次协 商中所暴露的证书,为协商对方赋予一定的角色,并记录该角色对应的证书暴露序列;如果 双方不是初次协商,而且本地的历史信息库中保存了协商对方的历史信息记录,则只需要 在协商对方的历史信息中加入协商对方在本次协商后为协商对方赋予的新的角色,以及得 到该角色双方的证书暴露序列。
2.根据权利要求1所述的方法,其特征在于在寒暄阶段,请求方进行下述步骤(1. 1)请求方提出一个请求,并提交自己的名片VCardA ;(1. 2)资源方用VCardA的公钥PKeyA加密的随机生成的字符串SB,生成密文CTb ;资源 方向请求方返回CTB,并提交自己的名片VCardB ;(1. 3)请求方用VCardA的私钥SKeyA解密CTB,得到字符串S’ B,然后用SKeyA对S’ B进 行签名,得到签名后的消息STb ;同时,请求方用VCardB的公钥PKeyBW密的随机生成的字符 串SA,生成密文CTa ;请求方向资源方返回STb和CTa ;(1. 4)资源方用VCardB的私钥SKeyB解密CTA,得到字符串S’ A,然后用SKeyB对S’ A进 行签名,得到签名后的消息STa ;资源方向请求方返回STa ;(1.5)在请求方一方,用其私钥SKeyA来验证STA;如果验证通过而且S’ A = \,则充分 说明资源方为VCardB的主体;请求方在其历史信息库中查找有关VCardB的记录;如果存在 该记录,则说明请求方和资源方曾经有过成功的协商;如果验证STa返回false或S’A兴Sa, 则说明资源方不是VCardB的主体;资源方按照步骤(1. 1)至(1. 5)的流程,将请求方与资源方的角色互换后,完成同样的 工作。
3.根据权利要求1所述的方法,其特征在于信任发展阶段包括以下过程(2. 1)服务器首先查看协商对方在过去的协商中被赋予了哪些角色,以及这些角色允 许访问的资源;(2. 2)如果被请求的资源包含于协商对方的某个角色处理的资源集中,则协商双方根 据记录在历史信息库中的该角色所对应的证书暴露序列,双方开始证书暴露;否则,服务器 向对方提交相应的访问控制策略;(2. 3)客户端根据服务器提交的访问控制策略,本地证书以及本地证书的访问控制策 略,以及服务器端的历史信息记录中所记录的服务器曾经暴露的数字证书,计算出应该向服务器提交的证书集或相应的访问控制策略;(2. 4)服务器根据对方提交的访问控制策略、证书、对方的历史信息记录中所记录的证 书、以及本地资源的访问控制策略,再次计算协商对方是否满足被请求资源的访问控制策 略;如果满足,则生成一个安全的证书暴露序列;否则,服务器向对方提交相应的访问控制 策略;(2. 5)双方重复(2. 3)和(2. 4)的过程,直到协商双方找到一个安全的证书暴露序列或 肯定不存在安全的证书暴露序列;如果不存在安全的证书暴露序列,则协商失败;当协商 双方找到一个安全的证书暴露序列之后,协商双方开始交换证书;如果双方交换的证书通 过验证,即所有证书都没有篡改、假冒、过期或吊销,则双方建立起信任关系,服务方将向对 方披露对方请求的资源;否则协商失败。
4.根据权利要求1所述的方法,其特征在于信任维护阶段包括下述过程(3. 1)在信任发展阶段,如果协商双方协商成功,则触发信任维护阶段;否则,双方协 商失败,协商终止,不再执行信任维护;(3. 2)协商双方在达成成功的协商之后,进行信任维护的工作;若无关于对方的历史 记录信息,则在自己的历史信息库中为对方增加一条历史信息记录,根据本次协商中所暴 露的证书,为协商对方赋予一定的角色,并记录该角色对应的证书暴露序列;否则,只需要 在协商对方的历史信息中加入协商对方在本次协商后为协商对方赋予的新的角色,以及得 到该角色双方的证书暴露序列。
5.一种实现权利要求1所述信任协商构建方法的系统,其特征在于,该系统包括访问 控制策略库、证书库、角色库、证书收集器、历史信息库、角色分配策略库、角色分配器、协商 策略模块、证书验证器、一致性检验器和证书暴露序列构造器;访问控制策略库用于存放所有资源的访问控制策略; 证书库用来存放所有的本地证书; 历史信息库用来存放所有协商对方的历史信息的数据库; 角色库用于保存本地所设的所有角色,以及该角色所拥有的权限; 角色分配策略库用于存放角色分配策略的数据库;协商策略模块用于定义什么时候向协商对方披露什么信息,用于指导信任关系的合理 建立,控制协商暴露的消息内容。其操作依赖于策略一致性验证器的执行结果。协商策略 模块接收来自协商对方的访问控制策略、协商对方的证书以及协商对方所提供的消息,并 结合自己的协商策略,将其提交给一致性验证器,并由一致性验证器验证的结果来决定向 协商对方提交本地的访问控制策略或本地证书或向协商对方披露相关的消息;证书验证器模块用来验证对方所提交的证书是否被篡改、是否已失效,以及是否已被 吊销;证书验证器模块从协商策略模块接收协商对方所提交的证书,并提交给证书权威,由 证书权威判断该证书是否有效,并将证书权威所验证的结果提交给协商策略;一致性检验器接收访问控制策略库提交的访问控制策略、证书库提交的本地证书、角 色提交的本地角色和权限之间的关系、证书收集器收集到的存放于网络的证书、历史信息 库提交的协商对方的历史信息记录,以及协商策略所传递过来的协商对方的访问控制策 略、协商对方的证书或者协商对方的消息,进行综合的分析和验证,决定向协商对手传递什 么样的协商结果,并将该决定提交给协商策略模块,由协商策略模块构造出适当的反馈并送达协商对方;证书暴露序列构造器通过收集双方在协商过程中所有和协商相关的而且可能被暴露 的证书,构成一个安全的证书暴露序列,协商双方按照证书暴露序列的顺序交互的向对方 披露相关的证书集,以满足被请求资源的访问控制策略,使服务器能够安全的向请求方暴 露被请求资源;角色分配器接收来自证书暴露序列构造器所提供的证书暴露序列,确定在协商过程 中,协商对方所暴露的证书,并根据角色分配策略库所提供的角色分配策略,为协商对方分 配适当的角色,并将该角色以及证书暴露序列一起提交给历史信息库。
全文摘要
本发明公开了一种基于历史角色的信任协商构建方法,步骤为①当请求方向资源方提交对某一资源的请求时,首先触发信任协商的寒暄阶段,确认双方身份及是否有历史协商成功记录信息。②寒暄阶段结束之后双方进入信任发展阶段,通过互相披露访问控制策略和证书,找出一个安全的证书暴露序列以访问请求的资源。③双方在信任协商成功后进入信任维护阶段,保存在本次协商中协商对方的相关信息,以加快双方的后续协商过程。本发明使协商成功的双方在自己的历史信息库中为对方更新角色,并记录得到该角色双方的证书暴露序列。在双方再次进行协商时,无需再次进行协商,直接按照该角色的证书暴露序列暴露即可,缩短了双方的后续协商,避免了恶意协商对手的证书收集活动。
文档编号H04L29/06GK102075518SQ201010573679
公开日2011年5月25日 申请日期2010年12月6日 优先权日2010年12月6日
发明者赵贻竹, 马尧, 魏涛, 鲁宏伟 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1