ed25519 signature generation and verification
npm install --save trackthis-ecdsa
const lib = require('trackthis-ecdsa');
const seed = lib.createSeed();
const keypair = await lib.createKeyPair(seed);
const msg = Buffer.from('hello there');
const sig = await keypair.sign(msg);
console.log(await keypair.verify(sig, msg)); // true
const lib = require('trackthis-ecdsa');
const fs = require('fs');
const seed = lib.createSeed();
const keypair = await lib.createKeyPair();
fs.writeFileSync('keys.json', JSON.stringify({
publicKey: keypair.publicKey.toString('base64'),
secretKey: keypair.secretKey.toString('base64'),
});
const lib = require('trackthis-ecdsa');
const fs = require('fs');
const base64keys = require('./keys.json');
const keypair = lib.keyPairFrom({
publicKey: Buffer.from(base64keys.publicKey, 'base64'),
secretKey: Buffer.from(base64keys.secretKey, 'base64'),
});
Generates 32-byte seed using Math.random
. Using a different random-generator
which is cryptographically secure is strongly advised.
Generates a keypair containing the .sign
and .verify
functions
Generates a keypair from the provided 32-byte seed with the following properties:
- arguments:
seed
- a 32-byte byffer
- returns:
keypair.publicKey
- A 32-byte public key as a bufferkeypair.secretKey
- A 64-byte secret key as a bufferkeypair.sign
- Function to sign a message using the keypairkeypair.verify
- Function to verify a signature using the keypair
Sign a message using the given keypair.
- arguments:
msg
- A buffer representing the messagepublicKey
- A 32-byte public key as a buffersecretKey
- A 64-byte secret key as a buffer
- returns:
signature
- A 64-byte buffer
TODO
TODO
TODO