給APK簽名,修改簽名


簡介:

本來是不需要簽名的,但是我有個android的專用設備,限制安裝,但是售后給我通過了一個證書的驗證。

那么我想裝什么軟件,就需要這個證書驗證。

現在記錄一下簽名的主要過程,還有修改簽名的方法。

一:環境准備

其實也沒用什么特別的工具JAVA JDK 就夠用了。

https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

根據自己的版本下載,我下載的是Windows    158.63 MB      jdk-12.0.2_windows-x64_bin.exe

一路下一步安裝就可以了。

二:生成簽名的證書

找到你安裝文件夾

D:\Program Files\Java\jdk-12.0.1\bin>keytool -genkey -alias jackadam -keyalg RSA -validity 36500 -keystore jackadam.keystore
輸入密鑰庫口令:
再次輸入新口令:
您的名字與姓氏是什么?
  [Unknown]:  jack
您的組織單位名稱是什么?
  [Unknown]:  technology
您的組織名稱是什么?
  [Unknown]:  fntco
您所在的城市或區域名稱是什么?
  [Unknown]:  zhengzhou
您所在的省/市/自治區名稱是什么?
  [Unknown]:  henan
該單位的雙字母國家/地區代碼是什么?
  [Unknown]:  cn
CN=jack, OU=technology, O=fntco, L=zhengzhou, ST=henan, C=cn是否正確?
  [否]:  y

正在為以下對象生成 2,048 位RSA密鑰對和自簽名證書 (SHA256withRSA) (有效期為 36,500 天):
         CN=jack, OU=technology, O=fntco, L=zhengzhou, ST=henan, C=cn

標紅的可以根據自己喜好來換。會在bin目錄生成證書名稱為jackadamjackadam.keystore這個密鑰文件。

 -validity 36500 很多資料里沒寫這個參數,這個參數是100年的有效期。

誰沒事換證書玩啊?就寫100年吧。

三:查看簽名

第一步:將apk解壓
第二步:找到META-INF 下的.RSA文件
第三步:在mac終端或者window控制器上輸入命令:
keytool -printcert -file xxx.RSA回車,即可查看簽名文件.將.RSA文件拖入到-file后面,即可查看:如下圖

 

這比我還狠,1000年,365000天。真是地老天荒啊。

四:刪除簽名

其實很簡單,用WinRAR打開apk,找到META-INF文件夾,刪除MANIFEST.MF之外的所有其他文件即可。

五:簽名

簽名命令如圖下:
使用jarsigner進行簽名
jarsigner -verbose -keystore [您的私鑰存放路徑] -signedjar [簽名后文件存放路徑] [未簽名的文件路徑] [您的證書名稱]
或者直接把密碼給帶進簽名里面去,就不用手動輸入密碼庫密碼了:命令如下
jarsigner -verbose -keystore [您的私鑰存放路徑] -storepass 密碼庫密碼 -signedjar [簽名后文件存放路徑] [未簽名的文件路徑] [您的證書名稱]
或者
jarsigner -verbose -keystore [您的私鑰存放路徑] -signedjar [簽名后文件存放路徑] [未簽名的文件路徑] [您的證書名稱] -storepass 密碼庫密碼

我的操作如下:

六:驗證簽名

這怎么驗?和查看簽名樣啊。

查看到有簽名就對了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM