首页 / 专利库 / 银行与财务事项 / 货币 / 一种区块链管理系统及方法

一种链管理系统及方法

阅读:755发布:2020-05-08

专利汇可以提供一种链管理系统及方法专利检索,专利查询,专利分析的服务。并且本 发明 提出一种 区 块 链 网络中的 节点 权限管理方法及系统,将区块链节点以权限进行划分,不同权限对应不同的审查管理方案以及不同的功能。通过权限划分,将节点划分签名者节点、普通账户节点和超级账户节点,所述签名者节点负责将区块链中的交易打包进区块并负责超级账户节点和普通账户节点的权限管理;所述普通账户节点负责账户之间的交易转账;所述超级账户节点负责为区块链中的资金流通提供 货币 储备。通过节点权限划分,能保障节点之间更好的分工合作,实现区块链的高速安全运行。节点权限以数字化的形式写入区块链中,由区块链技术的特性保障存储、读取、更新,整个过程透明可 跟踪 、不可篡改。权限管理增加了区块链的安全可信性,同时具备一定的扩展性,满足现有大分部商业应用的需求。,下面是一种链管理系统及方法专利的具体信息内容。

1.一种链管理系统,其特征在于,包括一个或者多个普通账户节点、一个或者多个超级账户节点以及一个或者多个签名者节点,其中:
所述签名者节点用于将来自超级账户节点和普通账户节点的交易打包进新区块,并负责超级账户节点和普通账户节点的权限管理;
所述普通账户节点用于账户之间的交易转账;
所述超级账户节点用于为系统中的资金流通提供货币储备。
2.根据权利要求1所述的区块链管理系统,其特征在于,
所述签名者节点和超级账户节点部署在中心服务器;所述普通账户节点部署在外部客户端。
3.根据权利要求1所述的区块链管理系统,其特征在于,还包括:
系统管理模块,用于对签名者节点、超级账户节点和普通账户节点进行监管。
4.根据权利要求3所述的区块链管理系统,其特征在于,
所述签名者节点的权限被配置为0;所述普通账户节点的权限依据其对应合法交易的优先级被配置为1~255间的整数,优先级越高,其权限值越高;所述超级账户节点的权限被配置为210。
5.根据权利要求4所述的区块链管理系统,其特征在于,所述签名者节点负责超级账户节点和普通账户节点的权限管理,包括:
用于为普通账户节点和超级账户节点赋权以及冻结非法普通账户节点和非法超级账户节点。
6.一种基于权利要求1至5任一所述的区块链管理系统的管理方法,其特征在于,包括如下步骤:
S1、根据区块链中节点的功能将区块链中的节点划分为不同权限的节点,包括签名者节点、普通账户节点和超级账户节点;
S2、根据步骤S1中的节点划分,为不同权限的节点进行初始化赋权:
S3、签名者节点、普通账户节点和超级账户节点各自根据其权限负责区块链中其各自对应的业务。
7.根据权利要求6所述的一种区块链管理方法,其特征在于,所述步骤S2中为不同权限的节点进行初始化赋权包括:
将签名者节点的权限赋值为0;
将普通账户节点的权限根据其交易被打包进区块中的优先级将其权限赋值为1~255之间的整数,值越大,该普通账户节点对应的转账交易被打包到区块中的优先级越高;
将超级账户节点的权限赋值为210。
8.根据权利要求6所述的一种区块链管理方法,其特征在于,签名者节点、普通账户节点和超级账户节点各自根据其权限负责区块链中其各自对应的业务包括:
所述签名者节点负责将区块链中的交易打包进区块并负责超级账户节点和普通账户节点的权限管理;
所述普通账户节点负责账户之间的交易转账;
所述超级账户节点负责为区块链中的资金流通提供货币储备。
9.根据权利要求8所述的一种区块链管理方法,其特征在于,通过签名者节点对区块链中的普通账户节点进行赋权管理,以冻结非法账户节点和/或基于普通账户节点的申请为其进行权限更改,包括;
P1、所有签名者节点确定是否为待赋权普通账户节点进行赋权投票;
P2、所有决定为待赋权普通账户节点进行赋权投票的签名者节点分别针对对该普通账户节点发起赋权交易,并进行投票签名;
P3、统计该普通账户节点获得的所有合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的普通账户节点的权限修改为投票给定的权限。
10.根据权利要求8所述的一种区块链管理方法,其特征在于,通过签名者节点对区块链中的超级账户节点进行赋权管理,以冻结非法超级账户节点并触发超级账户节点迁移,包括:
C1、所有签名者节点确定是否为待迁移超级账户节点进行迁移投票;
C2、所有决定为待迁移超级账户节点进行投票迁移的签名者节点分别对该待迁移超级账户节点发起迁移赋权交易并进行投票签名;
C3、统计该待迁移超级账户节点获得的合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的超级账户节点的迁移标识设置为真;
C4、将步骤C3中迁移标识为真的超级账户节点迁移到投票给定的目标地址。
11.根据权利要求8所述的一种区块链管理方法,其特征在于,通过签名者节点对区块链中涉及的交易金额大于区块链系统给定金额阈值的大额交易进行验证,使获得任意一个合法签名者节点的验证签名信息的大额交易进入交易池,将未获得合法签名者节点的验证签名信息的大额交易丢弃。
12.根据权利要求8所述的一种区块链管理方法,其特征在于,对签名者节点采用自我管理方式,基于预设的时间周期,通过其他所有合法签名者节点投票的方式,将获得的投票信息总数超过所有合法签名者节点总数一半的节点按照投票给定的权限被剔除或被赋权为新的签名者节点以实现签名者节点的更新,并基于更新后的合法签名者节点更新其对其他节点的赋权投票信息。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;
一个或多个服务器;以及,
如权利要求1至5任一所述的装置。
14.一种计算机计算机管理系统,其特征在于,包括:
一个或多个处理器;
存储器,其上存储有计算机程序,所述计算机程序被一个或多个处理器执行以实现如权利要求6至12任一所述方法的步骤。

