一种基于代理的自信任协商预测方法、系统及装置与流程

文档序号:28815119发布日期:2022-02-09 05:39阅读:114来源:国知局
一种基于代理的自信任协商预测方法、系统及装置与流程

1.本发明涉及自动信任协商技术领域,特别是涉及一种基于代理的自信任协商预测方法、系统及装置。


背景技术:

2.随着云计算技术的高速发展和远程办公需求的快速增长,原先封闭在内网环境下的各种网络系统原来越多的暴露在开放的网络环境下。由于开放网络中充斥着各种复杂的环境因素和用户群体,原先内网系统的使用者和提供者由相对信任的关系变为不信任的关系。例如以下常见场景,假设a是一名在校大学生,系统x是该大学向在校学生提供购买针对学生的打折火车票的系统。以往,a可以直接通过学校内网、或者直接前往现场通过系统x购买打折火车票。而在远程、开放的网络环境下,a会面临他/她登录的系统是某黑客提供的钓鱼网站y的问题,以及他/她通过网络向x提交的身份证、学生证、车次等信息会被别有用心的人员或组织截取的问题,以及后续一系列信息安全风险;而系统x会面临黄牛或其它社会人员恶意抢票,以及黑客的渗透和破坏等安全风险问题,进而a和x均会对双方的身份以及提供的信息、服务存在疑虑。随着技术的发展和人们需求的改变,以上这类场景普遍存在于政府服务、医疗保健、教育、客户服务等民生领域,诸如于“银行某业务要求必须本人现场办理、向电信运营商提供的身份证复印件会写上

仅供办理xx业务使用
’”
的互不信任场景随处可见。为了改善并解决开放网络环境下的类似问题,基于零信任的技术和相关理念被提出并快速的发展壮大。
3.截止目前为止,零信任相关的技术大都是基于可信第三方/担保人的模型来解决,用通俗的语言进行描述,即在互不信任的业务使用者a和服务提供者x之间引入担保人m,a首先向m提供一系列的材料证明a具有安全、合法的资格使用x提供的服务,m通过一系列技术判断a提供的信息真实有效后作为服务的担保方要求x向a提供所申请的服务。该模型的一般工作原理如图1所示,图1为基于可信第三方/担保人的零信任系统模型示意图。
4.这种模型存在的不完备之处主要在于:
5.1、m需要先与a和x分别建立信任关系,并保持该信任关系。
6.2、a无法确定m不会滥用证明材料,也无法确定x提供的服务是否安全、合法。
7.3、当m自身的公允性和安全性发生问题时,对该模型的打击是毁灭性的。
8.为了避免上述零信任系统模型的不完备之处,现有的一种思路是取消模型中的担保人m,使得业务使用者a和服务提供者x能够直接建立信任关系。
9.业务使用者a和服务提供者x直接建立信任关系的技术体系属于自动信任协商技术(automated trust negotiation,简称atn),这种技术的思路是在开放网络环境下,允许事先没有关系的陌生双方通过交换证书和访问控制策略来逐步建立信任并实现业务访问。一个atn系统主要包括:(1)证书库、资源访问控制策略及对证书库和访问策略库的读写进行安全保护的模块;(2)协商策略模块;(3)协商协议模块。atn系统采用对等的体系结构,用户和服务器之间能否建立信任关系不由可信第三方/担保人决定,虽然在验证某些证书时
可能需要可信第三方/担保人参与,但最终的信任决策由双方自主做出。一般atn系统的工作原理如图2(图2为一般atn系统模型示意图)所示:
10.atn系统与传统访问控制系统的主要区别在于协商双方是否事先知道对方身份、拥有的权限和访问控制策略。在atn中,协商双方通过反复交换信任凭证证书和访问控制策略逐步确认身份并建立信任关系,系统的一般工作原理如图3(图3为一般atn系统原理示意图)所示。
11.下面的在线交易例子展现了一个atn系统的协商过程概况。假设a是一个在校大学生,在学期末想前往某个火车票售票点x购买针对学生的打折火车票回家。由于疫情原因,a无法出入校园,只能通过网络登录x的网站购买车票。整个atn协商过程可能像下面一样进行。
12.1、a登录网站x并注册账号密码,发起购买打折火车票的流程。
13.2、x回复购买打折火车票的策略,要求a同时提供身份证和学生证照片。
14.3、a不介意向x提供学生证照片,但是在提供身份证照片之前要求x提供营业执照和铁路部门的资质证明,确认x是代售打折火车票的正规网点。
15.4、x不介意提供营业执照,但需要a提供姓名及身份证号才能提供铁路部门的资质证明。
16.5、a判断姓名和身份证号是可以直接提供的,于是将其提供给了x。
17.6、x相应的也向a提供了营业执照和资质证明。
18.7、此时,a知道可以信任x是正规的火车票代购网点,于是提供了身份证和学生证照片。
19.8、此时,x确认a的大学生身份是真实的,于是为其办理的打折火车票。
20.上例中的每一步,各方在考虑应该如何向对方发送何种消息时可以有多种选择,这种选择由协商策略来决定,而消息是照片格式还是其它格式则是对应的协商协议。
21.atn系统中的协商协议一般与协商策略强相关,协商策略控制消息的确切内容,即信任协商策略决定透露哪些信任证书和访问策略等信息、在什么时机透露以及在何种情况下终止协商,而协商协议则定义消息发送的次序以及消息所包含信息的类别。在现阶段的atn技术体系下,协商策略主要分为rcs型(relevant credentials set,相关信任证书集)和arp型(all relevant policies,所有相关访问控制策略)。其主要区别在于:当使用rcs型协商策略时,协商双方彼此之间不交换完整的访问控制策略,而是相互透露己方已解锁的信任证书和待对方提供的相关信任证书;当使用arp型协商策略时,协商双方轮流交换彼此的访问控制策略和信任证书,每个协商方总是必须透露所有新近解锁的访问控制策略,而所透露的信任证书必须是己方已解锁且出现在对方已透露的访问控制策略中。由此可见,使用atn系统虽然能够解决第三方/担保人带来的问题,但也会同时引入以下新的问题:
22.1、业务使用者a和服务提供者x的访问控制策略相互独立,信任协商并不总是能够成功,协商过程中消耗的大量时间资源、网络资源、系统资源都被浪费了。
23.2、无论协商成功与否,业务使用者a和服务提供者x的证书信息都会被一定程度的透露,由此会引发新的信息安全隐患。
24.鉴于此,如何克服现有技术所存在的缺陷,解决现有零信任相关技术系统架构中普遍存在的三点问题和atn系统的两点不完备之处,就成为业界亟待解决的重要技术难题。


技术实现要素:

25.针对现有技术的以上缺陷或改进需求,本发明提供一种基于代理的自信任协商预测方法、系统及装置,通过读取并汇总信任协商双方的访问控制策略和证书以形成相应的对应关系,将汇总后的对应关系集合转化为有向图,通过计算该有向图的两个端点之间是否存在最短路劲,进而可以对本次信任协商结果是否可以成功进行预测,当且仅当预测结果为成功时才继续后续的双方协商过程,从而大幅节省协商双方的系统资源、时间资源和网络资源,也能够避免协商双方的敏感证书信息在一次失败的协商过程中被互相透露。
26.本发明实施例采用如下技术方案:
27.第一方面,本发明提供了一种基于代理的自信任协商预测方法,包括:
28.协商双方初始化本次自信任协商各自所启用的访问控制策略和证书并将其存入各自的协商策略模块;
29.协商双方的代理策略模块从各自的协商策略模块中读取一系列访问控制策略和证书,建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系,并将该对应关系的集合发送至各自的代理预测模块进行保存;
30.协商双方的代理预测模块交换各自保存的对应关系集合并根据双方的对应关系集合生成对应关系的有向图;
31.协商双方的代理预测模块分别根据有向图计算是否存在从服务请求方资源定点到服务提供方资源定点的最短路径,以预测本次自信任协商是否可以成功。
32.进一步的,所述建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系具体包括:
33.若访问控制策略c1为:想要访问资源a1需要具备证书x1,则建立对应关系s1为:a1

