Originariamente inviato da gygabyte017
Esatto!
Se visualizzi tutte le combinazioni a video, sprechi moltissimo tempo inutilmente (la visualizzazione e' lentissima ...).
Non devi usare la printf per tutte le parole generate ...

Originariamente inviato da gygabyte017
In che senso?

Quello che sto facendo per esercizio è il bruteforce (che non è ILLEGALE sperimentarlo, è illegale usarlo per sapere cose che la legge non ti consente di sapere), dell'algoritmo RIPEMD-160. Ho trovato i sorgenti del calcolo dell'hash su internet.
Infatti non ti ho detto che e' illegale. Ma che e' un terreno molto "scivoloso" proprio perche' si passa facilmente nell'illegale ...

Originariamente inviato da gygabyte017
Inserendo un contatore x ogni verifica hashcalcolato==hashesatto, e mostrando a video il progresso ogni volta che i%500000==0, vedo che ci mette circa 1 secondo ogni 500000password.
Vi chiedevo come posso ottimizzare la routine.
Beh, tanto per cominciare, si puo' scrivere

codice:
for (test[0]='a'; test[0]<='z'; test[0]++)
  for (test[1]='a'; test[1]<='z'; test[1]++)
    for (test[2]='a'; test[2]<='z'; test[2]++)
      for (test[3]='a'; test[3]<='z'; test[3]++)
        for (test[4]='a'; test[4]<='z'; test[4]++)
        {
          i++;
               
          printf("%d\n%s\n",i,test);
        }
eliminando le (inutili) variabili di passaggio e i tempi relativi al loro uso ...