首页 理论教育 状态通道技术:实现双向支付通道的关键

状态通道技术:实现双向支付通道的关键

时间:2023-06-14 理论教育 版权反馈
【摘要】:自此,该双向支付通道正式开启。值得注意的是,由于交易双方每次状态更新都会更新哈希密文,且双方已经知道对方旧交易的哈希密文,因此双方均不会选择广播对自己有利的旧交易状态,而会诚实的公布最新的交易状态。

状态通道技术:实现双向支付通道的关键

(一)比特币链下支付通道——闪电网络

2019年初,一项名为“闪电火炬”的信任接力游戏全球开始流行起来,该游戏旨在鼓励和推广比特币闪电网络的使用。1月19日,Twitter首席执行官Jack Dorsey同样参加了该火炬接力游戏,为闪电网络的使用和测试表示支持。截至目前(2019年3月5日),该火炬已传递224人,累计金额达4.8892 BTC(https://www.takethetorch.online)。

在这项火炬接力游戏背后依托于闪电网络的迅猛发展,截至目前,全网节点达6759个,累计建立的通道数量达30597个,锁定的BTC数量达129.8个,而这些数据还在以每月接近或超过20%的速度快速增长。(图4-3-7)

图4-3-7 闪电网络基本数据和可视化图谱

(数据来源:闪电网络浏览器1ml.com和acinq.co)

比特币闪电网络至少有三家著名机构在致力于研究和部署该项技术,分别是Lightning,Blockstream,Blockchain。该项技术的构建主要分为两步,即首先利用多重签名技术、时间锁技术和单项哈希技术建立双向支付通道,然后扩展成支付网络。

其主要步骤如下:

1.创建双向支付通道

闪电网络通常采用2/2多重签名地址来开启交易通道,该多重签名地址只有在交易双方均签名确认时方可转出比特币,且交易双方会各自利用单向哈希函数生成密文——哈希值对,并交换彼此密文的哈希值。

首先,交易双方A和B向2/2多重签名地址转入对等数量的比特币(例如各自转入5 BTC),该交易会被公开记录在区块链上。假设交易方A向交易方B转账10 BTC,A会创建一个“承诺交易”,在该承诺交易中将包含的内容为:从多重签名地址中向A转账4 BTC,剩余6 BTC转入一个新的1/2多重签名地址。该新多重签名地址中的6 BTC能被动用需满足下面两种条件之一:

(1)B的交易签名+满足时间锁条件。在该交易被网络确认后,需等待时间锁中要求的区块数量,如10000个区块后,B方可单独转移该资金(所谓的时间锁是一种将交易输出中比特币锁定一定区块数的技术)。

(2)A的交易签名+B的哈希密文。A通过包含B的哈希密文的方式独自转移资产,但该哈希密文只有B知道;同样,交易方B也会创建一个该交易的镜像“承诺交易”。A和B独自创建的“承诺交易”会在签名后发送给对方,并由对方签名并广播该开放交易,以保证交易被记录在区块链上。自此,该双向支付通道正式开启。

2.通道内交易状态更新

当需要在支付通道内进行新的支付交易时只需要进行类似1的交易过程即可。值得注意的是,由于交易双方每次状态更新都会更新哈希密文,且双方已经知道对方旧交易的哈希密文,因此双方均不会选择广播对自己有利的旧交易状态,而会诚实的公布最新的交易状态。

3.双向支付通道扩展为支付网络

支付网络的关键在于建立安全的多跳支付路由,即闪电网络中的节点不必建立两两相通的通道,而是通过已有的支付通道达到降低网络复杂度,实现间接转账的作用。比特币闪电网络采用了一种叫哈希时间锁合约(HTLCs),该技术主要用于确保中间的交易能顺利实施(如图4-3-8中的交易3和4)。

图4-3-8 支付通道扩展为支付网络

(数据来源:Bitcoin Magazine)

简单来说,哈希时间锁合约是指比特币发送方将比特币发送到一个1/2多重签名地址,改地址的比特币解锁条件只有二选一,发送方在锁定时间到期后签名赎回比特币,或者接收方“签名+哈希密文”的方式拿到比特币转账。同理,每一次多跳支付路径中的中间支付环节均可以使用哈希时间锁方式保证资产的顺利传递。但其中有一个关键环节在于,顺着哈希密文的交换传递路径,哈希时间锁的锁定时间应该逐渐增加,否则中转节点将存在资产风险。(图4-3-9)

显然,闪电网络技术使比特币的小额高频支付成为可能,使得比特币距离成为点对点电子现金系统的应用技术更进一步。然而,闪电网络技术并非完美无缺,同样掩藏着难以回避的隐忧。

(二)闪电网络的阿喀琉斯之踵

闪电网络的技术图景无疑是美好且令人着迷的,但是在美好的技术前景背后其实潜藏着难以回避的致命弱点,可称之为比特币的“阿喀琉斯之踵”。

图4-3-9 闪电网络哈希时间锁合约

(数据来源:Bitcoin Magazine)

1.安全性

Layer2的支付安全性往往依赖于主链的安全性,比特币闪电网络亦是如此。虽然比特币网络的算力目前雄踞第一,保证其具备了足够强壮的网络安全性(防范来自外部的51%攻击),但是其区块奖励每四年减半,在不远的将来,区块奖励的收益将降低到链上手续费的同等级别,甚至更低。如果彼时比特币价格不能维持在一个足够高的价格,那么手续费收入将不足以吸引矿工在比特币网络中进行交易打包,整个比特币网络的安全性将遭遇断崖式下滑,这将对构建在比特币主链上的闪电网络造成致命的打击。

另外,由于闪电网络中不可能所有节点建立独自的支付通道,那么中转节点的参与无疑需要交易的双方或一方支付交易通道的中转路由费。如果闪电网络中的应用规模持续扩大,作为闪电网络节点的收益将逐渐逼近甚超过矿工收益,这无疑会分化和吸引部分逐利的矿工集团抛弃挖矿,转而迁移到闪电网络作为中转节点,从而降低主链安全性。

2.支付通道垄断

比特币闪电网络的设计机制天然对多跳路由支付路径不友好,其主要的成本包含三个方面:

其一,交易双方的支付路径中的中转节点越多,则该支付路径中的用于锁定的沉淀资金越多,网络中资金利用率越低,中转节点资金周转率低,则单位支付的资金成本较高;其二,支付路径中需要沿着密文的交换路径逐步增加哈希时间锁合约的锁定时间,中转节点越多会导致整个支付路径隐性的时间上限更高;其三,随着支付路径中转节点增多,节点出现中途离线的概率也会增大,无意抬升了支付失败的风险,降低了支付成功率。(www.xing528.com)

假设A、B之间需要通过中转节点C进行相互转账,要完成A到B或者B到A的转账,C储备的钱要大于Max(A,B)。更复杂的情况下,C成了A,B,D的中转节点,C需要储备多少资金呢?最极端的情况是,A和B(B和D/A和D)同时将所有的钱通过C给第三个人,那么C需要有Max(A+B,B+D,A+D)的资金储备才能完成转账。若C为n个交易用户做中转节点进行转账,那么C需要的资金应该大于n个人中任选n-1个人资金总和的最大值,则C需要的资金大于n个人资金的总和。

对于中转节点而言,成为闪电网络的中转节点需要大量的资金储备,这给成为中转节点设置了巨大的门槛和资金成本压力。对于用户而言,由于每个中转节点均需要支付手续费,所以用户会选择路径最短,即中转节点数最少的路径。

显然,中转节点和用户从成本考虑都会倾向于使用更中心化的支付路径,极端条件下,所有闪电网络用户都将和一个巨大的中转节点连接,进行转账支付。但是出于带宽、地理位置等现实情况的考虑,最合理的情况是在一片地理区域中有一个巨大的中转节点为这个区域所有人进行转账服务。比如,中国区闪电网络代理,北美区闪电网络代理等。

综上所述,比特币闪电网络的使用者,无论是个人还是机构,都将会在自然的商业竞争中选择中转节点更少的支付路径。

在类似的商业模式中已经反复证实一个规律:在同质化的商业竞争领域马太效应将得到最大程度的发挥,即资源的优势方会借由资源优势(如更低的资金成本,更高的资金储备量等)提供对用户更有利的服务,快速扩大用户基数,并进一步在网络效应的加成下,率先突破盈利门槛或更快扩大收入,从而巩固自身的优势竞争地位。

在这种假设条件下,如同传统的电信服务商一样,闪电网络垄断节点的出现将无可避免。或许,在未来我们将可以看见在去中心化的比特币之上寄生着一个史无前例的巨无霸垄断节点。事实上,这个进程已经悄然开始(闪电网络中的节点True Vision.club已经连接了全网约1006个支付通道,如图4-3-10)。

图4-3-10 节点True Vision.club的1006个支付通道

(数据来源:explorer.acinq.co)

3.链下状态通道

仔细分析闪电网络,可以发现闪电网络的局限性和隐患主要来自如下几个方面:

(1)主链的POW+区块奖励通缩模式从长远来看存在安全隐患;

(2)闪电网络提供同质化的资本密集型服务,天然适合产生垄断市场

(3)Layer 1和Layer 2的经济模型相互割裂,未进行统一分层设计。

问题一主要源于比特币网络的原始设计缺陷,而比特币由于牵扯利益巨大,导致升级困难,因此难以短时间有所改观。与之相比,以太坊网络安全性强,社区共识强,网络升级顺利,更为关键的是,其未来切换为POS共识机制后将更有效地阻止网络算力下滑导致的安全性降低难题。

问题二则源于比特币平台功能的单一性(不支持智能合约,无法实现丰富的状态托管)限制了其Layer 2的发展,致使其只能提供非常有限且同质化的资本密集型服务,为垄断市场的发展提供了土壤。

问题三则主要源于公链平台的设计之初是否考虑到Layer 2可能遭遇的发展瓶颈、技术路线和生态发展,因此需要与系统分层结构相匹配的分层经济模型。

基于以上判断,以太坊上的Layer 2方案受到各方重视,例如状态通道技术。

所谓的状态通道源于以太坊相比于比特币简单的UTXO模型而言,是具有状态的公链,其上存储了所有账户余额、合约存储、合约代码等状态信息。而且,由于以太坊支持图灵完备智能合约,也就可以支持各种更丰富的状态记录,而不是仅仅能记录关于交易的相关状态数据(如比特币)。所以,状态通道是支付通道的拓展,支付通道是状态通道的特例。

从技术上而言,基于智能合约平台的Layer 2与闪电网络的逻辑类似,但将不再需要采用哈希时间锁合约等类似的复杂技术来进行第三方资产托管,而是直接通过链上智能合约实现资产托管、状态记录(如带条件的支付等)和最终结算等功能。

与比特币闪电网络相比,状态通道是一项更为复杂的技术,其基本流程如下:

(1)参与各方在部署链上智能合约(包含多重签名合约),并存入部分资金用于初试状态和抵押;

(2)参与各方通过本地客户端运行,并构建带签名的交易,然后通过P2P网络或八卦协议进行状态同步,得到各方签名后则为最新状态版本(该版本带最新的哈希、各方签名和状态版本序列号);

(3)将最终状态提交到链上智能合约,各方无异议后关闭通道,或通过争议处理后关闭通道。如果出现争议,区块链会链上运行一遍所有状态确认责任方,并没收相应的抵押金补偿对方。

显然,这种状态通道将能够支持更丰富的状态记录(如Celer Network就已经开发出了一款基于状态通道的五子棋游戏,详情微信公众号文章由BlockVC&NPC联合发布:Celer深度测评),并且兼具链下状态交换和更新的快捷、低廉和隐私等特性。而且,由于每个状态通道合约下的状态通道所提供的服务有所差异,状态通道之间并不能通用,因此状态通道网络并不会出现闪电网络那样的巨无霸节点。

目前为止,已经涌现出一大批致力于攻克Layer 2技术的区块链项目,如Celer Network,Liquidity Network,Raiden Network等。即便如此,距离诞生一个经过实践证明且安全可用的状态通道网络,依然尚需时日。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