Autor Beitrag
scrooge
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 200



BeitragVerfasst: Fr 23.07.04 17:21 
Hi,

hab mal ne Frage zu Hash's: Hab mich bisher nicht wirklich damit beschäftigt und auch nur schätzungsweise erfahren, was das überhaupt ist. Daher wollt mich mal erkundigen, was das denn nun genau ist.

//Edit @Mods: Sorry, ist mir in die falsche Sparte gerutscht


Moderiert von user profile icontommie-lie: Topic aus Windows API verschoben am Fr 23.07.2004 um 17:57
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Fr 23.07.04 18:20 
ne simple Zahl, meistens in HEX dargestellt, die einen eindeutigen Wert darstellt, der equivalent zur passenden Zeichenkette steht. Ein Hash ist einmalig, d.h. ein Hash-wert kann nur einer Zeichenkette zugeordnet werden und umgekehrt.


also: $23F5H443 entspr. Wasserratte (beispiel)

Ein Hash kann man mit verschiedenen Funktionen generieren. Schau dich da mal um, z.b. die Orpheus-Kompos, www.sourceforge.net, können sowas.

grez
msch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
UC-Chewie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 531

WinXP
D5 Ent
BeitragVerfasst: Fr 23.07.04 18:31 
MSCH hat folgendes geschrieben:
Ein Hash ist einmalig, d.h. ein Hash-wert kann nur einer Zeichenkette zugeordnet werden und umgekehrt.


Nein. Wenn das so wäre, könnte man Daten auch wieder "enthashen". Außerdem sind Hash-Werte oft kürzer als die Daten, auf die der entsprechende Algorithmus angewandt wurde, deshalb speichern diese weniger Informationen ab. Ansonsten wären hashs ja eine Komprimiermethode.
Hashs sind nur Werte, die, je nach Anwendungsfall, genügend eindeutig sind. Es gibt schon Daten, die den glkeichen Hashwert erzuegen, aber sofern das nur selten vorkommt, ist das OK. Es kommt naürlich auch drauf an, was man mit einem Hash machen will. Ein Algorithmus für eine Hash-Table muss nicht so gut (d.h. so nahe wie möglich an der Eindeutigkeit) sein wie z.B. ein MD5-Hashwert, der oft als Verschlüsselung von Passwörtern im Web-Bereich eingesetzt wird.

Ein Beispiel für eine einfache und schlecht Hashfunktion wäre, den ersten Buchstaben eines Strings mit 4 zu multiplizieren, den zweiten mit 3, den dritten mit 2 und den vierten mit 1 und das dann alles zusammenaddieren.

_________________
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Fr 23.07.04 18:45 

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
maximus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 896

Win XP, Suse 8.1
Delphi 4/7/8 alles prof
BeitragVerfasst: Sa 24.07.04 11:15 
In der system.pas steht ein sehr simpler hash algorythmus: ElfHashLowercase! Zum spielen ganz geil. Den musst du allerdings manuell aus dem implementationsteil kopieren.

_________________
mfg.
mâximôv