crypto.createHash() 메서드는 해시 개체를 만든 다음 반환합니다. 이 해시 객체는 주어진 알고리즘을 사용하여 해시 다이제스트를 생성하는 데 사용할 수 있습니다. 선택적 옵션은 스트림 동작을 제어하는 데 사용됩니다. XOF 및 'shake256'과 같은 일부 해시 함수의 경우 출력 길이가 원하는 출력 길이를 바이트 단위로 지정하는 데 사용됩니다.
구문
crypto.createHash(algorithm, [options])
매개변수
위의 매개변수는 다음과 같이 설명됩니다. -
-
알고리즘 – 이 알고리즘은 해시 다이제스트를 생성하는 데 사용됩니다. 입력 유형은 문자열입니다.
-
옵션 – 스트림 동작을 제어하는 데 사용할 수 있는 선택적 매개변수입니다.
예시
이름이 createHash.js인 파일을 만들고 아래 코드 스니펫을 복사합니다. 파일을 생성한 후 다음 명령을 사용하여 아래 예와 같이 이 코드를 실행하십시오 -
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);
출력
C:\home\node>> node createHash.js Hash Obtained is: 5f55ecb1ca233d41dffb6fd9e307d37b9eb4dad472a9e7767e8727132b784461
예시
예를 하나 더 살펴보겠습니다.
// 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}`); } });
출력
C:\home\node>> node createHash.js d1bd739234aa1ede5acfaccee657296ead1879644764f45be17466a9192c3967 /home/node/test/createHash.js