android - 无法验证证书签名?

标签 android https x509certificate

我从这边使用 SSL Socket 和 Trustmanager Self signed SSL

但我不断收到以下错误:

09-28 19:52:41.942: WARN/System.err(10101): javax.net.ssl.SSLHandshakeException: org.bouncycastle.jce.exception.ExtCertPathValidatorException: Could not validate certificate signature.

怎么了? 我已经检查了 stackoverflow 上的不同帖子,但我似乎无法让它工作。

我的代码:

SchemeRegistry schemeRegistry = new SchemeRegistry();

// http scheme

schemeRegistry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));

// https scheme

schemeRegistry.register(new Scheme("https", new EasySSLSocketFactory(), 443));
params = new BasicHttpParams();
params.setParameter(ConnManagerPNames.MAX_TOTAL_CONNECTIONS, 1);
params.setParameter(ConnManagerPNames.MAX_CONNECTIONS_PER_ROUTE, new ConnPerRouteBean(1));
params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, false);
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, "utf8");
CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(new AuthScope("www.example.com", AuthScope.ANY_PORT),
    new UsernamePasswordCredentials("user", "password"));
clientConnectionManager = new ThreadSafeClientConnManager(params, schemeRegistry);
context = new BasicHttpContext();
context.setAttribute("http.auth.credentials-provider", credentialsProvider);

DefaultHttpClient client = new DefaultHttpClient(clientConnectionManager, params);

HttpGet get = new HttpGet("https://www.example.com/web/restricted/form/formelement=512663");
HttpResponse response = client.execute(get, context);

Log.w("Response ","Status line : "+ response.toString());

最佳答案

正如 Michael Levy 所提到的,我收到此异常的原因是我的 Android 模拟器已经打开了几天,而且时钟已经远远不同步了。一旦我重新启动模拟器,异常就消失了。

关于android - 无法验证证书签名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7588082/

相关文章:

android - 类和 Activity 通过接口(interface)进行通信

android - retrofit - I/art : Background sticky concurrent mark sweep GC freed

java - Android NetworkOnMainThreadException 异常

php - 无法使PHP cURL SSL正常工作

c# - 像浏览器一样过滤客户端证书

android - Android Pie 上的空白/白色通知行

ajax - 本地服务器的 SSL

c# - 如何使用 makecert 创建证书颁发机构证书?

ssl - 子域的通配符证书和链式证书有什么区别?

java - Java中存储KeyStore : empty file and unable to reload