【问题标题】:How to embed AWS Just In Time Provisioning (JITP) into your microcontroller (running Freertos)如何将 AWS Just In Time Provisioning (JITP) 嵌入您的微控制器(运行 Freertos)
【发布时间】:2020-02-18 07:05:42
【问题描述】:

我正在尝试让一个应用程序在亚马逊 freertos 中运行,该应用程序使用即时配置机制来允许配置一组设备。

对于 Espressif ESP32 设备,我已经完成了 set up a demo application in freertos 的步骤。这很好用,但它涉及在您运行的脚本之一中有效地将您的凭据直接复制到源代码中。良好的概念证明,但对生产没有好处。

我已经在AWS后端单独运行了setting up JITP的过程。最后一步是从 bash 手动调用 mosquitto 以发送虚假消息,模仿来自设备的 MQTT 传输。

这具有正确配置设备的效果。

我的问题是如何使用这些构建块并构建多个硬件设备,并让它们全部预置并成功连接到 AWS IOT。

一些具体点: 1. 设备固件中有哪些文件?我承认在加密和证书方面缺乏专业知识。我的猜测是我需要把 root.cert; deviceVertAndCACert.crt; deviceCert.key 进入设备并完全按照假消息 ping MQTT 请求。但这对于多个设备有何不同?一种设备与另一种设备的区别是什么?

  1. 我假设硬件设备中的实际代码对于所有设备都是相同的。这个假设有效吗?

  2. 如果我成功预置了大量设备,如何处理 AWS IOT 中的传入数据流。我会设想调用一个规则来处理传入的消息。

蚊子假消息:

$ mosquitto_pub --cafile root.cert --cert deviceCertAndCACert.crt --key deviceCert.key -h <prefix>.iot.us-east-1.amazonaws.com -p 8883 -q 1 -t foo/bar -I anyclientID --tls-version tlsv1.2 -m "Hello" -d

【问题讨论】:

    标签: amazon-web-services aws-iot freertos


    【解决方案1】:
    1. 您是对的,您需要带有来自 JITP 的模板的 CA 证书、您的设备证书和您的私钥。 对于设备证书和私钥,这些对于每个设备应该是唯一的,并且应该放置在设备上一次(通过运行配置演示或通过直接写入预期的文件名 iot_pkcs11_pal.c 在制造时)

    对于 CA“JITP/JITR 证书”,您有 2 个选项 - 您可以修改 iot_pkcs11_pal.c 以获取此证书并存储它,或者如果所有设备之间的 JITR 证书相同,您可以离开代码中的#define keyJITR_DEVICE_CERTIFICATE_AUTHORITY_PEM。

    对于多台设备,要考虑的另一件事是事物名称 - 您可以使用设备证书的字段将您的“事物名称”传达给 AWS IoT,例如设备证书 CommonName 字段。 #define clientcredentialIOT_THING_NAME 可以替换为解析证书并将事物名称存储在其他库可以引用的位置的函数(即 getThingName())。每个设备的事物名称应该是唯一的 - 有些人使用设备唯一 ID 作为事物名称。

    当设备连接到使用 JITP 设置的 CA 时,由于每个设备证书都是唯一的,它可以为每个不同的设备创建不同的东西(并注册设备证书并附加策略)。

    1. 是的,这是有效的,因为您将设备证书和私钥放在制造时,并如上所述以编程方式检索您的事物名称。

    2. 一旦您的设备在 AWS IoT 中注册并能够连接和发送 MQTT 消息,您就可以使用 AWS IoT 规则来设置如何处理传入数据的规则(This tutorial 显示从 MQTT 添加数据向 DynamoDB 发送消息,触发 Lambda 函数以执行您编写的代码,或发送 SNS 消息)

    【讨论】:

      猜你喜欢
      • 2013-06-29
      • 1970-01-01
      • 1970-01-01
      • 2011-01-26
      • 1970-01-01
      • 1970-01-01
      • 2010-10-30
      • 1970-01-01
      • 2011-07-08
      相关资源
      最近更新 更多