📜  Node.js hash.update() 方法

📅  最后修改于: 2022-05-13 01:56:30.292000             🧑  作者: Mango

Node.js hash.update() 方法

hash.update()方法是加密模块的 Hash 类的内置函数。这用于使用给定数据更新哈希。该方法可以多次调用以更新哈希的内容,因为该方法可以获取流数据,例如文件读取流。

此函数将数据作为参数来生成哈希,可以是字符串或文件对象。除了数据,它还采用数据的编码类型,可以是 utf-8、二进制或 ASCII。如果未提供编码并且数据是字符串,则使用 utf-8。所需的输出长度(以字节为单位)。

模块安装:使用以下命令安装所需模块:

npm install crypto

句法:

hash.update(data [,Encoding])

参数:该函数采用以下两个参数:

  • data:需要添加到哈希中的数据。
  • encoding:数据的编码类型。

返回值:此方法返回具有更新数据的对象。

示例 1:

Javascript
// Import crypto module
const crypto = require('crypto');
  
// Create Hash instance with createHash
var hash = crypto.createHash('sha256')
                            // Use update to add data
                            .update('I love GeeksForGeeks')
  
                            // Use digest to get the hash value
                            .digest('hex');
  
// Prints the hash value
console.log("Hash Value : " + hash);


Javascript
// Import crypto module
const crypto = require('crypto');
  
// Create Hash instance with createHash
var hash = crypto.createHash('sha256')
                            // Use update to add data
                            .update('I love GeeksForGeeks')
  
                            // Use update to add data
                            .update('Because I love coding')
  
                            // Use digest to get the hash value
                            .digest('hex');
  
// Prints the hash value
console.log("Hash Value : " + hash);


输出:

Hash Value : 5a302d3c930d9e938c5326d7bb863afdc024b9ce77e30e99c4b82983350f8196

示例 2:

Javascript

// Import crypto module
const crypto = require('crypto');
  
// Create Hash instance with createHash
var hash = crypto.createHash('sha256')
                            // Use update to add data
                            .update('I love GeeksForGeeks')
  
                            // Use update to add data
                            .update('Because I love coding')
  
                            // Use digest to get the hash value
                            .digest('hex');
  
// Prints the hash value
console.log("Hash Value : " + hash);

输出:

Hash Value : e0789790d7da870830a679828c722f74f3840d4a6483f5babfb62c4d19884c9e

参考: https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding