首页 / 专利库 / 银行与财务事项 / 分布式账本技术 / 一种分布式账本中基于主子账本的系统架构

一种分布式账本中基于主子账本的系统架构

阅读:575发布:2020-05-23

专利汇可以提供一种分布式账本中基于主子账本的系统架构专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种 分布式账本 中基于主子账本的系统架构,系统架构包含一个所有 节点 都参与共识的主账本和若干子账本,每一个子账本都拥有独立的共识机制,每个子账本所产生的区 块 ,其 区块头 信息会以特定的交易类型锚定到主账本网络中,以此增强子账本数据的可信任性和不可篡改性;网络中的任意节点都有能 力 根据自己的业务需求创建一个子账本,并通过P2P网络发送 请求 邀请与其业务相关的其他节点加入;每个节点只存储主账本的数据和本节点所加入的子账本的数据。本发明从物理层面实现了数据的隔离,为业务数据的隐私安全提供了保障;子账本和子账本逻辑独立,互不干涉并行运行于网络中,从而也提高了分布式账本整体的 数据处理 能力。,下面是一种分布式账本中基于主子账本的系统架构专利的具体信息内容。

1.一种分布式账本中基于主子账本的系统架构,其特征在于,一个所有节点都参与共识的主账本和N个子账本并行运行于同一分布式账本中;
一个所有节点都参与共识的主账本,是在网络初始化时自动创建;
N个子账本,是通过系统功能按需创建,每个子账本所产生的区,且以交易类型锚定到主账本网络中,网络中的任意节点都有能根据自己的业务需求创建一个子账本,并通过P2P网络广播至所有节点,且通过共识机制,更新本地的主账本数据,使所有节点的主账本数据一致。
2.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:所述主账本内包括系统全局信息,至少包含,子账本列表、子账本区块头信息、创建者和子账本的映射关系、网络节点与子账本的映射关系和子账本状态信息。
3.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:所述每个节点只存储主账本的数据和本节点所加入的子账本的数据。
4.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:还包括管理工具,基于命令行的客户端工具,主要提供分布式账本管理及查看功能。
5.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:还包含有子账本创建功能,拥有分布式账本管理权限的主体可通过系统管理工具根据业务需求向网络中任意节点Nodeany提交创建子账本请求
6.根据权利要求5所述的一种分布式账本中基于主子账本的系统架构,其特征在于:所述子账本创建包括以下步骤:
步骤1:创建子账本时需指定子账本的唯一命名Name、子账本的业务描述Desc、参与子账本的节点标识集合NodeIDs,以及共识算法Consensus;
步骤2:系统管理工具根据输入参数组装创建子账本的指令command{Name||Desc||NodeIDs||Consensus},并使用基于公钥密码学的私钥Kpri对指令数据完成签名,然后将得到的消息message{command||Kpub||Sign}发送至网络中任意可连接的节点服务器NodeA;
步骤3:节点服务器NodeA收到指令消息时,提取出公钥Kpub,通过账号生成算法F(Kpub)计算得到发起指令请求的客户端账户Accountclient,验证客户端账户Accountclient是否与网络中预先配置的管理员账户Accountadmin一致,不一致则丢弃消息,账号验证通过后,继续用公钥Kpub查验消息签名确保消息没有被篡改;
步骤4:分布式账本通过共识算法和P2P网络广播机制确保指令command在网络中得以正确执行,当网络中的节点执行创建子账本指令时,需先确认本节点是子账本节点集合的子集,然后再初始化账本实例并为其分配计算和存储资源,并以Name为索引保存子账本的详情信息于持久化介质中;
其中管理员账户Accountadmin是在分布式账本初始化时,预先生成密钥对{Kpub,Kpri},通过账号生成算法F(Kpub)计算得到,并配置于网络中所有的节点服务器。
7.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:所述交易类型为交易广播策略,其包括以下步骤:
步骤1:分布式账本接入程序可以通过指定账本名称ledger name向网络中的目标子账本提交交易请求Transaction;
步骤2:节点服务器收到交易请求Transaction后,以账本名称ledger name作为索引,从主账本的后端存储中获取目标账本的节点集合数据Nodessub,再利用P2P网络将交易请求Transaction广播给节点集合Nodessub;
步骤3:其中当没有指定账本名称ledger name的情况,接收交易请求Transaction的节点服务器应默认主账本为目标账本,并向全网广播交易请求Transaction。
8.根据权利要求1所述的一种分布式账本中基于主子账本的系统架构,其特征在于:所述子账本的子账本区块生成,包括以下步骤:
步骤1:子账本作为独立之存在,拥有分布式账本技术生命周期中的所有过程,当创建新区块的条件被触发时,获得创建区块权利的Leader节点应按照预设的优先级顺序及区块约束限制将待处理的交易请求Transaction归集打包生成新区块Blocknew;
步骤2:Leader节点用自己的私钥对新区块Blocknew签名后,根据预设定的共识算法尝试对新区块Blocknew达成共识,确保各参与方拥有的账本数据一致;
步骤3:Leader节点收到足够多的且满足共识算法的正向反馈后,将新区块Blocknew的区块头信息BlockHeadernew以交易的方式锚定到主账本中,增强子账本的不可篡改性和可信任性。

