先日、東京で行われていた小さなミートアップにFrostsnapという新しいハードウェアウォレットを作っている会社のメンバーがプロトタイプを携えて来ました。そのときに色々と伺ったのでこの記事に書いています。

Frostsnapは最近Dark Skippy脆弱性を公表していた2名を含む3人のチームが去年から開発しているハードウェアウォレットで、FROSTという閾値署名スキームを直観的に使えて、かつ生成したキーシェアを保管できるものです。

FROST自体はTaprootの導入でビットコインでシュノア署名が扱えるようになったことによって利用可能になった技術ですが、まだBIPとして正式に採択されているプロトコルはありません。(FrostsnapはBlockstreamが提案しているChillDKGに基づいているそうです)

今日は従来のマルチシグと比較したFROSTのメリット、Frostsnapのプロトタイプ版のデバイスについて、そしてハードウェアウォレット市場を見たときにどこに位置づけされるものなのか考えてみます。

Frostsnap
Easy, personalized, secure Bitcoin self-custody.

・マルチシグにFROSTを使うメリット

・特徴的なデバイス

・ハードウェアウォレット市場における立ち位置はどうなる?

マルチシグにFROSTを使うメリット

ビットコインの通常の(m-of-n型の)マルチシグはBitcoin Scriptによって記述されています。「n個の公開鍵を指定して、そのうちm個による署名で使用可能」という使用条件を表すビットコインアドレスに送金することによってコインをマルチシグでロックします。したがって、マルチシグアドレスから支払うときは原則的にはこのスクリプトを公開することになるためプライバシー面に影響があるほか、複数の電子署名を付加するのでトランザクションサイズ、すなわち必要な手数料も高くなります。

Taprootの導入により一番使用可能性の高いスクリプトパスを公開鍵として表現することができるようになったため、支払い時にマルチシグのスクリプトが公開されない使い方もできますが、この使い方はまだそれほど普及していないと考えられます。

一方、FROSTでは複数人で1つの秘密鍵を分散的に生成します。ビットコイン上では一般的なP2WPKHアドレス(Native Segwitアドレス)として表現され、通常のシングルシグのアドレスと見分けがつきません。支払う際にも複数人で1つの電子署名を作るため、ビットコイン側ではマルチシグとはわかりません。したがって、プライバシー面、コスト面でアドバンテージがあります。

また、従来のマルチシグであれば例えば2-of-3を3-of-5に変えるには新しいスクリプトを作成してそこに送金しなおす必要がありますが、FROSTを使えば同じ秘密鍵に対するキーシェアを生成しなおすことができるため、オンチェーンで送金することなく権限を変更することができます。この送金せずにビットコインの使用権限を変更できる特徴を使った新しい技術や改善が今後数年で出てくると期待されています。

逆にFROSTの利用にデメリットがあるとすれば、ビットコイン上で単純に電子署名をいくつか検証する従来のマルチシグと比べてユーザーが行う部分が複雑であったり、まだ規格が定まっていないことによる互換性の低さ・永続性のリスクという側面が挙げられるでしょう。

それでは早速、Frostsnapがこの分散型の秘密鍵生成・署名をどのようにハードウェアウォレットに落とし込んだのか見ていきましょう。

特徴的なデバイス

デバイスの見た目に関して、いまのところ一番多いコメントは「ムカデ人間」ですが、「電車」と言った方が一般的にはイメージがよさそうです(笑)

1個1個のデバイスには最終的にはキーシェアが格納されるのですが、キーシェアの生成段階ではお互いにデータをやり取りする必要があるのですべてを接続する必要があります。下の写真では3台をスマホに接続して2-of-3のキーシェアを生成しています。

最初のセットアップ時はスマートフォンにN台をつなげてキーシェアを生成する。最大20台までつなげたことがあるそう

このとき、スマホからもエントロピーを受け取っているそうです。どのスマホに接続しても使えるわけではなく、最初のセットアップに使用したスマホ、または(この場合は)3台を接続して「追加」したスマホとしか利用できないようです。キーシェアを地理的に分散したい場合は厄介かもしれません。

キーシェアを生成した後に、デバイスを2台つなげて署名する際には2台同時につなげても、別々につなげても問題ありません。この段階では互いに情報をやり取りする必要はなく、スマホに作りかけの署名データを集積すればよいためです。

ミートアップでは実際にSignet上のアドレスを生成して、そこに送ったコインを送金するトランザクションを作成して署名しました。署名自体もデバイスの画面に表示されている署名対象データを確認して長押しするだけで、プロトタイプながらも洗練度は割と高いと感じました。デバイス自体も素材感がApple Watchのようでよかったです。(予約開始は年内を目指しているそうです)

また、コンセプトとしては「ビットコイン保有のステージを進めるにつれてアップグレードできる保管方法」と位置付けているようで、1個からでも利用できるそうです。

ハードウェアウォレット市場における立ち位置はどうなる?

個人的には現在のハードウェアウォレット市場には2つの軸があると思っており、価格と対象ユーザー(玄人向け・素人フレンドリー)で分けられると考えています。独断と偏見で以下に図示してみました。

独断と偏見:ハードウェアウォレット市場の分布

先ほども述べたように、Frostsnapの開発者たちは「1台からでも使える」とアピールしていますが、常識的に考えて1台目のハードウェアウォレットに非常にイレギュラーなFrostsnapを選択するユーザーはいないか、いたとしても玄人でしょう。

また、価格についても、1台あたり$100前後になるとしており、これはTrezorの廉価モデルよりも高く、Ledgerの最廉価モデルと同じくらいです。しかし、実際にFrostsnapを購入するユーザーはおそらく複数台購入するため、安い買い物にはなりません。「玄人向け・比較的高価格帯」とすると、購入者像はColdcardなどとかぶるのではないでしょうか。

個人的にはFROSTを使っているという技術的特異性が売りになる対象ユーザー層ともマッチするので狙うマーケットはそれで良いと思いますが、まだBIPがアクセプトされていない段階のプロトコルを使って蓄財してもよいと考えるユーザーがどれくらいいるかはわからず、どちらかといえば全財産を守る方法を探しているユーザーよりは技術に関心を持ってくれるアーリーアダプター狙いになるのではないでしょうか。

マルチシグに真剣なユーザーの間では特定のメーカーの製品に脆弱性があった場合などに備えて複数のメーカーを組み合わせて使う「マルチベンダ・マルチシグ」が一般的になってきていますが、Frostsnapがこのトレンドに乗っかるのは難しいかもしれません。

個人的には円安の影響もあり、ハードウェアウォレット価格が高騰しているのはセルフカストディにとって大きな妨げになっているのではないかと危惧しています。Trezorの最廉価モデルやJadeはまだ1万円あれば買えますが、上位モデルやColdcard・Qなどは3~6万円という価格帯になってきています。FROST自体に興味があるのでなければ、Frostsnapを2個買うくらいなら安いハードウェアウォレットを2台買ったり、1台にしてシードフレーズを金属などで保存したり、1台は使い古したスマホで代用するといった代替策のほうがコスパは良いのが現実です。

まとめ

・FROSTは組み合わせて1つの秘密鍵として機能するキーシェアを複数のデバイスでそれぞれ生成し、それを使って閾値電子署名を行うスキーム。オンチェーントランザクションなしでマルチシグの参加者を入れ替えたりすることもできる

・Frostsnapはこれを使ったビットコイン用ハードウェアウォレットで、現在はプロトタイプ段階だが年内に予約開始を目指している。セットアップ時に連結するフォルムが特徴的で、1台からでも使える

・まだFROSTのBIPすらアクセプトされていない状況にあるため、しばらくは(トランザクション手数料やオンチェーンプライバシーより堅牢性が最重視される)コールドストレージ用途よりは技術に興味のあるアーリーアダプター向けのニッチ商品のポジションに収まると予想する。