The point of this python noteboook is to see how accurate KNN and Naive Bayes are to choosing good and bad passwords
Features
We were only provided a data set that had two features which were passwords and the strength
Calvin Ng and Arturo Delgado decided to add multiple features that differentiate a password.
Final Features
Passwords : The password that is entered
Strength : The Strength is in categories of 0=bad, 1 = medium, 2 = excellent
UpperCase : How many Uppercases in the password
LowerCase : How many LowerCase in the password
Numbers : How many Numbers are in the password
SpecialCharacter: How many Special Characters(symbol) there are in the password
Length : The overall length of the password
Naive Bayes Accuracy: 0.979797300829767 Training time: 0.126115083694458s
Kth Nearest Neighbor Accuracy: 0.9995966928816293 Training time: 121.39090991020203s
Decision Tree Accuracy: 0.9996415047836705 Training time: 0.3149373531341553s
** https://www.kaggle.com/bhavikbb/password-strength-classifier-dataset data used for jupyter notebook**