说明书全文

一种链管理系统及方法

技术领域

[0001] 本发明涉及区块链数据处理领域,具体来说涉及区块链中的节点权限管理,更具体地说,涉及一种具有可监管性的基于节点权限划分的区块链节点管理方法及系统。

背景技术

[0002] 随着技术的发展,区块链应运而生,其作为分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,为互相交易的双方提供了一种更加便捷的处理机制,剔除了第三方信任中心,任何一笔交易信息不必经过第三方的同意即可完成,既为交易的双方提供了隐私保护,又减少了交易流程,降低了双方交易的槛,节省了交易费。
[0003] 但是移除第三方可信数据中心的同时,区块链技术也引入了安全监管相关的问题。在有第三方可信中心时,监管只需要对信任中心实施监管,而对于去掉信任中心的区块链系统,监管则需要覆盖交易双方,需要监管的节点规模呈指数级增加,为节点监管增加了困难;而且实际业务大部分基于色分工,节点合作共同完成,但是区块链中的所有节点却是竞争记账,节点之间没有合理的分工合作,无法应对现有大部分有角色分工的实际业务,导致区块链交易处理效率低下,达不到现有商业及应用的标准。
[0004] 此外,由于区块链是一个任何节点都可以自由加入与离开的点对点网络,对于有恶意倾向的节点没有任何审查机制,网络安全无法得到保障。虽然区块链网络中的激励机制可有效规范节点行为,但是对于某些节点来讲,仍然有作恶的动机。因此,对于区块链来说,有效的监管非常必要。
[0005] 区块链中的任何节点都有平等出块的权利,且任何交易都以相同的概率被打包进区块,节点间没有分工,不利于区块链安全高速运行;例如,比特币,任何节点只要拥有足够的算,都可以参与出块竞争,且每10分钟形成一个区块,出块速率缓慢,更何况交易确认时长长达1小时的时间,纠其原因,在于区块链的节点之间没有明确的分工机制。
[0006] 综上所述,现有的区块链系统由于其没有明确的分工机制、节点间不能高效的协同工作,导致区块链交易处理低下、可监管性差。

发明内容

[0007] 因此,本发明的目的在于克服上述现有技术缺陷,提供一种新的具有节点分工及权限管理机制的、能够高效处理节点交易、可监管性好的区块链管理系统及方法。
[0008] 根据本发明的第一方面,本发明提供一种区块链管理系统,其包括一个或者多个普通账户节点、一个或者多个超级账户节点以及一个或者多个签名者节点,其中:所述签名者节点用于将来自超级账户节点和普通账户节点的交易打包进新区块,并负责超级账户节点和普通账户节点的权限管理,包括为普通账户节点和超级账户节点赋权以及冻结非法普通账户节点和非法超级账户节点;所述普通账户节点用于账户之间的交易转账;所述超级账户节点用于为系统中的资金流通提供货币储备。
[0009] 所述签名者节点和超级账户节点部署在中心服务器;所述普通账户节点部署在外部客户端。所述签名者节点的权限被配置为0;所述普通账户节点的权限依据其对应合法交易的优先级被配置为1~255间的整数,优先级越高,其权限值越高;所述超级账户节点的权限被配置为210。
[0010] 所述区块链管理系统还包括:系统管理模块,用于对签名者节点、超级账户节点和普通账户节点进行监管。
[0011] 根据本发明的第二方面,本发明提供一种区块链管理方法,包括如下步骤:
[0012] S1、根据区块链中节点的功能将区块链中的节点划分为不同权限的节点,包括签名者节点、普通账户节点和超级账户节点。
[0013] S2、根据步骤S1中的节点划分,为不同权限的节点进行初始化赋权:将签名者节点的权限赋值为0;将普通账户节点的权限根据其交易被打包进区块中的优先级将其权限赋值为1~255之间的整数,值越大,该普通账户节点对应的转账交易被打包到区块中的优先10
级越高;将超级账户节点的权限赋值为2 。
[0014] S3、签名者节点、普通账户节点和超级账户节点各自根据其权限负责区块链中其各自对应的业务。其中,所述签名者节点负责将区块链中的交易打包进新区块并负责超级账户节点和普通账户节点的权限管理;所述普通账户节点负责账户之间的交易转账;所述超级账户节点负责为区块链中的资金流通提供货币储备。
[0015] 在本发明的一些实施例中,通过签名者节点对区块链中的普通账户节点进行赋权管理,以冻结非法账户节点和/或基于普通账户节点的申请为其进行权限更改,包括;
[0016] P1、所有签名者节点确定是否为待赋权普通账户节点进行赋权投票;
[0017] P2、所有决定为待赋权普通账户节点进行赋权投票的签名者节点分别针对对该普通账户节点发起赋权交易,并进行投票签名;
[0018] P3、统计该普通账户节点获得的所有合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的普通账户节点的权限修改为投票给定的权限。
[0019] 在本发明的一些实施例中,通过签名者节点对区块链中的超级账户节点进行赋权管理,以冻结非法超级账户节点并触发超级账户节点迁移,包括:
[0020] C1、所有签名者节点确定是否为待迁移超级账户节点进行迁移投票;
[0021] C2、所有决定为待迁移超级账户节点进行投票迁移的签名者节点分别对该待迁移超级账户节点发起迁移赋权交易并进行投票签名;
[0022] C3、统计该待迁移超级账户节点获得的合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的超级账户节点的迁移标识设置为真;
[0023] C4、将步骤C3中迁移标识为真的超级账户节点迁移到投票给定的目标地址。
[0024] 在本发明的一些实施例中,通过签名者节点对区块链中涉及的交易金额大于区块链系统给定金额阈值的大额交易进行验证,使获得任意一个合法签名者节点的验证签名信息的大额交易进入交易池,将未获得合法签名者节点的验证签名信息的大额交易丢弃。
[0025] 在本发明的一些实施例中,对签名者节点采用自我管理方式,基于预设的时间周期,通过其他所有合法签名者节点投票的方式,将获得的投票信息总数超过所有合法签名者节点总数一半的节点按照投票给定的权限被剔除或被赋权为新的签名者节点以实现签名者节点的更新,并基于更新后的合法签名者节点更新其对其他节点的赋权投票信息。
[0026] 与现有技术相比,本发明的优点在于:本发明为不同功能的区块链节点赋予不同的权限,根据区块链节点权限大小做出不同的准入控制,对于不同权限的节点分别赋予不同的功能,使得区块链能够以更高的安全性、更好的可监管性以及更高的性能对来自不同权限的区块链节点交易信息达成共识。附图说明
[0027] 以下参照附图对本发明实施例作进一步说明,其中:
[0028] 图1为根据本发明实施例的区块链管理系统网络拓扑示意图;
[0029] 图2为根据本发明实施例的区块链管理系统框架示意图;
[0030] 图3为根据本发明实施例的一个示例中区块链管理系统中节点部署示意图;
[0031] 图4为根据本发明实施例的区块链管理方法中为普通账户节点进行赋权的流程示意图;
[0032] 图5为根据本发明实施例的区块链管理方法中为超级账户节点的迁移进行赋权的流程示意图;
[0033] 图6为根据本发明实施例的区块链管理方法中大额交易验证流程示意图。

