Software
In the context of their work within RIOT-fp, project members develop, upstream and maintain a number of open source software code bases, including:
-
RIOT – A general-purpose operating system and various software libraries for low-power IoT devices, including an implementation of SUIT secured IoT software updates.
-
EDHOC-rs – implementation in Rust and hacpsec of Ephemeral Diffie-Hellman over COSE (EDHOC)
-
libCOSE – A compact implementation of CBOR Object Signing and Encryption (COSE).
-
Hax – an open source implementation of a tool for high assurance translations of Rust into formal languages such as F* or Coq.
-
Wave – C Reference implementation of Wave, a signature scheme submitted to the NIST post-quantum cryptography standardization (in 2023) project signature on-ramp.
-
RIOT-rs – A Rust (re)implementation of RIOT’s kernel core.
-
Wavelet The first implementation of WAVE code-based postquantum signatures with fast verification on microcontrollers.
-
CTIDH – C/X86 Assembly implementation of isogeny-based key exchange with side-channel protections. Current speed record holder.
-
Hacspec – Succinct, executable, verifiable specs for high-assurance Rust software modules.
-
OpenWSN – The reference implementation of the 6TiSCH network stack.
-
HACL* – A formally verified software library of cryptographic algorithms, including Curve25519, Ed25519, AES-GCM, Chacha20, Poly1305, SHA-2, SHA-3, HMAC, and HKDF.
-
riotboot-rs – An implementation of RIOT’s bootloader in Rust and Hacspec.
-
EDHOC-C and py-edhoc – implementations of Ephemeral Diffie-Hellman over COSE (EDHOC).
-
nanoCBOR – A tiny CBOR library aimed at embedded and heavily constrained devices.
-
femto-containers – A hosting engine for tiny [rBPF]{https://dl.acm.org/doi/pdf/10.1145/3528535.3565242} virtual machines on IoT microcontrollers, with a verified interpreter.