ブログ一覧に戻る
マルチシグ

個人カストディに 2-of-3 マルチシグが最適な理由

2-of-3 の金庫を囲むように、1つの鍵は紛失として消され、盗まれた鍵は境界の外で阻まれている。それでも残る2つの鍵が金庫を開ける。

どのセルフカストディの計画も、その本質はどの災難が先に訪れるかへの賭けです。写しを一切作らずにシードフレーズを1つだけ保管するなら、それを失う日は決して来ないという賭けをしていることになります。安全のためにそのフレーズの写しをあちこちに分散させるなら、そのどれ1つとして見つからないという賭けをしていることになります。2-of-3 マルチシグは、そのどちらかを選ぶことを拒みます。3つの独立した鍵がウォレットを管理し、そのうち任意の2つで資金を動かせますが、1つだけでは動かせません。鍵を1つ失っても、あなたの資産は生き残ります。鍵を1つ盗まれても、やはりあなたの資産は生き残ります。

この二重の耐性こそが本稿の論旨のすべてであり、正確に語る価値があります。というのも、ハードウェアウォレットであれ、スチールプレートであれ、銀行の貸金庫であれ、単一鍵の仕組みではこれを実現できないからです。以下では、紛失への備えと盗難への備えがなぜ正反対の方向へ引っ張り合うのか、2-of-3 という閾値が実際に何を保証し、どこで保証が尽きるのか、3つの鍵が運命を共にしないようどう配置するのか、そしてこの仕組みを何十年にもわたり健全に保つただ1つの訓練について解説します。

紛失と盗難は正反対の方向へ引っ張り合う

暗号資産が失われる道は2つあります。奪われる場合——フィッシング、マルウェア、空き巣、破綻したカストディアン——と、動かせる唯一の鍵がもうどこにも存在しなくなり、行き場を失う場合です。後者の障害はけっして珍しいものではありません。Chainalysis の推計によれば、すべてのビットコインのおよそ20%が、鍵を永久に失ったと見られるウォレットに眠っています。それらの資産を攻撃した者は誰もいません。ただ誰かが、1枚の紙を、1台のスマホを、あるいは記憶を失っただけなのです。

シードフレーズが1つだけの場合、一方の障害への備えがそのまま他方の障害を招きます。写しを増やして分散させれば紛失は起こりにくくなりますが、写しの1枚1枚が完全な支払い権限であるため、盗難の標的は1つから複数へと増えてしまいます。写しを1枚だけにして厳重に隠せば盗難は難しくなりますが、たった一度の洪水、一度の火災、あるいは隠し場所を1つ忘れただけで、すべてが終わります。この罠についてはシードフレーズは単一障害点であるで詳しく取り上げました。要するに、鍵が1つでは、両端を同時に守れるダイヤルの目盛りはどこにも存在しないのです。

盗難への備えは鍵の写しを減らすことを求め、紛失への備えは写しを増やすことを求めます。署名の閾値とは、そのどちらかを選ぶのをやめるための方法です。

2-of-3 マルチシグが実際に保証するもの

2-of-3 マルチシグとは、3つの独立した鍵によって管理され、資金を動かすには任意の2つが署名しなければならないウォレットです。このルールを執行するのはアプリでも企業でもなく、チェーンそのものです。Bitcoin は早い時期からスクリプトレベルでマルチシグを理解しており、2012年の pay-to-script-hash によって実用的に使えるようになりました。さらに2021年以降は taproot によって、こうした支払いがよりコンパクトかつプライベートになっています。一方 Ethereum や類似のネットワークでは、この閾値は誰もが読めるコントラクトの中に存在します。

先ほどの2つの障害を、このルールに通してみましょう。鍵を1つ失っても——スマホが壊れても、紙が燃えても——残る2つの鍵が依然として閾値を満たします。あなたはすべてを新しいウォレットへ移す取引に署名し、そのまま運用を続けられます。次に盗難を通してみましょう。いずれか1つの鍵を手に入れた攻撃者は、2つ必要なところに署名を1つ持つだけで、何も奪えません。適切に配置された 2-of-3 から実際に盗み出すには、攻撃者は最初の侵害にあなたが気づく前に、異なる場所に、異なる形で保管された2つの鍵を破らなければなりません。引き出しに置き忘れたシードフレーズを1枚撮影するのとは、次元の異なる困難な犯罪です。

正直に1つの限界も述べておきます。2つの鍵が同時に機能しなくなった場合——1つを失い、鍵の入れ替えを終える前にもう1つを完全に盗まれた場合——2-of-3 は資金を盗人に渡しはしませんが、資金を凍結させてしまうことはあります。あなたが署名を1つ、攻撃者が署名を1つ持ち、どちらも2つには届かないからです。凍結は、盗まれるという最悪の事態よりもはるかにましです。そして本稿の後半で扱う鍵の入れ替えの訓練は、まさにこのシナリオを机上の空論にとどめておくために存在します。

2-of-3 の閾値を通る2つの経路。鍵を1つ失った場合、残る2つの鍵が2つの署名を生み出し資金が動く。鍵を1つ盗まれた場合、盗人の署名1つは阻まれる。
鍵を1つ失っても残る2つが署名でき、鍵を1つ持つ盗人は決して閾値に届かない。

なぜ 2-of-2 や 3-of-5、あるいは優れたハードウェアウォレット1台ではないのか?

どの代替案も、2つの耐性のうち一方を諦めることになります。

  • 1-of-1 — どれほど厳重に保管しても、鍵は1つ。 ハードウェアウォレットは、鍵が端末の中にある間はそれを見事に守ります。しかし端末の背後にある紙のバックアップは、それ単独で支払いができてしまうため、計算は決して変わりません。1つの資格情報、絶大な権限、そして単一障害点です。
  • 2-of-2。 盗難への耐性は完璧で——どの鍵も単独では動けません——紛失への耐性はゼロです。どちらかの鍵を失えば資金は永久に固まってしまいます。2者間の口座には正当な理由で 2-of-2 が使われますが、誰かの主要な金庫として安全に使うには、追加の事故保護の仕組みが必要です。
  • 3-of-5 以上。 冗長性はより高く、複数の担当者と文書化された手順を持つ組織にはふさわしい形です。しかし個人にとって、5つのシードフレーズとは、作成し、検証し、地理的に分離し、何年にもわたって再確認しなければならない5つのバックアップを意味します。ミスが生まれるのは暗号技術ではなく、運用の接面です。

2-of-3 は、鍵の紛失と鍵の盗難の両方を生き延びられる最小の閾値です。だからこそこれは、より優れた選択肢の間の妥協ではなく、個人カストディの標準的な推奨構成なのです。MPC ウォレットは、3つの鍵まるごとを協調させる代わりに、1つの鍵を数学的に分割することで、これと似たリスク特性に到達します。双方に本物のトレードオフがあり、その比較はMPC vs マルチシグ:率直な比較で行いました。ここで最も重要なマルチシグの性質は、3つの鍵のそれぞれが、独自プロトコルの断片ではなく、独立して回復可能なごく普通のウォレット鍵であるという点です。

3つの鍵が運命を共にしないよう配置する

閾値の計算が報われるのは、鍵が本当に互いに独立して機能しなくなる場合だけです。私たちが推奨する配置パターンは、ハードウェアの購入をいっさい必要としません。

  1. 鍵1 — 毎日使うスマホ。 持ち歩く署名者です。取引を起こし、最初の署名を提供しますが、それ単独では何も支払えません。このことが、スマホの盗人やマルウェア感染の「価値」を静かに変えてしまいます。
  2. 鍵2 — 常にオフラインの予備のスマホ。 多くの家庭にはすでに1台眠っています。初期化してネットワークから永久に切り離せば、エアギャップされたコールド署名者になります。未署名の取引を QR コードで入れ、署名を QR コードで取り出し、鍵の情報がオンラインの端末に触れることは決してありません。
  3. 鍵3 — まったく別の場所に置いた紙。 一度だけ書き写し、別の建物——銀行の貸金庫や、別の街に住む信頼できる親族の金庫——に保管したシードフレーズです。これは日常のためではなく回復の日のために存在し、インターネットに接続された機器に打ち込まれることは決してありません。

この配置を支配するルールは2つあります。いかなる2つの鍵も同じ建物を共有してはなりません。そうすれば、一度の空き巣、火災、洪水では定足数に届かないからです。そして地理的な分離は、保管の好みではなくセキュリティ上の管理策です。「2つの鍵を破る」を一晩の仕事から組織的な作戦へと変えるのは、距離にほかなりません。Ownbit のマルチシグでは、すべての鍵が標準的な BIP39 シードフレーズであるため、3つの位置のどれも、すでにお持ちのハードウェアで満たすことができます。Ledger や Trezor のニーモニックは、3つのうちの1つの署名者としてインポートできます。Ownbit のマルチシグはチェーンをまたいで共同署名を調整するため、同じ3つの鍵で BTC、ETH とその主要な L2、TRON、Solana などを管理できます。そしてこのように構築した Bitcoin マルチシグウォレットは、2-of-3 を Bitcoin スクリプトの中で直接決済し、Ownbit のサーバーがなくても資金を動かせる自己回復ガイドも公開されています。

3つの離れた場所にある3つの鍵——毎日使うスマホ、オフラインの予備のスマホ、別の建物に置いた紙のバックアップ——と、任意の2つが集まれば署名できることを示す矢印。
3つの障害領域に分けた3つの鍵。そのうち任意の2つが集まれば署名できる。

最初の障害に備える訓練

