Skip to main content

フェーズ3:Midnight のしくみ

Account と UTXO(なぜ両方?)

お金やデータの数えかたには「UTXO型(コインを使う)」と「アカウント型(残高を書きかえる)」の2種類があります。Midnight がなぜ両方を組み合わせるのかを、やさしく&開発者目線で。


Midnight Academy の Phase 2「Account vs UTXO — Why Midnight Uses Both」 にあたる話です。 ブロックチェーンには「お金の数えかた」が大きく2種類あります。Midnight はその両方を使います。なぜでしょう?

たとえ話:おさいふ vs 銀行口座

数えかた たとえ 代表
UTXO型 おさいふの中の小銭・お札。使うときは1枚まるごと出して、おつりをもらう Bitcoin / Cardano
アカウント型 銀行口座の残高。使うと数字が書きかわる Ethereum

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とDUST2つの台帳とZswap)。

開発者として理解すべきこと

  • UTXO=コインを使い切る/アカウント=残高を書きかえる、の2モデルがある
  • Midnight は UTXO台帳 + アカウント型契約層のハイブリッド。価値移動はUTXO、契約状態はアカウントが得意
  • 「価値の移動」と「契約の状態」を別レイヤーとして考えると、Midnight の設計が読みやすい
  • 具体的な台帳・トークンの内部仕様は公式(What is Midnight? / whitepaper)(外部リンク・別タブで開きます)で確認

公式Docsではどこ?

今日のまとめ

  • UTXO=コイン式、アカウント=残高式
  • Midnight は両方を組み合わせる(価値はUTXO、契約はアカウント)
  • だからトークン管理も2系統になる

今はここだけでOK

「おさいふ(UTXO)と銀行口座(アカウント)の、いいとこ取り」——これでOK。

✍️ 白紙練習

答えを見る前に、いったん自分の頭と手から出してみよう。手で書くと「わかったつもり」がはがれます。

白紙練習

UTXO型とアカウント型のちがいを、たとえ話を使って自分のことばで説明してみよう。

白紙練習

Midnight がなぜUTXO型とアカウント型の両方を使うのか、その理由を説明してみよう。

クイズ

UTXO とは何の略? また日本語ではどういう意味?

クイズ

UTXO型が並行処理に強く、プライバシーとも相性がよいのはなぜ?

クイズ

アカウント型はどんな仕組みと相性がよい?

クイズ

Midnight の combined model は、どの層がUTXO型で、どの層がアカウント型?

📘 もっと正確に(原文準拠コース)

Academy 原文に忠実な詳しい版はこちら:

つぎに読むページ

➡️ 公開・秘密・証明の置きかたへ。公開・秘密・証明の置きどころ