一、散列算法和加密算法区别
- 散列算法是单向加密不可逆的
- 加密算法可以加密,然后通过密钥解密
二、方法
- 获取支持的加密算法
crypto.getCiphers() //["des-ecb", "des", ...]
2.获取支持的散列算法
crypto.getHashes() //["sha1", "sha224", ...]
3.选择加密的算法(散列算法)
.createHash('sha1')
- 设置要加密的内容(要创建哈希摘要的数据)
.update('1234')
- 加密后的密文
.digest('hex')
// 参数:返回值的字符编码
// 如果提供了参数,则返回字符串,否则返回Buffer类型
// 调用digest方法之后, Hash 对象不能被再次使用,多次调用将会导致抛出错误
三、示例(散列算法)
const crypto = require('crypto')//引入(crypto是node包含的插件)
const hash = crypto.createHash('sha1')//选择加密方式
.update('1234') //要加密的内容
.digest('hex')//获取加密后的密文