
シードの分割かマルチシグか:Shamir、SLIP-39、SSKR を比較
「資金を動かすには複数のピースが必要」という言葉は、まったく異なる二つの仕組みを指すことがあります。一つは分割されたシードです。一つの秘密を、シャミアの秘密分散法、またはそれを基にした SLIP-39 や SSKR などの規格でいくつかのシェアに分けます。もう一つはマルチシグです。複数の独立した鍵があり、十分な数の署名がそろわない限り、ブロックチェーン自体が資金の移動を拒否します。
どちらもリスクを分散しますが、守る対象が違います。両者を混同すると、見た目より弱い構成になってしまいます。
シャミアの秘密分散法の仕組み
シャミアの秘密分散法は、アディ・シャミアが 1979 年に発表した方式です。一つの秘密を n 個のシェアに分け、そのうち任意の t 個があれば秘密を復元でき、t 個未満では何の情報も得られないようにします。「3 つのうち 2 つ」の分割なら、任意の 2 つのシェアで秘密を復元でき、1 つだけでは攻撃者に文字どおり何も伝わりません。
この方式を基にした一般的なウォレット規格が二つあります。
- SLIP-39 は SatoshiLabs による規格で、各シェアを 20 語または 33 語のフレーズとして符号化し、グループにも対応しています(たとえば「自分の 3 つのシェアのうち 2 つ、または家族から 1 つと弁護士から 1 つ」)。Trezor の Shamir バックアップで使われています。
- SSKR(シャード化された秘密鍵の再構築)は Blockchain Commons による規格で、独自の符号化で同じ役割を果たし、一部のオフライン署名デバイスで使われています。
SLIP-39 のシェアは、通常の BIP-39 フレーズとは互換性がありません。SLIP-39 に対応したウォレットでも、既存の 24 語フレーズをシェアに変換することは一般にできず、最初からその形式でバックアップを作る必要があります。
落とし穴:署名のときに鍵が再びそろう
シャミアの方式はバックアップの技術です。シェアは、秘密が保管されている間それを守ります。しかし、シェアだけでは何も署名できません。資金を使うには、シェアを組み合わせて完全な鍵を一台のデバイス上で、一つの塊として復元します。
つまり署名の瞬間、シャミアでバックアップしたウォレットは単一鍵のウォレットです。そのデバイスが侵害されていたり、鍵を復元する人が脅迫されていたりすれば、分割は役に立ちません。多くの場合、鍵は一度復元され、その後は一台のハードウェアウォレットに保存されます。
マルチシグは逆の発想です。各署名者は別々に生成した自分の鍵を持ち、鍵どうしが一か所に集まることはありません。それぞれが自分のデバイスで署名し、有効な署名が十分にあるかをブロックチェーンが確認します。一台のデバイスがすべてを握る瞬間は存在しません。MPC ウォレットとマルチシグでは、チェーンのルールではなく暗号技術で鍵を分割する第三の方式を解説しています。
24 語を三等分してはいけない
ありがちな自己流の方法は、最初の 8 語を 1 枚目のカードに、次の 8 語を 2 枚目に、最後の 8 語を 3 枚目に書くことです。これはシャミアの方式ではなく、二つの問題があります。
一つ目に、しきい値方式ではありません。3 枚すべてが必要なので、どれか 1 枚を失えばウォレットを失います。
二つ目に、各ピースが秘密の一部を漏らします。BIP-39 の各単語は 11 ビットを持ち、24 語のフレーズには 256 ビットの乱数と 8 ビットのチェックサムが含まれます。8 語のカード 1 枚で、256 ビットのうち 88 ビットが明らかになります。カードを 1 枚持つ人が推測すべきビットは残り 168 ビットで、これはまだ手の届かない数です。しかしカードを 2 枚持つ人なら残りはわずか 80 ビットで、フレーズが想定する安全余裕を大きく下回ります。12 語のフレーズ(128 ビット)の場合、4 語ずつの 3 ピースのうち 2 つで残りはたった 40 ビットとなり、一般的なハードウェアで総当たりできてしまいます。
本物のシャミア方式なら、しきい値未満のシェアは何も漏らしません。切り分けたフレーズでは、ピースが一つ増えるごとに攻撃者の仕事が楽になります。シードを分割したいなら、きちんとした規格を使いましょう。シードフレーズのベストプラクティスでは、金属製バックアップや保管場所の分散といった、より一般的な方法を紹介しています。
トレードオフ:可視性とチェーン
どちらの方式にも現実的な利点があります。
- オンチェーンの痕跡。 シャミアの方式はオンチェーンでは見えません。ウォレットはどのチェーンでも、普通の単一鍵ウォレットと同じように見え、同じように動作します。マルチシグは見えます。ビットコインのマルチシグは支出時にスクリプトが公開され、アカウント型のチェーンではボールトが誰でも確認できるスマートコントラクトやプログラムになります。
- チェーンへの対応。 シャミアの方式はバックアップにしか関わらないため、ウォレットが対応するどのチェーンでも使えます。マルチシグはチェーンごとに異なります。ビットコインはスクリプト、イーサリアム仮想マシン系のチェーンはスマートコントラクトアカウント、Solana はプログラムを使い、それぞれ手数料や制約が異なります。
- 何を守るか。 シャミアの方式はバックアップを紛失や盗難から守ります。マルチシグはすべての取引を守ります。どのデバイスも単独では署名できないからです。
両者は排他的ではありません。大切なのは、それぞれがどのリスクに対処するのかを知っておくことです。
SSP の位置づけ
SSP は 2-of-2 のマルチシグです。ブラウザ拡張機能の SSP Wallet と、スマートフォンアプリの SSP Key が、それぞれ独自の 24 語のリカバリーフレーズを生成します。ビットコインのような未使用出力型のチェーンでは、ボールトのアドレスは双方の公開鍵を一つずつ含む 2-of-2 マルチシグのスクリプトから作られ、すべての取引に両方の署名が必要です。二つの鍵が一台のデバイス上でまとめられることはありません。
SSP はシャミアの方式、SLIP-39、SSKR のいずれも実装していません。バックアップするのは通常の 24 語フレーズ 2 つで、ボールトをゼロから復元するには両方が必要です。そのため、どちらのバックアップも同じくらい重要です。2-of-2、2-of-3、M-of-N の比較ではこのトレードオフを、相続と緊急時のアクセスでは、必要なときに他の人が資金を復元できるようにする方法を説明しています。
率直なまとめ
シードの分割もマルチシグも複数のピースを必要としますが、働く場面が違います。SLIP-39 や SSKR のようなシャミア方式の規格はバックアップを守ります。しきい値未満のシェアは何も漏らさず、ウォレットはオンチェーンで見えず、チェーンにも依存しません。ただし署名のために完全な鍵が復元されるため、署名の時点では単一障害点が残ります。マルチシグは決して一か所に集まらない別々の鍵を保ち、ルールの執行をチェーンに任せます。その代わり、オンチェーンで見え、チェーンごとの実装になります。
フレーズを手作業で切り分けるのはやめましょう。すべてのピースが必要になるうえ、ピースごとに秘密のビットが漏れます。SSP は 2 つの独立した 24 語フレーズによる 2-of-2 マルチシグを採用しており、シードの分割機能はありません。だからこそ、両方のバックアップを安全に保管してください。


