diff --git a/lib/secure-random-string.js b/lib/secure-random-string.js index 972e5f9..e15dbdf 100644 --- a/lib/secure-random-string.js +++ b/lib/secure-random-string.js @@ -9,7 +9,7 @@ function srs(options, cb) { } var length = options['length'] || 32; - + var alphanumeric = options['alphanumeric'] || false; // async path if (cb) { crypto.randomBytes(length, function(err, buf) { @@ -26,7 +26,11 @@ function srs(options, cb) { function _finish (buf) { var string = buf.toString('base64'); - string = string.replace(/\//g,'_').replace(/\+/g,'-'); + if (alphanumeric === true){ + string = string.replace(/[\W_]+/g,''); + }else{ + string = string.replace(/\//g,'_').replace(/\+/g,'-'); + } return string.substr(0, length); }