crypto 加密
crypto模块是nodejs的核心模块之一,它提供了安全相关的功能,如摘要运算、加密、电子签名等。
摘要(hash)
摘要(digest):将长度不固定的消息作为输入,通过运行hash函数,生成固定长度的输出,这段输出就叫做摘要。通常用来验证消息完整、未被篡改。
PS摘要运算是不可逆的。也就是说,输入固定的情况下,产生固定的输出。但知道输出的情况下,无法反推出输入。
常见的摘要算法 与 对应的输出位数如下:
PS 如MD5:不管是输入多少位数 如使用md5输出的都是128位
MD5:128位
SHA-1:160位
SHA256 :256位
SHA512:512位
案例
js中写入以下代码
var crypto = require('crypto');
var md5 = crypto.createHash('md5');
var message = 'hello';
var digest = md5.update(message