x1;
34.若访问控制策略c2为:资源a2可对任何人开放,则建立对应关系s2为:a2

true;
35.其中,资源a1、a2分别为资源定点、证书以及访问控制策略中的一种。
36.进一步的,所述建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系还包括:
37.若访问控制策略c3为:想要访问资源a3需要具备证书x2或x3,则建立对应关系s3为:a3

x2vx3;
38.若访问控制策略c4为:想要访问资源a4需要具备证书x4和x5,则建立对应关系s4为:a4

x4^x5;
39.其中,资源a3、a4分别为资源定点、证书以及访问控制策略中的一种。
40.进一步的,所述协商双方的代理预测模块分别根据有向图计算是否存在从服务请求方资源定点到服务提供方资源定点的最短路径,以预测本次自信任协商是否可以成功具体包括:
41.协商双方的代理预测模块分别根据自身的有向图生成邻接矩阵;
42.协商双方的代理预测模块分别计算自身邻接矩阵的起点和终点间的最短路径;所述邻接矩阵的起点和终点分别为服务请求方的资源定点以及服务提供方的资源定点;
43.根据是否存在最短路径来预测本次自信任协商是否可以成功。
44.进一步的,所述根据是否存在最短路径来预测本次自信任协商是否可以成功具体
包括:
45.若存在最短路径,则预测本次自信任协商可以成功;
46.若不存在最短路径,则预测本次自信任协商不可以成功。
47.进一步的,协商双方中先行完成计算的一方提前获知本次自信任协商最终是否可以成功,若可以成功则继续完成剩下的自信任协商过程,另一方对应的进行配合,若不可以成功则终止自信任协商过程,另一方对应的也终止协商。
48.进一步的,计算最短路径的算法包括迪杰斯特拉算法、弗洛伊德算法、bf算法以及sfpa算法中的一种或多种。
49.第二方面,本发明还提供了一种基于代理的自信任协商预测系统,用于实现如第一方面所述的基于代理的自信任协商预测方法,所述预测系统包括分别设置在服务请求方和服务提供方的代理策略模块以及代理预测模块,其中:
50.所述代理策略模块用于获取本方atn系统的协商策略模块中本次协商流程所启用的全部访问控制策略和证书,建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系,并将对应关系的集合发送至代理预测模块;
51.所述代理预测模块用于与对方的代理预测模块交换对应关系集合并生成对应关系的有向图,然后根据有向图计算是否存在从服务请求方资源定点到服务提供方资源定点的最短路径,以预测本次自信任协商是否可以成功。
52.进一步的,所述代理策略模块以及代理预测模块设置在本方atn系统的协商协议模块以及协商策略模块之间,所述代理预测模块用于与对方的代理预测模块交换对应关系集合具体包括:
53.本方的代理预测模块将保存的对应关系集合进行复制并发送给本方atn系统的协商协议模块,然后通过自信任协商双方之间的网络发送至对方atn系统的协商协议模块,然后保存于对方的代理预测模块。
54.第三方面,本发明提供了一种基于代理的自信任协商预测装置,具体为:包括至少一个处理器和存储器,至少一个处理器和存储器之间通过数据总线连接,存储器存储能被至少一个处理器执行的指令,指令在被处理器执行后,用于完成第一方面中的基于代理的自信任协商预测方法。
55.与现有技术相比,本发明的有益效果在于:通过读取并汇总信任协商双方的访问控制策略和证书为相应的对应关系,将汇总后的对应关系集合转化为有向图,通过计算该有向图的两个端点之间是否存在最短路劲,进而可以对本次信任协商结果是否可以成功进行预测,当且仅当预测结果为成功时才继续后续的双方协商过程,从而大幅节省协商双方的系统资源、时间资源和网络资源,也能够避免协商双方的敏感证书信息在一次失败的协商过程中被互相透露。本发明能使得信任协商双方之间的双向信任关系的建立过程更为完备、高效。
附图说明
56.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他
的附图。
57.图1为本发明背景技术提供的基于可信第三方/担保人的零信任系统模型示意图;
58.图2为本发明背景技术提供的一般atn系统模型示意图;
59.图3为本发明背景技术提供的一般atn系统原理示意图;
60.图4为本发明实施例1提供的一种基于代理的自信任协商预测方法流程图;
61.图5为本发明实施例1提供的步骤400具体流程图;
62.图6为本发明实施例2提供的ma以及mx的邻接矩阵示意图;
63.图7为本发明实施例2提供的节点等价示意图;
64.图8为本发明实施例2提供的访问控制策略等价为一系列节点的联通情况示意图;
65.图9为本发明实施例2提供的最后等价出的有向图;
66.图10为本发明实施例2提供的有向图的最短路径示意图;
67.图11为本发明实施例3提供的一种基于代理的自信任协商预测系统模块连接示意图;
68.图12为本发明实施例3提供的系统拓扑示意图;
69.图13为本发明实施例3提供的系统功能流程图;
70.图14为本发明实施例4提供的一种基于代理的自信任协商预测装置结构示意图。
具体实施方式
71.为了使本发明的目的、技术方案及优点更加清楚明白,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,并且这里所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。另外,本发明提供的各个实施例或单个实施例中的技术特征可以相互任意结合,以形成可行的技术方案,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时,应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
72.本发明是一种特定功能系统的体系结构,因此在具体实施例中主要说明各结构模组的功能逻辑关系,并不对具体软件和硬件实施方式做限定。
73.下面就参考附图和实施例结合来详细说明本发明。
74.实施例1:
75.如图4所示,本发明实施例提供一种基于代理的自信任协商预测方法,具体步骤如下。
76.步骤100:协商双方初始化本次自信任协商各自所启用的访问控制策略和证书并将其存入各自的协商策略模块。该步骤基于背景技术中现有的atn系统模型,在一次基于atn系统的自信任协商流程被激活时,协商双方按照正常流程初始化本次协商各自所启用的访问控制策略和证书并将其存入各自的协商策略模块。
77.步骤200:协商双方的代理策略模块从各自的协商策略模块中读取一系列访问控制策略和证书,建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系,并将该对应关系的集合发送至各自的代理预测模块进行保存。该步骤需要在协商双方
(例如背景技术中的客户系统端为协商发起方也为服务请求方,服务器系统端为协商接收方也为服务提供方)均加入代理系统的功能,也即代理策略模块和代理预测模块。另外,该步骤主要是用于双方通过访问控制策略和证书来得到一系列对应关系,该步骤中的资源定点分为服务请求方资源定点和服务提供方资源定点,其中,服务请求方资源定点可以理解为请求的客户端,而服务提供方资源定点可以理解为服务端中被请求的服务资源,证书可以理解为请求方和服务提供方所具备的资质(例如背景技术中的身份证明、营业执照等),访问控制策略可以理解为提供证书的条件、通道或路径。
78.具体的,对于步骤200可以一个例子来说明,协商发起方a的代理系统中的代理策略模块从协商策略模块中读取a的一系列访问控制策略ca1至can和证书sa1至san,将其转换为对应关系ba1至ban,然后封装为对应关系集合policya发送并保存至协商发起方a的代理系统中的代理预测模块。于此同时,协商接收方x的代理系统也通过类似的步骤,将访问控制策略cx1至cxm和证书sx1至sxm处理为对应关系集合policyx并保存至协商接收方x的代理系统中的代理预测模块。
79.步骤300:协商双方的代理预测模块交换各自保存的对应关系集合并根据双方的对应关系集合生成对应关系的有向图。继续以上述例子进行说明,本步骤中,协商双方的代理预测模块可以交换对应关系集合policya和policyx,协商双方的代理预测模块在接收到对方的对应关系集合后,将其与自身的对应关系集合进行整合,例如协商发起方a将其整合为policya+policyx,协商接收方x将其整合为policyx+policya,然后协商发起方a根据policya+policyx生成有向图dga,协商接收方x根据policyx+policya生成有向图dgx。
80.步骤400:协商双方的代理预测模块分别根据有向图计算是否存在从服务请求方资源定点到服务提供方资源定点的最短路径,以预测本次自信任协商是否可以成功。在本步骤中,根据有向图计算是否存在从服务请求方资源定点到服务提供方资源定点的最短路径可以直接以有向图来计算,也可以通过有向图生成邻接矩阵后再来计算。
81.以生成邻接矩阵为例,如图5所示,上述步骤400可以包括以下步骤:
82.步骤401:协商双方的代理预测模块分别根据自身的有向图生成邻接矩阵。继续以上面的例子进行说明,该步骤中,可以通过有向图dga生成邻接矩阵ma,通过有向图dgx生成邻接矩阵mx。
83.步骤402:协商双方的代理预测模块分别计算自身邻接矩阵的起点和终点间的最短路径。所述邻接矩阵的起点和终点分别为服务请求方的资源定点以及服务提供方的资源定点。继续以上面的例子进行说明,该步骤中,便可以通过邻接矩阵ma的起点和终点得到最短路径patha,通过邻接矩阵mx的起点和终点得到最短路径pathx。
84.步骤403:根据是否存在最短路径来预测本次自信任协商是否可以成功。在该步骤中,当有向图或邻接矩阵存在起点和终点间的最短路径时,则预测本次自信任协商可以成功;当有向图或邻接矩阵不存在起点和终点间的最短路径时,则预测本次自信任协商不可以成功。另外,在本优选实施例中,由于双方系统计算能力的不同,所以一般会有一方先行计算出是否存在最短路径,这样一来,当有向图或邻接矩阵存在起点到终点间的最短路径时,先行完成计算的一方可提前获知本次自信任协商最终可以完成,于是按照原本atn系统的正常流程继续完成剩下的自信任协商过程,另一方对应的进行配合;当有向图或邻接矩阵不存在起点到终点间的最短路径时,先行完成计算的一方可提前获知本次自信任协商最
终不可以完成,于是按照正常流程终止自信任协商过程,另一方对应的也终止协商。由先行完成计算的一方提前进行操作可以节约时间,使协商过程更为高效。
85.还需要说明的是,在本优选实施例的上述过程中,建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系具体可以包括如下几种情况(为方便描述,下面例子中的符号与上面那个例子中的符号有部分相同,但可以视为不产生关联):
86.若访问控制策略c1为:想要访问资源a1需要具备证书s1,则建立对应关系b1为:a1

