Javakurs/Übungsaufgaben/Crack the Password: Unterschied zwischen den Versionen
K (hat „Javakurs2007/Crack the Password“ nach „Javakurs2009/Crack the Password“ verschoben) |
|
(kein Unterschied)
|
Version vom 23. März 2009, 21:07 Uhr
Crack the Password!
Nachdem du dich erfolgreich in Prof. Peppers' Computer gehackt hast, stehst du jetzt vor der letzten Barriere, bevor du dir die Musterlösung pünktlich vor der Klausur saugen kannst.
Der folgende Code überprüft das Passwort, mit dem du dich einloggen kannst. Alles was du aus internen Quellen weißt, ist, dass es nur 4 gültige Zahlen zwischen 1 und 1000 gibt um dich einzuloggen.
Kopiere folgende Methode, die überprüft ob die Passworteingabe richtig war, in dein Programm.
public static boolean checkPasscode(int H4X0R){ // returns true if passcode is valid boolean result = false; for(int E1337=42; E1337<=(52^(0x6c)); E1337+=(3<<(14%6))){ if(result=((++E1337|E1337+(2>>>1))^(1+H4X0R))==(123456789&0)) break; } return result; }
- Finde die 4 gültigen Zahlen mittels Brute-Force und gib sie auf der Konsole aus (Brute-Force = Rohe Gewalt, darunter versteht man das simple Ausprobieren aller möglichen Kombinationen).
- Für die absoluten Cracks: Wie funktioniert der Algorithmus?
Hinweis: Eine Übersicht zu den verwendeten Java-Operatoren könnte nützlich sein: http://www.java-forum.org/java-faq-beitraege/1364-operatoren-ubersicht.html
Kommentare
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf "bearbeiten" und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)