Files
30-seconds-of-code/snippets/hash-node.md
Angelos Chalaris 61200d90c4 Kebab file names
2023-04-27 21:58:35 +03:00

975 B

title, tags, cover, firstSeen, lastUpdated
title tags cover firstSeen lastUpdated
Calculate SHA-256 hash (Node.js) node,promise padlocks 2018-01-17T14:09:01+02:00 2021-10-13T19:29:39+02:00

Creates a hash for a value using the SHA-256 algorithm. Returns a promise.

  • Use crypto.createHash() to create a Hash object with the appropriate algorithm.
  • Use hash.update() to add the data from val to the Hash, hash.digest() to calculate the digest of the data.
  • Use setTimeout() to prevent blocking on a long operation. Return a Promise to give it a familiar interface.
const crypto = require('crypto');

const hashNode = val =>
  new Promise(resolve =>
    setTimeout(
      () => resolve(crypto.createHash('sha256').update(val).digest('hex')),
      0
    )
  );
hashNode(JSON.stringify({ a: 'a', b: [1, 2, 3, 4], foo: { c: 'bar' } })).then(
  console.log
);
// '04aa106279f5977f59f9067fa9712afc4aedc6f5862a8defc34552d8c7206393'