Multi-Signature

Regtest createmultisig 錯誤:無效的公鑰?

  • March 3, 2020

如下圖所示,我在 RegTest 中生成了 3 個新地址(我相信是 Legacy)。然後我嘗試從這 3 個地址中創建一個多重簽名地址。我做錯了什麼,或者這在 Regtest 中不可用?

’’’ $bitcoin-cli getnewaddress 2NFjbToRhpR2Lrx3VyP8rZ86XhZhofqWHBk

$ bitcoin-cli getnewaddress 2NAqXJMEFzEbhNyy9xRiHHcwWNCyFddFfXH

$ bitcoin-cli getnewaddress 2NEyDQfb85jRExQUnj4wC7fkFh5T1rt5zFk

$ bitcoin-cli createmultisig 2 “["2NFjbToRhpR2Lrx3VyP8rZ86XhZhofqWHBk", "2NAqXJMEFzEbhNyy9xRiHHcwWNCyFddFfXH","2NEyDQfb85jRExQUnj4wC7fkFh5T1rt5zFk"]”

錯誤程式碼:-5

錯誤消息:無效的公鑰:2NFjbToRhpR2Lrx3VyP8rZ86XhZhofqWHBk .’''

地址不是公鑰。您不能提供createmultisig地址,因為它無法知道您的地址所指的公鑰(如果有)。要獲取公鑰,您需要先執行getaddressinfo <address>. 這會給你一個你可以給的pubkey createmultisig

RPC將createmultisig公鑰而不是地址作為輸入。當您自己創建這些地址時,它們的公鑰就在您的錢包中。createmultisig然而,它是一個實用 RPC(獨立於錢包執行),因此它無法訪問該資訊。

您可以在這些地址上呼叫getaddressinfo錢包 RPC 以獲取它們的公鑰。

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