Jump to content
Unity Insider Forum

Userpasswort in Datenbank sicher eintragen (hashing)


Recommended Posts

Huhu, da mich das Thema sehr interessiert dachte ich mir ich mach hier eben mal nen neuen Thread auf.

 

Kurz zu meiner Aufgabe die ich am lösen bin etc.

 

---> Ein ganz simpler Login Bereich mit Registrierung, Login, PW Zurücksetzen. <---

 

mach das alles über eine php schnittstelle, also meine php scripts regeln die verarbeitung mit der Datenbank.

 

Meine Frage ist nun wie sicher das ganze bisher ist.

 

Also ich habe es geschafft, dass man sich Registrieren kann mit einem Username und einem Passwort.

 

Nehmen wir hier mal als bsp. Username = Damon ; Password = Karotte;

 

Jetzt füllt mein Benutzer das Formular ja noch in seiner App aus. trägt dort also ein Username und Password. Jetzt drück er auf Registrieren und erst jetzt werden die beiden Daten zu meinem PHP-Script geleitet wo ich das Passwort mit BCrypt hashe.

 

(Der Hash für Karotte ist $2y$12$6qRXqE1nFGDFWDJC0J.dguc1J8.iYzQc35jHqavJR0dHY\/HoRAzei).

 

Nach dem Hashen trage ich den Usernamen also Damon und das gehashte passwort in meine Datenbank ein.

 

Das ganze kann ich bereits auch wieder auslesen, also schauen ob das passwort mit dem hash code beim einloggen übereinstimmt.

 

---------------------------

 

Zu meiner eigentlichen Frage, wie sicher ist das ganze? Wenn Hacker bereits die Daten abfangen bevor diese an mein PHP Script gesendet werden, oder aber Hacker sich auf meine DB-Hacken und dann den Hash Code in Erfahrung bringen. Können sie dann nicht den Hash wieder entschlüsseln?

 

Ist es überhaupt der richtige Ansatz das PW erst im PHP-Script zu hashen oder sollte ich es direkt bei Eingabe in das Formular hashen?

 

Über Anregungen, Tipps und Tricks etc. wäre ich dankbar :) Das Thema hat mich irg. wie gefesselt haha

Link zu diesem Kommentar
Auf anderen Seiten teilen

Punkt 1: Sicher ist gar nichts. Man kann es potentiellen Angreifern nur so schwer wie möglich machen.

Punkt 2: Das Schöne an Hashes ist ja, dass man nur mit dem Hash nicht auf das Passwort kommen kann. Stell es dir wie eine mathematische Formel vor. Wenn du die Zahl 15 hast (Das ist in diesem Beispiel der Hash), kannst du daran nicht erkennen, ob diese Zahl durch 3*5, 10+5 oder 37-22 berechnet wurde.

 

Hacker können deine Daten theoretisch überall abfangen, daher sollte man sie möglichst nie im Klartext übertragen. Daher würde ich empfehlen, die Daten schon im Client zu verschlüsseln, die per SSL (https) übertragen und einen Salt benutzen, der nicht zu einfach gewählt wird.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Lädt...
×
×
  • Neu erstellen...