Hash mit einer langsamen, speicherintensiven Funktion: Argon2id ist die aktuelle Empfehlung, bcrypt und scrypt sind akzeptabel. Jedes Passwort bekommt ein eigenes Salt, das diese Algorithmen selbst erzeugen und in der Ausgabe speichern, und die Parameter sollten so eingestellt sein, dass das Hashen auf deiner Hardware einen spürbaren Bruchteil einer Sekunde dauert. Nutz nie einen einfachen schnellen Hash wie SHA-256 oder MD5, verschlüssel Passwörter nie umkehrbar, und rehash beim Login, wenn du die Parameter anhebst.
Warum Interviewer das fragen
Es ist eine faktische Sicherheitsfrage mit einer klaren richtigen Antwort, sie filtert also schnell. Der Interviewer will Argon2id oder bcrypt hören, Salts pro Nutzer und bewusste Langsamkeit, plus das Bewusstsein für die umliegenden Kontrollen: Rate Limiting, Prüfung gegen geleakte Passwörter und ein sicherer Reset-Flow. Eine bestehende Implementierung zu reviewen zeigt außerdem, ob du die subtilen Probleme siehst, etwa dass bcrypt lange Eingaben abschneidet.
So baust du deine Antwort auf
- Nenn den Algorithmus und warum Langsamkeit und Speicherbedarf wichtig sind.
- Geh auf Salts ein und warum ein Salt pro Nutzer vorberechnete Tabellen aushebelt.
- Sag, wie du Parameter wählst und wie du sie später hochziehst.
- Zähl die umliegenden Kontrollen jenseits des Hashs auf.
Beispielantwort
Ich greife zu Argon2id, mit bcrypt als Rückfalloption, wenn die Plattform-Library dort besser unterstützt ist. Der Punkt ist, dass es bewusst langsam und speicherintensiv ist, damit ein Angreifer mit dem Dump nicht Milliarden Kandidaten pro Sekunde auf einer Grafikkarte durchprobieren kann. Jedes Passwort bekommt sein eigenes zufälliges Salt, das diese Algorithmen in die kodierte Ausgabe einbetten, identische Passwörter ergeben also unterschiedliche Hashes, und vorberechnete Tabellen sind wertlos. Die Parameter stimme ich gegen echte Hardware ab, Ziel sind ein paar hundert Millisekunden pro Hash, und ich speichere sie mit dem Hash, damit ich sie später anheben und beim nächsten erfolgreichen Login transparent rehashen kann. Im Review markiere ich ein nacktes SHA-256 oder MD5, alles Umkehrbare, ein einziges globales Salt, und bei bcrypt speziell die Tatsache, dass es Eingaben jenseits von 72 Bytes stillschweigend ignoriert, was lange Passphrasen leise schwächt. Jenseits des Hashs will ich Rate Limiting beim Login, eine Prüfung gegen bekannte geleakte Passwörter und einen Reset-Flow mit einmalig nutzbaren, ablaufenden Tokens.
Steht dieses Vorstellungsgespräch bald an? GhostPilot hört bei deinem Live-Call mit, erkennt die Frage in dem Moment, in dem sie gestellt wird, und bringt dir eine strukturierte Antwort in Echtzeit auf den Bildschirm. Probier es im nächsten Mock aus, oder hol dir einen $29 Session Pass, kein Abo, für den Ernstfall.
So funktioniert esNachfragen, mit denen du rechnen solltest
- Was ist ein Pepper, und wo würdest du ihn aufbewahren?
- Wie migrierst du eine bestehende Tabelle mit schwach gehashten Passwörtern?
- Wie schützt du den Login-Endpoint gegen Credential Stuffing?
Weitere Fragen für Backend-Entwickler
Dein Interviewer stellt seine eigene Version davon. Kopier deine echte Stellenbeschreibung in den kostenlosen Question Predictor und bekomm die 20 Fragen, die diese Rolle am wahrscheinlichsten stellt, samt dem, worauf jede wirklich abzielt.
Meine Fragen vorhersagen