参考文档:
解析protobuf
protoc解析工具下载地址
ProtobufViewer(Appstore)
protoc解析工具,支持16进制字符串,base64字符串等。。
1)首先dump shopee App的头文件,
2)然后打开头文件文件夹,搜索 “ : GPBMessage”
3)在第二步搜索结果中,搜索特定接口的 Message类,例如 register, login等等。
shopee数据包解析:
原始包:
<4a000000 0f0a0231 37120d38 36313339 32323439 38383638 18012202 4d594801 52204254 4f545053 65656454 79706552 65676973 7465725f 4569304d 356a704f 48775801 6894c101 80010188 0102>
包分为两种情况:
1) cmd > 0xFF时,长度len(4字节包) + -1(1字节) + serviceIDOfExtension(1字节) + commandOfExtension(1字节)+ protobufData
2)cmd <= 0xFF时, 长度len(4字节包) + cmd(1字节)+ protobufData
即:
4a000000 Msg头部, 存储body长度,即: 4a000000(小端序) = 0x0000004a = 74
0f :cmd
示例
0a0231 37120d38 36313339 32323439 38383638 18012202 4d594801 52204254 4f545053 65656454 79706552 65676973 7465725f 4569304d 356a704f 48775801 6894c101 80010188 0102
真实protobuf数据,可以直接使用 ProtobufViewer 进行解析~~~~
ProtobufViewer解析结果如下: