android開發之數字簽名
http://www.cnblogs.com/fengzhblog/archive/2013/05/06/3063104.html
Android系統要求所有的程序經過數字簽名才能安裝,如果沒有可用的數字簽名,系統將不許安裝運行此程序,不管是模擬器還是真實手機。因此,在設備或者是模擬器上運行調試程序之前,必須為應用程序設置數字簽名。Android系統僅僅會在安裝的時候測試簽名證書的有效期,如果應用程序的簽名是在安裝之后才到期,那么應用程序仍然可以正常啟用。
Android通過數字簽名來標識應用程序的作者和在應用程序之間建立信任關系,不是用來決定用戶可不可以安裝該應用程序。android的這個簽名由應用程序的作者完成,並不需要權威的數字證書簽名機構認證,他只是用來讓應用程序包自我認證的。Android系統默認自動給應用程序簽名,ADT會自動使用debug密鑰為應用程序簽名,debug密鑰是一個名為debug.keystore的文件。在我的電腦中的路徑是:
C:\Documents and Settings\Administrator\.android\debug.keystore
使用eclipse的Export功能,導出apk文件
http://www.cnblogs.com/fengzhblog/archive/2013/05/18/3085147.html
1. 右擊彈窗快捷菜單,選擇Export,
2. 選擇導出目標: Android/Export Android Application,
3. 選擇導出項目: txrjsms,
4. 選擇一個Keystore:在這個步驟可以選擇使用已有的keystore或者創建新的keystore。
當前選中“創建新的keystore”,需要輸入location,password,confirm。
設定Location,D:\workspace\apk\foreignsms.keystore,設定Password和Confirm。
5. Key Creation,創建密鑰,
輸入Alias,Password,Confirm,Validity,First&LastName,其中Validaty推薦輸入25(年),
以上幾項是必須輸入的,其余可以不輸入,點擊Next,
6. 輸入Destination APK File,D:\workspace\apk\txrjsms.apk
點擊完成,在文件夾D:\workspace\apk\下生成txrj.keystore文件和txrjsms.apk文件,
生成txrj.keystore是很快的,但是生成txrjsms.apk有點慢,需要一點耐心!
從txrj.keystore中生成MD5
http://www.cnblogs.com/fengzhblog/archive/2013/07/03/3168736.html
Keystore was tampered with, or password was incorrect
E:\AndroidDev\export>keytool -list -keystore txrj.keystore
'keytool' 不是內部或外部命令,也不是可運行的程序或批處理文件。
E:\AndroidDev\export>set path=C:\Program Files\Java\jdk1.6.0_16\bin
E:\AndroidDev\export>keytool -list -keystore txrj.keystore
輸入keystore密碼:
Keystore 類型: JKS
Keystore 提供者: SUN
您的 keystore 包含 1 輸入
txrj, 2013-7-27, PrivateKeyEntry,
認證指紋 (MD5): 34:CD:9C:B9:FA:ED:B7:6D:E7:47:4A:C5:2B:E0:F1:84
(34CD9CB9FAEDB76DE7474AC52BE0F184)
MD5在線查詢破解:http://www.cmd5.com/
MD5和數字證書
http://baike.baidu.com/view/7636.htm
大家都知道,地球上任何人都有自己獨一無二的指紋,這常常成為公安機關鑒別罪犯身份最值得信賴的方法;與之類似,MD5就可以為任何文件(不管其大小、格式、數量)產生一個同樣獨一無二的“數字指紋”,如果任何人對文件做了任何改動,其MD5值也就是對應的“數字指紋”都會發生變化。
MD5的典型應用是對一段Message(字節串)產生fingerprint(指紋),以防止被“篡改”。舉個例子,你將一段話寫在一個叫 readme.txt文件中,並對這個readme.txt產生一個MD5的值並記錄在案,然后你可以傳播這個文件給別人,別人如果修改了文件中的任何內容,你對這個文件重新計算MD5時就會發現(兩個MD5值不相同)。如果再有一個第三方的認證機構,用MD5還可以防止文件作者的“抵賴”,這就是所謂的數字簽名應用。