java1.6 tls1.1_jdk1.6 支持 tls1.2协议 并忽略身份验证

该博客介绍了如何在Java 1.6环境中配置TLS 1.1及以上版本,并实现对证书验证的忽略。通过创建自定义的`TLSSocketConnectionFactory`,利用BouncyCastleProvider增强SSL连接,同时在连接过程中设置信任所有证书,从而达到忽略身份验证的目的。
摘要由CSDN通过智能技术生成

import java.io.*;importjava.net.UnknownHostException;import java.security.*;import java.security.cert.*;import java.util.*;import javax.net.ssl.*;importjavax.security.cert.X509Certificate;import org.bouncycastle.crypto.tls.*;importorg.bouncycastle.jce.provider.BouncyCastleProvider;public class TLSSocketConnectionFactory extendsSSLSocketFactory {static{if (Security.getProvider(BouncyCastleProvider.PROVIDER_NAME) == null) {

Security.addProvider(newBouncyCastleProvider());

}

}

@Overridepublic Socket createSocket(Socket socket, final String host, intport,boolean arg3) throwsIOException {if (socket == null) {

socket= newSocket();

}if (!socket.isConnected()) {

socket.connect(newInetSocketAddress(host, port));

}final TlsClientProtocol tlsClientProtocol = new TlsClientProtocol(socket.getInputStream(), socket.getOutputStream(), newSecureRandom());return_createSSLSocket(host, tlsClientProtocol);

}

@Overridepublic String[] getDefaultCipherSuites() { return null; }

@Overridepublic String[] getSupportedCipherSuites() { return null; }

@Overridepublic Socket createSocket(String host, int port) throws IOException, UnknownHostException { throw newUnsupportedOperationException(); }

@Overridepublic Socket createSocket(InetAddress host, int port) throws IOException { throw newUnsupportedOperationException(); }

@Overridepublic Socket createSocket(String host, int port, InetAddress localHost, int localPort) throws IOException, UnknownHostException { return null; }

@Overridepublic Socket createSocket(InetAddress address, int port, InetAddress localAddress, int localPort) throws IOException { throw newUnsupportedOperationException(); }private SSLSocket _createSSLSocket(final String host, finalTlsClientProtocol tlsClientProtocol) {return newSSL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值