CN112241553B - 一种基于多账本架构的区块链隐私保护方法及系统 - Google Patents

一种基于多账本架构的区块链隐私保护方法及系统 Download PDF

Info

Publication number
CN112241553B
CN112241553B CN202011167615.5A CN202011167615A CN112241553B CN 112241553 B CN112241553 B CN 112241553B CN 202011167615 A CN202011167615 A CN 202011167615A CN 112241553 B CN112241553 B CN 112241553B
Authority
CN
China
Prior art keywords
data
account book
group
node
block
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.)
Active
Application number
CN202011167615.5A
Other languages
English (en)
Other versions
CN112241553A (zh
Inventor
于宗坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Wanxiang Blockchain Research Institute Co ltd
Original Assignee
Shanghai Wanxiang Blockchain Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Wanxiang Blockchain Inc filed Critical Shanghai Wanxiang Blockchain Inc
Priority to CN202011167615.5A priority Critical patent/CN112241553B/zh
Publication of CN112241553A publication Critical patent/CN112241553A/zh
Application granted granted Critical
Publication of CN112241553B publication Critical patent/CN112241553B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种基于多账本架构的区块链隐私保护系统及方法,包括:主从账本架构模块、群组内账本同步模块和群组间账本可控共享模块;所述主从账本构架模块实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;所述群组内账本同步模块实现了群组内部账本一致性维护;所述群组间账本可控共享模块实现了群组间部分账本数据授权给非群组成员访问。本发明通过节点网络管理模块、账本准入模块、账本存储模块,实现了所有节点共用一套身份认证体系,一链多账本技术架构,账本之间通过权限准入实现数据隔离的技术效果。

Description

一种基于多账本架构的区块链隐私保护方法及系统
技术领域
本发明涉及区块链技术领域,具体地,涉及一种基于多帐架构的区块链隐私保护方法及系统,更为具体地,涉及一种基于多账本架构的区块链隐私保护方案。
背景技术
区块链技术是一种去中心化、公开透明的分布式数据存储技术,具有不可伪造、全程留痕、可以追溯、公开透明、集体维护等特征。对于加入区块链网络的节点,可以在全局账本中获得所有数据,这对于区块链的数据安全访问具有很大的安全隐患,因此在传统的区块链环境下,进行存证数据服务,通常只会应用在安全等级要求较低的信息系统中,即存储的数据内容是公开、可访问的。
区块链作为分布式总账技术、智能合约基础平台、分布式新型计算范式,可以有效构建可编程货币、可编程金融及可编程社会,势必将对金融及其他领域带来深远影响。目前,区块链中参与记账主体需要尽可能做到数据上链、业务上链,从而更大程度地发挥区块链“信任机器”的作用。但是,在真实业务场景中,企业数据及业务包含大量机密信息,这些信息据需要妥善的隐藏以保护隐私,同时又需要良好的兼顾其计算、验证和监管的相关需求。
专利文献CN111597585A(申请号:202010455087.7)公开了一种区块链数据的隐私保护方法,应用于区块链的任一节点中,包括:在接收到链上用户发送的针对目标数据的访问请求时,调用智能合约并通过访问请求中携带的账户签名确定出链上用户所属的用户组;按照为链上用户所属的用户组所设定的权限范围,从访问请求所针对的总资源项中过滤出符合权限范围的各项资源;向链上用户输出过滤出的各项资源。
专利文献CN111597586A(申请号:202010456239.5)公开了一种区块链隐私保护方法、系统及装置,接收所建立的包含目标交易的交易格式和隐私要求的隐私模型;根据交易格式和隐私要求,分别生成包含加密API的本地加密SDK、包含交易验证API的验证合约及包含链上交易处理所需算法的算法库,并将验证合约和算法库上链;调用加密API对目标交易的交易明文进行加密,得到密文交易;在密文交易上链后,调用交易验证API对密文交易进行验证,且在验证合法后基于算法库和所定义的业务合约对密文交易进行业务处理,得到业务处理结果。
本发明通过多账本架构的设计、账本数据同步流转过程中的权限控制与节点路由选择、部分账本数据的可控共享,以及数据请求方对状态数据的可信验证机制,解决了在公开透明的区块链系统中部分参与方想要维护内部隐私数据的问题。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于多账本架构的区块链隐私保护系统及方法。
根据本发明提供的一种基于多账本架构的区块链隐私保护系统,包括:主从账本架构模块、群组内账本同步模块和群组间账本可控共享模块;
所述主从账本构架模块实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
所述群组内账本同步模块实现了群组内部账本一致性维护;
所述群组间账本可控共享模块实现了群组间部分账本数据授权给非群组成员访问。
优选地,所述主从账本架构模块包括节点网络管理模块、账本准入模块和账本存储模块;
所述节点网络管理模块维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
所述账本准入模块限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
所述账本存储模块采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享模块实现群组间部分账本数据授权给非群组成员访问。
优选地,所述群组内账本同步模块包括区块同步模块和状态数据同步模块;
所述区块同步模块包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
所述状态数据同步模块受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据。
优选地,所述群组间账本可控共享模块包括数据可控共享模块和数据验证模块;
所述数据可控共享模块实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证模块群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
优选地,所述账本准入模块中账本包括主账本和子账本;主账本拥有节点准入权限管理机制和群组管理机制;所述节点准入权限管理机制通过预设方式控制节点加入主账本;所述群组管理机制是节点通过向主账本的群组管理机制发起申请建立子账本,并将子账本的相关信息注册至主账本的群组管理机制中;所述子账本包括节点管理机制,通过子账本的节点管理机制,决定节点访问及维护子账本的权限。
优选地,所述状态数据同步模块包括通过同步区块体数据,节点在本地通过智能合约虚拟机处理形成状态数据或通过同步对方发送的状态数据直接同步状态数据。
优选地,所述数据可控共享模块包括当满足群组内部预设状态数据访问规则时,节点在配置文件中配置感兴趣的群组内状态数据,在节点启动后发起数据请求,群组内节点针对数据请求确认权限,将状态数据集验证数据发挥给数据请求节点,数据请求节点将获取到的群组内账本状态数据保存在节点私有的状态数据库内。
优选地,所述数据可控共享模块还包括群组外节点直接连接群组内的一个节点,直接产生数据交互或群组外节点不与群组内节点直接连接,通过能够连接至群组内节点的路由节点与群组内节点建立连接,确保路由节点均有目标数据的获取权限,当路由节点保存有目标数据,则直接返回相应数据。
优选地,所述数据验证模块包括基于默克尔树的数据结构,在树的最底层,数据被分成预设数据块,每个数据块有相应的哈希相对应,将相邻的两个哈希合并成一个字符串,计算当前字符串的哈希,逐层进行哈希合并运算得到根哈希;将计算得到的根哈希保存至区块头中,根据保存至区块头中的根哈希及获取得到的目标状态数据,对目标状态数据进行验证。
根据本发明提供的一种基于多账本架构的区块链隐私保护方法,包括:
构建主从账本构架步骤:构建主从账本构架实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
群组内账本同步步骤:群组内账本同步实现了群组内部账本一致性维护;
群组间账本可控共享步骤:群组间账本可控共享实现了群组间部分账本数据授权给非群组成员访问。
优选地,所述构建主从账本架构步骤包括:
节点网络管理步骤维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
账本准入步骤限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
账本存储步骤采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享步骤实现群组间部分账本数据授权给非群组成员访问;
所述群组内账本同步步骤包括:
区块同步步骤包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
状态数据同步步骤受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据;
所述群组间账本可控共享步骤包括:
所述数据可控共享步骤实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证步骤群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
与现有技术相比,本发明具有如下的有益效果:
1、本发明通过节点网络管理模块、账本准入模块、账本存储模块,实现了所有节点共用一套身份认证体系,一链多账本技术架构,账本之间通过权限准入实现数据隔离的技术效果;
2、本发明通过区块同步模块、状态数据同步模块,实现了区块链网络中数据的可控同步,做到区块头数据在全节点之间同步,区块体数据和状态数据在账本内部同步,状态数据提供了两种同步方式,以供用户在同步速度和可信度之间权衡。
3、本发明中数据可控共享模块、数据验证模块,实现了账本之间隐私数据的可控共享,账本内部可以选择将一部分隐私数据开放给账本外的授权节点访问,授权节点获取到目标数据之后也能够验证目标数据的真实性与完整性;
4、本方案可以用在基于区块链网络运行业务,某些参与方想要维护内部隐私数据的场景中,提供了一种简单易理解的方式达到了隐私保护的效果,而且参与方可以选择将隐私数据或者加工后的隐私数据授权给某些外部节点访问,达到隐私数据灵活可控的技术效果。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为基于多账本架构的区块链隐私保护系统模块架构示意图;
图2为:默克尔树结构示意图;
图3为数据验证原理示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
实施例1
根据本发明提供的一种基于多账本架构的区块链隐私保护系统,如图1-3所示,包括:主从账本架构模块、群组内账本同步模块和群组间账本可控共享模块;
所述主从账本构架模块实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
所述群组内账本同步模块实现了群组内部账本一致性维护;
所述群组间账本可控共享模块实现了群组间部分账本数据授权给非群组成员访问。
具体地,所述主从账本架构模块包括节点网络管理模块、账本准入模块和账本存储模块;
所述节点网络管理模块维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
所述账本准入模块限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
所述账本存储模块采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享模块实现群组间部分账本数据授权给非群组成员访问。
具体地,所述群组内账本同步模块包括区块同步模块和状态数据同步模块;
所述区块同步模块包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
所述状态数据同步模块受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据。
具体地,所述群组间账本可控共享模块包括数据可控共享模块和数据验证模块;
所述数据可控共享模块实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证模块群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
具体地,所述账本准入模块中账本包括主账本和子账本;主账本拥有节点准入权限管理机制和群组管理机制;所述节点准入权限管理机制通过预设方式控制节点加入主账本;所述群组管理机制是节点通过向主账本的群组管理机制发起申请建立子账本,并将子账本的相关信息注册至主账本的群组管理机制中;所述子账本包括节点管理机制,通过子账本的节点管理机制,决定节点访问及维护子账本的权限。
具体地,所述状态数据同步模块包括通过同步区块体数据,节点在本地通过智能合约虚拟机处理形成状态数据或通过同步对方发送的状态数据直接同步状态数据。
具体地,所述数据可控共享模块包括当满足群组内部预设状态数据访问规则时,节点在配置文件中配置感兴趣的群组内状态数据,在节点启动后发起数据请求,群组内节点针对数据请求确认权限,将状态数据集验证数据发挥给数据请求节点,数据请求节点将获取到的群组内账本状态数据保存在节点私有的状态数据库内;
所述数据可控共享模块还包括群组外节点直接连接群组内的一个节点,直接产生数据交互或群组外节点不与群组内节点直接连接,通过能够连接至群组内节点的路由节点与群组内节点建立连接,确保路由节点均有目标数据的获取权限,当路由节点保存有目标数据,则直接返回相应数据。
具体地,所述数据验证模块包括基于默克尔树的数据结构,在树的最底层,数据被分成预设数据块,每个数据块有相应的哈希相对应,将相邻的两个哈希合并成一个字符串,计算当前字符串的哈希,逐层进行哈希合并运算得到根哈希;将计算得到的根哈希保存至区块头中,根据保存至区块头中的根哈希及获取得到的目标状态数据,对目标状态数据进行验证。
根据本发明提供的一种基于多账本架构的区块链隐私保护方法,包括:
构建主从账本构架步骤:构建主从账本构架实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
群组内账本同步步骤:群组内账本同步实现了群组内部账本一致性维护;
群组间账本可控共享步骤:群组间账本可控共享实现了群组间部分账本数据授权给非群组成员访问。
具体地,所述构建主从账本架构步骤包括:
节点网络管理步骤维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
账本准入步骤限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
账本存储步骤采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享步骤实现群组间部分账本数据授权给非群组成员访问;
所述群组内账本同步步骤包括:
区块同步步骤包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
状态数据同步步骤受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据;
所述群组间账本可控共享步骤包括:
所述数据可控共享步骤实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证步骤群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
实施例2
实施例2是实施例1的变化例
描述系统框架结构:
一种基于多账本架构的区块链隐私保护方案,包括:主从账本架构设计,群组内账本同步,群组间账本可控共享;
所述主从账本架构设计包括节点网络管理模块、账本准入模块、账本存储模块。
所述群组内账本同步包括区块同步模块、状态数据同步模块。
所述群组间账本可控共享包括数据可控共享模块、数据验证模块。
所述节点网络管理模块用于维护区块链网络中的节点连接,节点之间采用P2P组网的方式建立连接,节点拥有用于在P2P网络和区块链账本中标识自身身份的信息,该信息在多套账本中唯一。
所述节点账本准入模块用于保证账本数据只对群组内节点可见。区块链账本账本由区块数据和状态数据组成,区块数据又分为区块头数据和区块体数据。区块链系统账本分为主账本和子账本,节点必须先加入账本才能正常参与该账本的维护和访问,主账本拥有节点准入权限管理机制和群组管理机制,节点准入管理机制通过黑名单、白名单的方式控制哪些节点可以加入主账本。节点可以通过向群组管理机制发起申请建立一套子账本,并将子账本的相关信息(创世区块、连接方式等)注册至主账本群组管理机制中。子账本也拥有节点管理机制,通过节点管理机制,可以决定哪些节点可以访问及维护子账本。
所述账本存储模块采用数据模块化的方式存储区块链数据,将节点信息、主账本数据、所属子账本数据、非所属子账本区块头数据、非所属子账本状态数据分门别类存储,以支持群组间账本可控共享模块。
所述区块同步模块分为区块头数据同步和区块体数据同步,账本(包括主账本和子账本)区块头数据不受限制地在所有节点间同步,即节点创建或收到区块头后,会将其转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据。区块体数据受限地仅在群组内同步,节点在创建或收到区块体数据后,会将其转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据。
所述状态数据同步模块用于保持账本状态数据在账本群组内同步,状态数据是指区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据,待同步节点对状态数据的同步有两种方式:一种方式是不直接同步状态数据,只同步区块体数据,然后节点在本地通过智能合约虚拟机处理形成状态数据,这种同步方式同步速度较慢,但能保证最终状态数据是准确的;另一种方式是信任对方节点,直接同步对方发送过来的状态数据,这种同步方式速度较快,但无法保证状态数据的准确性和完整性。状态数据受限地仅在群组内部同步,节点在收到状态数据请求时,会判断对方是否为群组内节点,以保证非群组内节点无法获取状态数据。
所述数据可控共享模块用于实现账本间状态数据的可控共享,为群组外节点访问群组内账本提供了一种安全可控的方式。群组内部可以自定义状态数据访问规则,对于每一条状态数据,可以建立白名单开放访问权限给某些节点或者另一个群组。白名单内的节点在配置文件中配置感兴趣的群组内状态数据,在节点启动后发起数据请求,群组内节点针对数据请求确认权限,然后将状态数据及验证数据发回给数据请求节点。数据请求节点将获取到的群组内账本状态数据保存在节点私有的状态数据库内,以供后续使用。
所述数据验证模块用于群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。验证基于一种叫做默克尔树(MerkleTree)的数据结构,在树的最底层,数据被分成很小的数据块,有相应地哈希(Hash)和它对应。把相邻的两个哈希合并成一个字符串,然后运算这个字符串的哈希,这样逐层进行哈希合并运算,到最后就可以生成一个根哈希(TopHash)(见图2)。默克尔树的主要作用是当拿到根哈希的时候,这个哈希值代表了整颗树的信息摘要,当树里面任何一个数据发生了变动,都会使得从当前节点到根节点的哈希值都会发生变化,而其他子树不会有变化。本方案中每个地址对应的状态数据对应默克尔树中的一个叶子节点,而根哈希的值是会存储到区块链的区块头里面去的,区块头是必须经过严格的共识机制验证的。数据同步模块保证了所有节点都能获取到所有账本的完整的区块头,因此当节点获取到目标状态数据及相应验证数据(默克尔树关键路径),即可判断目标信息是否正确(见图3)。
所述数据可控共享模块中,状态数据请求根据网络拓扑不同可分为:
直接获取:群组外节点直连群组内的一个节点,则直接产生数据交互。
间接获取:群组外节点不与群组内节点直接连接,则需通过能够连接至群组内节点的一系列路由节点与之建立连接,需确保路由节点均有目标数据的获取权限,路由节点若保存有目标数据,则可直接返回相应数据。
实施例3
实施例3是实施例2和/或实施例1的变化例
在一个简化过的共享单车租赁网络模型中,有3个业务相关方会参与到区块链网络中:1)单车制造公司A,这个公司提供单车以供租赁使用。2)单车租赁公司B,这个公司为用户提供单车租赁服务。3)终端用户C,这些用户将通过区块链网络租赁单车,并完成结算。
其中众多终端用户C与单车租赁公司B通过区块链网络完成单车租赁业务,这些业务生成了一本区块链账本,详细记录了每一笔用户订单的情况;同时,单车租赁公司B与单车制造公司A也通过区块链网络完成单车的采购下单与交付业务,此业务涉及两家公司之间的商业机密,不应该被终端用户C查看到,因此两家公司建立了另外一本账本记录此隐私业务,而且在此账本中,单车制造公司A必须知道单车租赁业务账本中的一些数据(比如终端用户量,日租赁额)等,以为采购业务提供参考,因此租赁业务账本开放了这些数据的权限给单车制造公司A的节点,这些节点就可以跨账本访问租赁业务的相关数据了。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (6)

