phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?AW=3A_=5Bphp=5D_Verschl=FCsselung_von_Daten?=

[php] =?iso-8859-1?Q?AW=3A_=5Bphp=5D_Verschl=FCsselung_von_Daten?=

Gloss Mathias Mathias.Gloss_(at)_start.de
Tue, 30 Jan 2001 17:26:40 +0100


Aloha,

> ----------
> Von: 	Michael Raab[SMTP:mraab_(at)_macbyte-computing.de]
> 
> Wenn sich Besucher dazu entscheiden einen Newsletter zu abonieren, wird 
> zunächst eine Mail, an die angegebene Adresse geschickt. In der Mail ist 
> ein Link, den der Abonent erst beim anklicken in die Mailliste einträgt. 
> Der sieht dann so aus 
> http://www.domain.de/shared/subscribe.php?mail=nowhere_(at)_nowhere.net. Nun 
> können einige Blöde die Mailliste wieder verderben indem sie einfach eine 
> andere Mailadresse dort angeben können. Mein Gedanke ist nun der. Die 
> Mailadresse des Interessierten wird verschlüsselt und mit einer Prüfsumme 
> abgesichert. Klickt der Interessent jetzt auf den Link, so wird die 
> Mailadresse entschlüsselt und wenn Ok erst dann in die Mailliste 
> eingetragen. Somit ist ein Mißbrauch nicht mehr möglich.
> 
Naja, wenn der "Feind" die Prüfsummenberechnung weis, dann schon. (z.B. kann
man md5() verwenden).

Es geht aber auch anderst, und nicht nur in deinem Fall.

Ich Speichere die eingegeben Daten in einer temporären Tabelle in einer 
DB mit einem Timestamp. Per Zufallsgenerator wird ~ alle 100 Seitenaufrufe 
eine Funktion ausgeführt, die alle Einträge löscht, die älter als Zeit X
sind. Somit
wird diese temp. Tabelle auch regelmäßig bereinigt.
Für jeden Eintrag in diese Tabelle wird ein 32byte langer Zufallsstring
erzeugt, der
auch in diese Tabelle gespeichert wird, mit den anderen Daten.
Bei dir würde die Temporäre Tabelle folgende Felder haben:

id Zufallszahl, 32 Zeichen
email    varchar 255
timestamp

Die erzeugte Zufallszahl mailst du jetzt als Link an den, der sich in die
Mailingliste 
eintragen will.

Z.b.

> http://www.domain.de/shared/subscribe.php?id=13asdf4h134h123asdfasdf08670a
> s
> 
Wenn der User auf den Link klickt, dann machst du in subscribe.php
folgendes:
- ist die Zufallszahl in der temp. Tabelle ? Ja: weiter, Nein: User
auslachen
- Daten aus der temporären Tabelle in die richtige Tabelle übernehmen
- Daten aus der temporären Tabelle löschen.


Das ganze Verfahren kann man auf fast beliebigie Anwendungsgebiete
übertragen.
Ich habe gerade was programmiert (in PERL), um allen aktiven Mitarbeitern
(die 
kommen aus SAP) ein Email mit einem Link und einer solchen Zufallszahl 
(512-stellig ;-)) zu senden. Die Zufallszahl wird in einer DB abgespeichert.

Damit können wir unsere innerbetrieblichen Umfragen zur Zufriedenheit usw.
be-
quem per Intranet machen, und die Abstimmungen sind garantiert anonym UND
jeder kann garantiert nur einmal abstimmen. Damit ist sogar unser
Betriebsrat zu-
frieden :-)))

Viele Grüße, Mathias



php::bar PHP Wiki   -   Listenarchive