2011-05-10 21 views
14

He intentado implementar TLS 1.2 en Android. Creo un SSLSocket s pero cuando ejecuto s.getSupportedProtocols(), TLS 1.2 no es una de las opciones. TLSv1 y SSLv3 son compatibles, pero TLSv1.2 no.Implementación de TLS 1.2 en Android 2.3.3

En relación con esta cuestión, el conjunto de cifrado que necesito tampoco está en allí (TLS_ECDHE_ECDSA_WITH_AES_256 _...)

Cualquier idea sobre lo que podría importar o hacer para permitir que TLSv1.2 y que cifra en android? ¿Hay algo que este olvidando? ¡Cualquier idea será de gran ayuda! ¡Gracias!

+1

fwiw Android 4.1 Jelly Bean incluye TLSv1.2 y TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA – mfrankli

+0

@Otra son capaces de resolver cualquier problema al respecto. Yo tengo el mismo problema. y no puedo actualizar mi sistema operativo Android. Entonces tu respuesta podría ayudarme. –

Respuesta

1

Realmente no se puede habilitar si no está allí. Para agregar soporte para TLSv1.2 necesita agregar un nuevo JSSE provider (no trivial), o si solo necesita un socket, probablemente impleméntelo en código nativo usando OpenSSL. O simplemente usa JB si puedes.

+0

Estoy tratando de implementar TLS 1.2 para nuestras aplicaciones compatibles con Android 2.3 y mencionó aquí agregar un nuevo proveedor de JSSE. ¿La actualización al último JDK 1.7 me ayudaría a habilitar TLS 1.2 ya que eso significaría usar el último proveedor de JSSE? –

+0

@VyshakhAmarnath ¿Se las arregló para habilitar TSL 1.2 en Android 2.3? –

+0

@VyshakhAmarnath ¿Lo hiciste funcionar en Android 2.3? – ifiok

1

Si aún está atascado con 2.3 su mejor opción sería crear (o usar) un puerto OpenSSL para Android usando NDK. OpenSSL tiene una opción de configuración para Android. Usando el NDK puede construir bibliotecas vinculadas estáticamente o vinculadas dinámicamente. Luego use JNI y configure su sesión de TLS 1.2 allí. Incluso si usa JB, primero debe habilitar TLS 1.2. Su conjunto de cifrado completo no figura en la lista, por lo que es posible que todavía no esté disponible en JB, por ejemplo, _GCM.

Este table muestra qué suites de cifrado son compatibles con qué nivel de API.

Este enlace stackoverflow también contiene información sobre la construcción de openssl para su uso en Android.

+0

. ¿Le importa explicar más sobre esto? ¿O conoces un buen ejemplo para esto? – Jacksonkr

Cuestiones relacionadas