CN111522831B - 一种联盟链账本平台的数据记录方法及系统 - Google Patents

一种联盟链账本平台的数据记录方法及系统 Download PDF

Info

Publication number
CN111522831B
CN111522831B CN202010359495.2A CN202010359495A CN111522831B CN 111522831 B CN111522831 B CN 111522831B CN 202010359495 A CN202010359495 A CN 202010359495A CN 111522831 B CN111522831 B CN 111522831B
Authority
CN
China
Prior art keywords
data
transaction
chain
information
platform
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
CN202010359495.2A
Other languages
English (en)
Other versions
CN111522831A (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.)
Sinosoft Co ltd
Original Assignee
Sinosoft Co ltd
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 Sinosoft Co ltd filed Critical Sinosoft Co ltd
Priority to CN202010359495.2A priority Critical patent/CN111522831B/zh
Publication of CN111522831A publication Critical patent/CN111522831A/zh
Application granted granted Critical
Publication of CN111522831B publication Critical patent/CN111522831B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种联盟链账本平台的数据记录方法及系统,包括:创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;设置联盟链账本平台的节点的管理权限;基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离。本发明可以确保撤销记录可追溯的同时又不影响正常交易打包上链的操作,使联盟链账本平台在更大的范围内得到推广,可支撑中心化机构的去中心化业务场景及管理场景实现,为联盟链账本平台的多领域应用实现提供便利。

Description

