# crypto-js [![Build Status](https://travis-ci.org/brix/crypto-js.svg?branch=develop)](https://travis-ci.org/brix/crypto-js)
JavaScript library of crypto standards.
## Node.js (Install)
Requirements:
- Node.js
- npm (Node.js package manager)
```bash
npm install crypto-js
```
### Usage
ES6 import for typical API call signing use case:
```javascript
import sha256 from 'crypto-js/sha256';
import hmacSHA512 from 'crypto-js/hmac-sha512';
import Base64 from 'crypto-js/enc-base64';
const message, nonce, path, privateKey; // ...
const hashDigest = sha256(nonce + message);
const hmacDigest = Base64.stringify(hmacSHA512(path + hashDigest, privateKey));
```
Modular include:
```javascript
var AES = require("crypto-js/aes");
var SHA256 = require("crypto-js/sha256");
...
console.log(SHA256("Message"));
```
Including all libraries, for access to extra methods:
```javascript
var CryptoJS = require("crypto-js");
console.log(CryptoJS.HmacSHA1("Message", "Key"));
```
## Client (browser)
Requirements:
- Node.js
- Bower (package manager for frontend)
```bash
bower install crypto-js
```
### Usage
Modular include:
```javascript
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:
```javascript
// 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
```html
<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://cryptojs.gitbook.io/docs/
### AES Encryption
#### Plain text encryption
```javascript
var CryptoJS = require("crypto-js");
// Encrypt
var ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();
// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
var originalText = bytes.toString(CryptoJS.enc.Utf8);
console.log(originalText); // 'my message'
```
#### Object encryption
```javascript
var CryptoJS = require("crypto-js");
var data = [{id: 1}, {id: 2}]
// Encrypt
var ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123').toString();
// Decrypt
var bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
var decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
console.log(decryptedData); // [{id: 1}, {id: 2}]
```
### 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```
## Release notes
### 4.1.1
Fix module order in bundled release.
Include the browser field in the released package.json.
### 4.1.0
Added url safe variant of base64 encoding. [357](https://github.com/brix/crypto-js/pull/357)
Avoid webpack to add crypto-browser package. [364](https://github.com/brix/crypto-js/pull/364)
### 4.0.0
This is an update including breaking changes for some environments.
In this version `Math.random()` has been replaced by the random methods of the native crypto module.
For this reason CryptoJS might not run in some JavaScript environments without native crypto module. Such as IE 10 or before or React Native.
### 3.3.0
Rollback, `3.3.0` is the same as `3.1.9-1`.
The move of using native secure crypto module will be shifted to a new `4.x.x` version. As it is a breaking change the impact is too big for a minor release.
### 3.2.1
The usage of the native crypto module has been fixed. The import and access of the native crypto module has been improved.
### 3.2.0
In this version `Math.random()` has been replaced by the random methods of the native crypto module.
For this reason CryptoJS might does not run in some JavaScript environments without native crypto module. Such as IE 10 or before.
If it's absolute required to run CryptoJS in such an environment, stay with `3.1.x` version. Encrypting and decrypting stays compatible. But keep in mind `3.1.x` versions still use `Math.random()` which is cryptographically not secure, as it's not random enough.
This version came along with `CRITICAL` `BUG`.
DO NOT USE THIS VERSION! Please, go for a newer version!
### 3.1.x
The `3.1.x` are based on the original CryptoJS, wrapped in CommonJS modules.
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
之前买的python爬虫资料 有意者自取 资料还行 但是培训机构很恶心 (1313个子文件)
01_今日主要内容 12KB
01_写点儿东西 1KB
1正则 2KB
scrapy.cfg 269B
scrapy.cfg 263B
scrapy.cfg 263B
scrapy.cfg 263B
scrapy.cfg 259B
scrapy.cfg 259B
scrapy.cfg 259B
scrapy.cfg 259B
scrapy.cfg 259B
scrapy.cfg 259B
scrapy.cfg 255B
scrapy.cfg 255B
scrapy.cfg 251B
01_md5的计算.py.baiduyun.downloading.cfg 0B
02_sha系列.py.baiduyun.downloading.cfg 0B
04_base64.py.baiduyun.downloading.cfg 0B
03_urlencode.py.baiduyun.downloading.cfg 0B
image-20210907165539435.png.baiduyun.downloading.cfg 0B
image-20210907115437140.png.baiduyun.downloading.cfg 0B
image-20210907165246405.png.baiduyun.downloading.cfg 0B
image-20210907164858074.png.baiduyun.downloading.cfg 0B
styles.css 405KB
bootstrap.min.css 107KB
zxStyle.css 74KB
common.css 73KB
base.css 42KB
product.css 20KB
www_v3.css 16KB
www_v3.css 16KB
www_v3.css 16KB
www_v3.css 16KB
layer.css 14KB
swiper.min.css 14KB
m.css 12KB
style.min.css 6KB
font_576092_m2icqcebp7evzpvi.css 3KB
font_576092_m2icqcebp7evzpvi.css 3KB
font_576092_m2icqcebp7evzpvi.css 3KB
font_576092_m2icqcebp7evzpvi.css 3KB
default.css 2KB
pagination_red.css 2KB
zxPubliceStyle.css 2KB
lucky.css 132B
duanzi.csv 3KB
xxxx.csv 107B
data.csv 77B
data111111.csv 68B
樵夫.csv 24B
Thumbs.db 82KB
Thumbs.db 58KB
Thumbs.db 58KB
Thumbs.db 46KB
Thumbs.db 44KB
Thumbs.db 34KB
Thumbs.db 34KB
Thumbs.db 32KB
Thumbs.db 28KB
Thumbs.db 4KB
image-20210907165539435.png.baiduyun.downloading 1.03MB
image-20210907165246405.png.baiduyun.downloading 1.01MB
image-20210907164858074.png.baiduyun.downloading 318KB
image-20210907115437140.png.baiduyun.downloading 89KB
04_base64.py.baiduyun.downloading 4KB
01_md5的计算.py.baiduyun.downloading 3KB
03_urlencode.py.baiduyun.downloading 2KB
02_sha系列.py.baiduyun.downloading 328B
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
.DS_Store 6KB
ffmpeg.exe 73.81MB
ffprobe.exe 73.72MB
ffplay.exe 73.68MB
libvpx-720p50_60.ffpreset 227B
libvpx-720p.ffpreset 227B
libvpx-1080p.ffpreset 227B
libvpx-1080p50_60.ffpreset 227B
libvpx-360p.ffpreset 219B
close-icon.gif 1KB
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
.gitignore 184B
共 1313 条
- 1
- 2
- 3
- 4
- 5
- 6
- 14
资源评论
百年孤独_
- 粉丝: 339
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功