Ssl nodeMCU TLS证书错误

Ssl nodeMCU TLS证书错误,ssl,mqtt,tls1.2,esp8266,nodemcu,Ssl,Mqtt,Tls1.2,Esp8266,Nodemcu,我正在建设一个真正简单的物联网项目,我被困在nodeMCU-TLS问题上。我的Raspberry pi上有MQTT代理,所有证书都正确插入(在同一Raspberry上使用Paho客户端或在远程PC上使用MQTT.fx客户端时一切正常),但当我尝试从ESP8266与nodeMCU连接时,我收到SSL握手错误(是的,我对所有提到的客户端使用相同的证书文件)。我的ESP8266代码如下所示: tls.cert.verify([[ -----BEGIN CERTIFICATE-----

我正在建设一个真正简单的物联网项目,我被困在nodeMCU-TLS问题上。我的Raspberry pi上有MQTT代理,所有证书都正确插入(在同一Raspberry上使用Paho客户端或在远程PC上使用MQTT.fx客户端时一切正常),但当我尝试从ESP8266与nodeMCU连接时,我收到SSL握手错误(是的,我对所有提到的客户端使用相同的证书文件)。我的ESP8266代码如下所示:

    tls.cert.verify([[
    -----BEGIN CERTIFICATE-----
    -----END CERTIFICATE-----
    ]])

    m:connect(config.HOST, 8883, 1, function(con) 
        print("Connected to MQTT broker")    
        register_myself()
        -- And then pings each 1000 milliseconds
        tmr.stop(6)
        tmr.alarm(6, 1000, 1, send_ping)
    end, handle_mqtt_error)
我从m:connect获得错误代码-5(mqtt.CONN\u FAIL\u SERVER\u NOT\u FOUND),但当我使用Wireshark分析数据包时,它的TLS握手如下所示:

  • 客户你好
  • 服务器你好
  • 证书,服务器,您好,完成
  • TLSv1.2记录层:警报(级别:致命,描述:未知CA)

ESPlorer控制台中还有一行代码:E:M 544,我真的不知道这是什么意思。

ESP8266速度太慢,无法可靠地使用证书。您应该升级到ESP32或其他对它有更多支持的版本

请参阅以下PDF的第3.2节,参考ESP8266的SSL握手失败。这与您的问题类似。你真的必须要有创造力和精益,使它可靠地工作,这降低了你所做的任何东西的价值。所以,这可能不值得这么麻烦


另外,请尝试TLS1.1以了解它的功能。它可能不支持TLS 1.2。

如果有人遇到同样的问题,我的问题实际上是由于我的项目的其他部分内存使用率高造成的,我在应用层使用AES进行加密,没有它一切都很好

你确定这就是问题所在吗?我的意思是,这不像是,有好的握手,也有坏的握手。即使ESP内存看起来也一直很好。更新了pdf参考答案。每个版本都有相同的问题:)“下面的pdf第3.2节”-描述了在设备上运行TLS服务器的用例。创建新的自定义固件并打开调试“日志记录”(通过串行)。几乎可以肯定的是,您将从mbedTLS库中看到一个错误代码,然后可以查看它。感谢您的输入!我试过了,收到一条“握手失败”消息,错误代码为0x2700。。。我有点困惑,因为它不在文档中(或者至少我看不到它),您知道wrt密码套件在中记录的约束吗?您的证书是否使用了您首先需要在中配置的不受支持/禁用的密码套件?你查询过那个错误代码吗?