+55 minutes in Generating Dictionary for 194GB
#10
Yeah, in this very specific situation it might be best to have a fast (standalone) password generator (a c file, perl script etc which only generates passwords according to your "rules").

According to your posts above, you already have generated a list of password candidates.
I'm just wondering why it is THAT huge (194 GB).

Are you sure that each password candidate within this huge dictionary file fits your rules?
Are there more than 3 words (lets say Camille, Ernest, Savannah) you want to try ?
194 GB seems to be a little bit too much for "just" 3 words!

It would also make sense to make some tests first, e.g. to create a new ethereum account (with known password, or even one with similar password) and test the perl script I provided.

Furthermore, what is also very important to test first:
1. check the speed (e.g. with a small set of password candidates, and profile it) and get a feeling how long it would take (is it feasible at all or does it take thousands of years o.O)
2. make sure that you use all your CPU power (e.g. use something like "cat myhugefile.txt | parallel --pipe ./ethereum_pbkdf2.pl"
3. it's also important which algorithm was used to generate the account/keys: Is it pbkdf2 or scrypt ? This might make a huge difference and you should probably change your strategy also depending on this.

I suggest to approach it like this:
1. first make sure that you either have a perfectly working password generator that doesn't generate any password candidates that shouldn't be tried (i.e. try to reduce the input from 194 GB to something more feasible) or the pre-generated word list (that meets all the rules)
2. make sure that you get a feeling about how long it would take (worst case), make sure that you know if scrypt or pbkdf2 is used as the main algorithm!
3. make sure that everything works on a test account
4. make sure that you understand what needs to be changed within the perl script (mac, ciphertext, and the scrypt params or pbkdf2 params) and that you modified everything correctly

As said, it might be possible to add this to hashcat. Well, scrypt is a little bit more GPU-unfriendly and it's not sure if it makes too much difference (compared to a very fast CPU cluster)... pbkdf2 is a different story.

Hope these thoughts help at least a little bit.

P.S. you mentioned 3 words, these specific 3 words concatenated together make up a length of 21. I'm not yet sure why you mention that the password is 23 to 25 characters long. Maybe the example words are not the real ones... that's not that important... but it's actually important how many words need to be tried etc... maybe you can explain this a little bit more (e.g. how many base words and how you end up with a lenght of 25, are there any separators between the words etc?)


Messages In This Thread
RE: +55 minutes in Generating Dictionary for 194GB - by philsmd - 04-08-2017, 09:32 AM