本文来自BITMEX Research官方博客,2022年2月,Bitmex比特币开发基金捐款接受者Gleb Naumenko和AntoineRiard发布了一份CoinPool白皮书。该项目的早期版本在Bitcoin Magazine获得过技术性较少的报道。
本文试图通过根据回答一些问题来建立对CoinPool提议的一些直观认识。面向缺乏时间或专业知识来阅读完整论文的稍微技术性的读者(那些知道支付通道是什么的读者)。希望这篇文章能引起读者的更多反馈,这些反馈可以作为对邮件列表帖子的回复或直接通过gleb@thelab31.xyz发送给Gleb。
它是比特币上的一个协议:多个比特币用户将他们的资金锁定在一个UTXO中,在这个UTXO中进行链下交易,并且能够随时从池中解锁/提取他们的资金。
CoinPool实例可以看作是一个有uplifting的多方支付通道,uplifting我们将在下面讨论。
CoinPool允许以更低的费用、即时确认和另一种隐私方法进行更多的比特币支付。
那些不使用CoinPool的人可以从CoinPool节省的资金中获得更多的区块空间,这使他们能够以更低的成本进行交易。
CoinPool更有效地利用区块空间,因为用户可以在必须通过链上交易关闭支付通道之前进行更多支付。这是通过避免通过(闪电)网络进行路由来实现的,这会导致更好的资金流动性。
CoinPool的主要缺点是每个动作(提款除外)都需要所有池用户的合作。我们的目标是通过未来的研究来解决这一不利因素。在某些情况下,这个问题已经通过uplifting解决了。
CoinPool账户不仅可以代表简单的余额,还可以代表任何比特币协议。将协议实例引入 CoinPool帐户的过程称为uplifting。
例如,它可以是连接到闪电网络的2用户支付通道。在这种情况下,两个用户之间以及从他们到LN的付款不需要其他参与者的合作。
Uplift的协议实例遵循与其非uplift版本非常相似的威胁模型。
CoinPool和Channel?Factories以类似的方式优化LN,通过更有效地利用区块空间。
与CoinPool不同,一个用户退出Channel?Factories会迫使所有其他用户离开,这极大地限制了潜在的节省。
JoinPool是CoinPool的前身,不支持链下支付,uplifting,并且引入了更高的通信/存储开销。
JoinPool的主要目的不是可扩展性,而是通过混币实现匿名性。
不,最简单的CoinPool版本需要SIGHASH_ANYPREVOUT,许多人预计它将成为下一个比特币软分叉。然而,即使这样在实践中也是不够的:它不能扩展到超过20个用户,并且需要具有统一数量的余额。
有不同的方式来实现CoinPool。除了SIGHASH_ANYPREVOUT,我们的CoinPool版本还需要 SIGHASH_GROUP和OP_MERKLESUB。前者目前由闪电网络社区讨论以解决他们的协议问题,而后者是我们团队提出的一种新颖的操作码。
这是一个新的操作码,可以启用covenants(限制如何使用某些比特币的规则)。此操作码强制输出等于花费的Taproot输出,但签名密钥已从Taproot树和Taproot内部公钥中删除。
在CoinPool中,它允许非合作提款保留剩余的池状态。
Merkle树减法也可能对其他智能合约有用,但我们将这个方向留给未来的研究。OP_MERKLESUB有点特殊,因为它还强制修改密钥路径以及脚本路径。
OP_CTV允许构建具有不同权衡的支付池,我们个人认为这不如OP_MERKLESUB设计有趣。在OP_CTV之上添加更多通用操作码可以启用与CoinPool非常相似的东西。OP_TLUV可以看作是OP_MERKLESUB的扩展版本,但它需要更多的协议设计工作来构建类似CoinPool的协议。
一个方向是解决主要的CoinPool限制,高交互性要求。我们已经看到了一些基于博弈论或最小信任假设的解决方案,但我们正在寻求更好的解决方案。
同时,现在有许多关于covenants和未来软分叉(OP_CTV、OP_TLUV、OP_EVICT)的提议,我们应该开发一个框架来比较它们,以更好地理解权衡并为生态系统的前进决策提供信息。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。