CN111311263A - 区块链节点本地安全记账方法 - Google Patents

区块链节点本地安全记账方法 Download PDF

Info

Publication number
CN111311263A
CN111311263A CN202010192939.8A CN202010192939A CN111311263A CN 111311263 A CN111311263 A CN 111311263A CN 202010192939 A CN202010192939 A CN 202010192939A CN 111311263 A CN111311263 A CN 111311263A
Authority
CN
China
Prior art keywords
node
chain
consensus
state change
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.)
Granted
Application number
CN202010192939.8A
Other languages
English (en)
Other versions
CN111311263B (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.)
Guangzhou Zhihong Technology Co ltd
Original Assignee
Guangzhou Zhihong Technology 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 Guangzhou Zhihong Technology Co ltd filed Critical Guangzhou Zhihong Technology Co ltd
Priority to CN202010192939.8A priority Critical patent/CN111311263B/zh
Publication of CN111311263A publication Critical patent/CN111311263A/zh
Application granted granted Critical
Publication of CN111311263B publication Critical patent/CN111311263B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种区块链节点本地安全记账方法,该方法包括:对共识区块的历史状态变化记录进行递归散列,计算累积摘要,生成链式结构IndexList,所述状态变化记录产生自联盟链中任意一次表决生效产生的联盟链状态变化;所述链式结构IndexList保存了数据状态变化路径;对于链中每个元素Index,都存储本次状态变化记录及上一个索引元素的摘要值;如果所述联盟链一个共识节点投出一个共识输出值,则本时间片内不再投出任何其他共识输出值。本发明提出了一种区块链节点本地安全记账方法,能够快速确定记账节点并确认其安全性,所有节点能够以最短的时间达成共识,提高了联盟链节点的记账和共识效率。

Description

