Access funds on legacy address related to segwit address from which I have private key
The situation
Hello. Our company running BTC pool. We've been mining BTC for a while and used segwit address 32Z3eXSPgxcHj2fnQy8d6dg66eVtZfxrBM as pool adress.
But when we finally found a first block (actually - two blocks) for some reason block reward got sent to different address:1s2iywx94HudryMHsU2g1K9x8DB1cahGc
Here are links for both generation transactions with rewards: the first and the second
The problem
We cannot get access to funds on 1s2iywx94HudryMHsU2g1K9x8DB1cahGc - we simple can't see that balance on the wallet.
The question
How can we access those funds on 1s2iywx94HudryMHsU2g1K9x8DB1cahGc?
More info
Using Bitcoin Core client command validateaddress we can inspect both addresses:
Output for 32Z3eXSPgxcHj2fnQy8d6dg66eVtZfxrBM is
{ "isvalid": true, "address": "32Z3eXSPgxcHj2fnQy8d6dg66eVtZfxrBM", "scriptPubKey": "a91409763cb05dcea0f98f53b0f08651f92c5d2d2f3887", "ismine": true, "iswatchonly": false, "isscript": true, "iswitness": false, "script": "witness_v0_keyhash", "hex": "00142ee67d879ccf17daec87b4ed4a6cecdd9b3f64a0", "pubkey": "02835613e6e22843ce7dafc5d22a2763a8428b81f3d44dced0fd860f08be7a29df", "embedded": { "isscript": false, "iswitness": true, "witness_version": 0, "witness_program": "2ee67d879ccf17daec87b4ed4a6cecdd9b3f64a0", "pubkey": "02835613e6e22843ce7dafc5d22a2763a8428b81f3d44dced0fd860f08be7a29df", "address": "bc1q9mn8mpuueuta4my8knk55m8vmkdn7e9qmezkgv", "scriptPubKey": "00142ee67d879ccf17daec87b4ed4a6cecdd9b3f64a0" }, "addresses": [ "bc1q9mn8mpuueuta4my8knk55m8vmkdn7e9qmezkgv" ], "account": "", "timestamp": 1533473707, "hdkeypath": "m/0'/0'/0'", "hdmasterkeyid": "35e9670da1b28efe5621eb9cee2cf3e88b929968" }
Output for 1s2iywx94HudryMHsU2g1K9x8DB1cahGc is
{ "isvalid": true, "address": "1s2iywx94HudryMHsU2g1K9x8DB1cahGc", "scriptPubKey": "76a91409763cb05dcea0f98f53b0f08651f92c5d2d2f3888ac", "ismine": false, "iswatchonly": false, "isscript": false, "iswitness": false }
I can see three interesting points here:
- scriptPubKey for both addresses contains 09763cb05dcea0f98f53b0f08651f92c5d2d2f38 part, which is, afaik, actuall public key. First byte differs, which makes sense, since it's prefix, 00 for legacy and 05 for segwit respectively.
regarding output for 1s2iywx94HudryMHsU2g1K9x8DB1cahGc :
-
pubkey property is missing, which is weird, because usually its included for legacy addresses
-
isMine property equals false, wich means that wallet does not recognize this address relation to wallet PK.
So, can anyone please provide some insight and tell us if (and how?) we can access those funds, or we've lost them for good?
P.S.
When I use base58 decode on both 32Z3eXSPgxcHj2fnQy8d6dg66eVtZfxrBM and 1s2iywx94HudryMHsU2g1K9x8DB1cahGc I get
0509763CB05DCEA0F98F53B0F08651F92C5D2D2F385CCEC0F4 and
0009763CB05DCEA0F98F53B0F08651F92C5D2D2F3861372301 respectively.
Again, you can clearly see same bytes, so addresses are definitely related.
https://ift.tt/2Nwa6Gx
Comments
Post a Comment