前端加密crypto-js使用
最近项目涉及到敏感数据,为了信息安全,需要对数据进行接口加密处理,会使用一些算法进行加密,常见的AES对称加密、RSA非对称加密、MD5散列、base64编码等。关于这些加密方式,网上有许多工具和案例,今天主要分享下前端加密类库crypto-js。
1.crypto-js支持的加密算法
名称 | 加密方式 | 简单描述 |
---|---|---|
MD5 | 哈希/散列 | MD5信息摘要算法,一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致 |
SHA-1 | 哈希/散列 | 安全散列算法1,是一种密码散列函数,可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数 |
SHA-256 | 哈希/散列 | SHA-2的一种算法标准,对于任意长度的消息,SHA256都会产生一个256bit长的哈希值,通常用一个长度为64的十六进制字符串来表示 |
HMAC | 哈希/散列 | HMAC运算利用hash算法,以一个消息M和一个密钥K作为输入,生成一个定长的消息摘要作为输出 |
PBKDF2 | 哈希/散列 | PBKDF2应用一个伪随机函数以导出密钥。通过password和salt进行hash,然后将结果作为salt在与password进行hash,多次重复此过程,生成最终的密文。 |
AES | 对称加密 | 高级加密标准,替代之前的DES加密算法,通常采用128位16个字节初始向量IV的CBC模式 |
RC4 | 对称加密 | RC4和DES算法一样,是一种对称加密算法,以字节流的方式依次加密明文中的每一个字节,解密的时候也是依次对密文中的每一个字节进行解密 |
其他 | 参照crypto-js | - |
2.实现AES加密解密实现
- 首先引入 crypto-js,我们可以采用 npm install crypto-js --save 进行下载安装
- 其次就是在js文件中写两个方法,用于加密与解密
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!