続き物っぽいやつ。以下オフラインPCでマルチシグを試行錯誤しながら作ったお話。
当時はSparrow Walletでマルチシグを作るお話でしたが、今回は「Blockstream Green」というアプリを使ってやりたいことをやるコーナーです。私がやりたいことを書くだけなので皆さまの需要はガン無視で書いていきます。尚筆者は永遠の初心者なので適当に書いてあるので鵜呑みにしないでください。
- Blockstream Greenって何?
- やりたいこと
- Blockstream Greenをインストール
- 起動して設定してみる
- シングルウォレット管理者にとってかなり嬉しいのでは
- 個人的懸念点
- 参照権限用ウォレット作成+2FA可能か
- まとめ
Blockstream Greenって何?
所謂ソフトウェアウォレットです。なぜこれを入れようと思ったかというと、「Blockstream Green」では、なんとBlockstream社がマルチシグの秘密鍵を1本管理してくれるらしいという情報があったためです。※実際には秘密鍵ではなく署名サービスを提供しているだけらしい。よくわかんないけどともかく署名者の1人になってくれるってこと。
そのカギで署名する際は2FA認証が通ればやってくれるらしい。使うかどうかはおいといて、ちょっと面白そうですね。自分で秘密鍵を管理するより信頼がおけると感じているなら1本、預けてみるのはアリです。多分。多分アリ。多分。
が、この会社自体は2-of-2を推奨しているらしいのですが、個人的には自分の鍵が震災とかでお釈迦になったら終わりなので2-of-3にして、1本は超遠隔地の取り出せない場所に置いといて、実質2-of-2チックに運用するのがいいんじゃないかなぁ~と勝手に思ってます。初心者で2-of-2って怖いんよ。1本、遊び心が無いととてもじゃないが管理できないと思う。玄人の人なら2-of-2でもいいかもしれんけどね。
話が脱線しました。
ともあれ、鍵を1本管理してくれるのは一般人目線の私からしたら運用上メリットが非常に高いことから、ちょっと使用感を試してみたいと思います。
そもこのアプリですが「Jade」というHWWとセットで使うことが前提っぽいですが、AIに聞いたら、別にJadeを使わなくても使えるとあったので、今回はとりあえず触るだけ触って、面白そうならJadeというHWWも導入を検討してみようかなぁ。
やりたいこと
- まずはオンライン環境でBlockstream Greenをとりあえず入れて、本当に秘密鍵1本をBlockstream社が管理してくれるかをチェックする
- 次に完全オフライン環境でBlockstream Greenを動かした環境で、マルチシグ2-of-3が作れて、かつ、Blockstream社が秘密鍵1本を管理してくれるのか確認(※そんなことできるのか?)
- もしくは、xpubだけ入れることでも実現できるかチェック。※オフライン上でシードフレーズ+xpub作っておいて、そのxpubだけ2個、入力して作れたら最高!って感じ。
- 今回は送金とかはしないで触って理解するだけ回です。
後者二つができたらラッキー。というのも、私は2-of-3が好きなのですが、Blockstream Greenをオンラインで動かして秘密鍵1本を企業で管理する場合はBlockstream Green上に秘密鍵を保持してはならないことになる。
そうなると、必然的にBlockstream Greenを使う場合かつ、2-of-3を実装したいなら、HWWが2個必要ということになる。なぜならオンライン環境のウォレット上に秘密鍵を入れたら盗まれるリスクが高まるからだ。だからこそのHWWなので、本末転倒である。
が、xpubだけ入れることでBlockstream社が対応するxpubを提供してくれつつ、秘密鍵もBlockstream社で保有しますって設定が可能なら、HWW無しで実質オフライン環境が構築可能となる。実質無料だ。試すにはうってつけです。やったぜ!!!
じゃ、始めましょうか。
Blockstream Greenをインストール
実装したらオンライン環境用になるはずなので、Windows端末でインストールしてみます。多分如何公式サイトだと思いますが自己責任で
ttps://blockstream.com/app/
ちなみに作業端末のOSによりダウンロード先を選べるようになってます。以下はDebian上でやった場合。
3種類選べる。多分AppImageで実行すると楽に始められるはず。なんか楽らしい(※未検証)
今回はWindows端末なので割愛。
で、インストールはexeファイルなので流石に次へを押すだけなのでカット。インストールだけなら非常に楽です。
起動して設定してみる
ということで、インストールが終わったら起動します。とりあえず「Get Start」的なボタンが出るのでクリックして次へ。すると、なんかこんな感じになります。
自動翻訳してメモしておきます。
=========
どのように資金を確保したいのか?
■このデバイスについて
あなたのコンピューターは、PINで保護されたBitcoinのキーを保存します。
■ハードウェア・ウォレットについて
お客様の鍵は、暗証番号で保護された専用のCold保管装置に保管されます。
=========
良く分からないけど、今回はHWW使わないから「On This Device」を選ぶ。HWW1個しかなくて2-of-3使いたい場合どっち選べばええんやろね。まま、今回は上を選んで次へ進みます。
すると、「新規ウォレット」ボタンがあるのでクリック。すると、早速リカバリーフレーズ表示する一歩手前の画面に。今回はオンライン環境でテストでやってるのでそのまま表示。ちゃんとやるならオフライン環境で実行するのが良いです。
すると、「12単語」と「24単語」どっちかを選べます。個人的に24単語の方が真理上安心だけど、12単語でも十分らしいし、復元リスク考えると総合して12単語の方が良いかもしれない。特に今回はマルチシグで実装する予定なので3つのシードフレーズを考えると12単語×3が運用コスト的にもいいのかもしれない。ということで、12単語で雑に次へ行きます。
その後、正しくシードを控えたか、ランダムな場所の入力を求められます。入力後、新しいPINの設定を問われます。HWWのログインの際でも聞かれるやつですね。ログインパスという感じでいいかな。
これでウォレット完成!とりあえずね。とりあえず。
次に、アカウントを作成して秘密鍵を一つ作ってもらう設定を入れて行きます。「アカウントを作成する」ボタンをクリック。
すると、Security Policyを二つ選択できるようになってる。多分、今回の目的は下のメニュー側だと思われる。
が、ここで怖い文言が。1年間無双金だと2段階認証が解除されます。
なん・・・だと・・・???
ちょっと待ってください。2-of-2なのはいいのですが、1年間送金しないって普通にありえますよね?というかビットコそんな普段使いしないし取引所に放置して数年たってますし。
AIに聞いてみると、1年経過したら2-of-2が1-of-2に自動でなっちゃうらしい。つまるところ、自分が持ってる秘密鍵を盗まれたらタイムロック解除後(※約1年後)に全部盗まれる可能性があるとのことです。
なるほどねぇ。判断難しいです。
私は超長期保有が目的なので、1年後に勝手にロック解除されてマルチシグからシングルシグに実質なるようなら使わなくてもいいかなぁってなってる。だって送金めったにしないので。
いやー、でもどうなんだ?もともとシングルウォレットを予定していた人が、なんちゃってマルチシグにする、という使い方なら十分ありじゃないだろうか。
シングルウォレット管理者にとってかなり嬉しいのでは
- シードフレーズは自身のシードフレーズだけ管理すればよい
- 約1年間、2-of-2で運用できて、最悪2FAのパスを忘れても、1年後に復旧可能
- Blockstream社のシードフレーズを管理するコストもいらない
これだけで、お手軽2-of-2運用できるのは強いと思う。元々の運用者がシングルウォレット運用してた場合ね。お手軽実装ならこれ最強では?
確かにこれなら2-of-2でも良さそうだ。
ただ個人的に大問題だと思っていることがあります。
個人的懸念点
- 本当に約1年後にタイムロック解除後、自身の秘密鍵一つで資産を取り出せるのか⇒動作検証が1年たたないと分からない and 1年程度でBlockstream社のサーバが全部落ちるとは思えないのでBlockstream社のサーバの有無による動作検証も1年後にできない可能性が非常に高い
- Blockstreams社がタイムロック設定するのミスってて2-of-2が一生続いて、Blockstream社のサーバが全損してしまう可能性⇒実際のブロックみたら分かるっぽいので玄人の方ならセーフぽい
タイムロック設定が成されているかどうか、タイムロック条件は「あなたのUTXO(未使用のコイン)のスクリプトに記録されている」とAIからの回答。つまり、ネットワーク上で閲覧できるっぽそうなので、知識があればタイムロックされてるか否かはわかるとのこと。
でもねぇ・・・今回のターゲットは初心者(私)なの!そんなUTXOとか言われても分からないし、分かった所で「じゃあその知識、本当にあってる???」ってなると全く自信がないの!!!
検索したら大学の論文が出てきたりして草。無理やで・・・
問題は動作確認ができない点。AIに聞いたらタイムロック解除された後、普通にBlockstream Greenから接続したら、2FAが聞かれなくなるだけで普通に送金可能!って言ってたので、何も考えずに使う分には良さげなんだけど、本当にそうなのかはタイムロック解除された後じゃないとわかんない。
※2025/7/11補足
再びAIに聞いたら、約1年後にタイムロック解除された後もGreenアプリからは2FAを要求されるそうです。最初いらないって言ったのに・・・どっちかあやふやで公式サイトを見ると復旧ツールが必要とあったり、2FAさえ覚えていれば今まで通り送金可能とあったりで不確定です。また、Blockstream社のサーバの応答が無かったら2FAの認証も聞かれないので復旧コマンドによる操作が必須とのこと。どれもこれも検証できないから辛いです
ということで、この時点で、初心者の私はBlockstream Greenに手を出しづらすぎるのであった。信じていいんかなぁ・・・ってなる。本当にタイムロック機能するよなぁ・・・?ってなる。愛しい愛しいBTCが取り出せなくなる恐怖はあってはならないのだ。※シングルウォレットでも盗まれる怖さがあるからトレードオフだと思うが
個人的な感覚として98%は多分ヘーキでしょって思えてるのですが、残り2%の動作検証と、タイムロックが有効になっているかの前提知識、この2つが惜しい。勉強しろよって話なんだけど、やっぱり動作検証はしたいじゃないですか。
うーん。惜しいなぁ。シングルウォレット使ってる人は気軽に2-of-2に出来るの強いんだけど、タイムロック解除後の復元方法がイミフすぎて辛い。多分、Greenアプリがそのまま残ってればそのまま使える気がするんだけどね。でもやっぱ使いたいなぁ。楽だよなぁこれ。
まま、話が脱線しすぎたので、実際に2-of-2で作ってみましょうか。
「2段階認証で保護」ボタンをクリックすると、以下文言がでてくる。
まだトランザクション無いから当然である。
ここで躓きポイント。ここから2FAを設定する場合、画面左上の「・・・」をクリックして「設定」ボタンを押してください。
ココ最初分からなかった。で、2FAできる画面があるのでそこをクリック。私はAuthenticatorアプリでとりあえず2FA入れてみた。
今回は送受金しないので実際に2FAしないとダメかは分からないですが、一通り設定はできたっぽそうです。
ということで、2FAの設定ができそうなことは分かりました。ということで、次はウォレットを削除して、先ほど控えたシードフレーズを元に参照権限用のウォレットをつくって、それを2FAの設定でできるか試します。
ネタバレですが、ウォレットを削除する前に読み取り専用のユーザとパスワードを登録必須でした。※読み取り専用ウォレット作りたい場合
というのも、2FA専用の読み取り専用ウォレットを作ろうとすると、ユーザ名とパスワードを聞かれてしまいます。なんのこっちゃ?ってなるのですが、ここで作ったウォレットに紐づくユーザ名とパスワードを設定することで、Blockstream社にxpubが送信されて、参照専用ウォレットを作る際にログイン名とパスワードを入力することでxpubを受信するんだそうな。へー。
なので、ウォレットを完全削除した後、読み取り専用⇒2FA設定でログイン名とパスワードを聞かれますが、消したはずのウォレットの読み取り専用ウォレットが復元されることとなります。
なお、ウォレットを削除しようにも削除ボタンがありませんでした。AIに聞くと、一回アプリを終了して、Cドライブの「AppData\Local\Blockstream\Green」のフォルダを削除すればOKとのこと。私はこの製品以外入れてないので親フォルダの「Blockstream」ごと削除しました。アプリ再起動したらウォレット消えてました。良かった。
参照権限用ウォレット作成+2FA可能か
先ほどネタバレしましたが、ウォレット削除後に改めてアプリを起動すると「読み取りモード」ボタンが表示されるのでクリック。
今回は2FAで作りたいのでこっちをクリック。
ネットワークの選択で以下二つが出てくる。Bitcoinを選択。Liquidは別チェーンなので、今回のようにBitcoin保管だけ考えるなら気にしないでいいとのこと。L-BTCとかいう奴の管理のやつ。持ってないし興味ないので割愛。
すると突然、ログイン名とパスワードを設定する画面に。さっき作ったやつですね。2FAで復旧しようとした場合、Blockstream社に登録された奴で復元されると。xpubとユーザ名とパスワード、オンライン上で送られちゃうのね~。適当やってすいません・・・
これで作成すると、先ほどディスクから完全に消去したウォレットの参照権限用ウォレットが作成できてしまいました。なるほどなぁ。
ちなみにスタンダードを選ぶと、xpubで復元する従来の方法でできました。ただこっちの場合は2-of-2(2FA専用ウォレット)の読み取り専用ウォレットは作れないので注意。
ということで、ここで一旦区切ります。私の本来の目的が達成できなさそうだと分かったためです。
というのも、オフライン環境下において、Blockstream社で一つの鍵(というか署名作業)を担ってくれることはできないことが証明されたたため。ちなみに「ウォレットの復元」からやり直してみましたが、1つのシードフレーズしか求められませんでした。残念。
やりたかったのは、2-of-3環境を作る目的でオフライン環境でxpubを2つ作って、その2つをオンライン環境のGreenに2つインポートした上で、残りの1個はBlockstream社側でなんか、良い感じにxpubを組み合わせて成功!みたいなことを思っていましたが、2段階認証が読み取り専用ウォレットでは設定できませんでした。
つまり、オンラインウォレットにシードフレーズを入力してから2FAを設定しないといけないことになったので、私の目的が未達になったためです。
当然ながら、HWWを接続するなら完全オフライン環境なのでそのまま使えばOKかなぁと思いますが、その場合もWindowsのアプリだと2-of-2しか設定できないのかな?1つしか選択できませんでした。※HWW使って新規セッティングならできるかも。無いので未検証です。
また、話は全然違いますが、2FAを設定したウォレットを完全削除して、復元した所、2FAの設定が再び有効になりました。恐らくウォレットに登録されていたxpubがBlockstream社に送信されており、リカバリーしたことで2FAを以前有効にしていたかどうかをチェックしている設定も記憶しているようです。。AIに聞いてもそんな回答だった。へー。おもしろ。
ということで、ここでまとめます。
まとめ
- Blockstream Greenを使ってオフライン環境で2FAを設定することは不可能(※通常そういう風に使う人いなさそうだけど一応ね・・・)
- Windows環境なのか、SWWからの新規追加だからなのか、2-of-2しか使えなかった。残念。
- Blockstream Greenを使って2-of-2環境を作る場合、1年後に2FA認証が切れるため実質1-of-2状態となるため自身が持つシードフレーズが盗まれたら終わりになる点注意。
- ただし、もともとシードフレーズ1個で管理している人の場合、このサービスを使うのはかなり魅力的になりそう。最悪2FA忘れても最大約1年後に取り出せる安心感は強い。
- が、本当に1年後に取り出せるか検証ができない。Blockstream社のサーバが全損した場合の検証もできないので、理論上大丈夫ってことを信じて進むしかない
- Blockstream社が本当にタイムロックの設定入れてるかの確認方法が分からない。ここ自分の中の今後の課題。AIのチケット切れたから今度調べる。
うーーーーーーん。本当に惜しい。正直HWW1台あってマルチシグ管理めんどいってなった場合はかなり有用だと思うんだよね。ただ、2-of-3できちんとマルチシグしたいって人向けでは無いかもしれない。だったら自分で管理しちゃった方が良さげに見える。
もし次回をやる場合は、タイムロックの設定が正しくできているかをチェーン上で分かるかどうかと、復元方法の理論上の話を書くことになりそう。気が向いたらやるし、気が向いても知識が追い付かなかったら今回でおしまいです。
※以下次回に続きます。