s1。这种建立方式是一对一的对应关系建立方式,其中,资源a1可以是资源定点、证书以及访问控制策略中的任意一种,当a1为访问控制策略时,可以将该访问控制策略所代表的对应关系代入a1

s1中,以形成更为具体的对应关系,例如a1所代表的访问控制策略具有a5

s6(a5也为资源定点、证书以及访问控制策略中的任意一种,s6为证书)的对应关系,那么a1

s1可以更新为a5

s6

s1。同样,若a5也代表一种访问控制策略,那么就可以继续代入,依次类推,直到an为资源定点或证书为止。
87.若访问控制策略c2为:资源a2可对任何人开放,则建立对应关系b2为:a2

true。该种对应方式下,说明资源a2可以直接被对方获得,其中,资源a2可以是资源定点、证书以及访问控制策略中的任意一种。例如a2为一个证书,那么对方不需要任何条件就能获取该证书。
88.若访问控制策略c3为:想要访问资源a3需要具备证书s2或s3,则建立对应关系b3为:a3

s2vs3。该种对应方式说明只需要满足证书s2或s3就可以访问资源a3,其中,资源a3可以是资源定点、证书以及访问控制策略中的任意一种,该方式也可以与前面的方式相结合来形成更多的对应关系。
89.若访问控制策略c4为:想要访问资源a4需要具备证书s4和s5,则建立对应关系b4为:a4

