1.1.5 • Published 1 year ago

xxtea-node v1.1.5

Weekly downloads
307
License
MIT
Repository
github
Last release
1 year ago

XXTEA for Node.js

Join the chat at https://gitter.im/xxtea/xxtea-nodejs npm download npm version License

Introduction

XXTEA is a fast and secure encryption algorithm. This is a XXTEA library for Node.js.

It is different from the original XXTEA encryption algorithm. It encrypts and decrypts Uint8Array instead of uint32[], and the key is also Uint8Array. If you want to encrypt String, you can use xxtea.toBytes(str) to convert String to Uint8Array, when you decrypt Uint8Array, you can use xxtea.toString(bytes) to convert the result to String. Conversion between string and Uint8Array is using UTF8 encoding.

Usage

var xxtea = require('xxtea-node');

var str = "Hello World! 你好,中国!";
var key = "1234567890";
var encrypt_data = xxtea.encrypt(xxtea.toBytes(str), xxtea.toBytes(key));
console.log(new Buffer(encrypt_data).toString('base64'));
var decrypt_data = xxtea.toString(xxtea.decrypt(encrypt_data, xxtea.toBytes(key)));
console.assert(str === decrypt_data);

ChangeLog

1.1.0 update

  • Fixed Emoji encode & decode bug.
  • Improved Long String encrypt and decrypt.
  • Added encryptToString and decryptToString, for example:
var xxtea = require('xxtea-node');

var str = "Hello World! 你好,中国🇨🇳!";
var key = "1234567890";
var encrypt_data = xxtea.encryptToString(str, key);
console.log(encrypt_data);
var decrypt_data = xxtea.decryptToString(encrypt_data, key);
console.assert(str === decrypt_data);