Topic: certificate validation on an IoT device
Hi WolfSSL team,
typically IoT devices have limited memory and you can only store limited certificates in flash memory (unlike modern phones, Laptop, browsers, high-end linux devices, etc).
Currently when I see https://www.wolfssl.com/documentation/m … ter07.html and "Certificate Chain Verification" section it says a device just need to store "A" (root CA) and all intermediate certs are not required.
as of today, when server is sending A (root) > B (intermediate) > C(Intermediate) > D (Server Cert). When we load just A in the device, connection is successful and everything works ok. However, as some users may say A keeps changing and we should load B or C (intermediate) as it is more safer.
1. Is this implementation in accordance to RFC? what part of RFC does this comply to that we need to absolute load "A"?
2. What changes are needed in embeddedSSL if we just need to validate using B or C?
3. from a security perspective, I understand both are secure and loading A does not mean it is more secure, but isnt B or C more likely to be revoked rather than A?
5. if there are multiple flavors of B and C, wouldn't it be safer to just load A and let device validate B/C/D through chain validation?
5. do we know if all the SSL clients operate same way (openSSL, mbedTLS, etc)?