Node.js hash.digest() 方法
hash.digest()方法是加密模块的Hash 类的内置函数。这用于创建在创建哈希时传递的数据的摘要。例如,当我们创建一个哈希时,我们首先使用 crypto.createHash() 创建一个 Hash 实例,然后我们使用update()函数更新哈希内容,但直到现在我们还没有得到结果哈希值,所以要获得哈希值我们使用 Hash 类提供的摘要函数。
该函数将一个字符串作为输入,它定义了返回值的类型,例如hex或base64 。如果您离开此字段,您将获得Buffer作为结果。
句法:
hash.digest([encoding])
参数:此函数采用以下一个参数:
- encoding:此方法采用一个可选参数,该参数定义返回输出的类型。您可以使用'hex'或'base64'作为参数。
模块安装:使用以下命令安装所需模块:
npm install crypto
返回值:该函数传入参数时返回一个String ,不传参数时返回一个Buffer对象。假设我们传递了参数base64那么返回值将是一个base64编码的字符串。
示例 1:以十六进制和base64的形式生成字符串GeeksForGeeks的哈希值。
// Importing the crypto library
const crypto = require("crypto")
// Defining the algorithm
let algorithm = "sha256"
// Defining the key
let key = "GeeksForGeeks"
// Creating the digest in hex encoding
let digest1 = crypto.createHash(algorithm).update(key).digest("hex")
// Creating the digest in base64 encoding
let digest2 = crypto.createHash(algorithm).update(key).digest("base64")
// Printing the digests
console.log("In hex Encoding : \n " + digest1 + "\n")
console.log("In base64 encoding: \n " + digest2)