一种信任网络构建方法及装置与流程

文档序号:16246494发布日期:2018-12-11 23:37阅读:239来源:国知局
一种信任网络构建方法及装置与流程

本发明涉及计算机技术领域,特别涉及一种信任网络构建方法及装置。

背景技术

区块链本质上是一个去中心化的数据库,基于区块链上所存储数据无法被篡改的特性,区块链在金融、保险、医疗等领域具有广泛的应用前景。在将区块链应用于具体业务场景时,需要构建信任网络,由信任网络包括的各个信任节点对写入区块链的信息进行共识,以确定写入区块链中的信息是否可信。

目前,在构建信任网络时,针对需要加入信任网络的节点,获取该节点的环境信息进行审核,如果该节点的环境信息符合信任网络的要求,则将该节点加入到信任网络中。

针对目前构建信任网络的方法,通常由人工或特定的审核节点对申请加入信任网络的节点的环境信息进行审核,如果人工审核过程出现失误或审核节点被病毒程序控制,则可能将环境信息不满足信任网络要求的节点加入到信任网络中,导致信任网络的可信程度降低。因此,通过现有信任网络构建方法所构建信任网络的可信程度较低。



技术实现要素:

本发明实施例提供了一种信任网络构建方法及装置,能够提升所构建信任网络的可信程度。

第一方面,本发明实施例提供了一种信任网络构建方法,包括:

在申请加入所述信任网络的目标节点上安装代理程序;

通过所述代理程序获取所述目标节点的第一环境信息,并将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点;

利用所述至少两个第一共识节点,根据所述第一共识请求携带的所述第一环境信息判断所述目标节点是否可信;

如果是,将所述目标节点加入到的所述信任网络中;

如果否,拒绝所述目标节点加入所述信任网络的申请。

可选地,

所述第一环境信息包括:所述目标节点的操作系统版本、所述代理程序的版本、所述目标节点的网络协议版本、所述目标节点的可信计算环境信息、所述目标节点的应用环境信息以及当前时间中的任意一个或多个;

其中,所述当前时间为获取所述环境信息的时间,且所述当前时间通过协调世界时utc校准。

可选地,

在所述通过所述代理程序获取所述目标节点的第一环境信息之后,且在所述将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点之前,进一步包括:

通过所述代理程序对所述第一环境信息进行哈希运算,获得相对应的环境哈希值;

且,所述将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点,包括:

将携带所述环境哈希值的第一共识请求发送给所述信任网络中的至少两个第一共识节点。

可选地,

所述将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点,包括:

以广播的形式向所述信任网络包括的各个节点发送携带所述第一环境信息的第一共识请求;

将在预设的等待时间内接收到所述第一共识请求的至少两个所述节点确定为所述第一共识节点,其中,所述等待时间从发送所述第一共识请求的时刻开始计时。

可选地,

所述利用所述至少两个第一共识节点,根据所述第一共识请求携带的所述第一环境信息判断所述目标节点是否可信,包括:

分别获取每一个所述第一共识节点对所述目标节点的共识结果,其中,所述共识结果由相对应的所述第一共识节点根据所述第一共识请求携带的所述第一环境信息和预先设定的白名单而确定,如果所述第一环境信息与所述白名单记录的信息相符则确定所述目标节点的共识结果为可信,如果所述第一环境信息与所述白名单记录的信息不符则确定所述目标节点的共识结果为不可信;

根据获取到的各个所述共识结果,通过如下公式计算所述目标节点的可信概率;

其中,所述m0表征所述第一共识节点的个数;所述m1表征确定所述目标节点的共识结果为可信的所述第一共识节点的个数;所述k表征调节系数,且0<k≤1;所述表征从m0个所述节点中选择m0-m1个所述第一共识节点的组合数;

如果所述可信概率大于预先设定的概率阈值,确定所述目标节点可信,否则确定所述目标节点不可信。

可选地,

该信任网络构建方法,进一步包括:

针对所述信任网络包括的每一个节点,预先设定一个相对应的触发值;

