Вопрос о сертификатах X.509 и MXChip IoT DevKit

Я следую примеру подготовки устройства для MXChip IoT DevKit в Azure MXChip IoT DevKit DPS и задать вопрос о сертификатах X.509.

Когда я следую образцу, все работает правильно. Однако, когда я меняю код на устройстве и загружаю измененный код, я получаю следующую ошибку:

{"errorCode":401002,"trackingId":"3f308efd-9274-4a7a-8994-56781ce87942","message":"Invalid certificate.","timestampUtc":"2020-06-18T00:29:58.411225Z"}

После дальнейшего изучения выяснилось, что мне приходится создавать новый сертификат X.509 каждый раз, когда я меняю код. Это правильное поведение? Кажется, я не могу найти никакого объяснения этому и надеялся, что кто-нибудь может дать мне информацию о причине ошибки. Я предполагаю, что он выполняет проверки CRC (или аналогичные) между кодом и сертификатом, чтобы подтвердить, что код не был подделан.

Может ли кто-нибудь проверить это? Спасибо.


person TheTurkishDeveloper    schedule 18.06.2020    source источник
comment
Да, я тоже могу воспроизвести эту проблему, концепция повторной подготовки устройства говорит нам обновлять сертификат каждый раз, когда устройство пытается подключиться к IoTHub через DPS, учитывая безопасность, администратор должен генерировать новый сертификат x509 с каждым кодом. изменить на тот же идентификатор устройства. См. раздел повторной инициализации устройств и Концепции повторной подготовки устройств Центра Интернета вещей& Gitter, дайте мне знать, что вы думаете по этому поводу.   -  person SatishBoddu-MSFT    schedule 19.06.2020


Ответы (1)


Это ответ с форума Microsoft/azure-iot-developer-kit Gitter. .

Да, сертификат, который MXChip представляет в DPS/IoT Hub, фактически является подписью фактического двоичного файла, используя уникальный секрет устройства в качестве ключа для подписи. Таким образом, каждый раз при изменении двоичного кода вам потребуется повторно запускать инструмент командной строки, который может имитировать сертификат, который MXChip будет автоматически генерировать на лету, и настраивать этот сертификат в вашей регистрации DPS.

person SatishBoddu-MSFT    schedule 23.06.2020