crypt(3) for Node.js
Install using npm install crypt3 and use:
Promise version using Q library
varcrypt=require('crypt3/q');crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh','$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/').then(function(value){if(value!=='$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/'){console.error('Access denied!');return;}}).fail(function(err){
...
});varcrypt=require('crypt3/async');crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh','$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/',function(err,value){if(err){
...
return;}if(value!=='$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/'){console.error('Access denied!');return;}});varcrypt=require('crypt3/sync');if(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh','$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/')!=='$1$SrkubyRm$DEQU3KupUxt4yfhbK1HyV/'){console.error('Access denied!');return;}Use crypt(key[, salt]):
console.log(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh'));// Salt generated automatically using default SHA512console.log(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh',crypt.createSalt('md5')));// MD5 saltconsole.log(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh',crypt.createSalt('blowfish')));// Blowfish salt (only some Linux distros)console.log(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh',crypt.createSalt('sha256')));// SHA-256, glibc2 onlyconsole.log(crypt('6Xz7sS6fEmnWScMb6Ayf363e5cdqF4Kh',crypt.createSalt('sha512')));// SHA-512, glibc2 onlyUse crypt.createSalt([type=sha512]) where type is one of md5, blowfish, sha256 or sha512 (default).
Please note that this library does not work on Windows, and usually has a limited functionality on other *NIX systems other than Linux.
You can buy commercial support from Sendanor.