CN107623686A - 区块链共识达成方法、装置、设备及存储介质 - Google Patents
区块链共识达成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN107623686A CN107623686A CN201710816647.5A CN201710816647A CN107623686A CN 107623686 A CN107623686 A CN 107623686A CN 201710816647 A CN201710816647 A CN 201710816647A CN 107623686 A CN107623686 A CN 107623686A
- Authority
- CN
- China
- Prior art keywords
- node
- block
- checking
- request
- block chain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明适用计算机技术领域,提供了一种区块链共识达成方法、装置、设备及存储介质,该方法包括:当接收到构建区块的请求时,从预设区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取请求发送节点到验证用节点之间的距离,通过验证用节点获取请求发送节点中离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识,从而对由谁来构建区块的问题达成共识,提高了区块链共识机制的共识效果。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种区块链共识达成方法、装置、设备及存储介质。
背景技术
区块链技术,也被称作分布式账本技术,是一种互联网数据库技术,是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,具有去中心化、公开透明、安全可信等优点。由于点对点网络下存在较高的网络延迟,各个节点所观察到的事务先后顺序不可能完全一致。因此区块链系统需要设计一种机制对在相近时间内发生的事务的先后顺序进行共识,以防止错误发生,例如比特币交易中的一笔双花问题,即同一个节点的同一笔比特币,由于网络的延迟等原因导致的被消耗两次的系统错误问题。这种对一个时间窗口内的事务的先后顺序达成共识的算法称为共识机制。区块链共识机制即区块链事务达成分布式共识的算法,通过区块链共识机制,系统选择一个独特的节点来产生一个区块,并使得交易总账不可逆。现有的常见共识机制有工作量证明(PoW)机制和权益证明(PoS)机制。
工作量证明机制主要有两方面不足:一方面,由于每个节点都投入大量算力去尝试计算符合要求的散列值,最后只有一个或极少数节点能算出符合要求的散列值,大部分节点的运算都是白费的,所以维持整个机制需要消耗巨大的能量与算力,造成了资源的大量浪费;另一方面,风险和收益博弈必然导致联合挖矿,而大算力矿池可能会对系统的去中心化构成威胁。
权益证明机制也有两方面的不足:一方面,拥有权益的参与者未必想构建区块(即参与记账),因为在权益证明机制中,权益激励的计算方式在不考虑手续费的前提下,持币者每隔几个月打开节点参与验证跟实时参与验证,理论上收益是一样的;另一方面,链条容易产生分叉。一旦发生分叉,不像工作量证明机制,拥有大算力分支可以把小算力分支消除,因为权益证明机制“挖矿”不需要成本,持币人能在新分支上获得收益,这会导致分叉容易出现。
发明内容
本发明的目的在于提供一种区块链共识达成方法、装置、设备及存储介质,旨在解决由于现有区块链共识机制计算过程复杂、去中心化效果不佳、链条容易产生分叉,导致现有区块链共识机制的共识效果不佳的问题。
一方面,本发明提供了一种区块链共识达成方法,所述方法包括下述步骤:
当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将所述选择的节点设置为验证用节点;
通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离;
通过所述验证用节点获取所述请求发送节点中距离所述验证用节点最近的节点,将所述获取的节点设置为区块构建节点,并检测所述区块构建节点是否在预设时间段内将构建的区块链接到所述区块链上;
当检测到所述区块构建节点在所述预设时间段内将所述构建的区块链接到所述区块链上时,对构建所述区块的所述区块构建节点达成共识。
另一方面,本发明提供了一种区块链共识达成装置,所述装置包括:
验证用节点设置单元,用于当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将所述选择的节点设置为验证用节点;
距离获取单元,用于通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离;
区块检测单元,用于通过所述验证用节点获取所述发送节点验证请求的节点中距离所述验证用节点最近的节点,将所述获取的节点设置为区块构建节点,并检测所述区块构建节点是否在预设时间段内将构建的区块链接到所述区块链上;以及
共识达成单元,用于当检测到所述区块构建节点在所述预设时间段内将所述构建的区块链接到所述区块链上时,对构建所述区块的所述区块构建节点达成共识。
另一方面,本发明还提供了一种计算设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述区块链共识达成方法的步骤。
另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如所述区块链共识达成方法的步骤。
本发明在接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,提高了区块链共识机制的共识效果。
附图说明
图1是本发明实施例一提供的区块链共识达成方法的实现流程图;
图2是本发明实施例二提供的区块链共识达成方法的实现流程图;
图3是本发明实施例三提供的区块链共识达成装置的结构示意图;
图4是本发明实施例四提供的区块链共识达成装置的结构示意图;以及
图5是本发明实施例五提供的计算设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
图1示出了本发明实施例一提供的区块链共识达成方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
在步骤S101中,当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点。
本发明实施例适用于区块链系统,以用于在区域链中确定区块构建节点的问题上快速达成共识,实现区块的构建。其中,区块链是一种按照时间顺序将区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本,构建的区块用于存储区块链系统的事务数据。在本发明实施例中,当接收到构建区块的请求时,随机从预设区块链所有参与区块构建的节点中选取一个节点,并将选择的节点作为验证用节点,以用于在后续过程中对节点验证请求进行验证,从而实现区块链的去中心化,进而维护区块链的一致性。
在步骤S102中,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离。
在本发明实施例中,可验证范围是一个随着时间进行变化的范围。在验证用节点确定后,验证用节点周围可验证范围内节点向该验证用节点发送节点验证请求,以对请求发送节点是否可以作为区块构建节点进行验证,在验证用节点接收请求发送节点的节点验证请求之后,根据节点验证请求获取请求发送节点到验证用节点之间的距离。
优选地,当请求发送节点向该验证用节点发送节点验证请求时,根据请求发送节点到验证用节点之间的距离远近,为验证用节点对请求发送节点的验证设置了不同的代价,从而使得验证请求节点选择“投资”一条验证更可能成功的区块链链条分支,从而提高了形成最长区块链链条的概率。这样区块链中较短的链条分支最终会被消除,避免区块链的链条分叉。
优选地,在确定验证用节点之后,实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围,从而通过逐步改变可验证范围,控制获取区块构建节点的时间,进而控制构建区块的时间。
在步骤S103中,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上。
在本发明实施例中,获取请求发送节点到验证用节点之间的距离后,通过验证用节点获取请求发送节点中离验证用节点最近的节点,将获取的节点设置为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。
之后,由区块构建节点构建区块加入区块链,这样,在构建区块并将区块加入区块链时,避免每个节点投入大量算力去尝试计算符合要求的散列值,从而避免造成资源浪费。在确定了区块构建节点之后,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,以确认区块构建节点是否完成构建区块任务,进而确认是否分配奖励收益,或者是否重新选择区块构建节点。
优选地,在将获取的节点设置为区块构建节点之后,验证用节点将向区块构建节点发出验证通过的数字证书,数字证书由验证用节点专用的密钥、时间、位置和请求节点ID等信息组成,该数字证书可用于后续的区块链接操作,从而提高了区块链的安全性。
在步骤S104中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识。
在本发明实施例中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点完成了构建区块的任务,不需要再重新选择区块构建节点,此时,对构建区块的区块构建节点达成共识,从而提高了区块链共识机制的共识效果。优选地,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,向验证用节点和区块构建节点分配奖励收益,以激励区块链中的节点积极参与区块链的维护。
在本发明实施例中,通过随机的方式选出执行节点验证任务的验证用节点,从而实现区块链的去中心化,进而维护区块链的一致性。之后,验证用节点根据位置距离从请求发送节点中选择离验证用节点最近的节点,即决定由谁来构建区块,以维护区块链统一,从而避免通过计算来决定由谁构建区块,避免各节点耗费大量能源进行散列值运算。进一步地,将离验证用节点最近的请求发送节点作为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。在确定了区块构建节点之后,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,即是否完成区块创建任务,在检测到区块构建节点完成了区块创建任务时,对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,以维护区块链统一,进而提高了区块链共识机制的共识效果。
实施例二:
图2示出了本发明实施例二提供的区块链共识达成方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
在步骤S201中,当接收到构建区块的请求时,从预设区块链所有节点中随机选择一个节点,向选择的节点发送担任节点验证角色的请求。
在步骤S202中,当接收到选择的节点返回的担任确认信息时,将选择的节点设置为验证用节点。
在本发明实施例中,当接收到构建区块的请求时,首先随机从预设区块链所有节点中选择一个节点,然后向选择的节点发送担任节点验证角色的请求,当接收到选择的节点返回的担任确认信息时,说明该随机选择的节点是积极担任节点验证角色的节点,此时,将这个选择的节点设置为验证用节点,从而提高了选择验证用节点的准确性,同时实现了区块链的去中心化,进而维护区块链的一致性。
在步骤S203中,实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围。
在本发明实施例中,在确定了验证用节点之后,实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围,从而通过逐步改变可验证范围,控制获取区块构建节点的时间,进而控制构建区块的时间。
优选地,更新验证用节点的可验证范围时,根据d(t)=α.minutes(t-tpre)β表示的更新方式,对验证用节点的可验证范围进行更新,从而提高了可验证范围更新的效果。其中,t表示时间,d(t)表示时间t时的可验证范围,t-tpre为一个时间间隔,minutes(t-tpre)为时间间隔t-tpre的分钟数,α、β为可调参数,便于控制可验证范围。其中,α、β的设定可以根据验证用节点周围节点的分布情况而定,具体地,可以先算出周围节点到验证用节点的平均距离,之后,根据平均距离与获取区块构建节点的期望时间来设定α、β。例如,如果平均距离约2700米,期望3分钟时产生区块,则可以设α=100、β=3,即当第三个时间间隔(第三分钟)时,d(3)=2700米,这样在第三分钟内会出现最近的区块构建节点。
作为示例地,设置α=100、β=3,则在第一分钟(即t=1)时,d(1)=100,说明此时的可验证范围为100米,在第二分钟(即t=2)时,d(2)=800,说明此时的可验证范围为800米,依次类推。
在步骤S204中,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离。
在本发明实施例中,可验证范围是一个随着时间进行变化的范围。在验证用节点确定后,验证用节点周围可验证范围内节点向该验证用节点发送节点验证请求,以对请求发送节点是否可以作为区块构建节点进行验证,在验证用节点接收请求发送节点的节点验证请求之后,根据节点验证请求获取请求发送节点到验证用节点之间的距离。
优选地,当请求发送节点向该验证用节点发送节点验证请求时,根据距离设置请求发送节点的验证代价,以控制请求发送节点的数量,即根据请求发送节点到验证用节点之间的距离远近,为验证用节点对请求发送节点的验证设置了不同的代价,从而使得节点验证请求选择“投资”一条验证更可能成功的区块链链条分支,提高了形成最长区块链链条的概率。这样区块链中较短的链条分支最终会被消除,避免区块链的链条分叉。
优选地,在获取请求发送节点到验证用节点之间的距离时,首先通过验证用节点向请求发送节点发送会话ID,为便于与其他时间点区别,将通过验证用节点向请求发送节点发送会话ID的时间点记录为第一时间点,然后通过验证用节点接收请求发送节点发送的节点ID,并将验证用节点接收到节点ID的时间点记录第二时间点,最后计算第一时间点和第二时间点之间的差值,并根据计算得到的差值获取请求发送节点到验证用节点之间的距离,从而提高了获取请求发送节点到验证用节点之间距离的准确性。
在步骤S205中,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点。
在本发明实施例中,获取请求发送节点到验证用节点之间的距离后,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。
优选地,在将获取的节点设置为区块构建节点之后,验证用节点将向其发出验证通过的数字证书,数字证书由验证用节点专用的密钥、时间、位置和请求节点ID等信息组成,该数字证书可用于后续的区块链接操作,从而提高了区块链的安全性。
在步骤S206中,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,是则执行步骤S208,否则执行步骤S207。
在本发明实施例中,在将获取的节点设置为区块构建节点之后,由区块构建节点构建区块加入区块链,这样,在构建区块并将区块加入区块链时,避免每个节点投入大量算力去尝试计算符合要求的散列值,从而避免造成资源浪费。在确定了区块构建节点之后,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,以确认区块构建节点是否完成构建区块任务,进而确认是否分配奖励收益,或者是否重新选择区块构建节点。
在步骤S207中,当未检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,放弃区块构建节点,跳转至步骤S204。
在本发明实施例中,当未检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点未在预设时间段内完成构建区块任务,因此,放弃这个区块构建节点,跳转至通过验证用节点接收可验证范围内的节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离的步骤S204,获取一个新的节点(新的区块构建节点),直至检测到这个获取的节点在预设时间段内将构建的区块链接到区块链上。
在步骤S208中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识。
在本发明实施例中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点完成了构建区块的任务,不需要再重新选择区块构建节点,此时,对构建区块的区块构建节点达成共识,从而提高了区块链共识机制的共识效果。优选地,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,向验证用节点和区块构建节点分配奖励收益,以激励区块链中的节点积极参与区块链的维护。
在本发明实施例中,通过随机的方式选出履行验证义务的验证用节点,从而保持了区块链的去中心化,进而维护区块链的一致性。之后,在预设更新时间,根据预设的更新方式更新可验证范围,例如,每隔一个时间间隔增大可验证范围,从而控制获取区块构建节点的时间,进而控制构建区块的时间或速率。在确定了验证用节点之后,验证用节点根据位置距离从请求发送节点中选择离验证用节点最近的节点,即决定由谁来构建区块,以维护区块链统一,从而避免通过计算来决定由谁构建区块,避免各节点耗费大量能源进行散列值运算。
进一步地,将距离验证用节点最近的请求发送节点作为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。在确定了区块构建节点之后,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,即是否完成区块创建任务,当未检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,放弃这个区块构建节点,重新选择区块构建节点,以完成区块创建的任务,在检测到区块构建节点完成了区块创建任务时,对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,以维护区块链统一,提高了区块链共识机制的共识效果。
实施例三:
图3示出了本发明实施例三提供的区块链共识达成装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
验证用节点设置单元31,用于当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点。
在本发明实施例中,当接收到构建区块的请求时,验证用节点设置单元31随机从预设区块链所有参与区块构建的节点中选取一个节点,并将选择的节点作为验证用节点,以用于在后续过程中对节点验证请求进行验证,从而实现区块链的去中心化,进而维护区块链的一致性。
距离获取单元32,用于通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离。
在本发明实施例中,可验证范围是一个随着时间进行变化的范围。在验证用节点确定后,验证用节点周围可验证范围内节点向该验证用节点发送节点验证请求,以对请求发送节点是否可以作为区块构建节点进行验证,在验证用节点接收请求发送节点的节点验证请求之后,距离获取单元32根据节点验证请求获取请求发送节点到验证用节点之间的距离。
优选地,当请求发送节点向该验证用节点发送节点验证请求时,根据请求发送节点到验证用节点之间的距离远近,为验证用节点对请求发送节点的验证设置了不同的代价,从而使得验证请求节点选择“投资”一条验证更可能成功的区块链链条分支,从而提高了形成最长区块链链条的概率。这样区块链中较短的链条分支最终会被消除,避免区块链的链条分叉。
优选地,在确定验证用节点之后,实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围,从而通过逐步改变可验证范围,控制获取区块构建节点的时间,进而控制构建区块的时间。
区块检测单元33,用于通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上。
在本发明实施例中,获取请求发送节点到验证用节点之间的距离后,通过验证用节点获取请求发送节点中离验证用节点最近的节点,将获取的节点设置为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。
之后,由区块构建节点构建区块加入区块链,这样,在构建区块并将区块加入区块链时,避免每个节点投入大量算力去尝试计算符合要求的散列值,从而避免造成资源浪费。在确定了区块构建节点之后,区块检测单元33检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,以确认区块构建节点是否完成构建区块任务,进而确认是否分配奖励收益,或者是否重新选择区块构建节点。
优选地,在将获取的节点设置为区块构建节点之后,验证用节点将向其发出验证通过的数字证书,数字证书由验证用节点专用的密钥、时间、位置和请求节点ID等信息组成,该数字证书可用于后续的区块链接操作,从而提高了区块链的安全性。
共识达成单元34,用于当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识。
在本发明实施例中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点完成了构建区块的任务,不需要再重新选择区块构建节点,此时,共识达成单元34对构建区块的区块构建节点达成共识,从而提高了区块链共识机制的共识效果。优选地,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,向验证用节点和区块构建节点分配奖励收益,以激励区块链中的节点积极参与区块链的维护。
在本发明实施例中,验证用节点设置单元31从预设的区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点,从而实现区块链的去中心化,进而维护区块链的一致性。之后,距离获取单元32通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取请求发送节点到验证用节点之间的距离,区块检测单元33通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,即决定由谁来构建区块,以维护区块链统一,从而避免通过计算来决定由谁构建区块,避免各节点耗费大量能源进行散列值运算。
进一步地,将离验证用节点最近的请求发送节点作为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。在确定了区块构建节点之后,检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上。在检测到区块构建节点完成了区块创建任务时,共识达成单元34对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,以维护区块链统一,提高了区块链共识机制的共识效果。
在本发明实施例中,区块链共识达成装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
实施例四:
图4示出了本发明实施例四提供的区块链共识达成装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:
验证用节点设置单元41,用于当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点。
在本发明实施例中,当接收到构建区块的请求时,验证用节点设置单元41随机从预设区块链所有参与区块构建的节点中选取一个节点,并将选择的节点作为验证用节点,以用于在后续过程中对节点验证请求进行验证,从而实现区块链的去中心化,进而维护区块链的一致性。
优选地,当接收到构建区块的请求时,首先随机从预设区块链所有节点中选择一个节点,然后向选择的节点发送担任节点验证角色的请求,当接收到选择的节点返回的担任确认信息时,说明该随机选择的节点是积极担任节点验证角色的节点,此时,将这个选择的节点设置为验证用节点,从而提高了选择验证用节点的准确性,同时实现了区块链的去中心化,进而维护区块链的一致性。
范围更新单元42,用于实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围。
在本发明实施例中,在确定了验证用节点之后,范围更新单元42实时检测可验证范围的预设更新时间是否到达,当预设更新时间到达时,根据预设的更新方式更新可验证范围,从而通过逐步改变可验证范围,控制获取区块构建节点的时间,进而控制构建区块的时间。
优选地,更新验证用节点的可验证范围时,根据d(t)=α.minutes(t-tpre)β表示的更新方式,对验证用节点的可验证范围进行更新,从而提高了可验证范围更新的效果。其中,t表示时间,d(t)表示时间t时的可验证范围,t-tpre为一个时间间隔,minutes(t-tpre)为时间间隔t-tpre的分钟数,α、β为可调参数,便于控制可验证范围。其中,α、β的设定可以根据验证用节点周围节点的分布情况而定,具体地,可以先算出周围节点到验证用节点的平均距离,之后,根据平均距离与获取区块构建节点的期望时间来设定α、β。例如,如果平均距离约2700米,期望3分钟时产生区块,则可以设α=100、β=3,即当第三个时间间隔(第三分钟)时,d(3)=2700米,这样在第三分钟内会出现最近的区块构建节点。
作为示例地,设置α=100、β=3,则在第一分钟(即t=1)时,d(1)=100,说明此时的可验证范围为100米,在第二分钟(即t=2)时,d(2)=800,说明此时的可验证范围为800米,依次类推。
距离获取单元43,用于通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离。
在本发明实施例中,可验证范围是一个随着时间进行变化的范围。在验证用节点确定后,验证用节点周围可验证范围内节点向该验证用节点发送节点验证请求,以对请求发送节点是否可以作为区块构建节点进行验证,在验证用节点接收请求发送节点的节点验证请求之后,距离获取单元43根据节点验证请求获取发送节点验证请求的请求发送节点到验证用节点之间的距离。
优选地,在获取请求发送节点到验证用节点之间的距离时,首先通过验证用节点向请求发送节点发送会话ID,为便于与其他时间点区别,将通过验证用节点向请求发送节点发送会话ID的时间点记录为第一时间点,然后通过验证用节点接收请求发送节点发送的节点ID,并将验证用节点接收到节点ID的时间点记录第二时间点,最后计算第一时间点和第二时间点之间的差值,并根据计算得到的差值获取请求发送节点到验证用节点之间的距离,从而提高了获取请求发送节点到验证用节点之间距离的准确性。
验证代价设置单元44,用于根据距离设置请求发送节点的验证代价,以控制请求发送节点的数量。
在本发明实施例中,当请求发送节点向该验证用节点发送节点验证请求时,首先根据距离设置请求发送节点的验证代价,以控制请求发送节点的数量,即根据请求发送节点到验证用节点之间的距离远近,为验证用节点对请求发送节点的验证设置了不同的代价,从而使得节点验证请求选择“投资”一条验证更可能成功的区块链链条分支,提高了形成最长区块链链条的概率。这样区块链中较短的链条分支最终会被消除,避免区块链的链条分叉。
区块检测单元45,用于通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上。
在本发明实施例中,获取请求发送节点到验证用节点之间的距离后,区块检测单元45通过验证用节点获取请求发送节点中离验证用节点最近的节点,将获取的节点设置为区块构建节点,从而避免区块链的链条分叉,提高了形成最长区块链链条的概率。
之后,由区块构建节点构建区块加入区块链,这样,在构建区块并将区块加入区块链时,避免每个节点投入大量算力去尝试计算符合要求的散列值,从而避免造成资源浪费。在确定了区块构建节点之后,区块检测单元45检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,以确认区块构建节点是否完成构建区块任务,进而确认是否分配奖励收益,或者是否重新选择区块构建节点。
优选地,在将获取的节点设置为区块构建节点之后,验证用节点将向其发出验证通过的数字证书,数字证书由验证用节点专用的密钥、时间、位置和请求节点ID等信息组成,该数字证书可用于后续的区块链接操作,从而提高了区块链的安全性。
循环验证单元46,用于当未检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,放弃区块构建节点,触发距离获取单元43执行通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离的操作,直至检测到获取的节点在预设时间段内将构建的区块链接到区块链上。
在本发明实施例中,当未检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点未在预设时间段内完成构建区块任务,因此,放弃这个区块构建节点,触发距离获取单元43执行通过验证用节点接收可验证范围内的节点发送的节点验证请求,并获取发送节点验证请求的请求发送节点到验证用节点之间的距离的操作,获取一个新的节点(新的区块构建节点),直至检测到这个获取的节点在预设时间段内将构建的区块链接到区块链上。
共识达成单元47,用于当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识。
在本发明实施例中,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,说明区块构建节点完成了构建区块的任务,不需要再重新选择区块构建节点,此时,共识达成单元47对构建区块的区块构建节点达成共识,从而提高了区块链共识机制的共识效果。优选地,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,向验证用节点和区块构建节点分配奖励收益,以激励区块链中的节点积极参与区块链的维护。
因此,优选地,该验证用节点设置单元41包括:
请求发送单元411,用于从区块链所有节点中随机选择一个节点,向选择的节点发送担任节点验证角色的请求;以及
节点设置子单元412,用于当接收到选择的节点返回的担任确认信息时,将选择的节点设置为验证用节点;
优选地,该距离获取单元43包括:
第一记录单元431,用于通过验证用节点向请求发送节点发送会话ID,并记录验证用节点向请求发送节点发送会话ID的第一时间点;
第二记录单元432,用于通过验证用节点接收请求发送节点发送的节点ID,并记录验证用节点接收到节点ID的第二时间点;以及
距离获取子单元433,用于计算第一时间点和第二时间点之间的差值,根据差值获取请求发送节点到验证用节点之间的距离。
在本发明实施例中,区块链共识达成装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。
实施例五:
图5示出了本发明实施例五提供的计算设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
本发明实施例的计算设备5包括处理器50、存储器51以及存储在存储器51中并可在处理器50上运行的计算机程序52。该处理器50执行计算机程序52时实现上述各个区块链共识达成方法实施例中的步骤,例如,图1所示的步骤S101至S104、图2所示的步骤S201至S208。或者,处理器50执行计算机程序52时实现上述各装置实施例中各单元的功能,例如,图3所示单元31至34、图4所示单元41至47的功能。
在本发明实施例中,该处理器50执行计算机程序52时实现上述各个区块链共识达成方法实施例中的步骤时,当接收到构建区块的请求时从预设区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取请求发送节点到验证用节点之间的距离,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,提高了区块链共识机制的共识效果。该计算设备5中处理器50在执行计算机程序52时实现的步骤具体可参考实施例一中方法的描述,在此不再赘述。
实施例六:
在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述各个区块链共识达成方法实施例中的步骤,例如,图1所示的步骤S101至S104、图2所示的步骤S201至S208。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如,图3所示单元31至34、图4所示单元41至47的功能。
在本发明实施例中,当接收到构建区块的请求时从预设区块链所有节点中随机选择一个节点,将选择的节点设置为验证用节点,通过验证用节点接收可验证范围内节点发送的节点验证请求,并获取请求发送节点到验证用节点之间的距离,通过验证用节点获取请求发送节点中距离验证用节点最近的节点,将获取的节点设置为区块构建节点,并检测区块构建节点是否在预设时间段内将构建的区块链接到区块链上,当检测到区块构建节点在预设时间段内将构建的区块链接到区块链上时,对构建区块的区块构建节点达成共识,从而使得区块链所有节点对由谁来构建区块的问题达成共识,提高了区块链共识机制的共识效果。该计算机程序被处理器执行时实现的区块链共识达成方法进一步可参考前述方法实施例中步骤的描述,在此不再赘述。
本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,ROM/RAM、磁盘、光盘、闪存等存储器。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种区块链共识达成方法,其特征在于,所述方法包括下述步骤:
当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将所述选择的节点设置为验证用节点;
通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离;
通过所述验证用节点获取所述请求发送节点中距离所述验证用节点最近的节点,将所述获取的节点设置为区块构建节点,并检测所述区块构建节点是否在预设时间段内将构建的区块链接到所述区块链上;
当检测到所述区块构建节点在所述预设时间段内将所述构建的区块链接到所述区块链上时,对构建所述区块的所述区块构建节点达成共识。
2.如权利要求1所述的方法,其特征在于,从预设的区块链所有节点中随机选择一个节点,将所述选择的节点设置为验证用节点的步骤,包括:
从所述区块链所有节点中随机选择一个节点,向所述选择的节点发送担任节点验证角色的请求;
当接收到所述选择的节点返回的担任确认信息时,将所述选择的节点设置为所述验证用节点。
3.如权利要求1所述的方法,其特征在于,获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离的步骤,包括:
通过所述验证用节点向所述请求发送节点发送会话ID,并记录所述验证用节点向所述请求发送节点发送所述会话ID的第一时间点;
通过所述验证用节点接收所述请求发送节点发送的节点ID,并记录所述验证用节点接收到所述节点ID的第二时间点;
计算所述第一时间点和所述第二时间点之间的差值,根据所述差值获取所述请求发送节点到所述验证用节点之间的距离。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
当未检测到所述区块构建节点在所述预设时间段内将所述构建的区块链接到所述区块链上时,放弃所述区块构建节点,跳转至通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取所述发送节点验证请求的请求发送节点到所述验证用节点之间的距离的步骤,直至检测到所述获取的节点在所述预设时间段内将所述构建的区块链接到所述区块链上。
5.如权利要求1所述的方法,其特征在于,将所述选择的节点设置为验证用节点的步骤之后,对构建所述区块的所述区块构建节点达成共识的步骤之前,所述方法还包括:
实时检测所述可验证范围的预设更新时间是否到达,当所述预设更新时间到达时,根据预设的更新方式更新所述可验证范围。
6.如权利要求1-5任一项所述的方法,其特征在于,获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离的步骤之后,通过所述验证用节点获取所述请求发送节点中距离所述验证用节点最近的节点的步骤之前,所述方法还包括:
根据所述距离设置所述请求发送节点的验证代价,以控制所述请求发送节点的数量。
7.一种区块链共识达成装置,其特征在于,所述装置包括:
验证用节点设置单元,用于当接收到构建区块的请求时,从预设的区块链所有节点中随机选择一个节点,将所述选择的节点设置为验证用节点;
距离获取单元,用于通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离;
区块检测单元,用于通过所述验证用节点获取所述请求发送节点中距离所述验证用节点最近的节点,将所述获取的节点设置为区块构建节点,并检测所述区块构建节点是否在预设时间段内将构建的区块链接到所述区块链上;以及共识达成单元,用于当检测到所述区块构建节点在所述预设时间段内将所述构建的区块链接到所述区块链上时,对构建所述区块的所述区块构建节点达成共识。
8.如权利要求7所述的装置,其特征在于,所述验证用节点设置单元包括:
请求发送单元,用于从所述区块链所有节点中随机选择一个节点,向所述选择的节点发送担任节点验证角色的请求;以及
节点设置子单元,用于当接收到所述选择的节点返回的担任确认信息时,将所述选择的节点设置为所述验证用节点。
9.如权利要求7所述的装置,其特征在于,所述距离获取单元包括:
第一记录单元,用于通过所述验证用节点向所述请求发送节点发送会话ID,并记录所述验证用节点向所述请求发送节点发送所述会话ID的第一时间点;
第二记录单元,用于通过所述验证用节点接收所述请求发送节点发送的节点ID,并记录所述验证用节点接收到所述节点ID的第二时间点;以及
距离获取子单元,用于计算所述第一时间点和所述第二时间点之间的差值,根据所述差值获取所述请求发送节点到所述验证用节点之间的距离。
10.如权利要求7所述的装置,其特征在于,所述装置还包括:
循环验证单元,用于当未检测到所述区块构建节点在预设时间段内将所述构建的区块链接到所述区块链上时,放弃所述区块构建节点,触发距离获取单元执行通过所述验证用节点接收可验证范围内节点发送的节点验证请求,并获取发送所述节点验证请求的请求发送节点到所述验证用节点之间的距离的操作,直至检测到所述获取的节点在所述预设时间段内将所述构建的区块链接到所述区块链上。
11.如权利要求7所述的装置,其特征在于,所述装置还包括:
范围更新单元,用于实时检测所述可验证范围的预设更新时间是否到达,当所述预设更新时间到达时,根据预设的更新方式更新所述可验证范围。
12.如权利要求7-11任一项所述的装置,其特征在于,所述装置还包括:
验证代价设置单元,用于根据所述距离设置所述请求发送节点的验证代价,以控制所述请求发送节点的数量。
13.一种计算设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述方法的步骤。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710816647.5A CN107623686B (zh) | 2017-09-12 | 2017-09-12 | 区块链共识达成方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710816647.5A CN107623686B (zh) | 2017-09-12 | 2017-09-12 | 区块链共识达成方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107623686A true CN107623686A (zh) | 2018-01-23 |
CN107623686B CN107623686B (zh) | 2019-09-17 |
Family
ID=61089544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710816647.5A Active CN107623686B (zh) | 2017-09-12 | 2017-09-12 | 区块链共识达成方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107623686B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763302A (zh) * | 2018-04-19 | 2018-11-06 | 深圳市网心科技有限公司 | 区块链共识处理方法、电子装置及计算机可读存储介质 |
CN109005191A (zh) * | 2018-08-31 | 2018-12-14 | 中国联合网络通信集团有限公司 | 一种验证方法和系统、仲裁节点、存储介质 |
CN109088914A (zh) * | 2018-07-03 | 2018-12-25 | 深圳智乾区块链科技有限公司 | 区块的生成方法、区块链生态系统及计算机可读存储介质 |
CN109164780A (zh) * | 2018-11-22 | 2019-01-08 | 北京八分量信息科技有限公司 | 一种基于边缘计算的工业现场设备控制方法、装置及系统 |
CN109304033A (zh) * | 2018-08-31 | 2019-02-05 | 杭州复杂美科技有限公司 | 一种计算机游戏系统和方法、设备及存储介质 |
CN109783364A (zh) * | 2018-12-14 | 2019-05-21 | 深圳先进技术研究院 | 一种区块链性能测试系统及方法 |
CN110099127A (zh) * | 2019-05-13 | 2019-08-06 | 西安华域网络文化发展有限公司 | 一种区块链数据同步方法、装置、介质和电子设备 |
CN110213038A (zh) * | 2019-06-03 | 2019-09-06 | 中城智慧科技有限公司 | 一种基于vrf的权益随机共识方法及系统 |
CN110427763A (zh) * | 2019-07-24 | 2019-11-08 | 上海朝夕网络技术有限公司 | 一种基于预定义执行代码的分布式系统的共识方法 |
CN110460634A (zh) * | 2019-07-02 | 2019-11-15 | 特斯联(北京)科技有限公司 | 边缘计算共识请求管理方法和系统 |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
TWI682346B (zh) * | 2018-11-12 | 2020-01-11 | 柯賓漢數位金融科技有限公司 | 區塊鏈的產生方法及系統 |
WO2020022958A1 (en) * | 2018-07-27 | 2020-01-30 | Aioz Pte Ltd | Method and apparatus for transaction verification in a blockchain-based network |
WO2020042926A1 (zh) * | 2018-08-28 | 2020-03-05 | 白杰 | 区块链公链的维护方法、装置、节点及区块链公链 |
CN110868337A (zh) * | 2019-11-15 | 2020-03-06 | 腾讯科技(深圳)有限公司 | 容错共识机制测试方法、装置、存储介质和计算机设备 |
CN110941859A (zh) * | 2018-09-21 | 2020-03-31 | 上海派链信息科技有限公司 | 用于区块链形成共识的方法、设备、计算机可读存储介质和计算机程序产品 |
CN111786952A (zh) * | 2020-05-29 | 2020-10-16 | 中国银联股份有限公司 | 区块链系统的共识方法、装置、设备及介质 |
CN113259186A (zh) * | 2021-07-07 | 2021-08-13 | 发明之家(北京)科技有限公司 | 一种区块链的新区块监控方法和系统 |
CN113452752A (zh) * | 2021-05-20 | 2021-09-28 | 西安电子科技大学 | 一种多域物联网场景下的信任管理、博弈方法、系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160028552A1 (en) * | 2014-07-25 | 2016-01-28 | Blockchain Technologies Corporation | System and method for creating a multi-branched blockchain with configurable protocol rules |
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
CN106878071A (zh) * | 2017-01-25 | 2017-06-20 | 上海钜真金融信息服务有限公司 | 一种基于Raft算法的区块链共识机制 |
CN107124403A (zh) * | 2017-04-14 | 2017-09-01 | 朱清明 | 区块链中共识区块的生成方法与计算设备 |
CN107146087A (zh) * | 2017-04-11 | 2017-09-08 | 广东网金控股股份有限公司 | 一种基于区块链联盟链的快速共识记账方法及系统 |
-
2017
- 2017-09-12 CN CN201710816647.5A patent/CN107623686B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160028552A1 (en) * | 2014-07-25 | 2016-01-28 | Blockchain Technologies Corporation | System and method for creating a multi-branched blockchain with configurable protocol rules |
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
CN106878071A (zh) * | 2017-01-25 | 2017-06-20 | 上海钜真金融信息服务有限公司 | 一种基于Raft算法的区块链共识机制 |
CN107146087A (zh) * | 2017-04-11 | 2017-09-08 | 广东网金控股股份有限公司 | 一种基于区块链联盟链的快速共识记账方法及系统 |
CN107124403A (zh) * | 2017-04-14 | 2017-09-01 | 朱清明 | 区块链中共识区块的生成方法与计算设备 |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763302A (zh) * | 2018-04-19 | 2018-11-06 | 深圳市网心科技有限公司 | 区块链共识处理方法、电子装置及计算机可读存储介质 |
WO2019232789A1 (zh) * | 2018-06-08 | 2019-12-12 | 北京大学深圳研究生院 | 一种基于投票的共识方法 |
CN109088914A (zh) * | 2018-07-03 | 2018-12-25 | 深圳智乾区块链科技有限公司 | 区块的生成方法、区块链生态系统及计算机可读存储介质 |
CN109088914B (zh) * | 2018-07-03 | 2021-10-01 | 深圳智乾区块链科技有限公司 | 区块的生成方法、区块链生态系统及计算机可读存储介质 |
WO2020022958A1 (en) * | 2018-07-27 | 2020-01-30 | Aioz Pte Ltd | Method and apparatus for transaction verification in a blockchain-based network |
WO2020042926A1 (zh) * | 2018-08-28 | 2020-03-05 | 白杰 | 区块链公链的维护方法、装置、节点及区块链公链 |
CN109005191A (zh) * | 2018-08-31 | 2018-12-14 | 中国联合网络通信集团有限公司 | 一种验证方法和系统、仲裁节点、存储介质 |
CN109304033A (zh) * | 2018-08-31 | 2019-02-05 | 杭州复杂美科技有限公司 | 一种计算机游戏系统和方法、设备及存储介质 |
CN109304033B (zh) * | 2018-08-31 | 2021-10-01 | 杭州复杂美科技有限公司 | 一种计算机游戏系统和方法、设备及存储介质 |
CN109005191B (zh) * | 2018-08-31 | 2021-05-11 | 中国联合网络通信集团有限公司 | 一种验证方法和系统、仲裁节点、存储介质 |
CN110941859A (zh) * | 2018-09-21 | 2020-03-31 | 上海派链信息科技有限公司 | 用于区块链形成共识的方法、设备、计算机可读存储介质和计算机程序产品 |
TWI682346B (zh) * | 2018-11-12 | 2020-01-11 | 柯賓漢數位金融科技有限公司 | 區塊鏈的產生方法及系統 |
CN109164780B (zh) * | 2018-11-22 | 2020-06-16 | 北京八分量信息科技有限公司 | 一种基于边缘计算的工业现场设备控制方法、装置及系统 |
CN109164780A (zh) * | 2018-11-22 | 2019-01-08 | 北京八分量信息科技有限公司 | 一种基于边缘计算的工业现场设备控制方法、装置及系统 |
CN109783364A (zh) * | 2018-12-14 | 2019-05-21 | 深圳先进技术研究院 | 一种区块链性能测试系统及方法 |
CN110099127A (zh) * | 2019-05-13 | 2019-08-06 | 西安华域网络文化发展有限公司 | 一种区块链数据同步方法、装置、介质和电子设备 |
CN110213038B (zh) * | 2019-06-03 | 2024-06-04 | 聂明 | 一种区块链形成共识的方法及系统 |
CN110213038A (zh) * | 2019-06-03 | 2019-09-06 | 中城智慧科技有限公司 | 一种基于vrf的权益随机共识方法及系统 |
CN110460634A (zh) * | 2019-07-02 | 2019-11-15 | 特斯联(北京)科技有限公司 | 边缘计算共识请求管理方法和系统 |
CN110460634B (zh) * | 2019-07-02 | 2020-10-27 | 特斯联(北京)科技有限公司 | 边缘计算共识请求管理方法和系统 |
CN110427763B (zh) * | 2019-07-24 | 2021-07-23 | 上海朝夕网络技术有限公司 | 一种基于预定义执行代码的分布式系统的共识方法 |
CN110427763A (zh) * | 2019-07-24 | 2019-11-08 | 上海朝夕网络技术有限公司 | 一种基于预定义执行代码的分布式系统的共识方法 |
CN110868337B (zh) * | 2019-11-15 | 2021-05-07 | 腾讯科技(深圳)有限公司 | 容错共识机制测试方法、装置、存储介质和计算机设备 |
CN110868337A (zh) * | 2019-11-15 | 2020-03-06 | 腾讯科技(深圳)有限公司 | 容错共识机制测试方法、装置、存储介质和计算机设备 |
CN111786952A (zh) * | 2020-05-29 | 2020-10-16 | 中国银联股份有限公司 | 区块链系统的共识方法、装置、设备及介质 |
CN111786952B (zh) * | 2020-05-29 | 2023-03-17 | 中国银联股份有限公司 | 区块链系统的共识方法、装置、设备及介质 |
CN113452752A (zh) * | 2021-05-20 | 2021-09-28 | 西安电子科技大学 | 一种多域物联网场景下的信任管理、博弈方法、系统 |
CN113452752B (zh) * | 2021-05-20 | 2022-09-30 | 西安电子科技大学 | 一种多域物联网场景下的信任管理、博弈方法、系统 |
CN113259186A (zh) * | 2021-07-07 | 2021-08-13 | 发明之家(北京)科技有限公司 | 一种区块链的新区块监控方法和系统 |
CN113259186B (zh) * | 2021-07-07 | 2021-10-08 | 发明之家(北京)科技有限公司 | 一种区块链的新区块监控方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107623686B (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107623686A (zh) | 区块链共识达成方法、装置、设备及存储介质 | |
CN108352009B (zh) | 区块链生成装置、区块链生成方法、区块链验证装置、区块链验证方法以及计算机可读存储介质 | |
CN108292395B (zh) | 区块链生成装置、区块链生成方法、区块链验证装置、区块链验证方法以及计算机可读存储介质 | |
CN108171511B (zh) | 一种具有隐私保护功能的区块链系统 | |
EP4002181A1 (en) | A consensus method and framework for a blockchain system | |
CN109075964B (zh) | 支持用于区块验证的多个单向函数的区块链 | |
US10614456B2 (en) | Dynamic cryptocurrency aliasing | |
JP6986519B2 (ja) | 分散型トランザクション伝播および検証システム | |
KR102128210B1 (ko) | 정보 보호를 위한 시스템 및 방법 | |
US11188899B2 (en) | Off network identity tracking in anonymous cryptocurrency exchange networks | |
CN108038954A (zh) | 基于区块链的交易运行方法及挖矿节点 | |
CN107171810A (zh) | 区块链的验证方法及装置 | |
KR101795696B1 (ko) | 메신저 서비스를 통하여 송수신되는 데이터에 대한 기록 및 검증 서비스를 제공하는 방법, 및 이를 이용한 서버 | |
CN109842606A (zh) | 基于一致性哈希算法的区块链共识算法和系统 | |
CN110494875A (zh) | 用于动态节点群组的私钥的安全再使用 | |
KR20190138803A (ko) | 블록체인을 사용해서 데이터 레코드를 분산하기 위한 시스템 및 방법 | |
CN109242299A (zh) | 分布式挖矿方法、挖矿机及区块链系统 | |
KR20190093012A (ko) | 블록 체인 시스템에서의 블록 생성 및 검증 방법 | |
US11843586B2 (en) | Systems and methods for providing a modified loss function in federated-split learning | |
CN107038639A (zh) | 一种兼容多资产类型快速交易的联盟链构建方法 | |
CN109146681A (zh) | 一种区块链的元素处理方法、装置、设备和存储介质 | |
CN111213170B (zh) | 资产托管方法,存储介质,区块链系统及区块链节点 | |
GB2587541A (en) | A consensus method and framework for a blockchain system | |
US20210012421A1 (en) | Method and device for trading on an electronic trading platform | |
Gojka et al. | Security in distributed ledger technology: An analysis of vulnerabilities and attack vectors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |