Cardano 的扩展未花费交易输出(eUTXO)模型是其智能合约系统的核心机制,用于追踪价值流动并执行复杂逻辑。与传统账户余额模式不同,该模型将资金状态封装在独立的输出中,每笔交易必须完整消耗一个或多个现有输出,并创建新的输出作为结果。
自2021年9月Alonzo升级以来,Cardano正式引入eUTXO,使平台具备原生支持多资产及可编程合约的能力。每个未花费输出都携带价值与附加数据,且只能被使用一次,任何剩余金额必须通过新输出返还,确保账本一致性。
在eUTXO体系中,合约逻辑由Plutus脚本实现,与输出绑定。当一笔交易试图花费某个输出时,系统会调用对应的验证器,检查其是否满足条件。这一过程依赖三大要素:Datum(输出关联的状态信息)、Redeemer(描述花费动作的数据)以及Transaction Context(包含时间戳、区块高度等交易环境信息),三者共同构成验证决策依据。
CIP-32标准允许将Datum直接嵌入输出,无需额外传输,从而提高效率并降低延迟。这种内联设计增强了数据可访问性,也简化了链上状态管理流程。
相比基于账户的共享状态系统,eUTXO采用更去中心化的状态表示方式。前者通常通过更新账户余额来反映变更,而eUTXO则显式指定输入与输出,实现更高的透明度与可验证性。
在并发处理方面,eUTXO具有显著优势:只要交易不争夺同一输出,它们可以并行验证。然而,若多个交易试图消费同一个输出,则会产生竞争,仅有一笔能成功,其余将失败。因此,应用程序设计对性能至关重要——过度集中于单一输出可能导致吞吐瓶颈。
为缓解此类问题,开发者可通过扇出策略、批量处理或引用输入等方式优化结构,提升整体系统容量。
许多用户误以为提交前的验证即保证交易成功。实际上,即使脚本通过预检,若目标输出已被其他交易抢先消耗,原交易仍将失效。这强调了链上状态的动态性与不可预测性。
此外,不能将eUTXO的并行能力理解为无限可扩展。其并行性受限于输出分布情况。若大量用户频繁操作同一合约输出,依然会造成拥堵与失败率上升。
需要明确的是,eUTXO仅涉及会计与验证机制,并不保障代币安全、合约可靠性或市场价值。智能合约漏洞、平台故障、欺诈行为及监管变化仍是主要风险。切勿泄露助记词,避免资产损失。
根据2026年9月最新开发报告,Input Output Global已部署Dijkstra批处理验证机制,支持子事务中的Plutus脚本运行,并将执行预算纳入区块与费用限制。Intersect团队也在推进Node 11.2版本,计划引入新型区块格式与Plutus V4上下文支持,但尚未达到硬分叉阶段,当前仍属测试与演进阶段。
它是基于未花费交易输出的改进型会计体系,交易通过消耗旧输出、生成新输出来转移价值,并由脚本验证花费合法性,广泛应用于智能合约场景。
Datum是输出所关联的状态数据;Redeemer提供花费请求的动作参数;交易上下文则向验证器提供外部信息,三者协同判断交易是否符合规则。
可以,前提是它们使用不同的输出。一旦出现输入竞争,系统将按顺序处理,仅允许一笔交易成功,其余失败。