Bitcoin-Core
如何使用 API 使用 Bitcoin-QT 發送比特幣?
我正在創建一個基於比特幣的線上市場。我一直在閱讀/研究比特幣 API 命令,其中一些命令需要“解鎖錢包”。這是否意味著沒有密碼的錢包?我認為始終對錢包進行加密至關重要。儘管如此,如果我對所有內容都理解正確,我需要解密錢包(至少需要一段時間)才能將比特幣發送到另一個錢包。那麼我應該如何進行呢?如果網站上的某人想將他/她的硬幣帶到另一個錢包,我是否需要這樣做,以便 API 從錢包中刪除 PIN 或加密,發送比特幣並再次加密?這樣做安全嗎?
哦,我正在使用 Bitcoin-QT 來處理硬幣。
使用 API 發送比特幣:
如果使用此方法,建議對 AJAX 有所了解
**警告詞:**使用此方法可能會導致大量輸入被設置為礦工費。我建議您繼續謹慎,並從使用少量輸入開始。
話雖如此…
使用命令
listunspent
、createrawtransaction
和。signrawtransaction``submitrawtransaction
要訪問 Bitcoin-qt 控制台:
launch your bitcoin client as usual and wait for it to load the blockchain and start up click on 'help' in the menu bar (top right) click on 'debug window' select the 'console' tab
- 用於
listunspent
在您的錢包中獲取一系列可花費的輸入- **這是您設置交易費用的地方:**用於
createrawtransaction
以表單生成交易createrawtransaction [{\"txid\":\"[txid of the input transaction]\",\"vout\":[vout that relates to the txid of the input transaction]},...] {\"[address to send your bitcoins to]\":[amount of bitcoins to send to this address],...}
所有未在交易中花費的輸入都用作礦工費用。- 用於
signrawtransaction [the output of createrawtransaction]
簽署您生成的交易**注意:**您的錢包必須解鎖才能執行此命令。如果不輸入walletpassphrase [your passphrase] 21600
- 用於
submitrawtransaction [the output of signrawtransaction]
將您簽名的交易發送到網路以包含在一個塊中您可以通過訪問 http://blockchain.info/tx/[txid output from submitrawtrasaction] 查看您的交易
你是絕對正確的。
查看 API 呼叫列表的末尾。
有walletpassphrase
命令。用它來解密一段時間,匯款,然後做walletlock
。關於安全性,它不是最好的選擇,但仍然比未加密的錢包好。
考慮使用 PHP 或其他腳本語言解密錢包:通常情況下,如果攻擊者可以訪問您未加密的錢包,他也可以在 PHP 文件中找到密碼並解密加密錢包。
編譯語言更安全一些,但密碼仍然存在。擁有十六進制編輯器的人最終可以找到密碼。