React Native CryptoJS
React native javascript library of crypto standards.Install
npm install react-native-crypto-js
Usage
ES6 import for typical API call signing use case:var AES = require("react-native-crypto-js").AES;
var SHA256 = require("react-native-crypto-js").SHA256;
...
console.log(SHA256("Message"));
API
See: https://code.google.com/p/crypto-jsAES Encryption
Plain text encryption
import CryptoJS from "react-native-crypto-js";
// Encrypt
let ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();
// Decrypt
let bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
let originalText = bytes.toString(CryptoJS.enc.Utf8);
console.log(originalText); // 'my message'
Object encryption
import CryptoJS from "react-native-crypto-js";
let data = [{id: 1}, {id: 2}]
// Encrypt
let ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123').toString();
// Decrypt
let bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
let decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
console.log(decryptedData); // [{id: 1}, {id: 2}]
List of Algorithms
Hashers
- ``
MD5
` - `
SHA1
` - `
SHA256
` - `
SHA512
` - `
SHA224
` - `
SHA384
` - `
SHA3
` - `
RIPEMD160
``
HMAC
- ``
HmacMD5
` - `
HmacSHA1
` - `
HmacSHA256
` - `
HmacSHA224
` - `
HmacSHA512
` - `
HmacSHA384
` - `
HmacSHA3
` - `
HmacRIPEMD160
``
PBKDF2
- ``
PBKDF2
``
Ciphers
- ``
AES
` - `
DES
` - `
TripleDES
` - `
RC4
` - `
RC4Drop
` - `
Rabbit
``
Reporting Issues
Bugs | New FeaturesContributing
Check the issues and pull requests to see if the idea or bug you want to share about is already present. If you don't see it, do one of the following:- If it is a small change, just fork the project and create a pull request.
- If it is major, start by opening an issue.