# @sapphirecode/crypto-helper version: 1.1.x simple functions for cryptography ## Installation npm: > npm i --save @sapphirecode/crypto-helper yarn: > yarn add @sapphirecode/crypto-helper ## Usage ```js const crypto = require('@sapphirecode/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 info = crypto.get_signature_info(signed); // returns an object with iat (issued at), key_info and data 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. // encryption const enc = crypto.encrypt_aes('foo', 'bar'); const dec = crypto.decrypt_aes(enc, 'bar'); ``` ## License MIT © Timo Hocker