Ein Hash ist ein Wert, der durch eine Hashfunktion mittels eines Algorithmus erzeugt wurde. Die Hash Funktion erhält als Eingabe zum Beispiel eine Zeichenkette wie “Der Hash” und den Algorithmus md5 als Resultat erhält man “d45b7fbf2f56a0796758a28bb28d30d8”. So hat man diesen Wert gehasht.
Ein direktes Decodieren ist nicht möglich, da der Wert je ein Hash ist und nicht ein verschlüsselter Wert ist. Nur mit sogenannten Rainbow Tabellen wäre ein Zuordnen von original Werten zu Hash-Werten möglich. Die Rainbow Tabellen werden immer für einen bestimmten Hash Algorithmus erzeugt. Je länger die Hash-Werte sind, desto sicherer sind diese Werte und sind seltener von Hash Kollisionen betroffen. Hash Kollisionen entstehen, wenn zwei verschiedene Origial-Werte den gleichen Hash-Wert erzeugen. Ein erzeugter md5-Hash-Wert ist immer 32 Zeichen (128 Bit) lang und gilt als unsicher. Sichere Hashes sind z.B. SHA-256 oder SHA-512.