具体实施方式

[0034] 为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0035] 首先介绍一下本发明产生的背景。
[0036] 发明人在研究联盟区块链节点时发现,现有区块链系统的可监管性差是由于无节点控制管理机制造成的。对于现有区块链系统来讲,任意节点都可以随意进出系统,首先这种情况造成网络负担,降低了一定的可扩展性,最重要的是没有监管机构对节点进行审查。现实生活中的实际业务,绝大部分都有角色分工,而现有联盟链的权限划分大多都不明确,无法落实到有具体角色划分的实际业务。
[0037] 为了更好的监管区块链节点,本发明为节点增加了权限管理机制,为区块链账户增加权限管理,有助于区块链项目的落地。
[0038] 在增加权限管理机制后,区块链节点分为3种类型,分别设置为超级账户节点、普通账户节点和签名者节点;每种节点处理区块链中不同的功能,根据功能进行节点监管,节点间分工合作共同形成区块链;每种节点都有独特的准入机制、权限管理机制,根据不同的节点类型进行节点规模扩展。
[0039] 根据本发明的一个实施例,区块链节点的3种类型在展开实际落地业务时,分别对应3种不同的管理方式;超级账户节点对应现实业务中的资金流通中心(比如国家的发币机构),控制系统中流通的资产量;签名者节点对应管理中心和数据中心,管理中心管理普通账户和超级账户节点账户的权限,数据中心记录其他两种账户之间的转账交易;普通账户为使用区块链业务的节点,对应为现实中的普通大众;3种类型的账户分工合作,有利于区块链业务的展开。同时,区块链节点的分类有利于监管机构根据不同功能分别实行不同级别的监管,保障区块链系统安全。
[0040] 下面结合实施例和/或示例以及附图详细说明本发明。
[0041] 图1示出了本发明的区块链管理系统网络拓扑示意图,如图1所示,本发明的一种区块链管理系统,包括一个或者多个普通账户节点、一个或者多个超级账户节点以及一个或者多个签名者节点,其中:所述签名者节点用于将来自超级账户节点和普通账户节点的交易打包进新区块,一个区块可包含多个交易,并负责超级账户节点和普通账户节点的权限管理;所述普通账户节点用于账户之间的交易转账;所述超级账户节点用于为系统中的资金流通提供货币储备既用于充当系统的货币发行机构,是系统中全部流通资金的起点。
[0042] 图1中的单向箭头示出了不同类型节点间的交易流转,其中,签名者节点间的无箭头线段表示签名者节点间的通信;普通账户节点间的双向箭头以及超级账户节点间的双向箭头表示同类型节点间的交易流转;签名者节点到普通账户节点的单向箭头表示签名者节点对普通账户节点的权限更新;签名者节点到超级账户节点的单向箭头表示签名者节点对超级账户节点的权限更新或签名者节点到超级账户节点的交易流转。从图1中可以看出资金在普通账户节点之间、超级账户节点之间、普通账户节点与超级账户节点之间以交易的形式进行流通;所述签名者节点不接受资金转入,且只能将资金转出到超级账户节点。
[0043] 概括的说,系统中3种类型节点对应的功能可总结如下:
[0044] 签名者节点的功能是负责将来自各个超级账户节点和普通账户节点的合法交易打包进新区块,负责超级账户节点和普通账户节点的权限管理。当系统监测到任意一个超级账户或普通账户有恶意操作时,签名者节点则将其冻结,即将其权限设置为0。当普通账户线下申请更改权限时,所有签名者节点线上对其所申请的权限进行投票,决定是否为其赋权。
[0045] 超级账户节点的功能是充当系统的货币发行机构,是系统中全部流通资金的起点,为系统中的资金流通提供货币储备。系统中流通的资金全部来源于超级账户节点,在本发明对应的区块链系统中,签名者挖矿不会有创币交易的奖励,签名者的挖矿激励仅包含挖矿所得交易费。
[0046] 普通账户节点的功能是账户之间交易转账。
[0047] 根据本发明的一个实施例,本发明的区块链管理系统还包括系统管理模块,用于对签名者节点、超级账户节点和普通账户节点进行监管。
[0048] 系统中3中类型节点之间的交互如下:
[0049] 为了防止管理中心的腐败,签名者节点和超级账户节点通常为不同中心所拥有,签名者节点对应管理中心,超级账户结点对应资金流通中心。超级账户节点支持资金的转入转出功能,而签名者节点不接受资金转入,且只能将资金转出到超级账户节点,创建普通账户的第一笔交易除外。普通节点间资金能够互相流通,但流通金额有单笔最大限制,超过单笔最大限制的资金流通需要申请签名者节点的审核,签名者节点对其流通金额审核通过,则允许两个不同节点之间的此笔资金流通,反之相反。
[0050] 签名者节点集合并不是一成不变的,系统需要及时剔除作恶的签名者节点,以及添加新的签名者节点。签名者节点有一套自我管理的方法,根据这种方法,节点之间互相通信,灵活处理签名者节点集合的变更。
[0051] 根据本发明的一个实施例,如图2所示,本发明的区块链管理系统框架示意图,系统部署时分为中心管理部分和外部客户端,所述超级账户节点和签名者节点部署在中心服务器,由不同中心统一管理,中心服务器包含了资金流通中心、管理中心和数据中心。其中,所述签名者节点部署在中心服务器的数据中心和管理中心;所述超级账户节点部署在中心服务器的资金流通中心;所述普通账户节点部署在外部客户端。所述区块链管理系统还包括系统管理模块,其被配置在监管机构,用于对中心服务器的签名者节点、超级账户节点和外部客户端的普通账户节点进行监管。
[0052] 数据中心负责统管系统的数据记录,部署多个签名者节点,所有签名者节点,依据原生以太坊POA共识算法,轮流打包合法交易数据,形成区块,延长区块链,实现区块链的快速增长;管理中心和数据中心是一体的,都对应签名者节点,即签名者节点的权限管理和交易记录
[0053] 资金流通中心负责系统中的资金流通的来源,多个超级账户节点共同提供货币储备;资金在外部客户端的普通账户之间、中心管理部分的超级账户节点与外部客户端的普通账户之间和中心管理部分的签名者节点与超级账户节点之间以交易的形式进行流通;交易定义了一笔资金从一个节点到另一个节点的数据格式,交易由发起节点产生,并发送给数据中心,由数据中心统一处理。
[0054] 外部客户端即为普通账户节点,负责产生数据,通过交易的方式将资金在系统中流转,是资金流通中的对象;资金以交易的方式流通,数据以交易的形式产生;交易承载了系统中数据以及资金的流通。
[0055] 根据本发明的一个实施例,根据不同节点的权限,对其进行权限赋值,其中,所述签名者节点的权限被配置为0;所述普通账户节点的权限依据其对应合法交易的优先级被配置为1~255间的整数,优先级越高,其权限值越高;所述超级账户节点的权限被配置为210。
[0056] 根据本发明的一个实施例,所述签名者节点负责超级账户节点和普通账户节点的权限管理,包括:用于为普通账户节点和超级账户节点赋权以及冻结非法普通账户节点和非法超级账户节点。具体的,签名者节点以投票的方式为普通账户节点进行赋权,以修改普通签名者节点的权限,其包括将普通账户节点的权限提高或降低或冻结非法普通账户节点,其中签名者节点将非法普通账户节点冻结是将非法普通账户节点的权限赋值为0,使其不可用;签名者节点通过投票赋权交易冻结非法超级账户节点并触发超级账户节点迁移,其中冻结非法超级账户节点是将其该非法超级账户节点权限赋值为0使其不可用。
[0057] 根据本发明的一个示例,如图3所示,一种区块链管理系统,区块链系统网络中的节点分为三个部分,普通账户节点(部署在外部的客户端),签名者节点(部署在数据中心),超级账户节点(部署在资金中心)。其中,基于区块链系统自身机制,所有签名者节点具有执行将交易打包进区块的任务排序,所有签名者节点根据排序轮流执行将交易打包进新区块的任务,数据中心虽然有多个签名者,但同一个区块高度下只有一个区块是有效的,只能由一个签名者打包延长。例如,如图3所示,数据中心包含5个签名者节点,按照执行打包任务的排序分别称为第一签名者节点、第二签名者节点、第三签名者节点、第四签名者节点、第五签名者节点。在第一论将合法交易打包进新区块的过程中,第一个签名者将合法交易打包进区块打包出了区块a;接下来是第二个签名者打包,第二个签名者打包出区块a+1,依此类推,第五个签名者节点打包出区a+4;根据轮流打包机制,下一轮就是时,第一个签名者节点打包出区块a+5、第二个签名者打包出区块a+6,并以此类推,其中每个区块可包含多个合法交易。
[0058] 图3中所有的节点的当前链状态相同,是一个一致的网络状态,数据中心的签名者节点轮流打包新区快a、a+1、……、a+4、……等区块并添加在当前链的尾部的过程,即区块链的增长过程。
[0059] 如图3中所示的交易x、y、z、n、p、m,是普通账户节点和超级账户节点所发出的交易的代表。交易x、y、z、n、p、m表示的是节点间的转账,不是指普通账户节点或超级账户节点与签名者之间的交易,图中的单向箭头表示交易x、y、z、n、p、m通过网络向数据中心传播的的过程。
[0060] 交易x、y、z、n、p、m向数据中心传播,数据中心的签名者节点对所收到的交易x、y、z、n、p、m进行打包,从而延长区块链,每个区块中都可以包含多个交易。数据中心的签名者节点接收到交易后,首先验证交易的合法性,如果符合交易接收规则,则该交易为合法交易,所有的合法交易形成一个交易池。每次形成新区块时,打包该新区块的签名者节点从交易池中根据交易发送者的优先级选择区块所能包含的多个交易形成一个新区块,延长区块链。
[0061] 根据本发明的一个实施例,提供一种区块链管理方法,主要包括以下步骤:
[0062] 步骤1、根据区块链中节点的功能将区块链中的节点划分为不同权限的节点,包括签名者节点、普通账户节点和超级账户节点;
[0063] 步骤2、根据步骤1中的节点划分,为不同权限的节点进行初始化赋权:将签名者节点的权限赋值为0;将普通账户节点的权限根据其交易被打包进区块中的优先级将其权限赋值为1~255之间的整数,值越大,该普通账户节点对应的转账交易被打包到区块中的优先级越高;将超级账户节点的权限赋值为210;
[0064] 步骤3、签名者节点、普通账户节点和超级账户节点各自根据其权限负责区块链中其各自对应的业务;其中,所述签名者节点负责将区块链中的交易打包进新区块并负责超级账户节点和普通账户节点的权限管理;所述普通账户节点负责账户之间的交易转账;所述超级账户节点负责为区块链中的资金流通提供货币储备。
[0065] 其中,区块链中的资金在普通账户节点之间、超级账户节点之间、普通账户节点与超级账户节点之间以交易的形式进行流通;所述签名者节点不接受资金转入,且只能将资金转出到超级账户节点并将来自于普通账户和超级账户的合法交易打包进新区块。
[0066] 优选的,通过签名者节点对区块链中的普通账户节点进行赋权管理,以冻结非法账户节点和/或基于普通账户节点的申请为其进行权限更改,包括;
[0067] P1、所有签名者节点确定是否为待赋权普通账户节点进行赋权投票;
[0068] P2、所有决定为待赋权普通账户节点进行赋权投票的签名者节点分别针对对该普通账户节点发起赋权交易,并进行投票签名;
[0069] P3、统计该普通账户节点获得的所有合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的普通账户节点的权限修改为投票给定的权限。
[0070] 优选的,通过签名者节点对区块链中的超级账户节点进行赋权管理,以冻结非法超级账户节点并触发超级账户节点迁移,包括:
[0071] C1、所有签名者节点确定是否为待迁移超级账户节点进行迁移投票;
[0072] C2、所有决定为待迁移超级账户节点进行投票迁移的签名者节点分别对该待迁移超级账户节点发起迁移赋权交易并进行投票签名;
[0073] C3、统计该待迁移超级账户节点获得的合法签名者节点的投票签名信息,将获得投票签名信息的总数超过当前所有合法签名者节点总数1/2的超级账户节点的迁移标识设置为真;
[0074] C4、将步骤C3中迁移标识为真的超级账户节点迁移到投票给定的目标地址。
[0075] 优选的,通过签名者节点对区块链中涉及的交易金额大于区块链系统给定金额阈值的大额交易进行验证,将获得任意一个合法签名者节点的验证签名信息的大额交易进入交易池,将未获得合法签名者节点的验证签名信息的大额交易丢弃。
[0076] 优选的,对签名者节点采用自我管理方式,
[0077] 基于预设的时间周期,通过其他所有合法签名者节点投票的方式,将获得的投票信息总数超过所有合法签名者节点总数一半的节点按照投票给定的权限被剔除或被赋权为新的签名者节点以实现签名者节点的更新,并基于更新后的合法签名者节点更新其对其他节点的赋权投票信息。
[0078] 根据本发明的一个实施例,基于本发明的区块链管理方法的机制,将签名者节点和超级账户节点部署在中心服务器,其中,将签名者节点部署在中心服务器的数据中心和管理中心;将超级账户节点部署在中心服务器的资金流通中心;将普通账户节点部署在外部客户端。
[0079] 所述签名者节点、普通账户节点、超级账户节点由监管机构监管;所述签名者节点、超级账户节点、普通账户节点的权限以及节点间涉及的大额交易的金额阈值由系统初始化进行自动指定
[0080] 具体的,基于上述实施例,区块链节点权限划分可总结如下:
[0081] 权限为0,是签名者节点;权限0~255,普通账户节点;权限大于255,超级账户节点,具体签名者权限如下表1所示:
[0082] 表1
[0083] 节点类型 权限取值范围 0 255 2^10签名者节点 只有0 签名者合法可用 □ □
超级账户节点 0和2^10两个值 超级账户被冻结 □ 超级账户合法可用
普通账户节点 0~255之间的整数 普通账户被冻结 可用 □
[0084] 由表1可知,普通账户节点合法可用的权限取值区间为1~255之间的整数,大于255的权限值不可取,权限值越大,对应普通账户发出的转账交易被打包到区块中的优先级越高,即越容易被优先打包到区块中。超级账户节点合法可用的权限取值为210,被赋值为0时,其处于冻结不可用状态。
[0085] 由上述描述可知,本发明的区块链管理方法主要涉及四个部分的管理:普通账户赋权管理、超级账户迁移管理、大额交易验证管理、签名者节点自我管理。
[0086] 其中普通账户赋权,超级账户迁移都是通过签名者发出的赋权交易进行赋权,所有流程都可认定为系统指定的赋权交易。所谓大额交易是指普通账户和超级账户节点账户发出的交易金额大于系统给定金额阈值的交易,对大额交易的处理,本发明方法增加大额交易验证流程,对于金额小于系统给定金额的交易无需验证,签名者节点自我管理例如复用以太坊原生POA共识算法。
[0087] 优选的,超级账户节点、签名者节点的权限值以及大额交易的金额阈值会在系统初始化时指定,所有超级账户节点的权限皆初始化为2^10,余额无限大;签名者节点权限初始化为0;金额阈值系统自动指定。此后,普通账户节点可以申请权限更改,触发签名者节点对普通账户节点的赋权流程;现实中的监管机构可以监管签名者节点、超级账户节点和普通账户节点的行为,一旦发现普通账户节点或超级账户节点有不合法行为,可以通过签名者节点将普通账户节点的权限赋值为0,从而冻结普通账户节点或超级账户节点,且对于不合法超级账户节点,触发超级账户迁移流程,冻结普通账户流程复用普通账户赋权流程;如果发现有不合法签名者出现,可以通过其他签名者对不合法签名者投票剔除,运行签名者节点的自我管理流程。
[0088] 下面将结合附图以及实施例对本发明进行详细说明这几个部分:
[0089] 区块链系统指定的赋权交易及每部分之间的关系可以描述如下:
[0090] 区块链中节点的通用数据结构主要包括以下几个部分:
[0091] Nonce:记录本账户已经发起了多少个交易;
[0092] Balabce:记录账户的余额;
[0093] Authority:账户权限。
[0094] 区块链系统为每个账户对应节点的数据结构设置Authority字段,用于存储节点的权限,以便区分该节点的类型,类型包括签名者节点、普通账户节点、超级账户节点。
[0095] 区块链系统为所有普通账户添加AuthorityVotes字段,每个普通账户节点的AuthorityVotes字段用于存储各个签名者节点对其所投票权限的投票签名信息,一个AuthorityVote对应一个签名者节点的赋权交易投票签名信息。其中,AuthorityVote的数据结构主要包括以下几个部分:
[0096] Signer:投票的签名者节点;
[0097] Txhash:签名者节点所发授权交易的哈希;
[0098] Tx-blocknumber:签名者节点所发授权交易所在的区块号;
[0099] Authority:签名者节点当前投票中对当前账户所投的权限。
[0100] 区块链系统为所有超级账户添加TransferAccountVotes字段,每个超级账户节点的TransferAccountVotes字段用于存储各个签名者节点对其迁移赋权交易的投票签名信息,一个TransferAccountVote对应一个签名者节点对超级账户节点的迁移赋权投票签名信息。其中,TransferAccountVote的数据结构主要包括以下几个部分:
[0101] Signer:投票的签名者节点;
[0102] Txhash:签名者节点所发授权交易的哈希;
[0103] Tx-blocknumber:签名者节点所发授权交易所在的区块号;
[0104] TransferAccount:签名者节点当前投票中,对当前超级账户所投的将要迁移到的超级账户的地址。
[0105] 当普通账户的权限Authority被签名者节点设置为0时,普通账户则被冻结。
[0106] 当超级账户的权限Authority被签名者节点设置为0时,超级账户则被冻结。
[0107] 图4示意性示出了根据本发明实施例的区块链节点管理方法中为普通账户节点进行赋权的流程示意图;如图4所示的普通账户赋权流程即签名者节点为普通账户节点赋权的流程,包括如下步骤:
[0108] S10:开始赋权;所有决定为待赋权普通账户节点进行赋权投票的签名者节点分别针对该待赋权普通账户节点发起赋权交易,交易中包含了投票对应的权限;
[0109] S11:签名者节点检查待被赋权的普通账户节点的AuthorityVotes中存储的投票签名信息,移除其他非合法签名者节点对该待被赋权的普通账户的投票签名信息,只保留当前系统中有效的、合法的签名者投票签名信息;
[0110] S12:每一个签名者节点判断待被赋权的普通账户节点的AuthorityVotes中是否已经存有本签名者节点对该待被赋权的普通账户节点的历史投票签名信息,如果有则进入S121,如果没有则进入S122;
[0111] S121:当前签名者节点对AuthorityVotes中存储的本签名者节点对待被赋权的普通账户节点的历史投票签名信息进行替换,替换为其当前发起的赋权交易对应的投票签名信息;
[0112] S122:在AuthorityVotes中插入当前授权交易的投票信息即当前签名者节点将其对待被赋权账户的当前投票签名信息插入该待被赋权账户的AuthorityVotes中,进行存储;
[0113] S13:当前签名者节点判断其对该待被赋权普通账户节点的赋权交易所对应的权限获得的投票签名信息总数是否小于所有合法签名者节点总数的1/3,若是,则进入步骤S131,若不是,则进入步骤14;
[0114] S131、判断当前签名者节点对该待被赋权的普通账户节点的赋权交易是否在其所在区块的10000块以外,若是,则在待被赋权的普通账户节点的AuthorityVotes中删除该交易对应的投票签名信息;需要说明的是,基于区块链采用的以太坊共识算法的官方规定,30000个区块为一段,因此,每30000个区块后签名者节点自我调整重新开始,因此,对应1/3的签名者节点,选择10000个区块的调整区段,以保证签名者节点投票的时效性和安全性;
[0115] S132:刷新待被赋权的普通账户节点的AuthorityVotes中存储的投票签名信息,对于在AuthorityVotes中没有投票签名信息的权限不进行记录;
[0116] S14:遍历待被赋权的普通账户节点的AuthorityVotes中不同权限获得的签名者节点投票签名信息,判断是否有某一权限Authority获得的合法签名者节点的投票签名信息总数超过所有合法签名者节点总数的一半,若是,则进入步骤S141,若否,则进入S15:
[0117] S141、将待被赋权的普通账户节点的Authority字段赋值为赋权投票结果给定的权限;既某一权限获得的合法签名者节点的投票签名信息总数超过给定的阈值,此处给定的阈值为所有合法签名者节点总数的一半,则将待被赋权的普通账户节点的Authority字段赋值为该权限;需要说明的时,基于区块链的POW算法研究,当一个机构控制超过了全网50%的算力(节点),才有可能攻击成功,那么,半数以上的签名者同意一个投票结果才能保证没有任何一个机构可以控制超过全网络50%的算力,因此将阈值设定为所有合法签名者节点总数的一半既50%,作为安全系数,只有达到安全系数以上的投票结果才有效;
[0118] S142、将待被赋权的普通账户节点的权限修改后,删除其修改后的权限对应的所有投票签名信息;
[0119] S15:结束流程。
[0120] 图5示意性示出了根据本发明实施例的区块链节点管理方法中为超级账户节点的迁移进行赋权的流程示意图;如图5所示的为超级账户节点的迁移进行赋权的流程包括如下步骤:
[0121] S20:开始赋权;所有决定为待迁移超级账户节点进行迁移赋权投票的签名者节点分别针对该待迁移超级账户节点发起赋权交易,交易中包含了投票对应的目标地址;
[0122] S21:签名者节点检查待迁移超级账户节点的TransferAccountVotes中存储的投票签名信息,移除其他非合法签名者节点对待被赋权的超级账户的投票签名信息,只保留当前系统中有效的、合法的签名者投票签名信息;
[0123] S22:每一个签名者节点判断TransferAccountVotes中是否存在其对当前待被赋权的超账户迁移交易的投票记录,即签名者节点判断待被赋权的超级账户节点的TransferAccountVotes中是否已经存有本签名者节点对该超级账户节点的历史投票签名信息,如果有则进入S221,如果没有则进入S222;
[0124] S221、当前签名者节点对TransferAccountVotes中存储的本签名者节点对待被赋权的超级账户节点的历史投票签名信息进行替换,替换为其当前发起的赋权交易对应的投票签名信息;
[0125] S222:在TransferAccountVotes中插入当前授权交易的投票信息即签名者节点将其对待被赋权的超级账户节点的当前迁移授权投票签名信息插入TransferAccountVotes中进行存储;
[0126] S23:当前签名者节点判断其对该待迁移的超级账户节点的赋权交易所对应的目标地址获得的投票签名信息总数是否小于所有合法签名者节点总数的1/3,若是,则进入步骤S231,若不是,则进入步骤S24;
[0127] S231、判断当前签名者节点对该待迁移的超级账户节点的赋权交易是否在其所在区块的10000块以外,若是,则在待被赋权的超级账户节点的TransferAccountVotes中删除该交易对应的投票签名信息;
[0128] S232:刷新待被赋权的普通账户节点的TransferAccountVotes中存储的投票签名信息,对于在TransferAccountVotes中没有投票签名信息的目标地址不进行记录;
[0129] S24:遍历待迁移的超级账户节点TransferAccountVotes中不同目标地址获得的签名者节点投票签名信息,查看是否有某一目标地址获得的合法签名者节点的投票签名信息总数超过所有合法签名者节点总数的一半,若是,则进入步骤S241,若否,则进入步骤S25;
[0130] S241:将待迁移的超级账户节点的返回的迁移标志变量赋值为真(true)即某一目标地址获得的合法签名者节点的投票签名信息总数超过所有合法签名者节点总数的一般时,将当前被投票的超级账户节点的能否迁移的标志信息设置为真,其默认值为否;
[0131] S242:将待迁移的超级账户节点的TransferAccountVotes中
[0132] S242:在待迁移的超级账户节点的TransferAccountVotes中删除获得合法签名者节点的投票签名信息总数超过所有合法签名者节点总数一半的目标地址对应的所有投票签名信息;S25:返回能否执行账户迁移操作的标志变量,即签名者返回当前被投票超级账户是否能够进行迁移的信息;若能够执行超级账户迁移则返回赋值变量为真true,否则返回否;
[0133] S26:结束。
[0134] 图6示意性示出了根据本发明实施例的区块链节点管理方法中大额交易验证流程示意图;对于交易资金流通金额大于单笔资金流通最大限制(一般大额交易的金额阈值由系统自动指定)的交易成为大额交易,这样的单笔大额资金流通需要审核验证,如图6所示,根据本发明的大额交易验证流程示意图包括如下步骤:
[0135] S30:客户端发送交易,通常包括但不限于客户端创建交易、设置流通金额,将交易广播到部署的区块链网络中;
[0136] S31:区块链网络中的其他节点接收交易,并执行初步的交易验证;
[0137] S32:节点判断当前接收到的交易是否为大额交易,如果不是则进入S322,如果是则进入S321;
[0138] S321:节点判断自己是否为签名者节点(Signer),如果不是则进入S3211,如果是则进入S3212;
[0139] S3211:判断当前大额交易是否收到其他签名者节点(Signer)的投票签名,若是,则进入S322,若不是则丢弃交易,进入S33;
[0140] S3212:判断当前大额交易是否已经被其他Signer签名,即签名者节点判断当前大额交易是否已经收到其他签名者节点的签名,若已经收到其他签名者节点的签名则使当前签名者Signer的钱包界面触发对特定大额交易执行签名者signer的签名确认,然后进入S322;若没有收到其他签名者的签名,则将当前大额交易进入待签名者确认交易池等待本节点签名,等到当前节点签名时使当前签名者Signer的钱包界面触发对特定大额交易执行签名者signer的签名确认,然后进入S322;
[0141] S322:交易进入待打包交易池,即,将当前交易加入本节点的待打包交易池,以便节点打包进区块;
[0142] S33:结束。
[0143] 基于前述实施例所述方案可知,普通账户赋权,超级账户迁移都是通过签名者发出的赋权交易进行赋权,所有流程都可认定为系统指定的赋权交易。所谓大额交易是指普通账户和超级账户节点账户发出的交易金额大于系统给定金额阈值的交易,对大额交易的处理,本发明方法增加大额交易验证流程,对于金额小于系统给定金额的交易无需验证,签名者节点自我管理例如复用以太坊原生POA共识算法。无论是普通账户赋权对应的赋权交易、还是超级账户迁移对应的赋权交易以及大额交易验证,都是由签名者节点发起赋权交易实现的,下面结合一个具体的示例来详细说明签名者节点发起赋权交易的过程。
[0144] 根据本发明的一个示例,假定区块链从第一个块开始,普通账户节点p的AuthorityVotes字段现在是空的,该普通账户节点对应的投票签名信息如表1所示。签名者集合为「A,B,C,D,E,F,H」7个,且都是合法的,假定以下投票赋权交易的操作均发生在签名者不变的情况下。
[0145] 表1
[0146]
[0147] 签名者A在区块链的第222块为普通账户节点p投票,权限为6,普通账户节点p对应的投票签名信息如表2所示:
[0148] 表2
[0149]
[0150]
[0151] 签名者E在区块链的第444块为普通账户节点p投票,权限为255,普通账户节点p对应的投票签名信息如表3所示:
[0152] 表3
[0153]
[0154] 签名者F在区块链的第666块为普通账户节点p投票,普通账户节点p投票,权限为5,普通账户节点p对应的投票签名信息如表4所示:
[0155] 表4
[0156]
[0157] 签名者D在区块链的第888块为普通账户节点p投票,普通账户节点p投票,权限为3,普通账户节点p对应的投票签名信息如表5所示:
[0158] 表5
[0159]
[0160] 签名者A在区块链的第889块为普通账户节点p投票权限为5,普通账户节点p对应的投票签名信息如表6所示,签名者A在第222块的投票被覆盖:
[0161] 表6
[0162]
[0163] 签名者B在区块链的第890块为普通账户节点p投票权限为1,普通账户节点p对应的投票签名信息如表7所示:
[0164] 表7
[0165]
[0166]
[0167] 签名者C在区块链的第891块为普通账户节点p投票权限为1,普通账户节点p对应的投票签名信息如表8所示:
[0168] 表8
[0169]
[0170] 签名者H在区块链的第892块为普通账户节点p投票权限为1,普通账户节点p对应的投票签名信息如表9所示:
[0171] 表9
[0172]
[0173]
[0174] 签名者没有发起新的投票赋权交易前,普通账户节点p对应的权限1获得的投票签名总数4超过所有合法签名者节点总数的一半,将该普通账户节点的权限赋值为1,既账户p的Authority字段被设置为1,并删除权限1对应的所有投票签名信息,触发后,AuthorityVotes中记录的投票签名信息如表10所示:
[0175] 表10
[0176]
[0177] 需要说明的是,此时,针对该普通账户节点的赋权流程并没有结束,这个过程不是有始有终的,而是在区块链延长的同时不断发生。
[0178] 例如,当区块链增长到10444块时,要对10000块以前的某一权限获得的合法签名者节点总数低于所有合法签名者节点总数的1/3的投票签名信息,由前述说明可知,当区块链增长到10444块时,要删除签名者节点3的投票签名信息,因为其是在第444块投的,且其投票对应权限255所获取的投票信息总数并没有超过3票。触发后,普通账户节点P的AuthorityVotes中记录的投票签名信息如表11所示:
[0179] 表11
[0180]
[0181]
[0182] 同理,以此类推,当区块链增长到10666块是,删除签名者节点F的投票签名信息,区块链增长到10888块时,删除签名者节点D的投票签名信息。
[0183] 需要说明的时,前面所述示例是假定签名者节点不变且其余签名者节点没有在对普通账户节点p进行投票的情况下,如果在区块链从892块增长到10888块的过程中,有其他合法签名者节点对该普通账户节点进行投票,则要根据投票结果进行权限更改。
[0184] 实际运行中,签名者节点是不断变化的,签名者节点要运行自我管理,例如,在上述示例中:
[0185] 在区块链的第777块时,新加入一个合法签名者节点G,在区块链的第890块时,签名者节点B投了一票为权限1,签名者节点G也投了一票为权限1,则普通账户节点P的AuthorityVotes中记录的投票签名信息如表12所示:
[0186] 表12
[0187]
[0188]
[0189] 在区块链的第891块时,经签名者节点的自我管理鉴定,签名者A被认定为非法签名者节点且被其他合法签名者节点投出签名者集合,同时,签名者节点C投了一票为权限1,则普通账户节点P的AuthorityVotes中记录的投票签名信息如表13所示:
[0190] 表13
[0191]
[0192] 在区块链的第892块时,签名者节点H投了一票为权限1,则普通账户节点P的AuthorityVotes中记录的投票签名信息如表14所示:‘
[0193] 表14
[0194]
[0195] 对超级账户迁移的赋权投票与普通账户赋权投票的流程基本一致,的区别仅在于投票内容从权限变成了地址,流程如上述示例。
[0196] 本发明为不同功能的区块链节点赋予不同的权限,根据区块链节点权限大小做出不同的准入控制,对于不同权限的节点分别赋予不同的功能,使得区块链能够以更高的安全性、更好的可监管性以及更高的性能对来自不同权限的区块链节点交易信息达成共识。
[0197] 需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
[0198] 本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0199] 计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
[0200] 以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