An “output descriptor” should not have many different checksums #30632

issue GregTonoski openend this issue on August 12, 2024
  1. GregTonoski commented at 7:50 am on August 12, 2024: none

    Is there an existing issue for this?

    • I have searched the existing issues

    Current behaviour

    There are different BIP-380 checksums for the same addresses/ScriptPubKey/keys: “mpfvuvu6” and “ecrayewn”, e.g.:

    0$ bitcoin-cli deriveaddresses "wpkh([b8688df1]xprv9s21ZrQH143K2x4gnzRB1eZDq92Uuvy9CXbvgQGdvykXZ9mkkot6LBjzDpgaAfvzkuxJe9JKJXQ38VoPutxvACA5MsyoBs5UyQ4HZKGshGs/84'/0'/0'/0/0)#mpfvuvu6"
    1[
    2  "bc1qgkju4yvvtuz0s8vqn837q396jezu2h8ex7gk98"
    3]
    
    0$ bitcoin-cli deriveaddresses "wpkh([b8688df1]xprv9s21ZrQH143K2x4gnzRB1eZDq92Uuvy9CXbvgQGdvykXZ9mkkot6LBjzDpgaAfvzkuxJe9JKJXQ38VoPutxvACA5MsyoBs5UyQ4HZKGshGs/84h/0h/0h/0/0)#ecrayewn"
    1[
    2  "bc1qgkju4yvvtuz0s8vqn837q396jezu2h8ex7gk98"
    3]
    

    Expected behaviour

    The checksum should be the same irrespectively how a ScriptPubKey is represented (“output descriptor” formats, hex string, binary etc.). Different checksums are against their purpose, confuse users, alerting as if ScriptPubKey/data were entered incorrectly by a user.

    Steps to reproduce

    See the “current behaviour” section above.

    Relevant log output

    No response

    How did you obtain Bitcoin Core

    Pre-built binaries

    What version of Bitcoin Core are you using?

    27.1 and older ones

    Operating system and version

    Any

    Machine specifications

    No response

  2. furszy commented at 1:58 pm on August 12, 2024: member

    The goal of the checksum is to protect the human-readable string from data transmission errors, not to establish a global output identifier. You can specify the same output script in different ways, and this doesn’t mean they will share the same checksum. Look:

    1. Your descriptor "wpkh([b8688df1]xprv9s21ZrQH143K2x4gnzRB1eZDq92Uuvy9CXbvgQGdvykXZ9mkkot6LBjzDpgaAfvzkuxJe9JKJXQ38VoPutxvACA5MsyoBs5UyQ4HZKGshGs/84'/0'/0'/0/0)#mpfvuvu6"
    2. Descriptor without origin "wpkh(xprv9s21ZrQH143K2x4gnzRB1eZDq92Uuvy9CXbvgQGdvykXZ9mkkot6LBjzDpgaAfvzkuxJe9JKJXQ38VoPutxvACA5MsyoBs5UyQ4HZKGshGs/84'/0'/0'/0/0)#5v6498ry"
    3. Only the public key "wpkh(02e1e839f771a9af60554e043de9a2c5af6dabc5bd1d32f33197097dca548e8957)#3ygyu5py"
    4. Only the private key "wpkh(L5H8k3AWz1uWMJAucxquWRZFfkkG69q4AHEf9AWpwzW1PYhLzmBP)#d4rrzam7"
  3. Rob1Ham commented at 7:53 pm on August 26, 2024: none

    I’m seeing an issue related to this.

    When I get checksums of two descriptors (an internal and external one) individually, I get these checksum values:

    0getdescriptorinfo "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/0/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/0/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/0/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/0/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/0/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/0/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/0/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/2/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/2/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/2/*)),after(1757462400))))"
    

    The response is:

    0{
    1  "descriptor": "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/0/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/0/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/0/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/0/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/0/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/0/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/0/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/2/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/2/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/2/*)),after(1757462400))))#mwrgwlwl",
    2  "checksum": "mwrgwlwl",
    3  "isrange": true,
    4  "issolvable": true,
    5  "hasprivatekeys": false
    6}
    

    So the external descriptor checksum is: #mwrgwlwl

    Then doing the same for an internal descriptor:

    0getdescriptorinfo "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/1/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/1/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/1/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/1/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/1/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/1/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/1/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/3/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/3/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/3/*)),after(1757462400))))"
    

    Returns:

    0{
    1  "descriptor": "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/1/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/1/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/1/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/1/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/1/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/1/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/1/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/3/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/3/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/3/*)),after(1757462400))))#z8fulymw",
    2  "checksum": "z8fulymw",
    3  "isrange": true,
    4  "issolvable": true,
    5  "hasprivatekeys": false
    6}
    

    The change Descriptor is: #z8fulymw

    Now, when I take these descriptors, and use the import descriptor function, I get the following error:

    0importdescriptors '[{"active": true, "timestamp": 1724690133, "internal": false, "desc": "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/0/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/0/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/0/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/0/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/0/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/0/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/0/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/2/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/2/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/2/*)),after(1757462400))))#mwrgwlwl"}, {"active": true, "timestamp": 1724690133, "internal": true, "desc": "wsh(andor(multi(2,[a0d3c79c/48'/1'/83'/2']tpubDFGoZLGBUQDBPzYHppiNcmX8hg2BkJvaanhUUyQHQCvkbjmqvb5akMW5AQKdYxSHbkaYPZR4JMMSMF7qSW3iERxPoVKSjdttnmEvwhpDAC7/1/*,[ea2484f9/48'/1'/83'/2']tpubDEzGdYvznBEvmWDgo8aJznu74ZRcQct2d2k6VEVtcgKJvCjCVitPVTtxgAfM2Hd5QVscv2jN8AjN6Ch69NhXYiceZ7eR8Sth2Sq6UND18So/1/*,[93f245d7/48'/1'/83'/2']tpubDFhRvp2M93SFsVPyp4bMbbgRMMtAs8iW7pMAFyLoZ1tcQF7RGfHUs8xmmC7EgXcE1K5TAQwZdYC8qRGCrp4xFGgv52LmHXPi1Axq3Tzx8vB/1/*),or_i(and_v(v:pkh([61cdf766/48'/1'/83'/2']tpubDECwF5HxsawRWjXiFK5M5aEXXa5suC4bKC3d3FH1N29FxZBTsfwFP6T5MEprZT3ztQMWKVqntYVsayo5EMRDY6o583aVXHeb15wz8goBBd9/1/*),after(1753574400)),thresh(2,pk([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/1/*),s:pk([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/1/*),s:pk([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/1/*),snl:after(1740182400))),and_v(v:thresh(2,pkh([621f3bec/48'/1'/0'/2']tpubDEXD6B4sX85AyA3WJv1rB3NnADe8EvujnudmLTY8dmdgVKyUst3R65KQqAVyxY5q5USsMh9iqgGkDMtMzfV7zvRtUhV8timsH3H37P5C4Nt/3/*),a:pkh([8275bddc/48'/1'/0'/2']tpubDEfYUTvUb7XpvzxGBXxTjQd7gq6yxHaoHj14igUiQtvf8GKmNLjwwLGib5Pojn2uaYzMQzFbJm9iEcW8QWgD6EfijJYssK6gEgnBZ3DZkVu/3/*),a:pkh([d715111c/48'/1'/0'/2']tpubDEzThyvXPmkRAYSJryTPfVwHTEY2hjR8oH957Nk43wGtuvpTVLMKz3hYHe5rNyXXUCy3PSYHKfv3wRnupypT2YzkaCL9yPa4ELvTSKX1GuN/3/*)),after(1757462400))))#z8fulymw"}]'
    

    I get the error:

     0[
     1  {
     2    "success": false,
     3    "error": {
     4      "code": -5,
     5      "message": "Provided checksum 'mwrgwlwl' does not match computed checksum 'rvs0cvgy'"
     6    }
     7  },
     8  {
     9    "success": false,
    10    "error": {
    11      "code": -5,
    12      "message": "Provided checksum 'z8fulymw' does not match computed checksum 'utdwhcgm'"
    13    }
    14  }
    15]
    

    I’m computing these descriptors outside of core, and creating an export feature into core. What is causing a deviation of the descriptors to result in a different checksum, if all of the descriptor portions of the importdescriptor argument are identical?

  4. achow101 commented at 10:00 pm on August 26, 2024: member
    @Rob1Ham That is an unrelated issue likely caused by usage of single quotes for the hardened identifier (notice how your import string uses a single quote). I suggest using h, it resolves a ton of shell escape issues that can cause errors like that.
  5. Rob1Ham commented at 10:34 pm on August 26, 2024: none

    @Rob1Ham That is an unrelated issue likely caused by usage of single quotes for the hardened identifier (notice how your import string uses a single quote). I suggest using h, it resolves a ton of shell escape issues that can cause errors like that.

    Confirmed using hs worked!


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 00:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me