lbryio / torba

Torba makes it easy to create fast and correct bitcoin based crypto wallets.
MIT License
2.18k stars 20 forks source link

xpub and xprv don't match lbrycrd #45

Closed tzarebczan closed 5 years ago

tzarebczan commented 5 years ago

The extended private and public key headers do not match lbrycrd: https://github.com/lbryio/lbry/blob/master/lbrynet/extras/wallet/ledger.py#L36

What are the ramifications of this for migrated wallets and newly created ones?

Also, https://github.com/lbryio/lbryum/issues/218 was fixed in Torba - do we need to account for anything?

BrannonKing commented 5 years ago

From lbrycrd source:

base58Prefixes[PUBKEY_ADDRESS] = std::vector<unsigned char>(1,0x55);
        base58Prefixes[SCRIPT_ADDRESS] = std::vector<unsigned char>(1,0x7a);
        base58Prefixes[SECRET_KEY] =     std::vector<unsigned char>(1,0x1c);
        base58Prefixes[EXT_PUBLIC_KEY] = boost::assign::list_of(0x01)(0x9C)(0x35)(0x4f).convert_to_container<std::vector<unsigned char> >();
        base58Prefixes[EXT_SECRET_KEY] = boost::assign::list_of(0x01)(0x9C)(0x31)(0x18).convert_to_container<std::vector<unsigned char> >();

I agree that the EXT items differ. However, I don't actually see anywhere in the codebase where they are used (other than tests). That doesn't mean that they aren't used; I just can't follow the path with standard tools.

tzarebczan commented 5 years ago

closing for https://github.com/lbryio/lbrycrd/issues/245