Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Verschlüsselungsalgorhythmen (https://www.delphipraxis.net/59538-verschluesselungsalgorhythmen.html)

XHelp 24. Dez 2005 00:06

Re: Verschlüsselungsalgorhythmen
 
hash und verschlüsselung kann man nicht auf eine ebene stellen... das sind verschiedene sachen...
Du kannst auch das mittels rar (oder aehnlichem) mit einem password packen... hast auch den vorteil, dass dein verschl. text kleiner ist...
Wie "sicher" muss denn dein text verschluesselt sein?

Chrissi91 24. Dez 2005 08:03

Re: Verschlüsselungsalgorhythmen
 
Zitat:

Zitat von St.Pauli
XOR Funktioniert nur mit Text und Passwort! Im groben gesagt

Delphi-Quellcode:
Verschlüsseltertext := Text XOR Passwort;
Und du sollst dir da noch ein paar Kniffe überlegen, es komplizierter zu machen :wink:

Sco klar, aber meine Frage bezog sich auf die sogenannten Kniffe. ;)

Zitat:

Zitat von XHelp
hash und verschlüsselung kann man nicht auf eine ebene stellen... das sind verschiedene sachen...
Du kannst auch das mittels rar (oder aehnlichem) mit einem password packen... hast auch den vorteil, dass dein verschl. text kleiner ist...
Wie "sicher" muss denn dein text verschluesselt sein?

Ich hatte mal ein Verschlüsselungsprogramm (Xor) programmiert. Jetzt bin ich gerade am Umschreiben für andere Algorhythmen.

GuenterS 24. Dez 2005 09:39

Re: Verschlüsselungsalgorhythmen
 
Zitat:

Zitat von St.Pauli
XOR Funktioniert nur mit Text und Passwort! Im groben gesagt

Delphi-Quellcode:
Verschlüsseltertext := Text XOR Passwort;
Und du sollst dir da noch ein paar Kniffe überlegen, es komplizierter zu machen :wink:

XOR funktioniert mit jedem beliebigen Zeichen.

PierreB 24. Dez 2005 09:41

Re: Verschlüsselungsalgorhythmen
 
Zitat:

Zitat von jfheins
qwertzu gibt 2bf345c67ab45678d6789e789f3ea93f8
asdfghjk gibt auch 2bf345c67ab45678d6789e789f3ea93f8

Du hast 2bf345c67ab45678d6789e789f3ea93f8 - welches ist der orginaltext?

Ehrlich ? Ich dachte MD5 generiert einen eindeutigen einmaligen Hash ? :gruebel:

Luckie 24. Dez 2005 09:46

Re: Verschlüsselungsalgorhythmen
 
Zitat:

Zitat von PierreB
Ich dachte MD5 generiert einen eindeutigen einmaligen Hash ? :gruebel:

Wie sollte es?
Zitat:

Zitat von Wikipedia
MD5 erzeugt aus einer Nachricht variabler Länge eine Ausgabe fester Länge (128 Bit).

Du hast nur 128 Bit zur Verfügung. Es gibt also nur 2 hoch 128 kombinationen. Es dürfte aber wesentlich mehr Zeichenkombinationen geben, so dass es irgendwann zu einer Kollision kommen muss. Die Wahrscheinlichkeit einer Kollision ist nur sehr gering.

PierreB 24. Dez 2005 09:49

Re: Verschlüsselungsalgorhythmen
 
Zitat:

Du hast nur 128 Bit zur Verfügung. Es gibt also nur 2 hoch 128 kombinationen. Es dürfte aber wesentlich mehr Zeichenkombinationen geben, so dass es irgendwann zu einer Kollision kommen muss.
Ah ok, und welches Verfahren wäre dann eindeutig (gibt es etwas eindeutiges?) ?

Luckie 24. Dez 2005 09:53

Re: Verschlüsselungsalgorhythmen
 
