1.1.4 • Published 2 years ago
@m4ver!ck/crypto-lib v1.1.4
crypto-lib
Javascript lib for crypto operations
npm install @m4ver!ck/crypto-lib
Usage
ES6 import for typical API call signing use case:
import sha1 from 'crypto/sha1';
import hmacSHA512 from 'crypto/hmac-sha512';
import Base64 from 'crypto/enc-base64';
const message, nonce, path, privateKey; // ...
const hashDigest = sha1(nonce + message);
const hmacDigest = Base64.stringify(hmacSHA512(path + hashDigest, privateKey));
AES Encryption
Plain text encryption
var Crypto = require("crypto");
// Encrypt
var ciphertext = Crypto.AES.encrypt('my message', 'secret key 123').toString();
// Decrypt
var bytes = Crypto.AES.decrypt(ciphertext, 'secret key 123');
var originalText = bytes.toString(Crypto.enc.Utf8);
console.log(originalText);
Object encryption
var Crypto = require("crypto");
var data = [{id: 1}, {id: 2}]
// Encrypt
var ciphertext = Crypto.AES.encrypt(JSON.stringify(data), 'secret key 123').toString();
// Decrypt
var bytes = Crypto.AES.decrypt(ciphertext, 'secret key 123');
var decryptedData = JSON.parse(bytes.toString(Crypto.enc.Utf8));
console.log(decryptedData); // [{id: 1}, {id: 2}]