说明书全文

一种分布式账本中基于主子账本的系统架构

技术领域

[0001] 本发明涉及一种分布式账本中基于主子账本的系统架构。

背景技术

[0002] 分布式账本技术产生的算法是一种强大的,具有颠覆性的创新,它有机会变革公共与私营服务的实现方式,并通过广泛的应用场景去提高生产
[0003] 账本从久远的年代开始就是商业活动的核心要素之一,并用于记录很多的事情——最常见的是用于记录像金钱和产权这样的资产。这些数据记录的介质从泥板到纸莎草,再到皮纸和纸张,一直在进化。不过这么久以来,数据的电子计算机化是在这个领域的唯一显著的创新发明,这在一开始是简单地将纸质数据变成电子数据。现在,计算机算法首次让协作维护的数字分布式账本成为可能,这种账本具有超越传统纸质账本的属性和能力。
[0004] 分布式账本,从实质上说就是一个可以在多个站点、不同地理位置或者多个机构组成的网络进行分享的资产数据库。在一个网络里的参与者可以获得一个唯一、真实账本的副本。账本里的任何改动都会在所有的副本中被反映出来,反应时间会在几分钟甚至是几秒内。在这个账本里存储的资产可以是金融、法律定义上的,实体的或是电子的资产。在这个账本里存储的资产的安全性和准确性是通过公私钥及签名的使用去控制账本的访问权,从而实现密码学基础上的维护。根据网络中达成共识的规则,账本中的记录可以由一个、一些或者是所有参与者共同进行更新。
[0005] 链是这种分布式账本的底层技术,它最初是为了2008年实现的点对点数字现今系统比特币而设计的。区块链算法让比特币的交易可以在“区块”里集中起来,并通过密码学签名添加到吸纳有区块组成的“链”里面。比特币账本是用分布式及“无需许可”的方式构建,任何人都可以通过解决生成新区块所需的密码学难题从而添加一个包含交易的区块。现时,这个系统的鼓励机制是在解决难题并生成每个区域后得到25个比特币的奖励。任何人只需有网络和电脑的算例,都有机会解决这些密码学难题并将交易添加到账本里,这些人被称为“比特币矿工”。挖矿的比喻是很恰当的,因此比特币的挖掘是要消耗大量的电脑运算能力的,因此会带来很高的能源消耗。

发明内容

[0006] 为解决上述技术问题,本发明的目的是提供一种分布式账本中基于主子账本的系统架构。
[0007] 为实现上述目的,本发明采用如下技术方案:
[0008] 一种分布式账本中基于主子账本的系统架构,一个所有节点都参与共识的主账本和N个子账本并行运行于同一分布式账本中;
[0009] 一个所有节点都参与共识的主账本,是在网络初始化时自动创建;
[0010] N个子账本,是通过系统功能按需创建,每个子账本所产生的区块,且以交易类型锚定到主账本网络中,网络中的任意节点都有能力根据自己的业务需求创建一个子账本,并通过P2P网络广播至所有节点,且通过共识机制,更新本地的主账本数据,使所有节点的主账本数据一致。
[0011] 优选地,所述主账本内包括系统全局信息,至少包含,子账本列表、子账本区块头信息、创建者和子账本的映射关系、网络节点与子账本的映射关系和子账本状态信息。
[0012] 优选地,所述每个节点只存储主账本的数据和本节点所加入的子账本的数据。
[0013] 优选地,还包括管理工具,基于命令行的客户端工具,主要提供分布式账本管理及查看功能。
[0014] 优选地,还包含有子账本创建功能,拥有分布式账本管理权限的主体可通过系统管理工具根据业务需求向网络中任意节点Nodeany提交创建子账本请求
[0015] 优选地,所述子账本创建包括以下步骤:
[0016] 步骤1:创建子账本时需指定子账本的唯一命名Name、子账本的业务描述Desc、参与子账本的节点标识集合NodeIDs,以及共识算法Consensus;
[0017] 步骤2:系统管理工具根据输入参数组装创建子账本的指令command{Name||Desc||NodeIDs||Consensus},并使用基于公钥密码学的私钥Kpri对指令数据完成签名,然后将得到的消息message{command||Kpub||Sign}发送至网络中任意可连接的节点服务器NodeA;
[0018] 步骤3:节点服务器NodeA收到指令消息时,提取出公钥Kpub,通过账号生成算法F(Kpub)计算得到发起指令请求的客户端账户Accountclient,验证客户端账户Accountclient是否与网络中预先配置的管理员账户Accountadmin一致,不一致则丢弃消息,账号验证通过后,继续用公钥Kpub查验消息签名确保消息没有被篡改;
[0019] 步骤4:分布式账本通过共识算法和P2P网络广播机制确保指令command在网络中得以正确执行,当网络中的节点执行创建子账本指令时,需先确认本节点是子账本节点集合的子集,然后再初始化账本实例并为其分配计算和存储资源,并以Name为索引保存子账本的详情信息于持久化介质中;
[0020] 其中管理员账户Accountadmin是在分布式账本初始化时,预先生成密钥对{Kpub,Kpri},通过账号生成算法F(Kpub)计算得到,并配置于网络中所有的节点服务器。
[0021] 优选地,所述交易类型为交易广播策略,其包括以下步骤:
[0022] 步骤1:分布式账本接入程序可以通过指定账本名称ledger name向网络中的目标子账本提交交易请求Transaction;
[0023] 步骤2:节点服务器收到交易请求Transaction后,以账本名称ledger name作为索引,从主账本的后端存储中获取目标账本的节点集合数据Nodessub,再利用P2P网络将交易请求Transaction广播给节点集合Nodessub;
[0024] 步骤3:其中当没有指定账本名称ledger name的情况,接收交易请求Transaction的节点服务器应默认主账本为目标账本,并向全网广播交易请求Transaction。
[0025] 优选地,所述子账本的子账本区块生成,包括以下步骤:
[0026] 步骤1:子账本作为独立之存在,拥有分布式账本技术生命周期中的所有过程,当创建新区块的条件被触发时,获得创建区块权利的Leader节点应按照预设的优先级顺序及区块约束限制将待处理的交易请求Transaction归集打包生成新区块Blocknew;
[0027] 步骤2:Leader节点用自己的私钥对新区块Blocknew签名后,根据预设定的共识算法尝试对新区块Blocknew达成共识,确保各参与方拥有的账本数据一致;
[0028] 步骤3:Leader节点收到足够多的且满足共识算法的正向反馈后,将新区块Blocknew的区块头信息BlockHeadernew以交易的方式锚定到主账本中,增强子账本的不可篡改性和可信任性。
[0029] 借由上述方案,本发明至少具有以下优点:
[0030] 本发明中系统架构从物理层面实现了数据的隔离,为业务数据的隐私安全提供了保障;子账本和子账本逻辑独立,互不干涉并行运行于网络中,从而也提高了分布式账本整体的数据处理能力。
[0031] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。

附图说明

[0032] 为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0033] 图1是本发明的结构示意图。

具体实施方式

[0034] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0035] 为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036] 实施例
[0037] 如图1所示,一种分布式账本中基于主子账本的系统架构,一个所有节点都参与共识的主账本和N个子账本并行运行于同一分布式账本中;
[0038] 一个所有节点都参与共识的主账本,是在网络初始化时自动创建;
[0039] N个子账本,是通过系统功能按需创建,每个子账本所产生的区块,且以交易类型锚定到主账本网络中,网络中的任意节点都有能力根据自己的业务需求创建一个子账本,并通过P2P网络广播至所有节点,且通过共识机制,更新本地的主账本数据,使所有节点的主账本数据一致。
[0040] 本发明中所述主账本内包括系统全局信息,至少包含,子账本列表、子账本区块头信息、创建者和子账本的映射关系、网络节点与子账本的映射关系和子账本状态信息。
[0041] 本发明中所述每个节点只存储主账本的数据和本节点所加入的子账本的数据。
[0042] 本发明中还包括管理工具,基于命令行的客户端工具,主要提供分布式账本管理及查看功能。
[0043] 本发明中还包含有子账本创建功能,拥有分布式账本管理权限的主体可通过系统管理工具根据业务需求向网络中任意节点Nodeany提交创建子账本请求;
[0044] 本发明中所述子账本创建包括以下步骤:
[0045] 步骤1:创建子账本时需指定子账本的唯一命名Name、子账本的业务描述Desc、参与子账本的节点标识集合NodeIDs,以及共识算法Consensus;
[0046] 步骤2:系统管理工具根据输入参数组装创建子账本的指令command{Name||Desc||NodeIDs||Consensus},并使用基于公钥密码学的私钥Kpri对指令数据完成签名,然后将得到的消息message{command||Kpub||Sign}发送至网络中任意可连接的节点服务器NodeA;
[0047] 步骤3:节点服务器NodeA收到指令消息时,提取出公钥Kpub,通过账号生成算法F(Kpub)计算得到发起指令请求的客户端账户Accountclient,验证客户端账户Accountclient是否与网络中预先配置的管理员账户Accountadmin一致,不一致则丢弃消息,账号验证通过后,继续用公钥Kpub查验消息签名确保消息没有被篡改;
[0048] 步骤4:分布式账本通过共识算法和P2P网络广播机制确保指令command在网络中得以正确执行,当网络中的节点执行创建子账本指令时,需先确认本节点是子账本节点集合的子集,然后再初始化账本实例并为其分配计算和存储资源,并以Name为索引保存子账本的详情信息于持久化介质中;
[0049] 其中管理员账户Accountadmin是在分布式账本初始化时,预先生成密钥对{Kpub,Kpri},通过账号生成算法F(Kpub)计算得到,并配置于网络中所有的节点服务器。
[0050] 其中,F(Kpub)算法步骤:
[0051] 1、利用散列函数H1压缩公钥Kpub得到的公钥指纹值D;
[0052] 2、指定16位长度的版本前缀标识V,并通过V+D操作合并得到Msg;
[0053] 3、再利用256位散列函数H2压缩Msg得到指纹值,去前32位得到校验和Sum;
[0054] 4、合并版本前缀标识V,公钥指纹值D以及校验和Sum得到值S1;
[0055] 5、用编码算法Base58计算S1的编码值,得到最终的账号值Account。
[0056] 本发明中所述交易类型为交易广播策略,其包括以下步骤:
[0057] 步骤1:分布式账本接入程序可以通过指定账本名称ledger name向网络中的目标子账本提交交易请求Transaction;
[0058] 步骤2:节点服务器收到交易请求Transaction后,以账本名称ledger name作为索引,从主账本的后端存储中获取目标账本的节点集合数据Nodessub,再利用P2P网络将交易请求Transaction广播给节点集合Nodessub;
[0059] 步骤3:其中当没有指定账本名称ledger name的情况,接收交易请求Transaction的节点服务器应默认主账本为目标账本,并向全网广播交易请求Transaction。
[0060] 本发明中所述子账本的子账本区块生成,包括以下步骤:
[0061] 步骤1:子账本作为独立之存在,拥有分布式账本技术生命周期中的所有过程,当创建新区块的条件被触发时,获得创建区块权利的Leader节点应按照预设的优先级顺序及区块约束限制将待处理的交易请求Transaction归集打包生成新区块Blocknew;
[0062] 步骤2:Leader节点用自己的私钥对新区块Blocknew签名后,根据预设定的共识算法尝试对新区块Blocknew达成共识,确保各参与方拥有的账本数据一致;
[0063] 步骤3:Leader节点收到足够多的且满足共识算法的正向反馈后,将新区块Blocknew的区块头信息BlockHeadernew以交易的方式锚定到主账本中,增强子账本的不可篡改性和可信任性。
[0064] 以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