This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3235MODSF:cc3235MODSF

Guru**** 2558250 points
Other Parts Discussed in Thread: CC3235MODSF, UNIFLASH, CC3235SF, SYSCONFIG, CC3220MOD, CC3220SF

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1060779/cc3235modsf-cc3235modsf

器件型号:CC3235MODSF
主题中讨论的其他器件: UNIFLASHCC3235SFSysConfigCC3220MODCC3220SF

编号:CS0795936
联系人:Rajat Ratra
名字:Rajat
姓:RATRA
简短描述:使用 AT 命令连接 AWS 服务器与 MQTT 时遇到问题
电话:912046307668
电子邮件:rajat.ratra@barcodeindia.com
公司:条码印度有限公司
公司电话:
语言:英语
状态:打开
提供案例详情或评论:

你(们)好  

我正在使用 TI WiFi 模块 cc3235MODSF。  我在这款 TI 芯片上有一些经验、并在没有安全证书、套接字等的情况下完成了协议 HTTP、MQTT 的工作 但由于某些硬件板限制、我使用的是 UART、而不是 SPI、因为它是我的定制板。 我将使用 AT Command。 请参阅 Image1以了解我使用的闪存映像文件。

现在、我尝试连接至 AWS 服务器、MQTT 出现错误-458 (如果禁用目录验证)或有时-456 (如果启用目录验证)。 请参考我随附在您参考资料中的两个日志文件。  

我已以.der 格式在根文件夹中编写 RootCA、证书、私钥文件。 我已使用打开的 SSL 命令提示符将.pem 文件转换为.der 格式。 请参阅 Image2、Image6、Image7、Image8。

我的闪存 MCU 映像已使用 文件属性中显示的虚拟根证书进行签名。 请参阅图像3。 但我也尝试过跳过目录验证。 请参阅我 尝试用真实证书目录替换的目录集合列表 Image4。请参阅 Image9、但当我尝试使用 Uniflash 工具对 Image 进行编程时、它会出现一些与证书相关的问题。 请参阅指南。

请参阅 Image5了解我正在使用的服务包。  

我已经尝试使用 AT Command 进行目录验证和不进行目录验证、但遇到了相同的问题。 请参阅日志文件、了解我用于 MQTTcreate 和 MQTTConnect 的 AT 命令。  

