前言
今天有些闲….所以找了一个玩具来玩(❁ᴗ͈ˬᴗ͈)◞
咱对于逆向这方面的经验几乎是0呢…
对于哔咔app也是一边摸索一边来的,途中遇到了一些蛮傻的问题(当然原因在窝自己)
在奈月ちゃん的提示下,发现了问题所在….
代码的反编译
窝直接拉到了jadx里,然后导出成了gradle工程
咱还是蛮喜欢vscode的~~ヽ(✿゚▽゚)ノ
所以全程基本都在vscode里看代码~
导出完成之后,在AndroidManifest.xml
里找到入口,省去不必要的麻烦
对ok.http3的封装
之后定位到了RestClient.java
,作者封装了一个okhttp3的类,用来实现sign的生成。
主要逻辑在第81行
1 2 3 4 5 6 7 8 9 10 11 12
| Response proceed = chain.proceed(request.newBuilder() .header("api-key", "C69BAF41DA5ABD1FFEDC6D2FEA56B") .header("accept", "application/vnd.picacomic.com.v1+json") .header("app-channel", RestClient.this.f816tx + "") .header("time", str) .header("nonce", replace) .header("signature", c) .header("app-version", RestClient.version) .header("app-uuid", RestClient.f812tu) .header("image-quality", RestClient.this.f815tw) .header("app-platform", "android") .header("app-build-version", RestClient.f813tv).method(request.method(), request.body()).build());
|
其中,RestClient.this.f816tx
、RestClient.version
、
RestClient.f812tu
、RestClient.this.f815tw
这四个变量是固定的,可以直接搜索资源文件来找到。