php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 11-12-2006, 10:26
dakingno1
 Registrierter Benutzer
Links : Onlinestatus : dakingno1 ist offline
Registriert seit: Nov 2006
Beiträge: 149
dakingno1 ist zur Zeit noch ein unbeschriebenes Blatt
Standard md5 wieder umkehren!

In meiner Datenbank steht das Passwort in md5.
Nun möchte ich eine formmail verschicken, wenn jemand sein Passwort vergessen hat.

per select statement hole ich die daten aus der Datenbank.
Das Passwortfeld in in einer Variable gespeichert.

Muss ich nun vor dem Namensfeld wieder md5 schreieb noder wie geht das?!

Hier der Code:


PHP-Code:

$sql 
mysql_query("SELECT * FROM tbl_user WHERE email = 
'"
.$_POST[eMail]."'");
$erg mysql_fetch_assoc($sql);

        
$var1 $_POST[eMail];
        
$var2 $erg['email'];

if (
$var1 == $var2)
{
$var1 $erg['nickname'];
// Ich würde es mir so vorstellen: $erg['md5(Passwort)'] ???
$var2 $erg['Passwort'];
$mail_empfaenger=$_POST[eMail];
$mail_absender=$_POST[eMail];
$betreff="Passwortanforderung für bday-bash.de.ms";
$text="Ihr Nickname lautet $var1, ihr Passwort $var2.
\n Mit freundlichen Grüssen
ihr bday-bash.de.ms Team"
;
mail($mail_empfaenger$betreff$text,"from:admin@bday-bash.de.ms"); 
Mit Zitat antworten
  #2 (permalink)  
Alt 11-12-2006, 10:29
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: md5 wieder umkehren!

MD5 ist nicht umkehrbar. Es ist keine Verschlüsselung, sondern ein Hash.

Wenn jemand sein Passwort vergessen hat, generiere ein neues, und sende ihm dieses zu.

Ist übrigens nicht so, dass wir das Thema nicht schon ettliche Male gehabt hätten.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 11-12-2006, 11:19
dakingno1
 Registrierter Benutzer
Links : Onlinestatus : dakingno1 ist offline
Registriert seit: Nov 2006
Beiträge: 149
dakingno1 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie verschlüssel ich die PAsswörter sonst am besten in meiner Datenbank?!
Mit Zitat antworten
  #4 (permalink)  
Alt 11-12-2006, 11:26
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mit SHA1 oder MD5 (und gegebenenfalls einem so genannten salt). Es ist schon gut so, dass man das nicht umkehren kann. Für dein Problem hat wahsage dir schon eine gängige Lösung angeboten: Neues Passwort generieren und per E-Mail an den Benutzer schicken, der seins vergessen hat.
Mit Zitat antworten
  #5 (permalink)  
Alt 11-12-2006, 11:26
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von dakingno1
Wie verschlüssel ich die PAsswörter sonst am besten in meiner Datenbank?!
Wieso "sonst"?
Weisst du überhaupt, was du willst? Nur, weil ich dir gesagt habe, dass du keine "entschlüsselbaren" Passwörter ablegen, sondern im Bedarfsfall neue vergeben sollst, willst du jetzt gleich wieder eine Kehrtwende machen, weil's dir zu komplex erscheint oder was ...?

Sie gehashed abzulegen, ist absolut üblich und auch tauglich.
Ob es noch MD5 sein "darf", oder inzwischen lieber etwas "kräftigeres" wie SHA-1 sein sollte ... darüber könnte man weiter nachdenken.

Aber eine umkehrbare Verschlüsselung wäre witzlos. Der Schlüssel müsste irgendwo in deinen Scripten abgelegt werden - und dann hätte der, der Zugriff auf den Server bekommt, sie genauso in der Hand, als ob du direkt Klartextpasswörter gespeichert hättest.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #6 (permalink)  
Alt 11-12-2006, 11:58
dakingno1
 Registrierter Benutzer
Links : Onlinestatus : dakingno1 ist offline
Registriert seit: Nov 2006
Beiträge: 149
dakingno1 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mein Problem ist dabei nur, dass am anfang jeder sein eigenes Passwort festlegen soll. Wenn dann jemand sein Passwort vergisst, und ein neues geshccikt bekommt, dann hat er ja sein altes nicht mehr und muss sich das generierte evtl. merken.

Eigentlich war es nicht vorgesehen sein Passwort ändenr zu können. Das würde wieder eine neue phpü Seiet bedeuten. Doch leider bin ich noch nicht mal mit den Grundfunktionen fertig, aber ich habe mir das durch den Kopf gehen lassen und werde es dann doch mit dem generierten PAsswort machen.

Nur noch hab ich kein Plan wie ich das PAsswort am sinnvollsten generieren lasse....
Mit Zitat antworten
  #7 (permalink)  
Alt 11-12-2006, 12:47
Dennis79
 Newbie
Links : Onlinestatus : Dennis79 ist offline
Registriert seit: Jul 2006
Beiträge: 73
Dennis79 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi,

ist doch nicht sooo schwierig.
Wenn jemand ein neues Passwort anforderst,
generierst Du einen zufälligen String (das geht z.B. so (klick) ), schreibst diesen per UPDATE-Abfrage in Deine Datenbank und schickst den Wert mit mail() durch die Gegend.

Das war#s doch schon

Gruß,
Dennis
Mit Zitat antworten
  #8 (permalink)  
Alt 11-12-2006, 12:54
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Es gibt unzählige Möglichkeiten, ein Passwort zu generieren... einige davon kannst du sogar hier in den Code-Snippets finden.

Zurück zu deinem eigentlichen Problem:
Ein User, der sein Passwort vergessen hat und sich ein neues, Zufallspasswort generieren und mailen lässt, sollte in der Regel nicht dazu gezwungen sein, sich dieses zu merken. Er muss sich nur einmal damit einloggen können, um in seinen Benutzereinstellungen (bzw. seinem Profil) ein neues, eigenes Passwort anzulegen. Das ist eine gängige Art und Weise, diese Problematik zu lösen.
Mit Zitat antworten
  #9 (permalink)  
Alt 11-12-2006, 14:58
dakingno1
 Registrierter Benutzer
Links : Onlinestatus : dakingno1 ist offline
Registriert seit: Nov 2006
Beiträge: 149
dakingno1 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Griecherus
Es gibt unzählige Möglichkeiten, ein Passwort zu generieren... einige davon kannst du sogar hier in den Code-Snippets finden.

Zurück zu deinem eigentlichen Problem:
Ein User, der sein Passwort vergessen hat und sich ein neues, Zufallspasswort generieren und mailen lässt, sollte in der Regel nicht dazu gezwungen sein, sich dieses zu merken. Er muss sich nur einmal damit einloggen können, um in seinen Benutzereinstellungen (bzw. seinem Profil) ein neues, eigenes Passwort anzulegen. Das ist eine gängige Art und Weise, diese Problematik zu lösen.
Jo, das ist mir auch eingefallen.
Diese Funktion war nur eigentlich n icht vorgesehen, aber nun muss ich es wohl noch mit integrieren....
Mit Zitat antworten
  #10 (permalink)  
Alt 11-12-2006, 15:28
nOe
 Registrierter Benutzer
Links : Onlinestatus : nOe ist offline
Registriert seit: Nov 2006
Ort: GAMERny
Beiträge: 253
nOe ist zur Zeit noch ein unbeschriebenes Blatt
nOe eine Nachricht über ICQ schicken
Standard

Ich generiere mir meine Passwörter immer mit 'nem Timestamp... So kann jedes Passwort nur einmal genutzt werden :>

Der Code sieht dann so aus:
PHP-Code:
$password time();
$password md5($password);
$password substr($password08);
$cr_password md5($password); 
Dann wird $password per Mail verschickt und $cr_password in die DB eingetragen. Alles funzt und alle sind zufrieden..

mfg nOe
__________________
"I am what I am and I do what I can..."
Meine HP -- Mein GPG-Key
Meine Projekte: WebStorage 2.0 -- easyAJAX-Chat 2.2.0 (beta)
Mit Zitat antworten
  #11 (permalink)  
Alt 11-12-2006, 15:32
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von nOe
PHP-Code:
$password time();
$password md5($password);
$password substr($password08);
$cr_password md5($password); 
Nicht gerade sicher, da überhaupt kein Zufallswert sondern nur timestamp und somit - theoretisch - leicht rekonstruierbar.
Wenn es unbedingt kurz und knackig sein muss, dann etwas in der Art:
PHP-Code:
$rand md5(uniqid(rand())); 

Geändert von Griecherus (11-12-2006 um 15:34 Uhr)
Mit Zitat antworten
  #12 (permalink)  
Alt 11-12-2006, 15:32
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von nOe
Ich generiere mir meine Passwörter immer mit 'nem Timestamp...
Gut zu wissen! Jetzt müsste ich mir also nur noch merken, zu welchem exakten Zeitpunkt ich auf deiner Seite für einen anderen Nutzer ein neues Passwort anfordere - dann brauche ich gar nicht mehr seine Mail lesen zu können, sondern kann mich auch so damit als er einloggen ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #13 (permalink)  
Alt 11-12-2006, 15:34
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von wahsaga
Gut zu wissen! Jetzt müsste ich mir also nur noch merken, zu welchem exakten Zeitpunkt ich auf deiner Seite für einen anderen Nutzer ein neues Passwort anfordere - dann brauche ich gar nicht mehr seine Mail lesen zu können, sondern kann mich auch so damit als er einloggen ...
Eben das meinte ich mit "leicht rekonstruierbar".
Mit Zitat antworten
  #14 (permalink)  
Alt 11-12-2006, 15:40
nOe
 Registrierter Benutzer
Links : Onlinestatus : nOe ist offline
Registriert seit: Nov 2006
Ort: GAMERny
Beiträge: 253
nOe ist zur Zeit noch ein unbeschriebenes Blatt
nOe eine Nachricht über ICQ schicken
Standard

Hmm da hab' ich so noch gar nicht drüber nachgedacht... Werd's mir nochmal überlegen und vielleicht eine Random*md5(md5(md5(md5... codierung machen Also so Random*md5. Tjaja, dann versucht das doch nochmal.. har har
__________________
"I am what I am and I do what I can..."
Meine HP -- Mein GPG-Key
Meine Projekte: WebStorage 2.0 -- easyAJAX-Chat 2.2.0 (beta)
Mit Zitat antworten
  #15 (permalink)  
Alt 11-12-2006, 15:41
Griecherus
 PHP Senior
Links : Onlinestatus : Griecherus ist offline
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
Griecherus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von nOe
Hmm da hab' ich so noch gar nicht drüber nachgedacht... Werd's mir nochmal überlegen und vielleicht eine Random*md5(md5(md5(md5... codierung machen Also so Random*md5. Tjaja, dann versucht das doch nochmal.. har har
Auch nicht gerade sicher... Ich würde das ganze an deiner Stelle wirklich anders angehen...
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

WYSIWYG Editor

WYSIWYG Editor zum Einbinden in PHP Scripte.

21.10.2019 Stephan_1972 | Kategorie: PHP/ WYSIWYG
Newsmanager

Der Newsmanager ist ein Newssystem und Newsletter in einem. Mit WYSIWYG Editor und E-Mail import aus einer bestehenden MySql Datenbank sowie dynamische Kategorien / Themen Filter.

11.09.2019 Stephan_1972 | Kategorie: PHP/ News
Modelmanager

Der Modelmanager ist ein Webtool für Fotografen, kann als komplette Homepage oder als Webtool installiert werden.

11.09.2019 Stephan_1972 | Kategorie: PHP/ Webservice
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:57 Uhr.