UNPKG

@kba-tools/genesis-tool

Version:

A forked repo from ConsenSys which helps to generate genesis block for Besu Network with xemptyBlockPeriod field.

21 lines 1.66 kB
"use strict"; const secp256r1 = require("secp256r1"); const { randomBytes } = require("crypto"); function generatePrivateKey() { let privKey; do { privKey = randomBytes(32); } while (!secp256r1.privateKeyVerify(privKey)); return privKey; } function derivePublicKey(privKey) { // slice on the end to remove the compression prefix ie. uncompressed use 04 prefix & compressed use 02 or 03 // we generate the address, which wont work with the compression prefix const pubKey = secp256r1.publicKeyCreate(privKey, false).slice(1); return Buffer.from(pubKey); } module.exports = { generatePrivateKey: generatePrivateKey, derivePublicKey: derivePublicKey }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZUtleXNSMS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvbm9kZUtleXNSMS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQ3ZDLE1BQU0sRUFBQyxXQUFXLEVBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7QUFHeEMsU0FBUyxrQkFBa0I7SUFDekIsSUFBSSxPQUFPLENBQUM7SUFDWixHQUFHLENBQUM7UUFDRixPQUFPLEdBQUcsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsRUFBRTtJQUMvQyxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsT0FBTztJQUM5Qiw2R0FBNkc7SUFDN0csdUVBQXVFO0lBQ3ZFLE1BQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDN0IsQ0FBQztBQUVELE1BQU0sQ0FBQyxPQUFPLEdBQUc7SUFDZixrQkFBa0IsRUFBRSxrQkFBa0I7SUFDdEMsZUFBZSxFQUFFLGVBQWU7Q0FDakMsQ0FBQSJ9