diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/info/core/CoreInfoFragment.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/info/core/CoreInfoFragment.kt
index e4686c0bf832a2f41ba0e575a60a39447d3f708b..6215546c3537177d854ffcaa397117e6c2712fd2 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/info/core/CoreInfoFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/info/core/CoreInfoFragment.kt
@@ -52,6 +52,7 @@ import org.threeten.bp.ZoneId
 import org.threeten.bp.format.DateTimeFormatter
 import org.threeten.bp.format.FormatStyle
 import javax.inject.Inject
+import javax.net.ssl.SSLPeerUnverifiedException
 
 class CoreInfoFragment : ServiceBoundFragment() {
 
@@ -163,7 +164,12 @@ class CoreInfoFragment : ServiceBoundFragment() {
     }
 
     modelHelper.sslSession.toLiveData().observe(this, Observer {
-      val certificateChain = it?.orNull()?.peerCertificateChain?.map(X509Helper::convert).orEmpty()
+      val peerCertificateChain = try {
+        it?.orNull()?.peerCertificateChain
+      } catch (ignored: SSLPeerUnverifiedException) {
+        null
+      }
+      val certificateChain = peerCertificateChain?.mapNotNull(X509Helper::convert).orEmpty()
       val leafCertificate = certificateChain.firstOrNull()
       if (leafCertificate != null) {
         secureCertificate.text = requireContext().getString(
diff --git a/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/helper/QuasselViewModelHelper.kt b/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/helper/QuasselViewModelHelper.kt
index 717f4dcfc41c3be4204e766a176e1264d1d20277..61f74827b3053b32f81ee30ec0f1dff94db86c0c 100644
--- a/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/helper/QuasselViewModelHelper.kt
+++ b/viewmodel/src/main/java/de/kuschku/quasseldroid/viewmodel/helper/QuasselViewModelHelper.kt
@@ -39,7 +39,7 @@ import de.kuschku.quasseldroid.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid.viewmodel.data.*
 import io.reactivex.Observable
 import javax.inject.Inject
-import javax.net.ssl.SSLSession
+import javax.net.ssl.SSLPeerUnverifiedException
 
 open class QuasselViewModelHelper @Inject constructor(
   val quassel: QuasselViewModel
@@ -80,8 +80,12 @@ open class QuasselViewModelHelper @Inject constructor(
   }
 
   val sslSession = connectedSession.flatMapSwitchMap(ISession::sslSession)
-  val peerCertificateChain = sslSession.mapMap(SSLSession::getPeerCertificateChain).mapMap {
-    it.mapNotNull(X509Helper::convert)
+  val peerCertificateChain = sslSession.mapMapNullable {
+    try {
+      it.peerCertificateChain.mapNotNull(X509Helper::convert)
+    } catch (ignored: SSLPeerUnverifiedException) {
+      null
+    }
   }.mapOrElse(emptyList())
   val leafCertificate = peerCertificateChain.map { Optional.ofNullable(it.firstOrNull()) }