
相当量のビットコインを保有している人にとって、単一障害点を含む保管構造は受け入れられないものである。紛失または盗難時に資金の永久的な損失につながる可能性がある単一のコンポーネントがウォレットに含まれている場合、それは検討する価値があまりにもない。大惨事の瀬戸際に多額の資産を置きたい人はいないだろう。
個々のビットコイン保有者は、紛失や盗難のリスクを軽減するのに役立つツールを多数利用できます。以前の記事では、これらのツールのいくつかを取り上げ、シングルシグウォレットに一般的に適用される変更点に焦点を当てました。ただし、これらのアプローチでは単一障害点を完全に排除できない理由も説明しました。
ビットコインの資金を安全に保管したい企業、政府、その他の機関にとって、単一障害点の排除は、あればよいというだけでなく、必須条件です。これらの組織にとって検討に値する唯一の保管モデルは、資金にアクセスするためのしきい値要件を含むモデルです。しきい値要件とは、複数の個別に保護されたコンポーネントを含む構造を表し、引き出しを承認するにはそれらのコンポーネントのサブセットが必要です。これは、単一障害点を完全に排除して、機関レベルのセキュリティを実現する唯一の方法です。
この記事では、スクリプト マルチシグ、シャミアの秘密分散 (SSS)、マルチパーティ計算 (MPC) という 3 つの異なる方法を使用してしきい値セキュリティを適用する方法について説明します。また、各アプローチに関連するトレードオフと、機関がニーズを満たす最適な設定を選択する方法についても詳しく説明します。
マルチシグとは何ですか?
スクリプト マルチシグが何なのかよくわからない場合は、マルチシグ ウォレットの仕組みと用途を説明した以前の記事を確認することをお勧めします。簡単におさらいすると、マルチシグ ウォレットには複数の秘密鍵が含まれ、トランザクションに署名するには特定の数 (しきい値) の秘密鍵が必要になるように設定できます。署名はさまざまな時間と場所で作成できるため、各キーは物理的に分離したままにできます。しきい値の数の署名が作成されると、それらを 1 つのビットコイン トランザクションに組み合わせて、資金を使用することができます。
2/3 スクリプト マルチシグ クォーラム。引き出しには、2 つのキーからの 2 つの一意の署名のしきい値が必要です。
しきい値要件を作成するこの比較的単純な方法は、すべての単一障害点を排除するのに非常に効果的です。支出しきい値が 1 より大きく、キーの総数より小さい限り、1 つのキーが紛失、盗難、または破壊されても、ビットコインが回復不能になることはありません。残りのキーは、資金を新しいマルチシグ設定に移動する回復トランザクションに署名できます。
サトシ・ナカモトはビットコインが初めてリリースされたとき、マルチシグが資金保護の一般的なメカニズムになるだろうと予想し、その基礎を築きました。しかし、マルチシグが広く使用されるツールになり始めたのは、2012 年の P2SH ソフトフォークになってからでした。それ以来、マルチシグは 10 年以上にわたって、さまざまなアドレス タイプで実戦テスト済みのセキュリティ モデルとして実証されてきました。
シャミアの秘密分散法とは何ですか?
シャミアの秘密分散 (SSS) は、有名な暗号学者アディ・シャミアが 1979 年に開発した秘密分散アルゴリズムです。これは、ビットコインを保護するためのしきい値要件を導入する別の方法として使用できます。SSS を使用すると、ユーザーはキーを複数の分散「シェア」に分割できます。キーを再構成するには、シェアの特定のしきい値のみが必要です。これは、マルチシグに似た 2/3 や 3/5 などのクォーラムを設計するために使用できます。
2-of-3 SSS 配置。色付きの図形で表される任意の 2 つのシェアで、シングルシグ ウォレットのキーを再構成できます。キーは、資金を引き出すために必要な単一の署名を生成できます。
ただし、このアプローチでは、ライフサイクル中の特定のインスタンスで単一障害点が発生します。1 つの例は、キーが最初に SSS シェアに分割される場合です。この操作は通常、単一のデバイスで、単一の時間と場所で実行されます。攻撃者がそのデバイス、キー生成プロセス、またはシェア作成プロセスを侵害した場合、キーが侵害されたことになります。もう 1 つの例は、ユーザーがトランザクションに署名するためにキーを再構成する必要がある場合です。しきい値の数のシェアを、単一のデバイスで、単一の時間と場所で再びまとめる必要があり、攻撃者がこれを悪用する可能性があります。
暗号通貨の保管に SSS 技術を実装するかなりシンプルで広く使用されている方法は、2017 年に Satoshi Labs によって開発された Shamir バックアップを使用することです。これは、特定の Trezor ハードウェア ウォレット モデルでオプションとして利用できます。
MPCとは何ですか?
MPC (マルチパーティ計算) は、1970 年代にまで遡る暗号化のサブフィールドです。MPC の目標は、複数の参加者が共同で計算を実行できるようにすることです。計算への各参加者の貢献はグループの他のメンバーには公開されず、秘密に保たれます。これにより、複数の当事者が互いに信頼関係を持たなくても、さまざまな状況で共同作業を行うことができます。
ビットコインの保管に適用する場合、MPC は SSS と同様に分散「シェア」を伴います。ただし、SSS とは異なり、シェアは秘密鍵から分割されることも、秘密鍵の再構築に使用されることもありません。代わりに、複数の当事者がシェアのしきい値から直接単一の署名を計算します。
2/3 MPC 配置。色付きの図形で表される任意の 2 つの共有により、最初にキーを組み立てることなく直接署名を生成できます。
SSS とは異なり、MPC では単一障害点は必要ありません。MPC シェアはそれぞれ別々に生成することができ、ウォレットを操作するためにまとめる必要はありません。シェアから生成された情報は、シェア自体が明らかにされることなく、他の参加者に伝達できます。
ビットコインやその他の暗号通貨は主にECDSA(楕円曲線デジタル署名アルゴリズム)に基づく署名システムを使用しているため、MPCはこのコンテキストに適合する必要がありました。ECDSAの最初の実用的なしきい値プロトコルは2018年に公開されました。[GG18、LNR18]
閾値モデル間のトレードオフは何ですか?
3 つの異なるしきい値セキュリティ モデルから選択できるため、次のステップは各オプションの長所と短所を理解することです。
マルチシグのトレードオフ
スクリプト マルチシグは、ビットコイン プロトコルに固有の、しきい値セキュリティを実現する標準化された方法です。構造は比較的シンプルで堅牢であると考えられています。参入障壁も低く、ビットコイン ユーザーがシングルシグ ウォレットの操作方法を知っていれば、マルチシグ ウォレットの設定方法と使用方法を学ぶのもそれほど難しくありません。
マルチシグ ウォレットが初期化されると、ウォレットにビットコインを受け取るために生成されたアドレスには、しきい値要件が組み込まれます。マルチシグ アドレスに資金が投入されると、ビットコインは基本的にブロックチェーン自体に書き込まれた不変の契約によって保護されます。契約を変更する唯一の方法 (アクセス制御ポリシーの変更、ビットコインを保護するキーの調整など) は、別の契約で構築された新しいアドレスにビットコインを移動することです。ビットコインのセキュリティを確保するために協力している複数の当事者にとって、この基本レベルの不変の契約メカニズムは、すべての当事者の意図に従って資金が保護されているという最高の安心感を提供できます。何かが根本的に変更された場合、公開トランザクションの発生によって誰の目にも明らかになり、変更を承認したキーがわかります。これが、Unchained などの共同保管プロバイダーが当社の製品でスクリプト マルチシグに依存している理由です。
ただし、ブロックチェーン上で契約を公開するにはトレードオフが伴います。ビットコインはマルチシグアドレスから使用されるため、そのアドレスのアクセス制御ポリシーはブロックチェーン上で永続的に公開される必要があります。そうすることで、オブザーバーは使用されていたマルチシグクォーラムの詳細を確認できます。残りの資金は今後新しいアドレスに簡単に移行できますが、過去のセキュリティの取り決めが公開されるという事実は理想的ではありません。さらに、アクセス制御ポリシーを調整するためにビットコインをあるアドレスから別のアドレスに移動する必要があるため、そのプロセスには常に取引手数料がかかります (クォーラムが大きいほど、コストが高くなります)。
暗号通貨取引所など、アルトコインの保管を重視する組織にとって、スクリプト マルチシグは、しきい値セキュリティの他の 2 つの方法よりも困難になる可能性があります。これは、マルチシグしきい値クォーラムがブロックチェーン レベルで課され、異なる暗号通貨がさまざまなブロックチェーンを使用するためです。多くの暗号通貨は、ネイティブで堅牢なマルチシグ実装をまったくサポートしていません。一方、SSS と MPC は、キー レベルでしきい値クォーラムを適用し、公開的にはシングルシグ トランザクションのように見えます。ほぼすべての暗号通貨がシングルシグ保管の同様の標準をサポートしているため (ほとんどの暗号通貨で同じキーを使用できます)、SSS と MPC はチェーン間の互換性が高くなります。
シャミアの秘密分散法とのトレードオフ
SSS は、比較的シンプルで実戦でテストされた暗号化に基づいてしきい値要件を設計する別の方法を提供します。暗号通貨の保管の目的で、SSS には参入障壁が低い広く導入されている方法 (シャミア バックアップ) もあります。従来のシングルシグ ウォレットの使用経験があれば、Trezor を使用してシャミア バックアップ付きのウォレットを設定することはそれほど難しいことではありません。
マルチシグとは異なり、SSS はブロックチェーン上の公開アドレスやトランザクションの外部で完全に動作します。代わりに、しきい値要件は秘密鍵をシェアに分割する方法によって決定されます。つまり、鍵をシェアに分割して後で再構成することは非公開で実行できるため、ビットコイン保管契約に参加している人だけが SSS が使用されていることを認識できます。プライバシーの利点に加えて、しきい値構造をブロックチェーンの外部に保つことは、SSS トランザクションが手数料の増加につながらないことも意味し、さまざまな暗号通貨のセキュリティ保護に使用できます。ほとんどの暗号通貨には独自のブロックチェーンがありますが、それらはすべてアクセスポイントとして同じ秘密鍵を共有でき、その鍵は SSS を使用して分割できます。
SSS の最大の欠点はすでに上で述べました。つまり、秘密鍵は、最初にシェアに分割される前、および引き出しを承認するためにシェアが再結合されるときに、一度に 1 か所に存在していなければなりません。これらの脆弱性により、一時的な単一障害点が生じます。つまり、マルチシグや MPC とは異なり、SSS 自体は、真に機関レベルのセキュリティを提供するものではありません。
さらに、SSS はアクセス制御ポリシーを調整する方法をネイティブに提供していません。秘密鍵が一定数のシェアに分割されると、それらのシェアは常にその鍵を複製する能力を維持します。グループが SSS を使用して一緒に資金を保護している場合、グループのメンバーが脱退すると、その個人の権限を安全な方法で取り消すことが困難になる可能性があります。グループの残りのメンバーは鍵を再構成して新しいシェアに分割できますが、古いシェアは検証可能な方法で破棄する必要があります。そうしないと、資金を別の鍵で保護されたまったく新しいウォレットに送信する必要があります。
MPC とのトレードオフ
SSS と同様に、MPC はブロックチェーン レベルではなくキー レベルでしきい値要件を適用します。これにより、プライバシーの容量が拡大し、取引手数料の増加を回避し、1 つの MPC 管理構造をさまざまな暗号通貨で使用できるようになるなど、同様の利点が得られます。
重要なのは、MPC は SSS の使用に伴う一時的な単一障害点を回避できることです。異なる暗号化方法を使用することで、キー シェアはウォレットが最初に作成された瞬間から別々に存在でき、引き出しトランザクションに署名している間も別々に維持されます。ほとんどの MPC 実装には、新しいウォレット アドレスに資金を送信せずにアクセス制御ポリシーを調整するネイティブ メソッド (シェアの新しいクォーラムの作成) も含まれています。
しかし、しきい値 ECDSA の MPC は非常に複雑な暗号であると考えられており、それを使用するための合意された標準はありません。さまざまなプロトコルがあり、最初の 2 つは 2018 年に Gennaro と Goldfeder [GG18] と Lindell ら [LNR18] によって独立して開発されました。それ以来、Doerner ら [DKLs19]、Castagnos ら [CCL+20]、Damgård ら [DJM+20]、Canetti ら [CMP20]、Gągol ら [GKSS20]、Gennaro と Goldfeder [GG20]、Canetti ら [CGG+21]、Abram ら [ANO+21]、Doerner ら [DKLs23] などのプロトコルも登場しています。新しいプロトコルは古いプロトコルに一定の改善を加える傾向がありますが、ピアレビュー、監査、その他のテストの機会が少ない可能性があります。
MPC の複雑さが増すと、攻撃対象領域が広がります。コンポーネントや手順が増えると、エラーや潜在的なセキュリティの脆弱性が生じる余地が増えます。完全な秘密鍵抽出攻撃を含む重大なセキュリティ欠陥の証拠は、すでに何度も現れており、上記のしきい値 ECDSA プロトコルの一部に影響を与えています。
例:
AS20 の脆弱性、2020 年 9 月、GG18 実装に影響
2021 年 12 月の Alpha-Rays 脆弱性、GG18 と GG20 に影響
TSSHOCK 脆弱性、2023 年 8 月、GG18、GG20、CGG+21 に影響
BitForge の脆弱性、2023 年 8 月、GG18 と GG20 に影響
「暗号技術は長期にわたって使用されるためには時の試練に耐える必要があり、これらの新しいプロトコルは明らかに時の試練に耐えられませんでした[…] この研究は実装や広範な採用の準備ができていませんでした。私の観点からすると、このような最近の研究を実装して製品化することは非常に危険です。」— Ledger CTO Charles Guillemet、2021年12月のAlpha-Raysへの回答
「[MPC]はより複雑で、間違いが起きやすいです。高度な暗号プロトコルは、細部と実装において脆弱です。私は、非常にシンプルで堅牢なマルチシグのほうが自信が持てます。」— 著名な暗号学者アダム・バックによる投稿、2023年1月
MPC は、そもそも誰が現実的に使用できるかによっても制限されます。前述のように、しきい値 ECDSA は非常に複雑です。一般の個人にとっては、MPC を独自に安全または簡単に設定できるツールはありません。一部の企業では、かなり使いやすい共同保管 MPC ウォレットを提供していますが、そのような企業は、企業が消滅した場合にユーザーが資金を簡単に回復する方法を提供していません (またはまったく回復する方法がなく、その場合は単一障害点になります)。スクリプト マルチシグはシンプルでオープンな標準であるため、マルチシグを使用した共同保管ソリューションを提供する企業は、オープンソースで使いやすい回復ツールを提供できます。これにより、共同マルチシグ企業がサポートできなくなった場合でも、クライアントが資金を回復するための簡単な方法が作成されます。
どのモデルが最適ですか?
先ほど説明したように、マルチシグ、SSS、MPC の使用には数多くのトレードオフがあります。これらは、視覚的に比較できるようにチャートにまとめることができます。
このチャートは、しきい値セキュリティを実装する各方法の長所 (青) と短所 (赤) を示しています。灰色は、視点によっては長所にも短所にもなり得ます。
企業がさまざまな暗号通貨の保管を専門としている場合、専門家チームを雇って MPC 保管モデルを慎重に設定しようとするかもしれません。ただし、企業や個人がビットコインを長期的に保護するためのシンプルで信頼性の高い方法を探している場合は、スクリプト マルチシグを使用し、プライバシーのトレードオフを受け入れることが望ましいかもしれません。SSS は、機関レベルのしきい値要件を常に強制できないため、単独で使用されることはほとんどありません。
共同監護のためのモデルの組み合わせ
マルチシグ、SSS、MPC は競合するセキュリティ モデルであると考えられることが多いですが、全体的な保管構造に複数のモデルを組み込むことも可能です。前述のように、SSS と MPC では、トランザクションの署名を生成するために、一定数のキー シェアが許可されます。署名がシングルシグ ウォレットから資金を支出するためのものである場合、トランザクションを完了するために他に何も必要ありません。ただし、署名がマルチシグ ウォレットから資金を支出するためのものである場合、他のキーからの追加署名も必要になる可能性があります。
2-of-3 マルチシグ構造。1 つの署名は通常のキーから生成でき、別の署名は 2-of-3 SSS シェアから再構成されたキーから生成でき、別の署名は 2-of-3 MPC シェアから直接生成できます。
この技術の組み合わせは不必要で面倒に思えるかもしれませんが、実際、それが実用的に意味を成す状況もあります。キーエージェントと複数機関による保管の人気が高まるにつれ、個人や機関からマルチシグウォレットのキーの 1 つを保護するよう委託される専門ビジネスが増えています。これらの分散型キーエージェントは、保管リスクの軽減に役立ちます。しかし、キーエージェントは、自分が担当する単一のキーをどのように保護すればよいのでしょうか。
SSS または MPC は、この義務から単一障害点を最小限に抑える、または排除する戦略になり得ます。企業のキー エージェントは、企業内の複数の異なる役員がそれぞれキー シェアを保有するシステムを設計できます。そのため、署名はそれらの役員のしきい値の同意を得た場合にのみ生成できます。さらに、SSS の再構築中に攻撃が発生した場合、または MPC 実装が前述のような新しいキー抽出の脆弱性に悩まされた場合、顧客の資金が直ちに危険にさらされることはありません。キー エージェントには、ビットコインがより広範なマルチシグ ウォレットによって保護されている間に、問題に対応して対処する時間があります。
スクリプト マルチシグを使用して、基礎となる不変の契約としてしきい値要件を作成し、専門のキー エージェントにそれぞれ独自の SSS または MPC しきい値を使用してマルチシグ キーを保護するよう依頼することは、機関がビットコインを長期にわたって安全に保管するための最も安全な方法です。
Taproot の新機能
2021 年 11 月、Taproot ソフトフォークが発生し、ビットコイン エコシステムに新しいツールが追加されました。これらのツールの一部は、特定の改善とオプションを可能にすることで、機関レベルのビットコイン保管の将来に影響を与えます。
Schnorr 署名: Schnorr 署名アルゴリズムは、ECDSA の代替としてビットコインで利用できるようになりました。Schnorr 上で MPC を使用すると、しきい値セキュリティ スキームがはるかに簡素化され、前述の ECDSA プロトコルと比較してセキュリティの信頼性も高まります。FROST は主要な Schnorr しきい値署名プロトコルであり、MuSig2 も N-of-N クォーラム専用に利用できます。これらの署名スキームは両方ともビットコイン業界全体で標準化されたツールになる途中にあり、スクリプト マルチシグと同様のユーザー エクスペリエンスで、一般の人々が MPC を利用できるようになることが期待されています。
スクリプト タイプのプライバシー: Pay-to-Taproot (P2TR) アドレスは、スクリプト マルチシグ ビットコイン アドレスがシングルシグ ウォレットに使用されているアドレスと同一に見える新しいアドレス タイプです。これにより、ビットコイン アドレス自体が、スクリプト マルチシグを使用しているかどうかなど、所有者のセキュリティ モデルに関する手がかりを提供しないため、プライバシーが大幅に向上します。
複数の支出パス: P2TR アドレスには、複数の支出パスを組み込む機能もあります。これにより、BIP 342 (根拠、セクション 5) で説明されているように、機関レベルの保管のしきい値セキュリティを構成する新しい方法を作成できます。たとえば、ユーザーは、資金を支出できるキーのすべての組み合わせに対して、N-of-N スクリプト マルチシグ支出パスを作成できます。キー A、B、C で 2-of-3 クォーラムを構築するのではなく、可能な支出パスとして 3 つの個別の 2-of-2 クォーラム (キー A と B、キー A と C、キー B と C) を使用して同様の結果を達成できます。この戦略により、最終的に使用される支出パスのみが公開されるため、プライバシーを強化できます。同様の概念を MPC キー シェア クォーラムに適用して、しきい値に MuSig2 を利用できるようになります。
これらの Taproot ツールは比較的新しいため、導入はまだ初期段階にあります。多くのビットコイン ソフトウェアやサービスでは、Taproot の機能を完全にサポートしていません。また、ほとんどのアルトコインではこれらのツールがネイティブで利用できないことも注目に値します。
最終的な考え
ビットコインの資金の保護に関心を持つ機関が増えており、効果的なソリューションが求められています。単一障害点の回避とカウンターパーティ リスクの最小化は、最も重要な考慮事項です。これらの基準を満たす最善の方法は、マルチシグ構造を活用することです。マルチシグ構造では、さまざまなエンタープライズ キー エージェント間でキーを配布でき、どのエージェントもビットコインを一方的に制御することはありません。各キー エージェントは、SSS または MPC を使用して、特定のキーに追加のしきい値保護を追加できます。
Unchained は、このような取り決めを設定したい機関顧客向けに構築されたエンタープライズ カストディ ネットワークの先駆者です。使いやすくカスタマイズ可能なため、各顧客は、自分で管理する数のキーを保持するか、1 つのキーだけを保持するか、またはキーの保護の責任を複数の独立したエンタープライズ キー エージェントに完全に委ねるかを選択できます。詳細を知りたい場合は、今すぐ無料の相談を予約してください。
この記事をレビューし、貴重なフィードバックを提供してくれた Dhruv Bansal に特に感謝します。
元々はUnchained.comに掲載されました。
Unchained Capital は Bitcoin Magazine の公式米国共同保管パートナーであり、Bitcoin Magazine を通じて公開される関連コンテンツの重要なスポンサーです。提供されるサービス、保管製品、および Unchained と Bitcoin Magazine の関係の詳細については、当社の Web サイトをご覧ください。
出典: ビットコインマガジン
マルチシグ、シャミアの秘密分散、MPC の比較に関する記事が Crypto Breaking News に最初に掲載されました。
