Llamo a un servicio REST usando HTTPS en una aplicación de Android. Ya tengo un código de trabajo para esto, pero ahora que estoy usando un servidor recién instalado que aloja el servicio REST, ya no puedo establecer una conexión.Error de protocolo desconocido con conexión HTTPS en android
Aquí es la excepción:
javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x15b7768: Failure in SSL library, usually a protocol error
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol (external/openssl/ssl/s23_clnt.c:683 0x402e5cc3:0x00000000)
La aplicación utiliza las clases de Apache para interactuar con el servicio REST. Recibo este error incluso cuando uso un TrustManager ficticio que acepta cualquier tipo de certificado.
Al llamar al servicio REST desde el Android Navigator, la conexión se establece correctamente y funciona bien.
El teléfono Android ejecuta el último Android 4.0.3 de HTC.
El servicio REST es una aplicación hospedada mod_perl en Apache configurada con soporte SSL.
Navegar por el código fuente de OpenSSL en https://github.com/android/platform_external_openssl/blob/ics-mr0/ssl/s23_clnt.c no me da ninguna pista además de un problema de bajo nivel.
¿Alguna sugerencia de cómo depurar esto aún más?
posible engaño de: http://stackoverflow.com/questions/6735408/apache-commons-net-ssl-handshake-error-with-android – petey
¿Ha comprobado que el nuevo servidor tiene el certificado SSL instalado correctamente? – petey
También conéctese con openssl s_client y vea lo que el servidor está enviando. –