Python 在web3.py中的personal.newAccount之后访问私钥

Python 在web3.py中的personal.newAccount之后访问私钥,python,python-3.x,ethereum,web3,Python,Python 3.x,Ethereum,Web3,我在python 3.6中使用web3.py创建了一个以太坊帐户: web3.personal.newAccount('password') 如何访问该帐户的私钥?当您在节点上创建w3.personal.newAccount所创建的帐户时,节点;不打算直接访问它 如果必须在本地访问私钥,则可以: 生成一个具有 . 如果节点为geth,则提取密钥如下所示: with open('~/.ethereum/keystore/UTC--...4909639D2D17A3F753ce7d93fa0b9a

我在python 3.6中使用web3.py创建了一个以太坊帐户:

web3.personal.newAccount('password')

如何访问该帐户的私钥?

当您在节点上创建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')

安全提示-不要将密钥或密码保存在任何地方,尤其是保存到共享源文件中

当我使用此web3.eth.account.createextra_时,它不会在我的节点中创建正确的新帐户。但是您可以使用w3.eth.account.encrypt生成大多数节点都可以导入的geth样式的密钥文件。有关参数和示例,请参见。