X509v3 Subject Alternative Name:DNS:*.openvehicles.com, DNS:openvehicles.comIssuer: C=LV, L=Riga, O=GoGetSSL, CN=GoGetSSL RSA DV CAValidityNot Before: Feb 11 00:00:00 2020 GMTNot After : Feb 10 23:59:59 2022 GMT
Subject: C=LV, L=Riga, O=GoGetSSL, CN=GoGetSSL RSA DV CAIssuer: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification AuthorityValidityNot Before: Sep 6 00:00:00 2018 GMTNot After : Sep 5 23:59:59 2028 GMTSubject: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification AuthorityIssuer: C=SE, O=AddTrust AB, OU=AddTrust External TTP Network, CN=AddTrust External CA RootValidityNot Before: May 30 10:48:38 2000 GMTNot After : May 30 10:48:38 2020 GMT
Subject: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification AuthorityIssuer: C=US, ST=New Jersey, L=Jersey City, O=The USERTRUST Network, CN=USERTrust RSA Certification AuthorityValidityNot Before: Feb 1 00:00:00 2010 GMTNot After : Jan 18 23:59:59 2038 GMT
$ openssl s_client -connect api.openvehicles.com:6870CONNECTED(00000005)depth=2 C = US, ST = New Jersey, L = Jersey City, O = The USERTRUST Network, CN = USERTrust RSA Certification Authorityverify return:1depth=1 C = LV, L = Riga, O = GoGetSSL, CN = GoGetSSL RSA DV CAverify return:1depth=0 CN = *.openvehicles.comverify return:1---Certificate chain0 s:/CN=*.openvehicles.comi:/C=LV/L=Riga/O=GoGetSSL/CN=GoGetSSL RSA DV CA1 s:/C=LV/L=Riga/O=GoGetSSL/CN=GoGetSSL RSA DV CAi:/C=US/ST=New Jersey/L=Jersey City/O=The USERTRUST Network/CN=USERTrust RSA Certification Authority2 s:/C=US/ST=New Jersey/L=Jersey City/O=The USERTRUST Network/CN=USERTrust RSA Certification Authorityi:/C=US/ST=New Jersey/L=Jersey City/O=The USERTRUST Network/CN=USERTrust RSA Certification Authority
On 4 Mar 2021, at 12:52 PM, Stephen Casner <casner@acm.org> wrote:Your server api.openvehicles.com on port 6870.
On Thu, 4 Mar 2021, Mark Webb-Johnson wrote:What site (and port) are you trying to access?_______________________________________________On 4 Mar 2021, at 12:09 PM, Stephen Casner <casner@acm.org> wrote:
Mark,
Thanks for that reply. As I mentioned, if I don't configure
WOLFSSL_ALT_CERT_CHAIN then I get an "ASN no signer to confirm"
error. Do you have any idea why that might be? That is, am I likely
to be missing access to some key? Of some key not being present in a
cert when it should be there?
-- Steve
On Thu, 4 Mar 2021, Mark Webb-Johnson wrote:Steve,
A thorny issue. Servers are _supposed_ to provide intermediate certificates, up to a trusted root. When you are issued a certificate, it includes a bundle of these intermediary certificates to be installed at the same time. In practice, servers are often mis-configured so they do not. This is made worse by browsers silently detecting this, then downloading the missing intermediate certificates (the child certificate contains a URL to its parent's cert).
For Open Vehicles, I don't think we need to deal with this, and we certainly don't need the complexity of automatically downloading intermediate certificates. I think if the user wants to access a server misconfigured in that way, he can simply import and trust the intermediate certificate directly.
I don't think we should set WOLFSSL_ALT_CERT_CHAIN.
Regarding your question, in normal operation OVMS as a client must validate the server certificates it connect to. I don't think OVMS currently supports client certificates, although if it did we would have to correctly provide those to the server on connection.
Regards, Mark.On 4 Mar 2021, at 9:00 AM, Stephen Casner <casner@acm.org> wrote:
I find that I need to enable the following option in my testing of the
possible replacement of MEDTLS with WolfSSL, otherwise I get an "ASN
no signer to confirm" error:
WOLFSSL_ALT_CERT_CHAIN allows CA's to be presented by peer, but
not part of a valid chain. Default wolfSSL behavior is to require
validation of all presented peer certificates. This also allows
loading intermediate CA's as trusted and ignoring no signer
failures for CA's up the chain to root. The alternate certificate
chain mode only requires that the peer certificate validate to a
trusted CA.
Is that expected for the trust arrangements we are using?
A possibly related question: do we expect the server to validate
clients, or only the clients to validate the server?
-- Steve
OvmsDev mailing list
OvmsDev@lists.openvehicles.com
http://lists.openvehicles.com/mailman/listinfo/ovmsdev