Non so se avete letto il mio post di prima…
Comunque lo sfizio di creare un generatore di dizionario per brute-force me lo volevo togliere…
Ed eccolo qua:
<?php
$z=explode(' ',microtime());
$z=$z[0]+$z[1];
$l=8;
$a=array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',0,1,2,3,4,5,6,7,8,9);
$b=count($a);
$u=fopen("dizionario.txt", "w+");
for($c=0; $c<$b; $c++) { ## 1
$m=$a[$c];
for($d=0; $d<$b; $d++) { ## 2
$n=$a[$d];
for($e=0; $e<$b; $e++) { ## 3
$o=$a[$e];
for($f=0; $f<$b; $f++) { ## 4
$p=$a[$f];
for($g=0; $g<$b; $g++) { ## 5
$q=$a[$g];
for($h=0; $h<$b; $h++) { ## 6
$r=$a[$h];
for($i=0; $i<$b; $i++) { ## 7
$s=$a[$i];
for($j=0; $j<$b; $j++) { ## 8
$w=$m.$n.$o.$p.$q.$r.$s.$a[$j];
fwrite($u, $w."n");
}
}
}
}
}
}
}
}
$x="#";
$y=explode(' ',microtime());
$y=$y[0]+$y[1];
$v=$y-$z;
fwrite($u, "$x Generated in $v");
fclose($u);
Se non siete pazzi come me non fatelo girare, a meno che non abbiate 23,092060626TiB di spazio libero e tanto tempo da sprecare…
Infatti, questo script crea un documento di testo con tutte le combinazioni alfanumeriche (caratteri latini minuscoli solo, per fortuna) di 8 caratteri…
Ma facciamo un po’ di calcoli alla mano…
Numero di combinazioni: 368=2821109907456
Vale a dire 22568879259648 caratteri senza gli a capo
Quindi 25389989167104 byte il file con gli a capo
Ovvero 24794911296 KiB
Perciò 24213780,5625 MiB
Che equivale a 23646,270080566GiB
Come dire 23,092060626TiB
In pratica, è impossibile farlo…
Se prima finiva la memoria, adesso uno dei due processori è sempre al 100%…
Io dopo un bel po’ di minuti di elaborazione sono arrivato a aacou58n e a 1,2GiB.
Più precisamente a 1308793590byte…
Vedete un po’ voi…