请指导我使用 MQTT 连接 AWS 服务器。 等待您的回复。 谢谢你。

         e2e.ti.com/.../Log-with-catalog-verification-skip.txte2e.ti.com/.../Log-with-catalog-verification.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    -456表示服务器根 CA 的格式或提供的路径有问题(-458与客户端的私钥相同)。

    至少查看命令和 uniflash 屏幕截图-看起来路径正确(如果您在 atcmd/atcmd_mqt.c:::ATCmdMqt_createCallback 中添加列印或设置断点、也可以验证 CC3235SF 是否正确接收到该路径(atcmd 库在下可用 source/ti/net/atcmd/)。

    要验证 DER 格式、您可以尝试在 Windows 中打开它(Windows 标识 DER 文件扩展名)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    请参阅此处所附的 Image10,并告诉我是否应该在此处添加一 个(红色标记表示)打印说明,以了解是否收到证书?  

    这是 if 语句、其中如果接收到证书为 NULL、则返回-1。 我是对的吗? 如果我的理解有误、请改正。 请参阅指南。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    请建议如何打印以验证是否正确接收到证书。 我需要进行调试、但我正在使用 UART 和 JTAG 进行调试、这是可行的吗? 尝试 Code Composer Studio 的调试模式时出现错误。 请参考 Image11和 Image12。  

    但我能够构建程序、并能够使用 Code Composer Studio 成功进行闪存编程。 请引导我了解有关正确步骤的问题。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    快速评论:

    要进行调试、需要在开发模式下由 Uniflash 或 SysConfig 映像创建器对器件进行编程。 如果器件未处于开发模式、JTAG 将锁定在安全原因之外、并且无法从 IDE 进行调试(在这种情况下、错误-1170非常常见)。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    最近器件编程为生产模式。 我应该通过 Uniflash 工具在开发模式下更改它吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    是的、要通过 JTAG 进行调试、您需要更改为开发模式。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jan、

    我没有上面的消息中提到的 JTAG、因此我通过 UART 执行此操作。 是否可以使用 UART 进行调试。 我使用 Launchxl 板将我的 cc3235modsf 与 Uniflash 或 Code Composer Studio 进行通信。 请提供指导  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    无法通过 UART 从 IDE 进行调试。

    但 CC3220 LaunchPad 具有板载 XDS110 JTAG。 您可以通过导线(TDI、TDO、TCK、TMS、GND)将 XDS110连接到电路板、您可以在 LaunchPad 本身进行调试。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jan、

    好的。 谢谢、我将尝试将我的模块 JTAG 引脚与 CC3220 LaunchPad 连接、并尝试进行调试。

    另一个疑问是、如果我使用 handle 获得 AT+MQTTCREAT 命令回复、那么我认为受保护的文件没有得到 NULL、否则它将返回-1错误。  同时、请指导我采取步骤通过 Uniflash 将 AWS 证书上载到根目录中。 我已经使用 Open SSL 将.pem 格式转换为.der 格式。 并写入根目录中、正如您在我的第一封邮件中上传的屏幕截图中看到的。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    另外、请告诉我、除 JTAG 调试方法外、是否还有其他程序可以解决 AWS 证书问题。 由于我的模块已经与另一个板焊接在一起,因此可能很难为 Launchpad JTAG 连接排列其 JTAG 引脚。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请等待 Kobi 的答复。 我不是指挥方面的专家、我没有足够的时间深入研究。 但我认为您对上述代码的理解是正确的。

    您可能更容易在电路板上使用 LaunchPad 而不是 CC3220MOD。 您可以将电路板上的 CC3220MOD 置于复位(或断开连接)状态、并通过 UART 在 MCU 和 LaunchPad 之间进行通信。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、我也会根据您的建议尝试。 与此同时,将等待 Kobi 先生的答复。  

    再次感谢。 我将尝试并很快提供反馈。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我有 cc3235modSF 模块、而不是 CC3220module。 但我将尝试使用我拥有的 cc3220的 Launchpad。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    在您的情况下、这是 CC3220SF 还是 CC3235SF 无关紧要。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的。 感谢您尝试使用 Launchpad。 很快就会更新

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jan、

    现在我能够使用 cc3220SF Launchpad 进行调试。 请告诉我我调试的方式和需要什么。 实际上我已经连接了 JTAG。 器件使用 Uniflash 通过 UART 在开发人员模式下使用 atCommand MCU 映像文件进行编程。 现在、通过 SDK 将该程序导入 Code Composer、然后再次检查调试和调试启动。 现在还连接了 UART 以提供 AT 命令。 我已将查找 image14的断点插入到您的引用中。 我希望当 AT+MQTT 被触发时、指针应该出现在回调函数 中并在断点处停止。 如果我错了、请更正。

    告诉我正确的调试方法。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请等待 Kobi 的评论、您在调试时确切需要做什么。 我不熟悉此 SDK 示例。

    根据上面的图像、您的断点似乎未处于活动状态。

    1月

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    除了 AT_commands 示例、SDK 还包含 atcmd 库(示例应用程序链接到该库)。

    请从导入库项目  /source/ti/net/atcmd/.

    然后调试(通过设置断点或添加打印消息) atcmd_mqt_createCallback()中的函数 ATCmdMqt_createCallback()

    我仍然认为问题在于 DER 文件的格式(路径看起来正确)。 您是否尝试使用 openssl 或 Windows 证书管理器来打开和验证它们?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    我有以下 AWS 的证书(仅限指定名称),这是我们随一个客户端 ID 生成的测试证书,它正在使用另一个 WiFi 芯片(我的意思是使用不同的 WiFi 制造商芯片)进行测试

    证书:632ce9d7fc-certification.pem.crt
    私钥:632ce9d7fc-private.pem.key
    公钥:632ce9d7fc-public.pem.key
    RootCA:AmazonRootCA1.pem

    但对于 TI cc32xx、建议将其从.pem 格式转换为.der 格式。 因此、使用开放式 SSL 和使用方式
    以下命令我已将其转换为.der 格式。 打开 SSL 命令如下所示、

    OpenSSL x509 -in 632ce9d7fc-certification.pem.crt -out cert.der -outform der
    OpenSSL RSA -in 632ce9d7fc-private.pem.key -out private.der -outform DER
    OpenSSL x509 - In AmazonRootCA1.pem - out ca.der -outform der

    以上命令是否正确? 如果我错了、请更正并提出建议。

    请参阅 Image15和 Image16了解我用于导入  atcmd_MQTT.c 的路径 是否正确?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您可以导入 atcmd lib 项目、以便轻松更新代码。

    用于转换证书的命令似乎正常、但请验证产品是否符合预期。

    确保您使用的是最新的 Service Pack。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    目前我使用的 Service Pack 版本如 Image17中所示。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我目前正在使用 cc3220 Launchpad 进行测试、成功测试后、我 将在我的定制硬件中以相同的方式进行更新、其中我使用的是 cc3235modsf、但使用的是通过 UART 的 AT 命令。 因此、对于 cc3220sf、我使用的   是"sp_3.20.0.1_2.7.0.0_2.2.0.7.bin"服务包。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SP 还可以(最好使用最新的 SP3.21,但它可能不会影响此问题)。

    同样、您可以调试 atcmd 并验证是否按预期获得了证书路径。

    如果证书存储在闪存中且路径正确-此命令应该起作用。

    我将尝试在我的设置上测试此 API、但今天可能不会。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    感谢此更新,我将读取存储在根目录中的证书文件,并检查文件包含以验证证书。 很快就会更新。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的。 谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    您可能是对的、我的私钥有一些问题。 当我将其转换为.der 格式、然后尝试通过 AT 命令读取时、它的内容介于我从响应中获得的开始行和结束行之间、与原始"private.pem .key" 文件不同、但当我在获取内容时尝试读取 rootCA.der 和 cert.der 与 RootCA.pem 和 cert.pem 文件完全相同。  我在这里分享我的 AT Command 响应。  


    AT+FileOpen = rootCA.der,READ,3656

    +FileOpen:2069063181、0

    好的

    AT+FileRead = 2069063181、1、837

    1、1116、MIDQTCCAimgAwIBAegAwIBAgitBmyfz5m/jAo54vB4ikPmljZbyjANBgqhkiG9w0BAQsFADA5MQGDVQGEWJVQAMB0AMB1AMUEWQWQWQWQAMBQAMBQ1UEAMUEWQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQBQB

    好的


    AT+FileOpen =cert.der,READ,3656

    +FileOpen:1260594698、0

    好的

    AT+FileRead = 1260594698、0、1、861

    1、1148、MIIDWTCCAkGAwIBAgIUVXjhqKsItCCDr1Yf969/FU/TsHMwDQYKoZIhvcNAQELBQAwTTFLMEKGA1UECWxCQW1YHEMUXCLYUCCXZXUCCW1UCCWQWQBQ1UCCWQWQWQBQ1UCCWQWQWQWQWQB0UCC1无刷直流1无刷直流电源1相无刷直流电源1相无刷直流电源1相无刷直流2相无刷直流1相无刷直流电机1相无刷直流电机1相无刷直流电机1相无刷直流1相无刷直流电机1相无刷直流1相无刷直流电机1相无刷直流1相无刷直流电机1相无刷直流1相无刷直流电机1相无刷直流电机1相无刷直流1相无刷直流1相无刷直流1相无刷直流

    好的


    AT+FileOpen =private.der,READ,3656

    +FileOpen:1834209035、0

    好的

    AT+FileRead = 1834209035、0、1、1218

    1、1624、MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKAGESKEAOIBAQDr9R97mzw48OP1YPatEKxOctAyyXc+WA6hdk5zk/oeDJJBQ1NQ1NQ1WQ1NQ1NQ1NQ1NQ1NQ1NQ1NQBQ1NQ1NQEQ0BQBQ1NQBQ1NQBQ0N

    好的

    我的原始测试 private.pem.key 文件内容如下

    ---- 开始 RSA 私钥---
    MIIEpAIBAAKCAQEA6/Ufe5s8OPDj9WKD2rRCSTnLQMsl3PlgOH+ng5Ocp0x3P6Hjn
    AyY9nP56XW3HCErrxCw52/jtogPFnpUKbtdtRK5bW6BW5va+YCYLiui42cBBfbS
    QyyjdQT5FZhjci99T7Xl9c8HiwenkKG1GWdw1AFjUFO/lAkEEORLAXdEVXMxIh
    XLHx5358vpw9Jamg8XGb2PTSziWJiARvARRwZ3pj6FGZ2DrnhEh4D6M0kfLBTW
    Jx3IIO6hrxoMKZMN8GOBEvUJPS2hJHGC44oqGZb2U2Xel9Nzz03yM1OXcIgAMzLD
    QVoQooq3PzMa25L3K2KTE9Hghn0zIFQoobdIAj0wQIDAQABAoIBAQ+TRvHOwdIG5.
    5RJiers9wsCP1 ReJrrdSmDBGWWN8OheTAoYHvUFaw5izaXUdAsOwnBwamId+Nv34q
    W0u1vJ9/AnL6hz1dHP4mbEhQNHFS5ig1HzPDsvH4TSJ3AEh0N0jhmNq2vRpgTvQ
    D+c2Nh5e/5L6scl74jazx0q2LqR08gjJVkGNaG5zHGKEeUVq/nPVnh918T0HMKXi
    ETA7oSp9tK/yE3Nl0hzICW+LokOA+1sA2rw6RqJ7TLRHWE5jwGpL51ARa1IezqVA
    IhIr4o3aLrqIfE8LIyre6vz1HJyXXM4ZXG1KUX5nnSAnyjwIAl8T1BNgf7l3bZFT
    tpyGV1dhAoGBAPluwSGCHXilnudJik1cSz2sA1WoWW0ij43x8670Po9X4xu581g
    vMz6FCi1MhMWXf9rq6Er79hmy0+R0e5kj7cSy7zOvR83siloU+SdnzOZ/6w/mI23
    nvEzT18J6WGSHvpa5Wt9ChEz5igrwlXunK/DTdhz4UtmxfTt+yVkOi7AoGBAPI
    IT+FcZU3IHUZfjmKMVS4sWflQLJ0Zs51SIKbHp9blqYn1biifvV5JSaZ47Vh/T
    /THvRTNA3UZ/6F/OKb8wlKXO1oa96cyEyeATNtIXnHVmam+4jnN87gzJliQaf+85
    xtv5mIWtxWS1MseOzWON0ieeBNKSLpYDgCz7NA6zAoGBAJbO5+YijT8MO+6jAAOV
    8cfv4HMBd8POTGchwqSz2b3yrXpy86OxAXXNHnMfGo9/zVHZBU+Q11LiVEqkQrZ
    siq2KoiVVrMxMX7nnRF0W3UPfw3dxZaplmeu5iZID9r2RdSIcH10tEmCX32aN31N
    L171bnOYNx2mXUcisulP5LVRAoGAE+UP250S37dPq08U15VKyDMEIADZTA7U0VnG8
    Kz6jHWRg0/Wh0S6TMwSupQ6wLpehU6wOuPN3M+a4RvprFLPTKinLjHOZnCgt9OTT
    zlzFvCzEZcCSLdFzonk49UP6WazzpauRcrDmntTPyp44Nby9ktgr06VfsAziVuCi
    vw9ED5ECgYADtdCrwqFxV0CtGhyzBViRsMLxEVYbtKyGc1surxfs+g6GUTLNDP
    taRtDWxg4JdnJCAjDi0DBxVZxyqLwxL8nmPd7c7iQmF761mCw+WTVQNqTzn4mNF
    dprRiw5EwMckVVJuPtnPMKcd/+t5evFHu2GyJstBVAaHfSnw/CXeQ=
    ---- 结束 RSA 私钥---

    我的转换是不是我做错的? 我之前已经共享了我用于通过 打开 SSL 将.pem 文件转换为.der 格式的命令。

    请指导解决我的问题。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我不确定差异的来源是什么。 在将 DER 私钥文件安装到文件系统之前、请在 PC 上验证该文件(通过将其转换回 PEM)。

    您是否尝试在文件系统中使用原始 PEM 文件?

    您得到的错误代码是什么?

    您是否成功调试了 ATCMD 库? 同样、如果文件系统中存在正确的 DER 文件、并且路径 正常-这必须起作用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    我对原始证书文件格式有疑问。 如前所述、我有4个原始证书文件名、如下所 示

    RootCA.pem (为.pem 格式)

    private.pem.key (是.key 格式)

    public.pem.key  (是.key 格式)

    cert.pem.crt   (.crt 格式)

    我应该先更改.pem 中的私有文件和证书文件、然后以.der 格式进行转换吗? 我不需要公共文件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我尝试使用原始文件格式、遇到以下错误、请参阅下面的日志

    AT+MqttCreate = SK-2G-90E2028C8930、URL|sec|skip_cert_verify、a1or5260roxeti-ats.iot.ap-south-1.amazonaws.com,8883,TLSV1_2,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,private.pem.key,cert.pem.crt,rootca.pem,,v3_1_1,0,0

    +mqttcreate:0

    好的

    AT+MqttConnect = 0

    +eventsock:async_event、1、wrong_root_ca、17

    错误:进程命令,-688

    +eventmqtt:断开连接、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    我已尝试在 PC 上验证 DER 私钥文件(通过将其转换回 PEM)、但获取的内容与原始 private.pem 文件不同

    原始 private.pem 文件

    ---- 开始 RSA 私钥---
    MIIEpAIBAAKCAQEA6/Ufe5s8OPDj9WKD2rRCSTnLQMsl3PlgOH+ng5Ocp0x3P6Hjn
    AyY9nP56XW3HCErrxCw52/jtogPFnpUKbtdtRK5bW6BW5va+YCYLiui42cBBfbS
    QyyjdQT5FZhjci99T7Xl9c8HiwenkKG1GWdw1AFjUFO/lAkEEORLAXdEVXMxIh
    XLHx5358vpw9Jamg8XGb2PTSziWJiARvARRwZ3pj6FGZ2DrnhEh4D6M0kfLBTW
    Jx3IIO6hrxoMKZMN8GOBEvUJPS2hJHGC44oqGZb2U2Xel9Nzz03yM1OXcIgAMzLD
    QVoQooq3PzMa25L3K2KTE9Hghn0zIFQoobdIAj0wQIDAQABAoIBAQ+TRvHOwdIG5.
    5RJiers9wsCP1 ReJrrdSmDBGWWN8OheTAoYHvUFaw5izaXUdAsOwnBwamId+Nv34q
    W0u1vJ9/AnL6hz1dHP4mbEhQNHFS5ig1HzPDsvH4TSJ3AEh0N0jhmNq2vRpgTvQ
    D+c2Nh5e/5L6scl74jazx0q2LqR08gjJVkGNaG5zHGKEeUVq/nPVnh918T0HMKXi
    ETA7oSp9tK/yE3Nl0hzICW+LokOA+1sA2rw6RqJ7TLRHWE5jwGpL51ARa1IezqVA
    IhIr4o3aLrqIfE8LIyre6vz1HJyXXM4ZXG1KUX5nnSAnyjwIAl8T1BNgf7l3bZFT
    tpyGV1dhAoGBAPluwSGCHXilnudJik1cSz2sA1WoWW0ij43x8670Po9X4xu581g
    vMz6FCi1MhMWXf9rq6Er79hmy0+R0e5kj7cSy7zOvR83siloU+SdnzOZ/6w/mI23
    nvEzT18J6WGSHvpa5Wt9ChEz5igrwlXunK/DTdhz4UtmxfTt+yVkOi7AoGBAPI
    IT+FcZU3IHUZfjmKMVS4sWflQLJ0Zs51SIKbHp9blqYn1biifvV5JSaZ47Vh/T
    /THvRTNA3UZ/6F/OKb8wlKXO1oa96cyEyeATNtIXnHVmam+4jnN87gzJliQaf+85
    xtv5mIWtxWS1MseOzWON0ieeBNKSLpYDgCz7NA6zAoGBAJbO5+YijT8MO+6jAAOV
    8cfv4HMBd8POTGchwqSz2b3yrXpy86OxAXXNHnMfGo9/zVHZBU+Q11LiVEqkQrZ
    siq2KoiVVrMxMX7nnRF0W3UPfw3dxZaplmeu5iZID9r2RdSIcH10tEmCX32aN31N
    L171bnOYNx2mXUcisulP5LVRAoGAE+UP250S37dPq08U15VKyDMEIADZTA7U0VnG8
    Kz6jHWRg0/Wh0S6TMwSupQ6wLpehU6wOuPN3M+a4RvprFLPTKinLjHOZnCgt9OTT
    zlzFvCzEZcCSLdFzonk49UP6WazzpauRcrDmntTPyp44Nby9ktgr06VfsAziVuCi
    vw9ED5ECgYADtdCrwqFxV0CtGhyzBViRsMLxEVYbtKyGc1surxfs+g6GUTLNDP
    taRtDWxg4JdnJCAjDi0DBxVZxyqLwxL8nmPd7c7iQmF761mCw+WTVQNqTzn4mNF
    dprRiw5EwMckVVJuPtnPMKcd/+t5evFHu2GyJstBVAaHfSnw/CXeQ=
    ---- 结束 RSA 私钥---

    将.der 转换为.pem 文件后

    ---- 开始 RSA 私钥---
    MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAAoIBAQDr9R97mzw48OP1
    YoPatEKxOctAyyXc+WA6H6eDk5zTHc/oeOocDJj2c/npdbccISuvGILDnb+O2iA8U
    2lQpu121ErltboFbm9r5gJguK6LjZwEF9tJBDLKN1BPkVmGNyL31PtX1zweLB6e
    QobUZZ3DUAWNQU7+UCQQ5EsBd0RW9czEiFcsfHnfnfny+nD0lqaDxcZvY9NLOJYmI
    BG8BFHBnempoUZnYOs2ESHgPozSR+p8sFNYnHcgg7qGvGgwpkw3wY4ES9Qk9LaEk
    cYLjiioZlvZTZd6X03PPTfIzU5dwiAAzMsNBWjdCg/MxrbkvcrYpMT0eCGfTMgVC
    gF0gCPTBAGMBAAECggEBAL5NG+8c7B0mugglazEMK5L3CwI/VF4KY1KYMEZZU3w6F
    5MChge9QUDDmLNPDR0Cw7CcHBqYh342/fipbS7W8n38CcvqHPV0c/iZsSFA0cVLm
    KDUfM8Oy8e7hNIncASHQ3SOGY2ra9GmBO9B35zY2Hl7/kvqxyXviNrPHSryupHTy
    CMlWQY1obnMcYoR5RWr+c9WEH3XPQcwpeIRMDuhKn20r/ITc2XSHMgJb4uiQ4D7
    WwDavDpGontMuuFZ7mPAakvnUBFrUH7OpUAivijdouoh8TwsjKt7q/cnPUJdc
    zhlcbUq5fmedICfKPgCXxPUE2B/uXdlt9O2nIZXV2ECgYEA+W7BIYdeKWE50mK
    TVxLPawDU5ahZbSKPjfHzrvQ+j1fjG7nzWC8zPoUKLUyExZd/2uroSvv2GbLTHR
    7mSPtxLLvM69HzeyKWhT5J2fM5n/Rd+Yjbee8TNTXwnpYZIe+lrla30KETPmKCvC
    Ve6cr8NN2HOjhS2bF9O37JWQ6LsCgYEA8iK34VxlTcgdRl+OYoxVLixZ+VAsnRm
    znVIgpsen1uWpifVuIGKJ+9XklJpnjtWH9P9Me9FM0DdRn/oX84pvzCUpc7Whr3p
    zITJ4BM20heck WZqb7iOcp3zuDMmWJBp/7znG2/mYha3FZLUyx47NY43SJ54E0pIu
    lgOALPs0DrMCgYEAls7n5iKNPwyj7qMAA5Xxx+/gcwF3w85MZyHCPLPZvfKtenLz
    o7EBdc0dsx8aj3/OhufMFT5DXuJUSqRCtmyKryqiJVszExpuedEXRbdQ9/Dd3F
    lqmWZ67mJkgP2vZF1IhwfXS0SYJffZ3fU0vXvuc5g3HaZdRyKy6U/ktVECgYAT
    5q/bnRlft0+rTxTXlUrIMwQgDO1r7RWcbwrPqMdZGDT9aHRLpMzBK6lDrAul6FT
    rA6483cz5rhG+msUs9MqKcuMc5mcKC3051POXMW8LMRlwKwt0XOieTj1Q/pZrPOl
    Q5FysOae1M/Knjg1vL2S2CvTpV+wDOJW4KK/D0QPkQKBgAO10KvCoXFXQK0aHJM
    FWJGwwverVhu0rIZzWy6vF+z6C3oZRMs10+1pG0NbGDgl2ckICMOLQMHFVnHKqov
    DEvyeY93tzuJCYXvrWYLD5ZNVA2pPOfiY0V2mtGJbkTAxyRVUmO4+2c8wpx3/63L
    68Ue7YbImy0FUBod9KfD8Jd5
    ---- 结束 RSA 私钥---

    请提供指导

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我正在关注此链接  

    https://gist.github.com/amolkhanorkar/10375087

    在这里、我阅读了如下注释、

    您的密钥可能已经是 PEM 格式,但只是以.crt 或.key 命名。
    如果它们从---开始 开始、您可以在文本编辑器中读取它们(它们使用 base64、可读为 ASCII 格式、而不是二进制格式)、它们采用 PEM 格式。
    如果文件是二进制文件,则可以使用 server.crt
    OpenSSL x509 -INFORM -outform PEM -in server.crt -out server.crt.pem
    对于 server.key,请使用 openssl rsa 代替 openssl x509。

    因此、我的所有文件 RootCA.pem 、cert.crt 和 private.key 均可在 notepad++中读取(base64)。 因此、我认为无需将其转换为.pem 格式、因为它已经是.pem 格式。 因此,只有这样,我才需要将其转换为我已经通过 openssl 命令执行的.der 格式。

    OpenSSL x509 -in 632ce9d7fc-certification.pem.crt -out cert.der -outform der
    OpenSSL RSA -in 632ce9d7fc-private.pem.key -out private.der -outform DER
    OpenSSL x509 - In AmazonRootCA1.pem - out ca.der -outform der

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    实际上、我只想共享一个日志屏幕截图、其中我已触发 AT+FileGetFileList 命令响应、如 Image20中所示。 请参阅此映像20。 在这里、您可以看到我的所有证书文件都以.der 格式安装在根目录中。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我想您在原始文件方面取得了一些进展。  

    我仍然不确定 转换后的文件有什么问题、但您可能不需要它。

    错误-688的套接字事件意味着您使用的服务器根 CA 错误。 请参阅 https://www.ti.com/lit/pdf/swpu332的第2.5.1章 了解如何查找所需的根 CA、您可以在 AT_Commands 示例中或在主机中执行类似操作时实现此代码。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    我在使用原始.pem 文件时遇到了错误-688的套接字事件、您建议使用原始证书文件格式进行测试。 但是,根据证书处理文档,当我使用证书的.der 格式(使用 OpenSSL 将.pem 转换为.der)时,我会收到错误-458 (错误的私有文件)。

    正如我之前提到的,我已经通过 AT Commands 验证了使用读取文件,您也可以在我之前发送的屏幕截图中看到,我看到所有文件都是.der 格式并保存在根目录中。 我还使用 AT 命令读取了所有文件、我看到我读取的所有文件内容都与原始文件内容相同、private.der 文件除外。 因此我认为 private.der 文件可能存在转换问题、但如果我的开放式 SSL 命令正确、那么转换会出现什么问题、我就不会遇到确切的问题。 请提供指导。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您可以使用 PEM 文件。

    我不知道私钥文件有什么问题。 您现在可以使用原始的 Pem 格式。

    编写文件时是否使用 base64?

    无论如何,您当前的问题与根证书不符(请参阅我之前的答复)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    是的、我 在编写.pem 格式的文件时使用 base64。 但是、当我在写入文件时使用.der 格式时、它是加密 格式。 我尝试过的两个选项。 如果我可以直接使用.pem 文件来编写文件、这对我来说是个好消息。 您是说我可以 直接在根目录中写入三个文件 RootCA.pem、serverCert.pem 和 privatekey.pem?  

    另一件事是、相同的 RootCA、Cert 和.pem 格式的私有文件、我已经使用另一个 WiFi 芯片(2.4GHz)进行了多次测试 、测试正常。 如果我将 base64直接写入根目录中、这是任何相关的。 请建议。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我不知道问题是什么。

    我只能帮助您进行调试。

    如果您得到-688事件、则根 CA 错误。 如果添加我之前提到过的调试代码(请参阅 https://www.ti.com/lit/pdf/swpu332的第2.5.1章 以了解如何找到所需的根 CA) -您 将能够找到预期的根 CA。  

    您能否提供监听器(Wireshark)日志? NWP 日志(请参阅 https://www.ti.com/lit/pdf/swru455中的第20.1章)也很有用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    我将了解如何获取监听器日志。 很快就会回复您。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否尝试找到所需的根 CA (通过套接字事件中的信息)?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    是的、我已经完成 了证书处理的第2.5.1章。 让我再次从我的云团队确认。 我将在明天之前回复您、我也会在我的云团队确认后回复您。 希望能取得一些积极的进展。 再次感谢您的大力支持。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您遵循通道2.5.1 -您发现了什么? "pSock->SocketAppoed.Sock.Data.pExtraInfo"的内容是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Kobi、

    非常感谢您的宝贵支持。 最终 解决了 AWS 安全连接问题。 请参阅以下日志

    AT+MqttCreate = SK-2G-90E2028C8930、URL|sec|skip_cert_verify、a1or5260roxeti-ats.iot.ap-south-1.amazonaws.com,8883,TLSV1_2,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,private.pem.key,cert.pem.crt,rootca.pem,,v3_1_1,0,0
    +mqttcreate:0
    好的


    AT+MqttConnect = 0
    +eventmqtt:操作、确认、0
    好的

    您说得对、我用于其他 WiFi 芯片的服务器根 CA 证书 是 RSA 2048位密钥: Amazon 根 CA 1。  

    但这不适用于 cc32xx WiFi 芯片。 现在我使用 ECC 256位密钥: Amazon Root CA 3

    现在、它可以很好地处理原始.pem 格式。

    所有三个 RootCA、私有证书和服务器证书 现在都使用.pem 格式。  

    非常感谢您的所有支持。 如果遇到任何问题、我会再次联系。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好极了。  

    该设备支持2048位 RSA、因此我猜不同的根与您要访问的本地服务器相关。

    不管怎样,您可以安装几个潜在的根,如果其中一个根出现故障,您可以(使用套接字事件中的信息)尝试使用不同的根进行连接。

    BR、

    Kobi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    再次感谢您的全力支持。 如果我在处理该问题时有任何其他问题、我会再次与您联系。