什么是Android密钥库文件,它用于什么?

Chr*_*rry 122 android keystore

这是一个普遍的问题,但特别是我对Android的使用感兴趣.什么是密钥库文件,它用于什么?

多个Android应用程序可以使用相同的密钥库来签署他们的应用程序("签署".apk究竟是什么意思?),这有什么影响(如果有的话)?

Otr*_*tra 126

我将提供的答案是密钥库文件是向任何正在询问的人验证自己.它不仅限于签署.apk文件,您可以使用它来存储个人证书,签署要传输的数据以及各种身份验证.

就你用Android做什么而言,可能你正在寻找签名的apk,这是你的证书.您使用凭据为您的应用程序打造品牌.您可以使用相同的密钥标记多个应用程序,事实上,建议您使用一个证书来标记您编写的多个应用程序.更容易跟踪哪些应用程序属于您.

我不确定你的含义是什么意思.我想这意味着除了证书持有者之外,没有人可以更新您的申请.这意味着如果您将其释放到野外,丢失用于签署应用程序的证书,则无法发布更新,因此请保持该证书安全并在必要时进行备份.

但是除了签署apks以发布到野外之外,如果您愿意,可以使用它来通过SSL向服务器验证您的设备(也与Android相关)以及其他功能.

  • 很好的解释.你能解释为什么我们需要KeyStorePassword,Key别名,KeyPassword.拥有三把钥匙似乎是多余的. (4认同)
  • 非常好的答案.此处还应注意,如果要在应用程序中使用"推送数据",则需要密钥库文件! (2认同)

Ale*_*cas 18

Android Market要求您使用公钥/私钥机制签署您使用证书发布的所有应用程序(证书使用您的私钥签名).这提供了一层安全性,可防止远程攻击者将恶意更新推送到您的应用程序(所有更新必须使用相同的密钥签名).

来自Android Developer网站的App-Signing Guide:

通常,所有开发人员的建议策略是在应用程序的预期生命周期内使用相同的证书对所有应用程序进行签名.你应该这样做有几个原因......

使用相同的密钥有一些好处 - 一个是在使用相同密钥签名的应用程序之间共享数据更容易.另一个原因是它允许使用相同密钥签名的多个应用程序在同一进程中运行,因此开发人员可以构建更多"模块化"应用程序.


Rap*_*tol 10

您可以在官方Android文档中找到有关签名过程的更多信息:http://developer.android.com/guide/publishing/app-signing.html

是的,您可以使用相同的密钥库签署多个应用程序.但您必须记住一件重要的事情:如果您在Play商店发布应用程序,则必须使用非调试证书对其进行签名.如果有一天你想发布这个应用程序的更新,用于签署apk的密钥库必须是相同的.否则,您将无法发布更新.

  • 不,这是错误的。您用于签署 apk 的密钥库可以不同,但​​用于签署 apk 的密钥必须相同。密钥库文件只是一个用于存储密钥和证书信息的文件,同一个密钥库文件中可以有多个密钥实体。 (3认同)