How to list supported Ciphers, Hashes, and Curves for Crypto in Node.JS

Not a complicated task. Here is the code:

var crypto = require('crypto');

console.log();
console.log('[ SUPPORTED CIPHERS ]\n')
console.log(crypto.getCiphers());

console.log();
console.log('[ SUPPORTED HASHES ]\n')
console.log(crypto.getHashes());

console.log();
console.log('[ SUPPORTED CURVES ]\n')
console.log(crypto.getCurves());
Your output should be similar to this:
E:\Codes\NodeJS\Cryptography>node listAllAlgorithms.js

[ SUPPORTED CIPHERS ]

[ 'CAST-cbc',
 'aes-128-cbc',
 'aes-128-cbc-hmac-sha1',
 'aes-128-cbc-hmac-sha256',
 'aes-128-ccm',
 'aes-128-cfb',
 'aes-128-cfb1',
 'aes-128-cfb8',
 'aes-128-ctr',
 'aes-128-ecb',
 'aes-128-gcm',
 'aes-128-ofb',
 'aes-128-xts',
 'aes-192-cbc',
 'aes-192-ccm',
 'aes-192-cfb',
 'aes-192-cfb1',
 'aes-192-cfb8',
 'aes-192-ctr',
 'aes-192-ecb',
 'aes-192-gcm',
 'aes-192-ofb',
 'aes-256-cbc',
 'aes-256-cbc-hmac-sha1',
 'aes-256-cbc-hmac-sha256',
 'aes-256-ccm',
 'aes-256-cfb',
 'aes-256-cfb1',
 'aes-256-cfb8',
 'aes-256-ctr',
 'aes-256-ecb',
 'aes-256-gcm',
 'aes-256-ofb',
 'aes-256-xts',
 'aes128',
 'aes192',
 'aes256',
 'bf',
 'bf-cbc',
 'bf-cfb',
 'bf-ecb',
 'bf-ofb',
 'blowfish',
 'camellia-128-cbc',
 'camellia-128-cfb',
 'camellia-128-cfb1',
 'camellia-128-cfb8',
 'camellia-128-ecb',
 'camellia-128-ofb',
 'camellia-192-cbc',
 'camellia-192-cfb',
 'camellia-192-cfb1',
 'camellia-192-cfb8',
 'camellia-192-ecb',
 'camellia-192-ofb',
 'camellia-256-cbc',
 'camellia-256-cfb',
 'camellia-256-cfb1',
 'camellia-256-cfb8',
 'camellia-256-ecb',
 'camellia-256-ofb',
 'camellia128',
 'camellia192',
 'camellia256',
 'cast',
 'cast-cbc',
 'cast5-cbc',
 'cast5-cfb',
 'cast5-ecb',
 'cast5-ofb',
 'des',
 'des-cbc',
 'des-cfb',
 'des-cfb1',
 'des-cfb8',
 'des-ecb',
 'des-ede',
 'des-ede-cbc',
 'des-ede-cfb',
 'des-ede-ofb',
 'des-ede3',
 'des-ede3-cbc',
 'des-ede3-cfb',
 'des-ede3-cfb1',
 'des-ede3-cfb8',
 'des-ede3-ofb',
 'des-ofb',
 'des3',
 'desx',
 'desx-cbc',
 'id-aes128-CCM',
 'id-aes128-GCM',
 'id-aes128-wrap',
 'id-aes192-CCM',
 'id-aes192-GCM',
 'id-aes192-wrap',
 'id-aes256-CCM',
 'id-aes256-GCM',
 'id-aes256-wrap',
 'id-smime-alg-CMS3DESwrap',
 'idea',
 'idea-cbc',
 'idea-cfb',
 'idea-ecb',
 'idea-ofb',
 'rc2',
 'rc2-40-cbc',
 'rc2-64-cbc',
 'rc2-cbc',
 'rc2-cfb',
 'rc2-ecb',
 'rc2-ofb',
 'rc4',
 'rc4-40',
 'rc4-hmac-md5',
 'seed',
 'seed-cbc',
 'seed-cfb',
 'seed-ecb',
 'seed-ofb' ]