针对每一个所述节点,通过贝叶斯公式持续计算随机数,当计算出的所述随机数等于所述节点对应的所述触发值时,通过所述节点上安装的所述代理程序获取所述节点的第二环境信息,并将携带所述第二环境信息的第二共识请求发给所述信任网络中的至少两个第二共识节点,利用所述至少两个第二共识节点根据所述第二共识请求携带的所述第二环境信息判断所述节点是否可信,如果判断结果为所述节点不可信,则将所述节点从所述信任网络中移除。

第二方面,本发明实施例还提供了一种信任网络构建装置,包括:代理安装单元、请求发送单元、节点共识单元和网络构建单元;

所述代理安装单元,用于在申请加入所述信任网络的目标节点上安装代理程序;

所述请求发送单元,用于通过所述代理安装单元安装的所述代理程序获取所述目标节点的第一环境信息,并将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点;

所述节点共识单元,用于利用接收到所述请求发送单元发送的所述第一共识请求的所述至少两个第一共识节点,根据所述第一共识请求携带的所述第一环境信息判断所述目标节点是否可信;

所述网络构建单元,用于根据所述节点共识单元的判断结果,如果所述目标节点可信则将所述目标节点加入到所述信任网络中,如果所述目标节点不可信则拒绝所述目标节点申请加入所述信任网络。

可选地,

所述请求发送单元,在执行所述将携带所述第一环境信息的第一共识请求发送给所述信任网络中的至少两个第一共识节点时,具体用于:

通过所述代理程序对所述第一环境信息进行哈希运算,获得相对应的环境哈希值,并将携带所述环境哈希值的所述第一共识请求发送给所述信任网络中的至少两个所述第一共识节点。

可选地,

所述请求发送单元,用于以广播的形式向所述信任网络包括的各个节点发送携带所述第一环境信息的所述第一共识请求,并将在预设的等待时间内接收到所述第一共识请求的至少两个所述节点确定为所述第一共识节点,其中,所述等待时间从发送所述第一共识请求的时刻开始计时。

可选地,

所述节点共识单元,具体用于执行如下步骤:

分别获取每一个所述第一共识节点对所述目标节点的共识结果,其中,所述共识结果由相对应的所述第一共识节点根据所述第一共识请求携带的所述第一环境信息和预先设定的白名单而确定,如果所述第一环境信息与所述白名单记录的信息相符则确定所述目标节点的共识结果为可信,如果所述第一环境信息与所述白名单记录的信息不符则确定所述目标节点的共识结果为不可信;

根据获取到的各个所述共识结果,通过如下公式计算所述目标节点的可信概率;

其中,所述m0表征所述第一共识节点的个数;所述m1表征确定所述目标节点的共识结果为可信的所述第一共识节点的个数;所述k表征调节系数,且0<k≤1;所述表征从m0个所述节点中选择m0-m1个所述第一共识节点的组合数;

如果所述可信概率大于预先设定的概率阈值,确定所述目标节点可信,否则确定所述目标节点不可信。

可选地,

该信任网络构建装置,进一步包括:共识控制单元;

所述共识控制单元,用于针对所述信任网络包括的每一个所述节点,预先设定一个相对应的触发值,并通过贝叶斯公式持续计算随机数,当计算出的所述随机数等于所述节点对应的所述触发值时向所述请求发送单元发送触发指令;

所述请求发送单元,进一步用于在接收到所述触发指令后,通过所述节点上安装的所述代理程序获取所述节点的第二环境信息,并将携带所述第二环境信息的第二共识请求发给所述信任网络中的至少两个第二共识节点;

所述节点共识单元,进一步用于利用接收到所述请求发送单元发送的所述第二共识请求的所述至少两个第二共识节点,根据所述第二共识请求携带的所述第二环境信息判断所述节点是否可信;

所述网络构建单元,进一步用于根据所述节点共识单元的判断结果,如果判断结果为所述节点不可信,则将所述节点从所述信任网络中移除。

本发明实施例提供了信任网络构建方法及装置,当目标节点申请加入信任网络时,在目标节点上安装代理程序,通过代理程序获得目标节点的第一环境信息,并将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点,进而可以利用各个第一共识节点根据第一共识请求携带的第一环境信息来判断目标节点是否可信,如果判断结果为目标节点可信则将目标节点加入到信任网络中,如果判断结果为目标节点不可信则拒绝目标节点加入信任网络的申请。由此可见,判断目标节点是否可信的过程由信任网络中的多个共识节点实现,基于信任网络中共识节点具有较高的可信性,且由多个共识节点共同确定目标节点是否可信,可以避免由于人工审核失误或单一审核节点被病毒程序控制而将不可信节点加入到信任网络中的情况发生,从而可以提升所构建信任网络的可信程度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例提供的一种信任网络构建方法的流程图;

图2是本发明一个实施例提供的另一种信任网络构建方法的流程图;

图3是本发明一个实施例提供的一种信任网络构建装置所在设备的示意图;

图4是本发明一个实施例提供的一种信任网络构建装置的示意图;

图5是本发明一个实施例提供的另一种信任网络构建装置的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种信任网络构建方法,该方法可以包括以下步骤:

步骤101:在申请加入信任网络的目标节点上安装代理程序;

步骤102:通过代理程序获取目标节点的第一环境信息,并将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点;

步骤103:利用至少两个第一共识节点,根据第一共识请求携带的第一环境信息判断目标节点是否可信,如果是,执行步骤104,否则执行步骤105;

步骤104:将目标节点加入到的信任网络中,并结束当前流程;

步骤105:拒绝目标节点加入信任网络的申请。

本发明实施例提供了一种信任网络构建方法,当目标节点申请加入信任网络时,在目标节点上安装代理程序,通过代理程序获得目标节点的第一环境信息,并将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点,进而可以利用各个第一共识节点根据第一共识请求携带的第一环境信息来判断目标节点是否可信,如果判断结果为目标节点可信则将目标节点加入到信任网络中,如果判断结果为目标节点不可信则拒绝目标节点加入信任网络的申请。由此可见,判断目标节点是否可信的过程由信任网络中的多个共识节点实现,基于信任网络中共识节点具有较高的可信性,且由多个共识节点共同确定目标节点是否可信,可以避免由于人工审核失误或单一审核节点被病毒程序控制而将不可信节点加入到信任网络中的情况发生,从而可以提升所构建信任网络的可信程度。

可选地,在图1所示信任网络构建方法的基础上,由代理程序获取到的第一环境信息包括目标节点的操作系统版本、代理程序的版本、目标节点的网络协议版本、目标节点的可信计算环境信息、目标节点的应用环境信息以及当前时间中的部分或全部,其中,当前时间是指代理程序获取第一环境信息所包括其他各个信息的时间,且该当前时间通过协调世界时(coordinateduniversaltime,utc)校准。

代理程序获取目标节点的操作系统版本、网络协议版本、可信计算环境信息、应用环境信息以及当前时间和代理程序自身版本作为目标节点的第一环境信息,进而第一共识节点可以针对目标节点的操作系统、网络协议、可信计算环境、应用环境等多个方面进行共识,保证共识结果可以更加准确地反映目标节点的环境状态,进而可以保证加入信任网络的节点的可信性。

其中,将当前时间作为第一环境信息的一部分,可以保证第一环境信息所包括的其他信息反映的是目标节点的当前环境状态,进一步保证各个第一共识节点对目标节点进行共识的准确性。另外,将代理程序的版本作为第一环境信息的一部分,可以从信息的来源上确保第一环境信息的安全,进一步保证对目标节点进行共识的准确性。

需要说明的,代理程序独立运行于目标节点上,其采集第一环境信息的过程不受目标节点的控制,从而可以保证代理程序所采集到的第一环境信息与目标节点的实际环境相符,进而保证各个第一共识节点根据第一环境信息可以准确地确定目标节点是否可信,保证信任网络的安全性。

