2017-09-13 107 views
1

我的問題在一定程度上這一塊的隨訪:Can I specify digest algorithm apksigner uses?的Android SHA256簽名algorythm與具有SHA1 algorythm證書

我signign的APK apksigner及以上職務以下reccomandations,我提出的minSDK 18 +。正如預期的那樣,生成的MANIFEST.MF和ANDROID.SF摘要報告SHA-256摘要散列用於包中的文件而不是SHA-1摘要散列。

Android的minSDK18.SF摘錄 Android-minSDK18.SF excerpt

Android的minSDK16.SF摘錄 Android-minSDK16.SF excerpt

但是打印具有keytool -printcert -file "ANDROID - minSDK18.RSA"keytool -printcert -file "ANDROID - minSDK16.RSA"的.RSA證書給出相同的結果specifing一個SHA1withRSA簽名algorythm。 enter image description here

這可能是因爲SHA1withRSA是嵌入在證書中的簽名algorythm: enter image description here

我的問題是要知道,如果用於簽署的APK的certifiicate的簽名algorythm具有相關SHA影響-1衝突問題,即使APK使用SHA-256 algorythm進行簽名。

回答

1

不,應用程序簽名證書內的簽名算法 - 證書頒發者用來簽署證書的算法 - 不會影響Android應用程序的安全性。原因是Android不會驗證應用程序簽名證書內的此加密簽名。

欲瞭解更多的背景,所有的事情到Android的應用程序簽名證書是:

  1. 它解析,
  2. 它宣稱,它的公共密鑰可以用於數字簽名,
  3. (僅當更新已安裝的應用程序時),它與當前安裝的應用程序版本的應用程序簽名證書相同。
+0

謝謝你的回答。這就是我的想法,但我真的希望有人比我得到相同的結論更專家。 – gbaccetta