GreenBitsウォレットについて

 

Nayutaの広報、Hitomiです!

今回は、GreenBits ウォレットを紹介します。ウォレットの紹介シリーズ第6回目です。前回の記事、GreenAddressウォレットとセットで見ていただければ幸いです。
この記事では、GreenBits の特筆すべき特徴を、ウォレットを実際に操作したときの画像も交えながら説明していきます。使い方に関しては、他の方がきれいにまとめている記事があると思うので、そちらを参考にしてください。


3_thumb8

左:GreenAddress(出典元:公式ウェブサイト)
右:GreenBits(出典元:Google Play –> GreenBits)

概要
GreenBits ウォレットは、Androidで使えるビットコイン専用のウォレットです。マルチシグネチャアドレスと呼ばれる、複数の署名を必要とする送金アドレスが生成されます。他のウォレットでは、マルチシグがデフォルトのアドレスではない or 生成されないことが多いため、GreenBitsの特徴ともいえるでしょう。Android版は、GreenBits(ネイティブアプリ)のほかに、GreenAddress(Cordovaアプリ) というウォレットがあります。

基本情報
URL: https://greenaddress.it/en/
マルタにあるGreenAddressit社のウォレットです。2016年にBlockstream社によって買収されました。Blockstreamといえば最近、Liquidというサイドチェーンをロンチして話題になった企業です。
Android / F-Droid で使うことが出来ます。いずれも日本語には対応していません。

2018年12月05日現在の最新バージョンは、2.07です。

使用前の注意

1: greenbitsという仮想通貨とは関係のない支払い系サービス、GREENBITというイサリアム系トークンが存在します。今回紹介するウォレットには関係ありません。ご注意ください。

2: ビックカメラでは、GreenAddressからのビットコイン決済は無効にすることがあると公式WEBサイトに記載しています。


GreenBitsの特徴

1: SPVです。送金の際は 2of2 / 2of3 の署名をサーバーに渡すため、SPV的な動作をするのは着金やトランザクションの確認の時だろうと思います。

一方でGreenAddressは、SPVではなくサーバーを経由していると推測しています。

27

図1: GreenBitsとGreenAddressの比較

26

図2: ランダムなフルノードと繋がっている。

29

図3: また、信頼できるノードと確実につなげることもできる。

2: Torがサポートされています。

25

図4: ログインページ画面の右上に「Network configuration」
というオプションが出てくる。

3: Testnetを作ることが出来ます。図8中の「Network selector」を選択すると、図9のように「Testnet」の選択肢が出てきます。

28

図5: Testnet


GreenAddressと共通の特徴

1: オープンソース開発です。

2: セグウィットネイティブアドレス(bech32)への送金に対応しています。GreenAddressは1番最初にSegwit対応をしたクライアント型ウォレットでもあります。

3: メインアカウントで生成されるアドレスは、2of2マルチシグネチャアドレス(P2SH)と呼ばれるものです。送金をする際、複数の署名を必要します。2of2の場合、2人中2人の署名が必要です。マルチシグではない通常のアドレスは、複数ではなくクライアントの署名だけが要求されます。

通常、2of2の署名は2つのクライアントのものでいいのですが、GreenAddressではクライアントとサーバーの署名が必要です。つまり、送金する際は、GreenAddressサーバーの署名が必要になるということです。

Decentralizedなビットコインの送金に、サーバーの署名が必要というのは少し変な気もします。しかし、GreenAddress側によれば、セキュリティのためにこのような仕組みしているということです。

4: HDウォレット(BIP32)です。復元フレーズは暗号化され、ローカルで保管されています。この復元フレーズや秘密鍵は、サーバーに送信されることはありません。(サーバーは、公開鍵と生成されたアドレス用のチェーンコードのみを受信します。

17

図6: PINと復元フレーズの関係。
PINでのログインを3回間違えると、パスワードが無効になり
復元フレーズでログインしないといけない。

5: nLockTimeが設定されています。nLockLTimeは、トランザクションにくっついたパラメーターのことです。あるunix時刻またはブロックの高さを与えると、そのトランザクションは、指定の期間前にブロックに入ることが出来ません。

その期間が訪れた際に、GreenAddress側の署名無しに、マイナーがトランザクションをマイニングすることが可能になります。つまり、クライアントが自分の署名のみでどこかに送金できるということです。

これは、(1) 2of2のアカウントを使っていて、(2) 2FAにアクセスできなくなった場合、または(3) GreenAddressのサービスが使えなくなった場合に、リカバリーツールgarecoveryを使って、資産を復元させるときに使われます。

22

図7: nLockTime トランザクション

23

図8: 「Request nLocktime transactions」をタップすると
バックアップが取れる。

6: RBF(Replace By Fee) が設定されています。トランザクションが、いつまで経ってもMEMプールに入ったままで承認が行われない場合(未承認トランザクション、0承認トランザクション)、トランザクション手数料を増加して承認されるように新しいトランザクションに置き換えることができる機能です。

7: Watch-only機能があります。この機能を使うと、秘密鍵がウォレットに読み込まれません。つまり、送金することが出来なくなります。例えば、インターネット接続が心配な公共の場で、トランザクションや残高だけをチェックしたいとき、受金だけをしたいときに、安心して使うことが出来ます。

ところで、Electrumの記事にも「Watching-only」という言葉が出てきました(特徴2)。似た言葉が使われていますが、内容は少し違います。Electrum はWatch-onlyにしたウオレットは、(1)履歴の閲覧、(2)受金、(3)ブロードキャストされる前のトランザクションの作成、(4)ブロードキャストを行います。一方、GreenAddressは、(1)履歴の閲覧、(2)受金しか出来ません(図5)

25

図9: 使う前に設定をしておいたら、
このように「Watch only login」が選択できるようになる。

8

図10: WEBサイトからでもWatch-Onlyでログイン出来るので
第三者のパソコンを使うことも問題ない。

24

図11: ElectrumとGreenBitsの比較(Watch-only)

8: ハードウェア型ウォレットのTrezor、Ledgerに完全に対応しています。

9: 他のウォレットから秘密鍵と資産をスイープすることが出来ます。


感想
GreenBitsは、GreenAddressウォレットと大差はありません。注目するとすれば、SPV的な動作をするかどうかという箇所でしょう。
使い勝手としては、玄人向けのGreenAddressよりは、シンプルで使いやすいかもしれません。