1.一种基于多账本架构的区块链隐私保护系统,其特征在于,包括:主从账本架构模块、群组内账本同步模块和群组间账本可控共享模块;
所述主从账本构架模块实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
所述群组内账本同步模块实现了群组内部账本一致性维护;
所述群组间账本可控共享模块实现了群组间部分账本数据授权给非群组成员访问;
所述主从账本架构模块包括节点网络管理模块、账本准入模块和账本存储模块;
所述节点网络管理模块维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
所述账本准入模块限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
所述账本存储模块采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享模块实现群组间部分账本数据授权给非群组成员访问;
所述群组内账本同步模块包括区块同步模块和状态数据同步模块;
所述区块同步模块包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
所述状态数据同步模块受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据;
所述群组间账本可控共享模块包括数据可控共享模块和数据验证模块;
所述数据可控共享模块实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证模块群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
2.根据权利要求1所述的基于多账本架构的区块链隐私保护系统,其特征在于,所述账本准入模块中账本包括主账本和子账本;主账本拥有节点准入权限管理机制和群组管理机制;所述节点准入权限管理机制通过预设方式控制节点加入主账本;所述群组管理机制是节点通过向主账本的群组管理机制发起申请建立子账本,并将子账本的相关信息注册至主账本的群组管理机制中;所述子账本包括节点管理机制,通过子账本的节点管理机制,决定节点访问及维护子账本的权限。
3.根据权利要求1所述的基于多账本架构的区块链隐私保护系统,其特征在于,所述状态数据同步模块包括通过同步区块体数据,节点在本地通过智能合约虚拟机处理形成状态数据或通过同步对方发送的状态数据直接同步状态数据。
4.根据权利要求1所述的基于多账本架构的区块链隐私保护系统,其特征在于,所述数据可控共享模块包括当满足群组内部预设状态数据访问规则时,节点在配置文件中配置感兴趣的群组内状态数据,在节点启动后发起数据请求,群组内节点针对数据请求确认权限,将状态数据集验证数据发挥给数据请求节点,数据请求节点将获取到的群组内账本状态数据保存在节点私有的状态数据库内;
所述数据可控共享模块还包括群组外节点直接连接群组内的一个节点,直接产生数据交互或群组外节点不与群组内节点直接连接,通过能够连接至群组内节点的路由节点与群组内节点建立连接,确保路由节点均有目标数据的获取权限,当路由节点保存有目标数据,则直接返回相应数据。
5.根据权利要求1所述的基于多账本架构的区块链隐私保护系统,其特征在于,所述数据验证模块包括基于默克尔树的数据结构,在树的最底层,数据被分成预设数据块,每个数据块有相应的哈希相对应,将相邻的两个哈希合并成一个字符串,计算当前字符串的哈希,逐层进行哈希合并运算得到根哈希;将计算得到的根哈希保存至区块头中,根据保存至区块头中的根哈希及获取得到的目标状态数据,对目标状态数据进行验证。
6.一种基于多账本架构的区块链隐私保护方法,其特征在于,包括:
构建主从账本构架步骤:构建主从账本构架实现不同群组之间账本数据的隔离,非群组成员无法访问群组账本;
群组内账本同步步骤:群组内账本同步实现了群组内部账本一致性维护;
群组间账本可控共享步骤:群组间账本可控共享实现了群组间部分账本数据授权给非群组成员访问;
所述构建主从账本架构步骤包括:
节点网络管理步骤维护区块链网络中的节点连接,区块链网络中的节点采用P2P组网的方式建立连接,节点拥有在P2P网络和区块链账本中标识自身身份的信息,标识自身身份的信息在多套账本中唯一;
账本准入步骤限制未授权节点对账本内数据进行访问,保证账本数据只对群组内节点可见;
账本存储步骤采用数据模块化的方式存储区块链数据,将包括节点信息、主账本数据、所述子账本数据、非所属子账本区块头数据、非所属子账本状态数据分别进行存储,从而支持群组间账本可控共享步骤实现群组间部分账本数据授权给非群组成员访问;
所述群组内账本同步步骤包括:
区块同步步骤包括区块头数据同步和区块体数据同步;
所述区块头数据同步包括区块头数据不受限制地在所有节点间同步,节点创建或收到区块头数据后,会将区块头数据转发给所有相邻节点,保证所有节点均拥有所有账本的区块头数据;
所述区块体数据同步受限地仅在群组内同步,节点在创建或收到区块体数据后,会将区块体数据转发给相邻节点中属于群组的节点,保证非群组内节点无法获取区块体数据;
状态数据同步步骤受限地仅在群组内部同步,节点在收到状态数据请求时,判断对方是否为群组内节点,保证非群组内节点无法获取状态数据;
所述状态数据是区块体数据经由智能合约虚拟机处理过后形成的,表示当前区块链世界状态的数据,是账本内的核心数据;
所述群组间账本可控共享步骤包括:
所述数据可控共享步骤实现账本将状态数据的可控共享,在群组内部设置预设状态数据访问规则,为群组外节点访问群组内账本提供了一种安全可控的方式;
所述数据验证步骤群组外节点获取到群组内账本状态数据时,验证状态数据的合法性。
CN202011167615.5A 2020-10-27 2020-10-27 一种基于多账本架构的区块链隐私保护方法及系统 Active CN112241553B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011167615.5A CN112241553B (zh) 2020-10-27 2020-10-27 一种基于多账本架构的区块链隐私保护方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011167615.5A CN112241553B (zh) 2020-10-27 2020-10-27 一种基于多账本架构的区块链隐私保护方法及系统

