Проблемы с генерацией адресов с помощью bip32

Я пытаюсь сгенерировать адреса bip32, используя следующее (версия PHP).

https://github.com/prusnak/addrgen

Автор предоставляет тестовый MPK, который я могу заставить работать, который выглядит следующим образом:

675b7041a347223984750fe3ab229df0c9f960e7ec98226b7182a2cb1990e39901feecf5a670f1d788ab29f626e20de424f049d216fc6f4c6ec42506763fa28e

Однако МПК, который я экспортирую из электрума, не работает. Он намного короче и выглядит так:

xpub661MyMwAqRbcGntu46CZtzegh5V3vT624SJqPVUgqzboX6A39f1hb8vEMrG555gV5QzVXEpPXqwayMQKu1ZKKRLkX9AoFvqPwAm3qL24AnE

Точное сообщение, которое я получаю,

pack(): Type H: illegal hex digit x

Любая идея, что происходит? Почему МПК Электрума не похож на авторов?

Ответы (1)

addrgen автор здесь!

Addrgen был создан до того, как Electrum стал совместим с BIP-0032, и поэтому он использовал другие главные открытые ключи и метод получения.

Пожалуйста, проверьте следующую реализацию PHP, которая поддерживает BIP-0032:

Для python доступно несколько реализаций, например

Парень из Bitwasp, может быть, загляните на github.com/Bit-Wasp/bitcoin-php , переписал старую библиотеку — src/Key/HierarchicalKeyFactory.php, вероятно, то, что вам нужно.