Files: c3d1416e0ad20053143d6673a868240ef276838e / README.md
1415 bytesRaw
SYNOPSIS
This libary provides primitives for creating and verifying BLS threshold signatures. All the hard work is done by herumi/bls. This wraps the bls C++ code which is compiled to Webassembly for easier use.
INSTALL
npm install bls-lib
USAGE
const bls = require('bls-lib')
bls.onModuleInit(() => {
bls.init()
const sec = bls.secretKey()
const pub = bls.publicKey()
const sig = bls.signature()
bls.secretKeySetByCSPRNG(sec)
const msg = 'hello world'
bls.sign(sig, sec, msg)
bls.getPublicKey(pub, sec)
const v = bls.verify(sig, pub, msg)
// v === true
bls.free(sec)
bls.free(sig)
bls.free(pub)
})
API
BUILDING
First install the dependancies emcripten and ninja
git clone --recursive https://github.com/wanderer/bls-lib.git
cd bls-lib/build
ninja
LICENSE
Built with git-ssb-web