CN111882320A - 一种支持两轮通信的匿名多跳锁定方法 - Google Patents

一种支持两轮通信的匿名多跳锁定方法 Download PDF

Info

Publication number
CN111882320A
CN111882320A CN202010716750.4A CN202010716750A CN111882320A CN 111882320 A CN111882320 A CN 111882320A CN 202010716750 A CN202010716750 A CN 202010716750A CN 111882320 A CN111882320 A CN 111882320A
Authority
CN
China
Prior art keywords
user
payment
channel
transaction
condition
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.)
Pending
Application number
CN202010716750.4A
Other languages
English (en)
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.)
Zhejiang Gongshang University
Original Assignee
Zhejiang Gongshang University
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 Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CN202010716750.4A priority Critical patent/CN111882320A/zh
Publication of CN111882320A publication Critical patent/CN111882320A/zh
Pending legal-status Critical Current

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/383Anonymous user system
    • 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/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • 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
    • 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

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本发明公开了一种支持两轮通信的匿名多跳锁定方法,包括如下步骤:S101,打开支付通道,在两个用户之间建立支付通道;S102,关闭支付通道,关闭两个用户之间的支付通道;S103,链下多跳支付,包括如下步骤:S201,初始化;S202,建立支付锁定;S203,释放支付锁定。不需要确定具体支付路径,付款方可以任意选择与某个相邻的中介建立支付,实现了支付路径的匿名;用户通过使用有寿命限制的智能合约,避免了付款方与中介的信任问题,实现参与用户之间的公平交换。

Description

