管理后台创建软件后获取
例:http://demo.huweidun.cn/ac.php?s=8508c320cacb0634c0e241df2f3345fe
参数名 | 示例值 | 参数说明 |
---|---|---|
sid | 00362ace-e994-411a-a9bf-f31f9177b6f3
| 软件SID,后台添加软件后获得。 |
uuid | d6fadd40-7267-4178-9b35-4c8ff61e0c07 | 封包安全码,每次必须变动,用于校验数据合法性方案之一。 |
t | 1630766594 | 客户端10位时间戳。 |
m1 | 590b782aa78cc3333c84eaa975ab9dc1 | 封包token(sid+key+t 拼接后取MD5值) |
m2 | b1dfd79c7cf0f5df8f77c12352af952c | 当前程序MD5值,如果开启校验MD5,则此值必填,可于程序运行时动态读取自身MD5值。 |
m3 | f50ebce838ae4b8e212578dd0bc23d9f | moduleMd5,购买授权后获得,如使用dll文件,请传入DLLMD5值,同时在”后台-系统-系统设置”中填写。 |
mcode | b4f43bb8-32dc-4d9a-9094-74e39cd61c37 | 客户端机器码(自行获取机器码,若机器码变动则会提示转绑[如果开启”绑定机器码”]) |
clientid | 36ebe72d-51d8-4252-b99c-37da152717ac | 客户端运行ID,此ID在软件退出之前不可变动,也就是每次启动都生成一个新的clientid,软件退出即作废。 |
webkey | 0241946994e62e289e4622b07154b961 | 通用秘钥(webKey),购买授权后获得。 |
参数名 | 示例值 | 参数说明 |
---|---|---|
status | success |
success为正常,error为错误。 |
code | 200 | 200为正常,其它为错误。 |
msg | 账号或密码错误. | 错误内容,无错误返回空。 |
token | 324daaf6558361aa8f27d607c72262af | 返回封包token(提交封包中的m1+返回封包中t,拼接后取MD5值) |
t | 1630766888 | 封包时间戳 |
uuid | d6fadd40-7267-4178-9b35-4c8ff61e0c07 | 提交封包的UUID,原样返回。 |
result | 请查看不同函数说明 | 数据主体,Json格式,每个函数返回的数据不同,具体请参照对应函数说明。 |
result_token | 627b0d546ccb1d4896373305d74c6933 | 数据主体token,将数据以ASCII首字母递增排序,拼接键名与键值,拼接完毕后加上通信秘钥一起取MD5值。 |
只需按规则拼接参数后加密传送即可。
封包内参数分为公共参数和函数参数。
公共参数为所有命令均需要提交的参数。
函数参数根据不同函数说明决定提交哪个参数,对应函数内均有说明。
所有参数以标准JSON格式初始化
{
"sid":"d6fadd40-7267-4178-9b35-4c8ff61e0c07",
"uuid":"自行获取UUID",
"t":"1581773805",
"m1":"sid+key+t 拼接后取MD5值,key为通讯秘钥,后台添加软件后获得",
"m2":"当前执行文件的MD5值",
"m3":"静态模块MD5值,购买授权时获得",
"mcode":"客户端机器码,自行获取",
"clientid":"客户端运行ID"
"webKey","通用秘钥(webKey),购买授权时获得",
"函数参数1":"根据不同函数要求提交不同参数",
"函数参数N":"根据不同函数要求提交不同参数"
}
使用AES-256-CBC算法为编码后字符串进行加密,并返回HEX加密结果。
加密密码为通讯秘钥(共32字符),IV向量为通讯秘钥前16位(共16字符)。
例:通信秘钥为:9d8af871e74f5629639544a314adab96
则:加密密码为: 9d8af871e74f5629639544a314adab96
,IV向量为:9d8af871e74f5629
PS.部分语言可选择加密结果输出类型,此种语言可直接选择返回HEX加密结果,部分语言直接返回byte数组,需要额外进行一次HEX转换。
sign值可保证数据在通信过程不被篡改,相当于给这段数据签名,服务器将校验这段签名来确定封包是否由客户端发出。
sign算法自定义:管理后台编辑软件,其中的”客户端sign算法”即为自定义算法,[data]为密文原文,[key]为通讯秘钥。
sign算法计算:
假设”客户端sign算法”为:[data]abc[key]123
假设密文为:684e525171753936373748314a4c
假设通信秘钥为:9d8af871e74f5629639544a314adab96
那么。”客户端sing算法”中套用最终数据为:
684e525171753936373748314a4cabc9d8af871e74f5629639544a314adab96123
sign取其MD5值为:001a2eae67ae5862fe4cbebc25a8d870
数据格式为:data=密文&sign=sign值
第4部中的数据,最终提交封包为:data=684e525171753936373748314a4c&sign=001a2eae67ae5862fe4cbebc25a8d870
此时,只需将此包数据通过POST方法传送到请求地址
即可。