如何在不更改其签名信息的情况下对 apk 进行逆向工程

Posted

技术标签:

【中文标题】如何在不更改其签名信息的情况下对 apk 进行逆向工程【英文标题】:How to reverse engineer an apk without changing its siging information 【发布时间】:2021-01-05 22:14:38 【问题描述】:

假设我有一个apk,我想要reverse engineer,但在这方面存在一些小问题。例如,如果应用程序使用 Google siging 机制 登录 进入应用程序,那么我在修改 apk 后将无法登录! 还有其他几个原因,为什么不修改 apk 并使用自定义密钥库退出它...!

有可能吗? 或者还有其他问题可以解决吗?

【问题讨论】:

【参考方案1】:

不可能1在不使签名失效的情况下修改 APK。这就是签名的重点。

但是,APK 签名和 Google 的登录服务是不同的东西。 “签到”和“签到”是不同的词,有不同的含义。从理论上讲(至少),经过修改的 APK 应该仍然能够成功使用 Google 登录。

以下是有关 APK 数字签名及其工作原理的一些背景链接:

***:Digital signatures APK Signature Scheme v2 APK Signature Scheme v3

1 - 至少目前没有。如果有人设法破解了用于实现签名的“加密货币”,那么所有的赌注都将失败。但我们可能还好几年了......

【讨论】:

如果有人设法破解该加密货币,我们就会遇到更大的问题。 @chrylis -cautiouslyoptimistic- 我同意你的看法......但是你能解释一下 siging 的工作原理,或者至少指向一些信息丰富的在线资源吗?

以上是关于如何在不更改其签名信息的情况下对 apk 进行逆向工程的主要内容,如果未能解决你的问题,请参考以下文章

如何在不更改特定列的情况下对数据框中的数据进行重新采样?

如何在不更改特定列的情况下对数据框中的数据进行重新采样?

在不更改原始 RowState 的情况下对数据集中的数据表进行排序

Movilizer:在不更改数组键的情况下对数据容器进行排序

我可以在不重新构建的情况下对 Maven 构建中的文件进行更改吗?

pd.dataframe - 在不更改索引的情况下对列表列中的每个列表进行排序