为了账号安全,请及时绑定邮箱和手机立即绑定

为何设置验证码的有效期?

为何设置验证码的有效期?

PHP
米琪卡哇伊 2018-09-30 16:11:50
已经知道了md5不可以逆。有一个简单的token产生办法$token = md5($username.$password.$regtime);1.既然你不可以逆,为何token仅仅24小时有效?产生的验证链接register/active.php?verify=".$token."'2.我知道token是不包含slash符号的 空格的,为何激活的时候,代码需要这样写$verify = stripslashes(trim($_GET['verify'])); stripslashes没有必要哈trim也没有必要哈
查看完整描述

2 回答

?
缥缈止盈

TA贡献2041条经验 获得超4个赞

我记得以前有人说过这么一句话,验证码是我们的最后一道防线,如果不设置有效期,那这最后一道防线岂不是也要倒了?

查看完整回答
反对 回复 2018-10-08
?
繁华开满天机

TA贡献1816条经验 获得超4个赞

第一个问题:

  • 设置一个有效期,就是为了保存行为的一致性。举个最简单的例子来说,当 A 使用账号密码创建了一个账号,A 这个时候不想激活了,这个时候B通过一些方式拿到了这个token,间接性的激活了怎么办。其实,有效期设置与否并无关系,重要的是尽量规避一些特殊情况

第二个问题:

  • 其实也差不多,规避意外行为,假如你使用token进行查询的时候直接套用sql语句不就造成sql注入了?


查看完整回答
反对 回复 2018-10-08
  • 2 回答
  • 0 关注
  • 1468 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信