探索Covenants:如何为比特币带来Native的可编程性
近期比特币社区里掀起来一波关于重新启用 OP_CAT 等操作码的讨论。Taproot Wizard 也通过推出 Quantum Cats 的 NFT、声称已经获得 BIP-420 的编号等,吸引了不少人的注意力。支持者宣称,启用了 OP_CAT 可以实现「限制条款」(covenants)、实现比特币的智能合约或可编程性。 如果你注意到「限制条款」这个词并稍作搜索,就会发现这是另一个很大的兔子洞。开发人员已经讨论了多年,除了 OP_CAT 之外,还有 OP_CTV、APO、OP_VAULT 等等实现限制条款的技术。 那么,究竟什么是比特币的「限制条款」?为什么能吸引到如此多的开发人员持续数年的关注和讨论?能实现比特币的哪些可编程性?背后的设计原理是什么样的?本文试做一个概览性的介绍和讨论。 什么是「限制条款」 Covenants,中文译作「限制条款」,有时也翻译为「契约」,是一种能够给未来的比特币交易设置条件的机制。 当前的比特币脚本也包含了限制的条件,例如花费的时候要输入合法的签名、送入符合的脚本等。但是只要用户能解锁,就可以将该UTXO花到任意他希望的地方。 而限制条款是,在此限制如何解锁的基础之上,做出更多限制,例如限制 UTXO 之后的花费,也就是实现类似「专款专用」的效果;或一笔交易中送入的其他输入条件等。归根结底就是,限制条款可以直接在比特币脚本中实现对交易进一步花费的限定,从而实现类似智能合约效果的交易规则。