一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种区块链支付通道网络交易手续费分配方法及系统与流程

2021-12-07 20:52:00 来源:中国专利 TAG:


1.本发明涉及区块链交易的技术领域,更具体地,涉及一种区块链支付通道网络交易手续费分配方法及系统。


背景技术:

2.2008年,中本聪提出了数字货币——比特币,在全球掀起持续的热潮,其核心技术区块链技术成为重点研究方向。区块链是一种新兴的分布式基础架构和计算方式,由块链式数据结构、分布式节点共识算法、密码学和智能合约等实现了去中心化、公开透明、安全可靠、不可篡改等特性。然而,由于严格的共识验证和签名认证机制,再加上区块大小的限制,区块链处理事务的吞吐量较低,可扩展性较差。例如,比特币每秒最多处理7笔交易,验证并确认新交易平均需要10分钟,这样的吞吐量对于高并发事务是不可接受的,此时,支付通道作为一种高效的拓展方案诞生。
3.如2017年11月7日,中国发明专利(公布号:cn107330787a)中公开了一种高效安全的区块链链下高频交易支付方法及系统,首先交易方在链下建立一支付通道,然后创建约定资金池和交易锁定时间,在所述交易锁定时间内交易方通过多签名的方式更改上述约定资金池内的余额,在上述交易锁定时间到达后,则提交至区块链网络完成交易,即支付通道将区块链链上频繁且小额的交易转移到链下执行,交易双方节点分别放入初始资金来建立点到点的链下支付通道,建立通道的交易是在区块链上进行,然后允许它们私下进行资金交易和更新,中途的交易不需要在区块链上进行。当它们完成了所有的链下交易决定关闭通道,便可将最新的资金分配信息更新到区块链上并关闭支付通道。在整个过程中,只有创建和关闭支付通道这两个操作需要在区块链上进行,其余的交易信息由两个节点私下记录并改变,并通过智能合约(smart contract)和哈希时间锁合约(hashed time lock contract,简称htlc)、可撤序列成熟合约(revocable sequence maturity contract,简称rsmc)等协议来保障交易的原子性和安全性,避免广播和节点共识带来的时间延迟和额外的费用开销,提高了效能,增加了单位时间内的交易量。
4.从宏观的角度看,多个支付通道便可构成一个支付通道网络(payment channel network),例如比特币的闪电网络、以太坊的雷电网络等。在支付通道网络中,节点可以通过多跳路径来完成链下交易,即借助中间节点完成交易。随着支付通道数量的不断增加,支付通道网络的规模也会越来越大。因此,如何为一笔交易的发送方和接收方寻找一条可行且高效的交易路径,即交易路由问题,成为了支付通道网络中的关键问题。目前已有考虑资金倾斜程度的路由算法,但对区块链的支付通道网络中的交易手续费分配的问题的考虑有所欠缺,即在一次支付通道网络的交易中发送方需要给中间节点一定手续费作为帮助交易的报酬,从而提高效能和扩容性能,而通常做法是忽略这部分手续费或由参与的中间节点平均分配手续费,手续费分配方式不够合理,导致网络交易机制不够公平,无法吸引路径节点加入,不利于区块链网络交易效能的提升。


技术实现要素:

5.为解决当前区块链链下支付通道交易中手续费分配方式不合理,导致网络交易机制不够公平的问题,本发明提出一种区块链支付通道网络交易手续费分配方法及系统,在给定支付通道交易的交易路径和手续费的情况下,合理地分配各个中间路径节点的手续费,提高公平性,从而吸引更多的路径节点加入,使整体网络更加健壮,达到提升区块链网络交易效能的目的。
6.为了达到上述技术效果,本发明的技术方案如下:
7.一种区块链支付通道网络交易手续费分配方法,所述方法至少包括:
8.s1.确定交易的发送方与接收方、发送方与接收方之间的交易路径节点、支付通道资金参数及原htlc合约中路径节点之间的资金交易额度;
9.s2.从发送方至接收方的方向,依次获取路径节点的倾斜程度;
10.s3.根据路径节点的倾斜程度,由发送方计算每个中间路径节点的临时权重,根据临时权重计算总权重;
11.s4.根据总权重,由发送方计算每个路径节点应获得的手续费;
12.s5.在原htlc合约中路径节点之间的资金交易额度上增加每个路径节点应获得的手续费,并按照htlc交易流程完成交易,由接收方发送原像y至发送方;
13.s6.以发送方至接收方的方向,依次发送以y为原像的htlc合约至下一个路径节点,并设置资金交易额度;
14.s7.从接收方至接收方的方向,依次接收htlc合约,使用原像y完成htlc合约交易。
15.优选地,设交易的发送方为v0,接收方为v
m
,发送方与接收方之间的交易路径节点表示为p
i
=(v0,v1,v2,v3,

,v
m
‑1,v
m
);
16.路径节点之间生成支付通道,所述的支付通道资金参数包括:
17.路径节点在支付通道上的资金及发送方提供的手续费,其中,路径节点在支付通道上的资金表示为c
i
=(c0,c1,c2,c3,

,c
m
‑1,c
m
),发送方提供的手续费为fee;
18.原htlc合约中路径节点之间的资金交易额度为:x
0,1
,x
1,2
,x
2,3
,x
3,4
,

,x
m

1,m
,其中,x
m

1,m
表示路径节点v
m
‑1与路径节点v
m
之间发生的资金交易额度。
19.优选地,对于路径节点v
m
‑1与路径节点v
m
而言,路径节点v
m
‑1与路径节点v
m
之间的倾斜度分别表示为:
[0020][0021][0022]
其中,c
m

1,m
=c
m
‑1 c
m
;s
m
‑1表示路径节点v
m
‑1的倾斜度,记为s
m
表示路径节点v
m
的倾斜度,记作c
m
‑1表示路径节点v
m
‑1在支付通道上的资金;c
m
表示路径节点v
m
在支付通道上的资金,s
m
‑1 s
m
=1;
[0023]
路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后,倾斜程度分别表示为:
[0024]
[0025][0026]
其中,表示路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后路径节点v
m
‑1的倾斜度;表示路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后路径节点v
m
的倾斜度;
[0027]
则基于上述求解公式,步骤s2所述从发送方至接收方的方向,依次获取路径节点的倾斜程度表示为:
[0028][0029]
在此,对于支付通道网络,倾斜程度能够提现出通道的健康程度以及整个网络的健壮性,将支付通道各个通道的倾斜程度纳入考虑,便于更加公平的将手续费分配至各个路径节点。
[0030]
优选地,步骤s3所述的每个中间路径节点的临时权重的计算过程为:
[0031]
设中间路径节点表示为:
[0032]
v1,v2,v3,

,v
m
‑1[0033]
1~m

1之间的第i个路径节点v
i
在一笔交易中,在路径节点v
i
与路径节点v
i 1
之间的支付通道上的临时权重表达式为:
[0034][0035]
其中,分别表示路径节点v
i
的倾斜度、路径节点v
i
与路径节点v
i 1
之间发生x
i,i 1
的资金交易后路径节点v
i
的倾斜度;
[0036]
根据临时权重计算总权重的表达式为:
[0037][0038]
其中,power
i
表示每个路径节点最终的权重。
[0039]
在此,每个路径节点最终的权重是采用反比方式计算的,当一个路径节点的权重越大时,接受交易结果后则更加处于资金平衡的状态,则对其十分有利,因此,在其已经得到好处的前提下,收取较低的手续费表示对这些交易的鼓励行为;而权重越低的路径节点在交易后就处于一种更加倾斜的状态,对其不利,所以要做出更大的补偿,最终的权重会更大。
[0040]
优选地,步骤s4所述根据总权重,由发送方计算每个路径节点应获得的手续费的表达式为:
[0041][0042]
其中,fee表示发送方提供的手续费;fee
i
表示0~m之间的第i个路径节点v
i
应获得的手续费。
[0043]
优选地,步骤s5所述的在原htlc合约中路径节点之间的资金交易额度上增加每个
路径节点应获得的手续费后,htlc合约中路径节点之间的资金交易额度满足:
[0044][0045]
其中,发送方和接收方无须讨论手续费分配,因此x
0,1
与x
m

