1.1.2 • Published 7 years ago
xorcrypto v1.1.2
xorCrypto
XOR Cipher is secure, as long as key length equal to data length.
Simple and lightweight algorithm, this encryption used SHA256 as PRNG to create XOR-KEY.
Features
XOR-KEYwill be changed every 32 bytesXOR-KEYwas created fromSHA256ofSecrectKeyandOpenSSL RNG's value- Simple
- Lightweight
- Easy to implement
- Data don't repeate by sequence
- Hash based
Installation
Require NodeJs
npm install xorcryptoUsage
const xorCrypto = require('xorcrypto');
let myXorCrypto = new xorCrypto(Buffer.from('My secret key, I will share with my friend.'));
let value, encrypted, decrypted;
value = Buffer.from('This is my secret message!');
encrypted = myXorCrypto.encrypt(value);
decrypted = myXorCrypto.decrypt(encrypted);
console.log(`Value: ${value}\nEncrypted: ${encrypted.toString('hex')}\nDecrypted: ${decrypted.toString()}\nIs the same: ${decrypted.toString() == value}`);Result:
chiro@moonfang:~/labs$ node test.js
Value: This is my secret message!
Encrypted: 970504f07e0ee97aa3e53c55414fc6f01b581e0d441167c64c8a8f807bc5617f59c190bc555c96eaf504
Decrypted: This is my secret message!
Is the same: true
chiro@moonfang:~/labs$ node test.js
Value: This is my secret message!
Encrypted: 79f0a536a36e1a284ec450acc14651c00b9c043462158d2177dccda7d821bc35c8335fa68f610d01c0f9
Decrypted: This is my secret message!
Is the same: true
chiro@moonfang:~/labs$ License
This module distributed under MIT License