查看Android證書指紋信息

用途

我們?cè)诟叩隆俣鹊冗@些第三方SDK的集成和注冊(cè)時(shí),都會(huì)讓我們提供包名或者證書指紋(MD5、SHA-1、SHA-256)等信息,這些信息如何獲取呢?有多種方法。

準(zhǔn)備工作

安裝好JDK。最好配置好環(huán)境變量(為啥要配置環(huán)境變量我就不解釋了,反正大佬們都懂,小白們起碼也知道怎么配,都是基本功了),這樣用起來(lái)更方便。

我們主要用的是jdk的bin目錄中的keytool工具。

動(dòng)手

情況1:證書在手

這種情況下,我就是開(kāi)發(fā)者,我有keystore或者jks文件。可以使用命令直接查看證書信息。

keytool -list -v -keystore [keystore或jks文件路徑] -storepass [密鑰庫(kù)密碼]

-storepass 也可以不寫,回車后會(huì)提示輸入密碼。

關(guān)于這個(gè)命令用法的詳細(xì)介紹,我們可以看一下命令本身提供的幫助輸出:

keytool -list [OPTION]...

列出密鑰庫(kù)中的條目

選項(xiàng):

 -rfc                            以 RFC 樣式輸出
 -alias <alias>                  要處理的條目的別名
 -keystore <keystore>            密鑰庫(kù)名稱
 -storepass <arg>                密鑰庫(kù)口令
 -storetype <storetype>          密鑰庫(kù)類型
 -providername <providername>    提供方名稱
 -providerclass <providerclass>  提供方類名
 -providerarg <arg>              提供方參數(shù)
 -providerpath <pathlist>        提供方類路徑
 -v                              詳細(xì)輸出
 -protected                      通過(guò)受保護(hù)的機(jī)制的口令

使用 "keytool -help" 獲取所有可用命令

情況2:手中只有用目標(biāo)證書打包出來(lái)的apk包

有的時(shí)候,是給別人幫忙,或者僅僅是查看一下別人家apk的信息,這時(shí)候,我們就需要稍微繞點(diǎn)彎路。我們知道,apk打包之后,包內(nèi)會(huì)保存有RSA文件,這相當(dāng)于是證書的公鑰,用來(lái)給系統(tǒng)驗(yàn)證apk包簽名有效性的(非對(duì)稱加密的知識(shí)如果還不太了解,大家可以去查一下,這里暫時(shí)不再贅述)。而一般第三方廠商校驗(yàn)的,也就是這個(gè)公鑰證書的指紋。

  1. 解壓縮apk文件(初級(jí)開(kāi)發(fā)者們不要吃驚,apk包其實(shí)就是一個(gè)zip);

  2. 找到RSA文件:apk包/META-INF/xxx.RSA。(這個(gè)xxx一般是簽名證書的別名,不重要);

  3. 使用命令讀取RSA的信息:

keytool -printcert -file [RSA文件路徑]
  1. 關(guān)于此命令的用法介紹:
keytool -printcert [OPTION]...

打印證書內(nèi)容

選項(xiàng):

 -rfc                        以 RFC 樣式輸出
 -file <filename>            輸入文件名
 -sslserver <server[:port]>  SSL 服務(wù)器主機(jī)和端口
 -jarfile <filename>         已簽名的 jar 文件
 -v                          詳細(xì)輸出

使用 "keytool -help" 獲取所有可用命令

結(jié)束

拿到了輸出信息之后,想必大家已經(jīng)知道要用什么了。有的時(shí)候可能還要考慮大小寫,還有去除冒號(hào)之類的,這個(gè)具體要看人家第三方需要什么格式了,睜大眼睛看好了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容