一种联盟链账本平台的数据记录方法及系统
技术领域
本发明涉及区块链技术领域,具体涉及一种联盟链账本平台的数据记录方法及系统。
背景技术
联盟链平台需要做到记录可信,它包括来源可信和交易可信。其中,来源可信是联盟链平台目前亟须解决的问题。因此,联盟链需要明确账本平台各节点的管理权限,明确数据来源,对数据进行审核等,以实现跨链集成。
此外,在具体应用工程实现中,联盟链账本平台还需实现对撤销记录和数据的可追溯、可恢复;并且需要在异常紊乱情况下快速恢复数据;以及实现不同环境下相关数据之间的隔离和污染抵抗性。
然而,现有技术中缺少对联盟链账本平台的数据记录结构研究,并且不同链之间数据转储实现的维度单一,无法有效支撑应用扩展。
此外,现有技术也没有解决基于联盟链的系统测试数据和生产数据互相污染与影响的问题、撤销数据可追溯问题,也没有提出联盟链一旦发生紊乱,该如何高效恢复数据的办法。
发明内容
本发明实施例提供一种联盟链账本平台的数据记录方法及系统,以解决现有技术的至少一个技术问题。
第一方面,本发明实施例提供一种联盟链账本平台的数据记录方法,该数据记录方法包括以下步骤:
S100:创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;
S200:设置联盟链账本平台的节点的管理权限;
S300:基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离。
进一步的,该数据记录方法还包括以下步骤:
S400:根据所述记录信息对所述联盟链账本平台的数据进行转储。
进一步的,所述步骤S100包括以下子步骤:
S110:将所述正向数据记录结构配置为包括正向链,将所述反向数据记录结构配置为包括反向链;
S120:将该创始区块的高度设置为0,所述正向链和反向链均以创始区块为起点;其中,所述正向链上包括多个区块且各个区块的高度沿正向链依次增加;
所述反向链包括多个撤销交易信息,每个撤销交易信息包括该交易信息撤销前所在的原区块信息,且各个撤销交易的新高度沿反向链依次减小;
S130:将创始区块的字段划分为核算方向和初始额,所述核算方向为交易标量信息的归集方向。
进一步的,所述撤销交易信息的字段包括撤销交易的组成信息、撤销交易所在原区块的组成信息和撤销交易的新高度;
其中,所述撤销交易的新高度为撤销交易在反向链上的位置,该位置是按照交易顺序在反向链上排序得到的。
进一步的,联盟链账本平台的节点的管理权限包括一般管理权限和超级管理权限;
其中,具有所述超级管理权限的节点用于在联盟链初始化或再启动时,对数据进行删除或撤销;
具有所述一般管理权限的节点用于在联盟链账本平台正常运行情况下,对交易、区块、数据记录及分发的流程和操作进行管理;
具有所述一般管理权限的节点还用于当发生奇点交易时,根据所述奇点交易的标量信息对联盟链的交易数据进行审核。
进一步的,所述步骤S300包括以下子步骤:
S310:当拥有所述一般管理权限的节点在正向链位置进行交易打包时接收到交易撤销命令,若此时该交易数据还未上链或未被分发,则将该撤销的交易数据复制到反向链上;
S320:反向链对所述撤销的交易数据进行排序以生成所述记录信息。
进一步的,所述步骤S300包括以下子步骤:
S310':当联盟链账本平台的数据由分发节点向其他节点分发时,若账本平台的各节点的数据不一致,将该不一致的数据与已成功上链的区块交易数据进行去重筛选以获得筛选交易数据,将该筛选交易数据复制到反向链上;
S320':反向链对所述筛选交易数据进行排序以生成所述记录信息。
进一步的,所述步骤S400包括以下子步骤:
S410:设置联盟链账本平台的各个账本ID;
S420:前序账本将前序账本数据转储至当前账本的创始区块内;
S430:当前账本再将当前账本数据转储至下一账本的创始区块内。
进一步的,所述对联盟链账本平台的数据进行隔离是通过账套选择方式进行隔离的。
第二方面,本发明实施例提供一种联盟链账本平台的数据记录系统,该数据记录系统包括创建模块、设置模块和记录与分发模块;其中,
所述创建模块用于创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;
所述设置模块用于设置联盟链账本平台的节点的管理权限;
所述记录与分发模块基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离。
本发明的联盟链账本平台的数据记录方法及系统具有以下优点:
(1)反向数据记录结构可以记录撤销交易信息及该撤销交易信息所在原区块的相关数据,从而在确保撤销记录可追溯的同时又不影响正常交易打包上链的操作,这在对数据安全、数据可追溯等要求较高的行业应用工程中具有必要性;
(2)在联盟链出现故障、出现紊乱异常时,超级管理节点可以起到高效管理的作用,可以使联盟链账本平台在更大的范围内得到推广,可支撑中心化机构的去中心化业务场景及管理场景实现;
(3)针对联盟链具有开放性的特征,本发明利用一般管理节点根据所述奇点交易的标量信息对联盟链的交易数据进行审核,以此为联盟链账本平台的多领域应用实现提供便利;
(4)本发明通过设置隔离账套,可以对数据进行隔离,从而使不同环境的数据之间不产生污染,例如对测试环境、生产环境的数据记录进行隔离,那么测试数据就不会污染生产数据;
(5)根据所述记录信息对联盟链中的数据进行转储,可以对不同账本之间的数据进行审核和转储,以有效地支撑跨领域的应用融合,扩大联盟链的应用范围和应用强度。
附图说明
图1为本发明一个实施例提供的联盟链账本平台的数据记录方法的流程示意图;
图2为本发明另一实施例提供的联盟链账本平台的数据记录方法的流程示意图;
图3为本发明实施例提供的撤销交易的组成信息与5WH的对应示意图;
图4为本发明实施例提供的联盟链账本平台的撤销交易记录结构示意图;
图5为本发明实施例提供的一般管理权限的节点对联盟链的交易进行审核的流程示意图;
图6为本发明又一实施例提供的一种联盟链账本平台的交易撤销流程示意图;
图7为本发明实施例提供的一种联盟链账本平台的数据记录系统的结构示意图。
具体实施方式
下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
下面对本实施例的联盟链和区块链的区别和联系进行简要说明。
联盟链的各个节点通常有与之对应的实体机构组织,通过授权后才能加入与退出网络。各机构组织组成利益相关的联盟,共同维护区块链的健康运转。
联盟链与区块链的核心区别,在于访问权限的开放程度,或者叫去中心化程度。
实施例一
参见图1,图1为本发明实施例提供的一种联盟链账本平台的数据记录方法,该数据记录方法包括以下步骤:
S100:创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块(英文名称:InitBlkInfo;英文含义:Initial Block Information)、正向数据记录结构和反向数据记录结构;
S200:设置联盟链账本平台的节点的管理权限;
S300:基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离;优选的,所述对联盟链账本平台的数据进行隔离是通过账套选择方式进行隔离的。
可选的,所述数据记录方法还包括以下步骤:
S400:根据所述记录信息对所述联盟链账本平台的数据进行转储。
下面将具体说明本实施例的联盟链账本平台的数据记录方法的具体工作过程。
参见图2,上述步骤S100包括以下子步骤:
S110:将所述正向数据记录结构配置为包括正向链,将所述反向数据记录结构配置为包括反向链;
S120:将该创始区块的高度设置为0,所述正向链和反向链均以创始区块为起点;其中,
该正向链上包括多个区块,每个区块的高度均大于0,且各个区块的高度沿正向链依次增加;
所述反向链包括多个撤销交易信息,每个撤销交易信息包括该交易信息撤销前所在的原区块信息,该原区块信息包括原区块的高度,每个撤销交易的新高度均小于0,且各个撤销交易的新高度沿反向链依次减小;
本实施例中的正向链按照周期完成记账、打包、验证等工作,反向链则用于记录撤销交易信息及该撤销交易信息所在原区块的相关数据;
可选的,在一个实施例中,撤销交易信息的字段包括撤销交易的组成信息((英文名称:RevkTxInfo;英文含义:Revoke Transaction Information)、撤销交易所在原区块的组成信息(英文名称:BlkInfo;英文含义:Block Information)和撤销交易的新高度(英文名称:RevkTxHit;英文含义:Revoke Transaction Height)。
参见图3,撤销交易信息在分类和细化时需要遵循5WH原则,便于联盟链账本平台与传统应用软件实现平滑的数据对接,参见图4,图4示出了撤销交易的记录结构示意图。
下面将列出撤销交易组成信息的各字段及相关注释(包括中文名称、英文名称、英文含义、数据类型、描述说明),具体如下:
交易标识、TxID 、Transaction ID、字符串、交易处理中可保证事务的唯一标识,通常为哈希值。
交易编号、TxNO、Transaction NO、字符串、用于指代交易内容编号。
交易序号、TxSeq、Transaction Sequence.、整数、交易发生的序列号
交易格式版本、TxProtVer、Transaction Protocal Version、字符串、根据智能合约的版本所确定的交易格式的版本。
交易初始化、TxInit、Transaction Initial、字符串、对交易数据结构中的各元素进行初始设置,包括注册/登记。
交易类型、TxType、Transaction Type、枚举型、典型交易类型有如下几种:
(1)事实记录(发起和接收已被加密钥的方式确定,即已经形成“交易对”,只是记录问题);
(2)过程记录(发起和接收是过程,已发起但等待接收,需要过程记录);
(3)规则自动匹配(两参与者都发起,由交易规则自动撮合,完全由程序自动完成,可细分为“市场平台”和“做市交易”,常见撮合原则包括价格优先、时间优先、客户优先、做市优先、经纪优先等,最终形成“交易对”记录交易)。此外,在工程应用中,也可将交易类型定义为:① 发起发起;②发起接收;③资产转移。具体分类的依据可根据具体应用领域自行选择 。
交易脚本名称、TxScriptName、Transcation Script Name、字符串、包含锁定脚本以及解锁脚本,锁定脚本指代验签过程,解锁脚本指代签名过程,由“表达式语言”+“数字签名”构成。
交易发起方标识、TxSrcID、Transaction Source ID、字符串、交易发起方的身份唯一标识信息。
交易发起方账户、TxSrcAcct、Transaction Source Account、字符串、交易发起方账户信息,具有唯一性。
交易发起方公钥、TxSrcPK、Transaction Source Public Key、字符串、交易发起方的公钥信息,用于形成发起方账户地址。
交易发起方签名、TxSrcSig、Transaction Source Signature、字符串、交易发起方数字签名,通常包含发起方私钥。
交易接收方标识、TxDstID、Transaction Dest ID、字符串、交易接收方的身份唯一ID标识信息。
交易接收方账户、TxDstAcct、Transaction Dest Account、字符串、交易接收者账户信息。
交易接收方公钥、TxDstPK、Transaction Dest Public Key、字符串、交易接收方密钥对公开部分,用于形成其账户地址。
交易接收方签名、TxDstSig、Transaction DestSignature、交易接收方数字签名,包含接收方私钥信息。
交易管理者标识、TxMgrID、Transaction Manager ID、字符串、交易管理者身份唯一标识ID信息。
交易管理者账户、TxMgrAcct、Transaction Manager Account、字符串、交易管理者账户信息。
交易管理者公钥、TxMgrPK、Transaction Manager Public Key、字符串、管理者密钥对公开部分,用于形成管理者账户。
平台软件版本号、PfVer、Platform Version、字符串、针对区块链交易平台应用软件,使用版本号标识不同的发行版本。
交易内容分类、TxCat、Transaction Category、自定义、交易内容分类标准与分类表需根据不同应用场景与应用领域进行自定义,该内容分类主要用于初始区块对区块分类账的初始额统计。
交易业务编号、TxBusNO、Transaction Business NO、字符串、通常指发生的交易业务编号信息,可自定义 。
交易描述、TxDesc、Transaction Description、字符串、又称交易备注,指针对交易行为的描述,通常用于存储与交易相关的备注信息。此外,工程应用中,分类备注优先于通用备注,分类备注又可针对不同类型数据分为参与者备注、标量备注、交易备注、管理者备注、节点备注等。备注也可自定义为指针备注,指代交易指针,指针指向附录文件。
交易状态、TxStatus、Transaction Status、枚举型、交易状态在具体应用中体现为枚举型,可根据不同应用场景进行枚举值的自定义,自定义的依据规则包括但不限于:(1)因业务流程引发的交易组成元素数据更新,其造成的状态变化;(2)因管理流程引发的交易检查、撤销等操作,其造成的状态变化。
共识信息、ConsInfo、Consensus Information、自定义、用于验证交易有效性以及选择记账权的归属,主要包含以下内容:共识类型;共识结果;共识裁决 。
合约编码、ContrNO、Contract NO、字符串、用于记录和识别智能合约脚本,唯一且不重复的编码。
合约版本、ContrVer、Contract Version、字符串、针对智能合约的代码和编译发布到区块链上的二进制代码数据,使用版本号表示不同版本 。
交易时间、TxTM、Transaction Timestamp、时间表达式、通常指交易完成时间以及时间特征(时区)。
交易金额、TxAmt、Transaction Amount、数值型、交易中涉及到的账户资产的变更数量、交易额,是最主要的交易标量信息。此外,针对该标量信息的描述字段:汇率,则作为标量备注存储在交易描述当中。
交易手续费、TxFee、Transaction Fee、数值型、交易处理过程中产生的交易手续费用、交易成本。成本可以是平行多级成本,也可以是发行成本,成本的上限由交易的特征决定,该标量可根据交易的激励机制的设定而进行自定义。
交易地点、TxAddr、Transaction Address、字符串、通常指交易发生的网络节点,可自定义。
交易结点、TxNd、Transaction Node、字符串、参与交易的结点。
交易结点类型、TxNdType、Transaction Node Type、字符串、通常指网络分布中主结点与辅结点类型。
结点关系图指针、PrSubDgrmPtr、Peer Subscription Diagram Pointer、指针、指向结点关系图的指针,结点关系图(元数据结构中体现)决定了交易数据的复制路径与复制策略,并能够计算出所有副本数,并显示共识表决结果。
传输类型、TransType、Transmission Type、枚举型、通常指基于不同传输协议的传输类型,如RPC协议、TCP/IP协议等,可根据实际使用情况自定义。
交易背书条件、TxEndrCond、Transaction Endorsement Conditions、自定义、认证交易有效性所需要的交易证明或担保条件。
专项、SpclItm、Special Item、自定义、根据应用进行自定义。
资产类别/币别、AstCat、Asset Category、自定义、链中流转的不同资产价值载体,如比特币、以太币、积分等。
账套ID、AcctStID、Account Set ID、自定义、交易记录所在账套的ID,账套为一种数据间(如生产数据与测试数据)的隔离设计,可根据应用自定义 。
权限标识位、PmsFlg、Permission Flag、自定义、权限标识位可用来匹配、对应操作者的记录访问权限,记录访问权限的划分通过权限表的形式体现,表中针对权限的不同分级分类可根据具体应用进行自定义规划。工程应用中,标识位既能归集(多位)使用,也可逐一使用。
下面将列出销交易所在原区块组成信息的字段及相关注释(包括中文名称、英文名称、英文含义、数据类型、描述说明),具体如下:
(原)区块高度、BlkHit、Block Height、整数、标识区块序号,描述交易所在原区块在区块链中的位置。
区块哈希、BlkHsh、Block Hash、字符串、区块的摘要,区块在区块链中的唯一标识。
前块哈希、PrevBlkHsh、Previous Block Hash、字符串、前一区块的区块摘要,区块在区块链中的唯一标识。
区块协议版本、BlkProtVer 、Block Protocol Version、字符串、针对区块链节点之间以及外部应用和区块链节点通信、交互的协议,使用版本号标识不同的协议版本。
区块创建人、BlkCrtor、Block Creator、字符串、指通过各种共识机制后成功创建区块的记账节点,也是激励的接受者。
区块创建人公钥、BlkCrtorPK、Block Creator Public Key、字符串、区块创建人的公钥信息,用于形成创建人账户地址。
区块创建人签名、BlkCrtorSig、Block Creator Signature、字符串、区块创建人的签名,用私钥为文档产生一段叫做签名的短字符串数据,可验证的唯一标识。
区块创建时间、BlkTM、Block Timestamp、时间表达式、表示本区块的生成时间刻度,精到毫秒,正序增加。
区块打包规则、BlkPckRule、Block Packing Rule、自定义、通常指交易自动打包进区块的规则,通常由管理者或管理结点制定,内容自定义。
区块难度、BlkDiffct、Block Difficulty、自定义、通常用于表示共识的难度,如获取记账权的难度(拿到令牌),类似于比特币平台的区块难度设定,具有动态难度可调节的特征,可通过调节该难度来构建上链效率,是自定义参量。
区块内容分类、BlkCat、Block Category、自定义、根据应用自定义。
区块校验值、BlkPrfTst、Block Proof Test、字符串、区块内的交易信息通过某种检验算法生成的区块校验值。
区块状态、BlkStatus、Block Status、枚举型、区块状态可根据实际应用自定义。
区块大小、BlkSz、Block Size、数值型、区块大小是指打包区块的大小,区块大小由“区块头”与“区块体”影响与决定。
区块记录数、BlkTxCt、Block Transactions Count、整数型、区块记录数为整数型,通过区块记录数的设定,可协助给出区块自动打包的规则。
区块总金额、BlkTotAmt、Block Total Amount、数值型、指区块内的交易金额总和。
区块总费用、BlkTotFee、Block Total Fee、数值型、指区块内的交易处理费总和。
区块序号、BlkNO、Block NO、字符串、区块序号是当前区块的标识之一,能够通过该序号查询到相应区块,或便于调用该区块。
表1 撤销交易新高度的字段及注释
中文名称 英文名称 英文含义 数据类型 描述说明
撤销交易新高度 RevkTxHit Revoke Transaction Height 负整数 指撤销交易在反向链上的高度、位置,按照交易顺序在反向链排序。
S130:参见下表2和5以及图3,将创始区块的字段划分为核算方向和初始额,本实施例中的核算方向为交易标量信息的归集方向,例如交易金额的归集方向;本实施例中的部分核算方向的初始额可设置为空项;优选的,所述核算方向包括:参与者账户、管理者账户、交易内容分类、专项等,在实际应用中,可根据具体工程应用领域与业务需求进行核算方向的细化,本发明不做限制。
本实施例中联盟链账本平台的账本包括前序账本、当前账本和下一账本,其中,每一个账本的创始区块用于存储“前序账本”需要转储的数据,该创始区块结构与进行交易打包的区块结构有区别。创始区块并不具有交易的记账、检验、打包等功能,而是将上一区块链的交易依据的上位信息表形成的“核算方向”进行科目分类和初始额归集。
表2 创始区块的字段及注释
中文名称中 英文名称 英文含义 数据类型型 描述说明型描述
核算方向 AcctDir Accounting Direction 自定义 具有初始额概念的交易标量信息的归集方向
初始额 InitAmt Initial Amount 数值型 核算方向内各分类项的初始额,部分核算方向的初始额可设置为空项
表3 创始区块的记录结构
核算方向 初始额
参与者账户 ***
管理者账户 ***
交易内容分类 ***
专项 ***
上述步骤S200的联盟链账本平台的节点的管理权限包括一般管理权限和超级管理权限,其中,拥有超级管理权限的节点用于对数据进行删除和撤销;
具有所述一般管理权限的节点用于在联盟链账本平台正常运行情况下,对交易、区块、数据记录及分发的流程和操作进行管理;具体的,具有所述一般管理权限的节点在联盟链账本平台正常运行情况下,对交易验证、交易生成、交易检查/资产转移、交易背书、交易核查、区块发起、区块验证、区块打包、区块检查/封包、区块核查、共识/表决、账本平台的数据分发进行管理;
参见图5,具有所述一般管理权限的节点还用于当发生奇点交易时,根据所述奇点交易的标量信息对联盟链的交易数据进行审核。
其中,本实施例中的奇点交易是指:因业务场景扩展的需要,该笔交易涉及的标量信息在联盟链账本平台的当前账本及前序账本中找不到可追溯的来源,为外部标量进入该账本平台的第一笔交易,奇点交易可为后续发生相关交易的源头。
需要说明的是,超级管理节点(即具有超级管理权限的节点)存在于封闭系统内,只有在初始化或再启动阶段使用,启动以后由分布式的联盟链系统来运行,若系统出现问题,则由超级管理节点执行管理操作。超级管理节点的作用是在联盟链出现故障、出现紊乱异常时,起到高效管理的作用。在联盟链正常运行情况下,超级管理节点会受到一系列约束,即在联盟链正常的运行情况下,该超级管理节点一般不会执行超级管理操作。本实施例的超级管理节点可以使联盟链账本平台在更大的范围内得到推广,并可支撑中心化机构的去中心化业务场景及管理场景实现。
参见图6,上述S300中所述对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息,包括以下子步骤S310和S320:
S310:当具有所述一般管理权限的节点在正向链位置进行交易打包时接收到交易撤销命令,若此时该交易数据还未上链或未被分发,则将该撤销的交易数据复制到反向链上;
S320:反向链对所述撤销的交易数据进行排序以生成所述记录信息。
在另一个实施例中,所述对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息,包括以下子步骤S310'和S320':
S310':当联盟链账本平台的数据由分发节点向其他节点分发时,若账本平台的各节点的数据存在不一致等情况,则将该不一致的数据与已成功上链的区块交易数据进行去重筛选以获得筛选交易数据,将该筛选交易数据复制到反向链上;
S320':反向链对所述筛选交易数据进行排序以生成所述记录信息,并且每条筛选交易数据冗余地存储所在原区块的信息,以用于索引至原区块。
需要说明的是,本实施例的数据分发是指将数据从账本平台的分发节点发送至其他节点的过程,即数据从账本平台的某一个或某几个主结点发送至其他主结点或辅结点的过程。
由于在存储联盟链的数据(例如存储交易和区块相关信息)时,可以对存储的账套进行选择,因此,在进行数据记录时,还包括在联盟链账本平台的数据进行记录的过程中,对所述联盟链账本平台的数据进行隔离;优选的,通过账套选择方式对联盟链账本平台的数据进行隔离:
具体的,根据联盟链的实际应用设置不同存储路径的账套,将数据存储在相应的账套中;例如可将测试数据和生产数据存储在不同账套ID的账套中,两个账套之间不选择信息转储等操作,底层的环境可保持一致。
通过对所述联盟链账本平台实现了数据存储的账套选择,以使得在不同的环境下(如测试环境、生产环境)对联盟链中的数据进行隔离,从而在必要情境下使数据之间不相互污染。
需要说明的是,本实施例中的“账套”是以独立核算的企业或虚拟主体为对象,记录该企业或虚拟主体在一定时期内的账表数据,使用权限,企业档案,以及会计档案等信息的独立数据库;
账套隔离是指不同角色的用户能够看到和使用的账套不同,相互之间信息隔离。“账本”概念是“链”的上位概念,而“账本”之间的由于存在相互衔接关系,等同于“链”之间的衔接关系,因此链之间的衔接关系,可以看作是一种“转储过程”的体现,每一条链的数据结构对应该当前账本的数据结构。当前账本的逻辑前置账本为前序账本,逻辑后置账本为下一账本,各账本之间有相互衔接的“数据转储过程”。
参见图1和2,图2示出了各“账本”之间的衔接过程,即数据转储过程,因此上述步骤400包括以下子步骤:
S410:设置联盟链账本平台的各个账本ID;
为了区分不同的账本或链,每个账本都需要自己特有的账本ID,账本ID的组成为可以为如下格式,例如:“账本名字(自定义)+时间(时间精确到秒)”,因此在交易及区块信息进行转储时需对账本ID进行设置。
S420:前序账本将前序账本数据转储至当前账本的创始区块内;优选的,前序账本对于链内(即图2中的前序账本)数据根据核算方向进行分类、清算、结算和审核,对各核算方向上的初始额进行汇总,并将核算方向以及对应的初始额汇总信息“转储”至当前账本的创始区块内。
S430:当前账本再将当前账本数据转储至下一账本的创始区块内。
实施例二
参见图7,图7为本发明实施例提供的一种联盟链账本平台的数据记录系统的结构示意图,该数据记录系统包括创建模块、设置模块和记录与分发模块;其中,
所述创建模块用于创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;
所述设置模块用于设置联盟链账本平台的节点的管理权限;
所述记录与分发模块基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息,以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离。
进一步的,所述数据记录系统还包括转储模块,该转储模块根据所述记录信息对所述联盟链账本平台的数据进行转储。
本实施例中的数据记录系统的具体工作过程与上一实施例的数据记录方法的工作过程基本一致,在此不再赘述。
本发明的联盟链账本平台的数据记录方法及系统具有以下优点:
(1)反向数据记录结构可以记录撤销交易信息及该撤销交易信息所在原区块的相关数据,从而在确保撤销记录可追溯的同时又不影响正常交易打包上链的操作,这在对数据安全、数据可追溯等要求较高的行业应用工程中具有必要性;
(2)在联盟链出现故障、出现紊乱异常时,超级管理节点可以起到高效管理的作用,可以使联盟链账本平台在更大的范围内得到推广,可支撑中心化机构的去中心化业务场景及管理场景实现;
(3)针对联盟链具有开放性的特征,本发明利用一般管理节点根据所述奇点交易的标量信息对联盟链的交易数据进行审核,以此为联盟链账本平台的多领域应用实现提供便利;
(4)本发明通过设置隔离账套,可以对数据进行隔离,从而使不同环境的数据之间不产生污染,例如对测试环境、生产环境的数据记录进行隔离,那么测试数据就不会污染生产数据;
(5)根据所述记录信息对联盟链中的数据进行转储,可以对不同账本之间的数据进行审核和转储,以有效地支撑跨领域的应用融合,扩大联盟链的应用范围和应用强度。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种联盟链账本平台的数据记录方法,该数据记录方法包括以下步骤:
S100:创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;
S200:设置联盟链账本平台的节点的管理权限;
S300:基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离;以及
所述步骤S100包括以下子步骤:
S110:将所述正向数据记录结构配置为包括正向链,将所述反向数据记录结构配置为包括反向链;
S120:将该创始区块的高度设置为0,所述正向链和反向链均以创始区块为起点;其中,所述正向链上包括多个区块且各个区块的高度沿正向链依次增加;
所述反向链包括多个撤销交易信息,每个撤销交易信息包括该交易信息撤销前所在的原区块信息,且各个撤销交易的新高度沿反向链依次减小;
S130:将创始区块的字段划分为核算方向和初始额,所述核算方向为交易标量信息的归集方向。
2.根据权利要求1所述的数据记录方法,其特征在于,该数据记录方法还包括以下步骤:
S400:根据所述记录信息对所述联盟链账本平台的数据进行转储。
3.根据权利要求1所述的数据记录方法,其特征在于:所述撤销交易信息的字段包括撤销交易的组成信息、撤销交易所在原区块的组成信息和撤销交易的新高度;
其中,所述撤销交易的新高度为撤销交易在反向链上的位置,该位置是按照交易顺序在反向链上排序得到的。
4.根据权利要求1所述的数据记录方法,其特征在于,联盟链账本平台的节点管理权限包括一般管理权限和超级管理权限;
其中,具有所述超级管理权限的节点用于在联盟链初始化或再启动时,对数据进行删除或撤销;
具有所述一般管理权限的节点用于在联盟链账本平台正常运行情况下,对交易、区块、数据记录及分发的流程和操作进行管理;
具有所述一般管理权限的节点还用于当发生奇点交易时,根据所述奇点交易的标量信息对联盟链的交易数据进行审核。
5.根据权利要求4所述的数据记录方法,其特征在于,所述步骤S300包括以下子步骤:
S310:当拥有所述一般管理权限的节点在正向链位置进行交易打包时接收到交易撤销命令,若此时该交易数据还未上链或未被分发,则将该撤销的交易数据复制到反向链上;
S320:反向链对所述撤销的交易数据进行排序以生成所述记录信息。
6.根据权利要求1所述的数据记录方法,其特征在于,所述步骤S300包括以下子步骤:
S310':当联盟链账本平台的数据由分发节点向其他节点分发时,若账本平台的各节点的数据不一致,将该不一致的数据与已成功上链的区块交易数据进行去重筛选以获得筛选交易数据,将该筛选交易数据复制到反向链上;
S320':反向链对所述筛选交易数据进行排序以生成所述记录信息。
7.根据权利要求2所述的数据记录方法,其特征在于,所述步骤S400包括以下子步骤:
S410:设置联盟链账本平台的各个账本ID;
S420:前序账本将前序账本数据转储至当前账本的创始区块内;
S430:当前账本再将当前账本数据转储至下一账本的创始区块内。
8.根据权利要求1-7任一项所述的数据记录方法,其特征在于,所述对联盟链账本平台的数据进行隔离是通过账套选择方式进行隔离的。
9.一种联盟链账本平台的数据记录系统,该数据记录系统包括创建模块、设置模块和记录与分发模块;其中,
所述创建模块用于创建所述联盟链账本平台的数据记录结构,该数据记录结构包括创始区块、正向数据记录结构和反向数据记录结构;
所述设置模块用于设置联盟链账本平台的节点的管理权限;
所述记录与分发模块基于所述联盟链账本平台的数据记录结构,利用所述节点的管理权限对联盟链账本平台的数据进行记录及分发,以生成包含数据分发轨迹的记录信息;以及在所述记录的过程中,还对所述联盟链账本平台的数据进行隔离;
其中,所述创建模块执行以下操作:
将所述正向数据记录结构配置为包括正向链,将所述反向数据记录结构配置为包括反向链;
将该创始区块的高度设置为0,所述正向链和反向链均以创始区块为起点;其中,所述正向链上包括多个区块且各个区块的高度沿正向链依次增加;所述反向链包括多个撤销交易信息,每个撤销交易信息包括该交易信息撤销前所在的原区块信息,且各个撤销交易的新高度沿反向链依次减小;
将创始区块的字段划分为核算方向和初始额,所述核算方向为交易标量信息的归集方向。
CN202010359495.2A 2020-04-30 2020-04-30 一种联盟链账本平台的数据记录方法及系统 Active CN111522831B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010359495.2A CN111522831B (zh) 2020-04-30 2020-04-30 一种联盟链账本平台的数据记录方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010359495.2A CN111522831B (zh) 2020-04-30 2020-04-30 一种联盟链账本平台的数据记录方法及系统

Publications (2)

Publication Number Publication Date
CN111522831A CN111522831A (zh) 2020-08-11
CN111522831B true CN111522831B (zh) 2020-12-29

Family

ID=71906040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010359495.2A Active CN111522831B (zh) 2020-04-30 2020-04-30 一种联盟链账本平台的数据记录方法及系统

Country Status (1)

Country Link
CN (1) CN111522831B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114140223A (zh) * 2021-12-02 2022-03-04 浙江金融资产交易中心股份有限公司 基于联盟链的金融产品发行审核方法、系统及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108462582A (zh) * 2018-02-09 2018-08-28 北京欧链科技有限公司 区块链中的反馈处理方法和装置
CN108510268A (zh) * 2018-02-09 2018-09-07 北京欧链科技有限公司 环形区块链结构、数据处理方法和装置
CN109034480A (zh) * 2018-07-31 2018-12-18 湘潭大学 一种基于智能合约的互联微网分布式优化调度方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9998286B1 (en) * 2017-02-17 2018-06-12 Accenture Global Solutions Limited Hardware blockchain consensus operating procedure enforcement
CN108055138B (zh) * 2018-02-01 2020-03-17 国家计算机网络与信息安全管理中心 基于区块链的应用分发记录方法和系统
CN108510254B (zh) * 2018-02-09 2020-11-20 北京欧链科技有限公司 链式双向区块链结构、数据处理方法和装置
CN108664803B (zh) * 2018-04-04 2022-03-22 中国电子科技集团公司第三十研究所 一种基于密码的文档内容细粒度访问控制系统
CN109272383A (zh) * 2018-09-05 2019-01-25 深圳正品创想科技有限公司 基于区块链的商品信息生成方法、区块链节点及其系统
CN109447635B (zh) * 2018-10-15 2022-02-01 北京京东尚科信息技术有限公司 用于区块链的信息存储方法和装置
CN110428238A (zh) * 2019-07-31 2019-11-08 北京米弘科技有限公司 区块链的账户撤回方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108462582A (zh) * 2018-02-09 2018-08-28 北京欧链科技有限公司 区块链中的反馈处理方法和装置
CN108510268A (zh) * 2018-02-09 2018-09-07 北京欧链科技有限公司 环形区块链结构、数据处理方法和装置
CN109034480A (zh) * 2018-07-31 2018-12-18 湘潭大学 一种基于智能合约的互联微网分布式优化调度方法

Also Published As

Publication number Publication date
CN111522831A (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
US20190073646A1 (en) Consolidated blockchain-based data transfer control method and system
CN110135860B (zh) 一种基于区块链技术的农作物种子安全溯源系统
CN107526766B (zh) 数据组织方法和开发环境系统
CN102483759B (zh) 用于执行部分数据库的增量更新的方法、系统和装置
AU2018202830A1 (en) Digital Asset Platform
US20040093581A1 (en) System and method supporting configurable object definitions
EP3726774A1 (en) Transparent blockchain sidechains to support blockchain processing heterogeneity
Lovejoy et al. A high performance payment processing system designed for central bank digital currencies
US20150095243A1 (en) Online-id-handling computer system and method
CN104636338B (zh) 一种用于增值税阴阳票监控的数据清洗存储方法
CN103455589B (zh) 产品工厂模式下的产品数据迁移方法、装置及系统
US20060184995A1 (en) Creating a privacy policy from a process model and verifying the compliance
CN113205415B (zh) 基于rpa和区块链技术的财务流程自动化方法和系统
CN106845781A (zh) 用于业务测试的场景及流程的生成系统和方法
CN111095863A (zh) 在区块链网络上通信、存储和处理数据的基于区块链的系统和方法
WO2020079423A1 (en) Computer-implemented method and system for digital signing of transactions
CN111522831B (zh) 一种联盟链账本平台的数据记录方法及系统
WO2009147705A1 (ja) データベース接続プログラムおよび装置
CN102208061A (zh) 数据核销处理装置和数据核销处理方法
JP2024522634A (ja) ブロックチェーン上のトークンを検証するためのコンピュータ実装方法およびシステム
CN110232080B (zh) 一种基于区块链的快速检索方法
CN110192212B (zh) 数字资产平台
CN110083596A (zh) 一种数据历史跟踪和数据变化历史跟踪的方法
JP6963872B1 (ja) 通貨管理システム
CN114169887A (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