时间戳作用
客户端在向服务端接口进行请求,如果请求信息进行了加密处理,被第三方截取到请求包,可以使用该请求包进行重复请求操作。如果服务端不进行防重放攻击,就会服务器压力增大,而使用时间戳的方式可以解决这一问题。
防篡改
一般使用的方式就是把参数拼接,当前项目AppKey,双方约定的“密钥”,加入到Dictionary字典集中,按ABCD顺序进行排序,最后在MD5+加密.客户端将加密字符串和请求参数一起发送给服务器。服务器按照
上述规则拼接加密后,与传入过来的加密字符串比较是否相等
防复用
上面的方式进行加密,就无法解决防复用的问题,这时需要在客户端和服务端分别生成UTC的时间戳,这个UTC是防止你的客户端与服务端不在同一个时区,呵呵,然后把时间戳timestamp拼在密文里就可以了,至于防复用的有效性
由于数据库使用的创建时间 和最后更新时间 但是我们的 和 以及对应的 文件是使用逆向工程工具生成的,所以我们要对对应的文件进行修改。 由于是对数据库的操作,所以只需修改 文件即可 将 语句中的 修改为
即创建数据的时候时间显示为当前的时间 update 语句由于是更新操作,所以只要将更新的时间修改为当前时间就行,创建时候还是使用逆向工程工具生成的。 修改为
领取专属 10元无门槛券
私享最新 技术干货