可选地,在图1所示信任网络构建方法的基础上,步骤102通过代理程序获取目标节点的第一环境信息之后,可以通过代理程序对获取到的第一环境信息进行哈希运算,获得与第一环境信息相对应的环境哈希值。相应地,步骤102将第一共识请求发送给信任网络中的至少两个第一共识节点时,可以将携带环境哈希值的第一共识请求发给信任网络中的至少两个第一共识节点。

代理程序在获取到的目标节点的第一环境信息后,需要根据获取到的第一环境信息生成第一共识请求,具体可以对第一环境信息进行哈希运算获得相对应的环境哈希值,进而生成携带有环境哈希值的第一共识请求。第一共识节点在接收到第一共识请求后,根据第一共识请求携带的环境哈希值可以确定目标节点是否可信。具体地,每一个第一共识节点上均存储有多个满足信任网络可信要求的节点环境信息的标准环境哈希值,对应于不同标准环境哈希值的节点环境信息包括有不完全相同的操作系统版本、代理程序版本、网络协议版本、可信计算环境信息和应用环境信息,如果第一共识请求携带的环境哈希值与其中一个标准环境哈希值相同,则相应的第一共识节点会确定目标节点可信。

代理程序通过对第一环境信息进行哈希运算获得与第一环境信息相对应的环境哈希值,进而将携带环境哈希值的第一共识请求发送给各个第一共识节点对目标节点进行共识,通过发送环境哈希值对目标节点进行共识可以减少第一共识请求的数据量,进而可以降低各个第一共识节点的数据传输压力。另外,通过发送环境哈希值对目标节点进行共识,可以避免直接发送第一环境信息时第一环境信息在发送过程中被篡改的情况发生,保证对目标节点进行共识的结果的可信性。

可选地,在图1所示信任网络构建方法的基础上,步骤102将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点,该步骤具体可以通过如下方式实现:

以广播的形式向信任网络包括的各个节点发送携带第一环境信息的第一共识请求,将在预设的等待时间内接收到第一共识请求的至少两个节点确定为第一共识节点,其中,等待时间从第一共识请求被发送的时刻开始计时。

安装于目标节点上的代理程序在生成第一共识请求后,以广播的形式向信任网络中的各个节点发送第一共识请求,信任网络中的各个节点均可以接收目标节点发送的第一共识请求,但仅有在等待时间内接收到第一共识请求的节点才会作为第一共识节点参与目标节点的共识。由于信任网络中各个节点与目标节点之间具有不同的通信距离,目标节点广播第一共识请求后信任网络中不同节点接收到第一共识请求的时间不同,通过设定等待时间将优先接收到第一共识请求的至少两个节点确定为第一共识节点参与目标节点的共识,使得不同的目标节点可以对应有不同的第一共识节点进行共识,避免采用固定节点对新加入信任网络的节点进行共识时,固定界定被置入恶意程序导致共识结果不准确的情况发生,从而可以进一步提升信任网络的安全性。

另外,将优先接收到第一共识请求的至少两个节点确定为第一共识节点参与目标节点的共识,可以缩短将第一共识请求发送给各个第一共识节点所需的时间,从而可以提升对目标节点进行共识的效率,提升用户的使用体验。

可选地,在上述实施例将等待时间内接收到第一共识请求的至少两个节点确定为第一共识节点的基础上,步骤103利用各个第一共识节点根据第一共识请求携带的第一环境信息判断目标节点是否可信,具体可以通过如下方式实现:

分别获取每一个第一共识节点对目标节点进行共识的共识结果,其中,共识结果由相应的第一共识节点根据第一共识请求携带的第一环境信息和预先设定的白名单而确定,如果第一环境信息与白名单记录的信息相符则确定目标节点的共识结果为可信,如果第一环境信息与白名单记录的信息不符则确定目标节点的共识结果为不可信;

根据从各个第一共识节点获取到的共识结果,通过如下公式计算目标节点的可信概率;

其中,m0表征第一共识节点的个数;m1表征确定目标节点的共识结果为可信的第一共识节点的个数;k表征调节系数,且0<k≤1;表征从m0个节点中选择m0-m1个第一共识节点的组合数;

