crypto.createHash()方法用于创建一个哈希对象,该哈希对象可通过使用所述算法创建哈希摘要。
用法:
crypto.createHash( algorithm, options )
参数:此方法接受两个参数,如avobe所述,如下所述:
- algorithm:它取决于平台上的OpenSSL版本所支持的可访问算法。它返回字符串。示例是sha256,sha512等。
- options:它是可选参数,用于控制流的行为。它返回一个对象。此外,对于XOF哈希函数(如“ shake256”),选项outputLength可用于确定所需的输出长度(以字节为单位)。
返回类型:它返回哈希对象。
以下示例说明了Node.js中crypto.createHash()方法的使用:
范例1:
// Node.js program to demonstrate the
// crypto.createHash() method
// Includes crypto module
const crypto = require('crypto');
// Defining key
const secret = 'Hi';
// Calling createHash method
const hash = crypto.createHash('sha256', secret)
// updating data
.update('How are you?')
// Encoding to be used
.digest('hex');
// Displays output
console.log(hash);
输出:
df287dfc1406ed2b692e1c2c783bb5cec97eac53151ee1d9810397aa0afa0d89
范例2:
// Node.js program to demonstrate the
// crypto.createHash() method
// Defining filename
const filename = process.argv[2];
// Includes crypto and fs module
const crypto = require('crypto');
const fs = require('fs');
// Creating Hash
const hash = crypto.createHash('sha256', 'Geeksforgeeks');
// Creating read stream
const input = fs.createReadStream(filename);
input.on('readable', () => {
// Calling read method to read data
const data = input.read();
if (data)
// Updating
hash.update(data);
else
{
// Encoding and displaying filename
console.log(`${hash.digest('base64')} ${filename}`);
}
});
console.log("Program done!");
输出:
Program done! n95mt3468ZzAIwu/bbNU7dej6CoFkDRcNaJo7rGpLF4= index.js
参考: https://nodejs.org/api/crypto.html#crypto_crypto_createhash_algorithm_options
相关用法
- Node.js GM quality()用法及代码示例
- Node.js GM resize()用法及代码示例
- Node.js GM chop()用法及代码示例
- Node.js GM drawPolyline()用法及代码示例
- Node.js GM raise()用法及代码示例
- Node.js GM paint()用法及代码示例
- Node.js GM flop()用法及代码示例
- Node.js GM segment()用法及代码示例
- Node.js GM drawArc()用法及代码示例
注:本文由纯净天空筛选整理自nidhi1352singh大神的英文原创作品 Node.js | crypto.createHash() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。