GaiaExGaiaEx
MPCウォレットとは何か?マルチパーティ計算セキュリティ
初級ブロックチェーン6 min read

MPCウォレットとは何か?マルチパーティ計算セキュリティ

誰一人がマスターキーを握らないよう、秘密鍵を分割する

投稿を共有

秘密鍵のジレンマ

すべての暗号資産ウォレットは、たった一つの秘密——秘密鍵——に帰着します。それを保持する者が資金を支配します。それだけです。

その設計は理論上は優雅です。しかし実際には、スローモーションの大惨事を生み出してきました。Chainalysisの推定によれば、これまでに採掘されたすべてのビットコインのおよそ20%——現在の価格で1,400億ドル超——が、所有者が秘密鍵へのアクセスを失ったウォレットの中に眠っています。サンフランシスコのプログラマー、Stefan Thomasは、7,002 BTCを保有するIronKeyドライブに対して、残り2回のパスワード推測しか持っていません。それを外すと、ドライブは永久に自己暗号化されます。彼は何年もどちらの推測も試していません。

そこで、あなた自身で鍵をバックアップします。24語のシードフレーズを金属に刻み、金庫に鍵をかけ、場合によっては複数の場所に分散させます。あなたは自分自身の銀行になります——そして自分自身の単一障害点になるのです。火事、忘れた金庫の暗号、うっかりiCloudにアップロードしてしまった写真、それで終わりです。

代替案は?鍵をカストディアンに預けることです。取引所です。それは、2022年11月にFTXが崩壊し、一夜にして80億ドルの顧客預金が蒸発するまでは機能していました。その前のMt.Gox。QuadrigaCX。このパターンが繰り返されるのは、そのアーキテクチャがそれを要求するからです。一つの鍵、一つの場所、間違いが起こり得るものがひとつ。

10年の間、選択肢はその2つだけでした——自分でリスクを管理するか、信頼しなければならない誰かにそれを外部委託するかです。MPCはその二択を打ち破ります。

MPCが実際に行っていること

マルチパーティ計算(MPC)は、1980年代にスタンフォードのAndrew Yaoによって開発された暗号理論の一分野です。核となる洞見はこうです。複数の当事者が、互いにその入力を一切明らかにすることなく、自分たちのプライベートな入力に対する関数を共同で計算できるということです。ウォレットに適用すると、これは秘密鍵が暗号化された断片——シェア——に分割され、別々のデバイスやサーバーに分散されることを意味します。完全な鍵はどこにも組み立てられません。あなたの電話の中でも。サーバーの中でも。メモリの中でも。どこにもありません。

3人のうち2人の担当者が同時に鍵を回すことを要求する銀行の金庫を想像してください。ただし「鍵」は独立した計算を実行する数学的なシェアであり、「金庫の扉」は、何か通常と異なることが起きたことをブロックチェーンが知ることなく受け入れる、有効な電子署名です。

これはしきい値署名と呼ばれます。2-of-3の構成では、3つのシェアが存在し、そのうち任意の2つが協力してトランザクションを承認できます。1つのシェアはあなたの電話に、1つはプラットフォームのサーバーに、1つは暗号化されたオフラインバックアップにあります。あなたの電話が盗まれても、攻撃者が保持するのは正確に1つのシェアだけです——単独では数学的に無用です。残りの2つのシェアは、ウォレットアドレスを変えることも資金を移動させることも要求せずに、新しいデバイスシェアを生成できます。

この計算はミリ秒単位で行われます。「確認」をタップすると、シェアが分散した数学演算を実行し、標準的なトランザクションがブロックチェーンに届きます。目に見える遅延はありません。オンチェーンに追加の署名もありません。他のどのウォレットとも区別する指紋もありません。

MPC Key Sharding — 2-of-3 Threshold Private Key never assembled in full Device Share your phone or laptop Server Share platform infrastructure Recovery Share encrypted offline backup Any 2 of 3 shares can sign — no single share is useful alone Share A computes partial result sig_partial_1 = f(share_a, tx) Share B computes partial result sig_partial_2 = f(share_b, tx) Valid Signature standard ECDSA output
秘密鍵は3つの暗号化されたシェアに分割される。任意の2つが協力して有効なトランザクション署名を生成する——ブロックチェーンは標準的な単一鍵ウォレットにしか見えない。

可視化された、単一鍵の問題

MPCが何を変えるのかを理解する最も簡単な方法は、それを従来のウォレットと並べて置くことです。

従来型のウォレット——ハードウェア、ソフトウェア、紙、どれでも同じですが——は、一つの秘密鍵を一つの場所に保存します。それがセキュリティモデルの全体です。その単一のコピーが侵害されれば、攻撃者はウォレット内のすべての資産を完全かつ不可逆的に支配します。コピーが破壊されれば、アクセスも失われます。ブロックチェーンはあなたの意図を知りません。有効な署名だけを認識するのです。

MPCウォレットは、そのリスクを複数の独立したシステムに分散させます。1つのシェアが侵害された?他がなければ無用です。1つのシェアが破壊された?残りのシェアが代わりのものを再生成します。ウォレットアドレスは同じままで、資金は決して動かず、古いシェアは暗号学的に無効化されます。これは根本的に異なるアーキテクチャです——個々の構成要素が故障するという前提の上に築かれており、故障しないことを願うものではありません。

Traditional Wallet MPC Wallet Private Key one copy, one location Key stolen = total loss Key lost = funds unrecoverable No rotation without new address single point of failure Share 1 device Share 2 server Share 3 backup 1 share stolen = attacker gets nothing 1 share lost = recoverable from others Shares refresh, address stays the same no single point of failure
従来型ウォレットはすべてのリスクを一つの鍵に集中させる。MPCはそれを独立したシェアに分散させる——一つを侵害しても何も得られない。

MPCはマルチシグではない

マルチシグウォレットを使ったことがあるなら、MPCは聞き覚えがあるように感じるかもしれません。両方とも単一障害点をなくします。しかし仕組みは完全に異なり、その違いは思っている以上に重要です。

マルチシグはブロックチェーン層で機能します。2-of-3のマルチシグウォレットは、3つの独立した秘密鍵を保持します。トランザクションに署名するとき、2人の鍵保持者がそれぞれ完全な署名を生成し、両方がオンチェーンに載ります。ブロックチェーンはしきい値が満たされたことを検証します。誰でも——マイナー、ブロックエクスプローラー、見ている誰でも——それがマルチシグの設定であることを確認できます。

MPCはブロックチェーンの下層で機能します。単一の鍵の3つのシェアが、オフチェーンで協力して1つの標準的な署名を生成します。ブロックチェーンはMPCが関与していたことを知りません。ただ、普通のアドレスからの通常のトランザクションが見えるだけです。

その違いには実際の影響があります。マルチシグのサポートはチェーンごとに大きく異なります——ビットコインの実装はEthereumのものと異なり、Solanaの扱いはさらに異なり、多くのL2ロールアップはネイティブサポートが限定的または存在しません。MPCは標準的なECDSAまたはEdDSAの署名を生成するため、修正なしでどのチェーンでも機能します。ガスコストも異なります。マルチシグのトランザクションは複数の署名を運ぶため、コールデータが大きくなり、Ethereumでの手数料は高くなります(時に2〜3倍)。MPCのトランザクションは、単一鍵のトランザクションとサイズが同一です。

プライバシーもまた一つのギャップです。マルチシグウォレットの構造はオンチェーンで公開されて見えるため、高額なマルチシグアドレスを特に狙う高度な攻撃者の標的になりやすくなります。MPCウォレットは通常のものと区別できません。

そして鍵の交代があります。ほとんどのマルチシグの構成で署名者を変更するには、新しいコントラクトを展開するか、新しいアドレスへ移行する必要があります——これは破壊的で手数料のかかるプロセスです。MPCのシェアはリフレッシュできます。現在のセットから新しいシェアを導出し、古いシェアを無効化し、これらすべてをウォレットアドレスを変更することなく、ブロックチェーンに触れることなく行えます。従業員が退職する?シェアをローテーションして先に進むだけです。移行もダウンタイムもありません。

実際に誰がこれを使っているのか

Fireblocksが最初に出てくる名前です。彼らのMPC基盤は、1,800以上の機関投資家の顧客——BNY MellonやBNP Paribasといった銀行、ヘッジファンド、決済プロセッサー、取引所——にわたって、累計6兆ドル超の移転ボリュームを処理してきました。これらの機関が暗号資産を動かすとき、各トランザクションを承認しているのはMPCのしきい値署名です。引き出しに入れられたハードウェアウォレットを持つ一人の人間ではありません。

コンシューマー側では、ZengoがMPCが複雑に感じる必要はないことを示しました。彼らのモバイルウォレットは2-of-2のMPCスキームを使用しています——1つのシェアはデバイスに、1つはZengoのサーバーにあり、ユーザーはシードフレーズに一度も遭遇しません。書き留める24語もありません。購入するハードウェアデバイスもありません。生体認証、普通に見えるアプリ、そして顔マッピングに裏付けられたリカバリーキット。2019年以来100万人以上のユーザーがいて、一つのアカウントもハッキングされたり凍結されたりしていません。

機関投資家の流れは急速です。2024年のFireblocksの業界調査によると、機関投資家の暗号資産企業の67%がMPCベースのカストディを採用済み、または積極的に検討中であり、これはわずか2年前の38%から上昇したものです。保険の要件と受託者責任がこの変化の多くを推進しています——他人のお金を規制上の監視下で管理する誰にとっても、単一鍵モデルはもはや選択肢になりません。

クロスチェーンの基盤もMPCに大きく依存しています。WormholeのようなブリッジやAxelarのようなプロトコルは、チェーン間の資産移転を承認するためにMPCで保護されたバリデーターネットワークを使用しています。数億ドルがEthereumからL2に移動するとき、それを承認するのは、単一のバリデーターの秘密鍵ではなく、分散したしきい値署名です。

GaiaExがMPCをどう適用しているか

GaiaExは、ローンチ後に従来のカストディモデルに後付けするのではなく、最初からMPCをアーキテクチャに組み込んで構築しました。

アカウント作成は鍵生成と即時のシャーディングを引き起こします。1つのシェアはあなたのデバイスに置かれ、他のシェアはGaiaExの地理的に分散した基盤に分配されます。どの時点でも、単一のサーバー——あるいは企業としてのGaiaEx——が、あなたの鍵を再構築したり資金を移動させるのに十分なシェアを保持することはありません。それはポリシー上の決定ではありません。数学的な制約なのです。

取引の間、しきい値署名の計算は200ミリ秒未満で実行されます。あなたが注文や引き出しを確認すると、関連するシェアが協力して標準的なブロックチェーントランザクションを生成します。MPCの層は見えません——追加の確認ステップも、目に見える遅延も、分散署名が発生したというオンチェーンの痕跡もありません。

デバイスを失った際の復旧は、シードフレーズなしで機能します。残りのシェアがGaiaExの復旧プロトコルを通じてあなたの身元を確認し、新しいデバイスシェアを生成し、古いものを無効化します。あなたのウォレットアドレスは同じままです。資金は動きません。全体のプロセスは、24語をどこに書いたか思い出そうとする不安な時間ではなく、数分で済みます。

これが実際に意味すること: GaiaExは、あなたに暗号理論の専門家になることを求めることなく、セルフカストディの保証——あなたの鍵、あなたのコイン——を提供します。分散署名は、あなたが取引している間、背後で実行されます。得られるのは、単一の侵害も、不正な内部関係者も、失われたデバイスも、あなたの資産を危険にさらすことができない取引所です。コールドストレージのセキュリティ、ホットウォレットの速さ、そして鍵管理について一切考える必要のない、そのシンプルさです。