用户安全登录防拦截

首先需要知道和保证的是

  算法是公开的

  js是可读的

  密码是不能泄露的

好的,基于此我们来实现这个过程

  假设我们在注册时对密码采用MD5加密的方式保存,那么这里我们也需要在前台使用md5(和注册时保持一致的不可逆算法即可)

  1、首先js拿到账号uname,密码pwd,经由MD5加密密码得 md5(pwd) 别名  md5pwd

  2、md5(uname+md5pwd+timestamp) 别名 sign

  3、传递数据uname,timestamp,sign到后台

  4、数据库根据uname取出密码别名mysqlpwd 根据md5(uname+mysqlpwd+timestamp) 与传递过来的sign做比较,一致则校验通过

  5、可对uname,timestamp进行记录,每个相同的请求限制只生效一次

到此,我们已经实现用于安全登录防篡改和防重复攻击。

posted @ 2019-10-21 10:51  偷懒的fc  阅读(552)  评论(0编辑  收藏  举报