Skip to content

Latest commit

 

History

History
41 lines (26 loc) · 1.36 KB

README.md

File metadata and controls

41 lines (26 loc) · 1.36 KB

Keysign

NPM version NPM downloads Build status Test coverage

Data signing and verification for rotating credentials and algorithms.

(Inspired by keygrip and API compatible with keycrypt).

Installation

npm install keysign --save

Usage

Signs a Buffer using the first key (secret) and returns the data. Upon decoding, checks each secret for a valid HMAC and returns the plain data (or undefined if nothing matches).

import { Keysign } from 'keysign'

const secrets = [Buffer.from('secret', 'utf8')]
const keysign = new Keysign(secrets)

const raw = Buffer.from('some data', 'utf8')
const signed = keysign.encode(raw)
const verified = keysign.decode(encrypted)

assert.equal(verified, raw)

TypeScript

This project is using TypeScript and publishes the definitions to NPM.

License

Apache 2.0