Ist eine Benutzerkontoaktivierung E -Mail ohne ein Geheimnis im DB einigermaßen sicher?

StackOverflow https://stackoverflow.com/questions/1158258

  •  18-09-2019
  •  | 
  •  

Frage

Ich möchte eine Newsletter -App erstellen, und Benutzer müssen natürlich bestätigen, dass sie sich für den Newsletter angemeldet haben, damit wir sie nicht spammen, wenn einige Bot Adressen eingegeben haben.

Meine Idee war es, dem Benutzer einfach eine E -Mail zu senden, die einen Link enthält, der ein Geheimnis in der URL enthält, bei dem es sich um einen Hash der E -Mail -Adresse und einen geheimen Wectekey handelt.

Meine Fragen sind Folgendes: Kann jemand, indem er ein paar Konten registriert und damit den Hash des Geheimnisses mit seiner Adresse erhalten, den Wittkey erraten und so jede E -Mail -Adresse registrieren, die sie möchte?

Ich sehe nichts, was daran gewonnen werden könnte, aber wenn es sehr einfach ist, wird es wahrscheinlich jemand tun und ich werde auf die schwarze Liste.

Mein Grund, kein nicht aktiviertes Benutzerkonto zu speichern, ist einfach, dass ich sie nicht alle x Tage aus der DB löschen möchte.

War es hilfreich?

Lösung

Wenn Sie sicherstellen, dass Sie so etwas verwenden SHA1 Mit einem völlig zufälligen Salz/SiteKey wäre es zwecklos, den Withty -Angriff umzukehren.

Wenn jemand tat Ich möchte ihre eigenen Hashes synthetisieren, um willkürliche Adressen zu registrieren. Eine effektivere Verwendung ihrer Zeit wäre, Zugriff auf Ihren Server zu erhalten, um den Quellcode zu lesen :)

Andere Tipps

Ich denke, es wäre am besten, ein zufälliges Geheimnis zu generieren und es im DB zu halten. Auf diese Weise gibt es nichts, was erraten werden kann. (Zumindest nichts, was die Erlaubnis zum Hinzufügen gewährt irgendein Email).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top