X.509 certificate hierarchy: offline root CA — factory intermediate CA — unique device certificate per unit
Symmetric keys shared across a device fleet mean one compromised device exposes all devices. X.509 certificates give every device a unique cryptographic identity — compromise one, affect one.
Root CA (self-signed, offline air-gapped hardware)
└── Manufacturing CA (online HSM, signs device certs)
└── Device Certificate (unique per serial number)
Key: ECC P-256 (smaller and faster than RSA-2048)
az iot dps enrollment-group create --dps-name fss-dps --enrollment-id fss-devices --certificate-path manufacturing-ca.crt --iot-hubs fss-production-hub.azure-devices.net
The security of your entire device fleet depends on the integrity of the factory provisioning process. The Manufacturing CA private key must never leave the HSM. The programming station that flashes device certificates must be on an isolated network segment with no internet access. Every certificate issuance must be logged with the device serial number, certificate thumbprint, and timestamp — this log is your audit trail for the entire device fleet’s security posture.
For high-volume manufacturing (1,000+ units per day), automated provisioning integrated into the functional test station is the practical approach: the test jig communicates with the HSM signing service over a secure internal API, generates a CSR from the ATECC608B secure element, receives the signed certificate, and writes it to device NVS — all in under 5 seconds per device. The device never holds an unprotected private key at any point in the process.
X.509 certificates can be revoked if a device is compromised, reported stolen, or decommissioned. Azure IoT Hub maintains a device registry where individual devices can be disabled — preventing connection even with a valid certificate. For fleet-level revocation (if a batch of devices from a specific factory run is suspected compromised), IoT Hub configuration can target devices by tag and disable them en masse.
Certificate revocation lists (CRLs) are the standard PKI mechanism for distributing revocation information, but they are impractical for IoT devices that may be offline for extended periods. The IoT Hub registry approach — check-on-connect rather than CRL distribution — is more robust for devices with intermittent connectivity.
If your Manufacturing CA is compromised — an unlikely but catastrophic event — you need a recovery plan. Your Root CA (air-gapped, offline) can issue a new Intermediate CA certificate and revoke the compromised one. Devices already in the field retain their valid device certificates, which were signed by the (now revoked) Intermediate CA. This requires IoT Hub to trust the new Intermediate CA and maintain a revocation record for the old one.
This scenario underscores the importance of a three-tier hierarchy rather than a two-tier (Root CA directly signing device certs): the Root CA’s isolation prevents a Manufacturing CA compromise from requiring device recalls. Design your PKI hierarchy with this threat model in mind from the beginning.
FSS is a full-stack IoT engineering team — hardware, firmware, cloud, and mobile in one place.
FSS Technology designs and builds IoT products from silicon to cloud — embedded firmware, custom hardware, and Azure backends.
Talk to our team →