21 lines
904 B
Markdown
21 lines
904 B
Markdown
# Crypto Helper
|
|
|
|
Helper functions for cryptography
|
|
|
|
## Usage
|
|
|
|
```js
|
|
const crypto = require('@scode/crypto-helper');
|
|
|
|
const rand_hex = crypto.random_hex(16); // outputs 16 byte random hex
|
|
const rand_salt = crypto.create_salt(); // same as random_hex, but with fixed length of 32 bytes
|
|
const random_string = crypto.random_string(16) // output 16 character long random string
|
|
const hash = crypto.hash_sha512(random_string, random_hex); // returns sha 512 hex
|
|
const check = crypto.checksum('foo'); // returns a sha 256 hex
|
|
|
|
// jwt like object signing
|
|
const signed = crypto.sign_object({foo: 'bar'}, 'secret');
|
|
const dec = crypto.decode_signed(signed); // decode a signed object without verifying the signature
|
|
const ver = crypto.verify_signature(signed, 'secret', 10000); // verifies the signature and returns the contents. the timeout is in milliseconds and optional, timing will be ignored if omitted.
|
|
```
|