Address-Generation

輸出描述符可以用於編碼任何 Miniscript 表達式嗎?

  • August 3, 2021

輸出描述符提供了一個標準,使地址主體在各種錢包實現之間更易於交換。似乎輸出描述符可用於為一個特定鍵編碼任何 Miniscript 表達式。它們還可以用於生成一個序列輸出腳本,這些腳本都使用應用於派生鍵鏈的相同 Miniscript 表達式嗎?

是的。這樣的描述符被稱為範圍描述符。

在描述符中,鍵以鍵表達式的形式提供。密鑰表達式可以是單個密鑰本身,也可以是 BIP 32 擴展密鑰,後跟派生資訊。派生資訊可以以 a 結尾,*以指示應派生子密鑰。在這種情況下,描述符是一個範圍描述符,並且派生的每個子鍵都成為輸出腳本中的一個鍵。

如果您隨後將範圍描述符想像為 xpub 的更高形式,那麼您將在每個子索引處都有“派生描述符”。子索引 0 將是一個描述符,除了 xpub 之外,其他所有內容都與父級相同。這些被從索引 0 派生的鍵替換。索引 1 具有從索引 1 派生的鍵,依此類推。

使用範圍描述符需要注意的一件事是索引同步移動以避免任何組合爆炸。因此,如果描述符中有多個 xpub,則所有鍵都在同一個子索引處派生。索引 0 具有使用索引 0 派生的所有鍵,索引 1 具有使用索引 1 派生的所有鍵,等等。

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