比特币钱包rpc

bitcoind是最常用的比特币钱包,比特币钱包通过rpc提供了一组api,可供外部程序来操作比特币钱包,例如创建地址、查询余额或者向其他地址转账。例如,比特币rpc命令行工具bitcoin-cli就是利用比特币钱包的api来实现其功能;同样我们也可以在自己的程序中通过调用比特币钱包rpc api来实现bitcoin-cli的功能。文本分组提供了比特币钱包rpc的api清单与文档链接。

1、区块链相关rpc api

  • GetBestBlockHash: 返回最优链上最近区块的哈希
  • GetBlock: 返回具有指定哈希的区块
  • GetBlockChainInfo: 返回区块链当前状态信息
  • GetBlockCount: 返回本地最优链上的区块数量
  • GetBlockHash: 返回本地最有区块链上指定高度区块的哈希
  • GetBlockHeader: 返回指定区块头
  • GetChainTips: 返回每个本地区块链的最高位区块(tip)信息
  • GetDifficulty: 返回POW难度
  • GetMemPoolAncestors: 返回交易池内指定交易的所有祖先
  • GetMemPoolDescendants: 返回交易池内指定交易的所有后代
  • GetMemPoolEntry: 返回交易池内指定交易的池数据
  • GetMemPoolInfo: 返回交易池信息
  • GetRawMemPool: 返回交易池内的所有交易
  • GetTxOut: 返回指定交易输出的详细信息
  • GetTxOutProof: 返回一个或多个交易的证明数据
  • GetTxOutSetInfo: 返回UTXO集合的统计信息
  • PreciousBlock:
  • PruneBlockChain: 对区块链执行剪枝操作
  • VerifyChain: 验证本地区块链的每个记录
  • VerifyTxOutProof: 验证交易输出证明

2、节点控制rpc api

  • GetInfo: 返回节点和网络信息
  • Help: 返回所有可用的RPC命令,或返回指定命令的帮助信息
  • Stop: 安全关闭bitcoin core的节点服务

3、挖矿相关rpc api

  • Generate: 生成区块
  • GenerateToAddress: 生成区块并将新生成的比特币转入指定地址
  • GetBlockTemplate: 返回节点模板
  • GetMiningInfo: 返回挖矿相关信息
  • GetNetworkHashPS: 返回估算的全网哈希速率
  • PrioritiseTransactionhttp://cw.hubwiz.com/card/c/bitcoin-json-rpc-api/1/3/6/: 交易优先权
  • SubmitBlock:提交区块

4、网络相关rpc api

  • AddNode: 添加节点
  • ClearBanned: 清理禁止的节点
  • DisconnectNode: 断开与指定节点旳连接
  • GetAddedNodeInfo: 返回新增节点的信息
  • GetConnectionCount: 返回与其他节点旳连接总数量
  • GetNetTotals: 返回网络流量统计信息
  • GetNetworkInfo: 返回节点的网络连接信息
  • GetPeerInfo: 返回所连接其他节点旳信息
  • ListBanned: 返回所有被禁止的IP或子网
  • Ping: 向所有连接的节点发送p2p的pin报文
  • SetBan: 管理禁止访问清单
  • SetNetworkActive: 禁止/启用P2P网络

5、裸交易相关rpc api

  • CreateRawTransaction: 创建未签名的序列化交易
  • FundRawTransaction: 向裸交易添加新的UTXO
  • DecodeRawTransaction: 解码指定的裸交易
  • DecodeScript: 解码指定的P2SH赎回脚本
  • GetRawTransaction: 返回指定的裸交易
  • SendRawTransaction: 验证并发送裸交易到P2P网络
  • SignRawTransaction: 签名裸交易

6、工具类rpc api

  • CreateMultiSig: 创建P2SH多重签名地址
  • EstimateFee: 估算交易费率
  • EstimatePriority: 估算交易的优先级
  • GetMemoryInfo: 返回内存使用情况
  • ValidateAddress: 验证指定的地址
  • VerifyMessage: 验证签名的消息

7、钱包相关rpc api

  • AbandonTransaction: 放弃指定交易
  • AddWitnessAddress: 添加见证地址
  • AddMultiSigAddress: 添加P2SH多重签名地址
  • BackupWallet: 备份钱包
  • BumpFee: 替换未确认交易并提升手续费
  • DumpPrivKey: 导出指定私钥
  • DumpWallet: 导出钱包
  • EncryptWallet: 加密钱包
  • GetAccountAddress: 返回指定账户的当前地址
  • GetAccount: 返回指定地址关联的账户
  • GetAddressesByAccount: 按账户分组列出地址
  • GetBalance: 返回钱包账户余额
  • GetNewAddress: 返回一个新的地址用于接收支付
  • GetRawChangeAddress: 返回新的找零地址
  • GetReceivedByAccount: 返回指定账户的收入情况
  • GetReceivedByAddress: 返回指定地址的收入情况
  • GetTransaction: 返回指定的钱包交易的详情
  • GetUnconfirmedBalance: 返回钱包全部未确认收入总额
  • GetWalletInfo: 返回钱包信息
  • ImportAddress: 导入地址或公钥脚本
  • ImportMulti: 导入多个地址或公钥脚本
  • ImportPrunedFunds:
  • ImportPrivKey: 导入私钥
  • ImportWallet: 导入钱包
  • KeyPoolRefill: 密钥池填充
  • ListAccounts: 返回钱包内账户及对应余额
  • ListAddressGroupings: 按地址列出余额
  • ListLockUnspent: 列出锁定的UTXO
  • ListReceivedByAccount: 按账户列出收到的比特币
  • ListReceivedByAddress: 列地址列出收到的比特币
  • ListSinceBlock: 列出指定区块之后发生的与钱包有关的交易
  • ListTransactions: 列出最近指定数量的与钱包有关的交易
  • ListUnspent: 返回钱包内的UTXO
  • LockUnspent: 暂时性锁定/解锁指定的UTXO
  • Move: 链下转账
  • RemovePrunedFunds:
  • SendFrom: 使用指定的本地账户向指定的比特币地址转账
  • SendMany: 创建并广播一个包含多个输出的交易
  • SendToAddress: 向指定地址发送比特币
  • SetAccount: 将指定地址与账户关联
  • SetTxFee: 设置千字节交易费率
  • SignMessage: 签名消息
  • SignMessageWithPrivKey: 使用指定私钥签名消息
  • WalletLock: 锁定钱包
  • WalletPassphrase: 输入钱包口令
  • WalletPassphraseChange: 修改钱包口令

分享一些比特币、以太坊、EOS、Fabric、Tendermint等区块链相关的交互式在线编程实战教程:

  • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。
  • php比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。
  • c#比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在C#代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是C#工程师不可多得的比特币开发学习课程。
  • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
  • python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。
  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和交易等内容。
  • 以太坊入门教程,主要介绍智能合约与dapp应用开发,适合入门。
  • 以太坊开发进阶教程,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
  • ERC721以太坊通证实战,课程以一个数字艺术品创作与分享DApp的实战开发为主线,深入讲解以太坊非同质化通证的概念、标准与开发方案。内容包含ERC-721标准的自主实现,讲解OpenZeppelin合约代码库二次开发,实战项目采用Truffle,IPFS,实现了通证以及去中心化的通证交易所。
  • C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和交易等。
  • EOS入门教程,本课程帮助你快速入门EOS区块链去中心化应用的开发,内容涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后综合运用各知识点完成一个便签DApp的开发。
  • 深入浅出玩转EOS钱包开发,本课程以手机EOS钱包的完整开发过程为主线,深入学习EOS区块链应用开发,课程内容即涵盖账户、计算资源、智能合约、动作与交易等EOS区块链的核心概念,同时也讲解如何使用eosjs和eosjs-ecc开发包访问EOS区块链,以及如何在React前端应用中集成对EOS区块链的支持。课程内容深入浅出,非常适合前端工程师深入学习EOS区块链应用开发。
  • Hyperledger Fabric 区块链开发详解,本课程面向初学者,内容即包含Hyperledger Fabric的身份证书与MSP服务、权限策略、信道配置与启动、链码通信接口等核心概念,也包含Fabric网络设计、nodejs链码与应用开发的操作实践,是Nodejs工程师学习Fabric区块链开发的最佳选择。
  • Hyperledger Fabric java 区块链开发详解,课程面向初学者,内容即包含Hyperledger Fabric的身份证书与MSP服务、权限策略、信道配置与启动、链码通信接口等核心概念,也包含Fabric网络设计、java链码与应用开发的操作实践,是java工程师学习Fabric区块链开发的最佳选择。
  • tendermint区块链开发详解,本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型中的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

汇智网原创,转载请标明出处

你可能感兴趣的:(比特币钱包rpc)