Expand description
Cryptographic plugin SPI (OMG DDS-Security 1.1 §8.5).
The SPI is split into three sub-interfaces (spec structure):
- KeyFactory (§8.5.1.7) — key derivation from
SharedSecret. - KeyExchange (§8.5.1.8) — exchange key tokens between peers.
- Transform (§8.5.1.9) — the concrete encrypt/decrypt/sign/verify.
We bundle the three into one trait (CryptographicPlugin), so that
users only have to hold a single Box<dyn ...>. Backend impls
(rustls, ring, mbedtls) implement all three sub-interfaces.
zerodds-lint: allow no_dyn_in_safe
(The plugin SPI needs Box<dyn CryptographicPlugin>.)
Structs§
- Crypto
Handle - Opaque handle for derived key material (master key of a participant/endpoint).
- Receiver
Mac - Receiver-specific MAC (spec §7.3.6.3
ReceiverSpecificMAC).
Traits§
- Cryptographic
Plugin - Cryptographic plugin (spec §8.5.1). In v1.3 this is a pure
interface — production impls live in
zerodds-security-crypto(AES-GCM + HMAC),zerodds-security-keyexchange(DH key exchange, spec §9.5.3) andzerodds-security-rtps(RTPS header AAD wrapper, spec §7.3.5).
Type Aliases§
- Crypto
Plugin Box - Factory alias.