当前位置: 首页 > 专利查询>于涛专利>正文

一种定位区块链中节点位置的方法及系统技术方案

技术编号:20855499 阅读:34 留言:0更新日期:2019-04-13 10:51
本发明专利技术公开了一种定位区块链中节点位置的方法,步骤1、将节点通过比较时间戳获得的传播实际延迟矩阵;步骤2、计算区块链中各个节点压力;步骤3、判断是否达到多节点的最大传播次数,若是,则跳转入步骤6;否则转入步骤4;步骤4、计算所述区块链网络中的节点间的流量;步骤5、更新所述区块链网络中各节点间的传导性,并返回步骤2重新计算区块链中各个节点压力;步骤6、基于所述区块链计算传播路径上的时延;步骤7、遍历预设节点,基于所述区块链计算各预设节点的理论被传播时间和节点间的理论传播延迟矩阵;步骤8、计算每个预设节点对应得到的理论传播延迟矩阵与实际传播延迟矩阵的对比度,并取最接近的预设节点为预测的上传节点。

【技术实现步骤摘要】
一种定位区块链中节点位置的方法及系统
本专利技术涉及计算机
的区块链技术,尤其涉及一种定位区块链中节点位置的方法。
技术介绍
以区块链技术为代表的去中心化,自主治理的系统,正在引起越来越多人的重视和研究。随着区块链技术的普及,越来越多区块链技术之上的应用场景被挖掘出来。区块链技术的应用场景已经从最初的数字化货币本身逐步扩展到更多的场景及用户群体中。例如,以以太坊为代表的社区在区块链技术中引入智能合约的概念,或使用区块链技术实现了全球的结算系统。随着应用场景的多样化,用户对区块链技术的诉求也日益增加,我们已经看到很多挑战。区块链网络基于P2P(PeertoPeer,对等网络)网络,每个参与交易、区块存储、区块验证或转发的P2P网络节点都是一个区块链网络中的节点。节点之间的数据交换通过数字签名技术进行验证,无需互相信任,只要按照系统既定的规则进行,节点之间不能也无法欺骗其它节点。根据所提供的功能不同,区块链网络中的各节点可具有不同的分工。在区块链网络中,每个节点都参与全网络的路由功能(即把其它节点传送过来的数据信息再传送给更多的节点),同时也可能包含其它功能。这些功能包括:完整区块链、钱包和矿工等。其中,保存有完整区块链的节点为全节点,能够独立自主地校验所有信息。只保留区块链的一部分的节点为SPV节点(轻量级节点),其通过“简易支付验证(SPV)”的方式来完成交易验证。具有矿工功能的节点为挖矿节点,其通过运行在特殊硬件设备上的工作量证明算法,以相互竞争的方式创建新区块。一些挖矿节点同时也是全节点,保存有区块链的完整拷贝。具有钱包功能的节点,允许用户在区块链网络上进行交易。然而现在的区块链中存在这样的问题,在实际使用过程中,区块链节点可能出现各种异常情况。如黑客攻击,连续建立与断开连接,造成被攻击的区块链节点大量资源消耗在连接上,区块链节点效率降低,甚至不能正常工作,进而影响整个区块链的效率和安全。公有链网络拥有大量的区块链节点,某个节点出现异常情况,对整个区块链网络的影响可能比较微小。但对于联盟链和私有链而言,每一个区块链节点都很重要,任何一个节点的异常,带来的影响主要有两个方面:1)影响节点所在联盟链或私有链的性能和安全;2)此区块链节点的拥有者不能正常的获取该联盟链或私有链的数据和参与该联盟链或私有链的工作。针对区块链节点异常所带来的问题,区块链需要一种定位节点的方法,能够及时的发现各节点的问题和原因,及时通知区块链节点拥有者进行干预,降低问题所造成的影响。由此可见,容易被操纵的区块链节点使用场景会很受局限,比如一种定位区块链中节点位置的方法,减少恶意节点对区块链造成的影响。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种能够发现区块链节点的异常,并降低造成的影响的方法。本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,公开一种定位区块链中节点位置的方法,其特征在于,将区块链中的部分节点设为预设节点,搜索区块链中的相邻节点的相对位置信息;并根据所述区块链中的相邻节点的相对位置信息,获取节点之间的相对位置和在区块链中的相对位置,具体包括:步骤1、将节点通过比较时间戳获得的传播实际延迟矩阵;步骤2、计算区块链中各个节点压力;步骤3、判断是否达到多节点的最大传播次数,若是,则跳转入步骤6;否则转入步骤4;步骤4、计算所述区块链网络中的节点间的流量;步骤5、更新所述区块链网络中各节点间的传导性,并返回步骤2重新计算区块链中各个节点压力;步骤6、基于所述区块链计算传播路径上的时延;步骤7、遍历预设节点,基于所述区块链计算各预设节点的理论被传播时间和节点间的理论传播延迟矩阵;步骤8、计算每个预设节点对应得到的理论传播延迟矩阵与实际传播延迟矩阵的对比度,并取最接近的预设节点为预测的上传节点。更进一步地,包括设置于各区块链节点上的监控模块;通过对节点间的压力和所述各节点间的传导性分析并突出异常节点,并通过收集的监控数据快速分析与定位异常节点的位置和原因。更进一步地,监控本区块链节点的行为,这些行为包括本区块链节点发起交易或合约、验证交易或合约、产生区块、启动或关闭某些服务、建立或断开连接以及发现邻居;监控本区块链节点的状态,这些状态包括本区块链节点的运行时间、网络状态以及节点自动化测试的结果;监控本区块链节点的日志。更进一步地,接受所述区块链中的各个节点互相进行位置验证,并对未通过验证的节点实行惩罚机制。更进一步地,与进行广播的节点相连的节点验证是否在自己的节点信息中包括进行广播的节点的位置;如果无法通过节点间的相互验证过程,则判断进行广播的节点为欺骗节点。更提供一种定位区块链中节点位置的系统,所述系统中运行时使得所述系统执行上述方法。本专利技术的定位方法,与现有技术相比,现有基于预设的节点定位方法假设信息按最短路径传播,而实际情况传播过程不是严格遵循最短路径,影响了定位方法的准确率,本专利技术引入对区块链进行优化,模拟信息以影响力最大化为目标的扩散方式来模拟共识路线,具有更高的定位准确率。现有技术的预测准确性依赖于推导过程中使用的初始假设的传播模型参数,而本专利技术推导过程与初始假设模型无关,具有更广泛的应用价值。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1是根据本专利技术一种定位区块链中节点位置的方法的示意图。具体实施方式实施例一如图1所示,是根据本专利技术一种定位区块链中节点位置的方法的示意图。一种定位区块链中节点位置的方法,将区块链中的部分节点设为预设节点,搜索区块链中的相邻节点的相对位置信息;并根据所述区块链中的相邻节点的相对位置信息,获取节点之间的相对位置和在区块链中的相对位置,具体包括:步骤1、将节点通过比较时间戳获得的传播实际延迟矩阵;步骤2、计算区块链中各个节点压力;步骤3、判断是否达到多节点的最大传播次数,若是,则跳转入步骤6;否则转入步骤4;步骤4、计算所述区块链网络中的节点间的流量;步骤5、更新所述区块链网络中各节点间的传导性,并返回步骤2重新计算区块链中各个节点压力;步骤6、基于所述区块链计算传播路径上的时延;步骤7、遍历预设节点,基于所述区块链计算各预设节点的理论被传播时间和节点间的理论传播延迟矩阵;步骤8、计算每个预设节点对应得到的理论传播延迟矩阵与实际传播延迟矩阵的对比度,并取最接近的预设节点为预测的上传节点。更进一步地,包括设置于各区块链节点上的监控模块;通过对节点间的压力和所述各节点间的传导性分析并突出异常节点,并通过收集的监控数据快速分析与定位异常节点的位置和原因。更进一步地,监控本区块链节点的行为,这些行为包括本区块链节点发起交易或合约、验证交易或合约、产生区块、启动或关闭某些服务、建立或断开连接以及发现邻居;监控本区块链节点的状态,这些状态包括本区块链节点的运行时间、网络状态以及节点自动化测试的结果;监控本区块链节点的日志。在实施例一中,区块链节点启动后,网络监控就会启动,并连接到区块链节点监控程序。网络监控模块负责监控未验证的TCP连接和邻居,并对这些连接上的错误进行处理:对于未验证的TCP连接上错误的监控和处理,当收到TCP连接会进行身份验证和加密验证,如果此过程间出现错误,将会记录该连接对应的远程节点和出现错本文档来自技高网
...