根据目标节点的可信概率,如果可信概率大于预先设定的概率阈值则确定目标节点可信,如果可信概率小于或等于预先设定的概率阈值则确定目标节点不可信。

根据各个第一共识节点对目标节点进行共识的共识结果以及第一共识节点的数量和预先设定的调节系数,根据上述公式计算目标节点的可信概率,进而可以根据可信概率确定目标节点是否可信,由于综合了各个第一共识节点的共识结果,保证计算出的可信概率可以反映目标节点的可信程度,进而保证对目标节点进行共识的准确性。

在上述计算可信概率的公式中,调节系数k可以根据信任网络对安全性的要求来确定,信任网络对安全性要求越高调节系数k越小。当设置较小的调节系数k时,使得更多数量第一共识节点认为目标节点可信时才确定目标节点可信,提升信任网络的准入标准。用户可以根据信任网络对安全性和共识速度的要求,灵活地对调节系数k进行设置,从而可以满足不同用户的个性化需求,提升用户的使用满意度。

在具体业务实现过程中,调节系数k可以取值1/3、2/3或者1。

可选地,在上述各个实施例所提供信任网络构建方法的基础上,该信任网络构建方法可以对已加入信任网络的各个节点继续进行共识,以将不符合信任网络要求的节点从信任网络中移除,具体可以通过如下方式实现:

为信任网络包括的每一个节点预先设定相对应的触发值后,针对信任网络包括的每一个节点均执行如下操作:

s1:通过贝叶斯公式持续计算随机数;

s2:将每一次计算出的随机数与该节点对应的触发值进行比较,判断计算出的随机数是否与该节点对应的触发值相同,如果是,执行s3,否则执行s1;

s3:通过该节点上安装的代理程序获取该节点的第二环境信息,并将携带所获取第二环境信息的第二共识请求发送给信任网络中的至少两个第二共识节点,利用各个第二共识节点根据第二共识请求携带的第二环境信息判断该节点是否可信,如果是,执行s1,否则执行s4;

s4:将该节点从信任网络中移除。

针对已经加入信任网络的每一个节点,通过贝叶斯公式持续计算随机数,当计算出的随机数与该节点对应的触发值相同时,利用该节点上安装的代理程序获取该节点的第二环境信息,并通过第二共识请求将获取到的第二环境信息发送给信任网络中的多个第二共识节点进行共识处理,如果共识结果为该节点可信则继续计算随机数,如果共识结果为该节点不可信则将该节点从信任网络中移除。

具体地,本实施例中将第二共识请求发送给各个第二共识节点的实现方式可参照前述实施例中将第一共识请求发送给各个第一共识节点的实现方式,本实施例中利用各个第二共识节点根据第二环境信息判断节点是否可信的实现方式可参照前述实施例中利用各个第一共识节点根据第一环境信息判断目标节点是否可信的实现方式,本实施例中第二环境信息所包括的内容可参照前述实施例中第一环境信息所包括的内容,在此不再进行赘述。

首先,针对已经加入信任网络的每一个节点,当计算出与其所对应触发值相同的随机数时,通过对该节点进行共识来判断该节点的环境是否仍满足信任网络的要求,当确定该节点的环境不满足信任网络的要求时将该节点从信任网络中移除。这样,通过对信任网络中每一个节点进行不定时的共识,及时将信任网络中不可信的节点移除,可以进一步提升信任网络的安全性。

其次,通过贝叶斯公式持续计算随机数,当计算出的随机数与节点对应的触发值相同时对该节点进行一次共识,使得对信任网络中节点进行共识的时间和次数没有固定的规律,避免信任网络中的节点的环境仅在进行共识时满足信任网络的要求,而日常使用过程中并不满足信任网络要求的情况发生,从而可以进一步保证信任网络的可信性。

需要说明的是,为了进一步提升所构建信任网络的可信性,网络构建过程中涉及到的第一环境信息和各第一共识节点的共识结果可以写入区块链中,同时,第二环境信息和各第二共识节点的共识结果也可以写入区块链中。

下面结合具体的例子,对本发明实施例提供的信任网络构建方法作进一步详细说明,如图2所示,该方法可以包括以下步骤:

步骤201:在申请加入信任网络的目标节点上安装代理程序。

在本发明实施例中,当一个目标节点申请加入信任网络时,需要在该目标节点上安装代理程序。

步骤202:通过代理程序获取目标节点的第一环境信息。

在本发明实施例中,在目标节点上安装代理程序后,代理程序可以采集目标节点的操作系统版本、网络协议版本、可信计算环境信息、应用环境信息以及代理程序自身的版本信息和当前时间,代理程序将采集到的各项信息作为目标节点的第一环境信息。

步骤203:通过代理程序生成携带第一环境信息的第一共识请求。

在本发明实施例中,代理程序在采集到目标节点的第一环境信息后,可以通过预先设定的哈希算法对第一环境信息包括的目标节点的操作系统版本、网络协议版本、可信计算环境信息、应用环境信息以及代理程序自身的版本信息进行哈希运算,获得相对应的环境哈希值,之后代理程序可以生成携带有环境哈希值和当前时间的第一共识请求。

步骤204:通过代理程序将第一共识请求发送给信任网络中的至少两个第一共识节点。

在本发明实施例中,安装于目标节点上的代理程序在生成第一共识请求后,可以利用目标节点的通信资源以广播的形式向信任网络包括的各个节点发送其所生成的第一共识请求。信任网络包括的各个节点均可以接收目标节点发送的第一共识请求,其中在预设等待时间内接收到第一共识请求的至少两个节点可以作为第一共识节点参与目标节点的共识。

例如,预先设定等待时间为3秒,信任网络中包括有的10000个节点,目标节点上的代理程序以广播的形式向信任网络包括的10000个节点发送第一共识请求,在从代理程序发送第一共识请求结束后的3秒内,信任网络中的节点1至节点50接收到的第一共识请求,则节点1至节点50可以作为第一共识节点参与目标节点的共识过程。

步骤205:分别利用每一个第一共识节点根据第一共识请求判断目标节点是否可信。

在本发明实施例中,针对接收到第一共识请求的每一个第一共识节点,该第一共识节点从所接收到的第一共识请求中获取环境哈希值,确定环境哈希值对应的节点环境是否位于预先设定的白名单中,如果是,确定目标节点可信,否则确定目标节点不可信。需要说明的是,设置于不同第一共识节点上的白名单可以不同。

步骤206:根据各个第一共识节点的判断结果确定目标节点是否可信,如果是,执行步骤208,否则执行步骤207。

在本发明实施例中,在各个第一共识节点均判断出目标节点是否可信后,通过如下公式计算目标节点的可信概率,如果计算出的可信概率大于预先设定的概率阈值则确定目标节点可信,相应地执行步骤208,如果计算出的可信概率小于或等于预先设定的概率阈值则确定目标节点不可信,相应地执行步骤207。

用于计算目标节点可信概率的公式如下:

其中,m0表征第一共识节点的个数;m1表征确定目标节点的共识结果为可信的第一共识节点的个数;k表征调节系数,且0<k≤1;表征从m0个节点中选择m0-m1个第一共识节点的组合数。

例如,50个第一共识节点中有45个第一共识节点判断目标节点可信,其余5个第一共识节点判断目标节点不可信,则将m0=50,m1=45,k=1/3代入上述公式计算出目标节点的可信概率,由于计算出的可信概率大于预先设定的概率阈值0.001,从而确定目标节点可信。

步骤207:拒绝目标节点加入信任网络的申请,并结束当前流程。

在本发明实施例中,根据各个第一共识节点的共识结果确定目标节点不可信后,拒绝目标节点加入信任网络的请求。

步骤208:将目标节点加入到信任网络中。

在本发明实施例中,根据各个第一共识节点的共识结果确定目标节点可信后,将目标节点加入到信任网络中。

步骤209:对已经加入信任网络的节点进行日常共识,将不可信的节点从信任网络中移除。

在本发明实施例中,在针对信任网络包括的每一个节点,为该节点设定相对应的触发值,并开始利用贝叶斯公式持续计算随机数,当计算出的随机数与该节点的触发值相同时,通过该节点上的代理程序获取该节点的第二环境信息,通过预先设定的哈希算法对第二环境信息进行哈希运算获得相对应的环境哈希值后,生成携带第二环境信息所对应环境哈希值的第二共识请求广播给信任网络中的各个节点,利用在等待时间内接收到第二共识请求的至少两个第二共识节点根据第二环境信息对应的环境哈希值来确定该节点是否可信,如果可信则继续利用贝叶斯公式计算随机数,如果不可信则将该节点从信任网络中移除。

如图3、图4所示,本发明实施例提供了一种信任网络构建装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的信任网络构建装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的cpu将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的信任网络构建装置,包括:代理安装单元401、请求发送单元402、节点共识单元403和网络构建单元404;

代理安装单元401,用于在申请加入信任网络的目标节点上安装代理程序;

请求发送单元402,用于通过代理安装单元401安装的代理程序获取目标节点的第一环境信息,并将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点;

节点共识单元403,用于利用接收到请求发送单元402发送的第一共识请求的至少两个第一共识节点,根据第一共识请求携带的第一环境信息判断目标节点是否可信;

网络构建单元404,用于根据节点共识单元403的判断结果,如果目标节点可信则将目标节点加入到信任网络中,如果目标节点不可信则拒绝目标节点申请加入信任网络。

可选地,在图4所示信任网络构建装置的基础上,

请求发送单元402,在执行将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点时,具体用于:

通过代理程序对第一环境信息进行哈希运算,获得相对应的环境哈希值,并将携带环境哈希值的第一共识请求发送给信任网络中的至少两个第一共识节点。

可选地,在图4所示信任网络构建装置的基础上,

请求发送单元402,用于以广播的形式向信任网络包括的各个节点发送携带第一环境信息的第一共识请求,并将在预设的等待时间内接收到第一共识请求的至少两个节点确定为第一共识节点,其中,等待时间从发送第一共识请求的时刻开始计时。

可选地,在上述实施例请求发送单元402以广播形式向信任网络所包括各个节点发送第一共识请求的基础上,

节点共识单元403,具体用于执行如下步骤:

分别获取每一个第一共识节点对目标节点的共识结果,其中,共识结果由相对应的第一共识节点根据第一共识请求携带的第一环境信息和预先设定的白名单而确定,如果第一环境信息与白名单记录的信息相符则确定目标节点的共识结果为可信,如果第一环境信息与白名单记录的信息不符则确定目标节点的共识结果为不可信;

根据获取到的各个共识结果,通过如下公式计算目标节点的可信概率;

其中,m0表征第一共识节点的个数;m1表征确定目标节点的共识结果为可信的第一共识节点的个数;k表征调节系数,且0<k≤1;表征从m0个节点中选择m0-m1个第一共识节点的组合数;

如果可信概率大于预先设定的概率阈值,确定目标节点可信,否则确定目标节点不可信。

可选地,在图4所示信任网络构建装置的基础上,如图5所示,该信任网络构建装置进一步包括:共识控制单元505;

共识控制单元505,用于针对信任网络包括的每一个节点,预先设定一个相对应的触发值,并通过贝叶斯公式持续计算随机数,当计算出的随机数等于节点对应的触发值时向请求发送单元402发送触发指令;

请求发送单元402,进一步用于在接收到触发指令后,通过节点上安装的代理程序获取节点的第二环境信息,并将携带第二环境信息的第二共识请求发给信任网络中的至少两个第二共识节点;

节点共识单元403,进一步用于利用接收到请求发送单元402发送的第二共识请求的至少两个第二共识节点,根据第二共识请求携带的第二环境信息判断节点是否可信;

网络构建单元404,进一步用于根据节点共识单元403的判断结果,如果判断结果为节点不可信,则将节点从信任网络中移除。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明实施例还提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行上述各个实施例提供的信任网络构建方法。

本发明实施例还提供了一种存储控制器,包括:处理器、存储器和总线;

所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行上述各个实施例提供的信任网络构建方法。

综上所述,本发明各个实施例提供的信任网络构建方法及装置,至少具有如下有益效果:

1、在本发明实施例中,当目标节点申请加入信任网络时,在目标节点上安装代理程序,通过代理程序获得目标节点的第一环境信息,并将携带第一环境信息的第一共识请求发送给信任网络中的至少两个第一共识节点,进而可以利用各个第一共识节点根据第一共识请求携带的第一环境信息来判断目标节点是否可信,如果判断结果为目标节点可信则将目标节点加入到信任网络中,如果判断结果为目标节点不可信则拒绝目标节点加入信任网络的申请。由此可见,判断目标节点是否可信的过程由信任网络中的多个共识节点实现,基于信任网络中共识节点具有较高的可信性,且由多个共识节点共同确定目标节点是否可信,可以避免由于人工审核失误或单一审核节点被病毒程序控制而将不可信节点加入到信任网络中的情况发生,从而可以提升所构建信任网络的可信程度。

2、在本发明实施例中,代理程序获取目标节点的操作系统版本、网络协议版本、可信计算环境信息、应用环境信息以及当前时间和代理程序自身版本作为目标节点的第一环境信息,进而第一共识节点可以针对目标节点的操作系统、网络协议、可信计算环境、应用环境等多个方面进行共识,保证共识结果可以更加准确地反映目标节点的环境状态,进而可以保证加入信任网络的节点的可信性。

3、在本发明实施例中,代理程序通过对第一环境信息进行哈希运算获得与第一环境信息相对应的环境哈希值,进而将携带环境哈希值的第一共识请求发送给各个第一共识节点对目标节点进行共识,通过发送环境哈希值对目标节点进行共识可以减少第一共识请求的数据量,进而可以降低各个第一共识节点的数据传输压力。

4、在本发明实施例中,通过发送环境哈希值对目标节点进行共识,可以避免直接发送第一环境信息时第一环境信息在发送过程中被篡改的情况发生,保证对目标节点进行共识的结果的可信性。

5、在本发明实施例中,由于信任网络中各个节点与目标节点之间具有不同的通信距离,目标节点广播第一共识请求后信任网络中不同节点接收到第一共识请求的时间不同,通过设定等待时间将优先接收到第一共识请求的至少两个节点确定为第一共识节点参与目标节点的共识,使得不同的目标节点可以对应有不同的第一共识节点进行共识,避免采用固定节点对新加入信任网络的节点进行共识时,固定界定被置入恶意程序导致共识结果不准确的情况发生,从而可以进一步提升信任网络的安全性。

6、在本发明实施例中,将优先接收到第一共识请求的至少两个节点确定为第一共识节点参与目标节点的共识,可以缩短将第一共识请求发送给各个第一共识节点所需的时间,从而可以提升对目标节点进行共识的效率,提升用户的使用体验。

7、在本发明实施例中,根据各个第一共识节点对目标节点进行共识的共识结果以及第一共识节点的数量和预先设定的调节系数,根据公式计算目标节点的可信概率,进而可以根据可信概率确定目标节点是否可信,由于综合了各个第一共识节点的共识结果,保证计算出的可信概率可以反映目标节点的可信程度,进而保证对目标节点进行共识的准确性。

8、在本发明实施例中,针对已经加入信任网络的每一个节点,当计算出与其所对应触发值相同的随机数时,通过对该节点进行共识来判断该节点的环境是否仍满足信任网络的要求,当确定该节点的环境不满足信任网络的要求时将该节点从信任网络中移除。这样,通过对信任网络中每一个节点进行不定时的共识,及时将信任网络中不可信的节点移除,可以进一步提升信任网络的安全性。

9、在本发明实施例中,通过贝叶斯公式持续计算随机数,当计算出的随机数与节点对应的触发值相同时对该节点进行一次共识,使得对信任网络中节点进行共识的时间和次数没有固定的规律,避免信任网络中的节点的环境仅在进行共识时满足信任网络的要求,而日常使用过程中并不满足信任网络要求的情况发生,从而可以进一步保证信任网络的可信性。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1