地址:https://yuanbao.tencent.com/chat/naQivTmsDa

文本对话接口地址:https://yuanbao.tencent.com/api/chat/xxx

1.分析过程:

tencent 混元大模型元宝接口逆向流程_测试文本

该接口传输文本信息没有反爬,但是如果要传输图片和文本信息时,需要先把图片上传到cos, 图片上传接口的header 有加密字段,需要去逆向的。

tencent 混元大模型元宝接口逆向流程_测试文本_02

其中该接口的header Authorization 中的signature 签名值时需要逆向的,X-Cos-Security-Token 是由 genUploadInfo 接口返回的,下图所示

tencent 混元大模型元宝接口逆向流程_图片上传_03

接下来去看上传接口的header 如何加密的,在该接口的启动器位置进入getAuthorization 方法

tencent 混元大模型元宝接口逆向流程_验证码识别_04

tencent 混元大模型元宝接口逆向流程_验证码识别_05

继续进入n方法

tencent 混元大模型元宝接口逆向流程_测试文本_06

tencent 混元大模型元宝接口逆向流程_js 逆向_07

最后签名生成的位置

tencent 混元大模型元宝接口逆向流程_验证码识别_08

2.加密生成:

q-signature=  a.HmacSHA1(k, D).toString()

S = [i, t, _.obj2str(s, !0), _.obj2str(l, !0), ""].join("\n")

k = ["sha1", b, a.SHA1(S).toString(), ""].join("\n");

S = 'put\n/multimedia/a4222741df3e3866da806aa9b7cbfe59/20240712151057_b36a2aa8ca6f7810e0614ba56384dffd.png\n\ncontent-length=83693&host=hunyuan-prod-1258344703.cos.ap-guangzhou.myqcloud.com\n'

k = 'sha1\n1720768257;1720768857\n5ab5913328b6d61f049f87163874f2a758bbd073\n'

其中t, b 是genUploadInfo 接口返回的, 用到的加密是哈希算法 sha1 和 hmacsha1

加密结果:'q-sign-algorithm=sha1&q-ak=AKIDmi1XOk0PlogdPaie-V_wvMM8xx7tLGLdBVVSAO6zXd_5u4fHLgnZ32EV4XFnNbmE&q-sign-time=1720768257;1720768857&q-key-time=1720768257;1720768857&q-header-list=content-length;host&q-url-param-list=&q-signature=93652fdaf1ecdc08458abc00df1b0ef80731c09a'

3.测试结果:

测试文本:

prompt = "根据图片文字的描述,请给出需要拖动图片的开始位置和结束位置坐标,以json格式返回"

测试图片:

tencent 混元大模型元宝接口逆向流程_验证码识别_09

测试结果:

tencent 混元大模型元宝接口逆向流程_验证码识别_10

返回的结果给出了汽车在第一张图片,相框是在第三张图片,知道了坐标就可以生成滑动轨迹了;后面的话验证码识别可以交给大模型处理了。