USDT钱包服务搭建并测试
安装:
wget https://github.com/OmniLayer/omnicore/releases/download/v0.9.0/omnicore-0.9.0-x86_64-linux-gnu.tar.gz
tar -zxvf omnicore-0.9.0-x86_64-linux-gnu.tar.gz
mv omnicore-0.9.0 /usr/local/omnicore
ln -s /usr/local/omnicore/bin/omnicored /usr/local/bin/omnicored
ln -s /usr/local/omnicore/bin/omnicore-cli /usr/local/bin/omnicore-cli
配置:
mkdir /root/.omnicore
vim /root/.omnicore/bitcoin.conf
必要的配置信息: bitcoin.conf
# 测试网络为1,主网络为0
testnet=0
# 是否启用RPC客户端
server=1
# 监听
rpcbind=0.0.0.0:8332
# RPC客户端的用户名
rpcuser=test
# RPC客户端的密码
rpcpassword=123456
# RPC客户端的访问权限,这样写的意思是允许所有访问
rpcallowip=0.0.0.0/0
# RPC客户端的监听端口
rpcport=8332
# 与bitcoind的不同之处,omnicored必须指定这一项,否则启动会提示错误
txindex=1
启动服务:
omnicored -testnet #连接test3测试网络,会同步test3网络的区块数据(约20G)
omnicored #连接比特币主网网络,会同步真实区块数据(约250G,要4-5天时间同步完成)
omnicored -testnet -datadir=/root/.omnicore -conf=/root/.omnicore/bitcoin.conf -daemon
测试服务:
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"getnetworkinfo"}' --user test:123456 http://127.0.0.1:18332 -s | python3 -m json.tool
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"getblockchaininfo"}' --user test:123456 http://127.0.0.1:18332 -s | python3 -m json.tool
创建钱包
# param1: wallet_name 钱包名称
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"createwallet","params":["johnwallet222"]}' --user test:123456 http://127.0.0.1:18332 -s | python3 -m json.tool
对钱包设置密码
# param1: passphrase 密码
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"encryptwallet","params":["qazwsx123"]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet222 -s | python3 -m json.tool
解锁钱包 调用在内存中保存钱包的解密密钥,并在 指定的超时时间后自动锁定钱包
# param1: passphrase 密码
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"walletpassphrase","params":["qazwsx123", 60]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet -s | python3 -m json.tool
新建钱包地址
# param1: lable 标签 用于地址分类
# param2: output_type 地址类型(legacy|p2sh-segwit|bech32) 默认是p2sh-segwit
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"getnewaddress","params":["HelloWorld", "p2sh-segwit"]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet222 -s | python3 -m json.tool
获取钱包地址
# param1: lable 标签 用于地址分类
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"getaddressesbylabel","params":["HelloWorld"]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet222 -s | python3 -m json.tool
导出指定地址的私钥
# param1: address 钱包地址
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"dumpprivkey","params":["2MzAwwvoBqEfoADpRPFZV8HDwCBYfnhKP1R"]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet222 -s | python3 -m json.tool
获取USDT数量:
# param1: address 钱包地址
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"omni_getbalance","params":["2MzAwwvoBqEfoADpRPFZV8HDwCBYfnhKP1R",31]}' --user test:123456 http://127.0.0.1:18332 -s | python3 -m json.tool
获取钱包信息
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"getwalletinfo"}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet222 -s | python3 -m json.tool
调用将指定的地址或公钥脚本添加到钱包中
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"importaddress","params":["2MzAwwvoBqEfoADpRPFZV8HDwCBYfnhKP1R", "johnwallet"]}' --user test:123456 http://127.0.0.1:18332/wallet/ -s | python3 -m json.tool
调用将指定的私钥导入钱包
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"importprivkey","params":["cQPEnyZM76XeN27NvZ4Whkyaa26Yhz47qXquHyDTxyvSUGqgV2x2", "johnwallet"]}' --user test:123456 http://127.0.0.1:18332/wallet/ -s | python3 -m json.tool
获取钱包中的地址
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"listaddressgroupings"}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet -s | python3 -m json.tool
调用将钱包里的所有密钥导出到指定的文件
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"dumpwallet","params":["/tmp/johnwallet.txt"]}' --user test:123456 http://127.0.0.1:18332/wallet/johnwallet -s | python3 -m json.tool
挖矿并将奖励发送到指定钱包地址
curl -H 'Content-Type:application/json' -X POST --data '{"id":"1","jsonrpc":"2.0","method":"generatetoaddress", "params":[2,"2MzAwwvoBqEfoADpRPFZV8HDwCBYfnhKP1R", 500000]}' --user test:123456 http://127.0.0.1:18332 -s | python3 -m json.tool
本站文章采用知识共享署名 4.0 国际许可协议进行许可。