Bruteforcer Code

Hi, also mir war heut im untterricht mal wieder langweilig und da hab ich mir gedacht ich schreib doch mal nen bruteforcer.

die idee des systems steckt eigentlich in der Funktionstabelle.

der algorithmus rechnet die werte der "eingänge" für die jeweilige zeile aus und somit kriegt man ganz schnell die zeilen die man will auch ohne die vorherigen zu wissen ^^


könnt ihr euch ja mal angucken und vll. die geschwindigkeit mit anderem vergleichen da ich dazu z.B. nicht gekommen bin. aber auf jeden fall kriegt das jede mögliche kombination aus den gegebenen daten raus.

außerdem könnt ihr nach belangen zeilen auslassen oder einfach in ner versetzen zeile starten

ich bin nicht verantwortlich wenn ihr mit scheiße baut ^^

( PS: damit kann man super die binären funktionstabellen eingänge malen xD )

Code:
//---------------------------------------------------------------------------

#pragma hdrstop
#include <math.h>
#include <iostream.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{

unsigned long Zeile;
//char Zeichen [] = {  '0', '1' };
char Zeichen[26*2+10];
for ( char i = 'a'; i <= 'z'; i ++ ){
Zeichen[i-97] = i;
}
for ( char i = 'A'; i <= 'Z'; i ++ ){
Zeichen[i-65+26] = i;
}
for ( char i = '0'; i <= '9'; i ++ ){
Zeichen[i+(2*26)-48] = i;
}
short AnzZeichenB = 2*26+10;// Anzahl Buchstaben
//short AnzZeichenB = 2;
short AnzZeichenW = 3;// Anzahl Zeichen im zu erstellenden String
/*
cout << "Zeile Angeben.\n";
cout << "Maximale Zeile = "<<pow(AnzZeichenB,AnzZeichenW)<<endl;
cin >> Zeile;
cout << endl;
*/

for ( Zeile = 1; Zeile <= powl(AnzZeichenB,AnzZeichenW); Zeile++){
for ( int i = 0; i < AnzZeichenW; i++ ){
        if ( Zeile > (powl(AnzZeichenB,AnzZeichenW)))break;// Falls ihr ohne die for schleife außen rum arbeitet das hier drinn lassen!

        unsigned long Calc =(((unsigned long)powl( AnzZeichenB, i ))*AnzZeichenB);
        unsigned long Temp = Zeile % Calc;
        //short Inside = Zeile / Calc;

        if ( i == 0 ){//Ist es die erste Spalte?
                if ( Temp == 0 )Temp = AnzZeichenB;
                cout << Zeichen[Temp-1];
        }else{
                if ( Temp == 0 ){// Wurde die Zahlenreihe noch nicht Wiederholt?
                        cout << Zeichen [AnzZeichenB-1];
                }else {

                        cout << Zeichen [((int)ceil(Temp/powl( AnzZeichenB, i )))-1];

                }

        }


        }
        cout << endl;
        }
        cout << "Bitte macht nicht den fehler die geschwindigkeit eines Programmes an der Textausgabe der Konsole zu messen.\n";
        system("pause");
        return 0;
}
//---------------------------------------------------------------------------

win. compilliert.
 
Bei mir kommt ein Fehler:
DIe Anwendung konnte nicht gestartet werden, weil CC3260M/.DLL nicht gefunden wurde. Neuinstallation der Anwenudung könnte das Problem beheben.
Danach geht Ein Schwarzes Feld auf und dann?
 
Original von Plaiia@Hbs
Bei mir kommt ein Fehler:
DIe Anwendung konnte nicht gestartet werden, weil CC3260M/.DLL nicht gefunden wurde. Neuinstallation der Anwenudung könnte das Problem beheben.
Danach geht Ein Schwarzes Feld auf und dann?

:rolleyes: <- sorry, aber mehr kann ich dazu nicht sagen.
 
Original von Plaiia@Hbs
Bei mir kommt ein Fehler:
DIe Anwendung konnte nicht gestartet werden, weil CC3260M/.DLL nicht gefunden wurde. Neuinstallation der Anwenudung könnte das Problem beheben.
Danach geht Ein Schwarzes Feld auf und dann?

also wenn du schon daran scheiterst, dann lass es lieber gleich

ach und gleich noch im bezug auf deinen anderen post:
falls du dieses programm zum bruteforcen von knuddels nehmen willst, dann viel spaß. da sage ich dir jetzt schon voraus, dass du scheitern wirst ;)
 
Zurück
Oben