|
You last visited: Today at 23:45
Advertisement
[S] Jemand der ahnung von Java hat
Discussion on [S] Jemand der ahnung von Java hat within the General Coding forum part of the Coders Den category.
04/04/2012, 00:07
|
#1
|
elite*gold: 360
Join Date: Jun 2010
Posts: 131
Received Thanks: 14
|
[S] Jemand der ahnung von Java hat
Also,
ich hab ein java source im inet gefunden.
Ich würde des ganze jetzt gerne mit einer anderen sprache schreiben, dazu sollte ich aber natürlich wissen, was das script die reihe nach macht.
Hier ist es, schreibt bitte einfach und detaliert hin, was es der reihe nach macht.
PHP Code:
import java.io.DataInputStream; import java.io.File; import java.io.FileInputStream; import java.util.Random; import javax.crypto.Cipher; import javax.crypto.CipherInputStream; import javax.crypto.SecretKey; import javax.crypto.SecretKeyFactory; import javax.crypto.spec.PBEKeySpec; import javax.crypto.spec.PBEParameterSpec;
public class main { public static void main(String [] args) { try { String appdata = System.getenv("APPDATA"); if (appdata != null) { Random random = new Random(43287234L); byte[] salt = new byte[8]; random.nextBytes(salt); //Looked up what Minecraft uses, turns out they use this common form of encryption with the Java API PBEParameterSpec pbeParamSpec = new PBEParameterSpec(salt, 5); SecretKey pbeKey = SecretKeyFactory.getInstance("PBEWithMD5AndDES").generateSecret(new PBEKeySpec("passwordfile".toCharArray())); Cipher cipher = Cipher.getInstance("PBEWithMD5AndDES"); cipher.init(2, pbeKey, pbeParamSpec); File location = new File(appdata, ".minecraft"); File passFile = new File(location, "lastlogin"); DataInputStream dis = null; if (cipher != null) { dis = new DataInputStream(new CipherInputStream(new FileInputStream(passFile), cipher)); } else { dis = new DataInputStream(new FileInputStream(passFile)); } System.out.println(dis.readUTF() + ":" + dis.readUTF()); dis.close(); } else { System.out.println("The system env. APPDATA was not found, probably not running Windows?"); } } catch (Exception ex) { } } }
Achso, dass ist dazu da, das passwort, das von minecraft angelegt wurde in der datei "lastlogin" zu entschlüsseln. Hab nämlich mein pw vergessen. Auf dem Konto sind nämlich noch viel gift codes gespeichert.
|
|
|
04/04/2012, 00:18
|
#2
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Das würde mich sehr wundern, da Passwörter i.d.R. als Hashes gespeichert werden und nicht entschlüsselbar sind.
|
|
|
04/04/2012, 01:04
|
#3
|
elite*gold: 360
Join Date: Jun 2010
Posts: 131
Received Thanks: 14
|
Also ich hab des ganze mal umgeschrieben und die passwörter sind in hashes gespechert. Aber des bekommt des ganze schon hin.
Keine Ahnung wie, deswegen wollte ich ja mahl fragen ...
|
|
|
04/04/2012, 01:28
|
#4
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Hashes lassen sich nicht entschlüsseln, dass ist eine Eigenschaften.
Das einzige, was ich mir vorstellen könnte, ist, dass diese Hashes in der Datei nochmal verschlüsselt sind und dann halt durch dieses Programm entschlüsselt und ausgelesen werden können, aber in der Ausgabe wird sich dennoch ein Hash wiederfinden.
Den könntest du höchstens mithilfe von Hash Cracking Services (oder einem Programm auf dem lokalen PC, wobei das langsamer wäre) versuchen, eine Kollision bzw. das Passwort zu finden, welches den Hash erzeugt.
|
|
|
04/04/2012, 10:57
|
#5
|
elite*gold: 10
Join Date: May 2006
Posts: 2,786
Received Thanks: 773
|
Das meiste wirst du wahrscheinlich schon gewusst haben, aber die Details der Verschlüsselungsalgorithmen kannst du selber rauslesen, bin ich gerad zu faul für..
Cipher - Wikipedia, the free encyclopedia
PHP Code:
public static void main(String[] args) { try { String appdata = System.getenv("APPDATA"); //Pfad zum AppData\\Roaming Verzeichnis
if (appdata != null) //Wenn Pfad existiert { Random random = new Random(43287234L); //Zufallszahl mit Seed byte[] salt = new byte[8]; random.nextBytes(salt); //Lade Zufallsbytes in Array
//Looked up what Minecraft uses, turns out they use this common form of encryption with the Java API
PBEParameterSpec pbeParamSpec = new PBEParameterSpec(salt, 5); //Parameter für Verschlüsselungsalgorythmus SecretKey pbeKey = SecretKeyFactory.getInstance("PBEWithMD5AndDES").generateSecret(new PBEKeySpec("passwordfile".toCharArray())); //Erstellt den geheimen Schlüssel Cipher cipher = Cipher.getInstance("PBEWithMD5AndDES"); //Returns a Cipher object that implements the specified transformation. cipher.init(2, pbeKey, pbeParamSpec); //Initializes this cipher with a key and a set of algorithm parameters.
File location = new File(appdata, ".minecraft"); //Erstelle .minecraft Ordner im appdata Pfad von oben File passFile = new File(location, "lastlogin"); //Erstelle Die Datei lastlogin im .minecraft Ordner DataInputStream dis = null;
if (cipher != null) { dis = new DataInputStream(new CipherInputStream(new FileInputStream(passFile), cipher)); //Verschlüsselter Stream, schreibt die verschlüsselten Passwörter in die Textfile } else { dis = new DataInputStream(new FileInputStream(passFile)); //Klartext Sream, schreibt leeres File, wenn das Laden des Cipher Moduls fehlgeschlagen ist }
System.out.println(dis.readUTF() + ":" + dis.readUTF()); //Ausgabe des Dateiinhalts dis.close(); //Schließe Stream } else { System.out.println("The system env. APPDATA was not found, probably not running Windows?"); } } catch (Exception ex) { } }
|
|
|
04/04/2012, 11:26
|
#6
|
elite*gold: 360
Join Date: Jun 2010
Posts: 131
Received Thanks: 14
|
Ok danke,
jetzt muss ich nurnoch die eine Zeile rausbekommen.
MfG AirCoreOne
#Closed
|
|
|
04/04/2012, 19:04
|
#7
|
elite*gold: 0
Join Date: Jul 2010
Posts: 388
Received Thanks: 196
|
Quote:
Originally Posted by AirCoreOne
Ok danke,
jetzt muss ich nurnoch die eine Zeile rausbekommen.
MfG AirCoreOne
#Closed
|
Selbst wenn du das "rausbekommst" (was nebenbei gesagt eine sehr dumme Ausdrucks - und Verfahrensweise ist, denn entweder du kannst Code lesen oder nicht, das ist kein Hexenwerk, das ist die Benutzung von APIs), wirst du immer noch eine Crypto API Sammlung für deine Sprache finden müssen, die das gleiche leistet (für dich vielleicht sogar machbar) und diese dann in der selben Weise nutzen (für dich nicht machbar, du schaffst es ja nicht 'mal 20 Zeilen Java Code zu lesen).
|
|
|
04/04/2012, 21:35
|
#8
|
elite*gold: 360
Join Date: Jun 2010
Posts: 131
Received Thanks: 14
|
Ich kann java nicht, kann aber vb, n teil c++, c# und phyton
Außerdem versteh ich den code, bis auf eine zeile und des ist die
SecretKeyFactory.getInstance("PBEWithMD5AndDES").g enerateSecret(new PBEKeySpec("passwordfile".toCharArray()));
|
|
|
04/04/2012, 21:42
|
#9
|
elite*gold: 0
Join Date: Jul 2010
Posts: 388
Received Thanks: 196
|
Quote:
Originally Posted by AirCoreOne
Ich kann java nicht, kann aber vb, n teil c++, c# und phyton
Außerdem versteh ich den code, bis auf eine zeile und des ist die
|
Nein tust du nicht an der Zeile gibt's nichts zu verstehen, wenn du den Nutzen der APIs nicht aus dem Kontext und den Funktionsnamen herleiten kannst schaust du dir die Doku an, aber das kriegst du ja scheinbar auch nicht hin. Und behauptest dann du könntest irgendeine Programmiersprache. "Einen Teil C++". Entweder man kann etwas oder nicht. Und ein paar Fenster in VS zusammenzuklicken und Code reinzupasten ist nicht programmieren.
|
|
|
 |
Similar Threads
|
Hat jemand ne ahnung davon?
04/10/2011 - WarRock - 4 Replies
Hi leuts,
hab mir neuen laptop gekauft (windows 7 64 bit), und jetzt habe dafür ein problem mit ein paar injectoren bzw. mit hack starten. bei manchen injectoren steht immer nachm runterladen; "könnte nicht geöffnet werden, unbekannter fehler" und habe eben net framework 4.0 installiert, bringt auch nichts, beim alten gehen sie aber, was muss ich denn noch runterladen oder machen?
Danke für die hilfe
|
[Suche]Jemand mit ahnung vom Lazybot
12/06/2010 - World of Warcraft Trading - 1 Replies
Hallo,
Ich suche jemand der ahnung vom lazybot hat und mir das alles so einstellen kann das ich leveln kann!
Ich habe einen 66 DK den ich gerne damit leveln Würde
|
Wann hat jemand Erfahrung/Ahnung?
09/12/2010 - Off Topic - 30 Replies
Hey lieber Community,
ich wollt euch gern mal fragen was ihr von solchen Sprüchen haltet:
Oft finde ich hier solche Posts, jedoch wenn man mal überlegt soll ElitePvPers und eigentlich sowie alle anderen Foren sei es ein Forum für P Server oder ein anderes Forum wie epvp eine Community dastellen, die sich gegenseitig hilft, unterstützt und freundlich zu einander sind.
Ich selber bin 14 Jahre alt.
Auch ich bekomme oft gesagt ich bin:
|
jemand der ahnung von pservern hat
06/16/2010 - Metin2 Private Server - 5 Replies
suche jemanden der weis wie ich die neuen waffen und so weiter und neue maps entbuggen kann also wer das alles für mich machen kann das wäre sehr nett x3
|
All times are GMT +1. The time now is 23:45.
|
|