本文档总结了蓝月亮SAM系统的签名验证算法,该算法用于生成请求头中的sign参数
1、签名算法源来自main.1d303352.js JavaScript文件中的getBaseParam函数,g()是MD5哈希函数,Ho是密钥常量;
2、main.1d303352.js文件搜素Ho得到密钥常量固定为Er78s1hcT4Tyoaj2;
3、分析vendor.8be3b41e.js文件发现文件末尾的export语句显示 cu as g,确认g函数确实存在,搜索MD5发现g()函数就是MD5哈希;
签名生成算法参数
| 参数名 | 值 | 说明 |
| Ho | Er78s1hcT4Tyoaj2 | 密钥常量 |
| client | pc | 客户端类型 |
| user_agent | Mozilla/5.0 (Windows NT 10.0;............ | 浏览器标识 |
| format_type | json | 数据格式 |
| current_time | str(int(time.time() * 1000)) | 13位时间戳 |
| version | v1.0 | API版本 |
| params_json | 请求参数的JSON字符串 |
拼接顺序
签名字符串按以下顺序拼接
Ho + client + user_agent + format_type + current_time + version + params_json + Ho
Python代码实现
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
















暂无评论内容