in reply to Re^3: Attempting to create a brute-force wordlist
in thread Attempting to create a brute-force wordlist

True, but that is why I want to limit the numbers of characters to between 8 and 12. That would reduce the number considerably, and still make a pretty good dictionary.
  • Comment on Re^4: Attempting to create a brute-force wordlist

Replies are listed 'Best First'.
Re^5: Attempting to create a brute-force wordlist
by zwon (Abbot) on Sep 20, 2009 at 17:08 UTC

    That doesn't make any sense to me, but maybe this (not very efficient) script will give you some ideas:

    #!/usr/bin/perl use 5.010; use strict; use warnings; use Convert::AnyBase; my $a = 0; my $base = Convert::AnyBase->new(set => '02468acez'); say $base->encode($a++) while "there's some disk space";
Re^5: Attempting to create a brute-force wordlist
by dsheroh (Monsignor) on Sep 21, 2009 at 11:33 UTC
    I don't think you quite understood zwon's comment... There are 36^10 words composed of exactly 10 characters from [0-9a-z]. "Limiting" the number of characters to between 8 and 12 increases the number of combinations to 36^8 + 36^9 + 36^10 + 36^11 + 36^12, which adds up to 4873763581670522880 words.

    Assuming an average of 10 characters per word (which is low, as there are many more 12-character combinations than 8-character combinations, but I'm not going to bother calculating the actual average length), plus a separator to divide them, that makes 4873763581670522880 * 11 = 53611399398375751680 bytes, or about 46.5 exabytes (or 48.8 million terabytes, if you prefer that unit).

    Personally, I don't know anyone who has a few exabytes of spare disk sitting around to store all those words.

    There's also the minor detail that, if you're generating a billion words per second, it would take 154 years to create all the 8-12 character combinations, even without writing them to disk.