zurück zum glossar

Hashing

Security

Hashing erzeugt einen Einweg-Fingerabdruck fixer Länge aus Daten. Gleicher Input = gleicher Hash, minimale Änderung = komplett anderer Hash. Nicht umkehrbar (theoretisch).

detaillierte erklärung

Hashing ist eine kryptographische Funktion, die beliebig lange Inputs in Outputs fixer Länge (Digest) transformiert. Eigenschaften: 1) Deterministisch - gleicher Input → immer gleicher Hash. 2) Einweg-Funktion - aus Hash kann Input nicht rekonstruiert werden (mathematisch schwer). 3) Lawineneffekt - minimale Input-Änderung verändert ~50% der Hash-Bits. 4) Kollisionsresistenz - praktisch unmöglich, zwei Inputs mit gleichem Hash zu finden. Algorithmen: MD5 (128 Bit, UNSICHER, Kollisionen bekannt), SHA-1 (160 Bit, deprecated), SHA-256 (256 Bit, aktuell Standard), SHA-3 (Keccak, moderne Alternative), bcrypt/scrypt/Argon2 (für Passwörter, absichtlich langsam). Anwendungen: Passwort-Speicherung (Hash statt Plaintext), Integritätsprüfung (File-Checksums), Digitale Signaturen, Blockchain (Proof-of-Work). Wichtig: Hashing ≠ Verschlüsselung (Encryption ist reversibel, Hashing nicht).

warum ist das wichtig?

Hashing ist fundamental für Passwort-Sicherheit - du musst verstehen, warum bcrypt besser ist als SHA-256 (Argon2 > bcrypt > SHA-256 > MD5 für Passwörter) und wie Rainbow-Tables funktionieren. Essentiell für Secure Development und Pentesting (Hash-Cracking).

häufige fehler

  • Hashing = Verschlüsselung - Nein, Verschlüsselung ist reversibel (mit Key), Hashing nicht
  • MD5/SHA-1 sind sicher für Passwörter - Nein, zu schnell (GPU-Cracking), nutze bcrypt/Argon2
  • Hashing verhindert Brute-Force - Nein, verlangsamt nur (ohne Salting sind Rainbow-Tables effektiv)

verwandte begriffe

passende bilabs lessons

quellen

das könnte dich auch interessieren