1,m
不发生变化。
[0046]
优选地,在步骤s6中,对于中间路径节点v
i
,依次发送以y为原像的htlc合约至下一个路径节点v
i 1
,设置的交易额度为:
[0047][0048]
其中,x
i,i 1
表示路径节点v
i
与路径节点v
i 1
之间发生的资金交易额度。
[0049]
通过这样的方法,在给定支付通道交易的路径和总手续费的情况下,可以实现各个中间路径节点手续费的合理分配。
[0050]
优选地,所述方法还包括:在发送方与接送方之间的路径节点已知、路径节点间支付通道倾斜程度未知时,基于路由算法使每个路径节点将自身的资金倾斜度放入路由包中。
[0051]
本发明还提出一种用于实现所述的区块链支付通道网络交易手续费分配方法的系统,所述系统包括:
[0052]
交易参数确定模块,用于确定交易的发送方与接收方、发送方与接收方之间的交易路径节点、支付通道资金参数及原htlc合约中路径节点之间的资金交易额度;
[0053]
倾斜程度获取模块,从发送方至接收方的方向,依次获取路径节点的倾斜程度;
[0054]
权重计算模块,根据路径节点的倾斜程度,由发送方计算每个中间路径节点的临时权重,根据临时权重计算总权重;
[0055]
路径节点手续费计算模块,根据总权重,由发送方计算每个路径节点应获得的手续费;
[0056]
路径节点手续费分配模块,在原htlc合约中路径节点之间的资金交易额度上增加每个路径节点应获得的手续费,并按照htlc交易流程完成交易,由接收方发送原像y至发送方;
[0057]
发送方交易执行模块,以发送方至接收方的方向,依次发送以y为原像的htlc合约至下一个路径节点,并设置资金交易额度;
[0058]
接收方交易执行模块,从接收方至接收方的方向,依次接收htlc合约,使用原像y完成htlc合约交易。
[0059]
与现有技术相比,本发明技术方案的有益效果是:
[0060]
本发明提出一种区块链支付通道网络交易手续费分配方法及系统,首先确定交易的双方、交易路径及发送方需支付的手续费,在区块链链下建立支付通道,考虑支付通道路径节点的倾斜程度,基于htlc合约,将资金按照对路径节点倾斜程度的利害进行分配,在给定支付通道交易的交易路径和手续费的情况下,从而吸引更多的路径节点加入,使整体网络更加健壮,达到提升区块链网络交易效能的目的。
与路径节点v
m
生成的一个支付通道,路径节点v
m
‑1与路径节点v
m
之间的倾斜度分别表示为:
[0084][0085][0086]
其中,c
m

1,m
=c
m
‑1 c
m
;s
m
‑1表示路径节点v
m
‑1的倾斜度,记为s
m
表示路径节点v
m
的倾斜度,记作c
m
‑1表示路径节点v
m
‑1在支付通道上的资金;c
m
表示路径节点v
m
在支付通道上的资金,s
m
‑1 s
m
=1;
[0087]
路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后,倾斜程度分别表示为:
[0088][0089][0090]
其中,表示路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后路径节点v
m
‑1的倾斜度;表示路径节点v
m
‑1与路径节点v
m
之间发生x
m

1,m
的资金交易后路径节点v
m
的倾斜度;
[0091]
则基于上述求解公式,步骤s2所述从发送方至接收方的方向,依次获取路径节点的倾斜程度表示为:
[0092][0093]
对于支付通道网络,倾斜程度能够提现出通道的健康程度以及整个网络的健壮性,将支付通道各个通道的倾斜程度纳入考虑,便于更加公平的将手续费分配至各个路径节点。
[0094]
s3.根据路径节点的倾斜程度,由发送方计算每个中间路径节点的临时权重,根据临时权重计算总权重;
[0095]
每个中间路径节点的临时权重的计算过程为:
[0096]
设中间路径节点表示为:
[0097]
v1,v2,v3,

,v
m
‑1[0098]
1~m

