BSCN 近日的一則短片再次點出 Cardano 與 Ethereum 在交易模型上的核心差異:
Cardano 的交易在付款後不會失敗。
Ethereum 使用帳戶模型,合約狀態在交易執行時才改變,你事後才知道費用與結果,失敗的交易仍然要付 Gas。
Cardano 使用延伸 UTXO(eUTXO),輸入決定結果,在提交前已可確定。因此 ADA 費用可預測,注定失敗的交易會在錢包階段被拒絕。
一、兩種模型的基本分別
Ethereum:帳戶模型(Account Model)
- 類似銀行帳戶,每個地址有一個可變餘額
- 交易執行時才真正改變全域狀態
- 合約可能在執行中途失敗(例如 Gas 不足、條件不滿足)
- 失敗的交易仍然消耗 Gas
Cardano:延伸 UTXO 模型(eUTXO)
- 繼承 Bitcoin 的 UTXO 概念,並加入 Datum 與腳本驗證能力
- 交易明確指定要消耗的輸入(UTXO)與產生的輸出
- 驗證結果只取決於交易本身及其輸入,可在鏈下提前檢查
- 注定失敗的交易在錢包 / 節點階段被拒絕,不會上鏈,也不會收費
二、實際影響
| 面向 | Ethereum(帳戶模型) | Cardano(eUTXO) |
|---|---|---|
| 費用預測 | 只能估算,受網絡擁堵影響 | 可精確計算 |
| 失敗交易費用 | 仍需支付 Gas | 通常不收費(在提交前被拒) |
| 執行確定性 | 依賴當下全域狀態,可能變化 | 輸入固定,結果可預測 |
| 並行處理 | 受共享狀態限制 | 不同 UTXO 可自然並行 |
這也是為什麼 Cardano 用戶較少遇到「交易失敗但 Gas 已扣」的情況。
三、技術優勢與取捨
eUTXO 的優勢:
- 費用確定性高
- 交易結果可提前驗證
- 降低因狀態競爭而導致的意外失敗
- 有利於形式化驗證與安全性分析
需要注意的地方:
- 開發者需適應 UTXO 思維(尤其是並發與狀態管理)
- 錢包需要妥善管理多個 UTXO,避免碎片化問題
四、專業評價
兩種模型各有取捨。Ethereum 的帳戶模型更接近傳統程式設計思維,開發門檻較低,生態成熟;Cardano 的 eUTXO 則在確定性、費用可預測性與並行潛力上具有結構性優勢。
對於重視「不會為失敗交易付費」與「費用可預先計算」的用戶與開發者來說,eUTXO 是一個明確的差異化特點。
結語
Cardano 的 eUTXO 模型讓交易在提交前就能確定結果與費用,避免了 Ethereum 帳戶模型中「失敗仍要付 Gas」的情況。這並非單純的營銷口號,而是兩種會計模型在設計哲學上的根本差異。
理解這個差異,有助於更準確評估兩條鏈在用戶體驗與開發體驗上的不同定位。
參考來源
- Cardano 官方 eUTXO 說明文件
- Cardano Developer Portal
- 相關技術比較文章