`
fly_hyp
  • 浏览: 309749 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

Java中 如何跳过Https的证书检测

 
阅读更多
import java.net.URL;
import java.security.SecureRandom;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.KeyManager;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;

public class SSLTest {

    public static void main(String [] args) throws Exception {
        // configure the SSLContext with a TrustManager
        SSLContext ctx = SSLContext.getInstance("TLS");
        ctx.init(new KeyManager[0], new TrustManager[] {new DefaultTrustManager()}, new SecureRandom());
        SSLContext.setDefault(ctx);

        URL url = new URL("https://mms.nw.ru");
        HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
        conn.setHostnameVerifier(new HostnameVerifier() {
            @Override
            public boolean verify(String arg0, SSLSession arg1) {
                return true;
            }
        });
        System.out.println(conn.getResponseCode());
        conn.disconnect();
    }

    private static class DefaultTrustManager implements X509TrustManager {

        @Override
        public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {}

        @Override
        public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {}

        @Override
        public X509Certificate[] getAcceptedIssuers() {
            return null;
        }
    }
}

 

http://stackoverflow.com/questions/1828775/how-to-handle-invalid-ssl-certificates-with-apache-httpclient

分享到:
评论

相关推荐

    Java Https请求,跳过证书,直接访问

    下面是如何在Java中实现HTTPS请求并跳过证书验证: 1. 创建一个TrustManager,它总是信任所有证书,不进行任何验证: ```java TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() { ...

    Java如何跳过https的ssl证书验证详解

    Java跳过HTTPS的SSL证书验证详解 本文主要介绍了Java跳过HTTPS的SSL证书验证的解决思路,并通过示例代码进行了详细的介绍,对大家的学习或者工作具有一定的参考学习价值。 一、HTTPS和HTTP的区别 HTTPS和HTTP的...

    java实现读取证书访问https接口

    在Java编程中,访问HTTPS(安全超文本传输协议)接口通常涉及到处理数字证书,这是为了确保数据传输的安全性。HTTPS通过使用SSL/TLS协议来加密通信,而证书是该协议的一部分,用于验证服务器的身份。本篇文章将深入...

    Java发https请求证书问题

    本文将围绕“Java 发送 HTTPS 请求证书问题”这一主题展开讨论,通过对给定文件中的代码示例及操作步骤进行分析,帮助读者理解如何在 Java 中正确配置并发送 HTTPS 请求。 #### 标题:Java 发送 HTTPS 请求证书问题...

    java 发送https 请求 证书

    当你需要在Java程序中发送HTTPS请求时,可能会遇到证书相关的问题,特别是当服务器使用自签名证书或者非标准CA签发的证书时。本文将详细讲解如何在Java中处理这类问题,以及如何使用httpUtils工具进行HTTPS请求。 ...

    httpclient 绕开HTTPS证书校验

    但是,我们可以通过创建一个信任所有证书的`TrustManager`实例,然后将其设置到`SSLContext`中,从而跳过证书验证。 以下是一个简单的示例,展示了如何使用`httpclient`实现这一功能: ```java import org.apache....

    http远程接口调用-httpClient+跳过SSL证书校验

    总结来说,HttpClient是Java中实现HTTP/HTTPS请求的强大工具,而跳过SSL证书校验的功能在开发和测试环境中非常有用。通过创建自定义的SSLContext和HostnameVerifier,我们可以轻松地绕过SSL校验,从而简化接口调用...

    用java访问https网络,无需证书

    使用java写的访问https网络协议的网址,绕过了证书的验证

    java访问https网址下载文件(含证书)

    在Java编程中,访问HTTPS网址并下载文件是一个常见的任务,特别是在需要安全传输敏感数据或确保数据完整性时。这里我们将深入探讨如何使用Java 1.7版本处理这一过程,包括处理SSL证书。 首先,理解HTTPS(超文本...

    Java 生成证书工具类 https

    java生成https安全证书,解决httpClient访问https出错 编译:javac InstallCert.java 运行:java InstallCert 要访问的网址 结果:Enter certificate to add to trusted keystore or 'q' to quit: [1] 输入1确认生成...

    java生成CA证书

    在Java中,可以使用`java.security.cert.X509Certificate`类来创建和操作X.509证书。 6. **使用jre6的rt.jar**:在描述中提到引入了jre6的rt.jar,这是因为不同的Java版本可能对加密算法的支持有所不同。rt.jar是...

    HttpClient配置SSL绕过https证书实例

    HttpClient配置SSL绕过https证书实例,附件中包含所需httpclient组件jar库。博客地址:http://blog.csdn.net/irokay/article/details/78801307。

    java代码生成数字证书

    4. **Java密钥和证书管理**:在Java中,`java.security.KeyPairGenerator`类用于生成密钥对,`java.security.cert.Certificate`接口代表证书,而`java.security.cert.X509Certificate`则专门处理X.509证书。...

    获取证书和证书信息以及检测证书是否有效demo-java

    这个"获取证书和证书信息以及检测证书是否有效demo-java"项目提供了Java语言实现的相关接口,帮助开发者处理这些任务。下面我们将深入探讨相关知识点。 首先,证书(Certificate)在数字世界中通常指公钥证书,它是...

    Java SpringBoot 项目跳过 ssl 证书认证文件

    Java SpringBoot 项目跳过 ssl 证书认证文件

    java信任SSL证书的工具类

    java信任SSL证书的工具类 忽略HTTPS请求的SSL证书,必须在openConnection之前调用

    java在IE中下载证书并安装(根证书)

    Java在IE中下载并安装根证书是一个常见的网络安全配置步骤,主要应用于验证服务器的身份,确保数据传输的安全性。在这个过程中,根证书(Root Agency.cer)是信任链的基础,它代表了一个权威的证书颁发机构(CA),...

    java生成X509证书jar包

    在Java开发中,生成X509证书是一个常见的任务,特别是在构建安全的HTTPS网络服务时。X509证书是公钥基础设施(PKI)的一部分,用于验证服务器身份,确保数据传输的安全性。BouncyCastle库是一个强大的Java加密库,...

Global site tag (gtag.js) - Google Analytics