Making Toggles
#1
I am trying to generate 1-15 toggle rules.

I totally understand this is probably overkill and it defeats the purpose of this “optimised” attack, but I am just playing about with it as a sort of hobby. I only use very small wordlists so I can use these rules in a reasonably short attack time.

I am using these instructions for maskprocessor.

Code:
$ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles1.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles2.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles3.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles4.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles5.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles2.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles3.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles4.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles5.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles3.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles4.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles5.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles4.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles5.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles5.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles6.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles7.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles8.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles9.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles10.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles11.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles12.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles13.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles14.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule $ mp32.bin -1 0123456789ABCDE 'T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1T?1' | perl optimize_toggle.pl >> toggles15.rule

I am using atoms optimisation script.

Code:
#!/usr/bin/perl use strict; use warnings; my $db2; while (my $line = <>) { chomp ($line); my $db1; my $line_len = length ($line); my $i; for ($i = 0; $i < $line_len; $i += 2) { my $t = substr ($line, $i, 2); last if (exists $db1->{$t}); $db1->{$t} = undef; } next if ($i < $line_len); my @sorted_keys = sort keys %{$db1}; my $sorted_keys_s = join ("", @sorted_keys); next if (exists $db2->{$sorted_keys_s}); $db2->{$sorted_keys_s} = undef; print "$line\n"; }

What seems to be happening is that I generate up to 8 toggles fairly quickly but then things slow down to a crawl, I am talking running it for many days. I suspect it is all to do with the duplicate checking script. I suppose it is quite a task to check for all the possible combinations that could collide, but should it be taking this long ?

Anyone have an idea how I can speed this up or do I have to just leave it running ?
Reply


Messages In This Thread
Making Toggles - by Hash-IT - 01-08-2012, 01:25 AM
RE: Making Toggles - by atom - 01-08-2012, 12:25 PM
RE: Making Toggles - by Hash-IT - 01-08-2012, 08:30 PM
RE: Making Toggles - by atom - 01-10-2012, 11:46 AM
RE: Making Toggles - by Hash-IT - 01-10-2012, 03:32 PM