Verschlüsseln und FileWrite

Evory

Mitglied
Hallo zusammen!

Ich habe ein Problem mit binären Zeichfolgen.
Und zwar habe ich einen Key, welchen ich codiere und anschließend mit gzip verschlüssel. Das Ergebniss speichere ich in einen String ab (Bsp.: ‹=ÁÁ). Wenn ich diesen String direkt entschlüsseln lasse im selben Programmablauf, dann bekomme ich auch wieder den richtigen Key (Hallo) zurück:
String BLA = "Hallo";
System.out.println(komprimieren.compressGZIP(BLA));
String A = komprimieren.compressGZIP(BLA);
System.out.println(dekomprimieren.decompressGZIP(A));
Wenn ich aber jetzt diesen String in eine Datei schreiben will, wird ein falscher String eingetragen:
File file = new File("c:/key.doc");
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
String eintrag = "Hallo";
eintrag = komprimieren.compressGZIP(eintrag);
bw.write(eintrag);
bw.newLine();
bw.flush();
bw.close();
Wenn ich deisen wieder auslesen will, wird nie der ganze String ausgelesen, sondern nur Teile und total der Quatsch:
File file = new File("C:\\key.doc");
BufferedReader br = new BufferedReader(new FileReader(file));
String A;
A = br.readLine();
System.out.println(A);
br.close();

Ich glaube ich müsste irgendwie einen "BinärString" oder sowas haben (mit String to Int funktioniert es nicht, da kommt immer eine 0 raus ^^).

Hoffe mir dann da irgendwie jemand weiter helfen!
Vielen Dank im Voraus!!
 

agentone

Bekanntes Mitglied
String.getBytes(String charset)
und dann mit DataOutputStream und writeByte() schreiben

DataInputStream und readByte()
und dann mit new String(byte[] bytes, String charset) einen neuen String erstellen

Für charset beides mal den selben wert nehmen, zum beispiel "utf-8"
 

Michael...

Top Contributor
Schreibe doch mal die Bytes mit FileOutputStream o.ä. direkt raus. Glaube nicht, dass ein BufferedWriter für sowas geeignet ist.
Gleiches gilt dann auch beim Einlesen --> z.B. mit FileInputStream statt BufferedReader

BufferedReader/Writer sind eigentlich zum Lesen und schreiben von Text gedacht, was der verschlüsselte String vermutlich nicht mehr ist.
 

FArt

Top Contributor
Und zwar habe ich einen Key, welchen ich codiere und anschließend mit gzip verschlüssel.
Mit gzip verschlüsseln???

Du speicherst binäre Datein in einem String? Das solltest du nicht machen. Das Encoding des "Textes" wird dir binäre Daten höchstwahrscheinlich zerstören. Schreibe binäre Daten in ein byte-Array und schreibe dieses auf die Platte... und lies es wieder ein.
 

FArt

Top Contributor
Wenn man darunter versteht, eine Kodierung in eine andere Kodierung zu übersetzen, ist das nicht verkehrt. Wenn man krypografieren oder kryptografisch verschlüsseln möchte, ist gzip so verkehrt wie polnische Landwurst in vegatarischer Gemüsesuppe.

Die Basis einer sinnvollen Kommunikation ist ein gemeinsamer Wortschatz.
gzip komprimiert. Für eine Verschlüsselung fehlt ein wichtiger Bestandteil: der oder die Schlüssel.
 

agentone

Bekanntes Mitglied
Der Einfacheinheit halber kannst du auch einfach Schlüssel und Daten XOR byteweise miteinander codieren. Aber das reicht dir vermutlich nicht...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H String verschlüsseln - eigener Algorithmus Java Basics - Anfänger-Themen 104
L Verschlüsseln mit bouncing castle Java Basics - Anfänger-Themen 1
I SHA512 verschlüsseln und dann wieder auslesen? Java Basics - Anfänger-Themen 35
T String simpel aber sicher verschlüsseln Java Basics - Anfänger-Themen 5
U Passwort verschlüsseln schlägt fehl Java Basics - Anfänger-Themen 3
L Text verschlüsseln Java Basics - Anfänger-Themen 13
S Strings verschlüsseln und entschlüsseln?! Java Basics - Anfänger-Themen 6
H Erste Schritte Verschlüsseln Java Basics - Anfänger-Themen 13
O Java Dateien verschlüsseln? Java Basics - Anfänger-Themen 22
B String verschlüsseln - Applet - ohne BASE64 Java Basics - Anfänger-Themen 7
R Server-Daten sichern/verschlüsseln Java Basics - Anfänger-Themen 10
P Sensible Daten Speichern/Verschlüsseln von serialisiertem Objekt Java Basics - Anfänger-Themen 5
-horn- Java-Bytecode und Outputs verschlüsseln? Java Basics - Anfänger-Themen 3
S String mit Hilfe von Array verschlüsseln Java Basics - Anfänger-Themen 19
F Algorithm zum Verschlüsseln und Entschlüsseln Java Basics - Anfänger-Themen 6
S Nummern verschlüsseln, prüfen ob vorhanden in Datenbank Java Basics - Anfänger-Themen 2
B Strings verschlüsseln Java Basics - Anfänger-Themen 6
H verschlüsseln von daten Java Basics - Anfänger-Themen 2
D daten verschlüsseln Java Basics - Anfänger-Themen 4
D Passwort verschlüsseln mit MD5 Java Basics - Anfänger-Themen 30
A MD5 verschlüsseln Java Basics - Anfänger-Themen 3
A DSA und Base64 Verschlüsseln und Entschlüsseln Java Basics - Anfänger-Themen 4
S "Verschlüsseln" anderer Dateien! Java Basics - Anfänger-Themen 19
L Datei verschlüsseln Java Basics - Anfänger-Themen 9
E Swing FileWrite?? Java Basics - Anfänger-Themen 3
C BufferedReader und FileWrite Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben