用于验证节点的方法技术

技术编号:26536006 阅读:15 留言:0更新日期:2020-12-01 14:28
一种用于验证对等网络中的至少一个节点的数字签名的计算机实现的方法,其中,每个节点被配置成存储数据库和对等网络的一个节点针对另一节点的至少一个信任分数s,其中,每个数据库被配置成存储其他节点的至少一个信任背书,计算机实现的方法包括以下步骤:a)在多个节点中执行流言算法,在每个节点中获得其数据库的更新版本,b)在每个节点中针对其数据库的每个节点本地计算分配给网络的其他节点的信任分数s,c)在每个节点中基于对等网络的所述信任分数s的值来本地验证其数据库的至少一个节点的每个数字签名,d)如果节点的数据库的至少一个信任背书值t存在变化,则将变化的信任背书发送至每个相邻节点并执行步骤a),或者e)如果在对等网络中添加或删除新节点,则执行步骤a)。还描述了用于执行该方法的步骤的数据处理系统、计算机程序产品和计算机可读存储介质。

【技术实现步骤摘要】
【国外来华专利技术】用于验证节点的方法
本专利技术属于电信网络中的节点的验证的领域,并且更具体地,属于分散的对等网络,即所谓的P2P网络中的节点的公共密钥的验证。特别地,本专利技术涉及用于验证至少一个节点的数字签名的方法,每个节点标识网络的用户。该方法的特征在于允许建立例如来自网络的其他节点(用户)的公共密钥的可靠性的数值的一组分析步骤。由于节点被用户使用,因此本专利技术被配置成验证用户,即他/她的数字签名。
技术介绍
在现有技术中,给定的用户标识符通常持有特定的密钥。这种密钥是公共密钥密码术,其允许在通信中通过私有密钥和公共密钥对进行认证。这可以肯定地成立,用私有密钥签名的消息确实是由相关联的公共密钥的所有者以简单和普遍可验证的方式签名的。在网络的环境中,这样的用户还持有一组有效的认证,例如数字签名,以及关于他们的可信度的声明。这被称为所有者信任(ownertrust)。换句话说,所有者信任反映了当给定用户签名其他密钥时任何其他用户可以置入给定用户的特定密钥的确定度的水平。在没有任何指示其他方面的证据的情况下,用户被认为合法地附至其特定的密钥。并且因此,用户被认为是“有效的”或者可信的。有效用户对于TLS/SSL通信的认证是关键性的。例如,当用户第一次登录新服务器时,系统询问你是否通过验证指纹来认为服务器的密钥是有效的。然而,除非用户已经通过安全的带外通道访问服务器的密钥指纹(这是耗时且低效的),否则没有办法验证向用户呈现的指纹确实是用户真正试图连接至的服务器的指纹。现有技术中的一种已知方法是数字信誉(reputation)。与中央机构验证用户行为的传统系统相比,在数字信誉中用户是验证他们自己的行为的用户。然而,尽管这种方法更有效,但是它仍然依赖于集中用户的所有背书(endorsement)的中央服务器。因此,中央服务器必须被终端用户信任,并且它带有集中式系统的固有的故障风险。US7213047B2公开了一种使用移动代理来收集信誉信息以用于评估节点P2P网络中的信任的系统和方法。然而,它还依赖于中央元素(在这种情况下为移动代理),并且因此,用户必须盲目地认为继承TLS/SSL通信的问题的该元素有效。另外,其他已知的方法基于区块链技术。然而,该技术需要工作证明以便验证存储在区块链中的项目的因果关系。此外,在区块链技术中,要求网络的节点在所有时间步都处于相同的状态。作为上述问题的结果,区块链技术具有极大的计算成本,从而导致了对集中式系统的已知问题的低效解决方案。协议OpenPGP和GnuPGP提供了两个离散的验证级别。然而,该方法受到其中验证被计算的节点之间的跳跃数或距离的限制,结果,所述协议的准确性受到限制并且对于任何其他应用都是无效的。US2003/0028585A1公开了用于使用EigenTrust算法来计算节点的信任度的方法。该算法将信任分数计算为邻居之间的信任分数的组合,从而得到组合矩阵的第一特征向量,这也可以视为求解不动点方程。然而,对于网络中的每个节点,信任分数的最终解是相同的,即,这种方法是非个人的。关于特定节点的信任度,所有节点之间具有相同的信任分数的不良结果是,如果该节点得到的信任分数太低,则该节点可能因被认为不可信而被从整个网络排除;除非它不同意,不然没有其他人或用户可以看到它,但是替代地将必须接受网络的裁决。因此,此方法对于验证特定节点中的数字签名无效。其他验证管理方法是基于事件的。基于网络中节点的客观事件来计算验证。然而,所述事件可能下载失败或者是可能与所有者信任问题无关的恶意结果。用于计算对等网络的节点的信任分数的其他方法见文章“Gossip-basedReputationAggregationforUnstructuredPeer-to-PeerNetworks”和“GP2PReputationManagementUsingDistributedIdentitiesandDecentralizedRecommendationChains”。但是,这两种方法都计算全局信誉分数,即,每个节点都具有唯一的信任分数,而网络的其余部分将该节点作为整体来信任或不信任。需要提供一种克服了现有技术中的上述问题的可以严格地验证P2P网络的节点的数字签名的方法。
技术实现思路
本专利技术通过根据权利要求1的用于验证对等电信网络中的至少一个节点的数字签名的计算机实现的方法,以及根据权利要求12至14的数据处理系统、计算机程序和计算机可读存储介质,为上述问题提供了解决方案。在从属权利要求中,限定了本专利技术的优选实施方式。在第一专利技术方面,本专利技术提供了一种用于验证对等网络中的至少一个节点的数字签名的计算机实现的方法,其中,所述网络包括至少三个节点,例如节点i、节点j和节点w,其中,每个节点被配置成存储数据库和至少一个信任分数s,例如,节点i针对另一节点j或w的信任分数sij或siw,其中,每个数据库被配置成存储节点针对另一节点的定义所述节点之间的直接背书连接的至少一个信任背书值t,例如,节点i针对另一节点j的定义节点i与节点j之间的直接背书连接的信任背书值tij,其中,信任背书值t大于或等于0并且小于或等于1,以及该计算机实现的方法包括以下步骤:a)在多个节点中执行流言(gossip)算法,在每个节点中接收至少一个背书消息,并且在每个节点中获得其数据库的更新版本,其中,每个节点中的更新的数据库包括对等网络的至少一个不同节点的信任背书值t’s;例如,节点i的更新的数据库至少包括节点j针对节点w的信任背书值tjw;b)在每个节点中针对其数据库的每个节点基于所述数据库中包含的数据本地计算分配给网络的其他节点的信任分数s;例如,节点i计算分配给节点j和节点w的信任分数sij和siw;以及c)在每个节点中基于对等网络的所述信任分数(s)的值来本地验证接收到的每个数字签名,其中,由其数据库的至少一个节点发布每个数字签名,在每个节点中获得由网络的各节点发布的各数字签名的不同验证;例如,如果节点i针对节点j的信任分数sij满足特定条件,则由节点j发布并由节点i接收的数字签名将通过验证,以及d)如果节点的数据库的至少一个信任背书值t存在变化或者存在至少一个新的信任背书值t,则将变化的信任背书值t或者新的信任背书值t发送至每个相邻节点并执行步骤a),或者e)如果在对等网络中删除节点或添加新节点,则执行步骤a)。本专利技术的方法定义了两种网络。第一类型的网络是其中实现对等网络的连接网络。连接网络可以是无线网络或有线网络或两者的组合,其中,可以实现任何已知的通信协议以及有线和无线技术,以便实现对等网络的节点之间的通信。优选地,网络的所有节点彼此连接。应该将直接与节点连接的节点理解为相邻节点。节点可以是个人计算机、服务器、智能电话、平板电脑、应用或它们的组合,例如,在这样的设备中执行的应用。应该将包括当程序由计算机执行时使计算机执行节点的功能的指令的计算机程序理解为应用。众所周知,任何所述元素都可以本文档来自技高网
...

【技术保护点】
1.一种用于验证对等网络(100)中的至少一个节点(110)的数字签名的计算机实现的方法,其中,所述网络(100)包括至少三个节点(110),例如节点i、节点j和节点w,/n其中,每个节点(110)被配置成存储数据库(200)和至少一个信任分数s,例如,节点(110)i针对另一节点(110)j或w的信任分数s

【技术特征摘要】
【国外来华专利技术】20180405 EP 18382231.11.一种用于验证对等网络(100)中的至少一个节点(110)的数字签名的计算机实现的方法,其中,所述网络(100)包括至少三个节点(110),例如节点i、节点j和节点w,
其中,每个节点(110)被配置成存储数据库(200)和至少一个信任分数s,例如,节点(110)i针对另一节点(110)j或w的信任分数sij或siw,
其中,每个数据库(200)被配置成存储节点(110)针对另一节点(110)的定义所述节点(110)之间的直接背书连接的至少一个信任背书值t,例如,节点(110)i针对另一节点(110)j的定义所述节点(110)i与所述节点(110)j之间的直接背书连接的信任背书值tij,
其中,所述信任背书值t大于或等于0并且小于或等于1,以及
所述计算机实现的方法包括以下步骤:
a)在多个节点(110)中执行流言算法,在每个节点中接收至少一个背书消息(201),并且在每个节点(110)中获得其数据库(200)的更新版本,其中,每个节点(110)中的更新的数据库(200)包括所述对等网络(100)的至少一个不同节点(110)的信任背书值t’s;例如,所述节点(100)i的更新的数据库(200)至少包括所述节点(100)j针对所述节点(110)w的信任背书值tjw;
b)在每个节点(110)中针对其数据库(200)的每个节点(110)基于所述数据库(200)中包含的数据,本地计算分配给所述网络(100)的其他节点(110)的信任分数s;例如,所述节点(110)i计算分配给所述节点(100)j和所述节点(100)w的信任分数sij和siw;以及
c)在每个节点(110)中基于所述对等网络(100)的所述信任分数(s)的值来本地验证接收到的每个数字签名,其中,由所述节点的数据库(200)的至少一个节点(110)发布每个数字签名,在每个节点(110)中获得由所述网络(100)的各节点(110)发布的各数字签名的不同验证;例如,如果节点i针对节点j的信任分数sij满足特定条件,则由节点j发布并由节点i接收的数字签名将通过验证,以及
d)如果节点(110)的数据库(200)的至少一个信任背书值t存在变化或者存在至少一个新的信任背书值t,则将变化的信任背书值t或者所述新的信任背书值t发送至每个相邻节点(110)并执行步骤a),或者
e)如果在所述对等网络(100)中删除节点(110)或添加新节点(110),则执行步骤a)。


2.根据权利要求1所述的计算机实现的方法,其中,相对于步骤a)以并行方式执行步骤b)至步骤e)。


3.根据前述权利要求中的任一项所述的计算机实现的方法,其中,每个节点(110)包括至少一个公共和私有节点密钥对以及所述对等网络(100)的其余节点(110)的公共密钥,其中,所述公共和私有节点密钥对是与每个节点(110)相关的公共密钥和私有密钥,
其中,所述至少一个背书消息(201)包括至少一个信任背书值t、与每个信任背书值t相关联的索引值(idx)以及背书签名(σ1,σ2);以及
其中,用发送所述至少一个背书消息(201)的节点的私有密钥来对所述背书签名(σ1,σ2)进行签名,以及
其中,步骤a)的所述流言算法包括以下步骤:
a.1在每个节点(110)中监听所述网络(100)的其他节点(110)并检测来自所述其他节点(110)的至少一个背书消息(201);以及
a.2对于每个检测到的背书消息(201):
a.2.1用所述其他节点(110)的公共密钥验证所述背书签名(σ1,σ2);
a.2.2所述数据库(200)中是否已经存在所述背书消息(210)的至少一个信任背书值t,以及所述背书消息(210)的相关联索引(idx)是否高于所述数据库(200)的索引(idx),从而更新所述数据库(200)中的所述信任背书值t,
a.3将与所更新的信任背书值t相关联的索引(idx)值增加1,并用所述节点(110)的私有密钥对所述数据库(200)的所述至少一个信任背书值t和增加的索引(idx)进行签名,从而获得背书消息(201);
a.4与每个相邻节点(110)共享所述背书消息(201)。


4.根据权利要求3所述的计算机实现的方法,其中,在步骤a.2.2与步骤...

【专利技术属性】
技术研发人员:豪尔赫·德瓦尔桑托斯
申请(专利权)人:西班牙毕尔巴鄂比斯开银行
类型:发明
国别省市:西班牙;ES

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1