![]() |
Text verschlüsseln ohne kömische Symbole !
Hallo,
hier ist eine einfache Funktion. Sie verschlüsselt den Text aber ich erhalte mansch mal keine deutsche Buchstaben z.B. : 12345 bekomme ich 5JfQ !!! Wo soll ich den Code ändern, damit ich immer normale Tastatur Symbole damit jeder das Ergebnis eintippen kann :mrgreen:
Delphi-Quellcode:
function strEncrypt(const S: String; Key: Word): String;
var I: Integer; const C1 = 52845; C2 = 22719; begin {$IFDEF Win32} SetLength(Result,Length(S)); {$ELSE} Result[0]:=Chr(Length(S)); {$ENDIF} for I := 1 to Length(S) do begin Result[I] := Char(Ord(S[I]) xor (Key shr 8)); Key := (Ord(Result[I]) + Key) * C1 + C2; end; end; |
Re: Text verschlüsseln ohne kömische Symbole !
die binäre Ausgabe von deine Code könntest du durch einen Base64 Encoder/Decoder jagen.
|
Re: Text verschlüsseln ohne kömische Symbole !
oder das ganze in hexdecimaler Darstellung ausgeben.
|
Re: Text verschlüsseln ohne kömische Symbole !
Hallo,
für solche Sachen hat sich eigentlich die Hexdarstellung durchgesetzt.
Delphi-Quellcode:
Grüße
function strEncrypt(const S: String; Key: Word): String;
var I: Integer; dummyKey: Byte; const C1 = 52845; C2 = 22719; begin result := ''; for I := 1 to Length(S) do begin dummyKey :=Ord(S[I]) xor (Key shr 8) Result := result + IntToHex(dummyKey,2); Key := (dummyKey + Key) * C1 + C2; end; end; Klaus |
Re: Text verschlüsseln ohne kömische Symbole !
Finde ich mit Hex
und was ist mit :
Delphi-Quellcode:
function strDecrypt(const S: String; Key: Word): String;
/// ! |
Re: Text verschlüsseln ohne kömische Symbole !
Delphi-Quellcode:
Grüße
DeinValue:= StrToInt('$'+<hexString>);
Klaus |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
|
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
Grüße Klaus |
Re: Text verschlüsseln ohne kömische Symbole !
oder du verwendest 'n algo, der keine ungültigen zeichen erzeugt. z.b. cäsar codierung.
<HTH> btw: ist der XOR eine sehr schwache codierung. |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin Edit2.Text:=strEncrypt(Edit1.text, 1258); // ok Edit3.Text:= // hier soll wieder entschlüsselt ! end; |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
|
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
|
Re: Text verschlüsseln ohne kömische Symbole !
Ich gebe auf
mir dem Code konnte ich den Text nicht wieder entschlüsseln !
Delphi-Quellcode:
DeinValue:= StrToInt('$'+<hexString>);
|
Re: Text verschlüsseln ohne kömische Symbole !
Was funktioniert denn nicht?
Was kommt den raus? |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
|
Re: Text verschlüsseln ohne kömische Symbole !
Wahrscheinlich
|
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
<hexstring> solltest du vllt. mit deinem verschlüsselten ERgebniss ersetzen... :wall: :wall: dann kommt auch kein [Fataler Fehler]... :angel: |
Re: Text verschlüsseln ohne kömische Symbole !
Das habe ich natürlich gemacht
Delphi-Quellcode:
Edit3.Text:=strDescrypt(Edit1.text, StrToInt('$'+ Edit2.Text)); // so auch ausprobiert
// Error : Inhalt von Text2 ist kein Integer! |
Re: Text verschlüsseln ohne kömische Symbole !
Beim verschlüsseln wurden aus einem Byte zwei Zeichen HexCode.
Beim entschlüsseln musst Du dann den verschlüsselten Text auch immer häppchenweise (zwei Zeichen) übergeben.
Delphi-Quellcode:
Das ganze ließe sich dann auch in einer schleife machen.
Edit3.Text:=Edit3.text+chr(StrToInt('$'+ Edit2.Text[1]+Edit2.Text[2])));
Grüße Klaus [edit] chr noch eingefügt. |
Re: Text verschlüsseln ohne kömische Symbole !
HI,
dann such doch mal nach einer Funktion (dürfte es bei Delphi geben), die Hex in Dec umwandelt, da ja ein Hex-String keine Zahl ist, sondern eine Hex-Zahl rollstuhlfahrer |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
kann man den HexTSring mit StrToInt in einen Zahlewert wandeln. Grüße Klaus |
Re: Text verschlüsseln ohne kömische Symbole !
Zitat:
|
Re: Text verschlüsseln ohne kömische Symbole !
Wenn Du die letzten Beiträge gelesen und umgesetzt hättest,
wärest Du wahrscheinlich schon ein wenig weiter. So könnte es dann aussehen. Ich hoffe Du kopierst nicht nur, sondern versuchst es zu verstehen.
Delphi-Quellcode:
Eigentlich recht simpel, oder?
// Das ist Dir bekannt und hast Du ja bereits verinnerlicht
function strEncrypt(const S: String; Key: Word): String; var I: Integer; dummyKey: Byte; const C1 = 52845; C2 = 22719; begin result := ''; for I := 1 to Length(S) do begin dummyKey :=Ord(S[I]) xor (Key shr 8); Result := result + IntToHex(dummyKey,2); Key := (dummyKey + Key) * C1 + C2; end; end; // Das ist neu. function strDecrypt(const hex: String; key: Word):String; var i : Integer; dummyKey : Byte; const C1 = 52845; C2 = 22719; begin result := ''; for i := 1 to length(hex) div 2 do begin dummyKey:= StrToInt('$'+hex[(i*2)-1]+hex[i*2]); // Umwandlung von 2 Hexzeichen in ihren Bytewert result := result + chr(dummyKey xor (key shr 8)); // das Ergebnis wird in ein Char umgewandelt key := (dummyKey + Key) * C1 +C2; // der key wird verändert end; end; procedure TForm1.Button1Click(Sender: TObject); begin edit2.Text:=strEncrypt(Edit1.Text,StrToInt(Edit4.Text)); end; procedure TForm1.Button2Click(Sender: TObject); begin edit3.Text:=strDecrypt(edit2.Text,StrToInt(Edit4.Text)); end; Grüße Klaus |
Re: Text verschlüsseln ohne kömische Symbole !
Es geht :thumb:
Danke sehr ! Versucht habe ich vorher schon aber nicht geschafft :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 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