为什么手机短信验证码需要限定时间?

为什么手机短信验证码需要限定时间?网上说是为了怕暴力破解,这个可以理解,特别是当验证码只有4位的时候确实可以暴力破解。

但是为什么JWT生成的token也需要设置有效期呢?token是一串加密的字符串,这个不至于暴力破解吧?

阅读 8.8k
10 个回答

很少暴力破解token。。。抓包抓到永不失效的token跟知道账户密码没区别。。。

系统需要考虑到任何可能发生的情况而来进行有效的避免和处理。认为外来任何信息都是不可靠的。

从另外一个思路来说,验证码应该存在session或者相关的数据库中,如果验证码不过期,也就意外着session不过期,那觉得总有爆的一天呦

企业通过限定手机短信验证时间和加长验证字段的方式来提升短信验证安全性。加长的短信验证码增加了被暴力破解的难度,而且想要破解必须在短信验证码的有效时间内去做,所以限定短信验证码的有效时间也是提升安全性的手段。

token是后端验证用户身份的依据 一旦被窃取安全性可想而知 所以用时效来降低被窃取后的影响

1.节约资源,服务端不可能永久保存的,服务器有压力.

2.防止暴力破解。

过限定手机短信验证时间和加长验证字段的方式来提升短信验证安全性。加长的短信验证码增加了被暴力破解的难度,而且想要破解必须在短信验证码的有效时间内去做,所以限定短信验证码的有效时间也是提升安全性的手段。

发短信,是需要成本的。一条短信,2毛钱。
公司经营有成本。
毕竟 , 我们 生活在物理世界。
防恶意

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进