MD5 notwendig?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
code
dank
datum
email
frage
funktion
helfen
jemand
kennwort
login
methode
programm
registrierung
session
sicherheit
system
tabelle
test
verbessern
vergessen
-
Habe follgende frage, mu? aber dazu weiter ausholen...
Ich habe bereits ein Login-Script geschrieben, bislang ohne MD5. Usernick und Kennwort werden in einer MySQL Tabelle gespeichert. Meldet sich ein User an, wird in der Tabelle nach dem Nicknamen gesucht, und verglichen ob das dazugeh?rige Kennwort mit der Eingabe ?bereinstimmt. Nun werden diese Daten in eine Session ?bernommen, um die Folgeseiten ?bersichtlicher gestalten zu k?nnen. Zudem finde ich diese L?sung recht sicher. Auch da ich nun die M?glichkeit habe, auf jeder Seite die sich nur ein angemeldeter User aufrufen darf, nochmals den Inhalt der Session zu checken. Damit unterbinde ich die direkte Eingabe der Url. Bzw. Sind die Daten in der Session leer, bzw. nicht korrekt gelangt man zu einer Fehlerseite, ansonsten zum Memberbereich.
Bei der Logout funktion wird dann nur noch die Session gel?scht, und eine Meldung ausgegeben.
Sodele, jetzt zu meiner eigentlichen Frage.. Zumindest habe ich selbst es nicht geschaft, mich ohne korrekten Eingaben anzumelden, oder auf die bezogenen Daten zuzugreifen--
a) ist jetzt noch immer die MD5-Methode ratsam?
b) haltet ihr das oben beschriebene f?r sicher, bzw. f?r wie siecher haltet ihr es?
c) was k?nnte man da noch coden, um die Sicherheit des Logins zu verbessern?
Freue mich ?ber jeden Rat und jeder Hilfe - Danke schon mal! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
MD5 iss schon sicher, aber halt nicht mehr r?ckg?ngig zu machen...
Also mir erscheint das ganze schon ziemlich sicher!
Eine Frage: Hast du das ganze Login-System selbst geschrieben? -
a) ist jetzt noch immer die MD5-Methode ratsam?
b) haltet ihr das oben beschriebene f?r sicher, bzw. f?r wie siecher haltet ihr es?
c) was k?nnte man da noch coden, um die Sicherheit des Logins zu verbessern?
a) teoretisch gedacht braucht man keine verschl?sselung, denn bim login wird es ja ech umgewandelt und verglichen.
ob man da nun verschl?sselt oder nicht vergleich ist nicht sehr unterschiedlich. aber es ist ein kleiner
sicherheits facktor f?r user.
b) ob es sicher ist h?ngt von den Usern ab (sihe c)
c) ich weiss zwar nicht was deine user eingeben m?ssen, um sich bei dir zu regestrieren,
aber wenn sie etwas als passwort ein geben (zB namen oder strasse) was sie schon vorher
eingegeben haben (sihe zB) eine fehlermeldung kommt. auch das sehr beliebte passwort
"passwort" solte unm?glich sein. Wie sicher etwas ist merkst du erst an den usern.
so ich hoffe ich konnte dir bissel helfen^^ -
@schrotti12
Ja das Loginscript habe ich mir selbst gecodet.
@icerikku
es handelt sich um ein Veranstaltungsplaner. Hier sollen sich diskothen z.b anmelden k?nnen, ja auch mit anschrift, etc. Also eigentlich nichts vertrauliches, da eine diskothek meist ?ffentlich ist
Im Login k?nnen sie dann ihr Wochenprogramm, News und ?hnliches anpassen.
Danke euch beiden f?r die Anregungen, w?rde mich sehr ?ber weitere freuen. -
Wow...
wei?t du, gibts irgendwo tutorials, wie man so was macht? -
also so ein loginscript schreiben is nicht schwer.
zu dem md5:
w?rdest du es als user wollen das deine geheimen passw?rter unverschl?sselt in irgendwelchen tabellen gespeichert werden? au?erdem ist es wenn ich mich richtig erinnere gesetzlich vorgeschrieben das passw?rter im internet nur mit one-way-verschl?sselungen (also nicht mehr entschl?sselbar) gespeichert werden d?rfen.
also ich pers?nlich w?rde mindestens eine xor-verschl?sselung verwenden.
das w?rde so aussehen:
function verschluesseln($s) { $pw = 'as?gh3?4?%/24KFH2"?$/#245?ED?g|hwe$)NZW)$)B/?$?BH/$'; $y = 0; for ($x=0; $x <= strlen($s)-1; $x++) { $tmp = $s[$x] ^ $pw[$y]; if (ord($tmp) != 0) $s[$x] = $tmp; $y++; if ($y >= strlen($pw)) $y = 0; } return $s; } $tmp = verschluesseln("test"); // verschlusselt "test" echo verschluesseln($tmp); // entschl?sselt "test" aus $tmp
-
@schrotti12
Tutorials zu diesem Thema findest du direkt hier. Oben im Men? gibts ein Ling, dann schauste mal unter PHP nach.
@kroko
Mist, dann werde ich mich wohl doch jetzt auch noch mit MD5 befassen m?ssen... -
was heisst denn hier befassen.
Bevor du das PW nach der registrierung in DB kloppst ein kleiner
$pw = md5($pw);
und bevor du das eingetragene PW vergleichst wieder ein
$pw = md5($pw);
fertig -
Ja, supi! Sorry, aber in meinen drei B?chern war die Funktion leider nicht beschrieben.
Danke dir -
ich denke mal haupts?chlich ist dieses MD5-passwort-get?del daf?r da, dass einmal geklaute datenbanken nicht gleich alles offen legen (ok, bruteforce ich komme) und zweitens irgendwo aus datenschutzgr?nden, da man davon ausgehen kann, dass ein user das selbe pw bei mehreren diensten verwendet und man dann ggf. dem login-admin ne strick draus dreht um an pws zu kommen
oder so.... -
Supi danke, dar?ber habe mir n?mlich auch schon den Kopf zerbrochen.
Kann mir jetzt noch jemand sagen, ob mein Login einigerma?en sicher ist, bzw. was man anders/besser machen k?nnte (mein bisheriges Login habe ich oben beschrieben)?
Achso,noch eine ganz wichtige Frage!!!
Wenn ich MD5 anwende, liegt ja das Kennwort verschl?sselt in der Tabelle. Die Verschl?sslung l??t sich auch nicht umkehren.
WIE kann ich jetzt aber ein Script "Kennwort vergessen" schreiben? Sollte ein User sein Kennwort vergessen, und neu anfordern,
will er es ja sicher nicht verschl?sselt haben, oder? Kann mir da auch noch jemand helfen? -
dann musst du wohl ein neues dynamisch genereiren,
es dem user zumailen und die MD5-Variante von dem neuen PW in die DB schreiben
Pr?fst du denn auch bei der registrierung, ob die email wirklich ne g?ltige email ist und auch die mail von dem benutzer (activierungscode oder dynamisches PW per mail)?
weil sionst kriegt ja irgendwer oder des Nirvana das pw.
Alternative:
diesen activation code kannst du nat?rlich auch bei der PW-vergessen funktion benutzen.
Wird ja von manchen boards auch gemacht.
Nachdem man PW vergessenhat, muss man erstaml wieder irgendwo wieder nen activation code (wird per mail zugesandt) eingeben und man kann dann sein pw ?ndern.
ist nur ne andere variante. ist ahlt geschmacksache -
nochma zu der sicherheit: ich hab selber ein login geschrieben *stolz sei* und nat?rlich auch mit md5 gesichert. wenn du sauer programmiert hast liegt die sicherheit bei ?ber 99,9% wer die daten haben will muss erst lester ?berwinden und dann auch noch deine db-daten kriegen und dann noch md5 decodieren k?nnen... da geht ?brigens ?ber schleifen is aber echt zeit aufwendig. die alternative zu dem pw-vergessen find ich echt gut. ich hab n?hmlich auch md5 und wenn da ein user ma sein pw vergisst dann is echt scheisse.
-
Danke f?r die Hielfe, finde die ideen wirklich genial - werde wohl beides miteinander verbinden. Sprich: Bei Registrierung generiertes Kennwort an mail adresse. Und das gleiche bei "Kennwort vergessen".
Vieeelen Dank :xyxthumbs: -
Dieses Thema wurde mit folgender Begr?ndung von kenny197902 geschlossen:
W?re ja dann erledigt!
Zur Sicherheit von MD5: Es gibt Programme, die es schaffen, MD5-Passw?rter herauszubekommen. Ich habe selbst hier einen Script, der es schafft (werde ich hier aber ganz klar nicht posten!!!). Dieser arbeitet genauso wie ein Programm, welches es schafft, verschl?sselte WinRAR-Dateien zu entpacken! Sofern der MD5-Code jemandem bekannt wird, oder auch jeder andere, kann dieser entschl?sselt werden! ...Eben durch das Verfahren einer Drehscheiben-Funktion (Profi-Hacker kennen den Begriff)!
(Dies ist eine automatische Antwort durch das System). -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage