交易退款地址
在比特幣核心 0.9.0 的新增內容註釋中,提到了退款地址。我試圖在論壇和 wiki 中查找它,但我一無所獲。
refund address
從 匯款時如何設置QT client
?- 如何從中檢索
refund address
交易bitcoin-cli
?
這是我基於閱讀BIP 70和比特幣核心原始碼以及一些測試的理解。
BIP 70 支付請求包含目標地址、金額和 HTTPS 支付 URL 等內容。當您使用 Bitcoin Core 客戶端打開支付請求(作為文件或通過
bitcoin
帶有支付請求的嵌入式連結的 URI)時,您會看到發送對話框,其中包含根據請求預先填寫的欄位。當您點擊“發送”時,交易被簽署,但不是立即在 p2p 網路上廣播,而是向支付 URL 發布一條消息,其中包含已簽署的交易以及退款地址。然後,請求者有責任在檢查與請求匹配後廣播交易。因此,特別是退款地址會通過 HTTPS 直接發送給收件人,收件人負責儲存它以備日後需要時使用。它不是交易的一部分,不在比特幣 p2p 網路上發送,也永遠不會出現在區塊鏈中(除非它後來實際用於發送退款)。
Bitcoin Core 會自動生成退款地址;GUI 不提供讓您指定它的選項。實際上,詳細資訊如下:它檢查名為的帳戶
"Refund from [requester]"
。如果該賬戶存在且包含地址,則使用該地址作為退款地址;否則它會在其中創建帳戶和一個新地址(來自密鑰池)。因此,您可以通過控制台命令找到退款地址getaddressesbyaccount
,但它似乎不會被 GUI 以其他方式公開。你可以試試這個:Testnet 有一個線上支付請求生成器(及其來源)。如果您生成一個請求,使用 Bitcoin Core 打開它,然後發送付款,您會發現
listaccounts
顯示一個名為 的新帳戶"Refund from www.bitcoincore.org"
,並getaddressesbyaccount "Refund from www.bitcoincore.org"
顯示生成和發送的退款地址。