经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 其他 » 区块链 » 查看文章
以太坊 助记词提取 账户 公钥 私钥 最新实现可用。
来源:cnblogs  作者:酒觉  时间:2020/11/9 15:20:31  对本文有异议

step 1 装依赖的包(npm/yarn 自己选一个):

  1. yarn add bip39 ethereumjs-wallet ethereumjs-util
  2. npm install bip39 ethereumjs-wallet ethereumjs-util

step 2 演示代码:

  1. const bip39 = require('bip39')
  2. const {hdkey} = require('ethereumjs-wallet')
  3. const util = require('ethereumjs-util')
  4. //1 生成助记词 ;1.1 和 1.2 自己按需。
  5.  
  6. // 1.1 生成助记词 ;这里用生成的.
  7. // let mnemonic = bip39.generateMnemonic()
  8.  
  9. // 1.2 生成助记词 ;这里用写死的.
  10. let mnemonic = "hold scale hybrid tank dilemma bullet ship language attitude rug tennis host"
  11. console.log(mnemonic)
  12. //2.将助记词转成seed
  13. getSeed = async ()=>{
  14. let seed = await bip39.mnemonicToSeed(mnemonic)
  15. console.log("seed:" + util.bufferToHex(seed))
  16. return seed
  17. }
  18. //3.提取私钥,公钥,账户
  19. obtainAccount = async ()=>{
  20. let seed = await getSeed()
  21. //3.通过hdkey将seed生成HD Wallet
  22. let hdWallet = await hdkey.fromMasterSeed(seed)
  23. for (let i = 0; i < 10; i++) {
  24. //4.生成钱包中在m/44'/60'/0'/0/i路径的keypair
  25. let key = await hdWallet.derivePath("m/44'/60'/0'/0/" + i)
  26. //5.从keypair中获取私钥
  27. console.log("私钥:" + util.bufferToHex(key._hdkey._privateKey))
  28. //6.从keypair中获取公钥
  29. console.log("公钥:" + util.bufferToHex(key._hdkey._publicKey))
  30. //7.使用keypair中的公钥生成地址
  31. let address = await util.pubToAddress(key._hdkey._publicKey, true)
  32. //编码地址
  33. console.log('account',i+1,'0x'+address.toString('hex'))
  34. //分割线 console.log("__________________________________________________________")
  35. }
  36. }
  37. obtainAccount()

step 3 运行结果截图:

 

原文链接:http://www.cnblogs.com/jiujue/p/13307664.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号