Midnight Academy の Phase 2「Account vs UTXO — Why Midnight Uses Both」 にあたる話です。 ブロックチェーンには「お金の数えかた」が大きく2種類あります。Midnight はその両方を使います。なぜでしょう?
たとえ話:おさいふ vs 銀行口座
UTXO型(コインを使い切る)
- お金は「コイン(札)」の集まり。500円玉で300円払うと、200円がおつり(新しいコイン)として返る。
- 「だれのコインか」を1枚ずつ扱うので、並行処理に強く、プライバシーとも相性がよい(コインを隠しやすい)。
- 使われていないコインを UTXO(Unspent TX Output=未使用の取引出力) と呼びます。
アカウント型(残高を書きかえる)
- 口座の残高という1つの数字を増減させる。
- 状態(state)を持つスマート契約と相性がよい(「いまの残高・いまの状態」を素直に表せる)。
Midnight は「両方」使う(combined model)
Midnight は、この2つを組み合わせた combined model(ハイブリッド) です(Midnightのしくみ の軸2)。
- 価値(トークン)の移動は UTXO 型のほうが、隠したり(shielded)並行処理したりしやすい。
- 契約の状態はアカウント型のほうが素直に書ける。
- だから「いいとこ取り」で両方を使う、というのが Midnight の選択です。
その結果、トークンも2種類の管理が出てきます(→ NIGHTとDUST・2つの台帳とZswap)。
開発者として理解すべきこと
- UTXO=コインを使い切る/アカウント=残高を書きかえる、の2モデルがある
- Midnight は UTXO台帳 + アカウント型契約層のハイブリッド。価値移動はUTXO、契約状態はアカウントが得意
- 「価値の移動」と「契約の状態」を別レイヤーとして考えると、Midnight の設計が読みやすい
- 具体的な台帳・トークンの内部仕様は公式(What is Midnight? / whitepaper)(外部リンク・別タブで開きます)で確認
公式Docsではどこ?
- Academy Phase 2 Unit 2.2(外部リンク・別タブで開きます)(Account vs UTXO)
- Hybrid / combined model(外部リンク・別タブで開きます)
今日のまとめ
- UTXO=コイン式、アカウント=残高式
- Midnight は両方を組み合わせる(価値はUTXO、契約はアカウント)
- だからトークン管理も2系統になる
今はここだけでOK
「おさいふ(UTXO)と銀行口座(アカウント)の、いいとこ取り」——これでOK。
📘 もっと正確に(原文準拠コース)
Academy 原文に忠実な詳しい版はこちら:
つぎに読むページ
➡️ 公開・秘密・証明の置きかたへ。公開・秘密・証明の置きどころ