写在前面:
下文全部使用**代替b 站,由于csdn现在版权的问题,本文只介绍对so文件的逆序列化(反正怎么获取文件网上很多文章)
如图,抓包得到的是乱码,实际上这不是加密,是使用protobuf序列化后的文件
本人找了很多网站,只在知乎看到一个逆序列化的回答,其他的都是从乱码中匹配内容
https://zhuanlan.zhihu.com/p/392931611但是这个回答比较简洁,对于不了解protobuf的人可能摸不着风,本人也没接触过protobuf,但是通过一段时间的查找资料了解了一二,故写下这一篇相对详细一点的博客方便其他不懂protobuf的人学习
爬**
1.什么是protobuf?
protobuf
(protocol buffer) 是谷歌内部的混合语言数据标准。通过将结构化的数据进行序列化(串行化),用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
python(pip)可通过以下命令直接安装
pip install protobuf
在使用时这样导包
import google.protobuf
具体的就不说了,想详细了解的可以直接搜,网上有很多相关教程
2.怎么进行逆序列化
你需要知道**弹幕的proto定义,再使用protoc进行编译,获得一个.py文件,接下来就可以使用文件里面的方法反序列化了
关于大概的方法,下面这个网站有介绍,下文是详细步骤bilibili-API-