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.
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.
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)
{
}
}
}