【问题标题】:How to sign .apk with SHA256 algorithm如何使用 SHA256 算法签署 .apk
【发布时间】:2021-08-24 19:44:48
【问题描述】:

我有一个 .keystore 证书(10 年前生成)来签署 apk,我正在使用 android sigingCONfig 函数对其进行签名,它使用 SHA1 哈希算法进行签名,谁能告诉我如何使用 SHA256 签名进行签名现有 .keystore 证书的算法?

【问题讨论】:

    标签: android android-studio apksigner


    【解决方案1】:

    SHA1 和 SHA256 不是签名算法,而是散列(又名摘要)算法。散列只是签名过程中使用的一种操作,密钥的强度(通常是密钥中使用的位数)是安全模型中同样重要的考虑因素,因为安全性与其最薄弱的环节一样好。

    虽然您可以选择密钥的强度(当您最初生成密钥库时),但您无法选择在签名过程中使用哪种哈希算法。 Apksigner(Android Gradle 插件使用)将自动选择您的应用支持的 Android 平台支持的最强哈希算法。换句话说,使用的哈希算法将取决于您在应用程序中定义的minSdkVersion 的值和密钥的类型(例如 RSA、DSA 等)。这是因为在较新的 Android 版本中添加了对更强的签名/哈希算法对的支持。

    注意不要落入一个常见的陷阱,即查看证书本身签名的哈希算法(而不是 APK 的签名)。此签名与 Android 安全模型无关,因此使用哪种哈希算法无关紧要。

    【讨论】:

    • 谢谢你的详细解释,是的,它的minSdkVersion的值。
    猜你喜欢
    • 1970-01-01
    • 2014-02-22
    • 1970-01-01
    • 2020-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-18
    相关资源
    最近更新 更多