# Passwörter verschlüsseln



## Bl!zZzArD (15. Juni 2002)

So ich hab jetzt schon länger mit einem login gearbeitet der zwar sehr gut funktioniert aber die PWs nicht verschlüsslt und ich denke mal dass das ein bissel unsicher ist.
jetzt wollte ich mal von euch wissen wie ich es machen kann, dass sie verschlüsselt werden.

thx


----------



## fungo (15. Juni 2002)

Es gibt ne Menge vorgefertigte Algorithmen, aber wenn du nen Freak bist, dann kannste Dir auch deinen eigenen Algorithmus schreiben 

Ich verwende meist das md5 Verfahren, also :

z.B.
$passwort = md5($passwort);

Du kannst das Passwort danach nicht mehr entschlüsseln!

Also mach es so, dass das Passwort bei der Registrierung gleich verschlüsselt in der DB gespeichert wird und nachher wenn du dich einloggst das Passwort zur Laufzeit verschlüsselt wird und mit dem schon verschlüsselten in der DB abgleichst

Gibt aber auch noch crypt() und noch nen paar mehr glaub ich .


----------



## Bl!zZzArD (16. Juni 2002)

wenn ich dann des verschlüsselte PW in der DB mit einem eingegebenen vergleichen will geht des auch ganz einfach über md5() oda wie ?
also

$eingabe_pw = md5($eingabe_pw);

if($eingabe_pw == $mysql_pw){}

??


----------



## dave_ (16. Juni 2002)

andersrum würde ich das machen.
Du speicherst die passwörter in der datenbank unverschlüsselt, und im cookie verschlüsselt.

beim login vergleichst du jetzt das pswd aus dem cookie mit dem aus der datenbank (dazu halt das in der db verschlüsseln)

ansonsten, kann man sich zB sein passwort nicht mehr zuschicken lassen und so... ist unpraktisch imho


----------



## Bomber (16. Juni 2002)

fungo hat gesagt.:
			
		

> Es gibt ne Menge vorgefertigte Algorithmen, aber wenn du nen Freak bist, dann kannste Dir auch deinen eigenen Algorithmus schreiben



sagt mal n beispiel wie man sowas machen könnte

<- wannabe freaky


----------



## Bl!zZzArD (16. Juni 2002)

<- wanna be a freak two =)

ne aber ich hab gedacht dass es sicherer ist wenn die PWs verschlüsselt in der DB stehen... weil ich hab schon öfters von
nem freund gehöhrt dass leute irgendwie zugriff auf seine DB hatten
aber nur lesen konnten... wenn dann die PWs unverschlüsselt drin stehen dann können sie die ja einfach lesen...
weil was bringt sonst das ganze verschlüsseln wenn des nur in der session oder im cookie verschlüsselt steht ?

thx


----------



## dave_ (16. Juni 2002)

so einfach bekommt man keinen zugriff zu ner MySQL datenbank.
Das ganze ist schon sehr ausgereift, denke mal in wirklich professionellen bereichen wird zwar oracle noch mehr benutzt..

dann muss er schon ein script verdammt ungünstig geschrieben haben, das irgendwelche leute so zugriff auf die db (besser gesagt bestimmte tabellen) haben.


----------



## xxenon (16. Juni 2002)

hmhm...

also ich denk mal in der db verschlüsselt speichern machen die meisten, damit die webmasters nicht die user-passwörter einsehn können, was irgendwie auch verständlich is, weil ich würde auch nicht wollen dass jeder mein pw kennt...

@godwich: was bezweckst du damit das cookie verschlüsselt zu speichern? ich mein wenn ein cookie gesetzt ist kann sowieso jeder mittels browser in den gesperrten bereich einloggen, warum sollt er also wirklich die cookies durchstöbern und danach suchen? (im übrigen kann man ja auch beide verschlüsseln =) ..)

neben md5() gibt es noch crypt() und crc32()...

wobei crypt weder entschlüsselt werden kann noch jedes mal gleich verschlüsselt wird (ich versteh das auch net wirklich...)

und crc32 verschlüsselt nur in zahlenwerte:

http://xxenon.cdaweb.at/pwd.php
-> ausprobieren =)
ich empfehle md5()

greets, xxenon


----------



## Bl!zZzArD (16. Juni 2002)

da ich denke mal dass ich es dann einfach verschlüsselt in die DB schreib weil nacher mehrere leute auf die DB zugríff haben und so die PWs net sehen können.. 
aber thx an alle


----------



## fungo (16. Juni 2002)

sag ich doch 

Ich hab im Moment mein Informatik Buch aus der Schule nicht mehr, aber da standen eine Menge Algorithmen drin.


----------

