I am creating a word list for attacking a personal .dmg file on OS X. I'm using John the Ripper for the cracking, and Crunch to create the word list:

./crunch 13 13 abcdefghijklmnopqrstuvwxyz 123456789\`\~\!\@\#\$\%\^\&\*\(\)\_\+\=\-\[\]\{\}\\\|\"\'\:\;\<\,\>\.\?\/ -t @@@@@%%%FOOBA -o /dictionary.txt
  • FOOBA: The word that I know.
  • %%: A combo of a letter and a special characters
  • @@@@@: I'm 98% sure this is a five letter word. I'm positive it's an english word (in lower case).

This creates a 15GB dictionary which isn't really practical with my computer setup. To reduce the size I'd like to cross check the entries for the the first portion (@@@@@) against a decent dictionary.

Having made the dictionary of a GAZILLION words, any thoughts about how to best remove those options not in the dictionary?


It was easier to create two different lists and combined them, i think. In Python:

import itertools
b = ['11FOOBA', '12FOOBA', 'etc....']
a = ['aahed', 'aalii', 'aargh', 'aarti', 'etc...........']

combined = [f + l for f, l in itertools.product(a, b)]

thefile = open('test.txt', 'w')
for item in combined:
  thefile.write("%s\n" % item)


I think using crunch is a strange choice, and given that 15GB is too large...

John the Ripper has 'rules' for permutating on passwords.


  • Thank you for the suggestion - I did look at John the Ripper ... as I recall it was painfully slow in comparison to other applications that you could feed dictionaries to. Perhaps I don't know how to use it - but even if forked a number of times until my computer was burning hot, it never approached a speed that could crack something in this lifetime. – Cesium Salami Feb 26 '17 at 0:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.