I have been holding fire on setting up a new server with EC parameters to use my iOS devices, but having seen the flurry of updates lately for the iOS connect app, I decided it was about time to give it a go, so I went ahead and used Easy RSA to build a CA and server and client key pairs using EC.
However, I am running into a problem and for the life of me I can't figure out what it is. This issue only occurs when I try to connect to my server using the iOS OpenVPN Connect app.
2018-02-25 15:12:22 VERIFY FAIL -- The certificate is signed with an unacceptable key (eg bad curve, RSA too short). : depth=0
...
2018-02-25 15:12:22 Transport Error: mbed TLS: SSL read error : X509 - Certificate verification failed, e.g. CRL, CA or signature check failed
2018-02-25 15:12:22 EVENT: CERT_VERIFY_FAIL mbed TLS: SSL read error : X509 - Certificate verification failed, e.g. CRL, CA or signature check failed [ERR]
I can connect to the server using exactly the same ovpn config when using two different desktop OpenVPN apps, and a connection is estalished using EC corrrctely
Control Channel: TLSv1.2, cipher TLSv1/SSLv3 ECDHE-ECDSA-AES256-GCM-SHA384, 384 bit EC, curve: secp384r1
so it is definitely something to do with the iOS app. Can anyone shed any light on this? I have a feeling it's to with the use of mbed TLS on iOS compared with openssl on desktop, but beyond that I have no idea.