Android应用程序的自签名证书存在的问题/注意事项?

时间:2011-05-10 14:16:31

标签: android digital-signature google-play digital-certificate

我用来学习Android应用开发的书说:

  

安装Android应用程序   一个设备,你首先需要签名   用Android包(.pak文件)   证书的数字签名。   但是,证书可以   自签名 - 您不需要   从a购买证书   证书颁发机构等   VeriSign公司。

好的,所以我理解要将应用程序安装到设备上,任何数字签名都可以(Eclipse的ADT插件已经为我自动执行此操作)。但是,我不清楚是否:

  1. 是否会签署自签名证书 足够 Android Market
  2. 是否有任何问题或警告 如果我决定放行,那就在路上 一个带有自签名的应用程序 证书?
  3. 这是我第一次开始向Android电子市场发布应用程序的过程,您的经验丰富的答案将非常受欢迎。

    感谢。

1 个答案:

答案 0 :(得分:2)

  1. 没有
  2. 所有证书都证实了您是谁。没别了。

    编辑:实际上,它甚至没有验证。所有它验证的是此应用程序是由具有此证书的私钥的实体制作的。它会生成一个身份跟踪:没有其他实体可以声称自己是同一个实体而无法访问同一个私钥。

    此外,一些进程/文件/用户权限与使用相同证书相关(例如,我有多个使用相同证书签名的应用程序,即使每个应用程序是单独的,它们也可以打开彼此的数据库安装)。

    编辑:完全没有关系,因为自签名证书问题基于浏览器根证书存储。在浏览器中,他们尝试执行显式信任(即,使用此证书的实体由已知的根证书颁发机构验证为证书标识的实体)。使用自签名证书时,证书链不会以已知的根结束,因此任何人都可以发布它并撒谎,而使用Verisign / Thawte / Godaddy / Other时,正在进行的论证是以某种方式验证了根证书的所有者它递交证书的实体实际上被授权将自己标识为该实体。