Переход от BIP39 (мнемоника) к BIP32 (открытый/закрытый ключи)Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Переход от BIP39 (мнемоника) к BIP32 (открытый/закрытый ключи)

Сообщение Anonymous »

Я хочу разработать код, который создает частные и открытые ключи Биткойна на основе мнемоники. Мое нынешнее понимание этого процесса следующее:

Код: Выделить всё

entropy > nmemonic > seed > public/private keys > public address
В своем коде я использую библиотеку Trezor nmemonic и Moneywagon.

Код: Выделить всё

import string
from random import SystemRandom, randrange
from binascii import hexlify, unhexlify
from moneywagon import generate_keypair
from mnemonic import mnemonic

def gen_rand():
foo = SystemRandom()
length = 32
chars = string.hexdigits
return ''.join(foo.choice(chars) for _ in range(length))

mnemo = mnemonic.Mnemonic('english')

entropy = gen_rand()
# entropy = '00000000000000000000000000000000'

words = mnemo.to_mnemonic(unhexlify(entropy))
seed = hexlify(mnemo.to_seed(words, passphrase='apassphrase'))
address = generate_keypair('btc', seed)

print(words)
print(seed)
print(address['public']['address'])
print(address['private']['hex'])
Если вы закомментируете приведенную выше строку энтропии и запустите код, вы получите:

Код: Выделить всё

abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about
b'05de15fb96dc0ab9f03c9d411bf84c586c72e7c30bddd413a304896f9f994ea65e7fcafd2c6b796141e310850e5f30b6abc2e6aec79a8ff81f4ba38fde81c403'
15GyM1xxxxxxxxxxxxxxxxxxxxxxTXrrvG
8ede10xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxcae501
Моя проблема в том, что ничего из этого не отражено в iancoleman.io/bip39 или bip32jp.github.io для генерации мнемонических кодов и открытых/закрытых ключей.
Где я ошибаюсь?

Подробнее здесь: https://stackoverflow.com/questions/541 ... ivate-keys
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»