Fehler bei einfacher Textverschlüsselung
Übersicht

MuckBetreff: Fehler bei einfacher Textverschlüsselung |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich wollte relativ einfach meine Textdateien verschlüsseln. Die unten abgebildete Methode schien auch erst zu klappen, aber leider kommt es manchmal beim Speichern zu Zeilensprüngen etc., wodurch dann die Daten im A... sind. Kann man das verhindern oder gibt es noch eine bessere Methode?
Code: [AUSKLAPPEN] ; Namen laden ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Dim Namen$(100) datenfile = ReadFile("namen.dat") key = ReadLine$(datenfile) For a = 0 To 100 Namen$(a) = Text_Verschluesselung$(ReadLine$(datenfile),key) Next CloseFile datenfile ; Namen speichern ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; datenfile = WriteFile("namen.dat") key = Rand(0,1000000) ; zufälligen Key berechnen WriteLine datenfile, key For a = 0 To 100 WriteLine datenfile, Text_Verschluesselung$(Namen$(a),key) Next CloseFile datenfile Function Text_Verschluesselung$(txt$,key) For oft = 1 To Len(txt$) zeichen$ = Mid$(txt$,oft,1) txt_new$ = txt_new$+Chr$(Asc(zeichen$)Xor key) Next Return txt_new$ End Function |
||
Latte! Fußballmanagement pur |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
dein problem: du verschlüsselst ja zur zeit die zeilensprünge nicht. bb macht ja bei writeline die standardzeilenendzeichen ans ende. allerdings kann dir passieren, dass die verschlüsselten buchstaben auch ein zeilensprungzeichen ergeben. dadurch werden beim laden unter umständen andere zeilen eingelesen als beim speichern geschrieben wurden. da du halt beim speichern innerhalb der zeilen noch zeilensprungzeichen speicherst, die nur verschlüsselte normale zeichen sind.
das lässt sich allerdings vermeiden. z.b. kannste einfach writestring und readstring nehmen ^^. oder du speicherst erstmal als normales textfile und verschlüsselst dann zeichen für zeichen. ohne rücksicht auf zeilensprünge. ich sehe gerade dass dein key größer ist als das jeweils verschlüsselte zeichen. erscheint mir so irgendwie gefährlich. versuch mal rand(255) bei der keyerstelleung... sonst kommste möglicherweise auf zeichen außerhalb des byte/ascii-bereichs. das würde eine rückentschlüsselung echt erschweren ^^. |
||
MrKeks.net |
Muck |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Inarie, mein Held... Mit writestring geht es. ![]() |
||
Latte! Fußballmanagement pur |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group