s4^s5。该种对应方式说明需要同时满足证书s2和s3才可以访问资源a4,其中,资源a4可以是资源定点、证书以及访问控制策略中的任意一种,该方式也可以与前面的方式相结合来形成更多的对应关系。
90.综上所述,本优选实施例通过读取并汇总信任协商双方的访问控制策略和证书为相应的对应关系,将汇总后的对应关系集合转化为有向图,通过计算该有向图的两个端点之间是否存在最短路劲,进而可以对本次信任协商结果是否可以成功进行预测,当且仅当预测结果为成功时才继续后续的双方协商过程,从而大幅节省协商双方的系统资源、时间资源和网络资源,也能够避免协商双方的敏感证书信息在一次失败的协商过程中被互相透露。
91.实施例2:
92.基于实施例1提供的基于代理的自信任协商预测方法,本实施例2通过一个具体的应用例子来对本发明进行更详细的说明。
93.首先,为了说明本发明实施例的可行性,做出不失一般性的场景假设:
94.服务器端x:
95.(1)服务器端x拥有资源r,资源r受访问控制策略的保护,该策略规定想要访问r需要满足以下两个条件之一:(a)同时拥有证书a1和a2;(b)拥有证书a3。
96.(2)资源r的访问控制策略又受到另一条访问控制策略保护:想要知道资源r的访问控制策略必须拥有证书a4。
97.(3)服务器自身具备的证书有x1,x2,x3,分别的访问策略为:(a)想要获知证书x1的内容则必须具备a3证书;(b)证书x2的内容可以对任何人开放;(c)想要获知证书x3的内容则必须具备a4证书。
98.客户端a:
99.客户端a拥有证书a1,a2,a3,a4,分别的访问控制策略为:(a)证书a1受访问控制策略保护,即想要访问证书a1需要具备证书x2,同时该访问控制策略受另一条访问控制策略的保护,想知道a1的访问控制策略则需具备证书x3;(b)证书a2受访问控制策略保护,即想要访问证书a2需要具备证书x1,同时该访问控制策略受另一条访问控制策略的保护,想知道a2的访问控制策略则需具备证书x3;(c)要获知证书a3的内容则必须具备x3证书;(d)要访问证书a4需要具备证书x2。
100.当客户端a向服务器端x发起访问资源r的请求时,双方进入自信任协商,按照本发明的原理具体协商过程如下:
101.客户端a的代理系统中的代理策略模块从协商策略模块中读取a的一系列访问控制策略和相关证书:
102.ca1:想要访问证书a1需要具备证书x2(访问控制策略)。
103.ca2:想知道ca1则需具备证书x3(访问控制策略)。
104.ca3:想要访问证书a2需要具备证书x1(访问控制策略)。
105.ca4:想知道ca3则需具备证书x3(访问控制策略)。
106.ca5:要访问证书a3需要具备证书x3(访问控制策略)。
107.ca5:要访问证书a4需要具备证书x2(访问控制策略)。
108.sa1:a1(证书)。
109.sa2:a2(证书)。
110.sa3:a3(证书)。
111.sa4:a4(证书)。
112.客户端a的代理系统中的代理策略模块将以上访问控制策略和证书转换为对应关系:
113.ba1:a1

