Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env nodejs
- var fs = require('fs');
- var file = fs.readFileSync(process.argv[2]);
- var filetext = file.toString('ascii');
- var passwords = filetext.split('\n');
- //console.log(passwords);
- var checks = [function hasUpper(password) {
- var uppers = 'QWERTYUIOPASDFGHJKLZXCVBNM';
- uppers = uppers.split('');
- for (var i = 0; i < uppers.length; i++) {
- if (password.includes(uppers[i])) {
- return true;
- }
- }
- return false;
- }, function hasLower(password) {
- var lowers = 'qwertyuiopasdfghjklzxcvbnm';
- lowers = lowers.split('');
- for (var i = 0; i < lowers.length; i++) {
- if (password.includes(lowers[i])) {
- return true;
- }
- }
- return false;
- }, function hasNumber(password) {
- var nums = '1234567890';
- nums = nums.split('');
- for (var i = 0; i < nums.length; i++) {
- if (password.includes(nums[i])) {
- return true;
- }
- }
- return false;
- }, function hasSpec(password) {
- var spec = '!@#$%^&*()`~-=_+[]{}|;\':"\\,./<>?';
- spec = spec.split('');
- for (var i = 0; i < spec.length; i++) {
- if (password.includes(spec[i])) {
- return true;
- }
- }
- return false;
- }, function maxlength(password) {
- var max = 20;
- return password.length <= max;
- }, function minlength(password) {
- var min = 8;
- return password.length >= min;
- }
- ];
- passwords.forEach(function (password) {
- var numChecksFail = 0;
- checks.forEach(function (check) {
- if (check(password) == false) {
- numChecksFail++;
- }
- });
- var outputstr = 'Password: (' + (password.length < 10 ? '0' + password.length : password.length) + ') ';
- var pout = function() {
- if (password.length == 20) {
- return password;
- } else if (password.length < 20) {
- do {
- password += ' ';
- } while (password.length !== 20)
- return password;
- } else {
- return password.substring(0,20);
- }
- }();
- outputstr += pout;
- outputstr += ' Status: ' + function getstat() {
- var temp = '';
- if (numChecksFail == 0) {
- return 'Passed all checks!';
- } else if (numChecksFail == 1) {
- return 'Failed 1 check';
- } else {
- return 'Failed ' + numChecksFail + ' checks';
- }
- }();
- console.log(outputstr);
- });
Add Comment
Please, Sign In to add comment