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