这是一个通用问题,但我特别想了解它在Android上的用途。什么是密钥库文件,它有什么用?
多个Android应用程序可以使用同一个密钥库来签署他们的应用程序("签名"一个.apk文件到底意味着什么?),这会有什么影响(如果有的话)?
就Android方面而言,您可能正在寻找如何处理密钥库文件,因为您提到了签署apk文件,这是您的证书。您正在使用自己的凭据为应用程序打品牌。您可以使用同一个密钥为多个应用程序打品牌,事实上,建议您使用同一证书为自己编写的多个应用程序打品牌。这样更容易跟踪属于您的应用程序。
我不确定您所说的 "影响" 是什么意思。我想这意味着只有持有您的证书的人才能更新您的应用程序。这意味着如果您将其发布到公共平台后,丢失用于签名应用程序的证书,则无法发布更新,请确保安全地备份证书。
除了签署apk并发布到公共平台外,您还可以使用它在Android设备和服务器之间进行SSL身份验证(也与其他功能相关)。
Android Market要求您使用公共/私有密钥机制(证书由您的私钥签名)对您发布的所有应用程序进行签名。这提供了一层安全性,可以防止远程攻击者向市场推送恶意更新(所有更新必须使用相同的密钥进行签名)。
根据Android Developer网站的App-Signing Guide所述:
总体而言,所有开发人员建议的策略是在预期应用程序寿命内使用相同的证书为所有应用程序进行签名。 有几个原因你应该这样做...
使用相同的密钥有一些好处-其中一个是更容易在使用相同密钥签名的应用程序之间共享数据。 另一个是允许使用相同密钥签名的多个应用程序在同一个进程中运行,因此开发人员可以构建更多“模块化”的应用程序。
keytool
。keytool
是一个 Java 程序,用于生成密钥库。 - Otra