Madeline B had an excellent point, so I moved your question to a new topic.Re: Confused with Python and Need Help Debugging
Postby Coolio12 » Wed Dec 24, 2014 10:45 am
I also had two questions:
1) What is different about password6?
2) How much would I have to change to crack a user-entered password?
Thank you in advance for any help.
Coolio12
Posts: 1
Joined: Mon Dec 22, 2014 9:17 am
Occupation: Student - 9th
Project Question: Python Password Cracker
Project Due Date: n/a
Project Status: I am conducting my research
I'll answer your questions like this. The point of the project is to come up with an algorithm that can guess what someone's password might be. How does it do that? There's the brute force way where you just try every possible password but the math points out how time consuming that would be. One of my accounts has a 24 character gibberish password - it would take multiple lifetimes for a fast computer to guess it that way. You can also guess passwords by using dictionaries and the project comes with a sample dictionary of passwords that people have been known to use. Try those and combine them in different ways and maybe you can guess the passwords that way. The project asks you to research methods that people use to create passwords and then design a program that figures out what people picked. So, armed with a few methods, the program provided can guess 5 of the 6 sample passwords provided. The 6th one can't be easily guessed by just running the program as-is. Why? Maybe it's a number but has more than 4 digits. Maybe it's a word or a combination of words, but not words in the sample dictionary. Maybe it's gibberish but uses characters not in the sample 62-char wheels. Who knows? If I tell you what's special about it, I'll be giving away the secret. I will tell you that it's not some outrageous string of gibberish like "JnL<U3zJbd#4K}se$&hE&E$$%+r[b<" or "fHSH<(!'Wh&Hr?T#`PpsE'FA49:$]e" which would be awesome passwords but would take millennia for a laptop computer to guess by brute force. If you can figure out ways that I might have come up with a password that's easy to remember but hard for you to guess, you can make some pretty simple modifications to one of the existing methods and then the program should find it pretty quickly.
So: 1) The method I used to generate it is different than the others. I can't say any more than that.
2) How much you have to change depends on how the user picked the password and unfortunately, you don't really know that. If they picked a 5 digit number, you simply have to tweak the suitcase lock method to try 5 digit numbers. If they picked the password "ScienceBuddies", you would just have to add "Science" and "Buddies" to your dictionary. What you're trying to do is understand (through your research) how people think about passwords and then tweak the program accordingly. If it were easy, passwords wouldn't be useful at all.
I hope that helps even though that's not really the answer you expected.
Howard