一种支持两轮通信的匿名多跳锁定方法
技术领域
本发明涉及区块链及密码学技术领域,尤其是涉及了一种支持两轮通信的匿名多跳锁定方法。
背景技术
链下支付作为比特币系统的一种重要扩容手段,随着区块链技术的流行,也变得流行起来。通过使用HTLC(Hash Time Lock Contracts哈希时间锁合约)技术,付款方可以利用一个或者多个链下支付通道形成支付路径,实现间接链下支付。即使付款方与收款方之间不存在直接支付通道,也可以利用已经存在的其他支付通道实现链下支付。但是一条支付路径中,HTLC中的支付约束条件是一致的,用户隐私难以得到保护。
在链下支付中,匿名支付并不是一个新问题。目前已经有很多这样的协议和系统被提出:早期方案中,各个用户节点利用不可信中介实现匿名支付,但是中心化的方案存在效率低下,容易单点失败,匿名性低等问题,不适合现有的链下匿名支付的需求。近期的方案大多是以闪电网络作为基础,通过修改同一条支付路径上,不同支付通道内的支付约束条件来实现匿名性。这些系统的交易流程一般为:付款方首先需要根据区块链上的已知信息寻找合适的支付路径。确认支付路径后,付款方需要分别计算每条支付通道上的支付约束条件,并依次通知每个中介与收款方相关的支付信息——前、后中介的身份,对应的支付约束条件,约束的部分激活条件,以及证明该部分激活条件可以用于计算支付约束条件相对应完整激活条件的零知识证明(其中收款方只需要知道前一个支付约束条件与对应的完整激活条件)。随后,付款方按照选定的支付路径开始与中介建立满足条件支付的智能合约(如果收款用户给出的信息满足约束条件,收款用户收到合约中的资金,付款用户收到付款用户给出的信息),中介收到相应的满足条件支付后,会按照付款方指定的路径,继续向下一个中介转发支付,直到收款方收到相应的条件支付合约。收款方收到条件支付合约后,会使用条件支付合约的激活条件向中介索要资金。中介收到激活条件后,会利用部分激活条件和收到的激活条件进行计算,得出他需要的激活条件,从而激活他与上一个中介之间的条件支付合约,获得资金。在这个过程中,交易的转发由这些不可信的中介完成。但是,这种类型的方案在实用性方面存在一定的局限性:
1、这种系统需要付款方提前指定支付路径,虽然可以最大限度地节省手续费,但是付款方前期计算支付条件与对应的零知识证明,并与其他用户进行通信会造成大量的通信与计算开销,降低系统效率。
2、付款方根据本地拓扑图选择支付路径,可能会遇到选定的通道余额不足的情况,这时中介不能灵活更改支付路径,只能等待合约超时,由付款方重新发起支付,会产生较大的时间开销。
为了缓解上述现有匿名多跳支付系统存在的问题,有人基于新的支付通道技术virtual channel建立了新型支付通道网络。虽然方案从只支持跨一个中介支付到支持跨越多个中介进行支付,方案的实用性有所提升,但这些基于虚拟支付通道(virtualpayment channel)技术提出新方案仅仅支持在支付频次、支付金额等方面进行匿名,但是基于路径的匿名仍然需要继续研究。
具体来说,1)在闪电网络的基础上增加一轮通信,不仅需要确保这轮额外匿名通信的安全性,而且为方案增加了额外的通信和计算开销。2)使用虚拟支付通道技术,虽然可以对中介隐藏付款方与收款方之间的交易金额、交易频次、交易时间等信息,但是在建立虚拟支付通道过程中,支付路径上的各个中介都会了解到完整的支付路径信息(中介会知道使用这条虚拟支付通道的两个用户是谁),与我们所渴求的匿名性不符。
发明内容
为解决现有技术的不足,实现高效支付的同时保护隐私的目的,本发明采用如下的技术方案:
一种支持两轮通信的匿名多跳锁定方法,包括如下步骤:
S101,打开支付通道,在两个用户之间建立支付通道;
S102,关闭支付通道,关闭两个用户之间的支付通道;
S103,链下多跳支付,包括如下步骤:
S201,初始化,付款方u0生成质数阶双线性群并初始化为G1、G2和G3,其中G1、G2和G3是三个阶为素数p的群,且G1×G2→G3,记g为G1的生成元,h为G2的生成元,并设
Figure BDA0002598448940000021
为大小不高于素数q的整数循环群,付款方u0与收款方un合作生成初始支付条件
Figure BDA0002598448940000022
其中x0和xn是由用户u0和用户un分别从整数循环群
Figure BDA0002598448940000023
中随机选取的;
S202,建立支付锁定,对于
Figure BDA0002598448940000024
用户ui收到用户ui-1建立的智能合约后,从整数循环群
Figure BDA0002598448940000025
中随机选取一个整数xi,用户ui对收到用户ui-1的支付条件
Figure BDA0002598448940000026
随机化:
Figure BDA0002598448940000027
Figure BDA0002598448940000028
并与下一个用户ui+1建立满足支付的条件:用户ui给用户ui+1一个随机数
Figure BDA0002598448940000029
如果用户ui+1能够反馈的一个随机数
Figure BDA00025984489400000210
使得
Figure BDA00025984489400000211
则用户ui+1可以收到与用户ui约定的
Figure BDA00025984489400000212
个比特币,所述的v是资金数额,所述的f是手续费,所述的
Figure BDA00025984489400000213
Figure BDA00025984489400000214
Figure BDA00025984489400000215
为Li的两个元素。
S203,释放支付锁定,用户un收到用户un-1的支付条件Ln-1后,先对支付金额进行确认,通过支付条件
Figure BDA0002598448940000031
和随机数xn计算释放条件
Figure BDA0002598448940000032
Figure BDA0002598448940000033
为Ln-1的两个元素,对于
Figure BDA0002598448940000034
用户ui收到用户ui+1的释放条件Ri+1后,通过释放条件Ri+1和随机数xi计算出Li-1的释放条件
Figure BDA0002598448940000035
直到用户u0与用户u1建立的支付锁定被释放,支付完成。
不需要确定具体支付路径,付款方可以任意选择与某个相邻的中介建立支付,每个中介收到支付条件后,都随机选择下个用户,确保路径中与下一个用户不相邻的用户对已经确定的路径一无所知,实现了支付路径的匿名;用户通过使用有寿命限制的智能合约,避免了付款方与中介的信任问题,实现参与用户之间的公平交换。
付款方通过区块链上的支付通道搭建本地拓扑图,便于付款方快速寻找符合中介节点最少、手续费最低等条件的支付路径,帮助付款方更快地决定使用间接链下支付还是使用重新建立支付通道,从而减少交易时间,提高交易效率。
所述的S103,支持建立双向支付通道,对两个端点A、B创建支付通道时,将通道内的资金记录为
Figure BDA0002598448940000036
n次支付后,通道内资金更新为
Figure BDA0002598448940000037
同时,为每次链下交易添加序号。单向通道中,用户A、B之间实现相互支付需要两条不同方向的支付通道,甚至反向付款需要借助其他中介来实现,而双向通道中,可以直接进行反向支付;单向通道资金的流向是恒定的,一旦通道内资金用完,该通道就不可继续使用,而在双向通道中,即使一方暂时没有可支配的资金,另一方也可以使用这条通道进行支付,同时增加了通道的使用时间、支付次数,延长了使用寿命,从而节约了因通道关闭而产生的上链交易手续费。
所述的S101,只有两个用户之间建立了支付通道,才可以进行链下的支付,当用户u1决定与用户u2打开一条支付通道时,用户u1会将其打算托管的资金数额v、通道的使用寿命t、其他用户使用通道时需要支付的手续费f告知用户u2,如果用户u2同意与用户u1打开支付通道,用户u1和用户u2先协商建立通道内资金的赎回交易,确保即使因为不可控原因,二者没有发生交易,用户u1一定可以收回自己托管的资金,用户u1再将这次托管交易上链,并标识当前通道为
Figure BDA0002598448940000038
所述的S102,当支付通道满足关闭条件时,第一用户向第二用户发送分配交易,当第二用户同意该分配策略时,在分配交易上签字,第一用户收到第二用户的签名后,将交易以及签名保存在本地,等下一次交易发生后,更新本地保存的分配策略和对应的有效签名。直到关闭条件被满足,第一用户将最新的交易上传至区块链,完成通道资金的结算,此时该支付通道正式关闭。
所述的关闭条件包括支付通道内金额用尽,支付通道到期,用户彼此不再打算继续使用这条支付通道。
本发明的优势和有益效果在于:
将配对技术与智能合约技术相结合,不需要确定具体支付路径,付款方可以任意选择与某个相邻的中介建立支付,避免了付款方指定支付路径,节省了通信开销与计算量,实现了支付路径的匿名;用户通过使用有寿命限制的智能合约,避免了付款方与中介的信任问题,实现参与用户之间的公平交换。
附图说明
图1是本发明中单次支付流程图。
图2是本发明中用户A的本地拓扑图。
图3a是本发明中单向支付示意图。
图3b是本发明中双向支付示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
传统基于密码货币的匿名链下支付方法,存在单点失败,交易效率低下,实用性较低、需要一轮额外通信等问题。对此,我们将配对技术、智能合约、与闪电网络模型相结合,可以在两轮通信的情况下,保证链下支付的匿名性,从而完成对比特币支付的扩展。简单来说,我们使用配对技术代替了传统方案中使用的同态单向函数,使得每个中介可以自主选取随机数对处于保密中的支付条件进行随机化,免去了传统方案中,需要付款方指定支付路径的情况,节省了通信开销。智能合约实现了支付和信息交互的公平性。确保中介和收款方只有提供了正确的支付条件,才能收到相应的资金,而付款方和中介只要支付了款项,一定可以收到正确的支付条件。
在支付条件有效的保证下保证了交换的公平性,我们提出的两轮通信匿名多跳锁定方法满足所有参与用户都可以使用收到的有效支付条件计算出新的支付条件。该方法保证,只要一条支付路径中存在一个诚实节点,恶意中介就没有办法判断两个支付条件是否属于同一个支付路径中。
如图1所示,一个节点可以在不同交易中扮演不同的角色,每个角色相应的职责分为:
1、付款方:
在一笔交易中,只负责支出自己的资金给他人的用户在此次交易中被称为付款方,收款方在支付开始前,会与付款方就交易条件达成一致,确保这笔资金只能由指定的收款方取出,随后,付款方沿着支付路径与中介拟定相应的智能合约,用于保证中介使用正确的支付条件,一定可以取走付款方托管在智能合约中的资金。
2、收款方:
在一笔交易中,只负责接收他人转发的资金,不需要将受到的资金再次转发给其他人的用户在此次交易中被称为收款方,收款方需要通过提前对支付条件随机化,确保这条支付路径中的所有资金,只有交易成功,中介和收款方都收到资金,或交易失败,所有资金都原路退回两种情况。
3、中介:
在一笔交易中,负责将收到的资金转发给其他节点的节点在此次交易中被称为中介,中介收到某个用户的一笔支付后,会按照要求将支付转发给其他用户,在这个过程中,中介会从收到的资金中扣除适当资金作为转发此次交易的手续费。
为了便于描述,我们假设下面举例中支付通道是单向的,匿名多跳锁定的支付方法包括如下步骤:
1、打开支付通道:
只有两个用户之间建立了支付通道,才可以进行链下的支付。支付通道本质上是一个2-of-2签名的比特币公共钱包,这个钱包内的资金需要通道双方同时签名才可以成功使用,当用户u1决定与用户u2打开一条支付通道时,用户u1会告知用户u2他打算托管的资金数额v,通道的使用寿命t,其他用户使用通道时需要支付的手续费f,如果用户u2同意与用户u1打开支付通道,那么用户u1和用户u2会先协商建立通道内资金的赎回交易,确保即使因为不可控原因,二者没有发生交易,用户u1一定可以收回自己托管的资金。随后,用户u1将这次托管交易上链,并标识当前通道为
Figure BDA0002598448940000051
2、关闭支付通道:
支付通道内金额用尽,或者支付通道到期,或者用户u1与用户u2不在打算继续使用这条支付通道,就会对这条支付通道发起关闭操作,任何一条支付通道的关闭,都必须经过通道两端用户的同意,当用户u1打算关闭与用户u2之间的通道
Figure BDA0002598448940000052
它会向用户u2发送分配交易,如果用户u2同意在这次分配策略,就会在这笔分配交易上签字,用户u1收到用户u2的签字后,就可以将交易上传至区块链,完成通道资金的结算,从而实现支付通道的关闭。
3、链下多跳支付:
在链下支付阶段,如果付款方与收款方之间不存在链下支付通道,就需要利用其他链下支付通道转发交易,这个过程中,我们的方案不需要确定具体支付路径,付款方可以任意选择与某个相邻的中介建立支付(按照六人定律,两人同属于一个支付网络,必然可以找到一条从一方到另一方的支付路径),其次,为了避免付款方与中介的信任问题,用户需要使用有寿命限制的智能合约实现参与用户之间的公平交换。
所有的支付通道都需要通过链上交易完成,因此用户可以在区块链上为支付通道搭建一个本地拓扑图,便于付款方快速寻找合适的支付路径。
如图2所示,区块链可以看做是一个公开的记账本,所有人都可以查询账本上的资金流动信息,用户A与用户B如果合作将部分资金暂时寄存在账户A→B中,账户A→B中的资金需要用户A和用户B都同意才可以取出,而在区块链上,所有的合作寄存的记录都是可查的,假设经过整理后,区块链上存在以下合作寄存记录:A→B,B→C,C→D,D→E,A→F,F→G,G→D,E→G,B→H,H→E,用户A可以将合作寄存记录绘制成有向图(即本地拓扑图)保存在本地,方便在进行支付时依据一些判定条件(中介最少、手续费最低等条件)选择具体的支付路径。例如:用户A要向用户E进行付款,用户A可以根据拓扑图得知,存在3条可以从用户A到用户E的支付路径:A→B→H→E,A→B→C→D→E,A→F→G→D→E,其中A→B→H→E中使用到的中介节点个数最少,选择这条路径可以减少用户A的计算量和通信时间,提高交易效率。
确认付款方与收款方都存在于完整的一次多跳链下的支付一共分为3个步骤:
1、初始化:
付款方u0生成质数阶双线性群并初始化为G1、G2和G3,其中G1、G2和G3是三个阶为素数p的群,且G1×G2→G3,记g为G1的生成元,h为G2的生成元,并设
Figure BDA0002598448940000061
为大小不高于素数q的整数循环群。付款方u0与收款方un合作生成初始支付条件
Figure BDA0002598448940000062
其中x0和xn是由用户u0和用户un从整数循环群
Figure BDA0002598448940000063
中随机选取的。
2、建立支付锁定:
初始化完成后,用户u0会与用户u1建立满足条件支付,与用户u1约定,如果用户u2可以提供满足给定条件的信息,用户u2就可以取出存放在合约中的比特币,同理,对于
Figure BDA0002598448940000064
用户ui收到用户ui-1建立的智能合约后,作为中介的用户ui会从整数循环群
Figure BDA0002598448940000065
中随机选取一个整数xi,对收到的支付条件
Figure BDA0002598448940000066
进行随机化:
Figure BDA0002598448940000071
并与下一个用户ui+1建立满足条件支付:用户ui给用户ui+1一个随机数
Figure BDA0002598448940000072
如果用户ui+1能够反馈的一个随机数
Figure BDA0002598448940000073
使得
Figure BDA0002598448940000074
那么用户ui+1可以收到约定的
Figure BDA0002598448940000075
个比特币,所述的
Figure BDA0002598448940000076
Figure BDA0002598448940000077
为Li的两个元素。
3、释放支付锁定:
用户un收到来自用户un-1的支付条件Ln-1后,先对支付金额进行确认,确认无误后,利用支付条件
Figure BDA0002598448940000078
和随机数xn计算对应的释放条件
Figure BDA0002598448940000079
所述的
Figure BDA00025984489400000710
Figure BDA00025984489400000711
为Ln-1的两个元素。为方便表示,对于
Figure BDA00025984489400000712
用户ui收到用户ui+1给出的释放条件Ri+1后,都可以利用释放条件Ri+1和随机数xi计算出锁Li-1的释放条件
Figure BDA00025984489400000713
因此假设存在一个随机数,即释放条件
Figure BDA00025984489400000714
使得
Figure BDA00025984489400000715
直到用户u0与用户u1建立的支付锁定被释放,一次匿名多跳链下支付完成。
支付通道中的支付是一个满足条件支付,只有提前设定的条件满足,资金才能成功转移。根据配对的性质,对于用户ui
Figure BDA00025984489400000716
Figure BDA00025984489400000717
是两个随机数,且用户ui和用户ui+1根据已知的
Figure BDA00025984489400000718
Figure BDA00025984489400000719
无法求出xn,而xn是由收款方un随机选取的,因此,通过用户ui+1提供的释放条件
Figure BDA00025984489400000720
对于任意非付款方的用户ui,通过Ri+1计算新的释放条件
Figure BDA00025984489400000721
Figure BDA00025984489400000722
将Ri发给用户ui-1,当Ri满足
Figure BDA00025984489400000723
用户ui便可向用户ui-1索要之前约定的资金。
通过约束条件保证了用户un没有收到钱时,整个支付路径上的中介,均无法收到钱,所有的钱都会在交易到期以后,原路退回,所有的中介想要收到钱,必须成功帮助用户u0把这笔钱转给用户un,如果用户ui+1计算出的
Figure BDA00025984489400000724
代入
Figure BDA00025984489400000725
后仍成立,用户ui+1便可以向用户ui索要约定的资金,即通道内资金成功被转移(从用户ui转移到用户ui+1)。
如果需要实现双向支付,只需要修改支付通道对通道内资金的登记方式。
如图3所示,在单向通道中,A→B支付与B→A支付需要两条支付通道,B向A付款需要借助中介C→D→E来实现,而双向通道中,可以直接进行B→A的直接支付。此外,单向通道中,资金的流向是恒定的,一旦通道内资金用完,该通道就不可继续使用(没有可用资金),而在双向通道中,即使一方暂时没有可支配的资金,另一方也可以使用这条通道进行支付,同时延长了通道的使用寿命(使用寿命包括使用时间和支付次数)。对于支付通道而言,若通道不可用,就必须通过上链交易进行关闭,而区块链中,上链交易是需要手续费的,通道使用寿命越久,一次上链交易的手续费可以支持更多的交易次数,一定程度上可以收获是节约了手续费。
在上链交易时,单向支付通道只需要记录通道内付款方的当前可用余额,不需要分别记录通道两端各自的余额,通道创建时,可用余额就是通道内存储的总资金;通道关闭时,初始可用余额减去当前可用余额就是付款方支付给收款方的资金。双向支付通道需要记录通道两个端点分别持有的资金,创建支付通道时,记录通道
Figure BDA0002598448940000081
内资金为
Figure BDA0002598448940000082
n次支付后,通道
Figure BDA0002598448940000083
内资金更新为
Figure BDA0002598448940000084
需要为每次链下交易添加序号。当用户A恶意提交比较旧的交易记录试图关闭支付通道时,用户B可以提交序号更大的交易记录证明用户A的不诚实行为,在单向通道中,可以通过判断用户A的可用余额确定用户A是否诚实提交了最新的交易记录。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。

Claims (6)

1.一种支持两轮通信的匿名多跳锁定方法,其特征在于,包括如下步骤:
S101,打开支付通道,在两个用户之间建立支付通道;
S102,关闭支付通道,关闭两个用户之间的支付通道;
S103,链下多跳支付,包括如下步骤:
S201,初始化,付款方u0生成质数阶双线性群并初始化为G1、G2和G3,其中G1、G2和G3是三个阶为素数p的群,且G1×G2→G3,记g为G1的生成元,h为G2的生成元,并设
Figure FDA0002598448930000011
为大小不高于素数q的整数循环群,付款方u0与收款方un合作生成初始支付条件
Figure FDA0002598448930000012
其中x0和xn是由用户u0和用户un分别从整数循环群
Figure FDA0002598448930000013
中随机选取的;
S202,建立支付锁定,对于
Figure FDA0002598448930000014
用户ui收到用户ui-1建立的智能合约后,从整数循环群
Figure FDA0002598448930000015
中随机选取一个整数xi,用户ui对收到用户ui-1的支付条件
Figure FDA0002598448930000016
随机化:
Figure FDA0002598448930000017
Figure FDA0002598448930000018
并与下一个用户ui+1建立满足支付的条件:用户ui给用户ui+1一个随机数
Figure FDA0002598448930000019
如果用户ui+1能够反馈的一个随机数
Figure FDA00025984489300000110
使得
Figure FDA00025984489300000111
则用户ui+1可以收到与用户ui约定的
Figure FDA00025984489300000112
个比特币,所述的v是资金数额,所述的f是手续费,所述的
Figure FDA00025984489300000113
Figure FDA00025984489300000114
为Li的两个元素;
S203,释放支付锁定,用户un收到用户un-1的支付条件Ln-1后,先对支付金额进行确认,通过支付条件
Figure FDA00025984489300000115
和随机数xn计算释放条件
Figure FDA00025984489300000116
Figure FDA00025984489300000117
Figure FDA00025984489300000118
为Ln-1的两个元素,对于
Figure FDA00025984489300000119
用户ui收到用户ui+1的释放条件Ri+1后,通过释放条件Ri+1和随机数xi计算出Li-1的释放条件
Figure FDA00025984489300000120
直到用户u0与用户u1建立的支付锁定被释放,支付完成。
2.如权利要求1所述的一种支持两轮通信的匿名多跳锁定方法,其特征在于付款方通过区块链上支付通道的打开记录搭建本地拓扑图。
3.如权利要求1所述的一种支持两轮通信的匿名多跳锁定方法,其特征在于所述的S103,建立双向支付通道,当对两个用户A、B创建双向支付通道时,需要在所述的S101中,将通道内资金记录为
Figure FDA0002598448930000021
形式,分别表示用户A和用户B在创建通道时存入的资金,n次支付后,通道内资金更新为
Figure FDA0002598448930000022
表示当前通道内用户A与用户B分别持有的资金数目,同时,需要为每次链下交易添加序号。
4.如权利要求1所述的一种支持两轮通信的匿名多跳锁定方法,其特征在于所述的S101,只有两个用户之间建立了支付通道,才可以进行链下的支付,当用户u1决定与用户u2打开一条支付通道时,用户u1会将其打算托管的资金数额v、通道的使用寿命t、其他用户使用通道时需要支付的手续费f告知用户u2,如果用户u2同意与用户u1打开支付通道,用户u1和用户u2先协商建立通道内资金的赎回交易,用户u1再将这次托管交易上链,并标识当前通道为
Figure FDA0002598448930000023
5.如权利要求1所述的一种支持两轮通信的匿名多跳锁定方法,其特征在于所述的S102,当支付通道满足关闭条件时,第一用户向第二用户发送分配交易,当第二用户同意该分配策略时,在分配交易上签字,第一用户收到第二用户的签名后,将交易以及签名保存在本地,等下一次交易发生后,更新本地保存的分配策略和对应的有效签名,直到关闭条件被满足,第一用户将最新的交易上传至区块链,完成通道资金的结算,此时所述支付通道正式关闭。
6.如权利要求5所述的一种支持两轮通信的匿名多跳锁定方法,其特征在于所述的关闭条件包括支付通道内金额用尽,支付通道到期,用户彼此不再打算继续使用这条支付通道。
CN202010716750.4A 2020-07-23 2020-07-23 一种支持两轮通信的匿名多跳锁定方法 Pending CN111882320A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010716750.4A CN111882320A (zh) 2020-07-23 2020-07-23 一种支持两轮通信的匿名多跳锁定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010716750.4A CN111882320A (zh) 2020-07-23 2020-07-23 一种支持两轮通信的匿名多跳锁定方法

