Historically cryptography in the embedded space has been a disaster, but with the growing pervasiveness of “IoT”, a topic of increasing importance. Rust provides a great language for building secure embedded applications, and with it a great platform for embedded cryptography.
This talk will cover two embedded cryptography projects written in pure Rust:
- RustCrypto (“2.0”): a multi-crate “embedded-first” GitHub organization with trait-based implementations of several cryptographic algorithms including AEAD algorithms (AES-GCM, ChaCha20Poly1305), digest algorithms (SHA-2, SHA-3, BLAKE2), elliptic curves (NIST P-256, secp256k1), MACs (CMAC, HMAC), and signature algorithms (ECDSA, Ed25519)
- Veriform: cryptographically verifiable and canonicalized message format similar to Protocol Buffers, with an “embedded-first” (heapless) implementation suitable for certificates or other signed objects