├── README.md ├── package.json └── index.js /README.md: -------------------------------------------------------------------------------- 1 | # Sol-Wallet-Generator 2 | Solana Wallet Generator 3 | 4 | ![Solana Wallet Generator](https://i.ibb.co/thcWGT3/x.png) 5 | 6 | ## Installation 7 | ``` 8 | git clone https://github.com/vsec7/Sol-Wallet-Generator.git 9 | cd Sol-Wallet-Generator 10 | npm install 11 | npm start 12 | ``` 13 | 14 | Crafted By Viloid ( github.com/vsec7 ) 15 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sol-wallet-generator", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start": "node index.js" 8 | }, 9 | "keywords": [ 10 | "spl-wallet", 11 | "solana", 12 | "wallet", 13 | "sollet.io" 14 | ], 15 | "author": "github.com/vsec7", 16 | "license": "ISC", 17 | "dependencies": { 18 | "@solana/web3.js": "^1.20.2", 19 | "bip39": "^3.0.4", 20 | "ed25519-hd-key": "^1.2.0", 21 | "nacl": "^0.1.3", 22 | "readline-sync": "^1.4.10" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const solanaWeb3 = require('@solana/web3.js'); 2 | const bip39 = require('bip39'); 3 | const { derivePath } = require('ed25519-hd-key') 4 | const nacl = require('tweetnacl'); 5 | const rl = require('readline-sync') 6 | const fs = require('fs') 7 | 8 | /* 9 | Solana Wallet Generator 10 | Created by Viloid ( github.com/vsec7 ) 11 | */ 12 | 13 | async function createWallet(){ 14 | const mnemonic = bip39.generateMnemonic(256); 15 | const x = derivePath("m/44'/501'/0'/0'", bip39.mnemonicToSeedSync(mnemonic)).key; 16 | const pk = nacl.sign.keyPair.fromSeed(x).secretKey; 17 | const acc = new solanaWeb3.Account(pk); 18 | return { 19 | 'address': acc.publicKey.toBase58(), 20 | 'pk': pk, 21 | 'mnemonic': mnemonic 22 | } 23 | } 24 | 25 | async function generateWallet( n, o){ 26 | for (var i = 1; i <= n; i++) { 27 | const wallet = await createWallet() 28 | const data = `Address : ${wallet.address}\nPrivateKey: [${wallet.pk}]\nMnemonic: ${wallet.mnemonic}\n`; 29 | if(o){ 30 | fs.appendFile( o, data+'\n', (err) => { if(err) throw err; }) 31 | } 32 | console.log(data) 33 | } 34 | } 35 | 36 | (async () => { 37 | console.log(` 38 | +-----------------------------------------+ 39 | | 40 | | Solana Wallet Generator 41 | | Crafted by Viloid ( github.com/vsec7 ) 42 | | 43 | +-----------------------------------------+ 44 | `) 45 | const n = rl.question('[?] How Many Wallet: ') 46 | const o = rl.question('[?] Output (just enter if you dont need backup to file): ') 47 | console.log('\n') 48 | await generateWallet( n, o) 49 | })(); 50 | --------------------------------------------------------------------------------