Ja, ein Hash Verfahren, dass genauso groß wie die Daten ist. Damit würde man aber den Sinn eines Hashes ad adsurdum führen, da ein Hash die vereinfachte Darstellung von etwas wesentlich komplexeren sein soll. Beispiel: Um zwei große Dateien zu vergleichen, kann ich zum Beispiel einen Hash von beiden generieren und dann die beiden Hashes vergleichen. Dies ist meist effizienter, als beide Dateien direkt zu vergleichen.

PierreB 24. Dez 2005 09:59

Re: Verschlüsselungsalgorhythmen
 
Warte mal, heißt das jetzt das das CRC32 verfahren auch nicht eindeutig ist ? Jetzt versteh ich gar nichts mehr. :gruebel:

negaH 25. Dez 2005 07:15

Re: Verschlüsselungsalgorhythmen
 
Überlege doch mal logisch:

Du hast eine Menge von Datenelementen wobei jedes Element beispielweise 256 Bit groß ist. Ergo die Cardinalität dieser Menge ist exakt 2^256, es gibt also 2^256 verscheidene Elemente in dieser Menge.

Nun ereugst du einen Hash oder meinetwegen Prüfsumme die selber aber kürzer als 256 Bit ist. Sagen wir mal 128 Bit groß. D.h. die Hashfunktion mappt alle 2^256 Elemente auf eine Menge von nur 2^128 möglichen Hashs. Ergo um eine eineindeutige Abbildung der 2^256 Elemente erreichen zu können müsste die Hashfunktion ebenfalls 2^256 mögliche Outputs erzeugen können. Kann sie aber bei 128 Bit Größe niemals. Infakt ist es so das bei 2^256 Elementen zu jedem dieser 2^256 Elemente exakt 2^128 andere Elemente gäbe die den gleichen Hash erzeugen würde. Es gibt also zu EINEM dieser 2^256 Elemente exakt 2^128 mögliche Kollisionen !

Wenn man nun die Größe der möglichen Eingangsmenge auf unendlich hoch setzt, was die größe der in der Natur existenten Datenmenge darstellt so wird es zu jedem dieser unendlich vielen Datenelementen exakt "unendlich - 2^128" mögliche Kollisionen geben. Unendlich - 2^128 == Unendlich, ergo die Wahrscheinlichkeit eines Duplikates einer 128 Bit Hashfunktion beträgt 100% - 1 / (unendlich - 2^128), defakto also 100% !

ABER, alleine diese ganz ganz kleine Differenz von 1 zu "1 - 1 / (unendlich - 2^128)" also dieses 2^128 ist für den Menschen so gewaltig groß das er praktisch gesehen nicht mehr in der Lage ist solche Kollisionen gezielt zu erzeugen !

Das Begreifen dieser Erkenntnis war es das die Mathematiker lange Zeit glauben ließen das es einen Algortihmus wie Hashfunktionen garnicht geben kann. Infinitiv betrachtet stimmt das auch heute noch denn 1 - 1 / (unendlich - 2^128) ist defakto 0,9999... mit unendlichen 9'en nach dem Komma, also gerundet 1,0.
Aber praktisch bedeutet die Differenz von 0,00000 unendlich 01 eine Differenzmenge von 2^128 möglichen Hashs und das ist schon so gewaltig groß das es praktisch unknackbar wird.

Eine Hashfunktion ist also ein mathematisches Konstrukt das aus Sicht der Unendlichkeit niemals funktioniert, aber aus Sicht UNSERER Endlichkeit, unserer zeitlichen Lebenspanne, unserer begrenzten Resourcen und unserem unendlich kleinem Wissen, sehrwohl funktioniert.

Denn wir leben und begreifen die Unendlichkeit nicht, alles ist für uns endlich und diese Endlichkeit hat aus heutiger Sicht eine Grenze bei ca. 2^128.

Gruß Hagen


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:48 Uhr.
Seite 3 von 3     123   

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