Publications (2)

Publication Number Publication Date
CN112241553A CN112241553A (zh) 2021-01-19
CN112241553B true CN112241553B (zh) 2022-11-04

Family

ID=74170027

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011167615.5A Active CN112241553B (zh) 2020-10-27 2020-10-27 一种基于多账本架构的区块链隐私保护方法及系统

Country Status (1)

Country Link
CN (1) CN112241553B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113051348B (zh) * 2021-03-29 2023-11-10 河南向量智能科技研究院有限公司 一种群组产品协同设计区块链技术数据同步协同方法
CN113065867B (zh) * 2021-03-30 2023-06-30 上海万向区块链股份公司 基于数据重放的非兼容性区块链升级系统、方法及介质
CN113190616B (zh) * 2021-04-16 2023-02-21 宁波市民卡运营管理有限公司 区块链对账系统以及方法、计算机设备、可读存储介质
CN115695440A (zh) * 2022-09-20 2023-02-03 天翼电子商务有限公司 一种基于gossip通信的分布式区块链BaaS系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111480315A (zh) * 2017-12-15 2020-07-31 区块链控股有限公司 使用低熵密码授权区块链交易的计算机实现的系统和方法
CN108462568B (zh) * 2018-02-11 2021-08-06 西安电子科技大学 一种基于区块链的安全文件存储和共享方法、云存储系统
CN108809652B (zh) * 2018-05-21 2021-07-23 安徽航天信息有限公司 一种基于秘密共享的区块链加密账本
CN108876370B (zh) * 2018-06-12 2021-12-17 北京航空航天大学 一种异构多链架构下跨区块链共享开放数据的体系架构
CN109995850B (zh) * 2019-03-05 2022-04-26 深圳前海微众银行股份有限公司 一种区块链系统及区块链系统的交易处理方法
CN110445845B (zh) * 2019-07-17 2021-10-15 苏州同济区块链研究院有限公司 一种分布式账本中基于主子账本的系统

Also Published As

Publication number Publication date
CN112241553A (zh) 2021-01-19

Similar Documents

Publication Publication Date Title
CN112241553B (zh) 一种基于多账本架构的区块链隐私保护方法及系统
Sharma et al. Blockchain technology for cloud storage: A systematic literature review
US9635000B1 (en) Blockchain identity management system based on public identities ledger
CN109314636B (zh) 用于从区块链中安全提取数据的密码方法和系统
Wu et al. VQL: Efficient and verifiable cloud query services for blockchain systems
Bhaskaran et al. Double-blind consent-driven data sharing on blockchain
CN110599147A (zh) 一种基于区块链的密文检索公平支付方法及系统
Al-Maaitah et al. E-voting system based on blockchain technology: A survey
KR20190067581A (ko) 블록체인 트랜잭션 분산 처리 장치 및 방법
KR20180115779A (ko) 디지털 콘텐츠를 제어 및 배포하기 위한 블록체인 구현 방법
CN109741068B (zh) 网银跨行签约方法、装置及系统
Gayvoronskaya et al. Blockchain
CN116250210A (zh) 用于网络化的数据交易的认证和授权的方法、装置和计算机可读介质
Chauhan et al. A systematic review of blockchain technology to find current scalability issues and solutions
Sliwinski et al. Abc: Proof-of-stake without consensus
Liu A hybrid blockchain-based event ticketing system
CN112968772B (zh) 一种区块链数据的跨链解耦方法、系统
Kersic et al. Orchestrating Digital Wallets for On-and Off-Chain Decentralized Identity Management
CN117118640A (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质
Noh et al. PyRos: A State Channel‐Based Access Control System for a Public Blockchain Network
Maldonado-Ruiz et al. Fundamentals of Blockchain Technology
Sarfaraz et al. Towards a scalable permissioned blockchain framework for supply chain management
US20190334704A1 (en) Authenticate transactions of secured file in blockchain
Poupko et al. Self-sovereign digital agents for a grassroots digital society
Heydari et al. A Review of Blockchain

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
TR01 Transfer of patent right

Effective date of registration: 20230522

Address after: Room 101-1601, Building 1, Yuefeng Building, Suzhou High tech Zone, Suzhou City, Jiangsu Province, 215100

Patentee after: Suzhou Wanxiang Blockchain Research Institute Co.,Ltd.

Address before: Room 1201, no.463 Tanggu Road, Hongkou District, Shanghai 200086

Patentee before: SHANGHAI WANXIANG BLOCKCHAIN Inc.

TR01 Transfer of patent right