【问题标题】:Security Alert: Your app contains embedded private keys or keystore files安全警报:您的应用程序包含嵌入式私钥或密钥库文件
【发布时间】:2015-11-23 09:27:09
【问题描述】:

我最近收到了来自 Google 的邮件:

**安全警报:您的应用包含嵌入式私钥或密钥库文件

此应用包含一个或多个嵌入在其发布的 apk 中的私钥或密钥库文件,如本消息末尾所列。这些嵌入式项目可以被第三方访问,这可能会根据密钥的用途引发各种不同的安全问题。例如,如果私钥是您的应用程序的签名密钥,则第三方可能会签署和分发应用程序来替换您的真实应用程序或破坏它们。这样的一方也可以以您的身份签署和分发应用程序。

作为一般的安全做法,我们强烈建议不要在应用中嵌入私钥和密钥库文件,即使这些密钥受密码保护或经过混淆处理。保护您的私钥和密钥库文件的最有效方法是不要传播它们。 请尽早从您的应用程序中删除您的私钥和密钥库文件。有关保护您的密钥安全的更多信息,请参阅https://developer.android.com/tools/publishing/app-signing.html

作为开发人员,您有责任始终妥善保护您的私钥。请注意,存在漏洞的应用程序可能会使用户面临入侵风险,可能会被视为“危险产品”,并可能从 Google Play 中删除。

org/bouncycastle/openssl/test/data/rsa/openssl_rsa_unencrypted.pem**

我检查了我的 APK,我没有在我的应用程序中保存任何密钥库或密码。因为我在应用程序中没有任何 .pem 文件。

在我的应用程序中,我使用的是 Crashlytics,droidText.Jar。所以,任何人都可以请教如何解决这个错误。

【问题讨论】:

    标签: android google-play crashlytics securityexception android-droidtext


    【解决方案1】:

    警告是由 BouncyCastle 目录下的 .pem 文件触发的 - .pem 文件通常是私钥的导出,并且实际上是一个密钥库(通常只包含一个私钥,但仍然是一种形式的密钥库),因此谷歌警告private keys or keystore files.

    BouncyCastle 的东西很可能被你正在使用的其他东西作为依赖项拖进来。

    在我遇到的所有情况下,都是可以安全删除的测试数据。

    您需要在 APK 中找到它并将其删除 - 应该足够安全以删除整个 /test/data 路径。

    【讨论】:

    • 按照这个链接stackoverflow.com/questions/26869607/…我刚才检查了droidText.jar。它有 PEMWriter 和 PEMReader 类。那么,如何从 jar 中删除这些文件以及如何重新打包 jar。你能不能给我这个命令。我正在使用 mac
    • 我遇到了这个“/test/data”路径有 .pem 文件的问题。所以,我按照你说的删除了整个测试文件夹。让我们看看他们谷歌是否会批准新的 APK。感谢您的支持。
    • 我也收到了同样的错误请告诉我。如何解决此错误?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    • 2020-06-08
    • 2015-02-17
    • 2019-01-30
    • 2022-01-15
    相关资源
    最近更新 更多