CN110689434B - 一种基于公证人组的跨区块链交互方法 - Google Patents

一种基于公证人组的跨区块链交互方法 Download PDF

Info

Publication number
CN110689434B
CN110689434B CN201910919088.XA CN201910919088A CN110689434B CN 110689434 B CN110689434 B CN 110689434B CN 201910919088 A CN201910919088 A CN 201910919088A CN 110689434 B CN110689434 B CN 110689434B
Authority
CN
China
Prior art keywords
notary
transaction
group
node
chain
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
CN201910919088.XA
Other languages
English (en)
Other versions
CN110689434A (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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201910919088.XA priority Critical patent/CN110689434B/zh
Publication of CN110689434A publication Critical patent/CN110689434A/zh
Application granted granted Critical
Publication of CN110689434B publication Critical patent/CN110689434B/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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • G06Q20/3825Use of electronic signatures
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • 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/42Confirmation, e.g. check or permission by the legal debtor of payment

Abstract

本发明涉及一种基于公证人组的跨区块链交互方法,属于区块链技术领域。该方法包括:S1:候选公证人组的初始化、加入以及退出机制;S2:预交易阶段:源节点发送交易请求至公证人组和目标节点,公证人组根据目标节点是否在请求交易清单签名对源节点的请求进行应答;S3:正式交易阶段:源节点发送具体交易清单至公证人组和目标节点,公证人组返回此次交易结果至源节点,并根据交易结果决定是否向保证金池投入一定比例的交易利润。本发明在保证跨区块链交易的公正性和安全性前提下,提升了跨区块链交易的可靠性和成功率,简化中间验证环节,从而提升交易的效率。此外,本发明无需引入中间链和要求区块链在平台上进行注册。

Description

一种基于公证人组的跨区块链交互方法
技术领域
本发明属于区块链技术领域,涉及一种基于公证人组的跨区块链交互方法。
背景技术
区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。随着人类对区块链技术的不断研究,区块链技术不断成熟,应用的领域同样愈加广泛。为了满足来自各应用领域的各种需求,仅仅依靠传统的单链区块链系统显然是不够的,实现不同区块链间的互联互通也是未来的大势所趋。而区块链跨链技术是为了实现不同区块链之间进行价值转移、信息交流而产生的技术,它能让价值跨过链与链之间的障碍,从而进行交流。
目前实现跨链的主要方法有公证人机制、侧链\中继器技术、哈希锁定技术以及分布式私钥控制技术。1)公证人机制是引入一个可信节点作为公证人进行跨链交易,但是如何保证公证人的可信度是该机制所被质疑的地方。以公证人机制的代表技术Interledger为例,在交易的源节点与目标节点之间可能需要经过多个公证人,只要中间任何一个公证人出现问题,交易都会失败,多个公证人增大了交易的风险同时影响交易效率。2)侧链是一种锚定主链的结构,它能够拥有主链的所有功能、可以读取和验证主链的信息,与此同时,主链并不知道侧链的存在,而中继是跨链信息交互的渠道。虽然侧链的中继器模式能够构建一个更高效、低成本的网络,能支持跨链资产变换转移,跨链合约和资产抵押,但是由于技术问题,让所有资产在链之间能够高效的流转并大规模应用,短时间内很难实现。而且该模式实现起来相当复杂,这也限制了它的应用范围。通过时间差和隐藏哈希值来达到资产的原子交换。3)哈希锁定是交易双方事先约定哈希值并以此来进行相互验证,协议锁定发送方需要转移的资产,如果接收方在一定时间内能出示正确哈希密钥,则成功接收,否则返回给发送方。哈希锁定只能做到交换而不能做到资产或者信息的转移,因此其使用场景有限。4)分布式私钥控制技术通过分布式私钥生成与控制技术被映射到基于协议的内置资产模板的区块链上,根据跨链交易信息部署新的智能合约以创建新资产。WanChain(万维链)作为分布式私钥控制技术的代表技术之一,它要求欲进行跨链交易的节点的所在链先在万维链平台上进行注册,同时,在中间链(万维链)上的验证步骤繁琐,交易失败只能进行回滚。
因此,本发明提出一种基于公证人组的跨区块链交互模型,解决上述几种跨区块链交易方式的缺陷。
发明内容
有鉴于此,本发明的目的在于提供一种基于公证人组的跨区块链交互方法,旨在提升跨链交易的可靠性,交易的成功率,同时在保证跨链交易可靠的基础上简化中间验证环节,从而提升交易的效率。
为达到上述目的,本发明提供如下技术方案:
一种基于公证人组的跨区块链交互方法,具体包括以下步骤:
S1:候选公证人组的初始化、加入以及退出机制;
S2:预交易阶段:源节点(即交易发起点(OriAccount))发送交易请求至公证人组(候选公证人组简称)和目标节点(交易目标对象((TarAccount))),公证人组根据目标节点是否在请求交易清单签名对源节点的请求进行应答;
S3:正式交易阶段:源节点发送具体交易清单至公证人组和目标节点,公证人组返回此次交易结果至源节点,并根据交易结果决定是否向保证金池投入一定比例的交易利润。
进一步,所述步骤S1具体包括以下步骤:
S11:通过智能合约分别在区块链A和区块链B为公证人组分别创建保证金池账户,由公证人组内所有成员共同维护;
S12:同时拥有区块链A和区块链B账户的节点可以申请加入公证人组;新申请加入公证人组的节点分别向公证人组在区块链A和区块链B的保证金池账户以交易的形式转入资产FA和FB(加入公证人组的保证金值等于FA和FB的价值之和),并在公证人组申请表中分别填入对应的交易ID和账户ID,并将公证人组申请表分别通过其所在两条链的账户在公证人组内广播,公证人组节点在分别通过两条链上的账户验证收到的两份公证人组申请表清单,将信息一致的清单中缴纳保证金的账户进行关联和保存;
S13:公证人组节点若想退出公证人组,需要在公证人组内发起申请,待公证人组确定该节点没有正在进行或未完成的跨链交易后允许该节点退出公证人组,并在公证人组内广播;
S14:如果某一节点在承担某次跨链交易过程中,存在虚假交易,那么公证人组将该节点从公证人组剔除,由第一公证人分别在两条区块链进行广播,通知其他节点为恶意节点,且已被剥夺参与跨链交易的权利。
进一步,所述步骤S2具体包括以下步骤:
S21:源节点向第一公证人发送请求交易清单(如表2所示),第一公证人向在线的候选公证人节点广播预交易信息,并由第一公证人(FirstNotary)转发请求交易清单至目标节点,打包发送的请求清单表示如下:
PACKAGE(Req),Req∈τ
其中,τ是源节点、目标节点、真实公证人、第一公证人这四个节点中任意节点发出的请求交易清单;
S22:目标节点决定是否接受此次交易,如果接受,则在请求交易清单的目标节点签名处进行签名,反之在目标节点的意见处说明拒绝原因,将请求清单返回至公证人组;
S23:第一公证人根据目标节点的返回的请求交易清单决定是否在候选公证人组内进行竞选充当此次交易的真实公证人(RealNotary);若进行公证人竞选,将选出的公证人信息写入请求交易清单,通过第一公证人发送至源节点;反之,在请求交易清单写入拒绝请求原因并由第一公证人返回至源节点。
进一步,所述步骤S22具体包括以下步骤:
S221:目标节点解包公证人组发送的请求清单包,根据请求交易清单的交易内容,决定是否接受此次交易,如若接受,则在请求交易清单内进行签名。反之,不进行签名,在目标节点意见处进行说明;解包表示如下:
UNPACKAGE(Req),Req∈τ
S222:将请求交易清单打包发送至公证人组。
进一步,所述步骤S23具体包括以下步骤:
S231:第一公证人将目标节点返回的请求解包后,查看是否有目标节点的签名(SignTarAccount),有则将请求内容广播给所有在线的公证人节点;反之,直接将目标节点返回的请求包转发至源节点;
S232:如果目标节点已签名,则第一公证人在公证人组内所有在线节点间广播交易清单,随后公证人组内进行真实公证人竞选(根据交易清单的交易内容,决定参与竞选的公证人节点发起请求,由公证人组节点进行投票,票数高者担任此次交易公证人);
S233:如果成功选出真实公证人,则由第一公证人把担任此次交易的公证人(真实公证人)在源链A和目标链B的账户写入请求交易清单,并加上公证人组签名(SignNotary),打包返回给源节点;反之,则填写公证人组意见,打包后返回给源节点;
S234:如果第一公证人被选为真实公证人,则由忠诚度排名第二的节点充当此次交易的第一公证人,并由真实公证人(原来的第一公证人)在公证人组内广播这一消息。
进一步,所述步骤S3具体包括以下步骤:
S31:若公证人组同意进行此次交易即目标节点在请求交易清单签名且公证人组成功竞选出真实公证人节点,源节点则在其所在的源区块链上发起一次与真实公证人的交易,并在交易清单(交易清单如表3所示)附上此次交易在源链上的交易号,将请求交易清单转发至真实公证人;反之,重新向公证人组发起预交易请求;源链交易表示如下:
OriTx=(OriTxId,OriAccount,Ori Re alNotrayAccount,value,SignOriAccount)
其中,OriTxId表示交易号,OriAccount表示源节点账户,Ori RealNotrayAccount表示真实公证人账户,value表示交易额,SignOriAccount表示源节点签名;源节点在源链上发起一次与真实公证人的交易,并将交易号写入交易清单,转发至真实公证人,转发的包表示如下:
PACKAGE(T1)
其中,T1即为交易清单,如表3所示。
S32:真实公证人将收到的交易清单在公证人组内进行广播,真实公证人根据源链交易号到源链查询该交易,若该交易在源链已被确认,则真实公证人在目标链发起与目标节点进行的交易,并将此交易号写入交易清单;反之,真实公证人在组内广播在源链无此交易,则由公证人组进行审核,如果经过审核,在源链查不到此交易或者交易内容与交易清单不相符,则由真实公证人在交易清单进行备注,返回给源节点;如果公证人组审核通过,则由第一公证人将公证人组查询到的交易信息发送给真实公证人,让其重新确认,并继续完成跨链交易;
S33:真实公证人将交易清单发送至目标节点,目标节点根据交易号查询交易在目标链是否被确认。若该交易在目标链上已被确认且交易内容与交易清单内容一致,目标链在交易清单进行签名,并在一定时间内将交易清单转发至真实公证人;反之,目标节点不返回交易清单;
S34:如果真实公证人在一定时间收到目标节点发送的交易清单,且交易清单包含目标节点签名,则真实公证人向第一公证人转发交易清单,由第一公证人进行验证,并在公证人组内广播该交易清单以及验证结果;验证通过后,真实公证人向保证金池存入一定比例交易利润,最后由第一公证人在交易清单写入公证人组签名,之后再由真实公证人转发至源节点;
S35:如果真实公证人在规定时间内未收到目标节点返回的交易清单,或交易清单不包含目标节点签名,真实公证人在公证人组内广播该消息,公证人组根据交易清单的交易号到目标链查询该交易是否已经被确认且交易内容与交易清单内容一致;如果确认该交易已经在目标链被确认,且交易内容无误,则在交易清单备注;如果未查询到此交易,要求真实公证人在一定时间内重新在目标链发起交易;
S36:如果在一段时间内真实公证人重新发起交易失败,公证人组对该交易发起补救事务(RemedyTx);公证人组从保证金池取出等价资金,在目标链发起和目标节点的交易,并将交易号写入交易清单,之后转发至源节点。
S37:根据交易结果对此次交易的参与节点进行忠诚度值计算。
进一步,所述步骤S36具体包括以下步骤:
S361:如果一个公证人两次发起交易失败,则会触发公证人组的智能合约来发起补救事务,公证人组根据交易清单的交易内容从保证金池在目标链的账户发起一笔与目标节点的交易(按照交易清单的资金要求),并将交易号写入交易清单,由第一公证人返回至源节点;此外,将真实公证人节点标记为不诚信节点,从公证人组剔除,不允许其再次参与跨链交易;
S362:如果第二次发起交易成功,待真实公证人节点向保证金池投入要求比例的利润后,由第一公证人在交易清单写入公证人组签名,转发至真实公证人,最后由真实公证人转发至源节点。
进一步,所述步骤S37具体包括以下步骤:
S371:第一公证人向候选公证人组内节点广播交易结果,并根据交易结果对此次交易的参与节点进行忠诚度值进行增减;公证人的信誉值增加根据其原有信誉值调整其增加值,即原有信誉值越高,增加越缓慢,反之越快:
S372:一个跨链交易成功执行,其他协助审核节点获得一定信誉值,真实公证人除了获取一定资金奖励,还会获取其他协助节点双倍信誉值,阻碍审核节点则会失去一定信誉值;
S373:对于公证人组审核失误,导致目标链拒绝交易的情况;如果在这个交易中真实公证人在审核过程中持反对意见,则真实公证人信誉值不变,反之信誉值减少,且至少不可充当若干次交易的真实公证人;对于其他公证人节点,持反对意见的节点增加一定信誉值,反之减少一定信誉值。
进一步,所述公证人组申请表包括区块链的保证金缴纳交易ID和申请节点在区块链的账户ID;
所述请求交易清单包括源节点地址、真实公证人在源链和目标链地址、目标节点地址、源节点签名、候选公证人组签名、目标节点签名、候选公证人组意见、目标节点意见和交易内容;
所述交易清单包括源节点地址、真实公证人在源链和目标链地址、目标节点地址、源节点签名、源链交易号、真实公证人签名、候选公证人组签名、目标节点签名、目标链交易号、交易内容、补救事务公证人签名、补救事务时间和备注栏。
本发明的有益效果在于:
1)相比于传统的公证人机制,本发明引入了一组公证人,整个交易过程都有其他公证人参与,公证人之间互相监督、相互抑制,反之公证人权力过大,在一定程度上提升了跨链交易的可靠性。
2)本发明还引入了奖惩机制,增加了公证人节点的作恶成本。
3)相比于分布式私钥控制技术的代表万维链,本发明进行跨链的交易的两条链无需在第三方链进行注册,减少了跨链次数。
4)本发明引入了保证金池,保证了跨链交易的原子性,提升了跨链交易的成功率。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为公证人组跨链交易模型图;
图2为预请求交易的流程图;
图3为一次成功跨链交易的过程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
请参阅图1~图3,如图1所示,本发明的优选实施例提供了一种公证人组跨链交易的模型,该模型实现跨链交易主要包括以下步骤:
步骤1:候选公证人组的初始化、加入以及退出机制。
步骤2:预交易阶段:交易发起节点(即源节点)发送交易请求至候选公证人组(即公证人组),并由公证人组转发交易请求至交易目标对象(即目标节点),公证人组根据目标节点的是否在请求清单签名对源节点的请求进行应答。
步骤3:正式交易阶段:源节点发送具体交易清单至公证人组和目标节点,公证人组返回此次交易结果给源节点,并根据交易结果决定是否向保证金池投入一定比例的交易利润。
步骤1中,候选公证人组的初始化、加入以及退出机制过程如下:
1)通过智能合约分别在区块链A和区块链B为公证人组分别创建保证金池账户,由公证人组内所有成员共同维护。
2)同时拥有区块链A和区块链B账户的节点可以申请加入公证人组。新申请加入公证人组的节点分别向公证人组在区块链A和区块链B的保证金池账户以交易的形式转入资产FA和FB,并在公证人组申请表(如表1所示)中分别填入对应的交易ID和账户ID,并将申请表分别通过其在两条链的账户在公证人组内广播,公证人组节点在分别通过两条链上的账户验证收到的两份申请表清单,将信息一致的清单中缴纳保证金的账户进行关联和保存。
表1公证人组申请表
区块链A的保证金缴纳交易ID 区块链B的保证金缴纳交易ID
申请节点在区块链A的账户ID 申请节点在区块链B的账户ID
3)公证人节点如若想要退出公证人组,需要在公证人组内发起申请,待公证人组确定该节点没有正在进行或未完成的跨链交易后允许该节点退出公证人组,并在公证人组内广播;
4)如果某一节点在承担某次跨链交易过程中,存在虚假交易,那么公证人组将该节点从公证人组剔除,由第一公证人分别在两条区块链进行广播,通知该节点为恶意节点,且已被剥夺参与跨链交易的权利。
如图2所示,步骤2中,发送请求交易清单的过程,具体步骤如下:
1)源节点将请求交易清单(如表2所示)打包发送至向第一公证人;
表2请求交易清单
Figure BDA0002217045320000071
2)第一公证人转发请求交易清单至目标节点;
3)目标节点查看请求清单中的具体交易内容,决定是否接受此次交易。如果接受此次交易,在交易清单进行签名。如果不同意此次交易,在目标节点意见处写明拒绝原因;
4)将请求交易清单发送至第一公证人;
5)第一公证人在公证人组内广播目标节点返回的交易清单。如果交易清单中包含目标节点的签名,则在公证人组内进行竞选充当此次交易的真实公证人,并将真实公证人的信息写入请求清单;如果交易清单不包含目标节点签名或者未选出真实公证人,则在请求清单的公证人组意见处说明拒绝此次交易的原因。
6)第一公证人将请求清单返回至源节点.
如图3所示,步骤3中,成功跨链交易的过程,具体步骤如下:
1)源节点则在其所在的源区块链上发起一次与真实公证人的交易,并在交易清单(如表3所示)附上此次交易在源链上的交易号;
表3交易清单
Figure BDA0002217045320000081
2)源节点将交易清单转发至真实公证人,转发的包表示如下:
PACKAGE(T1)
其中T1即为交易清单,如表3所示;
3)真实公证人将收到的交易清单在公证人组内进行广播,真实公证人根据源链交易号到源链查询该交易,若该交易在源链已被确认,则真实公证人在目标链发起与目标节点进行的交易,并将此交易号写入交易清单;反之,真实在公证人组内广播在源链无此交易,则由公证人组进行审核,如果经过审核确实在源链查不到此交易或者交易内容与交易清单不相符,则由真实公证人在交易清单进行备注,返回给源节点;如果公证人组审核通过,则由第一公证人将公证人组查询到的交易信息发送给真实公证人,让其重新确认,并继续完成跨链交易;
4)真实公证人将交易清单T1发送至目标节点;
5)目标节点根据交易号查询交易在目标链是否被确认。若该交易在目标链上已被确认且交易内容与交易清单内容一致,目标链在交易清单进行签名。反之,不进行签名;
6)目标节点在一定时间内将交易清单转发至真实公证人;
7)如果真实公证人在一定时间收到目标节点发送的交易清单,且交易清单包含目标节点签名,则真实公证人向第一公证人转发交易清单,由第一公证人进行验证,并在公证人组内广播该交易清单以及验证结果。验证通过后,真实公证人向保证金池存入一定比例交易利润,最后由第一公证人在交易清单写入公证人组签名,之后再由真实公证人转发至源节点;如果真实公证人在规定时间内未收到目标节点返回的交易清单,或交易清单不包含目标节点签名,真实公证人在公证人组内广播该消息,公证人组根据交易清单的交易号到目标链查询该交易是否已经被确认且交易内容与交易清单内容一致。如果确认该交易已经在目标链被确认,且交易内容无误,则在交易清单备注;如果未查询到此交易,要求真实公证人在一定时间内重新在目标链发起交易;如果在一段时间内真实公证人重新发起交易失败,公证人组对该交易发起补救事务(RemedyTx)。公证人组从保证金池取出等价资金,在目标链发起和目标节点的交易,并将交易号写入交易清单,之后转发至源节点;
8)真实公证人返回交易清单至源节点。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (8)

