7
考虑到我想支持所有安卓设备,比如Froyo或更高版本,我可以使用哪种最安全的签名算法?我不需要将我的APK放入Android Market。哪些版本的Android支持哪些包签名算法?
我知道,例如,有些手机支持sha1withrsa
,但不支持sha256withrsa
(Link)。
考虑到我想支持所有安卓设备,比如Froyo或更高版本,我可以使用哪种最安全的签名算法?我不需要将我的APK放入Android Market。哪些版本的Android支持哪些包签名算法?
我知道,例如,有些手机支持sha1withrsa
,但不支持sha256withrsa
(Link)。
请参考android dev guide on signing。 当前的默认方法是SHA1withRSA
:
$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
,而在几年前签名方法推荐为MD5withRSA
。
[...]什么是最安全的签名算法可以使用吗?
您是否担心某些特定攻击会让您认为SHA1withRSA
或SHA256withRSA
会更安全?我无法预见任何情况。
这似乎不是当前(2014年1月)在http://developer.android.com/tools/publishing/app-signing.html文档中的建议。但是我可以证明,只有MD5withRSA似乎适用于我在我面前的索尼Xperia E手机(Android 4.1)。 – jrg
截至2015年5月,他们使用'SHA1withRSA'作为默认/推荐方法。 – kravietz