Node.js – hmac.digest() 方法
该HMAC类是用于创建加密HMAC摘要的许多公用事业类之一。该方法用于计算使用该方法更新的所有数据。如果提供了编码,将返回一个字符串,否则返回一个缓冲区。Hmac.digest()Hmac.update()
语法
hmac.digest( [encoding] )
参数
encoding- 此输入参数接受在计算hmac时要考虑的编码的输入。
示例1
创建一个文件“hmacDigest.js”并复制以下代码片段。创建文件使用后,使用命令“nodehmacDigest.js”运行此代码。
//Hmac.digest()演示示例 //导入加密模块 const crypto = require("crypto") //使用编码和密钥初始化Hmac对象 const hmac = crypto.createHmac('sha256', 'secretKey'); //使用以下数据更新hmac hmac.update('Welcome to Tutorials point'); //使用摘要打印hmac值 console.log("Hmac是: " + hmac.digest('hex'))输出结果
C:\home\node>> node hmacDigest.js Hmac是: 4e6fa9b98ed4c498a498148bd720cc7b14b40b148e5b919bc89869b8c5dd5c9e
示例2
//Hmac.digest()演示示例 //导入加密模块 const crypto = require("crypto") //使用编码和密钥初始化Hmac对象 const hmac = crypto.createHmac('sha256', 'secretKey'); //定义hmac编码算法 var encoding = "sha256" //定义密钥 var secretKey = "1234567890" //定义要散列的数据 var data = "nhooo" //以十六进制编码创建Hmac let hmacDigest = crypto.createHmac(encoding, secretKey).update(data).digest("hex") //以base64编码创建Hmac let hmacDigestWithBase64 = crypto.createHmac(encoding, secretKey).update(data).digest("base64") //使用摘要打印hmac值 console.log("十六进制中的Hmac是: " + hmacDigest) console.log("Base64编码中的Hmac: " + hmacDigestWithBase64)输出结果
C:\home\node>> node hmacDigest.js 十六进制中的Hmac是: 05fa1c5566678274ca0a4db70b0522cbb765140fa5903fbd42c1eac8682538dd Base64编码中的Hmac: BfocVWZngnTKCk23CwUiy7dlFA+lkD+9QsHqyGglON0=