Midnight Foundation は 10 月 28 日、署名ネットワークの Sig Network との提携を公式ブログと X で発表しました。Ethereum で動くアプリが、資産と流動性を Ethereum に置いたまま、利用者の残高と身元だけを Midnight の側で伏せられるようにする仕組みで、いまは Midnight の stagenet (公開前の試験環境) で動いています。
10 月 20 日に発表された Nightmode が「利用者が自分の資産を秘匿して使う」入口だったのに対し、今回は「アプリの側が Midnight の秘匿を部品として呼び出す」入口です。Midnight を、独立したチェーンとしてだけでなく、他のチェーンのアプリから届くプライバシーの層として使う道が、開発者向けに開いたことになります。この記事では、ブログが説明する仕組みと、試験環境でできること、まだ示されていないことを順に整理します。
初期報: MidnightがSig Networkと提携、Ethereumアプリケーションにプログラム可能なプライバシーを提供
Midnight のコントラクトが Ethereum の口座を持つ
仕組みの中心は、Midnight のコントラクトに Ethereum の口座を 1 つ持たせることです。ブログが説明する流れは次の 4 段階です。
- Midnight 上のコントラクト (Compact で書かれたもの) が利用者の依頼を確かめ、利用者の秘匿の請求権を焼却し、Ethereum の取引を 1 件キューに積む
- Sig Network が、独立した複数の署名者による閾値署名でその取引に署名する。1 人の署名者だけでは署名できない
- 取引はコントラクトの Ethereum の口座から実行される
- 実行の結果が Midnight に証明として戻され、利用者の残高が更新される
ブログは、ブリッジもラップもしないと書いています。資産は Midnight のコントラクトが管理する Ethereum の口座に置かれたままで、二つのネットワークの間を行き来するのは署名だけです。資産を別のチェーンへ移して包み直す一般的なブリッジとは、資金の置き場所の考え方が違います。
Sig Network の CEO の David Millar-Durrant 氏は、ブログで「アプリを秘匿にするために作り直す必要はないはずだ」(原文: “Teams shouldn’t have to rebuild an application to make it private.”) と述べています。アプリは Ethereum に残ったまま、秘匿にしたい処理と利用者の記録だけを Midnight へ移す、という分け方です。
Nightmode との違いは「誰が使う入口か」
Sig Network は、10 月 20 日に発表された Nightmode の裏で署名を担っているネットワークでもあります。Nightmode の記事で整理したとおり、Nightmode は利用者が元のチェーンの保管庫に資産を預け、Midnight の秘匿の残高として使う仕組みでした。
今回の提携でブログが強調しているのは、Sig Network の道具が Midnight で開発するすべてのチームに開かれた、という点です。開発者は Compact に Signet というモジュールを取り込み、自分の回路から Ethereum の取引を直接キューに積めます。Rust の開発者向けには、同じコントラクトを標準の Rust の道具でコンパイルできる実験的な言語 MinoCrab も用意されています。
どこまでを Ethereum に残し、どこからを Midnight へ移すかは、各チームが段階的に選べます。Ethereum に残した処理はそのまま Ethereum の流動性に届き、Midnight へ移した処理は秘匿になる、という配分の問題として設計されています。
隠れるもの、見えたままのもの
ブログは、秘匿の範囲をはっきり書いています。Ethereum の側の取引は公開されたままで、金額とタイミングは、ほかの Ethereum の口座と同じように見えます。伏せられるのは、利用者一人ひとりの活動・残高・取引の履歴で、これらは Midnight の側に置かれ、Ethereum からは見えません。
使い道としてブログが挙げているのは次の 4 つです。
- 秘匿の取引: 注文を Midnight のプールの中で相殺し、差し引きの分だけを Uniswap で取引する
- 秘匿の利回り: プールが 1 つの口座で Aave に貸し出し、利息がどの預け手のものかをたどれなくする
- 予測市場や永久先物の取引所での、プールを通した秘匿のポジション
- 使い捨てのアドレスへの秘匿の入出金 (ウォレットや決済アプリ向け)
規制への対応については、プール自体はふつうの Ethereum の口座なので、既存の取引監視の道具がそのまま使える、とブログは説明しています。どの預け入れを受け付けるか、利用者に何を開示してもらうかは Midnight のコントラクトの側で決め、資産の発行体は選択的開示で、チェーン上にデータを漏らさずに保有状況を突き合わせられます。Midnight Foundation の Gareth Christian-Lim 氏 (Director of Growth) は、Midnight はプライバシーと説明責任を同じアプリの中に置けるように作られた、と述べています。
stagenet で動くもの、まだ示されていないもの
ブログによると、Sig Network はいま Midnight の stagenet で動いており、預け入れ、Uniswap での交換、Aave への供給、Ethereum の任意のアドレスへの引き出しに対応しています。Sig Network が GitHub で公開した例のコントラクトは、Ethereum の ERC20 トークンを預かり、Uniswap で交換し、Aave に貸し出す保管庫 1 種類です。README は、この例を学習と実験のためのものとし、自己責任での利用と頻繁な変更を前提にするよう書いています。使っている Compact のコンパイラも 0.33.0-rc.2 という候補版です。
メインネットでいつ使えるようになるかは、ブログには書かれていません。SNS ではメインネットの時期に触れた投稿も見られますが、ブログ・Sig Network のドキュメント・Midnight の公式投稿では確認できなかったため、この記事では時期を書きません。
IOG と Midnight Foundation の公式アカウントもこの発表を引用して投稿し、IOG 創業者の Charles Hoskinson 氏は「Welcome to Midnight Ethereum」と添えています。Midnight の 10 月の発表は、Nightmode、今回の提携と、他のチェーンの資産とアプリに向けたものが続いています。
次に見るもの
確認先は 2 つです。1 つは Sig Network のドキュメント (docs.sig.network) で、対応ネットワークの記載が stagenet からメインネットに変わる時点が、Ethereum のアプリが実際に組み込めるようになる合図になります。もう 1 つは GitHub の sig-net/midnight-examples で、保管庫以外の例 (予測市場や決済アプリ向けの入出金など) が加わるか、Compact のコンパイラが候補版から正式版に移るかで、開発の進み具合が読めます。Midnight のエコシステムカタログに、この仕組みを使うアプリが載り始めるかも、あわせて追っていきます。
ことば
- stagenet — Midnight のメインネットの前段に置かれた試験用のネットワーク。新しい機能を本番の資産を使わずに動かして確かめる場で、今回の仕組みもここで先に公開されました。
- 閾値署名 — 複数の署名者のうち、決められた人数以上がそろったときだけ署名が成立する方式。1 人の鍵が盗まれても資産を動かせないため、Sig Network は Ethereum の口座の管理にこれを使っています。
- Compact — Midnight のスマートコントラクトを書くための言語。秘匿の処理を回路として記述します。今回の Signet モジュールも Compact に取り込んで使うため、Ethereum 側の取引もこの言語の中から組み立てられます。
一次ソース / 関連リンク
Midnight 公式ブログ「Sig Network partners with Midnight Foundation to bring privacy to applications on Ethereum」(midnight.network)
- IOG 公式 X の投稿
https://x.com/IOGroup/status/2115501629860634895 - Midnight 公式 X の告知
https://x.com/MidnightNtwrk/status/2115476383841276074 - Midnight Foundation 公式 X の投稿
https://x.com/midnightfdn/status/2115489716707733551
Sig Network ドキュメント(docs.sig.network)
Midnight エコシステムカタログ(midnight.network)
