kharukaのブログ~お金と技術とキャリア~

Edu Fin~金融×教育~若いうちからお金について学ぶってだいじ!学んだテクノロジーはみんなの財産。過去、現在、将来の人生についてのブログ

はじめてのBitcoinCash(0.18.2)ノード構築Part1(2018年9月30日更新)

エンジニアスクールFLOC

ビットコインとブロックチェーン

ビットコインとブロックチェーン

1. BitcoinCashとは?

ビットコインキャッシュは、その単位が「BCH」と表記される仮想通貨です。実は、ビットコインキャッシュは、2017年8月1日にビットコインから分裂して誕生したという経緯があります。

個人的にはCrypto Currencyなので暗号通貨の方がしっくりきます。

仮想通貨だとVirtual Currencyになっちゃいますかね?

Bitcoinとは?

kharuka2016.hatenablog.com

2. 環境情報

OS バージョン 備考
macOS High Sierra 10.13.6 ホストOS
Oracle VM VirtualBox 5.2.18
Ubuntu 18.04.1LTS ゲストOS

3. 環境構築

▼環境構築の仕方はこちらなどをご参考に。

kharuka2016.hatenablog.com

4. BitcoinCashノード構築

1. ユーザー作成

sudo adduser <user name>

UNIX パスワード以外は適当に入力してください。

[sudo] kharuka のパスワード: 
ユーザー `<user name>' を追加しています...
新しいグループ `<user name>' (1001) を追加しています...
新しいユーザー `<user name>' (1001) をグループ `<user name>' に追加しています...
ホームディレクトリ `/home/<user name>' を作成しています...
`/etc/skel' からファイルをコピーしています...
新しい UNIX パスワードを入力してください: 
新しい UNIX パスワードを再入力してください: 
passwd: パスワードは正しく更新されました
<user name> のユーザ情報を変更中
新しい値を入力してください。標準設定値を使うならリターンを押してください
   フルネーム []: 
   部屋番号 []: 
   職場電話番号 []: 
   自宅電話番号 []: 
   その他 []: 
以上で正しいですか? [Y/n] y

作成したユーザーをsudoグループに追加します。

sudo gpasswd -a <user name> sudo

ちゃんと作成したユーザーがsudoグループに追加されたか

getent group sudo

などで確認しましょう。

2. BitcoinCashのバイナリーファイルをダウンロード

sudo su - <user name>
mkdir work
cd work
wget https://download.bitcoinabc.org/0.18.2/linux/bitcoin-abc-0.18.2-x86_64-linux-gnu.tar.gz

今回はBitcoinABCのノードをダウンロードしました。

BitcoinABCのサイトからはBitcoinCashファイルをBINARIES,SOURCE CODE, UBUNTU PACKAGESの3形式でダウンロードすることができます。

SOURCE CODE(GitHub)形式でダウンロードして、

色々頑張って(笑)

./autogen.sh
./configure
make
sudo make install

するのも楽しいので興味がある方は是非!

3. BitcoinCashのバイナリーファイルを解凍

tar -zxvf bitcoin-abc-0.18.2-x86_64-linux-gnu.tar.gz

4. BitcoinCashインストール確認

cd bitcoin-abc-0.18.2/
cd bin/
./bitcoind --version

Bitcoin ABC Daemon version v0.18.2.0-6a51d4fと表示されればOKです。

6a51d4fはcommitのversion先頭7桁です。

GitHubのcommitなどで確認してみましょう。

Bitcoin ABC Daemon version v0.18.2.0-6a51d4f
Copyright (C) 2009-2018 The Bitcoin developers

Please contribute if you find Bitcoin ABC useful. Visit
<https://www.bitcoinabc.org> for further information about the software.
The source code is available from <https://github.com/Bitcoin-ABC/bitcoin-abc>.

This is experimental software.
Distributed under the MIT software license, see the accompanying file COPYING
or <https://opensource.org/licenses/MIT>

This product includes software developed by the OpenSSL Project for use in the
OpenSSL Toolkit <https://www.openssl.org> and cryptographic software written by
Eric Young and UPnP software written by Thomas Bernard.

5. bitcoin.confファイル作成

./bitcoind -daemon

うまく?プロセス起動に失敗しない場合は、ctrl + cなどで強制終了します。

次に、homeディレクトリに直下に.bitcoinディレクトリが作成されていることを確認します。

cd
ls -a

bitcoin.confファイルを作成します。

cd .bitcoin/
touch bitcoin.conf
chmod -v 600 bitcoin.conf
vi bitcoin.conf

bitcoin.confファイルをviで次の様に編集します。

server=1
txindex=1
rpcuser=<rpcuser>
rpcpassword=<rpcpassword>
rpcport=18332
rpcallowip=127.0.0.1
debug=1
testnet=1
magneticanomalyactivationtime=1535500000
addnode=144.217.126.201

6. bitcoind起動と確認

ホームディレクトリに移動します。

cd

bitcoindの起動とプロセス起動・debug.log確認をします。

./work/bitcoin-abc-0.18.2/bin/bitcoind -daemon
ps aux | grep bitcoind
less .bitcoin/testnet3/debug.log

debug.logにERRORや以下の様なログが出ていなければ同期がスタートしているはずです。

Shutdown: In progress...

気長に同期完了を待ちましょう。

環境にもよりますが、Testnetでも数時間はかかります。

ワクワクしますねー。

7. bitcoind停止と確認

./work/bitcoin-abc-0.18.2/bin/bitcoin-cli stop
ps aux | grep bitcoind
less .bitcoin/testnet3/debug.log

debug.logに以下のログがはかれているので確認してみましょう。

Shutdown: done

8. ブロック同期確認

less .bitcoin/testnet3/debug.log

debug.logにprogress=1.000000と出ていれば

2018-09-30 04:57:12 UpdateTip: new best=000000008caa505c01d48d032f5ece35988f5e6e1c91dfe6a6c607c619987cf1 height=1258943 version=0x20000000 log2_work=69.672154 tx=16315100 date='2018-09-30 04:56:36' progress=1.000000 cache=240.0MiB(1411911txo)

同期完了です!

9. bitcoin-cliでwalletの中身を確認

./work/bitcoin-abc-0.18.2/bin/bitcoin-cli getwalletinfo

当然ですが、まだお財布の残高(balance)は0BCHです。

{
  "walletname": "wallet.dat",
  "walletversion": 160300,
  "balance": 0.00000000,
  "unconfirmed_balance": 0.00000000,
  "immature_balance": 0.00000000,
  "txcount": 0,
  "keypoololdest": 1538225306,
  "keypoolsize": 1000,
  "keypoolsize_hd_internal": 1000,
  "paytxfee": 0.00000000,
  "hdmasterkeyid": "xxx"
}

次回はお財布に送金をしてみましょう。

▼記事の続きは以下へ。

kharuka2016.hatenablog.com

仮想通貨取引所・販売所

  • bitbank

https://bitcoinbank.co.jp

https://bitflyer.com/ex/sp/home

【BITPoint】ビットコイン・イーサリアムなど仮想通貨の口座開設ならビットポイント

https://coincheck.com/ja/

https://bitcoin.dmm.com

フィスコ仮想通貨取引所 口座開設プロモーション

  • Liquid by Quoine

https://ja.quoinex.com

  • SBI Virtual Currencies

https://www.sbivc.co.jp

ハードウェアウォレット

  • Ledger Nano S

  • トレザー

ソフトウェアウォレット

  • Ginco

Ginco - 安心・安全の仮想通貨ウォレット

参考

仮想通貨の税金ならGuardian