Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Hash-Algorithmus gesucht (https://www.delphipraxis.net/29973-hash-algorithmus-gesucht.html)

Dax 17. Sep 2004 16:46


Hash-Algorithmus gesucht
 
Wie der Titel schon verrät, suche ich einen Hash-Algotihmus. Er sollte möglichst schnell sein und eine Digest-Größe von 32/64Bit haben.
Am besten wäre ein Codeschnipsel, das würde mir am meisten helfen.

Im vorraus schon mal Danke, Dax.

Meflin 17. Sep 2004 17:27

Re: Hash-Algorithmus gesucht
 
hast dus schon mit dem dec von hagen probiert?
Hier im Forum suchenDEC

Dax 17. Sep 2004 17:29

Re: Hash-Algorithmus gesucht
 
Das will ich nicht benutzen, weil es von der VCL abhängig ist.

Meflin 17. Sep 2004 17:29

Re: Hash-Algorithmus gesucht
 
bist du sicher? du kanmnst es doch auch zur laufzeit erzeugen...

Assarbad 17. Sep 2004 17:30

Re: Hash-Algorithmus gesucht
 
MD5 -> http://assarbad.net/stuff/!export/md5.zip

Dax 17. Sep 2004 17:31

Re: Hash-Algorithmus gesucht
 
Aber die Komponenten brauchen ja, wie der Name schon sagt, TComponent. Und ich möchte in ein *kleines* NonVCL-Programm nicht gleich mit der Classes.pas reingehen.

Meflin 17. Sep 2004 17:31

Re: Hash-Algorithmus gesucht
 
willst du überhaupt für delphi (das im programmieren allgemein steht)?
[edit] hat sich erledigt :roll: [/edit]

Dax 17. Sep 2004 17:42

Re: Hash-Algorithmus gesucht
 
Gibts dazu was brauchbares, vielleicht CRC?
Ich bräuchte Sourcen.

Dax 17. Sep 2004 17:49

Re: Hash-Algorithmus gesucht
 
@Oliver: Sorry, hab' deine Antwort überlesen. :wall: Danke, aber MD5 ist zu viel, der größte Digest sollte 64Bit haben.

Meflin 17. Sep 2004 17:50

Re: Hash-Algorithmus gesucht
 
Zitat:

Zitat von Dax
@Oliver: Sorry, hab' deine Antwort überlesen. :wall: Danke, aber MD5 ist zu viel, der größte Digest sollte 64Bit haben.

gibts so kleine hashes überhaupt :gruebel: ich kenn keinen, haben alle 128 oder mehr

Dax 17. Sep 2004 17:51

Re: Hash-Algorithmus gesucht
 
Ich denke mal, der eine Hash heisst nicht umsonst CRC32.

Meflin 17. Sep 2004 17:53

Re: Hash-Algorithmus gesucht
 
http://www.iss.u-net.com/crc32.htm
das erste google ergebnis ;-)

Dax 17. Sep 2004 17:55

Re: Hash-Algorithmus gesucht
 
.dll? Bräuchte Delphi-Codes zum in Prgramm einbauen....

Meflin 17. Sep 2004 17:58

Re: Hash-Algorithmus gesucht
 
die sourcen sind dabei denke ich :gruebel:

Dax 17. Sep 2004 18:01

Re: Hash-Algorithmus gesucht
 
Ganz gut ... Gibts das auch in Assembler oder mit 64Bit?

Assarbad 17. Sep 2004 18:03

Re: Hash-Algorithmus gesucht
 
CRC32 ist kein Hashalgo, soweit ich weiß. Aber ich lasse mich gern belehren. Hagen?

Dax 17. Sep 2004 18:04

Re: Hash-Algorithmus gesucht
 
Hash, Checksum, egal. Hauptsache aus einen String wird eine Zahl mit höchstens 64Bit.

Meflin 17. Sep 2004 18:09

Re: Hash-Algorithmus gesucht
 
vielleicht hilft dir das
http://coding.derkeiler.com/Archive/...3-11/0120.html
fertigen code dafür habe ich keinen gefunden...

Assarbad 17. Sep 2004 18:10

Re: Hash-Algorithmus gesucht
 
@Dax warum übersetzt du dir keinen C-Code? Ist doch dann das schnellste.

Dax 17. Sep 2004 18:12

Re: Hash-Algorithmus gesucht
 
Ist ja eine Tolle Idee, aber ich bräuchte einen COde, der die 64Bit in einem Durchgang berechnet. Ob's nun ein Hashwert oder eine CHecksumme ist, ist im Endeffekt egal.

Sharky 17. Sep 2004 18:12

Re: Hash-Algorithmus gesucht
 
Zitat:

Zitat von Dax
Aber die Komponenten brauchen ja, wie der Name schon sagt, TComponent. Und ich möchte in ein *kleines* NonVCL-Programm nicht gleich mit der Classes.pas reingehen.

Hai Dax,

Hagen kann auf Classes.pas wohl nicht verzichten da dort ja die TStreams deklariert sind. Mit VLC hat das glaube ich nichts zu tun. Ganz im Gegenteil; Hagen hat mal geschrieben das er die Komponenten für das DEC eigentlich nur für Testzwecke oder so gecoded hat.

Dax 17. Sep 2004 19:11

Re: Hash-Algorithmus gesucht
 
Sind also 32Bit das größte (unter 128Bit), das man aus einem Hash/Checksum-Algorithmus rausholen kann, ohne irgendwelche Tricks anzuwenden?

negaH 23. Sep 2004 13:25

Re: Hash-Algorithmus gesucht
 
CRC32 ist natürlich keine "secure hash function", allerdings werden solche Hash Funktionen eben sehr oft einfach als Checksum Funktonen benutzt, sprich wie eine CRC32.

Es gibt mehrere Alternativen:
1.) nehme eine Hashfunktion wie MD4, diese gibt eine 128Bit Checksumme, XOR einfach die oberste 64Bit mit den untersten 64Bits dieser 128Bit Prüfsumme. Das ist ein sehr oft benutzter Weg der sich Shortening nennt.
2.) nehme 2 * 32Bit CRC, jedes ungerade DWord der Daten landet in der 1'ten CRC32 und jedes gerade DWord der Daten in der 2'ten CRC32. Man zerlegt also die Inputs in zwei getrennte Datenströme. Allerdings erhöht sich dadurch eben nicht die Datensicherheit als wenn man gleich eine 64Bit CRC benutzen würde. Dieses Verfahren würde man Whitening nennen.
3.) suche nach 64Bit CRC's im WEB, die gibt es garantiert mit Sourcen, sind halt nur seltener und schwerer zu finden.
4.) nimm ein LFSR-> Linear Feadback Shift Register. Diese basieren exakt auf den gleichen math. Grundlagen wie CRC's. Über LFSR > 32Bit findet man viel mehr im WEB.
5.) schaue dir meine TRandom_LFSR Klasse an und extrahiere dort den für dich relevanten Source. Mein LFSR ist variabel, kann also im Grunde CRC's berechnen im Bereich von 32 bis 2049 Bit Breite !!

Gruß Hagen


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:35 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz