IoT & Embedded Device PQC
PQC for constrained devices — algorithm fit by device class, firmware signing, constrained handshakes, certificate size, fleet keys and LPWAN airtime.
Why this matters: A device shipped today may still be in the field when a quantum computer can forge its update signatures. Whether it can verify a PQC signature, fit a PQC handshake in its radio frames and rotate keys across a fleet is decided now, in hardware and protocol choices that cannot be patched in later.
Start here: Pick a device class and a job — verify, sign or key establishment — in the Algorithm Explorer to see which PQC algorithms fit, with the benchmark behind each number.
For your role
- Developer / Engineer
- Compare PQC algorithm RAM and cycle costs against device classes, sign and verify a firmware image with real ML-DSA and LMS signatures, and measure DTLS 1.3 and EDHOC handshakes with PQC on constrained links.
- Security Architect
- Certificate chain size and device identity, fleet key rotation and LPWAN airtime are the design constraints; the device-class comparison says which algorithms fit in memory for verifying versus signing.
- Researcher / Academic
- The constrained-device benchmarks, the handshake comparison and the LPWAN airtime model quantify what each algorithm costs a battery-powered device, with the source of every figure.
- IT Ops / DevOps
- Rotate keys across a device fleet, plan firmware signing for devices that cannot be patched easily later, and map the EU Cyber Resilience Act, EN 18031, US Cyber Trust Mark and UK PSTI duties.
Why IoT is different: device classes
A constrained device cannot borrow more memory for a bigger signature, often cannot be reached for an update, and may stay in service for 10–20 years. Devices shipped now will still be verifying firmware and opening sessions when a cryptographically relevant quantum computer may exist — so the choice of algorithm, protocol and hardware is made today and lived with for a decade.
| Class | Data (RAM) | Code (flash) | Example | Defined in |
|---|---|---|---|---|
| Class 0 | ≪ 10 KiB | ≪ 100 KiB | ATtiny-class sensor tags | RFC 7228 |
| Class 1 | ~ 10 KiB | ~ 100 KiB | STM32F103CB-class sensors, meters | RFC 7228 |
| Class 2 | ~ 50 KiB | ~ 250 KiB | STM32F103RC-class gateways, controllers | RFC 7228 |
| Class 3 | ~ 100 KiB | ~ 500–1000 KiB | STM32F103RG-class devices | draft-ietf-iotops-7228bis |
| Class 4 | ~ 300–1000 KiB | ~ 1000–2000 KiB | STM32F745/767-class devices | draft-ietf-iotops-7228bis |
RFC 7228 defines Classes 0–2 only. Classes 3 and 4 come from draft-ietf-iotops-7228bis, which also classifies link-layer frame sizes: an IEEE 802.15.4 frame is 127 bytes, with about 80 bytes left for payload once link security is on.
Class 1 is ~10 KiB of RAM for everything — application, network stack and crypto. A PQC key exchange on such a device must hold its key pair and the peer's ciphertext while it runs (ML-KEM-768: 1,184 + 2,400 + 1,088 bytes) on top of the algorithm's own stack.
One ML-KEM-768 ciphertext is 1,088 bytes: about 14 IEEE 802.15.4 frames, or 0.33 s of NB-IoT Cat-NB1 downlink at its ~26 kbit/s peak (model estimate).
Many devices update rarely, through gateways, or never. Crypto-agility — room in flash and RAM, an update path, and protocols that negotiate algorithms — has to be designed in before shipment.
Every extra byte on air and every extra million cycles costs battery. That favours session resumption over repeated full handshakes, and verifying on the device while signing elsewhere.
AES and SHA-2 stay; a quantum computer weakens them only modestly. For devices too small for AES-GCM, NIST standardised the lightweight family in SP 800-232 (final, August 2025). PQC replaces the public-key parts: key establishment and signatures.
Industrial IoT sensors and gateways often sit at the bottom of a plant network but send their data to the cloud. In NIST’s reference architecture, communication from the IIoT platform tier is routed through the industrial DMZ border firewall (level 3.5 of the plant network; NIST SP 800-82r3 §5.4.2). A device that connects straight to the cloud skips that boundary. How this fits into the three paths attackers use to reach OT is covered in OT attack surface: three paths in.
Industrial control systems (SCADA, PLCs, zones and conduits) are covered in OT & Industrial Control Systems PQC; vehicle networks and V2X in Automotive PQC; boot chains in Secure Boot PQC.
Algorithm selection: verify vs sign
Most devices verify far more than they sign: they check firmware and server certificates, while signing happens on a build server or HSM. The two operations have very different costs, so "does FN-DSA fit on a sensor?" has two answers.
| Algorithm | Verify / decaps | Sign / keygen | Build · source |
|---|---|---|---|
| ML-KEM-768 | 2,844 B | 2,820 B | stack (m4fstack) · Cortex-M4, pqm4 @90bfb63 (2025-05-22) |
| ML-KEM-768 | 6,452 B | 5,396 B | speed (m4fspeed) · Cortex-M4, pqm4 @90bfb63 (2025-05-22) |
| ML-DSA-44 | 2,712 B | 5,080 B | stack (m4fstack) · Cortex-M4, pqm4 @90bfb63 (2025-05-22) |
| ML-DSA-44 | 8,912 B | 44,816 B | speed (m4f) · Cortex-M4, pqm4 @90bfb63 (2025-05-22) |
| FN-DSA-512 (Falcon-512) | 2,976 B | 41,952 B | only build (fndsa_provisional-512 m4f) · Cortex-M4, pqm4 @90bfb63 (2025-05-22) |
| LMS (H10/W4) | 1,044 B | 2,460 B | reference (cisco/hash-sigs reference, SHA-256) · Cortex-M4, Campos et al., IACR ePrint 2020/470 |
| ECDSA P-256 | 2,048 B | 2,048 B | assembly (P256-Cortex-M4) · Cortex-M4, Emill/P256-Cortex-M4 README (nRF52840, 2021) |
- is small when built for stack: ML-KEM-768 decapsulation needs 2,844 B of stack in pqm4's m4fstack build versus 6,452 B in m4fspeed. Counting its keys and ciphertext, the stack build fits a Class 1 budget; the speed build does not (model, step 1).
- verification needs 2,712 B (stack build) and signing 5,080 B; the speed build verifies in fewer cycles but needs 8,912 B.
- verifies with 2,976 B — but signing needs 41,952 B of stack and the full scheme is 103,789 B of code. Verify on the device; sign elsewhere. FIPS 206 is not yet published; sizes here follow the Falcon v1.2 specification (666 B in its padded, fixed-length format).
- verification is hashing only (1,044 B of stack in the reference implementation measured by Campos et al.), with a 60-byte public key.
- needs 72,408 B of stack to decapsulate and 9,616-byte keys — out of reach below Class 4.
Under the module's fit model (benchmark stack plus buffers, step 1), a Class 1 device using stack-optimised builds can verify with ECDSA P-256, LMS (H10/W4), FN-DSA-512 (Falcon-512), XMSS (SHA2_10_256), ML-DSA-44, ML-DSA-65, ML-DSA-87, and run key establishment with ML-KEM-512, ML-KEM-768, ML-KEM-1024 (tight). Class 0 devices fit none of them and need a gateway.
Firmware and update signing (SUIT, COSE)
A forged firmware image is the worst outcome for a device fleet, and the update signature must stay unforgeable for the device's whole life. Three families are standardised for it:
60 B public key, 2,512 B signature (H10/W4 as HSS L = 1). Stateful: each one-time key may sign once, so the signer's counter must never roll back — keep it in an HSM.
68 B public key, 2,500 B signature (SHA2_10_256). Also stateful. BSI TR-02102-1 accepts both XMSS and LMS.
Stateless: no counter to protect. ML-DSA-44 is 1,312 B / 2,420 B; ML-DSA-87 is 2,592 B / 4,627 B.
Verification speed on a Cortex-M4 (fastest benchmarked build of each): FN-DSA-512 (Falcon-512) 0.40 M < ECDSA P-256 0.98 M < ML-DSA-44 1.42 M < ML-DSA-65 2.42 M < LMS (H10/W4) 2.66 M < ML-DSA-87 4.19 M < XMSS (SHA2_10_256) 13.07 M cycles. LMS is not the fastest verifier; its case is the tiny key and hash-only security assumption. The LMS-vs-XMSS gap (4.9× in that benchmark) comes from the reference code, as its authors note.
Firmware and software signing should prefer CNSA 2.0 algorithms from 2025 and use them exclusively by 2030. CNSA 2.0 accepts only ML-DSA-87 or LMS/XMSS (SP 800-208) for this — ML-DSA-44 and ML-DSA-65 are fine for commercial FIPS 204 products but not for NSS.
is three documents: RFC 9019 is the update architecture, RFC 9124 the manifest information model, and draft-ietf-suit-manifest the CBOR manifest format itself. The manifest carries the image digest and conditions and is signed with COSE: HSS-LMS is registered for COSE by RFC 8778 and ML-DSA by RFC 9964; SLH-DSA and FN-DSA are still drafts. Step 2 signs a manifest with ML-DSA or LMS for real and shows the COSE_Sign1 layout.
The boot-time side — verifying the image before it runs — is in Secure Boot PQC; LMS/XMSS state management in Stateful Hash Signatures.
Constrained protocols
| Protocol | Size reality | Public-key crypto today | PQC path |
|---|---|---|---|
| CoAP + DTLS 1.3 (RFC 7252, RFC 9147, RFC 7925 profile) | IPv6 minimum MTU 1,280 B; an IEEE 802.15.4 frame is 127 B with ~80 B left for payload once link security is on (7228bis S1). | ECDHE + ECDSA certificates or raw public keys (RFC 7250) | Hybrid or ML-KEM key share and ML-DSA certificates — every flight fragments. |
| EDHOC (RFC 9528) + OSCORE (RFC 8613) | Three messages; credentials can be sent by reference (a key identifier) so no certificate crosses the air. | ECDH (X25519 / P-256) with signature or static-DH authentication | draft-ietf-lake-pqsuites: ML-KEM key in message_1, ciphertext in message_2, ML-DSA signatures. |
| MQTT 5.0 over TLS 1.3 | Maximum packet size 268,435,455 B (variable-length integer); TCP segments any TLS flight. | TLS 1.3 (ECDHE + certificates) | Same as web TLS: X25519MLKEM768 today, ML-DSA certificates later. Size is a bandwidth cost, not a limit. |
| LwM2M 1.2 (OMA) over DTLS or OSCORE | Inherits CoAP/DTLS fragmentation; bootstrap can use EST-coaps (RFC 9148). | PSK, raw public key or certificate modes | Follows the DTLS 1.3 or EDHOC path underneath; PSK mode has no Shor exposure. |
| Matter (CSA) | Messages ride IPv6 (1,280 B minimum MTU); commissioning starts over BLE. | PASE (SPAKE2+ on P-256, setup passcode) then CASE (Sigma with ECDSA P-256 + ECDH); DAC → PAI → PAA attestation chain | Needs a specification revision: new CASE suites and PQC device-attestation certificates. |
| Bluetooth Mesh (Mesh Protocol 1.1) | A provisioning transaction is split into 20 B + 23 B segments, at most 64 segments (1,469 B). | ECDH P-256 provisioning with OOB authentication; 1.1 adds certificate-based provisioning (X.509 device certificates) | No PQC provisioning algorithm is defined; a FIPS 203 key would need tens of segments. |
| LoRaWAN 1.1 | Application payload 51–222 B per uplink depending on data rate (EU868), with duty-cycle limits. | None over the air: AES-128 root keys (AppKey/NwkKey) and AES-CMAC/CTR session keys | The air interface is symmetric and not exposed to Shor. The quantum exposure is the backend: join-server and network-server TLS, and how root keys are provisioned. |
A classical 1.3 handshake with an ECDSA certificate chain is about 1,374 B (20 radio frames). With ML-KEM-768 and an ML-DSA-44 chain it grows to about 13,146 B: 13 IPv6 datagrams and 171 IEEE 802.15.4 frames. EDHOC with credentials sent by reference moves 216 B classically and about 7,141 B with the same PQC algorithms — no certificate chain crosses the air.
- MQTT 5 runs over TCP and TLS; its maximum packet is 268,435,455 bytes, so PQC there is a bandwidth cost, not a size limit.
- Matter commissions with PASE (SPAKE2+ over P-256), checks a DAC → PAI → PAA attestation chain, then uses CASE (ECDH + ECDSA). A PQC Matter needs new CASE suites and PQC attestation certificates.
- Bluetooth Mesh provisioning exchanges P-256 keys in PB-ADV segments; Mesh Protocol 1.1 adds certificate-based provisioning. An ML-KEM-768 key would take 52 segments where a P-256 key takes 3.
- LoRaWAN 1.1 has no public-key exchange on the air (AES-128 root keys and session keys), so its radio link is not a Shor target. The exposure is the backend: join server and network server TLS, and how root keys were provisioned.
Certificates and device identity
Each certificate holds its subject's public key and its issuer's signature (RFC 5280). In a TLS or DTLS handshake the server sends its leaf and intermediate and leaves the root out (RFC 8446 §4.4.2), so the chain on the wire carries two public keys and two signatures.
An all-ML-DSA-65 chain is 13× the ECDSA one — larger than a Class 1 device's whole RAM.
RFC 8879 compression saves only the structured part — PQC keys and signatures are random and do not compress. C509 re-encodes the certificate in CBOR (same key, same signature). RFC 7250 raw public keys drop the chain but need a key pinned at provisioning. PSK resumption sends no certificate after the first handshake.
draft-ietf-plants-merkle-tree-certs replaces the CA signature with an inclusion proof of 32 bytes per tree level, and drops the intermediate. It works only if the relying party already holds current trusted tree heads, distributed out of band — a device that is offline for months needs a fallback chain. See Merkle Tree Certificates.
Device identity starts at manufacture. An IEEE 802.1AR initial device identifier (IDevID) is a certificate and key installed in the factory; NIST SP 1800-36B shows it anchoring trusted network-layer onboarding. FIDO Device Onboard 1.1 transfers ownership late, with an ownership voucher. EST-coaps (RFC 9148) enrols operational certificates over CoAP. Each of these is a long-lived signature key that PQC must replace — and an IDevID baked into silicon today cannot be swapped later.
Fleet key management and LPWAN
Rotating keys on millions of devices is a scheduling problem. Devices sit in thousands of cells or collectors that work in parallel, but every key update passes through the same head-end HSM. In the step 5 default — 2,000,000 smart meters, ML-KEM-768, an illustrative 1,000 operations/s HSM — a cell finishes its radio exchange in about 16 minutes while the HSM needs about 1.1 hours: the HSM, not the radio, sets the pace (model estimate).
Smart-meter data is a harvest-now-decrypt-later target: interval readings reveal when a home is occupied, and meters stay installed 15 years or more. DLMS/COSEM Suite 1 and 2 meters agree keys with ECDH; Suite 0 meters use symmetric key wrap only and have no public-key exchange to break.
IPv6 mesh for utilities. FSK modes run 50–300 kbit/s; FAN 1.1 adds OFDM modes up to 2.4 Mbit/s.
51–222 B of payload per uplink (EU868) and a 1% duty cycle; symmetric on the air. Large updates go by multicast with fragmentation.
Licensed cellular; Cat-NB1 peaks around 26 kbit/s downlink and 62.5 kbit/s uplink (3GPP TS 36.306).
What a PQC signature really costs a firmware update: on a 150 KiB image an ML-DSA-87 signature is 2.9% of the bytes (ML-DSA-44: 1.6%). Pushing that update unicast to 1,000 NB-IoT devices takes about 23 hours of downlink — with ECDSA too — while multicast takes 1 minutes. Image size and delivery mode decide whether a cell can be updated (step 6).
Hardware support: secure elements and TPMs
- Secure elements with PQC on the chip now exist. Infineon reports Common Criteria EAL6 certification for an ML-KEM implementation on its TEGRION security controllers; Samsung's S3SSE2A was among the first products to receive an ANSSI PQC security certification (2025); STMicroelectronics has announced PQC for its ST54M secure element. Check each certificate's scope — it covers one target of evaluation, not "PQC" in general.
- Many deployed secure elements are ECC-only. Microchip's ATECC608B, for example, does ECDSA/ECDH on P-256, SHA-256 and AES-128 — it cannot offload ML-KEM or ML-DSA. A device built around it needs PQC in MCU firmware or a new part.
- TrustZone-M is isolation, not a secure element. The Armv8-M security extension separates secure and non-secure software on the same core; PQC code in the secure world uses the same RAM, flash and cycles. It protects keys from the application, it does not add capacity or acceleration.
- TPM 2.0. The TCG TPM 2.0 Library Specification version 1.85 adds ML-KEM and ML-DSA; shipping TPMs will follow the specification with a lag.
- Assurance schemes. PSA Certified (Level 2 builds on the SESIP methodology) and EN 17927 (SESIP as a European standard) are how many IoT chips document their security — useful evidence when a regulation asks for "state of the art" protection.
Hybrid on constrained hardware
A hybrid key exchange such as X25519MLKEM768 combines a classical and a PQC shared secret; the result stays secret as long as either component is unbroken. On a device that already runs ML-KEM-768 the classical half costs little: X25519 adds 32 bytes to each direction, and its ECC routine (at most 2,048 B of stack in the benchmark) runs before or after ML-KEM rather than on top of its peak. Hybrid does not double the cost; the PQC half dominates it.
Field devices keep symmetric or classical crypto to a nearby gateway, which runs PQC or hybrid to the cloud. Protects the long-haul link without touching the devices — but the device-to-gateway link stays classical, so its traffic remains harvestable unless it is symmetric-only.
The device runs the hybrid itself. Composite or dual signatures cost both signatures on the wire, so certificate chains grow by the classical sizes too.
See Hybrid Cryptography for combiners and composite certificates.
IoT security regulations
None of these rules names a PQC algorithm. What they require — secure updates over a support period, state-of-the-art protection, vulnerability handling — is what makes a later PQC migration possible or impossible.
- EU Cyber Resilience Act (Regulation (EU) 2024/2847): vulnerability and incident reporting obligations apply from 11 September 2026; the essential requirements (secure by design, security updates for the support period) from 11 December 2027.
- ETSI EN 303 645: the consumer-IoT baseline — no universal default passwords, a vulnerability disclosure policy, software updates, secure storage of parameters and secure communication with best-practice cryptography.
- EU Radio Equipment Directive: Delegated Regulation (EU) 2022/30 makes cybersecurity essential requirements apply to internet-connected radio equipment from 1 August 2025; EN 18031-1/-2/-3 are the harmonised standards, cited (with restrictions) by Implementing Decision (EU) 2025/138.
- US Cyber Trust Mark (FCC 24-26): a voluntary label for consumer IoT products meeting NIST-derived criteria.
- UK PSTI (Regulations 2023, SI 2023/1007): bans universal default passwords and requires a vulnerability disclosure policy and a stated minimum security-update period.
- NIST IR 8259r1 / 8259A: foundational activities for manufacturers and the core device-capability baseline. NIST IR 8259r1 (April 2026) superseded NIST IR 8259 and names quantum-safe choices as an example of future-proofing, without a deadline; 8259A remains the capability baseline.
Check algorithm fit, sign a manifest for real, compare DTLS and EDHOC, size a chain, plan a fleet rotation and model LPWAN airtime.
Products shown here are a representative selection — not an exhaustive list. For the full vendor landscape with PQC readiness status, visit the Tools & Products tab in this module or browse the Migrate catalog →
Check off all sections and mark this reading done.
Related modules
- OT & Industrial Control Systems PQCSame track · Applications · Same migration phase · Shares ML-KEM, ML-DSA, LMS/XMSS
- Code SigningSame track · Applications · Same migration phase · Shares ML-DSA, LMS/XMSS, FIPS 204
- Aerospace PQCSame migration phase · Shares Falcon, ML-DSA, ML-KEM
- Architect Quantum ImpactShares Falcon, ML-DSA, ML-KEM
In the Industry Landscape
Check your understanding
22 questions on IoT & Embedded Device PQC, each with its answer and the reason.
Take the quizNext step
Produce the artifact: MTI NegotiatorThis module belongs to phase 5 (Pilots & Migration); MTI Negotiator produces a deliverable of that phase in the Command Center.
Learning module content can be inaccurate. Please double-check its information. Report inaccuracies in PQC Today GitHub Discussions.