![]() |
Wie wandle ih einen Text in eine Zahl um?
Hallo,
Ich möchte ein Verschlüsselungsprogramm machen und jabe dazu einen text, den ich dann irgendwie in eine Zahl umwandeln will. Kein strzoint oder umgekehrt der text ist ein text und keine Zahl!!!! Also, wie bekomme ich da eine zahl raus? Es soll ein Einweg-Hash werden mit der zahl, die rauskommt werde ih dan irgendwelche rechnungen durchführen, sodass es einigermaßen sicher ist. LG Christopher PS: delphi version: delphi7 personal |
AW: Wie wandle ih einen Text in eine Zahl um?
.. vielleicht suchst du ord('a');
Grüße Klaus |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
|
AW: Wie wandle ih einen Text in eine Zahl um?
Wie wäre es mit dem
![]() |
AW: Wie wandle ih einen Text in eine Zahl um?
Also, ich habe einen string. Darin ist ein text, der verschlüsselt werden soll.
Das stelle ich mor so vor: Den string in eine zahl umwandeln dann mit dieser zahl eine mathemathische rechnung machen, sodass dann eine veränderte zahl herauskommt. Und wie kann ich eben diesen text in eine zahl umwandeln? Hexadezimal oder dual oder so? |
AW: Wie wandle ih einen Text in eine Zahl um?
.. wie schon oben geschrieben mit ord(Buchstabe) bekommst Du den ascii Wert eines Zeichens
also eine Zahl, diese kannst Du dann mit den anderen Werten der folgenden Zeichen verarbeiten. Wenn Du ord() nicht verwenden wills, aus welchen Gründen auch immer, kannst Du dir auch selber eine Lookup-Tabelle erstellen. Was Du willst ist nicht verschlüsseln, sondern einen Hash aus der Zeichekette gewinnen. Grüße Klaus |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
![]() |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
Eine einfache Methode wäre die sog. ![]() Verschlüsselung ist ein sehr komplexes und vielfältiges Thema. Gute Verschlüsselungstechnik schüttelt man nicht einfach mal so aus dem Ärmel ... :cyclops: |
AW: Wie wandle ih einen Text in eine Zahl um?
[OT]
Zitat:
[/OT] |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
![]() ![]()
Delphi-Quellcode:
Du kannst nun die 16 Bytes in einen 32 Zeichen Hexstring umwandeln.
// Anwendungsbeispiel
var text, hash : string; begin text := 'das ist irgendein Text'; hash := MD5String(text); // der hash enthält 16 Bytes Wenn es unbedingt eine Zahl sein soll, dann kannst du einfach auch die ersten 4 Bytes kopieren
Delphi-Quellcode:
Natürlich ist ein 16-Byte Hash besser als ein 4-Byte-Hash, aber für geringe Ansprüche immer noch ausreichend.
var
pruefzahl : integer; ... Move(hash[1], pruefzahl, sizeof(Integer); |
AW: Wie wandle ih einen Text in eine Zahl um?
Super!
Ich glaub mit MD5 versuche ichs mal! Das ist ja nur eine pascal datei oder? Kann ich den mit d7personal installieren? Siehe "wo kriege ich indy her, und wie installiere ich es" auch ein thema von mir LG Christopher |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
Wenn man beispiels- & einfachheitshalber von AnsiStrings ausgeht, wo jedes Zeichen (Char) genau ein Byte groß ist, dann kann man die einzelnen Bytes als Zahlen interpretieren (anstatt Zeichen), damit mathematisch Unfug treiben und dann beliebig weiter damit rumhantieren! Hier eine einfache Xor Verschlüsslung z.B.
Delphi-Quellcode:
Vlt. bezieht sich deine Aussage auf "ord()" welche letztendlich einen Ordinalwert zurückgibt, was im Grunde auch nur eine Zahl ist (nicht?)!
procedure xorCrypt(var Str: String; const XorVal: Byte);
var i: Integer; begin for i := 1 to Length(Str) do Str[i] := Byte(Str[i]) xor XorVal; end; Edit: "Auto" ergibt übrigens nicht 65117116111, sondern 65 117 116 111 (man weiß ganz genau, wo die Zahl aufhört und wo sie beginnt!) |
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
|
AW: Wie wandle ih einen Text in eine Zahl um?
Zitat:
|
AW: Wie wandle ih einen Text in eine Zahl um?
Oder den DecryptText halt mit Nullen auffüllen (065117116111). Dann kann man den Text auch vor dem Entschlüsseln auf Konsistenz prüfen (Length(S) mod 3 muß Null sein).
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:35 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