2-of-3 が健全であり続けるのは、1つの習慣によってです。すなわち、鍵に起きたどんな出来事も、面倒事ではなく火災報知器として扱うことです。

  • 鍵を1つ失った — 毎日使うスマホが壊れた、紙が見つからない。残る2つの鍵はまだ支払えるので、それを使ってすべてを、3つの鍵がそろった真新しい 2-of-3 へ移し、古いウォレットを引退させます。数か月ではなく数日のうちに。
  • 鍵がさらされたかもしれない — 侵入、不審な端末、開封された形跡のあるバックアップの封筒。同じ訓練、同じ緊急度で対応します。資金が新しいアドレスに着いた瞬間、攻撃者が手にしているものは、もはや何も守っていない閾値へ向けた署名1つにすぎなくなります。
  • まだ何も起きていない。 最初にセットアップしたとき、少額で共同署名のテスト送金を一度完了させておきましょう。そうすればすべての鍵が一度は署名を経験し、その一連の手順に馴染めます。緊急時は、ワークフローを学ぶには最悪のタイミングです。

この訓練こそが、「2つの障害が同時に起きる」ことを、現実のリスクから、意図的に作り込まれたほぼあり得ない事態へと変えます。2つ目の障害が害をなしうる猶予は、最初の障害のあとあなたが鍵の入れ替えにかける時間と、まさに同じだけ続くのです。

2-of-3 が答えにならない場面

金額に応じて道具を選ぶことも、この議論の一部です。肩をすくめて失える程度の残高であれば、この一連の手順はリスクに見合う以上のコストがかかり、厳重に保管した1つのシードフレーズは十分に正当な選択です。鍵を自分で管理することが決してない人にとっては、規制されたカストディアンも同様に正当な選択です——ただし、2022年の FTX 破綻を、カストディアンはバックアップではなく取引相手なのだという教訓として織り込んでおくかぎりにおいて。トレジャリー資金を保有する組織は、たいていむき出しの閾値以上のもの——ロール、上限、ホワイトリスト——を必要としますが、これはそれ自体で1つの話題です。そして、単一の信頼できる当事者をひそかに再び持ち込むあらゆる仕組みは、どこに現れようと精査に値します。2023年の Ledger Recover への反発は、突き詰めれば、シードの情報が他人の条件のもとで端末の外へ出ていくことをユーザーが拒んだ、ということでした。自分自身で配置する 2-of-3 マルチシグには、そのような当事者は存在しません。ごく普通の3つの鍵、ごく普通の2つの署名、そして誰もが検証できる計算だけです。

よくある質問

2-of-3 マルチシグウォレットとは何ですか?

2-of-3 マルチシグとは、3つの独立した鍵によって管理され、資金を動かすには任意の2つが取引に署名しなければならないウォレットです。1つの鍵だけでは支払えないため、鍵を1つ盗まれても何も奪われません。任意の2つの鍵で資金を回復できるため、鍵を1つ失っても何も行き場を失いません。この閾値を執行するのはブロックチェーンそのものです——Bitcoin ではスクリプトによって、Ethereum のようなネットワークでは検証可能なコントラクトによって執行されます。

2-of-3 マルチシグの鍵を1つ失ったらどうなりますか?

何も失われません。残る2つの鍵が依然として閾値を満たすので、それを使って、すべての資金を、3つの鍵がそろった新しく作成したマルチシグへ移す取引に署名します。速やかに行ってください。鍵を1つ失ってからウォレットを入れ替えるまでの時間が、2つ目の障害があなたに害をなしうる唯一の猶予です。

3つの鍵のうち1つを盗んだ盗人は、何かを奪えますか?

いいえ。1つの鍵が生み出す署名は1つで、ウォレットは2つを必要とします。そのため、いずれか1つの鍵——あるいはいずれか1枚のシードフレーズの写真——を手にした盗人は、何も動かせません。それでもこの出来事は真剣に受け止めてください。残る鍵で新しい 2-of-3 へ入れ替え、盗まれた鍵を永久に無価値にしましょう。

2-of-3 マルチシグには、3台のハードウェアウォレットが必要ですか?

いいえ。毎日使うスマホ、QR コードベースのコールド署名者として常にオフラインに保つ予備のスマホ、そして別の場所に保管した紙のシードフレーズがあれば、追加のハードウェアなしで完全な 2-of-3 を構成できます。Ownbit ではそれぞれの鍵が標準的な BIP39 シードフレーズであり、お望みなら、既存の Ledger や Trezor のニーモニックを3つの鍵のうちの1つとしてインポートすることもできます。

この仕組みが理屈のうえで腑に落ちたなら、確信を持って託す前に、まずは小銭で試してみてください。Ownbit のマルチシグなら、買い足すハードウェアなしで、2台のスマホと1つの紙のバックアップにまたがる 2-of-3 を、ひと午後でセットアップできます。そして同じ鍵で、閾値を Bitcoin スクリプトそのものが執行する Bitcoin マルチシグウォレットも運用できます。新規ユーザーには7日間の無料トライアルが付き、会員かどうかにかかわらず、あなたの鍵と資産はあなたのものであり続けます。