区块链领域,UTXO(Unspent Transaction Output,未花费的交易输出)与账户模型是两大主流的账户状态管理模式,比特币作为UTXO模型的鼻祖和最成功的实践者,奠定了其在加密货币世界的地位,而以太坊,则以其灵活的账户模型和智能合约功能,开创了去中心化应用(DApps)的辉煌时代,长期以来,这两种模型似乎各自为政,运行在各自的“轨道”上,随着Layer 2扩容方案的兴起以及跨链互操作需求的增长,“在以太坊上发行UTXO”这一看似矛盾的概念,正逐渐从理论走向实践,为以太坊生态系统带来了新的想象空间。
UTXO模型与账户模型的根本区别

要理解“以太坊上发行UTXO”的意义,首先需要厘清UTXO与账户模型的本质区别。
UTXO模型(如比特币):
账户模型(如以太坊):
为何要在以太坊上发行UTXO?
既然以太坊原生采用账户模型,为何还要费尽心机在其上实现UTXO?这主要源于以下几个方面的需求:

兼容性与互操作性: 比特币及其生态系统(如闪电网络、各种基于UTXO的代币标准如Omni)建立在UTXO模型之上,为了实现以太坊与比特币及其他UTXO链之间的无缝资产转移和智能合约交互,一种能够在以太坊上“模拟”或“原生支持”UTXO的机制变得至关重要,这使得以太坊能够更好地扮演“价值互联网枢纽”的角色。
特定场景的效率优势: 对于某些特定的应用场景,如高频小额支付、隐私交易或需要高度并行处理的场景,UTXO模型可能具有天然的效率优势,在以太坊上实现UTXO,可以为这些场景提供更优化的解决方案,尤其是在Layer 2层面,可以利用UTXO的特性提升交易吞吐量和降低成本。
拓展以太坊的应用边界: UTXO模型的状态模型和交易构造方式与账户模型截然不同,在以太坊上引入UTXO,可以催生新的智能合约设计和应用范式,例如更复杂的跨链原子交换、基于UTXO的去中心化金融(DeFi)产品,以及增强隐私保护的资产发行与转移方案。
Layer 2扩容的探索: 许多Layer 2扩容方案(如状态通道、侧链、Rollups)都在积极探索不同的状态模型,在以太坊的Layer 2上实现UTXO模型,可以利用以太坊主网的安全保障,同时通过UTXO的特性实现更高效的链下处理和批量提交,从而提升整个以太坊生态的扩容能力。
如何在以太坊上实现UTXO发行?

在以太坊上实现UTXO并非易事,因为以太坊的虚拟机(EVM)和状态管理是为账户模型设计的,目前主要有以下几种技术路径:
智能合约模拟UTXO: 这是最直接的方式,通过智能合约来记录和管理UTXO的状态,每个UTXO可以表示为合约中的一个数据结构,包含金额、所有者、锁定脚本等信息,交易通过调用合约方法来消费和创建UTXO。
利用特定Layer 2解决方案: 一些Layer 2项目专门致力于在以太坊上实现UTXO模型或UTXO-like的功能,某些Rollups或状态通道会采用UTXO作为其内部状态模型,然后将批量处理的交易结果提交到以太坊主网。
改进的EVM或替代虚拟机: 一些研究项目和扩容方案正在探索对EVM进行改进,或开发新的虚拟机,使其能够更好地支持UTXO模型,通过预编译合约或新的opcode来优化UTXO操作。
跨链桥与锚定资产: 通过跨链桥技术,将比特币或其他UTXO链上的资产“锁定”在链上锚定合约中,然后在以太坊上发行代表该资产权益的“ Wrapped”代币(如WBTC),这些Wrapped代币是以太坊账户模型下的ERC-20或ERC-721代币,虽然其底层资产是UTXO,但在以太坊上表现为账户余额。
挑战与展望
尽管在以太坊上发行UTXO具有诸多潜在价值,但仍面临诸多挑战: