护卫盾网络验证系统
简介及特点
新手视频教程
1.开通授权并安装服务端
常见问题
服务器域名简介
开通授权及安装服务端
如何更新服务端
如何迁移服务端
显示未授权的故常排除
关于域名备案问题
核心库与WebAPI的区别
快速验证与常规验证的区别
Windows服务器无法显示验证码
什么是软件自定义常量
什么是用户自定义常量
开发文档
返回状态码
核心库函数说明
快速验证-初始化
快速验证-取软件自定义常量
快速验证-取软件自定义常量节点值
常规验证-字节流加载皮肤
常规验证-本地文件加载皮肤
常规验证-初始化
常规验证-取软件数据
常规验证-取软件版本数据
常规验证-取软件自定义常量节点值
常规验证-取验证码-字节流
常规验证-获取验证码-本地文件
常规验证-获取机器码
常规验证-注册通行证
常规验证-发送改密验证邮件
常规验证-修改密码
常规验证-账户充值
常规验证-加入黑名单
常规验证-用户登录
常规验证-获取用户数据
常规验证-取用户自定义常量节点值
常规验证-扣点
常规验证-扣时
常规验证-扣余额
常规验证-绑定用户数据
常规验证-绑定机器码
常规验证-调用远程PHP函数
常规验证-进程通信-取资料
常规验证-心跳
常规验证-退出登录
常规验证-载入内置窗口
常规验证-取云端独立自定义常量
其它函数-保存配置/读取配置
其它函数-获取核心库版本号
其它函数-获取出错信息
其它函数-计算机蓝屏
其它函数-获取MD5值
其它函数-取程序目录/取模块目录
其它函数-过滤HTML标签
WebAPI开发手册
WebAPI-组包规则
WebAPI-解包规则
WebAPI-数据校验
WebAPI-快速验证
WebAPI-常规验证-初始化
WebAPI-常规验证-取验证码
WebAPI-常规验证-用户登录
WebAPI-常规验证-心跳通信
WebAPI-常规验证-绑定用户数据
WebAPI-常规验证-绑定机器码
WebAPI-常规验证-注册通行证
WebAPI-常规验证-发送改密验证邮件
WebAPI-常规验证-修改密码
WebAPI-常规验证-账户充值
WebAPI-常规验证-扣点
WebAPI-常规验证-扣时
WebAPI-常规验证-扣余额
WebAPI-常规验证-调用远程PHP函数
WebAPI-常规验证-添加黑名单
WebAPI-常规验证-退出登录
WebAPI-常规验证-取云端独立自定义常量
如何调用自动更新程序
远程自定义函数
全局变量
数据库操作函数
新增记录
查询记录-多条记录
查询记录-单条记录
查询记录-多条记录(SQL)
查询记录-单条记录(SQL)
执行SQL语句
更新记录
删除记录
统计数量
其它函数
常用自定义函数分享
获取充值卡详情
获取某软件在线人数
批量生成测试通行证
获取用户扣点记录
制作示例程序免费领取授权
EUE文档 - 私有云文档管理系统
-
+
首页
WebAPI-数据校验
## 数据校验 * 封包一对一匹配,一个发送封包对应一个返回封包,防止中途篡改数据,同时避免服务器被本地化。 * 所以,获得返回密文与明文后,需要将某些参数与发送明文进行校验。 ## 校验步骤 数据校验在通信过程中尤为重要,这将决定获取的数据是否合法,保证每一条命令都是由服务端发出且中途没有经过篡改,由于解包过程已经经过一次sign校验,此次不在举例范围。 ### 1. 校验封包安全码(UUID) * 校验返回的UUID是否与提交的UUID相同,相当于"安全码",一包一码,原样返回。 * 例:如果提交的UUID为:`3825a2cc-9a4f-4175-9589-c6fd0af5fb0a` * 那么返回的UUID也为: `3825a2cc-9a4f-4175-9589-c6fd0af5fb0a` ### 2. 校验token值 * 拼接提交封包中的m1和返回封包中t,拼接后取MD5值,此值应等于返回封包中的token的值。 * 例:提交封包中的m1为:`f221b91f6ed219f3b703e1cba16b1ed0`,返回封包中的t为:`1581789258`, * 那么取MD5值("f221b91f6ed219f3b703e1cba16b1ed01581789258)=返回封包中token的值。 ### 3. 校验数据主体token值 * 将返回数据中的result,以键名ASCII递增牌序(默认返回已经排好序),将键名与键值拼接。 * 拼接完毕后再将key(通讯秘钥)拼接到末尾取MD5值,此值应等于返回封包中的result_token的值。 * 例:设key为:`f221b91f6ed219f3b703e1cba16b1ed0`,返回封包中result为:`{"b":"2","c":"3","a":"1"}` * 以键名ASKII递增牌序为:`{"a":"1","b":"2","c":"3"}` * 取其键名+键值:`a1b2c3`再将key拼接到最后为:`a1b2c3f221b91f6ed219f3b703e1cba16b1ed0` * 那么:取MD5值("a1b2c3f221b91f6ed219f3b703e1cba16b1ed0")=返回封包中result_token的值.
管理员
Sept. 5, 2021, 12:47 p.m.
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
冀ICP备19021017号-14
冀公网安备 13108202000785号
Markdown文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码