RealPath:
WebPath:
2017/01/09 00:19 (JST) 更新
ウォレット >>

パスフレーズ設定(暗号化)

Contents

ウォレットの暗号化 (パスフレーズによる保護): encryptwallet

encryptwallet コマンドによりウォレットへのアクセスをパスフレーズで保護(暗号化)できる。
※一度パスフレーズを設定すると順当な方法ではパスフレーズを削除することはできないので注意。

$ bitcoin-cli encryptwallet xxxxxx
wallet encrypted; Bitcoin server stopping, restart to run with encrypted wallet. The keypool has been flushed and a new HD seed was generated (if you are using HD). You need to make a new backup.

 
パスフレーズを設定すると一度 bitcoind が止まるので手動で起動しなおす

$ bitcoind -daemon
Bitcoin server starting

 
暗号化を行った状態で getinfo を見ると、unlocked_until という項目が増えていることが確認できる。

$ bitcoin-cli getinfo
jikken version
{
  ....
  "unlocked_until": 0, … 暗号化を行うと、この項目が増える
  ....
}

ロック解除: walletpassphrase

以下のように walletpassphrase コマンドにパスフレーズとロック解除秒数を指定することでロック解除を行うことができる。

$ bitcoin-cli walletpassphrase xxxxxx 60

ロック解除に成功した場合は特に何のメッセージも表示されない。

 
getinfo の内容により、ロック解除期限を確認できる。

$ bitcoin-cli getinfo
{
  ....
  "unlocked_until": 1483460250, … ここの値を見る。0 以外になっていればアンロックされている。
  ....
}

 
unlocked_until の単位は UNIXTIME。date コマンドにより人間が読める形式(ローカルタイム基準)に変換できる。

$ date --date @1483460250
Wed Jan  4 01:17:30 JST 2017

ロック解除時のパスフレーズを間違えた場合

パスフレーズを間違えると以下のようなエラーが表示される。参考までに。

$ bitcoin-cli walletpassphrase yyyyyy 60
error code: -14
error message:
Error: The wallet passphrase entered was incorrect.

パスフレーズの変更: walletpassphrasechange

以下のように walletpassphrasechange コマンドによりパスフレーズを変更できる。

$ bitcoin-cli walletpassphrasechange xxxxxx zzzzzz

パスフレーズの削除

今のところ(2017年1月に調べた範囲では)削除コマンドは無い模様。

無理やりパスフレーズを削除するとしたら以下のようにウォレットのバックアップ・削除・リストアを行うと良い。

$ bitcoin-cli walletpassphrase xxxxxx 60 … ロック解除
$ bitcoin-cli dumpwallet a.dump          … バックアップ
$ bitcoin-cli stop                       … 一度 bitcoind を停止
$ rm .bitcoin/regtest/wallet.dat         … 環境に応じた wallet.dat を手動削除
$ bitcoind -daemon                       … bitcoind 起動しなおし
$ bitcoin-cli importwallet a.dump        … リストア