1.一种基于公证人组的跨区块链交互方法,其特征在于,该方法具体包括以下步骤:
S1:候选公证人组的初始化、加入以及退出机制;
S2:预交易阶段:源节点发送交易请求至公证人组和目标节点,公证人组根据目标节点是否在请求交易清单签名对源节点的请求进行应答;所述源节点为交易发起点,所述目标节点为交易目标对象;
S3:正式交易阶段:源节点发送具体交易清单至公证人组和目标节点,公证人组返回此次交易结果至源节点,并根据交易结果决定是否向保证金池投入一定比例的交易利润;具体包括:
S31:若公证人组同意进行此次交易即目标节点在请求交易清单签名且公证人组成功竞选出真实公证人节点,源节点则在其所在的源区块链上发起一次与真实公证人的交易,并在交易清单附上此次交易在源链上的交易号,将请求交易清单转发至真实公证人;反之,重新向公证人组发起交易请求;
S32:真实公证人将收到的交易清单在公证人组内进行广播,真实公证人根据源链交易号到源链查询该交易,若该交易在源链已被确认,则真实公证人在目标链发起与目标节点进行的交易,并将此交易号写入交易清单;反之,真实公证人组内广播在源链无此交易,则由公证人组进行审核,如果经过审核,在源链查不到此交易或者交易内容与交易清单不相符,则由真实公证人在交易清单进行备注,返回给源节点;如果公证人组审核通过,则由第一公证人将公证人组查询到的交易信息发送给真实公证人,让其重新确认,并继续完成跨链交易;
S33:真实公证人将交易清单发送至目标节点,目标节点根据交易号查询交易在目标链是否被确认;若该交易在目标链上已被确认且交易内容与交易清单内容一致,目标链在交易清单进行签名,并在一定时间内将交易清单转发至真实公证人;反之,目标节点不返回交易清单;
S34:如果真实公证人在一定时间收到目标节点发送的交易清单,且交易清单包含目标节点签名,则真实公证人向第一公证人转发交易清单,由第一公证人进行验证,并在公证人组内广播该交易清单以及验证结果;验证通过后,真实公证人向保证金池存入一定比例交易利润,最后由第一公证人在交易清单写入公证人组签名,之后再由真实公证人转发至源节点;
S35:如果真实公证人在规定时间内未收到目标节点返回的交易清单,或交易清单不包含目标节点签名,真实公证人在公证人组内广播该消息,公证人组根据交易清单的交易号到目标链查询该交易是否已经被确认且交易内容与交易清单内容一致;如果确认该交易已经在目标链被确认,且交易内容无误,则在交易清单备注;如果未查询到此交易,要求真实公证人在一定时间内重新在目标链发起交易;
S36:如果在一段时间内真实公证人重新发起交易失败,公证人组对该交易发起补救事务;公证人组从保证金池取出等价资金,在目标链发起和目标节点的交易,并将交易号写入交易清单,之后转发至源节点;
S37:根据交易结果对此次交易的参与节点进行忠诚度值计算。
2.根据权利要求1所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S1具体包括以下步骤:
S11:通过智能合约分别在区块链A和区块链B为公证人组分别创建保证金池账户,由公证人组内所有成员共同维护;
S12:同时拥有区块链A和区块链B账户的节点申请加入公证人组;新申请加入公证人组的节点分别向公证人组在区块链A和区块链B的保证金池账户以交易的形式转入资产FA和FB,并在公证人组申请表中分别填入对应的交易ID和账户ID,并将公证人组申请表分别通过其所在两条链的账户在公证人组内广播,公证人组节点在分别通过两条链上的账户验证收到的两份公证人组申请表清单,将信息一致的清单中缴纳保证金的账户进行关联和保存;
S13:公证人组节点若想退出公证人组,需要在公证人组内发起申请,待公证人组确定该节点没有正在进行或未完成的跨链交易后允许该节点退出公证人组,并在公证人组内广播;
S14:如果某一节点在承担某次跨链交易过程中,存在虚假交易,那么公证人组将该节点从公证人组剔除,由第一公证人分别在两条区块链进行广播,通知其他节点为恶意节点,且已被剥夺参与跨链交易的权利。
3.根据权利要求1所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S2具体包括以下步骤:
S21:源节点向第一公证人发送请求交易清单,第一公证人向在线的候选公证人节点广播预交易信息,并由第一公证人转发请求交易清单至目标节点;
S22:目标节点决定是否接受此次交易,如果接受,则在请求交易清单的目标节点签名处进行签名,反之在目标节点的意见处说明拒绝原因,将请求清单返回至公证人组;
S23:第一公证人根据目标节点的返回的请求交易清单决定是否在候选公证人组内进行竞选充当此次交易的真实公证人;若进行公证人竞选,将选出的公证人信息写入请求交易清单,通过第一公证人发送至源节点;反之,在请求交易清单写入拒绝请求原因并由第一公证人返回至源节点。
4.根据权利要求3所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S22具体包括以下步骤:
S221:目标节点解包公证人组发送的请求清单包,根据请求交易清单的交易内容,决定是否接受此次交易,如若接受,则在请求交易清单内进行签名;反之,不进行签名,在目标节点意见处进行说明;解包表示如下:
UNPACKAGE(Req),Req∈τ
其中,τ是源节点、目标节点、真实公证人、第一公证人这四个节点中任意节点发出的请求交易清单;
S222:将请求交易清单打包发送至公证人组。
5.根据权利要求3所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S23具体包括以下步骤:
S231:第一公证人将目标节点返回的请求解包后,查看是否有目标节点的签名,有则将请求内容广播给所有在线的公证人节点;反之,直接将目标节点返回的请求包转至源节点;
S232:如果目标节点已签名,则第一公证人在公证人组内所有在线节点间广播交易清单,随后公证人组内进行真实公证人竞选;
S233:如果成功选出真实公证人,则由第一公证人将担任此次交易公证人在源链A和目标链B的账户写入请求交易清单,并加上公证人组签名,打包返回给源节点;反之,则填写公证人组意见,打包后返回给源节点;
S234:如果第一公证人被选为真实公证人,则由忠诚度排名第二的节点充当此次交易的第一公证人,并由真实公证人在公证人组内广播这一消息。
6.根据权利要求1所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S36具体包括以下步骤:
S361:如果一个公证人两次发起交易失败,则会触发公证人组的智能合约来发起补救事务,公证人组根据交易清单的交易内容从保证金池在目标链的账户发起一笔与目标节点的交易,并将交易号写入交易清单,由第一公证人返回至源节点;此外,将真实公证人节点标记为不诚信节点,从公证人组剔除,不允许其再次参与跨链交易;
S362:如果第二次发起交易成功,待真实公证人节点向保证金池投入要求比例的利润后,由第一公证人在交易清单写入公证人组签名,转发至真实公证人,最后由真实公证人转发至源节点。
7.根据权利要求1所述的一种基于公证人组的跨区块链交互方法,其特征在于,所述步骤S37具体包括以下步骤:
S371:第一公证人向候选公证人组内节点广播交易结果,并根据交易结果对此次交易的参与节点进行忠诚度值进行增减;公证人的信誉值增加根据其原有信誉值调整其增加值,即原有信誉值越高,增加越缓慢,反之越快:
S372:一个跨链交易成功执行,其他协助审核节点获得一定信誉值,真实公证人除了获取一定资金奖励,还会获取其他协助节点双倍信誉值,阻碍审核节点则会失去一定信誉值;
S373:对于公证人组审核失误,导致目标链拒绝交易的情况;如果在这个交易中真实公证人在审核过程中持反对意见,则公证人信誉值不变,反之信誉值减少,且至少不可充当若干次交易的真实公证人;对于其他公证人节点,持反对意见的节点增加一定信誉值,反之减少一定信誉值。
8.根据权利要求2~7中任一项所述的一种基于公证人组的跨区块链交互方法,其特征在于,公证人组申请表包括区块链的保证金缴纳交易ID和申请节点在区块链的账户ID;
所述请求交易清单包括源节点地址、真实公证人在源链和目标链地址、目标节点地址、源节点签名、候选公证人组签名、目标节点签名、候选公证人组意见、目标节点意见和交易内容;
所述交易清单包括源节点地址、真实公证人在源链和目标链地址、目标节点地址、源节点签名、源链交易号、真实公证人签名、候选公证人组签名、目标节点签名、目标链交易号、交易内容、补救事务公证人签名、补救事务时间和备注栏。
CN201910919088.XA 2019-09-26 2019-09-26 一种基于公证人组的跨区块链交互方法 Active CN110689434B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910919088.XA CN110689434B (zh) 2019-09-26 2019-09-26 一种基于公证人组的跨区块链交互方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910919088.XA CN110689434B (zh) 2019-09-26 2019-09-26 一种基于公证人组的跨区块链交互方法

