Phương thức crypto.createHash () sẽ tạo một đối tượng băm và sau đó trả về nó. Đối tượng băm của nó có thể được sử dụng để tạo thông báo băm bằng cách sử dụng thuật toán đã cho. Các tùy chọn tùy chọn được sử dụng để kiểm soát hành vi luồng. Đối với một số hàm băm như XOF và 'lắc256', độ dài đầu ra được sử dụng để chỉ định độ dài đầu ra mong muốn tính bằng byte.
Cú pháp
crypto.createHash(algorithm, [options])
Tham số
Các thông số trên được mô tả như bên dưới -
-
thuật toán - Thuật toán này được sử dụng để tạo ra các bản phân tích băm. Loại đầu vào là chuỗi.
-
tùy chọn - Đây là các tham số tùy chọn có thể được sử dụng để kiểm soát hành vi của luồng.
Ví dụ
Tạo một tệp với tên - createHash.js và sao chép đoạn mã bên dưới. Sau khi tạo tệp, sử dụng lệnh sau để chạy mã này như được hiển thị trong ví dụ bên dưới -
node createHash.js
createHash.js
// crypto.createHash() demo example // Importing crypto module const crypto = require('crypto'); // Deffining the secret key const secret = 'TutorialsPoint'; // Initializing the createHash method using secret const hashValue = crypto.createHash('sha256', secret) // Data to be encoded .update('Welcome to TutorialsPoint !') // Defining encoding type .digest('hex'); // Printing the output console.log("Hash Obtained is: ", hashValue);
Đầu ra
C:\home\node>> node createHash.js Hash Obtained is: 5f55ecb1ca233d41dffb6fd9e307d37b9eb4dad472a9e7767e8727132b784461
Ví dụ
Hãy xem thêm một ví dụ.
// crypto.createHash() demo example // Importing crypto module const crypto = require('crypto'); const fs = require('fs'); // Getting the current file path const filename = process.argv[1]; // Creting hash for current path using secret const hash = crypto.createHash('sha256', "TutorialsPoint"); const input = fs.createReadStream(filename); input.on('readable', () => { // Reading single element produced by hash stream. const val = input.read(); if (val) hash.update(val); else { console.log(`${hash.digest('hex')} ${filename}`); } });
Đầu ra
C:\home\node>> node createHash.js d1bd739234aa1ede5acfaccee657296ead1879644764f45be17466a9192c3967 /home/node/test/createHash.js