Hoskinson 将 Cardano 的 eUTXO 与 Adam Back 的建议联系起来

一场关于 Ethereum 早期设计的交流把 Back 的 UTXO 建议与 Cardano 的架构联系起来。它也为 Vitalik Buterin 提出在 Ethereum 扩容策略中结合 UTXO 风格与动态状态的想法提供了历史背景。

By SongMarketCap

Cardano News - Hoskinson 将 Cardano 的 eUTXO 与 Adam Back 的建议联系起来

Charles Hoskinson 在 10 月 9 日表示,他在开发 Cardano 的扩展 UTXO 模型时采纳了 Adam Back 的建议。回应 Back 回忆与 Ethereum 早期团队在 2014 年的一次讨论时,Hoskinson 对比了此后各自的路径:Cardano 采用 eUTXO,而 Back 一方推进 Simplicity 和 Liquid。

Hoskinson 回应 Back 的 UTXO 建议

Back 回忆称,在 Ethereum 团队尚未编写任何代码之前,他曾建议采用 UTXO,而不是采用带有活跃代码与可变状态的余额模型。他将这一建议与 Buterin 近期关于基于 UTXO 方法的讨论进行比较,并对当初建议未获承认感到不满。

在一则相关帖子中,Back 描述了他记得曾向团队发出的一个警告。他认为,将活跃的虚拟机代码与基于余额的参与者与消息传递模型相结合,可能会产生竞争条件,即操作之间的交互及其执行顺序会影响结果。

Back 还表示,是 Hoskinson 发起了那次通话,参与者还包括其他几位 Ethereum 技术联合创始人。

Hoskinson 回应称:

“嗯,我确实采纳了你的建议。我们创建了 EUTXO,而你们构建了 simplicity 和 liquid。”

这番互动记录了他们对当时讨论的回忆,以及 Hoskinson 明确将那一建议与其后续开发方向联系起来。

Crypto Crow 在 “Not So Fast… Watch This First” 中报道了这些帖子,将其解读为对 Cardano 架构的认可。Back 的表述聚焦于他的建议与 Ethereum 的早期设计,而 Hoskinson 则提供了与 Cardano 的直接关联。

Cardano 的 eUTXO 如何支持智能合约

UTXO 是未花费交易输出的缩写。资金由较早交易产生的输出表示,新交易会消耗这些输出并用新的输出替代。每个输出只能被花费一次。

钱包通过汇总用户所控制的各个输出来显示余额。当发送 ADA 时,它会选择合适的输出,并为收款人和返还给发送方的找零创建新的输出。

Cardano 的 eUTXO 模型通过数据与智能合约规则扩展了这种方法。一个输出可以携带表示应用状态的数据,而验证脚本会检查一笔交易是否满足花费被锁定资金的条件。

Ethereum 采用基于账户的模型,其中包括由代码控制的合约账户。这些账户包含可由交易执行修改的存储数据。

因此,开发者在这两个网络上组织应用状态的方式不同。

Cardano 交易会预先指定其动作、脚本参数与计算执行预算。其文档描述了开发者如何在提交前本地评估脚本行为并计算费用。

这种可预测性并不能消除对输出的竞争。如果另一笔交易先花费了所需的输入,已准备好的交易将无法再消耗它。将应用逻辑分布到多个 UTXO 上对于协调请求并实现更高的并行性非常重要。

Buterin 概述一种混合式 Ethereum 扩容方法

在 8 月 16 日的一篇帖子中,Buterin 描述了一项拟议的 Ethereum 扩容策略,结合了 UTXO 风格状态、动态状态及其间诸多方法的优势特性。

他将其中若干理念的开创性归功于 Bitcoin 社区,并特别提到了 Utreexo。他表示其目标是在保留去中心化、节点运行便捷性与抗审查性的同时,扩展 Ethereum 绝大多数活动的规模。

该提案关注将不同的状态组织方式相结合。Buterin 的帖子并未提及 Cardano 或其 eUTXO 模型,而且描述的是一种拟议方向,而非既定的迁移路径。

Cardano 已经使用 eUTXO 来表示合约状态并验证 ADA 及其他资产的转移。Ethereum 的讨论则在于未来的扩容架构中,UTXO 风格技术如何与动态状态并行共存。Hoskinson 的回应把 Cardano 现有模型置于这场更长久的技术对话之中,并指出 Back 的建议是他选择采纳的意见。