区块链节点本地安全记账方法
技术领域
本发明涉及区块链,特别涉及一种区块链节点本地安全记账方法。
背景技术
区块链是按序将数据区块组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。区块链的核心技术是共识机制,即所有节点之间达成共识、认定一个记录有效性的方法。由于联盟链方式具有一定特殊性,其现有的共识及记账方案存在缺陷。例如在区分本轮记账节点和非本轮记账节点,以及区分安全记账节点和非安全记账节点时缺乏有效的机制,所有节点不能快速达成共识并指定本轮的安全记账节点,而是每次必须依赖复杂的节点间通讯,这严重影响了去中心化系统的记账速度和安全性。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种区块链节点本地安全记账方法,包括:
对共识区块的历史状态变化记录进行递归散列,计算累积摘要,生成链式结构IndexList,所述状态变化记录产生自联盟链中任意一次表决生效产生的联盟链状态变化;所述链式结构IndexList保存了数据状态变化路径;对于链中每个元素Index,都存储本次状态变化记录及上一个索引元素的摘要值;如果所述联盟链一个共识节点投出一个共识输出值,则本时间片内不再投出任何其他共识输出值。
优选地,所述链式结构IndexList形成可追溯的有效性状态变化历史轨迹,用于确认上一次状态变化结果,并隐式校验之前所有状态变化记录的完整性。
优选地,所述状态变化记录采用二元组<lunti,csni〉唯一描述,其中lunti为时间参数,csni为表决的共识区块。
优选地,仅当半数以上的成员节点投出一项共识输出值时,该共识输出值才获得本轮记账节点通过。
优选地,如果一个时间片内,节点未表决通过或被通知通过一个表决成功的共识,则节点生成一个空的索引元素链接到本地IndexList副本中。
优选地,当节点发生故障并重启后,首先计算当前lunt,并计算上一个lunt所映射的表决群组成员,向所述表决群组成员发送请求同步广播,将本地IndexList合并到联盟链主账本。
优选地,每次新建一个子链,都为其分配对应的首轮记账节点,用于将联盟交易记录打包成区块;在每个子链中设置协调节点,所述协调节点统计来自有效性表决成员关于一项共识的表决结果。
本发明相比现有技术,具有以下优点:
本发明提出了一种区块链节点本地安全记账方法,能够快速确定本轮记账节点并确认其安全性,所有节点能够以最短的时间达成共识,提高了联盟链节点的记账和共识效率。
附图说明
图1是根据本发明实施例的区块链节点本地安全记账方法的流程图。
具体实施方式
下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描述。结合这样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节以便提供对本发明的透彻理解。出于示例的目的而提供这些细节,并且无这些具体细节中的一些或者所有细节也可以根据权利要求书实现本发明。
本发明的一方面提供了一种区块链节点本地安全记账方法。图1是根据本发明实施例的区块链节点本地安全记账方法流程图。
本发明在非全连接的联盟链中,每次新建一个子链,都为其分配对应的首轮记账节点,用于将联盟交易记录打包成区块,并对区块进行有效性验证并维护整个账本。此外,还在每个子链设置协调节点,采用数字证书机制对联盟链中成员节点身份进行管理,并将收到的合法交易在网络中进行全局排序。
为确保共识机制的正确性,本发明采用索引链机制,在特定时间片内由映射的角色成员参与有效性表决。将联盟链节点划分为三种角色,分别为:1)协调节点,统计来自有效性表决成员关于某项共识的表决结果,并生成有效性共识输出值通知全网;2)共识节点,有效性表决参与者,计算生成特定时间段内的有效性表决群组中的成员,可以针对某项共识进行表决。3)背书节点,执行请求共识的广播操作。
在接下来的实施例中分步说明表决群组和协调节点的产生机制,以及通过索引链机制确保有效性共识的输出值的唯一性。
在本发明的联盟链中,每个交易都是通过写操作提交一系列键值对到账本数据库。一系列有序的交易被打包成块。通过链码执行联盟交易生成状态转移数据。同时,为了高效地执行链码调用,建立状态数据库来维护账本当前的状态,状态数据库实际上存储的是所有曾经在交易中出现的键值对的最新值。
所有类型的节点加入联盟链网络前,都需向协调节点申请相应的证书。当一个节点想创建一个子链时,其先从协调节点获取相应成员的证书和权限,并根据其地址向其他节点发起创链请求。全部节点同意创链规则通过后,由发起初始请求的节点生成经签名的创世区块,并为子链分配协调节点和首轮记账节点。
子链内的任意节点生成一条交易/记录之前,必须向协调节点申请相应的证书以证明其身份。子链内的节点发起的交易,根据该交易涉及的子链内的成员节点数量,需要相应的节点对该交易都进行签名。
在收集所有的签名后,发起交易的节点将带有区块ID的交易发往协调节点,协调节点通过共识容错算法,返回接受或者拒绝的响应。如果协调节点接受该交易,则将该交易进行签名并与交易内容的哈希值一起广播至所有背书节点,此时所有背书节点同步地新增一条记账数据。优选地,判断当前记账数据是敏感数据还是非敏感数据,敏感数据提交至子链的首轮记账节点进行记账,非敏感数据提交至全网节点存储。
本发明在联盟链中的每个记账节点内部进一步设置自校验单元和索引单元。所述自校验单元为区块数据提供生成校验服务。所述索引单元维持区块与校验结果的一对一映射,同时提供索引服务,通过区块查找对应的校验结果。索引单元还要提供当前校验算法与配置的相关信息,对校验结果进行管理,以控制内存开销。
联盟链用户的区块读写请求都是通过前端API发送给后端联盟链存储。写请求携带的待写入数据输入给自校验单元生成校验结果。写入数据被持久存储之前会经过多个处理模块进行各种处理,在此期间自校验单元保证写入数据与其校验结果的一一对应并且可查找,以便及时发现数据错误。一旦从持久存储返回所读数据到联盟链中,则将所读数据输入给自校验单元重新生成新校验结果。将新校验结果与原校验结果均输入自校验单元,自校验单元进行比对验证。若验证不通过,则触发联盟链的错误处理机制。为了对联盟链节点的各个单元进行验证,读写数据在经过每一个单元时都会重新生成校验结果并与原始校验结果进行验证。
所述共识机制采用散列方法生成与时间映射的表决群组成员。对于表决群组的大小,可以在大于3且小于联盟链节点总数M范围内的奇数中任意选取。假定表决群组的大小为e,则M个成员节点中,e个任意节点生成的全排列共有Ae M种。对上述生成的全排列序号进行编号,生成的键值对序列。
定义散列函数VG(time),将时间参数lunt散列映射至上述键值对序列的键空间中,计算映射时间段内表决群组成员。
如果函数VG在键空间0,1,…,Ae M中均匀散列,则当时间参数lunt线性增长时,表决群组成员和协调节点角色在全部分布式成员节点中均匀产生和传递,联盟链是统计负载均衡的。
本发明分两步确保共识机制的正确性:
1)单次有效性表决的正确性:对于单次有效性表决,联盟链不产生或仅产生唯一一个表决结果。
2)累积有效性表决的正确性:经过多轮表决后,联盟链仅能确定唯一一个表决结果序列。
已知联盟链中任意一次表决生效产生的联盟链状态变化都可以采用二元组<lunti,csni〉唯一描述,其中lunti为时间参数,csni为表决的共识区块。采用递归散列思想,对历史状态变化记录计算累积摘要,生成链式结构IndexList。
IndexList保存了数据状态变化路径,形成可追溯的联盟链有效性状态变化历史轨迹,对于链中每个Index元素,都存储本次状态变化记录及上一个索引元素的摘要值,这不但包括了对上一次状态变化结果的确认,同时还隐式校验了IndexList上之前所有状态变化记录的完整性。因此,IndexList之间可以通过对链尾Index元素的一次比较,检验出历史上所有可能出现过的版本不一致性。
为确保算法安全性,即中间不含写操作的情形下,向联盟链任意节点发起的任意读请求序列读取到的状态值序列都一致,并定义以下约束:
如果一个共识节点投出一个共识输出值,则本时间片内不再投出任何其他共识输出值。仅当半数以上的成员投出一项共识输出值时,该共识输出值才获得本轮记账节点通过。一个时间片内仅执行一次表决,如果一个时间片内,节点未表决通过或被通知通过一个表决成功的共识,则节点生成一个空的索引元素链接到本地IndexList副本中。
当节点发生故障并重启后,首先计算当前lunt,并计算上一个lunt所映射的表决群组成员,向所述表决群组成员发送请求同步广播,将本地IndexList合并到联盟链主账本。
本发明结合区块可信度和联盟节点的可信度来确定联盟链区块有效性。联盟链的每个联盟节点拥有一个节点标识nodeID,该节点标识是用该节点的公钥进行散列计算得到的,每个区块拥有一个区块标识blockID,而该区块标识是将区块内容进行散列计算得到的。
每个联盟节点都维护自身的评分库,该评分库记录有对区块和其他记账节点的历史评分信息,如用二元组(blockID,value)记录区块的可信度,value是对区块的评分,用三元组(node_ID,num_suc,num_fail)记录节点的可信度,其中,num_suc是从当前记账节点上成功同步区块的次数,num_fail是从当前记账节点上区块同步失败的次数。
在区块发现阶段,联盟节点向所有链内节点发送同步请求,邻居节点在收到同步请求后,查看本地是否有符合同步请求的区块内容,如果有,则按照同步请求的发送路径返回一个同步响应消息,包括发出响应的节点标识、查询到区块的区块ID组成的记账更新结果集。
根据返回的同步响应,联盟节点根据发出响应的记账节点的节点标识,选择一定数量的区块r的提供者。联盟节点产生一对公私密钥对(PKSel,SKSel),然后将发起表决的消息进行广播,联盟链中的邻居节点收到发起表决消息以后,检查自身的评分库,根据对区块和节点的评分记录而产生表决内容,该表决内容用联盟节点的公钥加密,按照表决发起消息的发送路径返回给作为请求方的联盟节点。根据所收集的公钥加密信息,联盟节点先用私钥SKsel解密,向每一个表决者Vj直接发起表决校验请求,请求vj向联盟节点发送校验信息表决。
选择一个可信度最高的区块节点作为记账节点S。在区块同步之前要检验记账节点S的身份,过程是:联盟节点发送确认请求IDconf(node_ID,r)给记账节点,收到确认请求后,记账节点用自己的私钥SKs加密确认消息后,连同自己的公钥PKs一同发送给联盟节点:IDconf_awr(SKs,PKs),联盟节点收到IDconf_awr后用PKs解密SKs,得到确认结果。
然后联盟节点将PKs作散列计算,如果散列计算的结果是node_ID,则证明对方是真正的记账节点S。在将区块同步到本地之后,联盟节点计算区块内容的摘要,更新评分库中区块和记账节点的记录。
在本发明优选的实施例中,为实现请求方联盟节点、共识节点和记账节点的匿名通信,如果某个联盟节点需要更新区块,首先随机选择多个节点作为中继节点,然后构造从请求方联盟节点到随机中继节点的正向TOR包,以TOR路由指示的路径发送表决请求给这些中继节点。中继节点以广播方式向所有邻居节点发起表决。
共识节点将表决内容返回给中继节点,中继节点收集表决后通过逆向TOR路由将所有表决内容发送给请求方联盟节点,请求方联盟节点在统计表决内容的数量后根据结果确定目标区块,然后发送检索区块请求给中继节点,中继节点找到目标区块的首个拥有者,该首个拥有者作为记账节点,通过区块查找的原路径将区块传输给中继节点,中继节点将区块以逆向TOR指示的路径逐层加密后传输给请求方联盟节点,请求方联盟节点进行逐层解密最终得到目标区块。
每个联盟节点需要维护链内路由链表,即保存在查询和表决路由节点上的二维表,该表记录5个字段<PollID,HI,from,to,time>,其中PollID记录该联盟节点最近广播过的表决的唯一标识,哈希值HI记录返回的表决内容中包含的哈希值,用于请求方通过中继节点向表决者检索区块时能识别路径,from记录同步请求的来源节点即同步请求路径上当前节点的前一个节点的地址,to记录同步请求将要去向的节点即同步请求路径上当前节点的下一个节点,time记录同步请求到达该节点的时刻,以便在该同步请求超时后将本记录删除。
整个过程可以具体分为以下各个阶段:
(1)构造逆向TOR和正向TOR:如果联盟节点需要某个区块block,其作为请求方联盟节点,随机选择网络上的n个节点Volunteer1,Volunteer2,…,Volunteern作为表决中继节点,然后随机选择一个表决唯一标识PollID和n个片区rgn1,rgn2,…,rgnn,rgni(l<=i<=n)标识中继节点Volunteeri负责发起和收回表决内容的范围。
在TOR匿名网络建立和从请求方联盟节点到Volunteeri的路径选择确定以后,构造从请求方联盟节点到Volunteeri的正向TOR包FTORi和从Volunteeri到请求方联盟节点的逆向TOR包BTORi。n个逆向TOR包用于指示从Volunteeri到请求方联盟节点的路由:
BTORi={Rmi,CCImi,{Rmi-1,CCImi-1,{Rmi-2,{I,{PollID,hiddata}KIP}KR1……}KRmi-1}KRmi}KAi,其中mi为该路径上要经过的节点的个数。
其中PollID是表决内容的唯一标识,Rmi为第mi个节点,KIP为联盟节点的公钥;KAi是第i个中继节点的公钥;KRmi是第mi个节点的公钥;hiddata是掩护伪装信息,用它代替表决结果填充在逆向TOR包的内部。CCImi表示中继节点将一个片区的表决集合返回给请求方联盟节点的途中第mi层即第i个节点用到的加密控制信息,包括加密算法和密钥,在确定TOR路由路径后,请求方联盟节点为每层TOR路由节点分配CCI;
在构造了逆向TOR包以后,继续构造正向TOR包,请求方联盟节点将唯一标识PollID,片区rgn,BackTOR,要求表决的目标区块block(可以是区块ID或者关键字)和请求方联盟节点的公钥KIP封装成正向TOR包发送给中继节点,FTORi={R1,{R2,{R3,…{Rmi,{Volunteeri{PollID,rgni,BTORi,block,KIP}KAi}KRmi…}KR3}KR2}KR1},其中mi为该路径上要经过的节点的个数。
(2)请求方联盟节点将第一阶段构造好的最大TOR包发送给n个中继节点,要求他们发起表决。联盟节点将FTORi逐层发送给n个中继节点Volunteeri,路径上的TOR路由节点接收到TOR包以后,先用自己的私钥解密,得到下一个TOR路由节点的地址,然后将TOR包进行填充后发送给下一个TOR路由节点,此过程直到将{PollID,rgni,BTORi,block,KIP}KAi}最终发送给中继节点Volunteeri
(3)中继节点发起表决:中继节点Volunteeri根据接收到的发起表决请求消息{PollID,rgni,BTORi,block,KIp},从中提取出同步请求{PollID,block,KIp,TTL},然后以广播方式发送给他的k个邻居节点进行区块搜索,这些节点又继续将同步请求广播出去,区块搜索的终止条件是TTL等于零,所述TTL表示消息的有效中继次数。
若联盟节点NodeA接收到邻居节点NodeB发送过来的{PollID,block,KIp,TTL},NodeA首先在自己的链内路由链表中查找是否已经存在了表决唯一标识PollID,如果存在,则说明此次发起表决的同步请求已经遍历过NodeA,所以将该同步请求丢弃;如果不存在,则将PollID、上一个邻居节点的地址,下一个将要发送的邻居节点的地址,时间组织起来存储在链内路由链表中,然后查找自身是否存储有block标识的区块,如果存在,将进入第四阶段,然后将TTL的值减1,继续广播,如果不存在,也将TTL的值减1,继续广播,当TTL的值为零时终止。
(4)共识节点将表决内容返回给中继节点:若联盟节点NodeA中有block对应的区块,NodeA将有资格参与表决,他是一个参选节点,参选节点对自己拥有的候片区块的内容作散列函数运算得到哈希值Hv,然后计算Hash(PollID||Hv||IP地址||NET),再构造自身对区块的表决内容vote,vote={PollID,{Hv,NET}KIp,Hash},根据链内路由链表中的from字段记录的上一个邻居节点的地址沿原路径逐步返回给Volunteeri同时在沿途将哈希值添加到链内路由链表的哈希值字段中,以便后续的中继节点能够顺着哈希值标记利用链内路由链表找到拥有该区块的节点并检索该区块,NET为表决节点自身的网络状态值。
(5)中继节点收集表决内容发送给请求方联盟节点:如果中继节点Volunteeri在片区rgni收到表决内容,其将片区rgni返回的所有表决内容收集在一起进行封装,封装的结果用请求方联盟节点的公钥加密,SETrgni=(rgni,vote1,vote2,…,votesum),其中sum为中继节点在片区rgni里收集到的表决内容的数量,然后按照逆向TOR所指示的路由将SETrgn i发送给请求方联盟节点。
在BTOR的内部存放的不是真正的表决内容集合SET,而是一个掩护伪装信息hiddata,真正的表决内容集合SET被CCI所指示的加密算法和密钥在逆向TOR路由上进行逐层反复加密,CCIm指定的加密算法和密钥对SET进行加密为
SET1=E1(SET),
CCIm-1指定的加密算法和密钥对SET1加密为
SET2=E2(SET1),
CCIj指定的加密算法和密钥对SETm-j加密为
SETm-j+i=Em-j+i(SETm-j),0<=j<=m。
(6)请求方联盟节点解包统计表决内容的数量,以确定目标区块blockx:请求方联盟节点接收到来自中继节点Volunteer的数据包以后,首先将{PollID,hiddata}KIp与SETm分离,然后对SETm=Em(Em,i…(E2(E1(SET))))逐层解密得到SET;下面从中继节点Volunteeri接收到的SET记为SETrgni=(rgni',vote1,vote2,…,votesum),请求方联盟节点先验证rgni'是否等于rgni。如果两个值不相等,则说明该表决内容集合无效,将所有表决内容丢弃。请求方联盟节点对所有中继节点返回的表决内容集合SET均作出处理后,统计表决内容的数量。
或者,请求方联盟节点发送区块检索消息给中继节点,通知其检索目标区块:请求方联盟节点提取出blockx的哈希值,将{blockx的哈希值,BTORi}作为区块检索消息按照正向TOR所指示的路由发送给中继节点Volunteeri,此时构造的最大TOR包为:
FTORi={Ri,{R2,{R3,{…Rmi,{Volunteeri{blockx的哈希值,BTORi}KAi}KRmi…}KR3}KR2}KR1},
(7)中继节点以链内路由链表中哈希值为线索标记的路径找到目标区块并检索该区块:中继节点Volunteerblockx根据链内路由链表中to字段里指示的下一个邻居节点的地址顺序查找到拥有目标区块blockx的节点Nodee,节点Nodee根据链内路由链表中from字段里指示的上一个邻居节点的地址识别区块返回路径,将blockx沿着该路径传递给中继节点Volunteerblockx
(8)中继节点将目标区块发送给请求方联盟节点:Volunteerblockx接收到目标区块blockx后,利用逆向TOR所指示的路径将blockx用CCIi逐层加密后发送给请求方联盟节点,接收者最后收到包含{PollID,hidData}KIp和Em(Em-1(…E2(E1(blockx))))的数据包。接收者将{PollID,hidData}KIP和Em(Em-1…(E2(E1(blockx))))分离出来,然后逐层解密最终得到目标区块blockx
综上所述,本发明提出了一种区块链节点本地安全记账方法,能够快速确定记账节点并确认其安全性,所有节点能够以最短的时间达成共识,提高了联盟链节点的记账和共识效率。
显然,本领域的技术人员应该理解,上述的本发明的各模块或各步骤可以用通用的计算系统来实现,它们可以集中在单个的计算系统上,或者分布在多个计算系统所组成的网络上,可选地,它们可以用计算系统可执行的程序代码来实现,从而,可以将它们存储在存储系统中由计算系统来执行。这样,本发明不限制于任何特定的硬件和软件结合。
应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

Claims (7)

1.一种区块链节点本地安全记账方法,其特征在于,包括:
对共识区块的历史状态变化记录进行递归散列,计算累积摘要,生成链式结构IndexList,所述状态变化记录产生自联盟链中任意一次表决生效产生的联盟链状态变化;所述链式结构IndexList保存了数据状态变化路径;对于链中每个元素Index,都存储本次状态变化记录及上一个索引元素的摘要值;如果所述联盟链一个共识节点投出一个共识输出值,则本时间片内不再投出任何其他共识输出值。
2.根据权利要求1所述的方法,其特征在于,所述链式结构IndexList形成可追溯的有效性状态变化历史轨迹,用于确认上一次状态变化结果,并隐式校验之前所有状态变化记录的完整性。
3.根据权利要求1所述的方法,其特征在于,所述状态变化记录采用二元组<lunti,csni〉唯一描述,其中lunti为时间参数,csni为表决的共识区块。
4.根据权利要求3所述的方法,其特征在于,仅当半数以上的成员节点投出一项共识输出值时,该共识输出值才获得本轮记账节点通过。
5.根据权利要求1所述的方法,其特征在于,如果一个时间片内,节点未表决通过或被通知通过一个表决成功的共识,则节点生成一个空的索引元素链接到本地IndexList副本中。
6.根据权利要求2所述的方法,其特征在于,当节点发生故障并重启后,首先计算当前lunt,并计算上一个lunt所映射的表决群组成员,向所述表决群组成员发送请求同步广播,将本地IndexList合并到联盟链主账本。
7.根据权利要求1所述的方法,其特征在于,还包括:
每次新建一个子链,都为其分配对应的首轮记账节点,用于将联盟交易记录打包成区块;在每个子链中设置协调节点,所述协调节点统计来自有效性表决成员关于一项共识的表决结果。
CN202010192939.8A 2020-03-18 2020-03-18 区块链节点本地安全记账方法 Active CN111311263B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010192939.8A CN111311263B (zh) 2020-03-18 2020-03-18 区块链节点本地安全记账方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010192939.8A CN111311263B (zh) 2020-03-18 2020-03-18 区块链节点本地安全记账方法

Publications (2)

Publication Number Publication Date
CN111311263A true CN111311263A (zh) 2020-06-19
CN111311263B CN111311263B (zh) 2021-07-16

Family

ID=71147987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010192939.8A Active CN111311263B (zh) 2020-03-18 2020-03-18 区块链节点本地安全记账方法

Country Status (1)

Country Link
CN (1) CN111311263B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019330A (zh) * 2020-08-04 2020-12-01 广东省科技基础条件平台中心 一种基于联盟链的内网安全审计数据的存储方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108848055A (zh) * 2018-05-03 2018-11-20 中国银联股份有限公司 一种区块链共识方法、记账节点及节点
CN109040012A (zh) * 2018-06-19 2018-12-18 西安电子科技大学 一种基于区块链的数据安全保护和共享方法与系统和应用
CN109274728A (zh) * 2018-09-03 2019-01-25 北京飞纳泰科信息技术有限公司 区块链数据生命周期管理方法
CN109544310A (zh) * 2018-11-13 2019-03-29 孙晞瑜 一种基于区块链联盟链的快速共识记账方法及其系统
CN110008720A (zh) * 2019-03-19 2019-07-12 周口师范学院 基于联盟链的物联网动态数据溯源方法及装置
CN110060157A (zh) * 2019-03-04 2019-07-26 清华大学 信誉度评估方法及系统
WO2020035088A2 (en) * 2019-11-06 2020-02-20 Alipay (Hangzhou) Information Technology Co., Ltd. Prioritizing shared blockchain data storage
US20200059369A1 (en) * 2017-05-16 2020-02-20 Peking University Shenzhen Graduate School Determining consensus by parallel proof of voting in consortium blockchain

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200059369A1 (en) * 2017-05-16 2020-02-20 Peking University Shenzhen Graduate School Determining consensus by parallel proof of voting in consortium blockchain
CN108848055A (zh) * 2018-05-03 2018-11-20 中国银联股份有限公司 一种区块链共识方法、记账节点及节点
CN109040012A (zh) * 2018-06-19 2018-12-18 西安电子科技大学 一种基于区块链的数据安全保护和共享方法与系统和应用
CN109274728A (zh) * 2018-09-03 2019-01-25 北京飞纳泰科信息技术有限公司 区块链数据生命周期管理方法
CN109544310A (zh) * 2018-11-13 2019-03-29 孙晞瑜 一种基于区块链联盟链的快速共识记账方法及其系统
CN110060157A (zh) * 2019-03-04 2019-07-26 清华大学 信誉度评估方法及系统
CN110008720A (zh) * 2019-03-19 2019-07-12 周口师范学院 基于联盟链的物联网动态数据溯源方法及装置
WO2020035088A2 (en) * 2019-11-06 2020-02-20 Alipay (Hangzhou) Information Technology Co., Ltd. Prioritizing shared blockchain data storage

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112019330A (zh) * 2020-08-04 2020-12-01 广东省科技基础条件平台中心 一种基于联盟链的内网安全审计数据的存储方法及系统
CN112019330B (zh) * 2020-08-04 2024-03-29 广东省科技基础条件平台中心 一种基于联盟链的内网安全审计数据的存储方法及系统

Also Published As

Publication number Publication date
CN111311263B (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
CN110958117B (zh) 支持零知识证明的区块链的互操作性
TWI749583B (zh) 鏈式結構資料儲存、驗證、實現方法、系統、裝置及媒體
CN110046521B (zh) 去中心化隐私保护方法
CN110569675B (zh) 一种基于区块链技术的多Agent交易信息保护方法
CN109726229B (zh) 一种区块链数据存储方法及装置
CN113742782B (zh) 基于隐私保护的区块链访问权限控制方法和区块链系统
CN108923932A (zh) 一种去中心化协同验证模型及验证算法
CN112116349B (zh) 面向高吞吐率的图式账本的随机化共识方法和装置
CN112073382B (zh) 一种基于随机共识的图式账本节点维护方法和装置
CN111899019A (zh) 一种黑名单多方交叉验证和共享的方法及系统
CN106886722A (zh) 大数据信息处理方法及装置
Sohrabi et al. ZyConChain: A scalable blockchain for general applications
CN112039837B (zh) 一种基于区块链和秘密共享的电子证据保全方法
KR20220140775A (ko) 분산형 데이터베이스
TW202231018A (zh) 識別阻斷服務攻擊之技術
CN115664682A (zh) 基于联盟链主从多链的医疗数据共享的共识方法
CN117633843A (zh) 一种基于区块链的数据加密存储方法与系统
CN111311263B (zh) 区块链节点本地安全记账方法
Robinson Consensus for crosschain communications
CN115065689B (zh) 一种基于历史评价的联盟链区块数据存储方法及系统
Kanimozhi et al. Immediate detection of data corruption by integrating blockchain in cloud computing
CN117010889A (zh) 数据处理方法、装置及设备、介质、产品
Li The Design for Distributed Ledger Based on Main-Sub Ledger Architecture
Spenger Using Blockchain for Tamper-Proof Broadcast Protocols
KR20210072457A (ko) 타임스탬프를 이용한 레코드를 블록체인에 분산저장하기 위한 방법

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