USTD下载地址:https://github.com/OmniLayer/omnicore/releases
etc下载地址:https://github.com/ethereumproject/go-ethereum/releases
BTC开发学习

下载地址:https://bitcoin.org/bin/bitcoin-core-0.17.1/bitcoin-0.17.1-x86_64-linux-gnu.tar.gz
一定要这个版本,网上教程都是以这个版本为蓝本的。
ln -fs /home/bitcoin-0.17.1 /opt/bitcoin
ln -fs /home/bitcoin-0.17.1/bin/bitcoind /usr/local/bin/bitcoind
ln -fs /home/bitcoin-0.17.1/bin/bitcoin-cli /usr/local/bin/bitcoin-cli
配置文件(测试环境)

~/.bitcoin/bitcoin.conf

datadir=/home/btc_data
dbcache=10240
txindex=1
rpcuser=aaabbb
rpcpassword=123456
daemon=1
server=1
rest=1
gen=1
rpcallowip=0.0.0.0/0
deprecatedrpc=accounts
#local testnet
regtest=1
[regtest]
rpcbind=0.0.0.0:18443

bitcoind -daemon
bitcoin-cli stop

下面是命令大全
#查看钱包信息
bitcoin-cli -regtest getwalletinfo

#挖101个block,挖矿奖励在100个block后才能使用
bitcoin-cli -regtest generate 101

#查看挖矿奖励
bitcoin-cli -regtest getbalance
#查看默认hash地址
bitcoin-cli -regtest getaccountaddress ""

2MueCwwme7SZzuXpe2NYvHGUxx7KaaoCbpj

#生成新的地址
bitcoin-cli -regtest getnewaddress "test"
2Myr43NbpxMM3W2iTq5ifec66wFwNVWyMeM
#查看私钥
bitcoin-cli dumpprivkey 2Myr43NbpxMM3W2iTq5ifec66wFwNVWyMeM

#账户列表
bitcoin-cli listaccounts

#在test账户新建地址
bitcoin-cli -regtest getnewaddress "test"

2NAq5QXCPCQcosCxdYMrPxZoXAjU9h2misi

#查看账户test下的地址
bitcoin-cli getaddressesbyaccount "test"
#查地址所属账户
bitcoin-cli getaccount 2NAq5QXCPCQcosCxdYMrPxZoXAjU9h2misi
#查看账户余额
bitcoin-cli getbalance "test"
#查看地址收到币的数量
bitcoin-cli getreceivedbyaddress 2NAq5QXCPCQcosCxdYMrPxZoXAjU9h2misi

#从默认账户给目标地址转账
bitcoin-cli sendtoaddress "2NAq5QXCPCQcosCxdYMrPxZoXAjU9h2misi" 0.1
#从指定账户转账
bitcoin-cli sendfrom "test" "n3BMgZMA26TcHnVa5iNJeB3PMqkF3cEWBE" 0.01

#生成一个区块,使得交易得到确认(测试网络使用)
bitcoin-cli -regtest generate 1
#再次查看账户余额
bitcoin-cli getbalance "test"

#查看收到的比特币
bitcoin-cli -regtest listreceivedbyaddress

#查看交易详情
bitcoin-cli gettransaction 550d0bab60193a5edfd2636b6187bbdd557eb167a800b8f8d88edb1a037f19bd
#查看raw交易
bitcoin-cli getrawtransaction d0bab60193a5edfd2636b6187bbdd557eb167a800b8f8d88edb1a037f19bd

rpc api访问测试,查询getwalletinfo

curl -s -X POST --user btc:btc2018
-H 'content-type: text/plain;' http://127.0.0.1:18443/
--data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getwalletinfo", "params": [] }'

#命令列表
bitcoin-cli help
#某个命令的详细帮助信息
bitcoin-cli help sendtoaddress

以下是编译安装 的一些信息
 出现报错:原因是找不到berkeleyDB的相关头文件导致的(参考 https://blog.csdn.net/xocoder/article/details/78914576)

报错:libdb_cxx headers missing, Bitcoin Core requires this library for wallet functionality (–disable-wallet to disable wallet functionality)

上面安装db的脚本执行后其实会提示:

When compiling bitcoind, run ./configure in the following way:

export BDB_PREFIX='/home/zhang/bitcoin/db4'
./configure BDB_LIBS="-LBDBPREFIX/libldbcxx4.8"BDBCFLAGS="I{BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I{BDB_PREFIX}/include" ...

所以,应当设置bash环境变量BDB_PREFIX为刚才指定的安装目录,并在configure时,提供这个环境变量

解决步骤:

vim ~/.bashrc
export BDB_PREFIX='/home/zhang/bitcoin/db4'

source ~/.bashrc
./configure BDB_LIBS="-LBDBPREFIX/libldbcxx4.8"BDBCFLAGS="I{BDB_PREFIX}/lib -ldb_cxx-4.8" BDB_CFLAGS="-I{BDB_PREFIX}/include"

编译

make
make install