Publications (1)

Publication Number Publication Date
CN111882320A true CN111882320A (zh) 2020-11-03

Family

ID=73154671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010716750.4A Pending CN111882320A (zh) 2020-07-23 2020-07-23 一种支持两轮通信的匿名多跳锁定方法

Country Status (1)

Country Link
CN (1) CN111882320A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114493603A (zh) * 2020-11-11 2022-05-13 中移物联网有限公司 基于区块链网络的交易方法、装置及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114493603A (zh) * 2020-11-11 2022-05-13 中移物联网有限公司 基于区块链网络的交易方法、装置及电子设备

Similar Documents

Publication Publication Date Title
Lundqvist et al. Thing-to-thing electricity micro payments using blockchain technology
AU2018347195B2 (en) System and method for information protection
AU2018347196B2 (en) System and method for information protection
CN110310107B (zh) 基于区块链的结算方法、区块链节点和客户端
CA3040601A1 (en) System and method for information protection
CN111046437A (zh) 基于同构多链的区块链并行事务处理方法及系统、终端
CN109903027A (zh) 基于区块链的事件处理方法及装置、电子设备
CN110751468A (zh) 用于区块链扩展的多向状态通道方法、系统及介质
CN112150144A (zh) 一种基于跨节点多跳支付的区块链匿名交易方法
CN110378690A (zh) 匿名安全支付通道方法及装置
JP7270629B2 (ja) ブロックチェーンを使って資源を移転するためのシステムおよび方法
CN110751469A (zh) 一种基于智能合约的加密货币多通道支付方法
Tewari et al. Multiparty micropayments for ad hoc networks
Chakrabarti et al. A blockchain based incentive scheme for post disaster opportunistic communication over DTN
CN111882320A (zh) 一种支持两轮通信的匿名多跳锁定方法
Kurt et al. Lngate: Powering iot with next generation lightning micro-payments using threshold cryptography
CN114547695A (zh) 一种物联网中基于同态加密的区块链交易隐私保护方法
Guo et al. Multi-party Fair Exchange Protocol with Smart Contract on Bitcoin.
CN113411338B (zh) 一种基于状态通道的链上-链下协同的资源交易方法
Ying et al. xlumi: Payment channel protocol and off-chain payment in blockchain contract systems
AU2021105763A4 (en) An Anonymous Multi-hop Locking Method Supporting Two Rounds of Communications
Chen et al. A secure recharge scheme for blockchain payment channels
Khojasteh et al. A survey and taxonomy of blockchain-based payment channel networks
CN113627904B (zh) 一种基于区块链与概率支付的流媒体平台实现方法
CN114520716B (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