Skip to main content

Module crypto

Module crypto 

Source
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§

CryptoHandle
Opaque handle for derived key material (master key of a participant/endpoint).
ReceiverMac
Receiver-specific MAC (spec §7.3.6.3 ReceiverSpecificMAC).

Traits§

CryptographicPlugin
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) and zerodds-security-rtps (RTPS header AAD wrapper, spec §7.3.5).

Type Aliases§

CryptoPluginBox
Factory alias.