Bitcoin-Core-Development

腳本路徑的 Taproot 樹中的單個腳本在哪里花費?

  • November 3, 2021

如果我的腳本路徑只有一個腳本,腳本的雜湊是放在 Merkle 樹的頂部(而不是有效的 Merkle 根)還是放在 Merkle 樹的第 1 級並被散列起來使用另一個任意散列到 Merkle 根?

你可以做任何一個。使用單個腳本 ( hash_TapLeaf) 的雜湊值而不是 Merkle 根可以降低成本,因為您不需要透露其他雜湊值來證明腳本存在於 Merkle 樹中。但是,如果您想掩蓋 Merkle 樹中只有一個單一的支出腳本路徑這一事實(並且願意為支出支付更高的交易費用),您可以將其包含在級別 1 的分支中(甚至是Merkle 樹的更高級別)。要使用hash_TapBranch,您至少需要兩個分支,因此您需要在您不使用的任何分支上放置任意散列。

感謝 Russell O’Connor 在 IRC 上回答這個問題。

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