java中的https双向认证实例

本文介绍了Java中如何处理HTTPS的双向认证,包括证书的获取、装载,以及KeyStore、KeyManagerFactory和SSLContext的支持类型。同时,文章还讨论了在实际应用中可能遇到的其他问题,如主机名验证和证书导入导出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

时间记录:2019-8-9
我们知道在https的双向认证中,客户端需要出示证书到服务器端,我们在浏览器中会出现证书的选择,那么在java的httpsurlConnection中怎么使用呢

证书在哪里

证书由他人签发的【服务器自签发,或者自己生成,保证服务器端证书和客户端证书】,我们在使用证书的时候会将证书导入到浏览器中。
导出证书
浏览器设置 — 管理证书 — 选中需要导出的证书 — 导出 — 选择导出私钥 — 输入密码【后面会使用】— 选择导出的位置及文件名
最后导出的证书为pfx格式的文件

证书装载
		String cPath = "C:/Users/admin/Desktop/证书/client.pfx"; //导出的证书
		String pwd = "123456"; //导出证书时输入的密码
		try
		{
   
   
			File file = new File(cPath);
			InputStream inputStream = new FileInputStream(file);
			KeyStore keyStore = KeyStore.getInstance("PKCS12"); //KeyStore的类型对应证书类型
			keyStore.load(inputStream, pwd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值