本文主要是介绍java 自制Tomcat Andorid IOS 端 证书,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近做项目用到Https 需要自制各种证书,Tomcat 用的JKS 格式, Andorid 端使用 BKS 格式, IOS 端使用 P12格式正式, 以及各种证书格式之间的转换。 正好研究了一下,记录下来,以便以后查阅。
- 系统:win7
- JDK 版本: JDK 1.6
- 制作步骤:
keytool 主要参数说明
-genkey表示要创建一个新的密钥 -dname表示密钥的Distinguished Names, CN=commonName OU=organizationUnit O=organizationName L=localityName S=stateName C=country Distinguished Names表明了密钥的发行者身份 -keyalg使用加密的算法,这里是RSA -alias密钥的别名 -keypass私有密钥的密码,这里设置为changeit -keystore 密钥保存在D:盘目录下的mykeystore文件中 -storepass 存取密码,这里设置为changeit,这个密码提供系统从mykeystore文件中将信息取出 -validity该密钥的有效期为 180天 (默认为90天)
制作Tomcat 端 JKS 格式正式
keytool -genkey -alias tomcat -keyalg RSA -keystore d:\tomcat.jks -dname "CN=localhost, OU=localhost, O=localhost, L=SH, ST=SH, C=CN" -keypass password -storepass password -validity 365
注:生成证书时,CN要和服务器的域名相同,如果在本地测试,则使用localhost)
JSK ---> CER
keytool -exportcert -alias tomcat -file D:\server.cer -keystore D:\tomcat.jks
制作Andorid 端 BKS 格式证书
制作Andorid 端 BKS 格式证书,需要下载支持BKS 格式证书的 Java security jar
1: 下载 bcprov-jdk16-141.jar
2:将下载好的 jar 拷贝到 jdk\jre\lib\ext 下面
3:配置 bcprov 支持
在 JDK_HOME\jre\security\ 目录下编辑 java.security文件, 添加对bcprov 的支持(数字可以自己定义)
security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
CER ---> BKS
keytool -importcert -keystore D:\andorid.bks -file E:\server.cer -storetype BKS -provider org.bouncycastle.jce.provider.BouncyCastleProvider
制作 IOS 端 SSL P12 格式证书
JSK ---> P12
keytool -importkeystore -srckeystore D:\tomcat.jks -srcstoretype JKS -deststoretype PKCS12 -destkeystore D:\ios.p12
P12 ---> JKS
keytool -importkeystore -srckeystore D:\ios.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore D:\ios_tomcat.jks
今天就到这, 几种基本的证书生成就是这样简单,如有不对的方欢迎指正, 大家共同学习。 下一步会整理 openssl 生成支持多域名证书,有兴趣的童鞋可以一起讨论。
这篇关于java 自制Tomcat Andorid IOS 端 证书的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!