Php passwort verschlüsseln?

4 Antworten

Definiere in diesem Sinne besser. Es gibt für SHA2 bisher keine bekannten Angriffe, außer hier speziell einen Length Extension Angriff dieser ist aber für zB das Hashen eines Passwortes egal.

Es gibt darüber hinaus mitlerweile auch den SHA3 Algorithmus, welcher bisher keinen so einen Angriff zulässt.

Ob der eine bessere als der andere ist, weiß man am Ende nicht, weil es für Hash Funktionen einfach nicht beweisbar ist, dass keine Funktion gefunden werden kann welche mit vertretbaren Mitteln eine Kollision berechnet.

SHA 3 wurde mehr aus einer Vorsicht heraus entwickelt, weil theoretische Schwächen im Verfahren gefunden wurden welches SHA2 zu Grunde liegt und SHA1 somit gebrochen wurde. Das kann muss aber nicht heißen, dass SHA2 in nächster Zeit gebrochen wird.

Es kann theoretisch auch sein, dass SHA3 vor SHA2 gebrochen wird, in so fern kann man bei kryptografischen Hashfunktionen schlecht sagen, welcher der Bessere ist, sondern eigentlich nur unterscheiden, zwischen Rechenaufwand und ob der Hash gebrochen ist oder nicht, wobei gebrochen auch zum Teil vom Anwendungsfall abhängt.

Das BSI sagt:

Nach heutigem Kenntnisstand gelten die folgenden Hashfunktionen als kryptographisch stark und sind damit für alle in dieser Technischen Richtlinie genannten Verfahren einsetzbar:

• SHA-256, SHA-512/256, SHA-384 und SHA-512

• SHA3-256, SHA3-384, SHA3-512

Von Experte iQa1x bestätigt
Woher ich das weiß:Berufserfahrung – Entwicklung von Apps und Websites

iQa1x  19.05.2022, 15:33

Ergänzung: Das hat den entscheidenden Vorteil, dass du dir um salt keine Gedanken machen musst. Wenn du nur eine Hashfunktion einsetzt ohne salt, finden sich genug Tabellen im Netz, die das rückwärts auflösen.

password_verify ist die Funktion zum Prüfen des Passwortes.

1

das reicht bis zur Einführung von serienreifen quantencomputern aus


Hedhhdgtf 
Fragesteller
 19.05.2022, 15:05

Und wenn man richtig übertreiben will?

Gibt es da nichts besseres auch nach 6 Jahren

0
geheim007b  19.05.2022, 15:09
@Hedhhdgtf

sha256 ist schon vollkommen ausreichend, sha512 ist die Übertreibung. Darüber gibt es nichts was implementiert ist, warum auch.

1