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=