安全测试中,要求系统进行双向证书认证,怕麻烦不使用openssl,机器上自带了jdk,那用jdk进行生成证书操作,在整个SSL配置过程中,最难的应该是证书链的生成操作。

1.生成服务器端标识密钥库server.jks和服务器根证书server.cer

2.生成客户端密钥库client.p12和客户端根证书client.cer

3.将client.cer导入服务器端信任密钥库servertrust.jks

此时,将产生5个文件,其中,server.jks和servertrust.jks需要放到weblogic进行配置,使用weblogic控制台,client.p12和client.cer分别导入到客户端的个人区和受信任的根证书颁发机构,启动浏览器即可看效果了。

付相关代码

 

keytool -genkey -alias server -keyalg rsa -keysize 2048 -sigalg sha1withrsa -keypass password -storetype jks -keystore d:\server.jks -storepass password -validity 3650 -dname “CN=127.0.0.1,OU=cn,O=cn,L=cn,ST=cn,C=cn”

 

keytool -export -alias server -keystore d:\server.jks -storepass password -file d:\server.cer

 

keytool -genkey -v -alias client -keyalg RSA -keysize 2048 -storetype PKCS12 -validity 3650 -keystore d:\client.p12 -dname “CN=Personal,OU=cn,O=cn,L=cn,ST=cn,C=cn” -storepass password -keypass password

 

keytool -export -alias client -keystore d:\client.p12 -storetype PKCS12 -storepass password -rfc -file d:\client.cer

 

keytool -import -trustcacerts -alias client -storetype jks -keystore d:\servertrust.jks -storepass password -file d:\client.cer
y