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

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

【サイドチェーン】Elements code tutorialを読む Part1

エンジニアスクールFLOC

Pythonで動かして学ぶ!あたらしいブロックチェーンの教科書 (AI & TECHNOLOGY)

Pythonで動かして学ぶ!あたらしいブロックチェーンの教科書 (AI & TECHNOLOGY)

Installing Bitcoin

Bitcoin Core 0.17.1 をダウンロード

​ * Releases · bitcoin/bitcoin · GitHub

作業フォルダ作成

$ mkdir work
$ ls -la

バイナリーファイルチェック

$ cd work
$ sha256sum bitcoin-0.17.1-x86_64-linux-gnu.tar.gz

チェックサム

53ffca45809127c9ba33ce0080558634101ec49de5224b2998c489b6d0fc2b17  bitcoin-0.17.1-x86_64-linux-gnu.tar.gz

バイナリーファイル解凍

$ tar -zxvf bitcoin-0.17.1-x86_64-linux-gnu.tar.gz
$ ls -la

実行ファイルのコピー

$ sudo cp ~/work/bitcoin-0.17.1/bin/bitcoind /usr/bin/
$ sudo cp ~/work/bitcoin-0.17.1/bin/bitcoin-cli /usr/bin/

Installing Elements

elements 0.17.0 をダウンロード

​ * Releases · ElementsProject/elements · GitHub

バイナリーファイルチェック

$ cd work
$ sha256sum liquid-0.17.0-x86_64-linux-gnu.tar.gz

チェックサム

de1c4f7306b0b3f467e743c886a9b469f506acbfb91e19c617dd6a54c7cc9c41  liquid-0.17.0-x86_64-linux-gnu.tar.gz

バイナリーファイル解凍

$ tar -zxvf liquid-0.17.0-x86_64-linux-gnu.tar.gz
$ ls -la

実行ファイルのコピー

$ sudo cp ~/work/liquid-0.17.0/bin/liquidd /usr/bin/
$ sudo cp ~/work/liquid-0.17.0/bin/liquid-cli /usr/bin/

Setting up your working environment

ディレクトリ作成

$ mkdir ~/bitcoindir
$ mkdir ~/elementsdir1
$ mkdir ~/elementsdir2
$ ls -la

bitcoin.confファイル設定

​ * elements/contrib/assets_tutorial at master · ElementsProject/elements · GitHub

$ vi ~/bitcoindir/bitcoin.conf

bitcoin.conf

regtest=1
daemon=1
txindex=1
​
regtest.rpcport=18888
regtest.port=18889
​
rpcuser=user3
rpcpassword=password3

liquid.confファイル設定

elementsdir1

$ vi ~/elementsdir1/liquid.conf

liquid.conf

chain=elementsregtest
​
rpcuser=user1
rpcpassword=password1
elementsregtest.rpcport=18884
elementsregtest.port=18886
​
rpcport=18884
elementsregtest.connect=localhost:18887
​
daemon=1
listen=1
txindex=1
​​
validatepegin=1
​
mainchainrpcport=18888
mainchainrpcuser=user3
mainchainrpcpassword=password3
​
initialfreecoins=2100000000000000

elementsdir2

$ vi ~/elementsdir2/liquid.conf

liquid.conf

chain=elementsregtest
​
rpcuser=user2
rpcpassword=password2
elementsregtest.rpcport=18885
elementsregtest.port=18887
elementsregtest.connect=localhost:18886
​
daemon=1
listen=1
txindex=1
​​
mainchainrpcport=18888
mainchainrpcuser=user3
mainchainrpcpassword=password3
validatepegin=1
​
initialfreecoins=2100000000000000

alisa作成

alias b-dae="bitcoind -datadir=$HOME/bitcoindir"
alias b-cli="bitcoin-cli -datadir=$HOME/bitcoindir"
alias e1-dae="liquidd -datadir=$HOME/elementsdir1"
alias e1-cli="liquid-cli -datadir=$HOME/elementsdir1"
alias e2-dae="liquidd -datadir=$HOME/elementsdir2"
alias e2-cli="liquid-cli -datadir=$HOME/elementsdir2"

bitcoindデーモン起動

$ b-dae

wallet残高確認

b-cli -getinfo

こっちの方が今は一般的?

b-cli getwalletinfo

プロセス起動確認

ps aux | grep bitcoind

liquiddデーモン起動

$ e1-dae
$ e2-dae

wallet残高確認

e1-cli getwalletinfo
e2-cli getwalletinfo

プロセス起動確認

ps aux | grep liquidd

仮想通貨取引所

Liquid by Quoine

ウォレット

▼記事の続きは以下へ。

【サイドチェーン】Elements code tutorialを読む Part2 - kharukaのブログ~お金と技術とキャリア~

参考

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

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