百趣云
百趣云的博客
🔖闲鱼
闲鱼 IM 的技术栈闲鱼的消息系统建立在阿里 mtop 体系之上:信令走 mtop HTTP 接口,消息收发走长连接(阿里自研的 ACCS 通道)。这种"HTTP 信令 + 长连接消息"的双通道设计是阿里系 IM 的标准架构(淘宝、1688 同构)。逆向闲鱼 IM 要先分清两条通道的职责:mtop 接口:会话列表、历史消息拉取、发送消息的 HTTP 兜底ACCS 长连接:实时消息推送、在线状态、消息即时下发mtop 侧:会话与历史消息闲鱼消息相关的 mtop 接口(以抓包为准,接口名随版本变):mtop.taobao.idlemessage.* ← 消息相关接口族调用需要完整的 mtop
先搞清楚两个参数的分工闲鱼 App 的 mtop 请求头里有两个关键参数:x-sign 和 x-mini-wua。很多人上来就死磕 x-sign 的算法,方向就偏了——这两个参数是阿里 SecurityGuard 安全 SDK 的一体两面:x-mini-wua:设备环境摘要。设备型号、系统版本、root 状态、模拟器特征等信息的压缩编码,回答"你是什么设备"x-sign:请求签名。用设备标识 + miniWua + 时间戳 + 业务参数算出,回答"这个请求合不合法"服务端两个都验,而且交叉验——x-sign 里掺了 x-mini-wua 的内容,所以改设备信息必须重签,两者是咬合的。Java