Self-signed certificates in iOS apps

How to register self-signed certificates on your iPhone/iPad to use them in Cordova hybrid apps

Ronny Roeller
Jan 22, 2019 · 2 min read

Apps should communicate securely via SSL with their backend. Self-signed certificates are an inexpensive option to use SSL communication also in development environments.

By default, iOS will block all communication attempts of a Cordova app with a self-signed certificate. You will see an error message along those lines:

[Error] WebSocket network error: The operation couldn’t be completed. (OSStatus error -9807.)

The error code 9807 points to an invalid certificate chain because your self-signed certificate wasn’t based on one of iOS’s trusted root certificates (like Comodo or GoDaddy).

So how to make iOS accept your self-signed certificate?

First, email your root certificate (e.g. fake-root-cert.pem) to yourself. Next, open the email on your phone, and click the attachment. This will open the iOS Setting up and offer you to install the certificate as a Profile.

Click on emailed certificate to install it as Profile

Second, instruct iOS to fully trust the installed root certificate. For this, open again the iOS Settings app. Then navigate to “General” > “About” > “Certificate Trust Settings”. In the section “Enable Full Trust for Root Certificates”, enable your root certificate.

Trust your root certificate

With this, your app can connect now with the self-signed certificate to the backend.

Happy coding!

NEXT Engineering

Tech lessons learned while making innovation smart, simple…

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store