Я занимаюсь разработкой устройства IoT с ограниченным объемом памяти и хотел бы подключить его к Google IoT Core через MQTT.Список необходимых корневых сертификатов, которым необходимо доверять, чтобы обеспечить проверку сертификата TLS на сервере, очень длинный.Я ищу меньший список, который подходит для IoT-устройств с ограниченными ресурсами, но не перестанет работать.Есть ли способ безопасно сократить этот список необходимых сертификатов?
Из онлайн-документации (https://cloud.google.com/iot/docs/concepts/device-security) в разделе «Рекомендации по безопасности устройства» указано:
'Использовать TLS 1.2, когдасвяжитесь с mqtt.googleapis.com:8883 (или: 443) и убедитесь, что сертификат сервера действителен с использованием корневых центров сертификации. Прочтите эту заметку по безопасности для подробных требований TLS и будущей совместимости. '
Из безопасностипримечание (https://security.googleblog.com/2015/09/disabling-sslv3-and-rc4.html) в нем говорится:
'По крайней мере, сертификаты в https://pki.google.com/roots.pem должны быть доверенными.'
Я ясно вижу, что в документации указано полноесписок необходим, но это не представляется приемлемым для устройств IoT с ограниченным объемом памяти. В качестве примера AWS требует только один сертификат - в зависимости от выбранного шифра TLS. См. документацию AWS в разделе Аутентификация сервера (https://docs.aws.amazon.com/iot/latest/developerguide/managing-device-certs.html)
Любая помощь в понимании того, как можно сократить список корневых сертификатов, например, на основе исключения.n Проверка на основе ECC против проверки на основе RSA - было бы полезно.