UNPKG

crypto-keygen-suite

Version:

Key generation utilities for cryptographic operations. YES I RENAMED IT. SIX STATE PROTOCOL!!! See its folder for all <3

32 lines (28 loc) 944 B
import crypto from 'crypto'; function generateKey(password, salt, iterations = 100000, keyLength = 32) { return new Promise((resolve, reject) => { crypto.pbkdf2(password, salt, iterations, keyLength, 'sha256', (err, key) => { if (err) { return reject(err); } resolve(key); }); }); } const password = process.argv[2]; if (!password) { console.error('Please provide a password as a command line argument.'); process.exit(1); } const salt = crypto.randomBytes(16); const iterations = 100000; const keyLength = 32; (async () => { try { const derivedKey = await generateKey(password, salt, iterations, keyLength); console.log('Salt (hex):', salt.toString('hex')); console.log('Derived Key (hex):', derivedKey.toString('hex')); } catch (error) { console.error('Error generating key:', error); } })();