【技术保护点】
1.一种定位区块链中节点位置的方法,其特征在于,将区块链中的部分节点设为预设节点,搜索区块链中的相邻节点的相对位置信息;并根据所述区块链中的相邻节点的相对位置信息,获取节点之间的相对位置和在区块链中的相对位置,具体包括:步骤1、将节点通过比较时间戳获得的传播实际延迟矩阵;步骤2、计算区块链中各个节点压力;步骤3、判断是否达到多节点的最大传播次数,若是,则跳转入步骤6;否则转入步骤4;步骤4、计算所述区块链网络中的节点间的流量;步骤5、更新所述区块链网络中各节点间的传导性,并返回步骤2重新计算区块链中各个节点压力;步骤6、基于所述区块链计算传播路径上的时延;步骤7、遍历预设节点,基于所述区块链计算各预设节点的理论被传播时间和节点间的理论传播延迟矩阵;步骤8、计算每个预设节点对应得到的理论传播延迟矩阵与实际传播延迟矩阵的对比度,并取最接近的预设节点为预测的上传节点。

【技术特征摘要】
1.一种定位区块链中节点位置的方法,其特征在于,将区块链中的部分节点设为预设节点,搜索区块链中的相邻节点的相对位置信息;并根据所述区块链中的相邻节点的相对位置信息,获取节点之间的相对位置和在区块链中的相对位置,具体包括:步骤1、将节点通过比较时间戳获得的传播实际延迟矩阵;步骤2、计算区块链中各个节点压力;步骤3、判断是否达到多节点的最大传播次数,若是,则跳转入步骤6;否则转入步骤4;步骤4、计算所述区块链网络中的节点间的流量;步骤5、更新所述区块链网络中各节点间的传导性,并返回步骤2重新计算区块链中各个节点压力;步骤6、基于所述区块链计算传播路径上的时延;步骤7、遍历预设节点,基于所述区块链计算各预设节点的理论被传播时间和节点间的理论传播延迟矩阵;步骤8、计算每个预设节点对应得到的理论传播延迟矩阵与实际传播延迟矩阵的对比度,并取最接近的预设节点为预测的上传节点。2.如权利要求1所述的一种定位区块链中节点位置的方法,其特征在于,包括设置于各区块链节点上的监控模块;通过对节点间的压力...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:于涛
类型:发明
国别省市:山东,37

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

1