Publications (2)

Publication Number Publication Date
CN110689434A CN110689434A (zh) 2020-01-14
CN110689434B true CN110689434B (zh) 2023-03-21

Family

ID=69110418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910919088.XA Active CN110689434B (zh) 2019-09-26 2019-09-26 一种基于公证人组的跨区块链交互方法

Country Status (1)

Country Link
CN (1) CN110689434B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111090891B (zh) * 2020-03-23 2020-06-19 卓尔智联(武汉)研究院有限公司 一种基于区块链的公证人选取方法及系统
CN112651724A (zh) * 2020-04-28 2021-04-13 北京邮电大学 跨链交互方法、装置和系统
CN111582845A (zh) * 2020-04-30 2020-08-25 北京金山云网络技术有限公司 区块链的跨链交易方法、装置以及电子设备
CN112214797B (zh) * 2020-05-22 2021-10-26 腾讯科技(深圳)有限公司 数据处理方法、装置、设备、区块链系统及存储介质
CN112118292A (zh) * 2020-08-13 2020-12-22 北京新盛云佳科技有限公司 用于跨链通信的方法、装置、网络节点和存储介质
CN112116472A (zh) * 2020-09-18 2020-12-22 上海计算机软件技术开发中心 区块链跨链交易模型、方法
CN112532393A (zh) * 2020-11-20 2021-03-19 杭州趣链科技有限公司 一种跨链交易的验证方法、中继链节点设备及介质
CN112637127B (zh) * 2020-11-23 2022-05-13 北京邮电大学 一种跨区块链通信方法及装置
CN112507393B (zh) * 2020-12-10 2024-01-30 浙商银行股份有限公司 一种保障区块链跨链事务一致性的方法
WO2022195569A1 (en) * 2021-03-19 2022-09-22 R3 Ltd. Internetwork swapping of assets
CN113179168B (zh) * 2021-04-22 2022-07-08 山东大学 一种区块链的跨链交互方法
CN113904869B (zh) * 2021-11-10 2024-04-19 深圳前海微众银行股份有限公司 一种区块链中恶意节点的检测方法及区块链
CN114363050B (zh) * 2021-12-31 2022-11-11 北京交通大学 基于公证人和哈希锁定的去中心化跨链协议通信方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107612914A (zh) * 2017-09-20 2018-01-19 重庆邮电大学 一种基于参考节点策略的Ad Hoc网络安全信任方法
CN108256864A (zh) * 2018-02-13 2018-07-06 中链科技有限公司 一种区块链之间的跨链联盟的建立及通信方法、系统
CN108768659A (zh) * 2018-05-24 2018-11-06 深圳前海益链网络科技有限公司 一种不同区块链网络之间Token资产跨链转移系统
CN109345387A (zh) * 2018-09-04 2019-02-15 湖南宸瀚信息科技有限责任公司 区块链跨链交易方法、跨链通信装置及存储介质
CN109426949A (zh) * 2017-08-29 2019-03-05 华为技术有限公司 一种跨链交易方法及装置
CN109636598A (zh) * 2018-11-02 2019-04-16 符安文 一种基于区块链的数据交互方法
CN109993531A (zh) * 2019-04-01 2019-07-09 辽宁大学 一种支持跨区块链交易的数据验证方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7925878B2 (en) * 2001-10-03 2011-04-12 Gemalto Sa System and method for creating a trusted network capable of facilitating secure open network transactions using batch credentials
WO2018006072A1 (en) * 2016-06-30 2018-01-04 Clause, Inc. Systems and method for forming, storing, managing,and executing contracts

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426949A (zh) * 2017-08-29 2019-03-05 华为技术有限公司 一种跨链交易方法及装置
CN107612914A (zh) * 2017-09-20 2018-01-19 重庆邮电大学 一种基于参考节点策略的Ad Hoc网络安全信任方法
CN108256864A (zh) * 2018-02-13 2018-07-06 中链科技有限公司 一种区块链之间的跨链联盟的建立及通信方法、系统
CN108768659A (zh) * 2018-05-24 2018-11-06 深圳前海益链网络科技有限公司 一种不同区块链网络之间Token资产跨链转移系统
CN109345387A (zh) * 2018-09-04 2019-02-15 湖南宸瀚信息科技有限责任公司 区块链跨链交易方法、跨链通信装置及存储介质
CN109636598A (zh) * 2018-11-02 2019-04-16 符安文 一种基于区块链的数据交互方法
CN109993531A (zh) * 2019-04-01 2019-07-09 辽宁大学 一种支持跨区块链交易的数据验证方法

