Passwörter Cracker(Hacker) Programm

Moin Leute,

erstmal vielen Dank für eure Interesse und Zeit. Das Problem ist dass ich schon seit drei Tagen an diesem Programm sitze und nicht weiterkomme. Es soll ein Programm sein dass das eingegebene Passwort errät. Doch irgendwie errät es immer nur den Anfangsbuchstaben und macht das solange wie das eingegebene Passwort Zeichen hat .

Es wäre sehr hilfreich wenn mir jemand das Problem komplett lösen könnte also den richtigen Quellcode hierher kopiert ist auch keine Hausaufgabe oder so ich mach das freiheitlich nur habe ich komplett die Übersicht und die Nerven verloren
 

Anhänge

  • Screenshot_20181124-152638.png
    Screenshot_20181124-152638.png
    141,7 KB · Aufrufe: 139
  • Screenshot_20181124-152631.png
    Screenshot_20181124-152631.png
    178,6 KB · Aufrufe: 133
  • Screenshot_20181124-152623.png
    Screenshot_20181124-152623.png
    200 KB · Aufrufe: 137

mihe7

Top Contributor
erstmal vielen Dank für eure Interesse und Zeit.
Man soll den Tag nicht vor dem Abend loben :)

Zu den Screenshots: Du programmierst auf einem Android-Gerät?!?

Besser ist es, wenn Du Deinen Code direkt hier reinkopierst und zwischen Code-Tags setzt: [code=Java]Dein Code[/code]

Es soll ein Programm sein dass das eingegebene Passwort errät.
Du hast also eine "geheime" Zeichenkette und möchtest ein Programm schreiben, das nun alle Kombinationen von Zeichen eines definierten Zeichenvorrats durchprobiert, bis eine Kombination der "geheimen" Zeichenkette entspricht?
 
public class playground {

public static void main(String[] args) {

Scanner scan = new Scanner(System.in);
Random rand = new Random();

String kiste= "abcdefghijklmnopqrstuvwxyz";

String password;
password = scan.nextLine();

int laenge = password.length();
int zaehler = 0;
int x = 0;
int wortLaenge = 0;
int tester = 0;
int zaehlerX = 1;
int counter = 0;
char einzel =' ';
int y = 1;

String wort = "";

while(!wort.equals(password)){
x++;

y++;

while(zaehlerX > counter){

einzel = password.charAt(counter);
System.out.println("sigi: " + einzel);



tester = 0;

counter++;

}

while(wortLaenge != laenge || tester != 1){


while(zaehlerX > counter){

einzel = password.charAt(zaehler);
System.out.println("sigi: " + einzel);
}




char einzel2 = kiste.charAt(rand.nextInt(kiste.length()));
System.out.println("alk: " + einzel2);


if(einzel == einzel2){
wort = wort + einzel2;
wortLaenge = wort.length();
System.out.println("Wort: " + wort);
tester = 1;
}

zaehler++;


}
zaehlerX++;
}

}
}
Ja im Moment auf einem Android Gerät
Alles richtig erfasst
 
X

Xyz1

Gast
Wie wärs mit nem anderem Nickname?
Unsere Zeit mit sinnlosen Screenshots zu vergeuden ist eine Frechheit.
Du hast also eine "geheime" Zeichenkette und möchtest ein Programm schreiben, das nun alle Kombinationen von Zeichen eines definierten Zeichenvorrats durchprobiert, bis eine Kombination der "geheimen" Zeichenkette entspricht
Das Programm kann sagen ob das i-te Zeichen (1<=i<=n) richtig ist, das ist kein Passwort das ist Nonsense.
 