[ SUPPORTED HASHES ]

[ 'DSA',
 'DSA-SHA',
 'DSA-SHA1',
 'DSA-SHA1-old',
 'RSA-MD4',
 'RSA-MD5',
 'RSA-MDC2',
 'RSA-RIPEMD160',
 'RSA-SHA',
 'RSA-SHA1',
 'RSA-SHA1-2',
 'RSA-SHA224',
 'RSA-SHA256',
 'RSA-SHA384',
 'RSA-SHA512',
 'dsaEncryption',
 'dsaWithSHA',
 'dsaWithSHA1',
 'dss1',
 'ecdsa-with-SHA1',
 'md4',
 'md4WithRSAEncryption',
 'md5',
 'md5WithRSAEncryption',
 'mdc2',
 'mdc2WithRSA',
 'ripemd',
 'ripemd160',
 'ripemd160WithRSA',
 'rmd160',
 'sha',
 'sha1',
 'sha1WithRSAEncryption',
 'sha224',
 'sha224WithRSAEncryption',
 'sha256',
 'sha256WithRSAEncryption',
 'sha384',
 'sha384WithRSAEncryption',
 'sha512',
 'sha512WithRSAEncryption',
 'shaWithRSAEncryption',
 'ssl2-md5',
 'ssl3-md5',
 'ssl3-sha1',
 'whirlpool' ]

[ SUPPORTED CURVES ]

[ 'Oakley-EC2N-3',
 'Oakley-EC2N-4',
 'brainpoolP160r1',
 'brainpoolP160t1',
 'brainpoolP192r1',
 'brainpoolP192t1',
 'brainpoolP224r1',
 'brainpoolP224t1',
 'brainpoolP256r1',
 'brainpoolP256t1',
 'brainpoolP320r1',
 'brainpoolP320t1',
 'brainpoolP384r1',
 'brainpoolP384t1',
 'brainpoolP512r1',
 'brainpoolP512t1',
 'c2pnb163v1',
 'c2pnb163v2',
 'c2pnb163v3',
 'c2pnb176v1',
 'c2pnb208w1',
 'c2pnb272w1',
 'c2pnb304w1',
 'c2pnb368w1',
 'c2tnb191v1',
 'c2tnb191v2',
 'c2tnb191v3',
 'c2tnb239v1',
 'c2tnb239v2',
 'c2tnb239v3',
 'c2tnb359v1',
 'c2tnb431r1',
 'prime192v1',
 'prime192v2',
 'prime192v3',
 'prime239v1',
 'prime239v2',
 'prime239v3',
 'prime256v1',
 'secp112r1',
 'secp112r2',
 'secp128r1',
 'secp128r2',
 'secp160k1',
 'secp160r1',
 'secp160r2',
 'secp192k1',
 'secp224k1',
 'secp224r1',
 'secp256k1',
 'secp384r1',
 'secp521r1',
 'sect113r1',
 'sect113r2',
 'sect131r1',
 'sect131r2',
 'sect163k1',
 'sect163r1',
 'sect163r2',
 'sect193r1',
 'sect193r2',
 'sect233k1',
 'sect233r1',
 'sect239k1',
 'sect283k1',
 'sect283r1',
 'sect409k1',
 'sect409r1',
 'sect571k1',
 'sect571r1',
 'wap-wsg-idm-ecid-wtls1',
 'wap-wsg-idm-ecid-wtls10',
 'wap-wsg-idm-ecid-wtls11',
 'wap-wsg-idm-ecid-wtls12',
 'wap-wsg-idm-ecid-wtls3',
 'wap-wsg-idm-ecid-wtls4',
 'wap-wsg-idm-ecid-wtls5',
 'wap-wsg-idm-ecid-wtls6',
 'wap-wsg-idm-ecid-wtls7',
 'wap-wsg-idm-ecid-wtls8',
 'wap-wsg-idm-ecid-wtls9' ]

Leave a Comment

Your email address will not be published. Required fields are marked *