通过代码生成以太坊助记词、根据钱包地址获取私钥 |
您所在的位置:网站首页 › 私钥助记词转换 › 通过代码生成以太坊助记词、根据钱包地址获取私钥 |
生成助记词、公私钥
新建一个目录 在目录下执行 npm init (需安装nodejs)nodejs中文官网 安装依赖 (没有yarn的需要安装,直接执行 npm install -g yarn) yarn add bip39 ethereum-hdwallet 在目录下新建js文件 将下面内容复制到js文件中 const bip39 = require('bip39') const HDWallet = require('ethereum-hdwallet'); //生成英文助记词 const mnemonic = bip39.generateMnemonic(); // const mnemonic = bip39.generateMnemonic(128, null, bip39.wordlists.chinese_simplified); //生成中文助记词 console.log('助记词:' + mnemonic); //生成助记词 async function getAddress(mnemonic) { const seed = await bip39.mnemonicToSeed(mnemonic); //生成种子 const hdwallet = HDWallet.fromSeed(seed); for (var i = 0; i < 10; i++) { // 用同一个种子生成多个地址 console.log('=============地址' + (i + 1) + '=================') const key = hdwallet.derive("m/44'/60'/0'/0/" + i); // 地址路径的最后一位设置为循环变量 console.log("PrivateKey = " + key.getPrivateKey().toString('hex')); // 私钥 console.log("PublicKey = " + key.getPublicKey().toString('hex')); // 公钥 const EthAddress = '0x' + key.getAddress().toString('hex'); //地址 console.log('ETH Address = ' + EthAddress); } } getAddress(mnemonic); //执行函数在当前目录下执行 node js文件名称 会生成一个英文助记词和10个地址及公私钥 根据钱包地址及密码获取私钥新建目录 使用命令窗口对当前目录执行 npm init 初始化项目
在当前目录新建js文件 将以下代码复制进去 var keythereum = require("keythereum"); var datadir = "D:/HbuilderX WorkScope/eth/data"; // 存放keystore文件的目录 var address= "0x8225a89bf5557c055991abe8270af09578d0a089"; //钱包地址 要小写 const password = "123456"; //密码 var keyObject = keythereum.importFromFile(address, datadir); var privateKey = keythereum.recover(password, keyObject); console.log(privateKey.toString('hex'));执行 node js文件名称 就会输出私钥 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |