Bitcoin-Cli

從 getrawtransaction 計算費用的最有效方法?

  • March 14, 2018

當我使用 搜尋交易時,我會收取費用getrawtransaction,但 JSON-RPC 不會返回此費用。

<https://chainquery.com/bitcoin-api/getrawtransaction>

所以為了實現這一點,我的想法是:

  1. 為 each 呼叫 getrawtransaction vin,並保存每個的輸出值。
  2. 將 s 的所有輸出值vin相加,然後減去這些vout值的總和,得到餘數。

我知道這會起作用,但我不喜歡getrawtransaction每次都呼叫vin(因為對於某些事務,此 JSON-RPC 呼叫將進行 200 多次)。

有沒有更有效的方法?或者這是目前使用 bitcoin-cli 計算交易費用的唯一方法?

**旁白:**為什麼不getrawtransaction返回費用欄位,例如getrawmempoolgetblocktemplate做的交易?

計算費用。取所有 vouts 的總和。對於每個 vin,都會有 prev txid 和 outputindex,使用 getrawtransaction 或其他方式獲取此 txid,在 index 處查看此新 tx 的 vouts,在這裡您將獲得數量,對每個 vin 重複此操作。取這個 vins 的總和。取 vin 和 vout 之間的差值,您將獲得費用。

為了避免每次呼叫,您需要將 txid 儲存在某處或使用者使用諸如洞察力之類的東西。

根據經驗,vin 和 vout 元素都有一個“值”欄位 - 您只需將 vin 值相加並減去 vout 值的總和即可。

引用自:https://bitcoin.stackexchange.com/questions/46184