wallet-generator-v1
v1.1.0
Published
A utility library for generating and managing multicurrency wallets.
Downloads
5
Maintainers
Readme
Wallet Generator
A simple, yet powerful utility library for generating and managing multicurrency crypto wallets. This package provides easy-to-use functions to generate mnemonics, create wallets for Ethereum Virtual Machine (EVM) compatible blockchains, retrieve wallet addresses and private keys, and verify mnemonics.
Features
- Generate BIP39 mnemonics
- Create EVM-compatible wallets (Ethereum, etc.)
- Retrieve wallet addresses from mnemonics
- Extract private keys from mnemonics
- Verify the validity of mnemonics
Installation
Install wallet-generator-v1
using npm:
npm install wallet-generator-v1
yarn add wallet-generator-v1
Test
- To run the tests , use the npm command:
npm run test
Usage
- Below are some examples of how to use the wallet-generator library:
Generate a Mnemonic
import { MultichainWalletWrapper } from 'wallet-generator';
async function generateMnemonic() {
const mnemonic = await MultichainWalletWrapper.generateMnemonic();
console.log(`Mnemonic: ${mnemonic}`);
}
// Note: Mnemonics with less than 12 words have low entropy and may be guessed by an attacker.
generateMnemonic();
- Response
net idle lava mango another capable inhale portion blossom fluid discover cruise
Create an EVM Wallet and Display Mnemonic
async function createWallet() {
const { address, mnemonic } = await MultichainWalletWrapper.createWalletEVMAndDisplayMnemonic();
console.log(`Address: ${address}`);
console.log(`Mnemonic: ${mnemonic}`);
}
createWallet();
- Response
{
address: '0xfBE11AC0258cc8288cA24E818691Eb062f7042E9',
mnemonic: 'net idle lava mango another capable inhale portion blossom fluid discover cruise'
}
Get EVM Wallet Address from Mnemonic
async function getAddress() {
const mnemonic = "Contributions are welcome! Please feel free to submit a pull request or open an issue"
const address = await MultichainWalletWrapper.getEvmWalletAddress(mnemonic);
console.log(`Address: ${address}`);
}
getAddress();
- Reponse
0xfBE11AC0258cc8288cA24E818691Eb062f7042E9
Retrieve Private Key for EVM Wallet
async function getPrivateKey() {
const mnemonic = "net idle lava mango another capable inhale portion blossom fluid discover cruise"
const privateKey = await MultichainWalletWrapper.getPrivateKeyEVM(mnemonic);
console.log(`Private Key: ${privateKey}`);
}
getPrivateKey();
- Response
{
privateKey: '0xfdf745f45d1942feea79b4c0a3fc1ca67da366899f7e6cebaa06496806ca8127',
}
Verify a Mnemonic
async function verifyMnemonic() {
const mnemonic = "net idle lava mango another capable inhale portion blossom fluid discover cruise"
const isValid = await MultichainWalletWrapper.verifyMemonicEVM(mnemonic);
console.log(`Is valid: ${isValid}`);
}
verifyMnemonic();
- Response
true
Contributing
- Contributions are welcome! Please feel free to submit a pull request or open an issue.