5

通常在您注册后的任何网站上,他们都会向您发送一封带有帐户激活码的电子邮件,是否有关于此技术的一些信息/最佳实践?
比如你如何生成它们,你如何存储它们,你是否编码这些激活码?

4

2 回答 2

6

生成激活码可以像生成具有固定位数的随机数一样简单。

我个人这样做,然后将生成的代码与用户名/密码/电子邮件等一起存储在数据库的用户表中,以便在单击链接并运行检查代码时可以快速验证。

我通常使用“长”数据类型并生成 9 位随机数,并将这些原始(未编码)存储在数据库中以便于检索。密码应该进行编码,但激活码是一次性使用的一次性值,因此无需任何特殊考虑。

于 2010-03-04T14:00:51.847 回答
2

恕我直言,最好的方法是不要存储密钥并在需要时使用种子或私钥生成它。或者使用 MD5 摘要类型的逻辑来使用特定的用户参数,例如,生成一个字符串“username-email-id”并将其散列并在用户再次单击时将其发送到电子邮件中,尝试生成密钥并将其匹配用户密钥。无需储存,也无法再生。

于 2010-03-04T14:05:06.453 回答