Доступ к закрытому ключу после personal.newAccount в web3.py

1

Я создал учетную запись Ethereum, используя web3.py в python 3.6:

web3.personal.newAccount('password')

Как получить доступ к закрытому ключу для этой учетной записи?

Теги:
python-3.x
ethereum
web3

1 ответ

0

Когда вы создаете учетную запись на своем узле (что w3.personal.newAccount()), узел содержит закрытый ключ; прямой доступ к нему не предназначен.

Если у вас должен быть локальный доступ к закрытому ключу, вы можете:

Если узел является geth, извлечение ключа выглядит так:

with open('~/.ethereum/keystore/UTC--...4909639D2D17A3F753ce7d93fa0b9aB12E') as keyfile:
    encrypted_key = keyfile.read()
    private_key = w3.eth.account.decrypt(encrypted_key, 'correcthorsebatterystaple')

Совет безопасности. Не храните ключ или пароль в любом месте, особенно в общий исходный файл

  • 0
    Когда я использую этот web3.eth.account.create(extra_entropy) , он не создает новую учетную запись в моем узле
  • 1
    Это правильно. Но вы можете создать w3.eth.account.encrypt() стиле geth, который может импортировать большинство узлов, с помощью w3.eth.account.encrypt() . См. Eth-account.readthedocs.io/en/latest/… для параметров и примера.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню