使用ethers.js创建以太坊HD钱包(生成BIP-039 + BIP-044钱包),在根据私钥、助记词找回钱包!

一、什么是ethers.js

ethers.js库旨在成为一个完整而紧凑的库,用于与以太坊区块链及其生态系统进行交互。它最初设计用于ethers.io,后来扩展为更通用的库。官方链接:https://docs.ethers.io/ethers.js/html/getting-started.html

在Node.js中安装

  • (npm安装)   npm install -save ethers  
  • (yarn安装)   yarn add ethers

三、创建wallet.js文件 生成钱包信息

    //引入ethers.js

    var  ethers = require('ethers');

    //拿到生成的钱包信息
    var wallet = ethers.Wallet.createRandom();

    //获取助记词
    var mnemonic = wallet.mnemonic;
    console.log("钱包助记词:",mnemonic)

    //获取path
    var path = wallet.path;
    console.log("钱包path:",path)

    //获取钱包的私钥
    var privateKey = wallet.privateKey;
    console.log("钱包私钥:",privateKey)

    //获取钱包地址
    var address = wallet.address;
    console.log("钱包地址:",address)

在node中执行node wallet.js 可以看到钱包的助记词、私钥、地址已经生成成功。

四、根据私钥找回钱包信息

    //引入ethers.js

    var  ethers = require('ethers');

    //根据助记词找回钱包信息
    var monic= "peace mouse scrap chase order guess volume unit riot save reopen nation"
    var mnemonic = ethers.Wallet.fromMnemonic(monic);
    var privateKey = mnemonic.privateKey;
    console.log("钱包私钥:",privateKey)


    //根据私钥找回钱包地址
    var wallet = new ethers.Wallet(privateKey);
    //钱包地址
    var address = wallet.address;
    console.log("钱包地址:",address)

在node中执行node wallet.js 可以看到钱包的私钥、地址已经成功恢复。

学如逆水行舟,不进则退。心似平原跑马,易放难收。全栈工程师是指掌握多种技能,并能利用多种技能独立完成产品的人。 也叫全端工程师(同时具备前端和后台能力),英文Full Stack engineer。【人工智能】【区块链】【系统/网络/运维】【云计算/大数据】【数据库】【移动开发】【后端开发】【游戏开发】【UI设计】【微服务】【爬虫】【Java】【Go】【C++】【PHP】【Python】【Android/IOS】【HTML/CSS】【JavaScript】【Node】。。。

欢迎各位大神萌新一起专研分享各行各业技术!

IT全栈工程师技术交流群:593674370

猜你喜欢

转载自blog.csdn.net/qq_16137795/article/details/83474645