Electrumの使い方(応用編・コールドストレージほか)

このページではElectrumの一歩進んだ使い方を説明します。

コールドストレージ機能

(画像はArmory公式サイトより)

コールドストレージ機能とは、普段使うオンライン環境のウォレットに秘密鍵を保存せず送金出来ない状態にしておき、送金したいときは秘密鍵を保存するもう一つのオフライン環境のウォレットで取引に署名をする機能のことです。この機能を使って送金するには2台のPC及びUSBメモリ等が必要になります。

①未承認の取引データをオンラインPCで作成②USBメモリ等で取引データをオフラインPCに移す③オフラインPCで取引データに署名④署名された取引データをUSBメモリでオンラインPCに移す⑤オンラインPCで取引データを送信、という流れです。

この一連の過程の中でもUSBメモリからオフラインPCへウイルスが侵入する危険性はあります。セキュリティ機能のあるUSBメモリを使う、オンラインPCのウイルス対策を万全にする、オフラインPC上でのUSBメモリの自動再生機能をオフにする、など一般的なセキュリティ対策にも気を使うと良いでしょう。

2台の端末を利用することになるのでマルチシグネチャ機能と併用することでさらにセキュリティを高めることもできます。バックアップしなければならないものが増え紛失により資産を失うリスクはやや上がるので、初心者には必ずしもおすすめしませんが、ある程度ビットコインの扱いに慣れてきた人には併用をおすすめします。オフラインにできる端末がなくコールドストレージが使えない場合はマルチシグネチャのみの利用もアリです。

※コールドストレージ機能の利用の流れで作成する監視専用ウォレット(watch-only wallet)は、モバイルウォレットやハードウェアウォレット、ペーパーウォレット等他のウォレットのアドレスや第三者のアドレスの残高も確認する場合にも使えます。この場合、PCは2台必要なく、以下で説明するのと同様の手順でオンラインPC上でウォレットを新規作成するだけで確認が可能です。新規ウォレットの作成時には、マスター公開鍵だけではなくアドレス(複数指定可)も入力できます。

まずは、USBメモリ等から、オフラインPCにElectrumを移してインストール、通常通りウォレットを作成してください。

インストール後、上部メニューの「ウォレット」→「情報」を選択します。するとxpub/ypub/zpubから始まるマスター公開鍵が表示されます。これはウォレット内のすべてのアドレスと結びついている鍵であり、秘密鍵の情報はこの中に含まれていません。

この鍵をコピーしておいてオンラインPCに書き写せるようにしておきます。次に、オンラインPCで作業を行うため、オンラインPC上のElectrumを起動します。

オンラインPC上で監視専用のウォレットを新規作成します。メニューの「ファイル」→「新規・復元」等からウォレットの作成画面を表示した後、ウォレットの種類を選択し、キーストアの選択画面で「マスター鍵を使用する」を選択してください。

※特定のアドレスのみの監視専用ウォレットを作るときは、最初のウォレットの種類の選択で「ビットコインアドレスまたは秘密鍵のインポート」を選択し、次の画面でアドレス(複数指定可)を入力します。

マスター公開鍵の入力を求められます。先ほど表示・保存していたマスター公開鍵をコピペやQRコードの読み取り等で入力しましょう。

ウォレットの暗号化を設定すれば監視専用のウォレットが作成され、これでコールドストレージ機能の使用準備は完了です。ウォレット名の後ろに[閲覧専用]と表示されるはずです。言葉通り、残高が閲覧できるだけで、このままでは一切送金作業を行うことのできないウォレットになりました。

※画像は既に入金済みのウォレットを監視専用ウォレットとして作成したため、既に取引履歴が表示されています。空のウォレットを利用するときはアドレスタブからオフラインPC上のアドレスとオンラインPC上のアドレスが一致していることを確認すると良いでしょう。

ビットコインの受取(コールドストレージ機能)

監視専用のウォレットでも受取は通常のウォレットと同様に行えます。「アドレス」または「請求」タブから任意のアドレスを送金元の相手に知らせてください。取引が行われると、取引情報が「履歴」タブに表示されます。

ビットコインの送金(コールドストレージ機能)

まずは、オンラインPC上(監視専用のウォレット)で通常と同様に取引の作成を行います。「送信」タブを開き、送金先アドレス、送金額等を入力します。そして、「支払い」をクリックし手数料を設定後、「送信」ボタンを選択して取引を作成します。すると、上画像のように通常のウォレットの場合とは異なり取引情報が表示されますので、「保存」を選択した後「エクスポート」→「ファイルをエクスポート」を選択してUSBメモリ等に取引ファイル(.psbt)を保存します。なお、ここで黄色で着色されているアドレスは自分のアドレスになります。

次にオフラインPC上のElectrumを起動し、上部メニューの「ツール」→「取引情報を読み込む」→「ファイルから」を選択し、先ほどUSBメモリ等に保存した取引ファイルを読み込みます。

すると取引情報が表示されます。状態の欄が「未署名」になっていることがわかります。「署名」ボタンを選択し取引に署名してください。署名すると状態が未署名から署名済に代わります。同様に署名済みの取引ファイル(.txn)をエクスポートし、USBメモリ等に保存します。

続いて、オンラインPC上で、同様に上部メニューの「ツール」→「取引情報を読み込む」→「ファイルから」を選択し、先ほどUSBメモリに保存した署名済みの取引ファイルを読み込みます。

「ブロードキャスト」をクリックすると、取引情報がネットワークに送信され、送金作業は完了となります。

アドレスの所有権を証明する(メッセージの署名)

任意のメッセージに秘密鍵を使って電子的に署名することにより、そのアドレスの所有権を証明することができます。

所有権を証明したいアドレスを右クリックして表示される「メッセージの署名/検証」を選択するか、上部メニューの「ツール」→「メッセージの署名・署名確認」を選択すると上のような画面(最初は空欄)が表示されます。

ここに任意のメッセージとアドレスを入力後、「署名」ボタンを選択すると、署名(シグネチャ)の欄に署名済みのメッセージが表示されます。アドレスの所有権を証明したい相手に、①メッセージ②アドレス③署名済みのメッセージ(シグネチャ)の3つを知らせれば、相手はこの三つを入力して「検証」ボタンを選択することにより、正しい署名であることが確認できます。

ビットコインの取引履歴は全世界に公開されているため、第三者がその情報を見ることで自分がビットコインを送ったとなり済ます可能性が考えられますが、このメッセージの署名機能を使用すれば、そのアドレスの所有権を証明することが可能です。

最終更新日: 2023年01月24日

コメント欄

コメントシステムを試験的に変更し、メールアドレスの入力やSNSからのログインを廃止しました。投稿後5分以内であれば編集や削除が可能です。その後に削除したいコメントがあれば依頼していただければこちらで削除いたします。

質問については出来る限りお答えしていますが、個人が運営している関係上対応の遅れや見逃し等限界もあるのでご了承ください。