從比特幣核心中的 xpub 密鑰創建多重簽名錢包
我可以使用 2 個 xpub 密鑰創建多重簽名錢包電子。
我怎樣才能創建比特幣核心來做到這一點?
標準使用;從 2 個地址添加一個多重簽名地址
bitcoin-cli addmultisigaddress 2 “["16sSauSf5pF2UkUwvKGq4qjNRzBZYqgEL5","171sgjn4YtPu27adkKGrdDwzRTxnRkBfKV"]”
有沒有辦法喜歡;
比特幣-CLI addmultisigaddress 2“[\”tpubDAenfwNu5GyCJWv8oqRAckdKMSUoZjgVF5p8WvQwHQeXjDhAHmGrPa4a4y2Fn7HF2nfCLefJanHV3ny1UY25MRVogizB2zRUdAo7Tr9XAjm \“,\”tprv8erNzbjXdtYpKbKF4HeZpBCQj2W64MS2SAJCcWxgqLueSZ9KLTPZGoDTu8NugecLLqeS2RYan2f6qcexUTjp3m2HGxmpAiP48BaUz7XHxzQ \“]”
在即將發布的比特幣核心 0.18 版本中,這幾乎是可能的。
首先,您需要了解這種成對的多重簽名地址的序列(具有從 2 個 xpub 同步生成的公鑰)可以用新的描述符語言來描述。
語法是
sh(multi(2,XPUB/*,XPUB/*))
.sh
表示 P2SH 嵌入,multi
指的是 multisig,表示2
需要 2 個簽名,兩個 XPUB 參數是從中提取公鑰的內容。由於描述符旨在對人類通信安全,因此在某些情況下它們需要校驗和。可以使用
getdescriptorinfo
RPC 命令計算此校驗和,該命令將附加一個#CHECKSUM
後綴。一旦你有了描述符,你就可以用它做很多事情。一種是使用 確定對應的地址
deriveaddresses
。bitcoin-cli deriveaddresses "DESC" [0,1000]
將為您的描述符提供前 1001 個地址(使用索引為 0 到 1000 的鍵)。
您還可以使用靈活的 RPC 一次性將它們導入錢包,該
importmulti
RPC 在 0.18 中已擴展為支持描述符。bitcoin-cli importmulti [{"desc" : "DESC", "range" : [0, 1000], "watchonly" : true, "timestamp" : "now"}]
將導入前 1000 個地址,以及辨識向它們付款所需的所有資訊,並簽署支出它們(當然不包括私鑰)。
watchonly
表示您知道私鑰失去,但無論如何都希望按觀看的方式導入。- 表示這些
timestamp
密鑰可能第一次被使用。"now"
意味著您知道密鑰尚未使用(或者您不關心它們的歷史);或者,您可以將時間戳作為自 UNIX 紀元以來的秒數來指定出生時間。請注意,這不會在前 1000 個地址被消耗時自動監視它們——您需要一個新的導入命令(目前)。