AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [PHP]Zwei kodierte Strings miteinander vergleichen
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP]Zwei kodierte Strings miteinander vergleichen

Ein Thema von CalganX · begonnen am 18. Mär 2003 · letzter Beitrag vom 19. Mär 2003
Antwort Antwort
philwo

Registriert seit: 18. Mär 2003
9 Beiträge
 
Delphi 7 Personal
 
#1
  Alt 18. Mär 2003, 17:44
Womit kodieren? Ganz einfach. Nimmst du dir die Funktion md5, oder die Funktion sha1: (ist eigentlich egal, obwohl SHA1 etwas sicherer sein sollte)

Definiert sind die als folgendes:

Code:
string md5 ( string str )
string sha1 ( string str )
Nun speicherst du bei der Anmeldung das gehashte Passwort des Typen so in der Datenbank:

Code:
$passwd = sha1($_POST['passwort']);
wo $passwd das gehashte Passwort ist und $_POST['passwort'] das eingegebene Klartext Passwort.

Wie du dann die Variable in deine DB packst, weißt du wahrscheinlich besser als ich ...

Wie du das dann vergleichst? Ganz einfach:

Beim Login machst du das gleiche:

Code:
$eingegebenes_passwd = sha1($_POST['passwort']);

if ($passwd_aus_datenbank == $eingegebenes_passwd)
{
  print("Herzlichen Glückwunsch, du bist der Chef.");
}
Wenn bei dir für zwei verschiedene Aufrüfe der md5() oder der sha1() Funktion was verschiedenes für den gleichen String rauskommt, ist DEFINITIV was kaputt bei dir, oder du machst was falsch ...

Du kannst auch die crypt() Funktion benutzen, welche jetzt bei PHP am sichersten ist, weiß ich nicht. Ich tippe mal auf crypt() mit MD5 oder Blowfish als Algorithmus, aber der muss wiederum nicht auf jedem System verfügbar sein. Krank.

(Edit: Die crypt() Funktion würde ich dir für den Anfang nicht empfehlen - da kommt wirklich immer was anderes raus, auch bei gleichen Strings. Liegt an der Funktionsweise: Um das sicherer zu machen, wird noch ein Zufallswert mit verschlüsselt. Den müsstest du auch irgendwie in der DB speichern und dann beim checken wieder auslesen. Nimm einfach md5() und alle sind glücklich. )

Philipp
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz