jose-simple
Proper encryption ought to be simple, and widespread.
Jose-Simple simplifies the encryption and decryption of data using the JOSE (JSON Object Signing and Encryption) standard.
![NPM](https://nodei.co/npm/jose-simple.png)
Caveats
Installation
npm install jose-simple
Links
Useage
const jose = require('jose-simple')
const { encrypt, decrypt } = jose(privateKey, publicKey)
const someData = {
some: 'amazing data',
you: 'want to keep hidden',
from: 'prying eyes'
}
encrypt(someData).then(encrypted => {
console.log('encrypted', encrypted)
decrypt(encrypted).then(decrypted => {
console.log('decrypted', decrypted)
})
})
Options
See encrypt.js#L662
You can add encrypt
options as follows:
const { encrypt, decrypt } = jose(privateKey, publicKey, {
format: 'compact'
protect: true,
})
Development
![Greenkeeper badge](https://badges.greenkeeper.io/davesag/jose-simple.svg)
Branch | Status | Coverage | Comment |
---|
develop | ![CircleCI](https://circleci.com/gh/davesag/jose-simple/tree/develop.svg?style=svg) | ![codecov](https://codecov.io/gh/davesag/jose-simple/branch/develop/graph/badge.svg) | Work in progress |
master | ![CircleCI](https://circleci.com/gh/davesag/jose-simple/tree/master.svg?style=svg) | ![codecov](https://codecov.io/gh/davesag/jose-simple/branch/master/graph/badge.svg) | Latest release |
Prerequisites
- NodeJS — Version
10.12.0
or better is needed to run the tests as they rely on crypto.generateKeyPair
.
Test it
npm test
— runs the unit tests. The tests give an example of how to create key pairs too. (Leverages the crypto.generateKeyPair
libraries introduced in Node 10.12.0
.)npm run test:unit:cov
— runs the unit tests with code coveragenpm run test:mutants
— runs the mutation tests
Lint it
npm run lint
Contributing
Contributions are welcome. Please see CONTRIBUTING for more details.