[public class playground {]

public static void main(String[] args) {

Scanner scan = new Scanner(System.in);
Random rand = new Random();

String kiste= "abcdefghijklmnopqrstuvwxyz";

String password;
password = scan.nextLine();

int laenge = password.length();
int zaehler = 0;
int x = 0;
int wortLaenge = 0;
int tester = 0;
int zaehlerX = 1;
int counter = 0;
char einzel =' ';
int y = 1;

String wort = "";

while(!wort.equals(password)){
x++;

y++;

while(zaehlerX > counter){

einzel = password.charAt(counter);
System.out.println("sigi: " + einzel);



tester = 0;

counter++;

}

while(wortLaenge != laenge || tester != 1){


while(zaehlerX > counter){

einzel = password.charAt(zaehler);
System.out.println("sigi: " + einzel);
}




char einzel2 = kiste.charAt(rand.nextInt(kiste.length()));
System.out.println("alk: " + einzel2);


if(einzel == einzel2){
wort = wort + einzel2;
wortLaenge = wort.length();
System.out.println("Wort: " + wort);
tester = 1;
}

zaehler++;


}
zaehlerX++;
}

}
}
Wie wärs mit nem anderem Nickname?
Unsere Zeit mit sinnlosen Screenshots zu vergeuden ist eine Frechheit.

Das Programm kann sagen ob das i-te Zeichen (1<=i<=n) richtig ist, das ist kein Passwort das ist Nonsense.
Ja tut mir leid ich bin halt blutiger Anfänger
 
@DerAhnungsloseHeini mach dir keine Sorgen .. nur weil du keine Code-Tags genutzt hast wird dir trotzdem noch wer antworten. @DerWissende übertreibt manchmal etwas ;)
Code-Tags machst du, indem du deinen Java-Code zwischen [code=Java]Dein Code[/code] schreibst :)
Ich kugle mich gerade auf dem Boden - @DerAhnungsloseHeini das macht @DerWissende gerne bei neuen Mitgliedern. Eigentlich fehlt noch die Geschichte mit dem Erschleichen von Leistungen :D
Erstes mal dass ich so verzweifelt bin und Hilfe in einem Forum suche und dann sowas... Ich hab noch nie was von diesen Code Tags gehört
 
[public class ]playground {

[public static void main(String[] args)] {

[Scanner] scan = [new Scanner(System.in);]
[Random] rand = [new Random();]

[String] kiste= "abcdefghijklmnopqrstuvwxyz";

[String] password;
password = [scan.nextLine();]

[int] laenge = password.[length();]
[int] zaehler = 0;
[int] x = 0;
[int] wortLaenge = 0;
[int] tester = 0;
[int] zaehlerX = 1;
[int] counter = 0;
[char] einzel =' ';
[int] y = 1;

[String] wort = "";

[while]([!]wort[.equals](password)){
x++;

y++;

[while](zaehlerX > counter){

einzel = password.[charAt](counter);
[ System.out.println]("sigi: " + einzel);



tester = 0;

counter++;

}

[while](wortLaenge [!= ]laenge[ || ]tester [!=] 1){


[while](zaehlerX > counter){

einzel = password.[charAt](zaehler);
[ System.out.println]("sigi: " + einzel);
}




char einzel2 = kiste.[charAt](rand.[nextInt](kiste.[length]()));
[System.out.println]("alk: " + einzel2);


[ if](einzel == einzel2){
wort = wort + einzel2;
wortLaenge = wort[.length();]
[ System.out.println]("Wort: " + wort);
tester = 1;
}

zaehler++;


}
zaehlerX++;
}

}
}

So jetzt müsste es ja Antworten hageln hoffentlich
 
Moin Leute,

erstmal vielen Dank für eure Interesse und Zeit. Das Problem ist dass ich schon seit drei Tagen an diesem Programm sitze und nicht weiterkomme. Es soll ein Programm sein dass das eingegebene Passwort errät. Doch irgendwie errät es immer nur den Anfangsbuchstaben und macht das solange wie das eingegebene Passwort Zeichen hat .

Es wäre sehr hilfreich wenn mir jemand das Problem komplett lösen könnte also den richtigen Quellcode hierher kopiert ist auch keine Hausaufgabe oder so ich mach das freiheitlich nur habe ich komplett die Übersicht und die Nerven verloren