x2

x3(对应关系)。
114.ba2:a2

x1

x3(对应关系)。
115.ba3:a3

x3(对应关系)。
116.ba4:a4

x2(对应关系)。
117.客户端a的代理系统中的代理策略模块将以上对应关系封装为对应关系集合policya:
118.policya:{a1

x2

x3,a2

x1

x3,a3

x3,a4

x2}。
119.在客户端a的代理系统中的代理策略模块将访问控制策略和相关证书转换为对应关系的同时,服务器端x的代理系统中的代理策略模块也遵照相同过程将资源r的访问控制策略和相关证书转换为对应关系并封装为表对应关系集合policyx:
120.bx1:r

(a1^a2)va3(对应关系)。
121.bx2:r

(a1^a2)va3

a4(对应关系)。
122.bx3:x1

a3(对应关系)。
123.bx4:x2

true(对应关系)。
124.bx5:x3

a4(对应关系)。
125.policyx:{r

(a1^a2)va3

a4,x1

a3,x2

true,x3

a4}。
126.客户端a的代理系统中的代理预测模块和服务器端x的代理系统中的代理预测模块交换policya和policyx信息,分别在代理预测模块内部生成有向图dga和有向图dgx的邻接矩阵ma和mx,并计算patha和pathx。需说明的是,一个有向图在计算机系统内部可用一个由存储顶点信息和描述顶点之间关系的边的信息的二维数组表示,即有向图的邻接矩阵m。该二维数组的列单元m[j]代表起点,行单元m[k]代表终点。当有向图中存在一条从某起点j至某终点k的路径,则m[j][k]=1,否则m[j][k]为空。如图6所示,为本实施例通过上述方式生成的ma(客户端a生成的邻接矩阵)和mx(客户端a生成的邻接矩阵)的邻接矩阵示意图。由于无论policya和policyx的合并方式如何变化,都不改变协商双方的证书资源和访问控制策略,因此可以确定有向图dga和有向图dgx的邻接矩阵ma和mx是等价的,进而对邻接矩阵ma和mx分别计算获得的最短路径也是相同的。
[0127]
为了满足一般性和普适性原则,在本次协商最终能够成功的前提下,客户端a的代理系统中的代理预测模块和服务器端x的代理系统中的代理预测模块可使用现有的一系列经典算法,如迪杰斯特拉算法(dijkstra algorithm)或弗洛伊德算法(floyd algorithm)分别获得最短路径patha和pathx,并且最短路径patha和pathx实际上为同一条路径。除迪杰斯特拉算法和弗洛伊德算法外,为了追求效率,还可以使用一系列基于杰斯特拉算法和弗洛伊德算法的改进型算法,如:bf算法或sfpa算法。列举的这些经典算法都为现有技术,故不再对其具体如何运算进行赘述。
[0128]
当有向图dga或有向图dgx能够通过最短路径算法得出最短路径patha或pathx时,说明本次自适应协商可以成功,后续将继续按照atn系统的标准流程进行访问控制策略和证书的逐步交换。相应的,当最短路径patha或pathx不存在时,则说明本次自适应协商无法成功,提前计算得出此结果的一方按照atn系统的标准流程中止协商。
[0129]
本实施例中,为方便理解“有向图的最短路径是否存在”与“自信任协商是否可以成功之间”的对应关系,进一步解释说明如下:
[0130]
沿用上述客户端a和服务器端x的自信任协商场景,如果我们将客户端a所拥有的一系列证书视为一个个节点,将访问控制策略视为节点之间的有向通路,则一次atn系统的自信任协商过程可被视为“在限定各节点联通条件的场景下,检测是否存在一条从a端到r端的路径”。上述实现过程如下。
[0131]
如图7所示,先将资源定点以及证书等价为一系列节点,图中,客户端包括节点a、a1、a2、a3、a4,其中的a为服务请求方资源定点,代表该客户端,a1、a2、a3、a4则为证书;服务器端包括节点r、x1、x2、x3,其中的r为服务提供方资源定点,代表客户端所请求的资源,x1、x2、x3则为证书。
[0132]
如图8所示,为访问控制策略等价为一系列节点的联通情况示意图,各节点间的联通根据设定的访问控制策略来进行,访问控制策略:r

