|
|
|
@ -1,7 +1,7 @@ |
|
|
|
|
var rand = require('random-js'); |
|
|
|
|
var fs = require('fs') |
|
|
|
|
var dictionary; |
|
|
|
|
var randomEngine; |
|
|
|
|
var randomEngine = rand.engines.nativeMath; |
|
|
|
|
var random; |
|
|
|
|
|
|
|
|
|
var DictionaryGenerator = function(options) { |
|
|
|
@ -12,17 +12,15 @@ var DictionaryGenerator = function(options) { |
|
|
|
|
return done(Error('No dictionary path specified in options')); |
|
|
|
|
|
|
|
|
|
//Load dictionary
|
|
|
|
|
fs.readFile(options.path,'utf8',(err,data) => { |
|
|
|
|
fs.readFile(options.path, 'utf8', (err,data) => { |
|
|
|
|
if(err) throw err; |
|
|
|
|
dictionary = data.split(','); |
|
|
|
|
this.dictionary = data.split(','); |
|
|
|
|
|
|
|
|
|
//Remove any non alpha-numeric characters
|
|
|
|
|
for(var i = 0; i < dictionary.length; i++){ |
|
|
|
|
dictionary[i] = dictionary[i].replace(/\W/g,''); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
random = rand.integer(0,dictionary.length); |
|
|
|
|
randomEngine = rand.engines.nativeMath; |
|
|
|
|
for(var i = 0; i < this.dictionary.length; i++) |
|
|
|
|
this.dictionary[i] = this.dictionary[i].replace(/\W/g,''); |
|
|
|
|
|
|
|
|
|
this.random = rand.integer(0, this.dictionary.length); |
|
|
|
|
}); |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
@ -30,7 +28,7 @@ var DictionaryGenerator = function(options) { |
|
|
|
|
DictionaryGenerator.prototype.createKey = function(keyLength) { |
|
|
|
|
var text = ''; |
|
|
|
|
for(var i = 0; i < keyLength; i++) |
|
|
|
|
text += dictionary[random(randomEngine)]; |
|
|
|
|
text += this.dictionary[random(randomEngine)]; |
|
|
|
|
return text; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|