suit: Login Verfahren

Beitrag lesen

Wo besteht der Sinn darin? Ein login auf jeder Seite? Ist nicht die Vorgabe.

Natürlich hängt das von der Vorgabe ab - aber ohne Vorgabe würde ich das Login prinzipiell auch auf jeder Seite anbringen (oder zumindest da, wo es erforderlich wird prompten).

Es befindet sich bereits eine DB mit >250k Usern, für dich ich eben ein Login in diesem Bereich (siehe weiter unten) möglich mache.

Einmal alle passwörter in der Datenbank durchhashen ist für ein DMBS kein Problem und flott erledigt - 250.000 Benutzer sind eine Menge, 250.000 Datensätze in einer Tabelle eher durchschnittlich.

Ich mache es damit man die Session-ID nicht zufällig generieren kann, mit MD5 bzw. SH1 kann ein Angreifer nicht wissen woraus diese ID besteht, evtl. ist da noch ein extra Timestamp ect.

Eine Session-ID zu erraten ist "realtiv" einfach, wenngleich extrem unwahrscheinlich - aber für die Sicherheit des Loginverfahrens sollte sie nicht von Bedeutung sein, da das Problem an anderer Stelle liegt, wenn jemand mit einer geklauten Session ID ein bereits vollzogenes Login stehlen kann. Hier gehört einfach eine Ordentliche Session-Tabelle her - ggf. gebunden an die IP und an einen Zeitraum.

Den timestamp hinzuzufügen ist unsinnig, da die Session ID sowieso aufgrund gewisser vom System vorgegebener Parameter generiert wird.

Wenn du einen timesamp hinzufügst ist das erraten einer Session theoretisch sogar einfacher da sich mit einem bekannten Wert leicher Kollisionen finden lassen.