ESP8266 Developer Zone The Official ESP8266 Forum 2018-10-24T14:18:07+08:00 https://bbs.espressif.com:443/feed.php?f=7&t=23554 2018-10-24T14:18:07+08:00 2018-10-24T14:18:07+08:00 https://bbs.espressif.com:443/viewtopic.php?t=23554&p=34399#p34399 <![CDATA[Re: ESP8266 SSL 证书认证失败,何解?]]> Statistics: Posted by Her Mary — Wed Oct 24, 2018 2:18 pm


]]>
2018-10-21T19:29:29+08:00 2018-10-21T19:29:29+08:00 https://bbs.espressif.com:443/viewtopic.php?t=23554&p=34352#p34352 <![CDATA[ESP8266 SSL 证书认证失败,何解?]]>
please start sntp first !
TLS.ca_x509.cer 2c0
the file is a PEM file.
client handshake start.
distinguished names: [<null>], [192.168.111.100]
please start sntp first !
before 1540080000, tv_sec 5, after 1972080000
client handshake failed
Error: Cert is not yet valid

服务器 为 Golang 开发,加载 makefile.sh 生成的已签名的服务器证书,如下示例:

Code:

   cert, err := tls.LoadX509KeyPair("server/server.crt", "server/server.key")
   if err != nil {
      fmt.Printf("load x509 error, %s", err)
      return
   }

   config := &tls.Config{
      Certificates: []tls.Certificate{cert},
   }

但在 socket recv data 时,也提示:remote error: tls: bad certificate

几个问题:
1,服务端加载脚本生成的, server 目录的这俩证书/私钥,正确否?
2,8266 启动 SSL TCP Connect前,需要先启动使能 SNTP吗?此项是必须的吗,目的是为了获取当前时间,从而知道服务器证书是否过期?
3,我看了下 makefile.sh 脚本中,使用了 openssl 的 CN 字段,此项是匹配 socket peer addr 的 TCP IP地址吗?如果是的,为啥日志提示 <null> 与 证书中的 CN 字段进行比较?

Statistics: Posted by alexsunmiu — Sun Oct 21, 2018 7:29 pm


]]>