天天看點

比特币錢包rpc api

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語言工程師快速入門區塊鍊開發的最佳選擇。

彙智網原創,轉載請标明出處