Método Node.js crypto.createHash()

El método crypto.createHash() se usa para crear un objeto Hash que se puede usar para crear resúmenes de hash usando el algoritmo indicado. 

Sintaxis:

crypto.createHash( algorithm, options )

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación:

  • algoritmo: Depende de los algoritmos accesibles que son favorecidos por la versión de OpenSSL en la plataforma. Devuelve string. Los ejemplos son sha256 , sha512 , etc.
  • opciones: es un parámetro opcional y se usa para controlar el comportamiento de la transmisión. Devuelve un objeto. Además, para funciones hash XOF como ‘shake256’, la opción outputLength se puede usar para determinar la longitud de salida requerida en bytes.

Tipo de retorno: Devuelve el objeto Hash

Los siguientes ejemplos ilustran el uso del método crypto.createHash() en Node.js: 

Ejemplo 1: 

javascript

// 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);

Producción:

df287dfc1406ed2b692e1c2c783bb5cec97eac53151ee1d9810397aa0afa0d89

Ejemplo 2: 

javascript

// Node.js program to demonstrate the    
// crypto.createHash() method
 
// Defining filename
const filename = process.argv[1];
 
// 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!");

Producción:

Program done!
n95mt3468ZzAIwu/bbNU7dej6CoFkDRcNaJo7rGpLF4= index.js

Referencia: https://nodejs.org/api/crypto.html#crypto_crypto_createhash_algorithm_options

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *