Guten Tag Zusammen
Ich habe ein Problem mit Folgendem Code, der zu einem ICQ Passwort Wiederherstlelungstool gehört.
Die Kommandozeilenausgabe gibt auch schon Auskunft über das Problem.
Wie man in den erstne Zeilen der Ausgabe erkennt, wird z.b die in ASCII Kodierte Zahl 1 in
der setBrute Methode Ausgegeben und auch gespeichert.
In der run Methode des Thread wird jedoch als erstes ASCII zeichen die Zahl 2 Ausgegeben.
Die Methode setBrute() wird dabei von einer Oberklasse nur Aufgerufen,
wen die Variable needBrute == true ist.
Die Ausgabe in der Kommandozeile
Danke im Vorraus
Ich habe ein Problem mit Folgendem Code, der zu einem ICQ Passwort Wiederherstlelungstool gehört.
Die Kommandozeilenausgabe gibt auch schon Auskunft über das Problem.
Wie man in den erstne Zeilen der Ausgabe erkennt, wird z.b die in ASCII Kodierte Zahl 1 in
der setBrute Methode Ausgegeben und auch gespeichert.
In der run Methode des Thread wird jedoch als erstes ASCII zeichen die Zahl 2 Ausgegeben.
Die Methode setBrute() wird dabei von einer Oberklasse nur Aufgerufen,
wen die Variable needBrute == true ist.
Java:
private class MD5Creator extends Thread {
private boolean needBrute = true;
private byte Brute[];
void setBrute(byte BruteS[]) {
System.out.println("setBrute: \t" + new String(BruteS));
this.Brute = BruteS;
this.needBrute = false;
}
public void run() {
while (!HashCracked) {
if (needBrute == false) {
System.out.println("In Run: \t" + new String(Brute));
if (MD5Hash.equals(MD5Java.hash(Brute))) {
FinalBrute = String.valueOf(new String(Brute));
HashCracked = true;
break;
}
needBrute = true;
}
else {
try {Thread.sleep(1);}
catch (InterruptedException e) {}
}
}
}
}
Die Ausgabe in der Kommandozeile
Code:
setBrute: 1
In Run: 2
setBrute: 2
In Run: 3
setBrute: 3
In Run: 4
setBrute: 4
In Run: 5
setBrute: 5
In Run: 6
setBrute: 6
In Run: 7
setBrute: 7
In Run: 8
setBrute: 8
In Run: 9
setBrute: 9
In Run: 0
setBrute: 0
In Run: a
setBrute: a
In Run: b
setBrute: b
In Run: c
setBrute: c
In Run: d
setBrute: d
In Run: e
setBrute: e
In Run: f
setBrute: f
In Run: g
setBrute: g
In Run: h
setBrute: h
In Run: i
setBrute: i
In Run: j
setBrute: j
In Run: k
setBrute: k
In Run: l
setBrute: l
In Run: m
setBrute: m
In Run: n
setBrute: n
In Run: o
setBrute: o
In Run: p
setBrute: p
In Run: q
setBrute: q
In Run: r
setBrute: r
In Run: s
setBrute: s
In Run: t
setBrute: t
In Run: u
setBrute: u
In Run: v
setBrute: v
In Run: w
setBrute: w
In Run: x
setBrute: x
In Run: y
setBrute: y
In Run: z
setBrute: z
In Run: A
setBrute: A
In Run: B
setBrute: B
In Run: C
setBrute: C
In Run: D
setBrute: D
In Run: E
setBrute: E
In Run: F
setBrute: F
In Run: G
setBrute: G
In Run: H
setBrute: H
In Run: I
setBrute: I
In Run: J
setBrute: J
In Run: K
setBrute: K
In Run: L
setBrute: L
In Run: M
setBrute: M
In Run: N
setBrute: N
In Run: O
setBrute: O
In Run: P
setBrute: P
In Run: Q
setBrute: Q
In Run: R
setBrute: R
In Run: S
setBrute: S
In Run: T
setBrute: T
In Run: U
setBrute: U
In Run: V
setBrute: V
In Run: W
setBrute: W
In Run: X
setBrute: X
In Run: Y
setBrute: Y
In Run: Z
setBrute: Z
In Run: Z
Danke im Vorraus