From 4966e0beab92c89f6871fdf5129d9e790dc9b5e6 Mon Sep 17 00:00:00 2001 From: Gerald Nash Date: Wed, 15 Jan 2020 15:55:26 -0500 Subject: [PATCH] Use bls-keygen to generate random private keys --- package.json | 1 + src/privateKey.ts | 7 +++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 6324907..1b9e2ae 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "benchmark": "node -r ./.babel-register test/benchmarks" }, "dependencies": { + "@chainsafe/bls-keygen": "^0.0.2", "@chainsafe/eth2-bls-wasm": "^0.2.0", "@chainsafe/eth2.0-types": "^0.1.0", "assert": "^1.4.1", diff --git a/src/privateKey.ts b/src/privateKey.ts index 48865e1..c30bf9e 100644 --- a/src/privateKey.ts +++ b/src/privateKey.ts @@ -2,6 +2,7 @@ import {SECRET_KEY_LENGTH} from "./constants"; import assert from "assert"; import {BLSSecretKey, Domain, Hash} from "@chainsafe/eth2.0-types"; import {SecretKeyType} from "@chainsafe/eth2-bls-wasm"; +import {generateRandomSecretKey} from "@chainsafe/bls-keygen"; import {getContext} from "./context"; import {PublicKey} from "./publicKey"; import {Signature} from "./signature"; @@ -38,10 +39,8 @@ export class PrivateKey { } public static random(): PrivateKey { - const context = getContext(); - const secretKey = new context.SecretKey(); - secretKey.setByCSPRNG(); - return new PrivateKey(secretKey); + const randomKey: Buffer = generateRandomSecretKey(); + return this.fromBytes(randomKey); } public getValue(): SecretKeyType {