# TURNS ICE candidates not generated when using Let's Encrypt certificate

**URL:** <https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90>\
**Category:** General\
**Created:** [April 11, 2019, 6:27am UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90 "2019-04-11T06:27:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jrx-jsj](https://avatars.discourse-cdn.com/v4/letter/j/ec9cab/32.png) [@jrx-jsj](https://react-native-webrtc.discourse.group/u/jrx-jsj)\
**Post date:** [April 11, 2019, 6:27am UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90/1 "2019-04-11T06:27:47Z")

</div>

If I use a TURN server (coturn) with only a turns: scheme URL, and this TURN server use a valid Let’s Encrypt certificate, relay candidates are never generated. This is happening for both iOS and Android. If I use a GoDaddy certificate, candidates are generated.

Relay candidates with Let’s Encrypt certificate are properly generated in web browsers and also in Android WebView.

I tried to take a look into WebRTC source code and they are using here and there `tls_cert_verifier`, but I didn’t find where it is generated (if any). In some other places it is just set to `null`.

This was already happening in other similar projects like [cordova-plugin-iosrtc](https://github.com/BasqueVoIPMafia/cordova-plugin-iosrtc)

Thanks in advance.

---

<div class="post-metadata">

**Author:** ![dav](https://avatars.discourse-cdn.com/v4/letter/d/977dab/32.png) [@dav](https://react-native-webrtc.discourse.group/u/dav)\
**Post date:** [January 21, 2020, 9:44pm UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90/2 "2020-01-21T21:44:37Z")

</div>

> [@jrx-jsj](#):
>
> This was already happening in other similar projects like [cordova-plugin-iosrtc](https://github.com/BasqueVoIPMafia/cordova-plugin-iosrtc)

I have the same kind of problem with turns and let’s encrypt certificate. Any news ?

---

<div class="post-metadata">

**Author:** ![matthew-taf](https://yyz2.discourse-cdn.com/free1/user_avatar/react-native-webrtc.discourse.group/matthew-taf/32/609_2.png) [@matthew-taf](https://react-native-webrtc.discourse.group/u/matthew-taf)\
**Post date:** [May 18, 2022, 6:44pm UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90/3 "2022-05-18T18:44:27Z")

</div>

I think this problem still exists, did anyone figure out why it’s happening?

---

<div class="post-metadata">

**Author:** ![matthew-taf](https://yyz2.discourse-cdn.com/free1/user_avatar/react-native-webrtc.discourse.group/matthew-taf/32/609_2.png) [@matthew-taf](https://react-native-webrtc.discourse.group/u/matthew-taf)\
**Post date:** [May 20, 2022, 12:36am UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90/4 "2022-05-20T00:36:19Z")

</div>

It appears to be related to [this issue](https://github.com/jitsi/jitsi-meet/issues/6383#issuecomment-1057072518). Switching from Let’s Encrypt to ZeroSSL worked as a workaround.

---

<div class="post-metadata">

**Author:** ![matthew-taf](https://yyz2.discourse-cdn.com/free1/user_avatar/react-native-webrtc.discourse.group/matthew-taf/32/609_2.png) [@matthew-taf](https://react-native-webrtc.discourse.group/u/matthew-taf)\
**Post date:** [May 20, 2022, 12:32pm UTC](https://react-native-webrtc.discourse.group/t/turns-ice-candidates-not-generated-when-using-lets-encrypt-certificate/90/5 "2022-05-20T12:32:34Z")

</div>

Actually this was weirder: Version of react-native-webrtc \> 1.100.0 include the Mozilla CA bundle. However, RSA-4096 certificates seems to break TURNS on iOS. Downgrading to a RSA-2048 certificate from Let’s Encrypt worked with react-native-webrtc 1.100.0.

> **[Wisdom of the Ancients](https://xkcd.com/979/)**
>
> All long help threads should have a sticky globally-editable post at the top saying 'DEAR PEOPLE FROM THE FUTURE: Here's what we've figured out so far ...'
