首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nodeMCU TLS证书错误

nodeMCU TLS证书错误
EN

Stack Overflow用户
提问于 2018-07-16 08:12:47
回答 2查看 849关注 0票数 1

我正在构建真实的简单的IoT项目,我被困在nodeMCU的TLS问题上。我的Raspberry pi上有MQTT broker,所有证书都被正确插入(在同一个raspberry上的Paho客户端或远程PC上的Mqtt.fx客户端都可以正常工作),但是当我试图从ESP8266与nodeMCU连接时,我得到的是SSL握手错误(是的,我对所有提到的客户端都使用相同的证书文件)。我的ESP8266代码如下所示:

代码语言:javascript
复制
    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:(mqtt.CONN_FAIL_SERVER_NOT_FOUND)获得了错误代码-5,但是当我使用Wireshark分析数据包时,TLS握手如下所示:

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

在ESPlorer控制台中也有这样一行:E:M 544,我不知道这意味着什么。

EN

回答 2

Stack Overflow用户

发布于 2018-07-30 13:57:33

如果有人做了同样的事情,我的问题实际上是由于我的项目的其他部分内存使用率过高造成的,我在应用层上使用AES加密,没有它,一切都工作得很好。

票数 1
EN

Stack Overflow用户

发布于 2018-07-16 10:28:25

ESP8266太慢,无法可靠地使用证书。您应该升级到ESP32或对它提供更多支持的东西。

请参阅下面的第3.2节,引用ESP8266的SSL握手失败。这看起来和你的问题很相似。你必须要有创造性和精益,才能使它可靠地工作,这就降低了你所做的一切的价值。所以,这可能不值得这么麻烦。

en.pdf

另外,尝试TLS 1.1看看它能做什么。它可能不支持TLS 1.2。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51357327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档