主页 > imtoken官方最新版 > 《精通比特币》笔记~比特币客户端
《精通比特币》笔记~比特币客户端
使用安全密码为 JSON-RPC 接口创建配置文件
rpcuser=bitcoinrpc
rpcpassword=2XA4DuKNCbtZXsBQRRNDEwEY2nM6M4H9Tx5dFjoAVVbK
写入 ~/.bitcoin/bitcoin.conf
在后台模式下运行 bitcoind
比特币守护进程
通过命令行使用比特币核心 JSON-RPC API 接口
比特币-cli 帮助
获取有关 Bitcoin Core 客户端状态的信息
比特币客户端获取信息
警告:getinfo 已弃用,将在 0.16 中完全删除。
在升级到 0.16 之前,项目应该过渡到使用 getblockchaininfo、getnetworkinfo 和 getwalletinfo
钱包设置和加密
加密钱包
bitcoin-cli 加密钱包 foo
解锁钱包
bitcoin-cli walletpassphrase foo 360
钱包备份,明文导出和恢复
创建钱包的备份文件
bitcoin-cli 备份钱包 wallet.backup
重新加载备份文件
bitcoin-cli 导入钱包 wallet.backup
将钱包转储为人类可读的文本文件
bitcoin-cli转储钱包wallet.txt
钱包地址和接收交易
获取其中一个地址
比特币-cli getnewaddress
13Bqx1N77WKSC6ZkFxTmamLNSJDRRL9H51
询问这个地址收到的比特币数量
比特币-cli getreceivedbyaddress 13Bqx1N77WKSC6ZkFxTmamLNSJDRRL9H51 0
整个钱包收到的交易
比特币-cli listtransactions
列出整个钱包的所有地址
bitcoin-cli getaddressesbyaccount“”
至少 minconf 确认的所有交易的总和
比特币-cli getbalance
探索和解码交易
通过交易哈希获取交易
比特币-cli gettransaction 9ca8f969bd3ef5ec2a8685660fdbf7a8bd365524c2e1fc66c309acbae2c14ae3
获取整个交易代码并解码
比特币-cli getrawtransaction 9ca8f969bd3ef5ec2a8685660fdbf7a8bd365524c2e1fc66c309acbae2c14ae3
解码十六进制字符串
bitcoin-cli decoderawtransaction 0100000001d717...388ac00000000
默认情况下比特币核心代码,Bitcoin Core 建立一个数据库,只包含与用户钱包相关的交易。
如果要使用 gettransaction 之类的命令访问所有交易,则需要配置 Bitcoin Core 以构建完整的交易索引比特币核心代码,这可以通过 txindex 选项来实现。
在 Bitcoin Core 配置文件(通常位于安装目录的 .bitcoin/bitcoin.conf 中)中将 txindex 设置为 1。
一旦你改变了这个参数,你需要重新启动bitcoind并等待它重建索引。
探索块
查询块
比特币-cli getblock 000000000000000051d2e759c63a26e247f185ecb7926ed7a6624bc31c2a717b 真
按块高度检索块/获取“创世块”的块哈希
比特币-cli getblockhash 0
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
区块信息
比特币-cli getblock 000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
基于UTXO(未花费交易输出)的创建、签名和提交
查看钱包中之前交易的所有剩余确认支出
bitcoin-cli 列表未花费
未花费输出的详细信息
比特币-cli gettxout 9ca8f969bd3ef5ec2a8685660fdbf7a8bd365524c2e1fc66c309acbae2c14ae3 0
为交易创建一个新地址
比特币-cli getnewaddress 1LnfTndy3qzXGN19Jwscj1T8LR3MVe3JDb
创建交易
bitcoin-cli createrawtransaction '[{"txid" : "9ca8f969bd3ef5ec2a8685660fdbf7a8bd365524c2e1fc66c309acbae2c14ae3", "vout" : 0}]' '{"1LnfTndy3qzXGN19Jwscj1T8LR3MVe3JDb": 0.025, "1hvzSofGwT8cjb8JU7nBsCSfEVQX5u9CL": 0.0245}'
签名交易
加密钱包必须先解密才能签名,因为签名需要使用钱包中的秘钥
bitcoin-cli walletpassphrase foo 360
bitcoin-cli signrawtransaction 0100000001e34ac1e2baac09c366fce1c2245536bda8...518fa2e
向比特币网络提交新交易
bitcoin-cli senddrawtransaction 0100000001e34ac1e2baac09c366fce1c2245536bda8...c17b346
当使用 senddrawtransaction 命令将交易发布到比特币网络时,它返回交易的哈希值
原文链接
第三章 比特币客户端 | 掌握比特币