Junior — Middle
Kannst du die Hauptmerkmale von Hash-Funktionen aufzählen?
sobes.tech KI
Antwort von AI
Hauptmerkmale von Hash-Funktionen:
- Determinismus: Für denselben Eingabewert gibt die Hash-Funktion immer denselben Hash zurück.
- Berechnungsgeschwindigkeit: Die Hash-Funktion sollte für beliebige Eingabedaten schnell berechnet werden.
- Verteilung: Hashes sollten gleichmäßig über den Wertebereich verteilt sein, um Kollisionen zu minimieren.
- Kollisionsresistenz: Die Wahrscheinlichkeit, dass unterschiedliche Eingaben denselben Hash ergeben (Kollision), sollte minimal sein.
- Einwegfunktion (bei kryptografischen Hash-Funktionen): Der ursprüngliche Input kann anhand des Hashs nicht rekonstruiert werden.
Beispiel in Go:
import (
"fmt"
"hash/fnv"
)
func hash(s string) uint32 {
h := fnv.New32a()
h.Write([]byte(s))
return h.Sum32()
}
func main() {
fmt.Println(hash("example"))
}
Hier wird die FNV-Hashfunktion verwendet, die schnell den Hash einer Zeichenkette berechnet.