![]() |
Fehler bei XOR-Verschlüsslung?
Ich habe folgenden Code:
Delphi-Quellcode:
der einen String verschlüsselt. Leider wird das - und alles was darauf folgt verschluckt??? Warum?
function SimpleCryptString(const S, Key: string): string;
var i, j: Integer; C: Byte; P: PByte; begin SetLength(Result, Length(S)); P := PByte(Result); j := 1; for i := 1 to Length(S) do begin C := Ord(S[i]); C := C xor Ord(Key[j]); P^ := C; Inc(P); Inc(j); if j > Length(Key) then j := 1; end; end; Bspw: Ich will test-test.de verschlüsseln. Wenn ich das Resultat wieder entschlüssle bekomme ich folgendes test Danke Mfg Tobi |
Re: Fehler bei XOR-Verschlüsslung?
Zitat:
Delphi-Quellcode:
;)
function SimpleCryptString(const S, Key: string): string;
var i: integer; begin setLength(result, length(s)); for i := 1 to length(s) do result[i] := chr(ord(S[i]) xor ord(Key[i mod length(Key) + 1])); end; greetz Mike |
Re: Fehler bei XOR-Verschlüsslung?
Suuuper danke! Funktoniert!
Mfg |
Re: Fehler bei XOR-Verschlüsslung?
In deinem Code wird mir leider die 1 verschluckt :stupid:
Mfg Tobi |
Re: Fehler bei XOR-Verschlüsslung?
Zitat:
Kann man natuerlich auch aendern:
Delphi-Quellcode:
greetz
result[i] := chr(ord(S[i]) xor ord(Key[(i - 1) mod length(Key) + 1]));
Mike |
Re: Fehler bei XOR-Verschlüsslung?
öhm, ne ich meinte folgendes:
"web47f1" verschlüssle ich und das entschlüsselte ist dann aber "web47f" Mfg Tobi |
Re: Fehler bei XOR-Verschlüsslung?
Zitat:
Die Funktion ist korrekt; man muss aber darauf achten, das der verschlüsselte String auch Chr(0) enthalten kann. Wenn man den verschlüsselten Text speichern möchte (z.B. in INI-Datei, Datenbank) sollte man zusätzlich noch BASE64 kodieren. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz