CN110675257A - 一种区块组链的构建方法及装置 - Google Patents
一种区块组链的构建方法及装置 Download PDFInfo
- Publication number
- CN110675257A CN110675257A CN201910865236.4A CN201910865236A CN110675257A CN 110675257 A CN110675257 A CN 110675257A CN 201910865236 A CN201910865236 A CN 201910865236A CN 110675257 A CN110675257 A CN 110675257A
- Authority
- CN
- China
- Prior art keywords
- node
- super
- nodes
- verification
- super node
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
发明提供了一种区块组链的构建方法及装置,该方法包括设置在区块组链上的若干个数据节点、用于验证的普通节点和处理交易数据的超级节点;当所述交易数据通过所述普通节点进行数据验证,对所述交易数据进行处理得出交易信息;对所述交易信息进行打包;所述超级节点对处理数据进行数据的验证,判断处理数据是否满足预设条件;当处理数据满足预设条件时,所述超级节点发送处理数据给下一个普通节点进行公开。本发明使得组内之间的通信更加的便捷、降低成本,还减少工作量,进而提高了整体的效率。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种区块组链的构建方法及装 置。
背景技术
传统区块链都是链状结构,也就是说在传统的区块链中,每一个节点 相继传输相应的数据至下一节点以使数据相继传输下去,但是在实践中发 现,该方案中通信不便、成本高。
如CN106530083B现有技术公开了一种基于区块链的多链管理方法及 系统,在区块链生态系统中,造成多链环境的存在主要是因为几个因素: 1)很多区块链的节点会仅限于某个事物或流程的参与方,比如说一个供应 链问题是很多机构在一个业务场景都会有多条业务链;2)由于对区块链本 身的秒流量需求很高,所以某些区块链会采用数据分片方式把每日交易分 布到在多条区块链上运行,同样会造成管理上的困难。如果每个区块链有自身的身份验证机构,那么用户还要对自己在各个链上的身份进行储存备 份,操作繁琐,数据容易出错,系统效能低下,且组链的方式过于简单, 没有验证的手段。另一种典型的如PH20181501746的现有技术公开的一 种具有令牌化的基于区块链的交换,在比特币平台上,这些脚本是使用基 于堆栈的脚本语言来编写。区块链相关兴趣的另一领域是使用“令牌”(或 “彩色币”)以通过区块链表示且转移现实世界的实体。潜在地敏感或机密条 款可由具有不可辨别的含义或价值的令牌来表示。令牌因此充当允许从区 块链参考现实世界的项目的标识符。令牌化技术在其中安全性、匿名及跨 平台相容性很重要的许多不同类型的情境中使用,安全为题仍然存在不确 定性,安全验证的方式缺乏或缺少针对性的防范措施。
为了解决本领域普遍存在组内通信不方便、成本高,工作强度大,整 体的效率低下等等问题,作出了本发明。
发明内容
本发明的目的在于,针对目前区块链的构建方法所存在的不足,提出 了一种区块组链的构建方法。
为了克服现有技术的不足,本发明采用如下技术方案:
一种区块组链的构建方法,包括设置在区块组链上的若干个数据节点、 用于验证的普通节点和处理交易数据的超级节点;
当所述交易数据通过所述普通节点进行数据验证,对所述交易数据进 行处理得出交易信息;
对所述交易信息进行打包;
所述超级节点对处理数据进行数据的验证,判断处理数据是否满足预 设条件;当处理数据满足预设条件时,所述超级节点发送处理数据给下一 个普通节点进行公开。
可选的,所述获取子级区块链发送的交易数据,并以所述交易数据为 依据进行真实性验证的步骤包括:
获取子级区块链中包括的超级节点发送的交易数据;所述超级节点用 于在所述子级区块链中对所述交易数据进行真实性验证;
以所述交易数据为依据进行真实性验证。
可选的,用于验证超级节点的真实性设有若干个验证节点,所述验证 节点为:从组内选出n个超级节点、组外选择m个超级节点联合参与验证; 并且根据这n+m个超级节点的验证结果,取占据2/3的投票者的验证结果 为最终的验证结果,其中,n、m均大于等于3。
可选的,所述验证节点相对的所述超级节点各有不同;所述超级节点 的选取方法包括:
除该交易记录中发起交易的节点以外的所有节点通过可验证随机函数 VRF来选取超级节点,当所述超级节点进行抽签,选到的超级节点选定后 生成相应的私钥和随机数;所述私钥作为选定的所述超级节点的识别码, 当抽出的所述随机数的值大于10,选定此次选定的超级节点的随机数对 应的节点作为其中的一个所述超级节点;
在选定该轮抽签中的所述随机值进行广播,并把该所述超级节点的私 钥的验证,若所述私钥通过所述超级节点的验证,则把该私钥对应的所述 超级节点作为本轮的所述超级节点。
可选的,所述超级节点的选取方法还包括:在所述超级节点选出后, 后续的所述节点在进行抽签,通过谷歌S2距离算法计算后续的节点与上 一个所述超级节点的空间距离,判断其空间距离是否超过预设的距离,若 是,则该后续节点成为超级节点。若不是,则确定该后续节点不为超级节 点。
可选的,选出超级节点后,再在选取的多个所述超级节点中选取一个 所述超级节点来对该交易记录进行输出区块。
可选的,在选取的抽签的样本数据中的节点数量未到达一定的数量时, 设有随机选取方法,所述随机选取方法包括:如果参与所述抽签所述节点 数量过少,将全部符合超级节点机器性能的节点均作为超级节点,再在选 取的多个所述超级节点中选取一个所述超级节点来对该交易记录进行输出 区块。
本发明还提供一种区块链组架构的装置,包括:
选取模块:选取各个超级节点;
验证模块,用于执行验证程序并验证各个超级节点的验证并生成验证 结果;
抽签模块:用于对抽签样本的节点进行抽签。
另外,还提供一种电子设备,包括处理器、存储器,所述存储器存储 有所述处理器可执行的机器可读指令,当电子设备运行时,所述机器可读 指令被所述处理器执行时执行所述的区块链组架构的方法。
本发明所取得的有益效果是:
1.通过区块组链的方式,使得整个普通节点和超级节点之间的通信之 间能够高效的进行,还能使得组内通信更加的方便和高效,有效的降低运 行的成本,减少了各个普通节点之间的通信,转换到直接与超级节点进行 通信;
2.改变了原本的区块链技术中存在节点网络,并且在对节点网络进行 验证的过程中是需要对每一个节点进行验证的验证过程,通过发明的验证 方式,使得验证的工作量得到减少,进而提高了整体验证的效率;
3.改变普通节点生成处理数据,并发送处理数据给下一个普通节点; 下一普通节点在进行处理数据进行验证,并在验证成功后公开处理数据的 工作方式,直接利用超级节点进行验证,有效减少验证的工作量,进而提 高了整体的效率。
附图说明
从以下结合附图的描述可以进一步理解本发明。图中的部件不一定按 比例绘制,而是将重点放在示出实施例的原理上。在不同的视图中,相同 的附图标记指定对应的部分。
图1为本发明的一种区块组链的构建方法验证的结构示意图。
图2为本发明的一种区块组链的构建方法的验证步骤的流程图。
图3为本发明的一种区块组链的构建方法的超级节点的验证流程图。
图4为本发明的一种区块组链的构建方法的所述验证超级节点的验证 流程图。
图5为本发明的一种区块组链的构建方法的完整的结构示意图。
具体实施方式
为了使得本发明的目的.技术方案及优点更加清楚明白,以下结合其 实施例,对本发明进行进一步详细说明;应当理解,此处所描述的具体实 施例仅用于解释本发明,并不用于限定本发明。对于本领域技术人员而言, 在查阅以下详细描述之后,本实施例的其它系统.方法和/或特征将变得显 而易见。旨在所有此类附加的系统.方法.特征和优点都包括在本说明书内. 包括在本发明的范围内,并且受所附权利要求书的保护。在以下详细描述 描述了所公开的实施例的另外的特征,并且这些特征根据以下将详细描述 将是显而易见的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在 本发明的描述中,需要理解的是,若有术语“上”.“下”.“左”.“右”等指示的方 位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发 明和简化描述,而不是指示或暗示所指的装置或组件必须具有特定的方位. 以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性 说明,不能理解为对本专利的限制,对于本领域的普通技术人员而言,可 以根据具体情况理解上述术语的具体含义。
实施例一:如图2中的步骤101-104所示,一种区块组链的构建方法, 包括设置在区块组链上的若干个数据节点、用于验证的普通节点和处理交 易数据的超级节点;
当所述交易数据通过所述普通节点进行数据验证,对所述交易数据进 行处理得出交易信息;
对所述交易信息进行打包;
所述超级节点对处理数据进行数据的验证,判断处理数据是否满足预 设条件;当处理数据满足预设条件时,所述超级节点发送处理数据给下一 个普通节点进行公开。所述获取子级区块链发送的交易数据,并以所述交 易数据为依据进行真实性验证的步骤包括:获取子级区块链中包括的超级 节点发送的交易数据;所述超级节点用于在所述子级区块链中对所述交易 数据进行真实性验证;以所述交易数据为依据进行真实性验证。如图4中步骤301-304所示,用于验证超级节点的真实性设有若干个验证节点,所 述验证节点为:从组内选出n个超级节点、组外选择m个超级节点联合参与 验证;并且根据这n+m个超级节点的验证结果,取占据2/3的投票者的验证 结果为最终的验证结果,其中,n、m均大于等于3。所述验证节点相对的 所述超级节点各有不同;所述超级节点的选取方法包括:除该交易记录中 发起交易的节点以外的所有节点通过可验证随机函数VRF来选取超级节点, 当所述超级节点进行抽签,选到的超级节点选定后生成相应的私钥和随机 数;所述私钥作为选定的所述超级节点的识别码,当抽出的所述随机数的 值大于10,选定此次选定的超级节点的随机数对应的节点作为其中的一个 所述超级节点;在选定该轮抽签中的所述随机值进行广播,并把该所述超 级节点的私钥的验证,若所述私钥通过所述超级节点的验证,则把该私钥 对应的所述超级节点作为本轮的所述超级节点。所述超级节点的选取方法 还包括:在所述超级节点选出后,后续的所述节点在进行抽签,通过谷歌 S2距离算法计算后续的节点与上一个所述超级节点的空间距离,判断其空 间距离是否超过预设的距离,若是,则该后续节点成为超级节点。若不是, 则确定该后续节点不为超级节点。选出超级节点后,再在选取的多个所述 超级节点中选取一个所述超级节点来对该交易记录进行输出区块。在选取 的抽签的样本数据中的节点数量未到达一定的数量时,设有随机选取方法, 所述随机选取方法包括:如果参与所述抽签所述节点数量过少,将全部符 合超级节点机器性能的节点均作为超级节点,再在选取的多个所述超级节 点中选取一个所述超级节点来对该交易记录进行输出区块。所述随机选取 方法还包括:VRF选取方式进行超级节点的选取。本发明还提供一种区块 组链装置,其应用于区块组链的网络中节点,包括:获取模块,用于获取从所述区块链网络中接收到的第一交易;缓冲模块,用于将所述第一交易 写入缓冲区,所述缓冲区用于存储待写入区块的交易判断模块,用于判断 所述缓冲区中存储的所有交易的总金额是否达到出块金额阈值;第一打包 模块,用于若达到,则将所述缓冲区中存储的所有交易打包生成新的区块。
实施例二:一种区块组链的构建方法,包括设置在区块组链上的若干 个数据节点、用于验证的普通节点和处理交易数据的超级节点;当所述交 易数据通过所述普通节点进行数据验证,对所述交易数据进行处理得出交 易信息;对所述交易信息进行打包;所述超级节点对处理数据进行数据的 验证,判断处理数据是否满足预设条件;当处理数据满足预设条件时,所 述超级节点发送处理数据给下一个普通节点进行公开。具体的,如图2中的步骤101-104所示,选择超级节点的目的在于在交易记录产生之后,需 要超级节点对该交易记录进行记录,并将记录的交易记录存储并同步在该 区块链上。
如图3中的201-203所示,各个所述普通节点生成处理数据(交易数 据);各个所述普通节点发送处理数据至所述超级节点;所述超级节点对 处理数据进行数据验证,判断处理数据是否满足预设条件(真实性、有效 性以及合法性等等);当处理数据满足预设条件时,所述超级节点发送处 理数据给下一个所述普通节点进行公开。通过将区块链由传统的链状结构 改为分组结构,每个组内有少量的超级节点和较多的普通节点。每个组之 间通过超级节点相连接,组内是的普通节点与超级节点相连接成类似星型 的网状结构。
如图4中步骤301-304所示,所述获取子级区块链发送的交易数据, 并以所述交易数据为依据进行真实性验证的步骤包括:获取子级区块链中 包括的超级节点发送的交易数据;所述超级节点用于在所述子级区块链中 对所述交易数据进行真实性验证;以所述交易数据为依据进行真实性验证。 具体的,用于验证超级节点的真实性设有若干个验证节点,所述验证节点 为:从组内选出n个超级节点、组外选择m个超级节点联合参与验证; 并且根据这n+m个超级节点的验证结果,取占据2/3的投票者的验证结 果为最终的验证结果,其中,n、m均大于等于3。具体的,选择超级节 点的目的在于在交易记录产生之后,需要超级节点对该交易记录进行记录, 并将记录的交易记录存储并同步在该区块链上。首先,除该交易记录中发 起交易的节点以外的所有节点通过可验证随机函数VRF来选取超级节点,具体为:让各个节点自己抽签,如果抽中了之后,大家可以很容易地验证 这个结果确实是你生成的。例如,假设现在是round 10(第10轮),节 点们可能会轮流抽签,以节点自己的私钥+一个全网都知道的随机数(比 如是这轮的轮次10)作为输入,生成了一个随机数(0-100);设置一个 条件:100个节点轮流抽签,谁先抽出来的随机数大于10,就成为这一轮 中的其中一个超级节点。假设5号节点抽到了11,可是只有5号知道其他 人不知道,因此他在广播这个随机值。全网只需要通过5号的私钥就可以 验证,接受5号为这轮所述超级节点。在其他节点接受5号节点为超级节 点之后,该轮次还没结束,后续6-100节点继续进行抽签,假设现在7号 节点生成的随机数为12,大于10,为了保证超级节点不过于集中,在7 号节点成为超级节点之前。通过谷歌S2距离算法计算7号节点与5号节 点的空间距离,判断其空间距离是否超过预设的距离(也就是7号节点与 5号节点距离是否足够远),若是,则7号节点成为超级节点。若不是, 则确定7号节点不为超级节点。假设,现在5号节点和7号节点都成为了 超级节点,后续节点继续进行抽签,设现在11号节点生成的随机数大于 10,为了保证超级节点不过于集中,则通过谷歌S2距离算法计算11号节 点分别与5号节点和7号节点的空间距离,进而判断距离是否超过预设距 离,超过即11号节点成为超级节点,没超过则确定其不成为超级节点。 根据前述所说,在确定节点算出的随机数满足条件之后,都要判断该节点 与成为超级节点的所有节点的距离是否超过预设的距离,若是,则确定为 超级节点。最后,再在选取的多个超级节点中选取一个超级节点来对该交 易记录进行出块。通过这样的方式来选取超级节点,使得各个超级节点之 间的距离足够远,来防止选取的多个超级节点过于集中带来的作弊问题。
所述验证节点相对的所述超级节点各有不同;所述超级节点的选取方 法包括:除该交易记录中发起交易的节点以外的所有节点通过可验证随机 函数VRF来选取超级节点,当所述超级节点进行抽签,选到的超级节点选 定后生成相应的私钥和随机数;所述私钥作为选定的所述超级节点的识别 码,当抽出的所述随机数的值大于10,选定此次选定的超级节点的随机 数对应的节点作为其中的一个所述超级节点;在选定该轮抽签中的所述随 机值进行广播,并把该所述超级节点的私钥的验证,若所述私钥通过所述 超级节点的验证,则把该私钥对应的所述超级节点作为本轮的所述超级节 点。具体的,本申请实施例提供了一种配合装置,所述基于区块链的配合 装置包括上级区块链模块和子级区块链模块,且所述上级区块链模块包括 获取单元、处理单元、打包单元以及广播单元,其中,所述获取单元,用 于获取所述子级区块链模块发送的交易数据,并以所述交易数据为依据进 行真实性验证;所述处理单元,用于在所述交易数据通过所述真实性验证 时,对所述交易数据进行处理得到交易信息;所述打包单元,用于对所述 交易信息进行打包,得到与所述交易信息对应的区块;所述广播单元,用 于广播所述区块至多个子级区块链模块中,以使所述多个子级区块链模块 中的节点进行同步。在上述实现过程中,该基于区块链的配合装置是包括 上级区块链模块和子级区块链模块的,其中,该上级区块链模块用于设置 上级区块链,而子级区块链模块用于设置子级区块链。在该上级区块链模 块中,上级区块链模块还包括获取单元、处理单元、打包单元以及广播单 元,其中,获取单元、处理单元、打包单元以及广播单元可以由上级区块 链中的节点(可以称该节点为全节点)所包括,具体的,获取单元用于获 取交易数据,并对交易数据进行验证,处理单元用于对交易数据进行处理, 得到满足预设条件的交易信息(该交易信息用于直接打包至区块),打包 单元则用于对交易信息进行打包出块,再由广播单元对区块进行广播,以 使该区块信息可以公开给所有其他的子级区块链,以使各子级区块链可以 根据需要对交易信息进行调用,从而实现多链之间的信息交互,完成多链 配合。在这个过程中,首先,除该交易记录中发起交易的节点以外的所有节点通过可验证随机函数VRF来选取超级节点,具体为:让各个节点自己 抽签,如果抽中了之后,大家可以很容易地验证这个结果确实是你生成的。 例如,假设现在是round 10(第10轮),节点们可能会轮流抽签,以节 点自己的私钥+一个全网都知道的随机数(比如是这轮的轮次10)作为输 入,生成了一个随机数(0-100);设置一个条件:100个节点轮流抽签, 谁先抽出来的随机数大于10,就成为这一轮中的其中一个超级节点。假 设5号节点抽到了11,可是只有5号知道其他人不知道,因此他在广播这 个随机值。全网只需要通过5号的公钥就可以验证,接受5号为这所述超 级节点。在其他节点接受5号节点为超级节点之后,该轮次还没结束,后 续6-100节点继续进行抽签,假设现在7号节点生成的随机数为12,大于 10,为了保证超级节点不过于集中,在7号节点成为超级节点之前,通过 谷歌S2距离算法计算7号节点与5号节点的空间距离,判断其空间距离 是否超过预设的距离(也就是7号节点与5号节点距离是否足够远),若 是,则7号节点成为超级节点。若不是,则确定7号节点不为超级节点。
可见,实施这种实施方式,可以完成上级区块链与子级区块链之间交 易数据的传递并不会影响各自对区块的打包生成,因此在这基础上上级区 块链可以存储大量的数据并实现与各子级区块链之间的交互,同时以此为 基础可以随时对区块链进行相应的扩容操作,从而解决了目前区块链之间 不便交互和扩容的问题。所述获取单元包括:获取子单元,用于获取子级 区块链模块中包括的超级节点发送的交易数据;所述超级节点用于在所述 子级区块链模块中对所述交易数据进行真实性验证;验证子单元,用于以 所述交易数据为依据进行真实性验证。在上述实现过程中,上级区块链模 块中的上级区块链获取的是子级区块链模块中子级区块链发送的交易信息, 而该子级区块链模块中的子级区块链是一种具有超级节点的区块链(也就 是说,子级区块链可以为包括超级节点和普通节点的区块链),其中,超 级节点可以获取交易数据并发送交易数据至上级区块链,同时,也可以由普通节点获取交易数据,并上传交易数据至超级节点以使超级节点转发该 交易数据至上级区块链;在子级区块链中,超级节点用于对子级区块链中 的交易数据进行真实性验证,并在子级区块链中根据该交易数据进行处理 与打包得到子级区块链自己的区块,而在本方法中,该超级节点还可以用 于获取交易数据(包括自我获取)并上传该交易数据至主链节点。可见, 实施这种实施方式,可以将该装置中多链配合的基础确定为子级区块链模 块包括的子级区块链皆为具有超级节点的子级区块链,从而使得上级区块 链和子级区块链之间通过超级节点进行明确传输,避免链间干扰的情况, 并提高多链之间的契合度,提高了多链配合效果。
所述超级节点的选取方法还包括:在所述超级节点选出后,后续的所 述节点在进行抽签,通过谷歌S2距离算法计算后续的节点与上一个所述 超级节点的空间距离,判断其空间距离是否超过预设的距离,若是,则该 后续节点成为超级节点。若不是,则确定该后续节点不为超级节点。具体 的,以5号节点和7号节点进行举例说明,具体的工作过程如下所述:现 在5号节点和7号节点都成为了超级节点,后续节点继续进行抽签,设现 在11号节点生成的随机数大于10,为了保证超级节点不过于集中,则通 过谷歌S2距离算法计算11号节点分别与5号节点和7号节点的空间距离, 进而判断距离是否超过预设距离,超过即11号节点成为超级节点,没超 过则确定其不成为超级节点。
选出超级节点后,再在选取的多个所述超级节点中选取一个所述超级 节点来对该交易记录进行输出区块。具体的,通过这样的方式来选取超级 节点,使得各个超级节点之间的距离足够远,来防止选取的多个超级节点 过于集中带来的作弊问题。
在选取的抽签的样本数据中的节点数量未到达一定的数量时,设有随 机选取方法,所述随机选取方法包括:如果参与所述抽签所述节点数量过 少,将全部符合超级节点机器性能的节点均作为超级节点,再在选取的多 个所述超级节点中选取一个所述超级节点来对该交易记录进行输出区块。 所述随机选取方法还包括:VRF选取方式进行超级节点的选取。具体的, 上述技术方案的应用是在该区块链上的节点数量满足一定的数量要求(例 如100个节点,1000个节点)之后进行,在满足数量要求之前(区块链 建立初期),可有以下方式来选取:1、如果节点过少,可以将全部符合 超级节点机器性能的节点均作为超级节点;2、如果节点过少,可由传统 的VRF来选取超级节点。
实施例三:在本实施例中还提供一种FullNode层底层结构,其中, fullNodesGroup是由多个fullNode全节点组成的组。一个节点在加入 区块链时,若输入选择全节点的标志,例如,标志:full。则需要进行上 传全节点相关的信息。根据节点的不同需要上传不同的信息。如若选择是 企业节点,则需要上传企业名称、统一社会信用代码认证/注册号、组织 机构代码(2选1)、证件代码、经营期限、所在地区、详细地址、企业 法人正面手持企业营业执照正反面照片。如若选择是个人企业节点KYC认 证需要提供的信息有:个体经营实体名称、证件代码、经营期限、所在地 区、详细地址、法人正面手持营业执照正反面照片。如若选择是个人节点 KYC认证需要提供的信息有:姓名(可选)、电子邮箱、电话号码、职位、 公司名、地址、身份证号/护照号、个人正面手持身份证/护照号码照片正 反面。
综上所述,本发明的一种区块组链的构建方法及装置,通过区块组链 的方式,使得整个普通节点和超级节点之间的通信之间能够高效的进行, 还能使得组内通信更加的方便和高效,有效的降低运行的成本,减少了各 个普通节点之间的通信,转换到直接与超级节点进行通信;通过改变了原 本的区块链技术中存在节点网络,并且在对节点网络进行验证的过程中是 需要对每一个节点进行验证的验证过程,通过发明的验证方式,使得验证的工作量得到减少,进而提高了整体验证的效率;通过改变普通节点生成 处理数据,并发送处理数据给下一个普通节点;下一普通节点在进行处理 数据进行验证,并在验证成功后公开处理数据的工作方式,直接利用超级 节点进行验证,有效减少验证的工作量,进而提高了整体的效率。
虽然上面已经参考各种实施例描述了本发明,但是应当理解,在不脱 离本发明的范围的情况下,可以进行许多改变和修改。也就是说上面讨论 的方法,系统和设备是示例。各种配置可以适当地省略,替换或添加各种 过程或组件。例如,在替代配置中,可以以与所描述的顺序不同的顺序执 行方法,和/或可以添加,省略和/或组合各种部件。而且,关于某些配置 描述的特征可以以各种其他配置组合,如可以以类似的方式组合配置的不 同方面和元素。此外,随着技术发展其中的元素可以更新,即许多元素是 示例,并不限制本公开或权利要求的范围。
在说明书中给出了具体细节以提供对包括实现的示例性配置的透彻理 解。然而,可以在没有这些具体细节的情况下实践配置例如,已经示出了 众所周知的电路,过程,算法,结构和技术而没有不必要的细节,以避免 模糊配置。该描述仅提供示例配置,并且不限制权利要求的范围,适用性 或配置。相反,前面对配置的描述将为本领域技术人员提供用于实现所描 述的技术的使能描述。在不脱离本公开的精神或范围的情况下,可以对元 件的功能和布置进行各种改变。
综上,其旨在上述详细描述被认为是例示性的而非限制性的,并且应 当理解,以上这些实施例应理解为仅用于说明本发明而不用于限制本发明 的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明 作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定 的范围。
Claims (10)
1.一种区块组链的构建方法,其特征在于,包括生成处理数据和验证处理数据,所述区块组链上设有若干组子级区块链,所述生成处理数据的步骤包括:
第一步:在各组所述区块组链的各个所述子级区块链上设置若干个子节点、用于验证的普通节点和处理交易数据的超级节点;
第二步:第一组子节点生成处理数据并把所述处理数据发送至所述超级节点;
第三步:对新增区块的所述交易数据通过所述超级节点进行数据验证,对所述交易数据进行处理得出交易信息;
第四步:对所述交易信息进行打包。
2.根据权利要求1所述的一种区块组链的构建方法,其特征在于,所述验证处理数据的步骤包括:
利用用于验证的所述普通节点对各个所述数据节点和所述超级节点处理数据进行数据的验证,判断处理数据是否满足预设条件;
当处理数据满足预设条件时,所述超级节点发送处理数据给下一个普通节点进行公开。
3.根据权利要求1所述的一种区块组链的构建方法,其特征在于,所述验证的步骤包括:
获取子级区块链中包括的超级节点发送的交易数据;所述超级节点用于在所述子级区块链中对所述交易数据进行真实性验证;
以所述交易数据为依据进行真实性验证。
4.根据权利要求1所述的一种区块组链的构建方法,其特征在于,用于验证的所述超级节点上设有若干个验证节点,所述验证节点为:
从组内选出n个超级节点、组外选择m个超级节点联合参与验证;
根据n+m个超级节点的验证结果,取占据2/3的投票者的验证结果为最终的验证结果,其中,n、m均不小于3。
5.根据权利要求1所述的一种区块组链的构建方法,其特征在于,所述验证节点与所述超级节点各有不同。
6.根据权利要求1所述的一种区块组链的构建方法,其特征在于,所述超级节点的选取方法包括:
在所述区块组链的交易记录中发起交易的节点以外的所有节点通过可验证随机函数VRF来选取超级节点,当所述超级节点进行抽签,选到的超级节点选定后生成相应的私钥和随机数;
所述私钥作为选定的所述超级节点的识别码,当抽出的所述随机数的值大于10,选定此次选定的超级节点的随机数对应的节点作为其中的一个所述超级节点;
在选定轮抽签中的所述随机值进行广播,并把该所述超级节点的私钥的验证,若所述私钥通过所述超级节点的验证,则把该私钥对应的所述超级节点作为本轮的所述超级节点。
7.根据权利要求1所述的一种区块组链的构建方法,其特征在于,选出所述超级节点后,再在选取的多个所述超级节点中选取一个所述超级节点来对该交易记录进行输出区块。
8.根据权利要求5所述的一种区块组链的构建方法,其特征在于,在选取的抽签的样本数据中的节点数量未到达规定的数量时,采用随机选取方法,所述随机选取方法包括:如果参与所述抽签所述节点数量过少,将全部符合超级节点机器性能的节点均作为超级节点,再在选取的多个所述超级节点中选取一个所述超级节点来对该交易记录进行输出区块。
9.一种区块链组架构的装置,其特征在于,包括:
选取模块:选取各个超级节点;
验证模块,用于执行验证程序并验证各个超级节点的验证并生成验证结果;
抽签模块:用于对抽签样本的节点进行抽签。
10.一种电子设备,其特征在于,包括处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述机器可读指令被所述处理器执行时执行权利要求1-8任一项所述的区块链组架构的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910865236.4A CN110675257B (zh) | 2019-09-12 | 2019-09-12 | 一种区块组链的构建方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910865236.4A CN110675257B (zh) | 2019-09-12 | 2019-09-12 | 一种区块组链的构建方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110675257A true CN110675257A (zh) | 2020-01-10 |
CN110675257B CN110675257B (zh) | 2022-09-06 |
Family
ID=69077988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910865236.4A Active CN110675257B (zh) | 2019-09-12 | 2019-09-12 | 一种区块组链的构建方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110675257B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109427012A (zh) * | 2017-08-22 | 2019-03-05 | 汇链丰(北京)科技有限公司 | 一种基于区块链的交易和验证方法 |
CN109508968A (zh) * | 2018-10-25 | 2019-03-22 | 常州唯康信息科技有限公司 | 区块链系统以及其控制方法 |
US20190108499A1 (en) * | 2017-10-09 | 2019-04-11 | Bing Liu | Decentralized Digital Token within an App Ecosystem |
CN109949158A (zh) * | 2019-03-15 | 2019-06-28 | 北京世纪诚链科技有限公司 | 一种超级节点交易验签并行加速方法 |
CN110011814A (zh) * | 2019-04-16 | 2019-07-12 | 北京艾摩瑞策科技有限公司 | 一种可验证的DPoS共识方法及其系统 |
CN110233737A (zh) * | 2019-06-28 | 2019-09-13 | 北京艾摩瑞策科技有限公司 | 基于DPoS的共识方法、装置、计算机设备及存储介质 |
-
2019
- 2019-09-12 CN CN201910865236.4A patent/CN110675257B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109427012A (zh) * | 2017-08-22 | 2019-03-05 | 汇链丰(北京)科技有限公司 | 一种基于区块链的交易和验证方法 |
US20190108499A1 (en) * | 2017-10-09 | 2019-04-11 | Bing Liu | Decentralized Digital Token within an App Ecosystem |
CN109508968A (zh) * | 2018-10-25 | 2019-03-22 | 常州唯康信息科技有限公司 | 区块链系统以及其控制方法 |
CN109949158A (zh) * | 2019-03-15 | 2019-06-28 | 北京世纪诚链科技有限公司 | 一种超级节点交易验签并行加速方法 |
CN110011814A (zh) * | 2019-04-16 | 2019-07-12 | 北京艾摩瑞策科技有限公司 | 一种可验证的DPoS共识方法及其系统 |
CN110233737A (zh) * | 2019-06-28 | 2019-09-13 | 北京艾摩瑞策科技有限公司 | 基于DPoS的共识方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110675257B (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI740423B (zh) | 在基於區塊鏈的私有交易中提供隱私和安全保護的系統和方法 | |
CN109936457B (zh) | 区块链多方见证方法、装置、设备及计算机可读存储介质 | |
CN106899698B (zh) | 一种区块链之间的跨链互操作方法 | |
EP3247070B1 (en) | Cryptocurrency-based event participation verification | |
US20210005041A1 (en) | Electronic voting system and control method | |
CN108769230B (zh) | 交易数据存储方法、装置、服务器及存储介质 | |
US20210005040A1 (en) | Electronic voting system and control method | |
US11551205B2 (en) | Method for producing a cryptographical signed transaction | |
CN112000744B (zh) | 一种签名方法及相关设备 | |
CN109948371A (zh) | 为区块链节点发放身份证书的方法及相关装置 | |
CN108831001B (zh) | 基于区块链的节点随机选取方法、系统、节点、电子设备 | |
CN111767569A (zh) | 区块链的访问授权方法及节点 | |
CN112513914A (zh) | 基于区块链的隐私交易中提供隐私和安全保护的系统和方法 | |
US20230259938A1 (en) | Blockchain-based data processing method and apparatus, device, readable storage medium and computer program product | |
CN111985007A (zh) | 一种基于区块链的合同签署与执行方法及装置 | |
CN110135993A (zh) | Utxo模型适配智能合约账户模型的方法、设备及存储介质 | |
CN110990790B (zh) | 一种数据处理方法及设备 | |
CN111260421B (zh) | 一种基于区块链的电子发票管控方法及装置 | |
CN112634034A (zh) | 预约方法、装置、电子设备及计算机可读存储介质 | |
JP2022552110A (ja) | ブロックチェーンベースのワークフローノード認証方法及びデバイス | |
WO2020061822A1 (en) | Method and system for arbitrating authenticity of data in a blockchain | |
CN112788555B (zh) | 跨运营商话费转移结算方法、装置及计算设备 | |
CN110990808B (zh) | 一种基于区块链的公证摇号方法 | |
CN110675257B (zh) | 一种区块组链的构建方法及装置 | |
CN109698750A (zh) | 区块链的区块生成方法、装置、设备及可读存储介质 |
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 |