我认为大多数开发人员(除了大公司之外)都使用自签名证书来签署他们的apk。由于这是应用安装所必需的,因此任何人都可以对您的应用进行签名。使用Java SDK中的keytool和jarsigner非常简单。但是,这些自签名证书和相关私钥不保证任何程度的安全性,除非您能够以某种方式将该证书与您实际信任的人匹配。没有能力撤销这些自签名证书(没有CRL),并且没有“颁发者”(因为证书几乎总是自签名的),他们以某种方式“担保”证书/密钥持有者的身份签署代码。
Andriod平台是否已经或计划有能力阻止安装具有特定签名的应用程序?或者只允许安装由受信任的CA(证书颁发机构/颁发者)列表颁发的证书/密钥签名的应用程序? 但是,有一些安全可用:在设置/安全性中,您可以阻止安装任何东西(甚至签名并手动复制到您的SIM卡),除非它来自Play商店,默认设置。您也可以安装用户证书,并且只允许安装由该证书签名的应用程序(即使是从Play商店购买?)。
答案 0 :(得分:0)
我不认为这些证书的目的是确保身份作为CA签署的普通证书。在我看来,证书的目的只是为了有一个额外的安全因素,以确保第一次发布应用程序的人是发布更新的人。
如果没有这个黑客攻击您的谷歌帐户将能够向您的整个用户群发布恶意更新。
所以我会说它基本上是用于发布的双因素身份验证。