Skip to main content

Module device_profile

Module device_profile 

Source
Available on crate feature std only.
Expand description

Device Profile System

Three device tiers with adaptive transport parameters (buffer sizes, stream limits, coalescing, compression, MTU):

  • Constrained: ESP32, drones, IoT (~520 KB RAM, no HW AES)
  • Standard: smartphones, SBCs, Raspberry Pi (1-4 GB RAM)
  • Performance: servers, desktops (8+ GB RAM, HW AES)

Post-quantum security is mandatory for EVERY tier.

NOTE: this module is descriptive / not yet wired. DeviceProfile and its PqKemLevel / PqSignLevel fields are not imported by the handshake or crypto layers — the live handshake uses a single fixed hybrid suite (X25519 + ML-KEM-768 KEM, Ed25519 + ML-DSA-65 signatures), not a per-tier-selectable Kyber512 / Dilithium2. The PqKemLevel / PqSignLevel enums (Kyber/Dilithium are the pre-standardization names for ML-KEM / ML-DSA) describe the intended tiering but do not currently steer any wire negotiation. The non-crypto knobs (buffer_size, max_streams, coalescing, …) are likewise advisory defaults.

Structs§

DeviceProfile
Complete device profile — all transport parameters

Enums§

DeviceTier
Device tier classification
PqKemLevel
PQ KEM security level
PqSignLevel
PQ Signature level