链上钱包通常实现了交易对交易的1:1映射,即用户执行的每一笔经济交易都需要对应一笔区块链交易。尽管聚合、coinjoin和剪切支付等技术对这一原则有所影响,但整体上这一说法仍然成立。
闪电网络则实现了交易对交易的多对一映射。其独特之处在于,一个有效的闪电通道可以进行无限次经济交易,而这个通道仅与一个未花费交易输出(UTXO)绑定。这种设计通过在”时间”维度上压缩交易,实现了显著的扩容效果。
然而,即使为每个用户分配一个UTXO,可能仍不足以满足需求。因此,许多提案致力于让多个用户以自我主权的方式共享单个UTXO,从而在”空间”维度上实现更大规模的扩容。
本文旨在对这些提案进行全面概述,识别它们共有的技术模式,分析所需的新操作码及其他软分叉升级,并通过比较表展示各组件如何协同工作。在此过程中,我们将明确L2协议的定义,评估闪电网络当前的扩展能力,并探讨为实现这些目标所需的内存池改进。
本研究由Fulgur Ventures赞助完成。他们对文章内容没有编辑控制权,也未在发布前进行审查。同时感谢Daniela Brozzoni、Sarah Cox等人在发布前提供的宝贵意见。
定义
什么是Layer 2?
“Layer 2″通常被广泛定义,甚至包括Liquid等类银行实体。但本文将采用严格定义:Layer 2(L2)是以比特币计价、旨在允许BTC在不增加链上交易次数的情况下进行更多交易的系统。要符合L2定义,必须满足以下条件之一:
首先,在考虑系统内惩罚和成本时,任何人都无法通过窃取资金获利。系统外的成本和惩罚(如声誉损失、法律后果等)不在考虑范围内。其次,更理想的情况是资金所有者能够在不依赖第三方合作的情况下单方面提取资金,仅扣除交易费用。
第一个条件之所以必要,是因为我们希望L2系统能够处理小到无法在链上表示的金额和交易。例如,在闪电网络中,哈希时间锁定合约(HTLCs)的金额可能极小,其价值被加入承诺交易的交易费用中。虽然闪电节点可以通过适当时机关闭通道”窃取”微小HTLC,但这样做成本高于HTLC本身价值,使得窃取无利可图。
尽管如此,单方面提款始终是我们的首要设计目标。基于此定义,闪电网络被视为L2系统,而Liquid、Cashu和Fedimint等系统不属于L2,因为它们的资金控制权掌握在其他方手中。客户端验证方案(如RGB)也不被视为L2,因为它们无法无信任地直接交易BTC。Statechains同样不符合要求,因为不遵循协议时,Statechain实体可以窃取资金。
Covenants及其重要性
为什么更具扩展性的L2系统需要它们?
在比特币脚本中,covenants是一种预先限制交易输出(txout)花费方式的机制,使得花费该txout的交易形式被预定义或受限,而不仅依赖签名。当多个用户共享UTXO时,L2系统需要covenants来约束UTXO的使用规则和激励机制,确保L2协议正常运行。
递归Covenants
递归covenant是指其规则可以无限递归地应用于支出交易的子UTXO,限制其花费方式。长期以来,递归covenants被认为可能存在问题,因为它们可能无限期地束缚资金,至少在没有第三方(如政府)许可的情况下如此。
目标
目前,闪电网络是最先进的Layer 2系统,但仍存在一些限制:
扩展性方面,闪电网络要求每个终端用户至少拥有一个UTXO;流动性方面,资金需要锁定在通道中;交互性方面,接收方必须在线才能无信任地接收付款。我们的目标是改进这些关键限制,理想情况下不引入新的限制。
关于”每个终端用户一个UTXO”的实际影响,由于闪电通道可以长期运行,我们需要考虑每年能创建多少新通道。创建taproot输出的边际成本为43 vB;如果通道创建成本分摊到多通道,并在单笔交易中创建多个通道,其他交易开销可以忽略不计,从而每年能为大量新用户开启通道。
假设90%的区块容量用于创建新taproot闪电通道,据估计全球约43亿人拥有智能手机。因此,实际上每年可以为相当比例的全球人口建立闪电通道,使他们能够进行交易。
然而,通道并非永久性。用户可能更换钱包、调整通道容量等。改变通道容量的最有效方法是”拼接”(splicing),这在Phoenix Wallet中已实现。拼接与通道开启类似,可通过分摊方式提高效率,即多个拼接操作共享交易,减少添加和移除资金所需的输入输出数量。
使用musig签名方案时,每个用户的拼接需要43vB的taproot输出加上57.5vB的taproot关键路径支出,共100.5vB。再次假设90%区块空间用于此操作,我们可以计算出具体数值。
最后,用户切换闪电通道至新钱包时可通过单笔交易完成。他们可选择信任新钱包,在资金发送至承诺地址后由其签署承诺交易,或双方钱包支持合作关闭并开启新通道。
当然,除闪电通道外,比特币还有其他竞争性使用场景,这对交易费率的影响难以预测。但这些数据表明,使用现有技术至少可支持数亿自我主权的闪电用户。
Layer 2概述
根据我们的定义,比特币开发社区主要讨论两种设计模式:通道(Channels)和虚拟UTXO(Virtual UTXOs)。
通道设计模式中,闪电网络是典型代表。该协议通过交换可被挖掘但通常不执行的预签名交易运行。这些交易将一个UTXO在各参与方间分割,通过不断改变分割余额和创建新预签名交易实现。由于存在多个可能有效的交易花费同一UTXO,需要激励机制确保最终被挖掘的是正确交易。
虚拟UTXO(V-UTXO)设计模式以Ark为代表。V-UTXO通过covenants或多方协议创建,允许生成可将V-UTXO资金提取到链上的交易,但这通常不在”正常路径”中。与通道不同,V-UTXO方案通过花费V-UTXO本身完成交易,这在概念上是单一预签名交易中进行的。
“正常路径”指各方通过”全体同意”的脚本路径(如N-of-N多签)完成交易。Taproot专为此设计,允许关键路径使用musig实现N-of-N多签。各方同意时,正常路径可高效且私密地花费资金。
有趣的是,由于虚拟UTXO在许多方面都是”真实的”,很容易在其上构建通道。只需创建虚拟UTXO,如果被挖掘,将为通道创建所需UTXO。因此,虚拟UTXO方案实际上是比通道更低层的设计。
闪电网络
当前生产环境中的闪电网络主要基于BOLTs标准,结合了闪电通道、HTLC、P2P路由网络、洋葱路由和发票标准等技术。值得注意的是,闪电网络不是共识系统,因此不同元素不需要所有用户完全相同地采用。
如前所述,闪电网络的关键限制是每个用户至少需要一个UTXO。但对路由节点而言,这一限制不是主要问题,因为即使终端用户远多于路由节点,网络仍能运作。每个公共路由通道可轻松支持大量每秒交易。因此,许多未来L2系统预期会参与闪电网络。现有非L2系统(如Cashu)也大量依赖闪电网络实现功能。
非交互式通道
这一设计通过使用OP_CTV减少交互需求,但未能改善”每个用户一个UTXO”的限制,因此不作进一步讨论。
通道工厂
通道工厂由多个参与方协商n-of-n多签地址,并生成交易来花费该地址,创建n个分割资金的UTXO用于支付通道。这些通道与直接在链上开设的通道具有相同安全性,因为需要时分割交易可被挖掘。这种方式节省关闭通道时的链上空间,因为理论上n个参与方可协同关闭所有通道。
通道工厂协商的是可被挖掘但不期望被挖掘的UTXO,是V-UTXO的原始例子。简单通道工厂不需要软分叉,但可能不适合大量参与方。类似OP_Evict或CTV的提案旨在允许更精细的结果,可强制个别参与方上链而不需要所有人同时上链。
LN-Symmetry
Poon-Dryja通道通过惩罚错误状态发布行为鼓励正确状态上链,而LN-Symmetry允许通过额外交易更新错误状态。这简化了闪电通道,去除了惩罚相关复杂性。但在不受信任场景中,这可能成为劣势,因为惩罚机制能抑制欺诈。
LN-Symmetry需要通过软分叉启用SIGHASH_ANYPREVOUT,允许状态交易在更新时重新花费其他状态交易。它本身未提供扩展性改进,但支持者认为它能使通道工厂等机制更易实现。
Ark
Ark采用全新交易扩展方法:完全可转让的虚拟UTXOs(V-UTXOs),可在链下通过原子交易合并和拆分。Ark服务提供商(ASP)为用户提供具有限定生命周期(如4周)的V-UTXOs,称为轮次(rounds)。V-UTXOs通过CTV等机制创建的池txouts生成,每轮对应一个池txout,使一个链上txout能承诺V-UTXOs树。
Ark的扩展性优势在于轮次到期:轮次结束时池txout解锁,允许ASP通过小型交易单方面花费它。由于轮次到期时间,V-UTXOs在池txouts到期时失效:用户必须在到期前花费V-UTXO或将其上链(单方面提款)。
为交易V-UTXOs,Ark协调者共同签署花费一个或多个V-UTXO的交易,这些交易仅在不同轮次中创建新V-UTXO时有效。结合超时机制,这种依赖关系使花费V-UTXO无信任:除非新V-UTXO在另一个池交易中创建,否则无法在链上认领V-UTXO。
值得注意的是,一个ASP同时会有多个活跃轮次。为允许现有轮次资金转移,新轮次会不断创建,并与现有轮次重叠,因为它们通常在新轮次创建后才过期。
Ark经济学
当V-UTXO被花费时,ASP必须在新的轮次中提供等量BTC生成新池txout。但ASP不能立即回收已花费V-UTXO的价值,直到该轮次到期。因此,V-UTXO交易涉及时间价值成本,因为ASP需要提供流动性。
具体而言,这一成本在V-UTXO被花费时产生。未花费前,V-UTXO代表潜在可上链的UTXO,用户可单方面提取资金。但为花费V-UTXO,ASP必须使用其他来源资金创建新池txout,而已花费V-UTXO中的资金直到到期才可供ASP使用。
因此,花费V-UTXO相当于短期贷款,ASP需借入资金覆盖从现在到轮次到期的时间间隔。这意味着花费V-UTXO的流动性成本会随V-UTXO老化和到期时间接近而下降,理论上在轮次到期时降至零。
值得注意的是,花费V-UTXO的成本与所花费V-UTXO的总规模有关,而非支付给接收方的金额。这意味着专门用于直接交易V-UTXO的钱包需要在资金拆分上进行权衡。单一V-UTXO最小化单方面提款成本,但最大化基于流动性的交易费用;而将资金拆分为多个V-UTXO则相反。这与链上比特币或闪电交易的经济模型完全不同。
流动性成本估算
以当前闪电钱包Phoenix为例,为保留1年的通道流动性收取1%费用;最坏情况下需锁定资金1年。但实际上,Phoenix的资金成本可能更高,假设客户平均在不到1年内使用预留流动性。此外,Phoenix还通过交易手续费盈利,可能对通道流动性进行补贴。
另一参考是美国国债利率。当前3个月期国债年利率约5%。由于美元通胀可能导致该利率高估,假设BTC计价资金的流动性成本为每年3%。
如果Ark轮次间隔为4周,交易开始时流动性成本为0.23%,最终降至零。假设用户在轮次到期前两周转移资金至新轮次,每年约支付1.5%流动性成本实现资金自主管理。若等到最后一刻行动,成本几乎可降为零,但面临错过到期时间的风险。
用户可能认为这不是微不足道的成本。这一成本假设通过将交易费用等分摊到大量参与者,使每轮固定成本微不足道。
如果固定成本不小呢?假设ASP有1000用户,平均每小时创建池txout。4周内需要672笔链上交易。这意味着用户仅为持有资金就需支付几乎与用户数量相同的交易费用。这种情况下,用户自己开设闪电通道可能更便宜,尽管ASP要求等待一小时确认时间。
Ark的启动难题
新ASP面临两难:要么轮次很少,用户需长时间等待汇集足够V-UTXOs以实现有效扩展和费用降低;要么池交易频繁,但每个用户支付高额交易费用。需要大量用户分摊频繁轮次和池txout的费用。
由于轮次到期,这一问题持续存在,比闪电通道更严重:闪电通道可长期保持有用,允许通道逐步摊销成本。而轮次到期时,用户别无选择,只能集体支付高额费用维持资金托管。闪电通道中,用户可灵活选择开设通道时间。
尽管Ark作者最初设想几秒就有新轮次的乐观场景,但在启动阶段,若无费用补贴,Ark可能需要等待多小
声明:文章不代表CHAINTT观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险 自担!转载请注明出处:https://www.chaintt.cn/16006.html