Hab darüber leider keine Informationen gefunden ob das normal ist und ich ihm immer nur wenige Zeichen zum ändern geben soll, oder ob das ein Bug im Source ist.
Verschlüsselung:
Diese soll die Levelinformationen verschlüsseln und in das File en.des schreiben.
Diese enthält danach:
Also liegt es wohl zu 99.9% Warscheinlichkeit daran, da der Plaintext 30 * 25 * 2 Zeichen hat.
Aber zur Sicherheit mal das was es entschlüsseln soll:
Dieses soll die (verschlüsselten) Daten aus dem angegebenen File lesen, es in ein anderes File schreiben, dieses auslesen und das File wieder löschen.
Aber ich erhalte immer nur die ersten 4 Zeichen zurück. Kann mir bitte wer sagen woran das liegt?
Verschlüsselung:
Java:
public void encrypt(String value, String key) throws Exception
{
Cipher c = Cipher.getInstance("DES");
Key k = new SecretKeySpec(key.getBytes(), "DES");
c.init( Cipher.ENCRYPT_MODE, k );
c.update(value.getBytes());
OutputStream out = new FileOutputStream("en.des");
CipherOutputStream cos = new CipherOutputStream(out, c);
cos.close();
}
Diese soll die Levelinformationen verschlüsseln und in das File en.des schreiben.
Diese enthält danach:
Code:
ã.`ü…ž«õ
Also liegt es wohl zu 99.9% Warscheinlichkeit daran, da der Plaintext 30 * 25 * 2 Zeichen hat.
Aber zur Sicherheit mal das was es entschlüsseln soll:
Java:
public String decryptfilecontent(String file, String key)
{
try
{
BufferedReader in;
in = new BufferedReader(new FileReader(file));
String value = in.readLine();
Cipher c = Cipher.getInstance("DES");
Key k = new SecretKeySpec(key.getBytes(), "DES");
c.init(Cipher.DECRYPT_MODE, k);
c.update(value.getBytes());
CipherOutputStream cos = new CipherOutputStream(new FileOutputStream("des"), c);
cos.close();
String sammle = "";
in = new BufferedReader(new FileReader("des"));
while((value = in.readLine()) != null)
sammle = sammle + "" + value;
File f = new File("des");
f.delete();
return(sammle);
}
catch(Exception e)
{
e.printStackTrace();
}
return(null);
}
Dieses soll die (verschlüsselten) Daten aus dem angegebenen File lesen, es in ein anderes File schreiben, dieses auslesen und das File wieder löschen.
Aber ich erhalte immer nur die ersten 4 Zeichen zurück. Kann mir bitte wer sagen woran das liegt?