kills Geschrieben 25. November 2004 Teilen Geschrieben 25. November 2004 Hallo zusammen, ich soll ein TAN-System entwerfen. Nun meine Frage: Wie würdet ihr die TANs generieren? in PHP? direkt auf DB Seite (MySQL)? eine authentifizierung soll mit folgenden Komponenten später durchgeführt werden: - UserId - UserPw - TAN Gibt was was ich nicht bedacht habe / beachten muss? Danke im Vorraus, Gruß, Markus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 25. November 2004 Teilen Geschrieben 25. November 2004 Ich würde die TANs auf der PHP-Seite generieren und, wenn der Benutzer die neuen TANs akzeptiert hat (falls er da überhaupt eine Wahl hat), in die DB übertragen. Dort merkst du dir auch, welche TAN schon verwendet wurde (also auch alte TANs drinbehalten) und wenn eine Transaktion durchgeführt werden soll, plausibilisierst du die Benutzereingaben mit der DB und im Erfolgsfall markierst du die verwendete TAN als verwendet. Bei der Generierung stellst du im Gegenzug auch sicher, daß die TAN nicht schon als gebraucht in der DB eingetragen ist. Das ist meine erste Idee BTW: Voraus wird auch nach der NDR mit einem r geschrieben Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 25. November 2004 Autor Teilen Geschrieben 25. November 2004 Erstma danke Ich würde die TANs auf der PHP-Seite generieren und, wenn der Benutzer die neuen TANs akzeptiert hat (falls er da überhaupt eine Wahl hat), in die DB übertragen. Dort merkst du dir auch, welche TAN schon verwendet wurde (also auch alte TANs drinbehalten) und wenn eine Transaktion durchgeführt werden soll, plausibilisierst du die Benutzereingaben mit der DB und im Erfolgsfall markierst du die verwendete TAN als verwendet. Bei der Generierung stellst du im Gegenzug auch sicher, daß die TAN nicht schon als gebraucht in der DB eingetragen ist. Das ist meine erste Idee Naja also der benutzer hat keine Möglichkeit, eine TAN zu akzeptieren, dass macht ihn meinem Fall keinen Sinn. Ich werde nun also TANs generieren per PHP und in der DB einen UNIQUE-Index auf die Spalte TAN zur DB-Seitigen sicherung legen. Zahlen einfach per rand() erzeugen und aneinanderketten? ich glaub es ist gut, wenn ich die MD5 Summe einer zufallszahl bilde und dafon dann einen Teilstring extrahiere oder? Somit ist meine TAN dann Alphanumerisch.... BTW: Voraus wird auch nach der NDR mit einem r geschrieben :floet: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 25. November 2004 Teilen Geschrieben 25. November 2004 MD5 mit Zufallszahl klingt gut, vorausgesetzt, daß du deinen Benutzer alphanumerische TANs zumuten möchtest Vergiß aber nicht, daß du srand() mit nem Zeit-Parameter aufrufst, so daß nicht immer die gleichen Zufallszahlen rauskommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 25. November 2004 Autor Teilen Geschrieben 25. November 2004 MD5 mit Zufallszahl klingt gut, vorausgesetzt, daß du deinen Benutzer alphanumerische TANs zumuten möchtest Vergiß aber nicht, daß du srand() mit nem Zeit-Parameter aufrufst, so daß nicht immer die gleichen Zufallszahlen rauskommen. Naja ich glaub das kann man dem Benutzer schon zumuten. Dafür mach ich halt die Tan dann nicht ganz so lang. 6-8 Zeichen sollten reichen!?! Danke für den Tipp mit srand() dazu habe ich im Manual aber foglendes gefunden: Note: As of PHP 4.2.0, there is no need to seed the random number generator with srand() or mt_srand() as this is now done automatically. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 25. November 2004 Teilen Geschrieben 25. November 2004 6 - 8 Zeichen, danach wirds mühsam mit dem abtippen. Ah .. OK. Das PHP-Handbuch, was ich hier aufm Rechner hab, ist nimmer ganz up-to-date :floet: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
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.