Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Forum,

wenn ein Benutzer ein Kennwort eingibt, wird dies bei mir in der Datenbank abgelegt. Jetzt möchte ich aber auch, dass das Kennwort verschlüsselt wird. Wie stelle ich dies am besten an? Gibt es schon funktionen, die dies für mich machen?

Gruß aus Hanau

Patrick

Geschrieben
Jetzt wo du es sagst / schreibst :rolleyes: sehe ich die Möglichkeit das Passwort sicher zu verschlüssen. Gibt es keine Möglichkeit das Passwort wieder auszulesen?

wofür ? wenn man es umkehren könnte, wäre ein PW nicht mehr sicher ...

ich glaube die umkehrung von md5 ist nur theoretisch möglich und bis dato ungeknackt.

in der regel würde man BF einsetzen, aber das dauert bei einem 128bit hash und einem PW , dass aus theoretisch unendlich vielen zeichen bestehen kann ;)

Geschrieben
Jetzt wo du es sagst / schreibst :rolleyes: sehe ich die Möglichkeit das Passwort sicher zu verschlüssen. Gibt es keine Möglichkeit das Passwort wieder auszulesen?

ma, du liesst dann halt das verschlüsselte passwort aus und vergleichst es mit dem passwort was der benutzer eingegeben hat, dass musst du vorher nur auch nochmal verschlüsseln. wenn er das richtig eingegeben hat, sind beide hashs gleich....

Geschrieben

MD5 ist nicht umzukehren da MD5 kein Verschlüsselungs- sondern ein Hash-Algorithmus ist. Egal wie lang die eingabe ist, das Hash den MD5 auswirft ist immer gleich lang. MD5 zu überwinden ist nur möglich, wenn man aus jeden möglichen Ursprungstext einen Hash erzeugt und mit dem fertigen Hash vergleicht.

Nun zu der Idee ein Passwort "verschlüsselt" zu speichern.

Zunächst: Alles was du selbst Programmieren kannst ist unbrauchbar, dann kannst du es auch im Klartext speichern.

Es gibt zwar jede Menge sichere Verschlüsselungsmethoden, aber dazu braucht man immer einen Schlüssel. Und damit dein Script die Daten entschlüsseln könnte, bräuchte es diesen Schlüssel.

Nun kann man aber davon ausgehen, dass jemand der deine Datenbank auslesen kann auch in deine Scripte reinschauen kann. Was wiederum die Verschlüsselung sinnlos macht.

Die einzige Methode die sicher ist, funktioniert über Hashes (z.b. MD5). Du hasht das Passwort beim speichern in der Tabelle und vergleichst bei jedem einloggen die gehashte eingabe mit dem DB-Eintrag. Sind die gleich ist das Passwort richtig (das zwei Eingaben den selben Hash erzeugen ist seeehr, seeeehr, seeehr unwahrscheinlich und afaik ist auch kein Fall bekannt).

Wenn der Benutzer sein Passwort vergessen hat, generierst du ein neues, zufälliges und schickst ihm das.

Ich persönlich traue keinem Anbieter, der in der Lage ist mir mein vergessenes Passwort im Klartext zuzuschicken.

Geschrieben

Ja, das Verschlüsseln auf DB-Ebene macht Sinn. MySQL kann ja was mit MD5 anfangen und dann machst du in deinem PHP-Skript nix anderes als

if( md5($eingabePasswort) == MD5_Passwort_aus_DB)

   // eingeloggt

else

   // falsches Passwort

... und kannst natürlich auch was anderes als MD5 nehmen ;)

Geschrieben

Danke für eure Unterstützung.

Ich habe mich für MD5(Kennwort) entschieden und die Passwörter bereits umgestellt. Ich möchte nur gewährleisten, dass die Passwörter nicht von jeder beliebigen Version ausgelesen werden können.

Gruß aus Hanau

Patrick

Geschrieben
Danke für eure Unterstützung.

Ich habe mich für MD5(Kennwort) entschieden und die Passwörter bereits umgestellt. Ich möchte nur gewährleisten, dass die Passwörter nicht von jeder beliebigen Version ausgelesen werden können.

Gruß aus Hanau

Patrick

Deswegen werden Passwörter auch nicht im Klartext in Datenbanken abgelegt.

Könnte man das verschlüsselte Passwort einfach wieder entschlüsseln, wäre das ganze ja für die Katz :beagolisc

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

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

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...