Also Published As

Publication number Publication date
CN110689434A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN110689434B (zh) 一种基于公证人组的跨区块链交互方法
CN108256864B (zh) 一种区块链之间的跨链联盟的建立及通信方法、系统
CN107301600B (zh) 一种跨链交易的区块链互联网模型的核心构建方法
CN107147735B (zh) 一种基于分层结构的分布式账本系统
CN110599181B (zh) 基于区块链的数据处理方法、装置和设备及存储介质
Xiong et al. A notary group-based cross-chain mechanism
US11902448B2 (en) Hybrid blockchain architecture with computing pool
CN110659906B (zh) 票据信息处理方法、相关设备及介质
EP3958502A1 (en) Computer implemented method and system
CN110533405B (zh) 跨境移动支付的信息处理方法、装置、系统及存储介质
CN113746858B (zh) 一种基于可验证随机函数的跨链通信方法
CN112163954B (zh) 基于区块链的交易方法及装置
CN114548989B (zh) 一种基于nfr的权益管理系统
CN111767569A (zh) 区块链的访问授权方法及节点
CN109447605A (zh) 一种基于区块链的链货币兑换方法、装置、设备和介质
CN112232828A (zh) 一种电网数据交易方法、系统
CN113255014B (zh) 一种基于区块链的数据处理方法以及相关设备
CN111368283A (zh) 一种基于区块链的公益善款数据存储方法及系统
CN115456769A (zh) 基于区块链系统的融资授信传递的方法和区块链系统
CN113011879B (zh) 关联交易数据处理方法、装置及服务器
CN112565370B (zh) 基于无线通信与区块链场景的计算结果验证方法及系统
CN112884562B (zh) 基于区块链的抵押处理方法、装置及可读存储介质
CN110417917B (zh) 用于票据流转的方法、系统、计算机设备和介质
CN116452207A (zh) 一种基于中继链的跨链组合支付方法
CN108629691A (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