(a1^a2)va3可以等价为r

(a1^a2)或r

a3,图中的节点连接箭头方向即代表节点间可以联通的方向,其中a1、a2到r间的箭头包含一份实线以及一份虚线,代表需要a1、a2两个节点都满足才能到达r。
[0133]
如图9所述,为最后等价出的有向图,每一次自信任协商过程可等价为一个有向
图。最后从有向图中寻找是否有最短路径能够从a到r,如果存在则代表协商能够成功,如果不存在则代表协商必定无法成功(如图10所示,本例的最短路径如灰色箭头路线,从a到x2到a4到a3到r,代表协商可以成功)。
[0134]
综上所述,本实施例通过一种创新性的预测方法,将原本无法预测结果的自信任协商过程变得可以预测,进而极大程度的节省自信任协商过程中浪费的系统资源、网络资源以及避免不必要的证书和访问控制信息暴露。
[0135]
实施例3:
[0136]
在上述实施例1至实施例2提供的基于代理的自信任协商预测方法的基础上,本发明还提供了一种可用于实现上述方法的基于代理的自信任协商预测系统,如图11所示,所述预测系统包括代理策略模块(也即图中代理系统的策略模块)以及代理预测模块(也即图中代理系统的预测模块),且所述预测系统在服务请求方和服务提供方两方均有设置,每个预测系统均设置在本方atn系统的协商协议模块以及协商策略模块之间,参考图12的系统拓扑示意图,图中代理系统a也即本实施例在服务请求方(客户端)的预测系统,代理系统x也即本实施例在服务提供方(服务器端)的预测系统,两个预测系统均设置在原本atn系统的协商协议模块和协商策略模块之间,而其他模块则均与原本atn系统一致,在此不做赘述。
[0137]
其中,所述代理策略模块与atn系统的协商策略模块相连,当一次自信任协商流程被激活时,本端代理系统的代理策略模块从本端atn系统的协商策略模块中获取本次协商流程所启用的全部访问控制策略和证书,建立以资源定点为目标、以证书为节点、以访问控制策略为通道的对应关系,并将对应关系的集合发送至代理预测模块。
[0138]
所述代理预测模块用于保存本端的对应关系集合,然后通过自信任协商双方之间的网络发送至对端atn系统的协商协议模块,并保存于对端代理系统的代理预测模块。同样的,对端代理系统的代理预测模块也以相同方式将对端的对应关系集合发送至本端代理系统的代理预测模块。代理预测模块在汇总双方的对应关系集合后,根据该集合生成有向图,并根据有向图是否存在从服务请求方资源定点到服务提供方资源定点的最短路径来预测本次自信任协商是否可以成功。若可以成功,则双方按照正常流程完成剩下的自信任协商过程;若不可能成功,则提前终止。
[0139]
上述预测系统功能若以流程来体现,可如图13所述:协商双方开始信任协商流程;协商双方的代理系统读取本方的访问控制策略信息;协商双方的代理系统交换访问控制策略信息,并各自生成决策图(该决策图可以为有向图,也可以为根据有向图生成的邻接矩阵图);协商双方的代理系统根据本方的决策图预测协商结果;若预测结果为“成功”,协商双方继续后续的信任协商流程;若预测结果为“失败”,协商双方终止后续的信任协商流程。
[0140]
本实施例通过在开放网络环境下,网络服务的请求方和提供方互不信任时,提供一种新设计的代理预测系统,将服务请求方和服务提供方在完成本次网络服务时需达到的最低互信等级的相互要求(也即证书和访问控制策略)进行整合,然后根据实施例1所述的预测方法快速判断服务双方是否可以最终达到完成本次网络服务所需要达到的最低互信等级(也即是否存在决策图的起点到终点的最短路径),并依照此预测结果选择继续协商步骤以实现本次网络服务的请求方和提供方的互信,或者选择提前终止协商步骤以避免系统资源的浪费和不必要信息的泄露。
[0141]
实施例4:
[0142]
在上述实施例1至实施例2提供的基于代理的自信任协商预测方法的基础上,本发明还提供了一种可用于实现上述方法的基于代理的自信任协商预测装置,如图14所示,是本发明实施例的装置架构示意图。本实施例的基于代理的自信任协商预测装置包括一个或多个处理器21以及存储器22。其中,图14中以一个处理器21为例。
[0143]
处理器21和存储器22可以通过总线或者其他方式连接,图14中以通过总线连接为例。
[0144]
存储器22作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如实施例1至实施例2中的基于代理的自信任协商预测方法。处理器21通过运行存储在存储器22中的非易失性软件程序、指令以及模块,从而执行基于代理的自信任协商预测装置的各种功能应用以及数据处理,即实现实施例1至实施例2的基于代理的自信任协商预测方法。
[0145]
存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器22可选包括相对于处理器21远程设置的存储器,这些远程存储器可以通过网络连接至处理器21。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0146]
程序指令/模块存储在存储器22中,当被一个或者多个处理器21执行时,执行上述实施例1至实施例2中的基于代理的自信任协商预测方法,例如,执行以上描述的图4、图5所示的各个步骤。
[0147]
本领域普通技术人员可以理解实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(readonlymemory,简写为:rom)、随机存取存储器(randomaccessmemory,简写为:ram)、磁盘或光盘等。
[0148]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1