Bitcoin-Core

在比特幣核心中,壓縮塊是否預先填充了幣庫以外的內容?

  • May 31, 2021

在“如何將預期失去的交易選擇為立即轉發?” <https://bitcoincore.org/en/2016/06/07/compact-blocks-faq/>的部分指出“為了減少在初始實施中需要審查的事情的數量,只有 coinbase 交易將先發製人。”

我發現<https://github.com/bitcoin/bitcoin/blob/master/src/blockencodings.cpp#L23>仍然列出了預填充而不是作為 TODO 的 coinbase。我想知道這是否真的是正確的,或者它是否是一個錯誤的 TODO。如果沒有,是否有人在研究該功能,或者是否有原因從未實施過?

添加更高級的對預填充有用的交易的預測可能是在實現 Compact Blocks 時作為 TODO 的目的,但據我所知,從那以後就沒有人從事過這項工作。

值得指出的是,Compact Blocks 在實踐中(以及在非對抗性情況下)執行得非常好。在我自己的長期執行的節點上,截至目前,在最後 1000 個區塊(約 1 週)中,有 944 個被重建而無需任何額外的交易。在不是這種情況的 56 家中,只有 5 家有超過 3 筆交易失去。

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