public class HttpsUtils
extends java.lang.Object
| 限定符和类型 | 类和说明 |
|---|---|
static class |
HttpsUtils.SSLParams |
| 限定符和类型 | 字段和说明 |
|---|---|
static javax.net.ssl.HostnameVerifier |
UnSafeHostnameVerifier
此类是用于主机名验证的基接口。
|
static javax.net.ssl.X509TrustManager |
UnSafeTrustManager
为了解决客户端不信任服务器数字证书的问题,网络上大部分的解决方案都是让客户端不对证书做任何检查,
这是一种有很大安全漏洞的办法
|
| 构造器和说明 |
|---|
HttpsUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static HttpsUtils.SSLParams |
getSslSocketFactory() |
static HttpsUtils.SSLParams |
getSslSocketFactory(java.io.InputStream... certificates)
https单向认证
用含有服务端公钥的证书校验服务端证书
|
static HttpsUtils.SSLParams |
getSslSocketFactory(java.io.InputStream bksFile,
java.lang.String password,
java.io.InputStream... certificates)
https双向认证
bksFile 和 password -> 客户端使用bks证书校验服务端证书
certificates -> 用含有服务端公钥的证书校验服务端证书
|
static HttpsUtils.SSLParams |
getSslSocketFactory(java.io.InputStream bksFile,
java.lang.String password,
javax.net.ssl.X509TrustManager trustManager)
https双向认证
bksFile 和 password -> 客户端使用bks证书校验服务端证书
X509TrustManager -> 如果需要自己校验,那么可以自己实现相关校验,如果不需要自己校验,那么传null即可
|
static HttpsUtils.SSLParams |
getSslSocketFactory(javax.net.ssl.X509TrustManager trustManager)
https单向认证
可以额外配置信任服务端的证书策略,否则默认是按CA证书去验证的,若不是CA可信任的证书,则无法通过验证
|
public static javax.net.ssl.X509TrustManager UnSafeTrustManager
public static javax.net.ssl.HostnameVerifier UnSafeHostnameVerifier
public static HttpsUtils.SSLParams getSslSocketFactory()
public static HttpsUtils.SSLParams getSslSocketFactory(javax.net.ssl.X509TrustManager trustManager)
public static HttpsUtils.SSLParams getSslSocketFactory(java.io.InputStream... certificates)
public static HttpsUtils.SSLParams getSslSocketFactory(java.io.InputStream bksFile, java.lang.String password, java.io.InputStream... certificates)
public static HttpsUtils.SSLParams getSslSocketFactory(java.io.InputStream bksFile, java.lang.String password, javax.net.ssl.X509TrustManager trustManager)