缘由
由于工作原因,需要在windows上将安全中心给的pem证书转化成安卓需要的bks证书,然后上网查了下,现在做记录
步骤
1:现在当前的windows系统中添加转化需要的jar库(BC库):从bouncycastle网站下载 bcprov-ext-jdk18on-172,然后将此jar包添加到当前系统的java目录:{JAVA-HOME}/jre/lib/ext

2:添加库支持配置,将此BC库添加到provider配置中:{JAVA-HOME}/jre/lib/security/java.security在此文件security.provider的最下面添加新的provider支持:security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider

3:在Cmd的命令行中输入:keytool -importcert -v -trustcacerts -file {pem-path}.pem -alias {alias-name} -keystore {bks-path}.bks -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider,其中{pem-path}、{alias-name}、{bks-path}输入按照实际情况自定义,譬如:keytool -importcert -v -trustcacerts -file test.pem -alias test -keystore test.bks -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider 。输入后会要求调用bks的密钥,连续两次一模一样的,然后要求是否信任此证书,输入“y”就行。这样就生成了一个bks文件。
4:查看bks证书:keytool -list -v -storetype BKS -keystore {bks-path}.bks 输入上一步的密码后就可以看到详细信息了。譬如:keytool -list -v -storetype BKS -keystore test.bks