2021/03/03
リップル(XRP)のペーパーウォレット作成方法です。
セキュリティを極限まで高めた完全オフラインでの作成方法を解説します。
Rippleアドレスを生成するツールはネットでいつくか配布されておりますが、ソースコードまで確認するのは非常に困難なので、今回はセキュリティを高めるために限りなく自作に近いやり方で行います。
目次
事前準備
【用意するモノ】
- 完全オフライン専用PC
- USB接続が可能なオフライン専用プリンター
- 安全なUSBメモリ
※完全オフライン専用PCの作り方は下記のページに記載しています。
専用のフォルダを作成
アドレス生成に必要なスクリプトをダウンロードしますので、ネットに繋がるPC上のお好きな場所に新しくフォルダを作成します。※例としてフォルダ名「ripple」とします。
ripple-libのダウンロード
Ripple社がgithubにて公式に配布している ripple-lib のページにアクセスします。
URL:https://github.com/ripple/ripple-lib/releases
【※2018年11月30日更新】
この記事を更新時点で最新の「ripple-1.1.1.js」をダウンロードします。「ripple-1.1.1.js」を右クリックし「名前を付けてリンク先を保存」で「ripple」フォルダ内にダウンロードしてください。
lodash.jsのダウンロード
lodashの配布ページにアクセスします。
URL:https://lodash.com/
「lodash.js (Full build)」をダウンロードします。「lodash.js (Full build)」を右クリックし「名前を付けてリンク先を保存」で「ripple」フォルダ内にダウンロードしてください。
minimalist ripple clientのダウンロード(アドレス整合性テスト用)
minimalist ripple clientの配布ページにアクセスします。
URL:https://github.com/jatchili/minimalist-ripple-client/
「index.html」クリックします。
次に「Raw」を右クリックし、「名前を付けてリンク先を保存」で「ripple」フォルダ内にダウンロードしてください。
アドレス生成htmlファイルの作成
メモ帳(他のテキストエディタでもOKです)を開き、以下のコードをコピペしてください。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Ripple Paper Wallet</title> <script src="lodash.js"></script> <script src="ripple-1.1.1.js"></script> <script> function generateNewAdd() { const gNA = new ripple.RippleAPI(); const gNApair = gNA.generateAddress(); target = document.getElementById("newAdd").innerHTML = gNApair.address; target = document.getElementById("newSec").innerHTML = gNApair.secret; }; </script> </head> <body> <input type="button" value="generate New RippleAddress" onclick="generateNewAdd()"> <hr> <table> <tr> <th>RippleAddress</th> <td id="newAdd"></td> </tr> <tr> <th>SecretKey</th> <td id="newSec"></td> </tr> </table> <hr> </body> </html>
次にHTMLファイル(拡張子.html)として保存します。※ここではファイル名「new-address.html」とします。
メモ帳の「ファイル(F)」から「ファイル名を指定して保存」をクリックし、
・ファイル名を「new-address.html」
・ファイルの種類を「すべてのファイル(*.*)」
・文字コードを「UTF-8」
にて「ripple」フォルダ内に保存してください。
【※備考】「new-address.html」のHTMLソースの解説
6行目で「lodash.js」、7行目で「ripple-1.1.1.js」を読み込み、8行目から15行目までで「Rippleアドレスの生成」を命令する処理のみが書いてあります。その他はブラウザ表示の為のHTMLなので非常にシンプルでセキュアです。
USBメモリでオフラインPCにコピー
USBメモリを利用して「ripple」フォルダをオフラインPCにコピーします。
Rippleペーパーウォレット作成(※オフラインPCにて作業)
Rippleアドレス生成
オフラインPCにて先ほどコピーした「ripple」フォルダを開きます。
ブラウザ(Google chrome又はFirefox)のシークレットウィンドウ(プライベートウィンドウ)を立ち上げ、「new-address.html」をドラッグ&ドロップします。※注意:必ずGoogle chromeもしくはFirefoxにて行ってください。
「generate New RippleAddress」ボタンをクリックするとRippleアドレスとシークレットキーが生成されます。
クリックを連打すると毎回違うアドレスを生成しますので気に入ったRippleアドレスが出るまでクリックして自分用のRippleアドレスを決めてください。
アドレスとシークレットキーの整合性テスト
Rippleアドレスが決まったら、そのアドレスとシークレットキーの組み合わせに問題が無いか「minimalist ripple client」を使ってテストを行います。
ブラウザ(Google chrome又はFirefox)のシークレットウィンドウ(プライベートウィンドウ)をもう一つ立ち上げ、「index.html」をドラッグ&ドロップします。※注意:必ずGoogle chromeもしくはFirefoxにて行ってください。
「secret」と書かれたテキストフィールドにシークレットキーを入力し「set identity」をクリックします。
すぐ上の部分に先ほど作ったRippleアドレスが表示されれば整合性テストOKです。
印刷
オフライン専用PCにUSBケーブルにてプリンタを接続し、「new-address.html」のアドレス生成画面でブラウザに表示された「Rippleアドレスとシークレットキー」を印刷してください。(複数枚印刷推奨)
ここまででオフラインPCでの作業は終了です。
XRP送金
アドレスの残高チェック
ネットに繋がったPCにてRipple公式の「Account Explorer」ページを開きます。
URL:https://xrpcharts.ripple.com/#/graph
先ほど作成したRippleアドレスを間違いが無いように入力して「Go」ボタンをクリックします。
その後に「Account Not Found」とメッセージが表示されBalances(残高)のXRP がゼロであればOKです。(スマホだとメッセージが見えないのでPCで確認してください。)
※もしこの際に入力間違いが無いにも関わらず「Please enter a valid ripple address.」(日本語訳:有効なリップルアドレスを入力してください。)や「instance.address does not conform to the “address” format.」(日本語訳:instance.addressが アドレス形式に準拠していません。)と表示されたら先ほど作ったRippleアドレスが不正ですのでもう一度Rippleアドレスを作り直してください。
アクティベート(テスト送金も含む)
Rippleアドレスのアクティベートも込みでXRPのテスト送信を行います。
アクティベートに20XRPが必要ですので、販売所や取引所から先ほど新規作成したRippleアドレス宛に21XRPほど送金します。(タグは不要です。)
その後「Account Explorer」にて送金が正常に行われて無事に着金したかチェックし、問題が無ければ本送金を行います。
本送金
販売所や取引所からXRPを本送金します。
再度「Account Explorer」にて送金・着金が正常に行われたかチェックして問題が無ければペーパーウォレットの作成作業が完了です。
保管
最後にペーパーウォレットを他人の目に触れず物理的に安全な複数の場所に保管してください。
以上です。
※仮想通貨の購入や投資・投機、送金・保管は自己責任でお願いいたします。