Hello,
I would like to force the UnityWebRequest on the Android 4.4.4 device (API 19) to use the tls 1.2 proctocol when connecting to the server. I’ve checked that this device supports tls 1.2 by using Chrome browser. I’m using Unity 2018.4.33f1. Below you can find the errors I get from adb:
E/Unity (15700): UnityWebRequest: errorCallback with error=javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x7d3027c0: Failure in SSL library, usually a protocol error
E/Unity (15700): error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:744 0x685d9f10:0x00000000) url=<here-is-server-address>
E/Unity (15700): javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x7d3027c0: Failure in SSL library, usually a protocol error
E/Unity (15700): error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:744 0x685d9f10:0x00000000)
E/Unity (15700):
E/Unity (15700): (Filename: /Users/builduser/buildslave/unity/build/Platforms/Android/Modules/UnityWebRequest/Transports/TransportAndroid.cpp Line: 474)
UnityWebRequest tries to use sslv3, which is an unsafe protocol. On newer Android devices (>= 5.0) the tls 1.2 protocol is used.
There was one issue related to this problem on the issue tracker:
but it was fixed in 5.5.0. Please let me know how to solve this problem.