1之间的第i个路径节点v
i
在一笔交易中,在路径节点v
i
与路径节点v
i 1
之间的支付通道上的临时权重表达式为:
[0099][0100]
其中,分别表示路径节点v
i
的倾斜度、路径节点v
i
与路径节点v
i 1
之间发生x
i,i 1
的资金交易后路径节点v
i
的倾斜度;
[0101]
根据临时权重计算总权重的表达式为:
[0102][0103]
其中,power
i
表示每个路径节点最终的权重。
[0104]
在此,每个路径节点最终的权重是采用反比方式计算的,当一个路径节点的权重越大时,接受交易结果后则更加处于资金平衡的状态,则对其十分有利,因此,在其已经得到好处的前提下,收取较低的手续费表示对这些交易的鼓励行为;而权重越低的路径节点在交易后就处于一种更加倾斜的状态,对其不利,所以要做出更大的补偿,最终的权重会更大。
[0105]
s4.根据总权重,由发送方计算每个路径节点应获得的手续费;
[0106]
表达式为:
[0107][0108]
其中,fee表示发送方提供的手续费;fee
i
表示0~m之间的第i个路径节点v
i
应获得的手续费。
[0109]
s5.在原htlc合约中路径节点之间的资金交易额度上增加每个路径节点应获得的手续费,并按照htlc交易流程完成交易,由接收方发送原像y至发送方;
[0110]
在原htlc合约中路径节点之间的资金交易额度上增加每个路径节点应获得的手续费后,htlc合约中路径节点之间的资金交易额度满足:
[0111][0112]
其中,发送方和接收方无须讨论手续费分配,因此x
0,1
与x
m

1,m
不发生变化。
[0113]
s6.以发送方至接收方的方向,依次发送以y为原像的htlc合约至下一个路径节点,并设置资金交易额度;
[0114]
在步骤s6中,对于中间路径节点v
i
,依次发送以y为原像的htlc合约至下一个路径节点v
i 1
,设置的交易额度为:
[0115][0116]
其中,x
i,i 1
表示路径节点v
i
与路径节点v
i 1
之间发生的资金交易额度。
[0117]
通过这样的方法,在给定支付通道交易的路径和总手续费的情况下,可以实现各个中间路径节点手续费的合理分配。
[0118]
s7.从接收方至接收方的方向,依次接收htlc合约,使用原像y完成htlc合约交易。
[0119]
在本实施例中,所述区块链支付通道网络交易手续费分配方法还包括:在发送方与接送方之间的路径节点已知、路径节点间支付通道倾斜程度未知时,基于路由算法使每个路径节点将自身的资金倾斜度放入路由包中。
[0120]
以上整个方法的输入为:
[0121]
支付通道的资金倾斜程度原htlc交易额度
x
0,1
,x
1,2
,x
2,3
,x
3,4
,

,x
m

1,m
,发送方提供的手续费fee;
[0122]
输出为:对应交易完成。
[0123]
参见图2,本发明还提出一种用于实现所述的区块链支付通道网络交易手续费分配方法的系统,所述系统包括:
[0124]
交易参数确定模块,用于确定交易的发送方与接收方、发送方与接收方之间的交易路径节点、支付通道资金参数及原htlc合约中路径节点之间的资金交易额度;
[0125]
倾斜程度获取模块,从发送方至接收方的方向,依次获取路径节点的倾斜程度;
[0126]
权重计算模块,根据路径节点的倾斜程度,由发送方计算每个中间路径节点的临时权重,根据临时权重计算总权重;
[0127]
路径节点手续费计算模块,根据总权重,由发送方计算每个路径节点应获得的手续费;
[0128]
路径节点手续费分配模块,在原htlc合约中路径节点之间的资金交易额度上增加每个路径节点应获得的手续费,并按照htlc交易流程完成交易,由接收方发送原像y至发送方;
[0129]
发送方交易执行模块,以发送方至接收方的方向,依次发送以y为原像的htlc合约至下一个路径节点,并设置资金交易额度;
[0130]
接收方交易执行模块,从接收方至接收方的方向,依次接收htlc合约,使用原像y完成htlc合约交易。
[0131]
下面结合具体实施情况对本发明作进一步说明,如图3所示,假设发送方与接收方之间的路径节点为“0”,“1”,“2”,“3”,“4”,其中,“0”为发送方,“4”为接收方,“1”,“2”,“3”均为中间路径节点,原htlc合约中路径节点之间的资金交易额度为:[10,10,10,10],交易前资金分配和倾斜度如图3所示,由发送方向接收方方向的“指向箭头”的上面为资金分配,下面表示倾斜度,进行一次交易后,资金分配和倾斜度表示如图4所示,交易前后的中间路径节点的倾斜度和权重的具体数据展示如表1所示。
[0132]
表1
[0133][0134]
应用本发明所提方法,交易后发送方与接收方之间支付通道上的资金分配与倾斜度示意图如图5所示,通过图5就可以得出,本方法可以将资金按照对路径节点倾斜程度的利害进行分配。
[0135]
显然,本发明的上述实施例仅是为清楚地说明本发明所作的举例,而并非是对本
发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献