gpt4 book ai didi

android - apk文件中的签名和证书有什么区别?

转载 作者:太空宇宙 更新时间:2023-11-03 13:10:36 25 4
gpt4 key购买 nike

我知道证书包含公钥和一些额外信息(我希望如此),但它是否保存在 apk 文件中?它是文件还是文本还是什么?签名到底是什么?在 Android 中,我们可以轻松阅读哪一个来验证应用程序?

最佳答案

证书和 keystore

公钥证书,也称为数字证书或身份证书,包含公钥/私钥对的公钥,以及一些其他标识 key 所有者的元数据(例如,姓名和身份)地点)。证书的所有者持有相应的私钥。

当您签署 APK 时,签名工具会将公钥证书附加到 APK。公钥证书充当“指纹”,将 APK 与您和相应的私钥唯一关联起来。这有助于 Android 确保您的 APK 的任何 future 更新都是真实的并且来自原始作者。用于创建此证书的 key 称为应用签名 key 。

keystore 是包含一个或多个私钥的二进制文件。

每个应用程序都必须在其整个生命周期内使用相同的证书,以便用户能够安装新版本作为应用程序的更新。如需详细了解在所有应用的整个生命周期内使用相同证书的好处,请参阅下面的签名注意事项。

签署您的调试版本

从 IDE 运行或调试您的项目时,Android Studio 会使用 Android SDK 工具生成的调试证书自动为您的 APK 签名。首次在 Android Studio 中运行或调试项目时,IDE 会自动在 $HOME/.android/debug.keystore 中创建调试 keystore 和证书,并设置 keystore 和 key 密码。

由于调试证书是由构建工具创建的并且在设计上是不安全的,因此大多数应用商店(包括 Google Play 商店)不会接受使用调试证书签名的 APK 进行发布。

Android Studio 会自动将您的调试签名信息存储在签名配置中,因此您不必在每次调试时都输入它。签名配置是一个对象,包含对 APK 进行签名所需的所有信息,包括 keystore 位置、 keystore 密码、 key 名称和 key 密码。您不能直接编辑调试签名配置,但可以配置如何对发布版本进行签名。

有关如何构建和运行应用程序进行调试的更多信息,

关于android - apk文件中的签名和证书有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46293185/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com