区块链钱包助记词生成,编解码,认证

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/jiang_xinxing/article/details/83214962

助记词是分层钱包中重要的概念之一,比特币BIP39是一套助记词库,比特币BIP39的JavaScript实现,用于生成确定性密钥的助记符代码。

一.助记词生成

生成12个助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic()
console.log(mnemonic);

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic(128)
console.log(mnemonic);	

生成15个助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic(160)
console.log(mnemonic);	

生成18个助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic(192)
console.log(mnemonic);	

生成21个助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic(224)
console.log(mnemonic);	

生成24个助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic(256)
console.log(mnemonic);	

生成中文助记词

var mnemonicS = bip39.generateMnemonic(128, null, bip39.wordlists.chinese_simplified);
console.log(mnemonicS);

以上根据传值的的大小限定助记词的个数

目前助记词库能够生成“简体中文”,“繁体中文”,“英文”,“法文”,“意大利文”,“日文”,“韩文”和西班牙文。

二.助记词编解码

编码助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic()
var encrytMnemonic = bip39.mnemonicToEntropy(mnemonic)
console.log(encrytMnemonic);

解码助记词

var bip39 = require('bip39')
var mnemonic = bip39.generateMnemonic()
console.log(mnemonic);
var encrytMnemonic = bip39.mnemonicToEntropy(mnemonic)
var word = bip39.entropyToMnemonic(encrytMnemonic)
console.log(word);

三.生成随机数种子

var mnemonicE = bip39.generateMnemonic()
console.log(mnemonicE);
var Seed= bip39.mnemonicToSeed(mnemonicE)
var seedHex= bip39.mnemonicToSeedHex(mnemonicE)
console.log(Seed);
console.log(seedHex);

四.验证助记词

var mnemonic = bip39.generateMnemonic()
console.log(mnemonic);
var bool = bip39.validateMnemonic(mnemonic)

本人的github:https://github.com/guoshijiang/blockchain-wallet/

猜你喜欢

转载自blog.csdn.net/jiang_xinxing/article/details/83214962
今日推荐