Node.js has an in-built crypto module and which can be used to run code using Javascript. This page implements a range of hashing method.
Node.js Crypto Hash |
Theory
A sample run is:
Data: hello DSA aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d DSA-SHA aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d DSA-SHA1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d DSA-SHA1-old aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d RSA-MD4 866437cb7a794bce2b727acc0362ee27 RSA-MD5 5d41402abc4b2a76b9719d911017c592 RSA-MDC2 4517036cf97b2407d6fe22aa5ab878a3 RSA-RIPEMD160 108f07b8382412612c048d07d13f814118445acd RSA-SHA ac62a630ca850b4ea07eda664eaecf9480843152 RSA-SHA1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d RSA-SHA1-2 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d RSA-SHA224 ea09ae9cc6768c50fcee903ed054556e5bfc8347907f12598aa24193 RSA-SHA256 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 RSA-SHA384 59e1748777448c69de6b800d7a33bbfb9ff1b463e44354c3553bcdb9c666fa90125a3c79f90397bdf5f6a13de828684f RSA-SHA512 9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043 dsaEncryption aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d dsaWithSHA aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d dsaWithSHA1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d dss1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d ecdsa-with-SHA1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d md4 866437cb7a794bce2b727acc0362ee27 md4WithRSAEncryption 866437cb7a794bce2b727acc0362ee27 md5 5d41402abc4b2a76b9719d911017c592 md5WithRSAEncryption 5d41402abc4b2a76b9719d911017c592 mdc2 4517036cf97b2407d6fe22aa5ab878a3 mdc2WithRSA 4517036cf97b2407d6fe22aa5ab878a3 ripemd 108f07b8382412612c048d07d13f814118445acd ripemd160 108f07b8382412612c048d07d13f814118445acd ripemd160WithRSA 108f07b8382412612c048d07d13f814118445acd rmd160 108f07b8382412612c048d07d13f814118445acd sha ac62a630ca850b4ea07eda664eaecf9480843152 sha1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d sha1WithRSAEncryption aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d sha224 ea09ae9cc6768c50fcee903ed054556e5bfc8347907f12598aa24193 sha224WithRSAEncryption ea09ae9cc6768c50fcee903ed054556e5bfc8347907f12598aa24193 sha256 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 sha256WithRSAEncryption 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 sha384 59e1748777448c69de6b800d7a33bbfb9ff1b463e44354c3553bcdb9c666fa90125a3c79f90397bdf5f6a13de828684f sha384WithRSAEncryption 59e1748777448c69de6b800d7a33bbfb9ff1b463e44354c3553bcdb9c666fa90125a3c79f90397bdf5f6a13de828684f sha512 9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043 sha512WithRSAEncryption 9b71d224bd62f3785d96d46ad3ea3d73319bfbc2890caadae2dff72519673ca72323c3d99ba5c11d7c7acc6e14b8c5da0c4663475c2e5c3adef46f73bcdec043 shaWithRSAEncryption ac62a630ca850b4ea07eda664eaecf9480843152 ssl2-md5 5d41402abc4b2a76b9719d911017c592 ssl3-md5 5d41402abc4b2a76b9719d911017c592 ssl3-sha1 aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d whirlpool 0a25f55d7308eca6b9567a7ed3bd1b46327f0f1ffdc804dd8bb5af40e88d78b88df0d002a89e2fdbd5876c523f1b67bc44e9f87047598e7548298ea1c81cfd73
The following is some sample code
var crypto = require("crypto"); function showhash(password, type) { hash = crypto.createHash(type); hash.update(password); console.log(type,"\t",hash.digest('hex')); } var data = "hello"; const args = process.argv.slice(3); console.log("Data:\t",data); data = args[0]; console.log("Data:\t",data+"\n"); showhash(data,'DSA'); showhash(data,'DSA-SHA'); showhash(data,'DSA-SHA1'); showhash(data,'DSA-SHA1-old'); showhash(data,'RSA-MD4'); showhash(data,'RSA-MD5'); showhash(data,'RSA-MDC2'); showhash(data,'RSA-RIPEMD160'); showhash(data,'RSA-SHA'); showhash(data,'RSA-SHA1'); showhash(data,'RSA-SHA1-2'); showhash(data,'RSA-SHA224'); showhash(data,'RSA-SHA256'); showhash(data,'RSA-SHA384'); showhash(data,'RSA-SHA512'); showhash(data,'dsaEncryption'); showhash(data,'dsaWithSHA'); showhash(data,'dsaWithSHA1'); showhash(data,'dss1'); showhash(data,'ecdsa-with-SHA1'); showhash(data,'md4'); showhash(data,'md4WithRSAEncryption'); showhash(data,'md5'); showhash(data,'md5WithRSAEncryption'); showhash(data,'mdc2'); showhash(data,'mdc2WithRSA'); showhash(data,'ripemd'); showhash(data,'ripemd160'); showhash(data,'ripemd160WithRSA'); showhash(data,'rmd160'); showhash(data,'sha'); showhash(data,'sha1'); showhash(data,'sha1WithRSAEncryption'); showhash(data,'sha224'); showhash(data,'sha224WithRSAEncryption'); showhash(data,'sha256'); showhash(data,'sha256WithRSAEncryption'); showhash(data,'sha384'); showhash(data,'sha384WithRSAEncryption'); showhash(data,'sha512'); showhash(data,'sha512WithRSAEncryption'); showhash(data,'shaWithRSAEncryption'); showhash(data,'ssl2-md5'); showhash(data,'ssl3-md5'); showhash(data,'ssl3-sha1'); showhash(data,'whirlpool');