时间戳的优化

时间戳作用

客户端在向服务端接口进行请求,如果请求信息进行了加密处理,被第三方截取到请求包,可以使用该请求包进行重复请求操作。如果服务端不进行防重放攻击,就会服务器压力增大,而使用时间戳的方式可以解决这一问题。

防篡改

一般使用的方式就是把参数拼接,当前项目AppKey,双方约定的“密钥”,加入到Dictionary字典集中,按ABCD顺序进行排序,最后在MD5+加密.客户端将加密字符串和请求参数一起发送给服务器。服务器按照

上述规则拼接加密后,与传入过来的加密字符串比较是否相等

防复用

上面的方式进行加密,就无法解决防复用的问题,这时需要在客户端和服务端分别生成UTC的时间戳,这个UTC是防止你的客户端与服务端不在同一个时区,呵呵,然后把时间戳timestamp拼在密文里就可以了,至于防复用的有效性

由于数据库使用的创建时间 和最后更新时间 但是我们的 和 以及对应的 文件是使用逆向工程工具生成的,所以我们要对对应的文件进行修改。 由于是对数据库的操作,所以只需修改 文件即可 将 语句中的 修改为

即创建数据的时候时间显示为当前的时间 update 语句由于是更新操作,所以只要将更新的时间修改为当前时间就行,创建时候还是使用逆向工程工具生成的。 修改为

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180910G1Y2C500?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券