有人可以用你的反向工程APK的密钥库文件签名他们的应用程序吗?



用KeyStore文件签名你的app/APK是允许你将你的app标记为你的。如果有人用KeyStore文件对您的APK进行反向工程,该怎么办?唯一能阻止这种情况的是知道用于签署应用程序的同一密钥的别名和密码吗?如果密钥的别名和密码值没有硬编码在任何代码中,我想无论如何都很难找到这些。

这只会在应用程序开发人员意外地在APK文件中包含一个带有私钥的密钥仓库文件,并且访问密钥的密码非常容易以至于可以破解时才会起作用。但是默认情况下,包含APK签名密钥的密钥库不包含在应用程序中。

缺省情况下,APK签名使用非对称算法RSA。这意味着拥有已签名APK的人可以验证该APK的应用程序开发人员,但不能使用该开发人员身份签名其他APK。

当然你可以尝试破解RSA,但目前Android签名密钥使用2048到4096位,使用最著名的算法来分解RSA密钥,即使是超级计算机也需要更长的时间才能获得密钥有效(通常是20-30年)。

最新更新