Tuesday, November 5, 2024

bitcoin core – Will bitcoind import non-public keys for multi-sig descriptor with watch-only flag set to true?

I’m importing a “heat” multi-sig quorum into bitcoind utilizing importmulti like so:

{"jsonrpc":"1.0","id":"curltest","methodology":"importmulti","params":[[{ "desc": "sh(multi(2,[eb2d2f9e/44'/1'/0']tprv8g5heqz5AnCKdYQHsHyYvyDvWFdp5RN8Z5uhvb1FrzgPmeuYseQNsknt1KFf1b1Y9dtNaNMbxkaNdkP7FLbhP9a4UosbV5rWLAMFPhUcMVT/0/*,[e19b3701/44'/1'/0']tpubDCkUBfVNYjzdX37ARqSFWNAA5WvQRGy3Y5PA13ve1dSVtBLr7tEf6c7C2sYtnRazFfsfAdCfuv9JG62BnUVvofvvvs9iyDreQhTRJJ6Mp8u/0/*,[65b2e5d3/44'/1'/0']tpubDCFM6STEuVkkh6qCCooJw4TXHRzyq6R6tBeigSQSgf4xY6ZwAeoSQH2ZTTfcsZTrJ7wJF2bixpn38XcKj3KihxH5LzMraCLwsbt3bnkAHrU/0/*))#2pztwc0s", "timestamp": "now", "vary": [2500,5000], "watchonly": false, "label": "StandUp", "keypool": false, "inner": false }], {"rescan": false}]}

And often getting the next response (generally it really works with out returning an error and generally not):

response = {
    error = "<null>";
    id = curltest;
    consequence =     (
                {
            error =             {
                code = "-4";
                message = "Error including key to pockets";
            };
            success = 0;
            warnings =             (
                "Some non-public keys are lacking, outputs will probably be thought of watchonly. If that is intentional, specify the watchonly flag."
            );
        }
    );
}

I don’t wish to specify the watch-only flag to true as I’m importing non-public keys into the node and wish the node to have the ability to signal. It is extremely odd that this appears to occur randomly. It seems like a bug.

If I set watch-only to true will it nonetheless import the descriptors non-public keys?

Simply to show my level right here is the very same command tried a second time which returns success as true:

{"jsonrpc":"1.0","id":"curltest","methodology":"importmulti","params":[[{ "desc": "sh(multi(2,[eb2d2f9e/44'/1'/0']tprv8g5heqz5AnCKdYQHsHyYvyDvWFdp5RN8Z5uhvb1FrzgPmeuYseQNsknt1KFf1b1Y9dtNaNMbxkaNdkP7FLbhP9a4UosbV5rWLAMFPhUcMVT/0/*,[e19b3701/44'/1'/0']tpubDCkUBfVNYjzdX37ARqSFWNAA5WvQRGy3Y5PA13ve1dSVtBLr7tEf6c7C2sYtnRazFfsfAdCfuv9JG62BnUVvofvvvs9iyDreQhTRJJ6Mp8u/0/*,[65b2e5d3/44'/1'/0']tpubDCFM6STEuVkkh6qCCooJw4TXHRzyq6R6tBeigSQSgf4xY6ZwAeoSQH2ZTTfcsZTrJ7wJF2bixpn38XcKj3KihxH5LzMraCLwsbt3bnkAHrU/0/*))#2pztwc0s", "timestamp": "now", "vary": [2500,5000], "watchonly": false, "label": "StandUp", "keypool": false, "inner": false }], {"rescan": false}]}
response = {
    error = "<null>";
    id = curltest;
    consequence =     (
                {
            success = 1;
            warnings =             (
                "Some non-public keys are lacking, outputs will probably be thought of watchonly. If that is intentional, specify the watchonly flag."
            );
        }
    );
}

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles