Package Exports
- crypto-js
- crypto-js/aes
- crypto-js/aes.js
- crypto-js/cipher-core
- crypto-js/core
- crypto-js/crypto-js
- crypto-js/enc-base64
- crypto-js/enc-base64.js
- crypto-js/enc-hex
- crypto-js/enc-latin1
- crypto-js/enc-utf16
- crypto-js/enc-utf8
- crypto-js/enc-utf8.js
- crypto-js/evpkdf
- crypto-js/format-hex
- crypto-js/hmac
- crypto-js/hmac-md5
- crypto-js/hmac-sha1
- crypto-js/hmac-sha256
- crypto-js/hmac-sha3
- crypto-js/hmac-sha384
- crypto-js/hmac-sha512
- crypto-js/lib-typedarrays
- crypto-js/md5
- crypto-js/mode-cfb
- crypto-js/mode-ctr
- crypto-js/mode-ctr-gladman
- crypto-js/mode-ecb
- crypto-js/mode-ofb
- crypto-js/pad-ansix923
- crypto-js/pad-iso10126
- crypto-js/pad-iso97971
- crypto-js/pad-nopadding
- crypto-js/pad-pkcs7
- crypto-js/pad-zeropadding
- crypto-js/pbkdf2
- crypto-js/rabbit
- crypto-js/rabbit-legacy
- crypto-js/rc4
- crypto-js/ripemd160
- crypto-js/sha1
- crypto-js/sha1.js
- crypto-js/sha224
- crypto-js/sha256
- crypto-js/sha256.js
- crypto-js/sha3
- crypto-js/sha3.js
- crypto-js/sha384
- crypto-js/sha512
- crypto-js/sha512.js
- crypto-js/tripledes
- crypto-js/x64-core
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (crypto-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
crypto-js
JavaScript library of crypto standards.
Node.js (Install)
Requirements:
- Node.js
- npm (Node.js package manager)
npm install crypto-js
Usage
Modular include:
var AES = require("crypto-js/aes");
var SHA256 = require("crypto-js/sha256");
...
console.log(SHA256("Message"));
Including all libraries, for access to extra methods:
var CryptoJS = require("crypto-js");
console.log(CryptoJS.HmacSHA1("Message", "Key"));
Client (browser)
Requirements:
- Node.js
- Bower (package manager for frontend)
bower install crypto-js
Usage
Modular include:
require.config({
packages: [
{
name: 'crypto-js',
location: 'path-to/bower_components/crypto-js',
main: 'index'
}
]
});
require(["crypto-js/aes", "crypto-js/sha256"], function (AES, SHA256) {
console.log(SHA256("Message"));
});
Including all libraries, for access to extra methods:
// Above-mentioned will work or use this simple form
require.config({
paths: {
'crypto-js': 'path-to/bower_components/crypto-js/crypto-js'
}
});
require(["crypto-js"], function (CryptoJS) {
console.log(CryptoJS.HmacSHA1("Message", "Key"));
});
Usage without RequireJS
<script type="text/javascript" src="path-to/bower_components/crypto-js/crypto-js.js"></script>
<script type="text/javascript">
var encrypted = CryptoJS.AES(...);
var encrypted = CryptoJS.SHA256(...);
</script>
API
See: https://code.google.com/p/crypto-js
AES Encryption
Plain text encryption
var CryptoJS = require("crypto-js");
// Encrypt
var ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123');
// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext.toString(), 'secret key 123');
var plaintext = bytes.toString(CryptoJS.enc.Utf8);
console.log(plaintext);
Object encryption
var CryptoJS = require("crypto-js");
var data = [{id: 1}, {id: 2}]
// Encrypt
var ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123');
// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext.toString(), 'secret key 123');
var decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
console.log(decryptedData);
List of modules
crypto-js/core
crypto-js/x64-core
crypto-js/lib-typedarrays
crypto-js/md5
crypto-js/sha1
crypto-js/sha256
crypto-js/sha224
crypto-js/sha512
crypto-js/sha384
crypto-js/sha3
crypto-js/ripemd160
crypto-js/hmac-md5
crypto-js/hmac-sha1
crypto-js/hmac-sha256
crypto-js/hmac-sha224
crypto-js/hmac-sha512
crypto-js/hmac-sha384
crypto-js/hmac-sha3
crypto-js/hmac-ripemd160
crypto-js/pbkdf2
crypto-js/aes
crypto-js/tripledes
crypto-js/rc4
crypto-js/rabbit
crypto-js/rabbit-legacy
crypto-js/evpkdf
crypto-js/format-openssl
crypto-js/format-hex
crypto-js/enc-latin1
crypto-js/enc-utf8
crypto-js/enc-hex
crypto-js/enc-utf16
crypto-js/enc-base64
crypto-js/mode-cfb
crypto-js/mode-ctr
crypto-js/mode-ctr-gladman
crypto-js/mode-ofb
crypto-js/mode-ecb
crypto-js/pad-pkcs7
crypto-js/pad-ansix923
crypto-js/pad-iso10126
crypto-js/pad-iso97971
crypto-js/pad-zeropadding
crypto-js/pad-nopadding