Unable to verify SSL certificate error

Latest Beta, Generic Android tablet running 4.4. My homeassistant instance has a valid SSL certificate. When i try to add HA, i use the new auth system, it seems to authorize but i get an error “unable to verify SSL certificate error” and asks me to retry, but of course the same problem.

Android 4.4 has outdated SSL support, so depending on server configuration some users do have issues with it (browser SSL support is better on Android 4.4, so that’s why default HA UI would probably work fine in a browser).

There is a bug fix in progress to at least improve support, but it might still not support newest TLS and ciphers configs.
If you do know your server config regarding SSL, please post it. It will help with the investigation.

1 Like

@czoog Bug fix that might resolve this SSL issue is in Beta 11, available on beta channel (if you signed up in Play Store), or it will be available in the next release.

@igor Thanks, just tried but same error. What kind of info about the certificate would be useful? I use let’s encrypt on hassio to generate.

@czoog just to confirm, it works without issues on newer Android devices (5+)?

yes no problem on the two other tablets running 6.0.1…it’s just the 4.4.4 device. It’s a wall mount POE tablet (SIBO-Q896S).

is your server publicly accessible? If yes, can you run a test through: https://www.ssllabs.com/ssltest/index.html?
I’m interested only in the last section with Protocols, Cipher Suites and Handshake Simulation.

Yup it is. Here is the last section. Sorry for the formatting :wink:

   Protocols
TLS 1.3	No
TLS 1.2	Yes
TLS 1.1	No
TLS 1.0	No
SSL 3	No
SSL 2	No

Cipher Suites
TLS 1.2 (suites in server-preferred order)

  • |TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 ( 0xc030 ) ECDH x25519 (eq. 3072 bits RSA) FS|256|
  • |TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 ( `0xcca8` )   ECDH x25519 (eq. 3072 bits RSA)   FS|256|
    
  • |TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 ( `0xc02f` )   ECDH x25519 (eq. 3072 bits RSA)   FS|128|
    
  • |TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 ( `0xc028` )   ECDH x25519 (eq. 3072 bits RSA)   FS|256|
    
  • |TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 ( `0xc027` )   ECDH x25519 (eq. 3072 bits RSA)   FS|128|
    

Handshake Simulation

  • Android 4.4.2	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Android 5.0.0	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256   ECDH secp256r1  FS
    
  • Android 6.0	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256   ECDH secp256r1  FS
    
  • Android 7.0	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • BingPreview Jan 2015	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Chrome 49 / XP SP3	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256   ECDH secp256r1  FS
    
  • Chrome 69 / Win 7  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • Chrome 70 / Win 10	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • Firefox 31.3.0 ESR / Win 7	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256   ECDH secp256r1  FS
    
  • Firefox 47 / Win 7  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256   ECDH secp256r1  FS
    
  • Firefox 49 / XP SP3	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Firefox 62 / Win 7  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • Googlebot Feb 2018	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • IE 11 / Win 7  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • IE 11 / Win 8.1  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • IE 11 / Win Phone 8.1  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256   ECDH secp256r1  FS
    
  • IE 11 / Win Phone 8.1 Update  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • IE 11 / Win 10  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Edge 15 / Win 10  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH x25519  FS
    
  • Edge 13 / Win Phone 10  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Java 8u161	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • OpenSSL 1.0.1l  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • OpenSSL 1.0.2e  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Safari 6 / iOS 6.0.1	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • Safari 7 / iOS 7.1  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • Safari 7 / OS X 10.9  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • Safari 8 / iOS 8.4  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • Safari 8 / OS X 10.10  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384   ECDH secp256r1  FS
    
  • Safari 9 / iOS 9  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Safari 9 / OS X 10.11  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Safari 10 / iOS 10  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Safari 10 / OS X 10.12  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Apple ATS 9 / iOS 9  R	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • Yahoo Slurp Jan 2015	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS
    
  • YandexBot Jan 2015	RSA 2048 (SHA256)  	TLS 1.2	TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384   ECDH secp256r1  FS

Ok, this is the same configuration we tested with on 4 different Android devices running 4.4 successfully (Samsung, LG, Motorola, and Nexus). So I’m suspecting that because device is generic it just doesn’t have standard protocols/ciphers installed.
Not really sure what else could done to resolve this at the moment. Will try to look into some other ideas, but it might be fruitless :expressionless:

bummer. Ok i can look to see if i can side load the right cyphers and such. Thanks for trying! It’s a shame cause it’s a slick looking in 7 inch wall tablet, (thankfully i have not mounted it yet). It’s so hard to find an Android POE wall mount tablet that is not from a generic manufacturer in China :expressionless:

I am powering my other two samsung tablets with POE but i am using a converter for micro USB power. They use a enclosure that hides the plug, but it’s not as slick.

I’ve got a couple of Unifi desktop phones here that run 4.2.4 (https://www.ui.com/unifi-voip/uvp-executive/). I am going to try those with homehabit to see if they work, I’ll let you know.

Great, thanks for the help!

I experienced the same issue and the solution for me was to install the intermediate certificates in the SSL configuration of HomeAssistant. You do not see any errors in the normal browser because they cache intermediates when you visit other websites. If there isn’t a cached version available, you will get an SSL error.

I’m having lots of problems with HomeAssistant integration. Most of which result in the unable to verify SSL certificate error. I am running with the Home Assistant official nabu casa service so I can remote login and I have tried with that url and I can log in to HA (username/password) but then homehabit says ‘invalid’ certificate’ . Just occasionally I have got it to work but it only stays working for a very short period of time and next time I use homehabit it’s failing. Beta 18 Android 6. Other HA apps on the same phone work fine with SSL

Does homehabit support nabucasa ?

Can I use the nabucasa url when connected locally ?

What url should I use for local access (I would like a local address) there is no http:// available url only https://

I’m asking the above because I can’t find a way to access HA locally at all (via IP) without getting the SSL certificate error (which I expect because it’s an IP) but I can access HA locally from other machines (and Chrome on the android phone) using https://192.168.1.50:8123 - albeit initially getting a warning about the SSL certificate being unsafe. Nor can I access HA using the external nabu casa url from my local network

edit: Deleting the app and reinstalling may have helped… I’ll report back

Very Cool, could you explain a bit more how you did that? I’ve never manually installed a cert before.

Hello recently I discovered this app and it’s great.
I have the same problem than the op, SSL certificate error with a middle-age tablet (Android 4).
However in my 2 modern phones works ok.
I have hassio with duckdns for remote access. Is there any solution for older tablets?
Does it works in Amazon fire tablets?
Thank you and sorry my english