【发布时间】:2011-04-10 01:20:01
【问题描述】:
当用户注册帐户时,他们会收到一封包含验证码的电子邮件,他们可以点击该验证码来验证他们的帐户。
这就是我生成验证码的方式。
md5(rand(0,1000)
使用下面的方法是不是一个糟糕的选择?它会生成一个介于 0-1000 之间的随机数。由于只有 1000 个选项,并且它们的 MD5 哈希值是已知的,因此攻击者应该只需要 1000 次试验就可以验证帐户,而不是真正属于他们
【问题讨论】:
-
“攻击者应该只需要 1000 次试验来验证帐户,而不是它真正属于他们”这就是为什么你也需要速率限制。
-
@NullUserException 你限制什么速率?攻击者将使用多个 IP 地址并尝试注册多个帐户...
标签: php security registration