[public class ]playground {

[public static void main(String[] args)] {

[Scanner] scan = [new Scanner(System.in);]
[Random] rand = [new Random();]

[String] kiste= "abcdefghijklmnopqrstuvwxyz";

[String] password;
password = [scan.nextLine();]

[int] laenge = password.[length();]
[int] zaehler = 0;
[int] x = 0;
[int] wortLaenge = 0;
[int] tester = 0;
[int] zaehlerX = 1;
[int] counter = 0;
[char] einzel =' ';
[int] y = 1;

[String] wort = "";

[while]([!]wort[.equals](password)){
x++;

y++;

[while](zaehlerX > counter){

einzel = password.[charAt](counter);
[ System.out.println]("sigi: " + einzel);



tester = 0;

counter++;

}

[while](wortLaenge [!= ]laenge[ || ]tester [!=] 1){


[while](zaehlerX > counter){

einzel = password.[charAt](zaehler);
[ System.out.println]("sigi: " + einzel);
}




char einzel2 = kiste.[charAt](rand.[nextInt](kiste.[length]()));
[System.out.println]("alk: " + einzel2);


[ if](einzel == einzel2){
wort = wort + einzel2;
wortLaenge = wort[.length();]
[ System.out.println]("Wort: " + wort);
tester = 1;
}

zaehler++;


}
zaehlerX++;
}

}
}
 
Moin Leute,

erstmal vielen Dank für eure Interesse und Zeit. Das Problem ist dass ich schon seit drei Tagen an diesem Programm sitze und nicht weiterkomme. Es soll ein Programm sein dass das eingegebene Passwort errät. Doch irgendwie errät es immer nur den Anfangsbuchstaben und macht das solange wie das eingegebene Passwort Zeichen hat .

Es wäre sehr hilfreich wenn mir jemand das Problem komplett lösen könnte also den richtigen Quellcode hierher kopiert ist auch keine Hausaufgabe oder so ich mach das freiheitlich nur habe ich komplett die Übersicht und die Nerven verloren
[public class ]playground {

[public static void main(String[] args)] {

[Scanner] scan = [new Scanner(System.in);]
[Random] rand = [new Random();]

[String] kiste= "abcdefghijklmnopqrstuvwxyz";

[String] password;
password = [scan.nextLine();]

[int] laenge = password.[length();]
[int] zaehler = 0;
[int] x = 0;
[int] wortLaenge = 0;
[int] tester = 0;
[int] zaehlerX = 1;
[int] counter = 0;
[char] einzel =' ';
[int] y = 1;

[String] wort = "";

[while]([!]wort[.equals](password)){
x++;

y++;

[while](zaehlerX > counter){

einzel = password.[charAt](counter);
[ System.out.println]("sigi: " + einzel);



tester = 0;

counter++;

}

[while](wortLaenge [!= ]laenge[ || ]tester [!=] 1){


[while](zaehlerX > counter){

einzel = password.[charAt](zaehler);
[ System.out.println]("sigi: " + einzel);
}




char einzel2 = kiste.[charAt](rand.[nextInt](kiste.[length]()));
[System.out.println]("alk: " + einzel2);


[ if](einzel == einzel2){
wort = wort + einzel2;
wortLaenge = wort[.length();]
[ System.out.println]("Wort: " + wort);
tester = 1;
}

zaehler++;


}
zaehlerX++;
}

}
}
 

mihe7

Top Contributor
LOL - was machst Du da? Du musst einfach nur einmal "[ code=java ]" ohne Anführungs- und Leerzeichen vor Deinen Code setzen und darunter "[ /code ]".
 

Chips199

Mitglied
Du musst bei dem
Java:
while (wortLaenge != laenge || tester!=1) {
statt "oder" "und" nehmen also:
Java:
while (wortLaenge != laenge && tester!=1) {
Außerdem kannst du auch statt tester mit 0 und 1 zu bestücken auch einen Boolean nehmen.
 

Neue Themen


Oben