實際上在Android中是無法使用pfx格式證書,Android 系統中使用的證書要求是bks格式。要轉換bks證書格式,首先要搭建轉換證書的環境。
一、jdk默認情況下是不支持BKS證書格式,需要額外下載jar包,具體步驟如下:
1、下載jar包,下載地址 https://www.bouncycastle.org/download/bcprov-ext-jdk15on-154.jar
2、將下載好的bcprov-ext-jdk15on-154.jar複製到%JDK_HOME%\jre\lib\ext下
3、用文本編輯器打開%JDK_HOME%\jre\lib\security\java.security文件,在相應位置添加如下配置(前面已經有10個了)
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
二、證書文件準備,在沃通CA申請到的pfx格式證書,需要在windows上導入導出,以得到帶有頂級根的pfx證書,操作如下:
1、雙擊安裝pfx格式證書,輸入密碼後,其他按默認方式進行下一步操作(過程中需要選擇 允許導出私鑰),直到完成。
2、開始-->運行,輸入certmgr.msc,在個人-->證書中找到剛剛安裝的證書文件,右鍵該證書,選擇所有任務-->導出,導出的過程注意要勾選運行導出私鑰,其他默認方式,密碼設置要簡單,如數字1(否則後面轉換BKS證書的時候會提示非法私鑰),直到完成。
三、使用剛剛調整過的jdk環境,轉換證書格式。
windows環境:
開始-->運行,輸入cmd,通過cd命令,進入%JDK_HOME%\jre\bin目錄下,輸入如下命令
keytool -importkeystore -srckeystore path\name.pfx -destkeystore path\name.bks -srcstoretype PKCS12 -deststoretype BKS
執行命令之後會要求輸入三次密碼,前兩個密碼是BKS證書文件密碼(這裏的密碼可以任意設置),最後一個是新轉換的PFX證書文件的密碼。
linux環境:
通過cd命令,進入到%JDK_HOME%/jre/bin目錄下,輸入如下命令
./keytool -importkeystore -srckeystore path/name.pfx -destkeystore path/name.bks -srcstoretype PKCS12 -deststoretype BKS
執行命令之後會要求輸入三次密碼,前兩個密碼是bks證書文件密碼,最後一個是新轉換的pfx證書文件的密碼。
四、驗證BKS證書文件
keytool -list -v -storetype BKS -keystore path\name.bks
./keytool -list -v -storetype BKS -keystore path/name.bks
沃通技術支持原創,轉載請註明來源 www.wosign.com