Conozco los conceptos básicos de blockchain y cómo usar geth. Sin embargo, tengo curiosidad por saber cómo crear una billetera usando nodejs. Lo que entiendo es que puede crear una cuenta usando la consola geth (red privada) para trabajar y cuando pase el comando, personal.listWallets
hará esto:
¿Qué es la billetera HD y cómo crear una usando node.js?
También puede usar la biblioteca HDWalletProvider muy conveniente del equipo de Truffle
const HDWalletProvider = require("truffle-hdwallet-provider");
const Web3 = require('web3');
var mnemonic = "opinion destroy betray ..."; // 12 word mnemonic
var provider = new HDWalletProvider(mnemonic, "http://localhost:8545");
const web3 = new Web3(provider);
Las billeteras HD pueden ser convenientes, ya que puedes generar una cantidad infinita de cuentas deterministas, pero nunca pierdas estas 12 palabras o perderás todo acceso para usar tus firmas y ether.
Las carteras HD se refieren a carteras deterministas jerárquicas . Son monederos que, desde un root, pueden generar múltiples claves privadas “child” de forma determinista. Solo necesita recordar la "ruta" de la clave secundaria.
Por ejemplo, las billeteras de hardware las usan: desde una sola raíz puede generar claves separadas para Bitcoin (con ruta m/44'/0'/0'/0
) y Ethereum (ruta m/44'/60'/0'/0
).
Una biblioteca de JavaScript que admite billeteras HD ethereumjs-wallet .
var hdkey = require("ethereumjs-wallet/hdkey")
var bip39 = require("bip39");
// You can generate a mnemonic seed with bip39 library
var mnemonic = "seed sock milk ...";
var path = "m/44'/60'/0'/0/0";
var hdwallet = hdkey.fromMasterSeed(bip39.mnemonicToSeed(mnemonic));
var wallet = hdwallet.derivePath(path).getWallet();
var address = "0x" + wallet.getAddress().toString("hex");
console.log(address);
garen vartanian
garen vartanian