Hallo Leute, die ich über das Paßwort-Salzen gelesen habe, aber das könnte ein wenig seltsam klingen. Aber wie kann ich das Salz lagern und sichern? In einer Multi-Tire-Architektur zum Beispiel verwende ich die GUID der Client-Maschine, um mein Salz zu generieren, dann wird der Benutzer auf eine einzelne Maschine beschränkt, aber wenn ich zufälliges Salz verwende, muss es irgendwo gespeichert werden. Vor ein paar Tagen habe ich eine Beispielanwendung gesehen, bei der der Hash und das Salt auf dem Client-System generiert wurden, sobald ein neuer Benutzer erstellt wurde. Anschließend werden das gesalzene Passwort und der Hash an den Server übertragen, wo sie im SQL-Server gespeichert werden. Aber wenn ich diese Methode befolge und die Datenbank kompromittiert wird, sind die Passwörter und die Salt-Werte für jedes Passwort für die X-Person verfügbar. Also, sollte ich wieder die Passwörter salzen/verschlüsseln und auf Serverseite Salz erhalten? Was ist die beste Methode zum Salzen?Was ist die beste Art Salz zu salzen und zu lagern?
Antwort
Das Speichern des unverschlüsselten Salzes in der Datenbank neben den Hash-Passwörtern ist kein Problem.
Der Zweck des Salzes ist nicht geheim zu halten. Es ist der Zweck, für jeden Hash unterschiedlich zu sein (d. H. Zufällig) und lang genug, um die Verwendung von rainbow tables zu verhindern, wenn ein Angreifer seine Hände in die Datenbank bekommt.
Sehen Sie diese excellent post zum Thema von Thomas Ptacek.
bearbeiten @ ZJR: Selbst wenn die Salze vollständig öffentlich wären, würden sie immer noch den Vorteil von Rainbow-Tabellen besiegen. Wenn Sie ein Salz und gehasht Daten haben, umkehren das Beste, was Sie tun können, um die rohe Gewalt ist (vorausgesetzt, dass die Hash-Funktion kryptographisch sicher ist)
bearbeiten @ n10i: Siehe für secure hash function Wikipedia-Artikel. Wie für die Salzgröße verwendet die beliebte bcrypt .gensalt() - Implementierung 128 Bit.
Bitte nehmen Sie sich einen Moment Zeit, um diese sehr gute Beschreibung von Salzen zu lesen und
- 1. Wie Passwörter zu hacken und zu salzen
- 2. Muss ich das Salz mit bcrypt lagern?
- 3. Werte für Hashing und Salzen
- 4. was ist die beste Art und Weise CSV-Datei
- 5. was ist die beste Art und Weise Farbspeicher in SQL
- 6. Die beste Art, eine Spielkarte zu erstellen
- 7. Die beste Art Guava zu verwenden
- 8. Welche Version von Pyramid habe ich und was ist die beste Art zu aktualisieren?
- 9. was ist die beste Art und Weise in Javascript Variablentyp zu überprüfen
- 10. Was ist die beste Art und Weise, zu wissen, begehen wurde eine bestimmte Linie
- 11. Die beste Art, Benutzer zu finden
- 12. Was ist die richtige Art, Objekte zwischen Klassen zu teilen?
- 13. Salzen meine Hashes mit PHP und MySQL
- 14. Was ist die beste Architektur, um zu XMPP zu überbrücken?
- 15. Beste Art, QSignalMapper zu verwenden
- 16. In C#, was ist die beste/akzeptierte Art der Konstruktorverkettung?
- 17. Was ist die beste Art, mit akka von nodejs zu arbeiten
- 18. Was ist die beste Lösung, um ein Nutzerland zu überprüfen?
- 19. Was ist die beste Art zu speichern Liste <Object> in Windows 8 App
- 20. Was ist die beste semantische Möglichkeit, einen Suchbereich zu umbrechen?
- 21. Was ist die beste Art Live-Streaming von iPhone-Kamera zu einem Medienserver?
- 22. mit Salzen in Hashing
- 23. Beste Art, Visual Studio zu kaufen
- 24. Was ist die beste Art zu verwenden "nicht gleich" in Python?
- 25. Was ist die beste Art, mit Arrays.asList() eine Liste zu initialisieren
- 26. Was ist die clevere Art, OrderBy/ThenBy zu implementieren?
- 27. Was ist die eleganteste Art, Bereiche in Ruby zu sortieren
- 28. Was ist die bevorzugte Art, Yeoman Generatoren zu aktualisieren?
- 29. Was ist die effizienteste Art, Core Data zu verwenden?
- 30. Was ist die richtige Art, diesen Code zu schreiben?
Hashing ich den Zweck des Salzes würde sagen, ist nicht ** ** öffentlich, entweder zu sein. – ZJR
können Sie bitte erklären "Hash-Funktion ist kryptografisch sicher". Entschuldigung, ich bin neu in der Kryptographie. auch in deiner Antwort hast du erwähnt "lange genug, um die Verwendung von Regenbogen-Tabellen zu besiegen" Wie lange sollte das Salz sein, um lang genug zu sein? – Neel