安卓簽名MD5相關說明

 

什麼是包名?

 

每個 Android 應用均有一個唯一的應用 ID。安卓以 Java 包的形式管理應用。具體說明見官方文檔:

 

 
   

https://developer.android.com/studio/build/application-id.html

 

什麼是簽名文件?

 

安卓 apk 需要開發者進行簽名。.開發調試過程中,IDE(android studio,Eclipse) 會使用默認的 debug 簽名文件進行簽名。但發佈 apk 時必須使用,自己生成的簽名文件進行簽名。簽名文件確保了開發者對

該應用的所有權,因爲不同簽名文件簽名的 apk 不能覆蓋原有的。該文件擴展名爲 jks.

 

如何生成新的簽名文件

 

您可以使用  Android Studio  生成應用簽名或上傳密鑰,步驟如下: 

 

  1. 在菜單欄中,點擊 Build > G enerate Signed APK 。 

 

  1. 從下拉菜單中選擇一個模塊,然後點擊 Next 。 

 

  1. 點擊 Create new 以創建一個新密鑰和密鑰庫。 

 

  1. New Key Store 窗口上,爲您的密鑰庫和密鑰提供以下信息,如圖 3 所示。 

 

   

 

密鑰庫 

 

    • Key store path :選擇創建密鑰庫的位置。 

 

    • Passw ord :爲您的密鑰庫創建並確認一個安全的密碼。 

 

密鑰 

 

    • Alias :爲您的密鑰輸入一個標識名。 

 

    • Passw ord :爲您的密鑰創建並確認一個安全的密碼。此密碼應當與您爲密鑰庫選擇的密碼不同 
    • Validity (years) :以年爲單位設置密鑰的有效時長。密鑰的有效期應至少爲 25 年, 以便您可以在應用的整個生命期內使用相同的密鑰簽署應用更新。 
    • Certificate :爲證書輸入一些關於您自己的信息。此信息不會顯示在應用中,但會作爲 APK 的一部分包含在您的證書中。 

填寫完表單後,請點擊 O K 。 

具體說明見官方文檔:

https://developer.android.com/studio/publish/app-signing.html

 

什麼是簽名 MD5? 如何獲取

 

每個簽名文件都有一個數字指紋。相當於是公鑰,同一個簽名文件的指紋是一樣的,不同的簽名文件指紋不一樣。可以通過檢查這個指紋確定是不是使用的同一個簽名文件。

 

命令行輸入 keytool –list –v –keystore <簽名文件路徑>

 

 
   
然後輸入密碼,會打印出該簽名文件相關的信息。其中的一項是證書指紋 MD5

 

 

 

接入第三方服務爲什麼需要簽名 MD5?

 

安卓的應用是以包名做爲唯一 ID 的。大多數第三方服務也是以包名做爲單位進行授權的。因爲包名是開發者填寫的,所以別的開發者也可以寫個應用來冒充其他人的應用。第三方服務會涉及到用戶的信息,使用過程中也有費用產生。所以爲了保護 app 不會他人冒充,第三方對應用的簽名進行校驗。剛纔也提到了,因爲 MD5 算法的不可逆性,可以當做公鑰使用。用戶在申請時在後臺填寫簽名的MD5 值,發佈/測試時,使用該簽名文件。第三方服務在運行時會對當前應用的簽名 MD5 進行校驗,如果信息不一致會拒絕服務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章