作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在构建一个可以为用户创建钱包的应用程序。一种选择是 web3.personal API在 web3.py 中,它有一个 newAccount('passphrase')
方法。该方法只返回创建账户的地址。
我正在寻找的是类似于 eth.accounts API 的函数在 web3.js 中,它有一个 create([entropy])
方法。它返回一个包含“地址”、“私钥”和其他详细信息的帐户对象。
最佳答案
编辑:我删除了已弃用的 pyethereum
解决方案,替换为更好的 eth-account
解决方案。
在 shell 中:pip install eth_account
eth-account
库将为您提供帮助 create a private key附上地址:
>>> from eth_account import Account
>>> acct = Account.create('KEYSMASH FJAFJKLDSKF7JKFDJ 1530')
>>> acct.privateKey
b"\xb2\}\xb3\x1f\xee\xd9\x12''\xbf\t9\xdcv\x9a\x96VK-\xe4\xc4rm\x03[6\xec\xf1\xe5\xb3d"
>>> acct.address
'0x5ce9454909639D2D17A3F753ce7d93fa0b9aB12E'
在上面添加一些您自己的随机性有助于解决 os.urandom
的潜在限制,这取决于您的 Python 版本和操作系统。显然使用与上面的 'KEYSMASH...'
不同的随机字符串。
有关使用私钥的更多信息,请参阅 this doc with common examples, like signing a transaction .
作为旁注,您可以在 ethereum.stackexchange.com 找到更多支持。
关于python - 如何在 Python 中创建以太坊钱包?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46004291/
我是一名优秀的程序员,十分优秀!