1

最近,Google 引入了安全元数据,该元数据添加到上传到 Google Play 的每个应用程序中。我们曾经有一个篡改保护,它在运行时计算应用程序的签名(哈希),并检查它是否等于在发布期间计算的哈希。这多年来一直运行良好,但现在 GP 通过添加安全元数据来修改应用程序的二进制文件。

  • 有没有办法完全禁用 GP 安全元数据?
  • 有没有办法在不发布的情况下从商店检查(下载)修改过的 APK?测试版通道中的应用似乎没有被修改,所以这个解决方案不起作用。
4

2 回答 2

2
  • 无法禁用 Google Play 安全元数据。
  • 不发布应用就无法获得
  • alpha 和 beta 渠道中的 APK 被修改(或应该被修改),但前提是它们是在程序开始日期(2018 年 6 月 19 日 12:00 UTC)之后上传的。但是,当 APK 处于 Beta 版和生产版时,它会有不同的元数据。
  • 散列解决方案将继续工作,但不是散列整个文件的解决方案。您可以考虑的替代方法包括散列 zip 条目或散列 classes.dex 文件。这些方法对其他开发人员来说很成功。

如果您偶尔可以在线访问(我假设您在检查哈希时会这样做),另一个可行的选择是使用SafetyNet 证明 API来检查您的应用程序,并在服务器上离线验证签名。同样,许多大牌开发商成功地使用了它。

于 2018-06-28T07:26:04.503 回答
0

抱歉,不直接回答您的问题,但无论如何发布以防万一您或其他任何人在同一情况下:而不是检查哈希,您是否考虑过验证 APK 的签名?Apksig 是一个开源库,可以让您以更强大的方式获得类似的结果。

于 2018-06-27T12:42:09.643 回答