以太坊

以太坊开发:如何在私有链获取账号的私钥

2018-04-17  本文已影响1251人  暴走的K哥哥

搭建过私链的朋友应该知道,通过geth生成账号地址后,会在你的私链存储位置生成keystore文件。

那如何获取你的账户地址对应的私钥呢?

使用keythereum库

keythereum 是以太坊提供的用于生成、导入和导出key的js库。
https://github.com/ethereumjs/keythereum

安装很简单:

npm install keythereum

调用importFromFile和recover方法得到私钥:


function getPrivateKey(){
        var keythereum = require('keythereum');
        var fromkey = keythereum.importFromFile("账户地址", "私链datadir所在位置");
        //recover输出为buffer类型的私钥
        var privateKey = keythereum.recover('该账户的密码', fromkey);
        console.log(privateKey.toString('hex'));

}

需要注意的是importFromFile方法只能在nodejs中调用,不能浏览器中调用,通过查看源码可以看到该判断:

上一篇 下一篇

猜你喜欢

热点阅读