I have an Android app using ION to make HTTPS requests to my backend. This morning, suddenly it started failing with SSL handshake errors:
javax.net.ssl.SSLHandshakeException: error:10000410:SSL routines:OPENSSL_internal:SSLV3_ALERT_HANDSHAKE_FAILURE
This is pretty much the only info from the log.
This happened first on one phone, then another, and another, without any changes pushed neither to the phone app nor the backend. It seems to be related to an update of Google Play Services. The phones are running both Marshmallow and Nougat.
It does not fail with all servers, it seems to be related to my server on AWS using API gateway/Cloudfront. Directly accessing my EC2 servers using the same certificate works fine.
Using openssl
I get the following output:
$ openssl s_client -connect <my-server>:443
CONNECTED(00000003)
SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:770:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 295 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---