2013-07-21 151 views
2

我使用我的Keystore通過Eclipse簽署了Android應用程序。如何認證簽署的android .apk?

我想要做的是我想驗證這個應用程序是由我簽名的,因爲我只想要這個應用程序訪問我的PHP web服務。

我認爲那是什麼
1.我需要有對應的私鑰
2.使用公鑰的公鑰來驗證,如果應用程序是由我簽署

所以我的問題是
1.我的想法是否正確?
2.如何驗證已簽名的.adk?
3. jarsigner -verbose -verify android.apk是用於驗證android.apk的完整性,但它不驗證權利?

回答

0

APK的簽名告訴Android,簽名版本2的人是簽署版本1的人。它不驗證實際是誰,它只是確保同一個人簽署了應用的所有版本。它是下載更新的安全方法。

如果你想認證一個web服務,你不會使用這個密鑰。面對在其他任何地方使用該密鑰對於安全性來說都是一個壞主意。相反,您希望對所有對Web服務的調用使用https來加密頻道。然後你可以做一些簡單的事情,比如發送一個祕密密鑰作爲一個參數。這會給你一個基準的安全性。如果你想要更多,你真的需要一個apk不知道的祕密(比如用戶輸入的密碼)。

+0

我想發送簽名和散列值。 然後webservice將使用公鑰解密簽名並與哈希值進行比較。 可以這樣做嗎? – Lin