File SolidSyslogMbedTlsAesGcmPolicy.h¶
FileList > Interface > SolidSyslogMbedTlsAesGcmPolicy.h
#include "SolidSyslogExternC.h"#include "SolidSyslogKeyFunction.h"
Classes¶
| Type | Name |
|---|---|
| struct | SolidSyslogMbedTlsAesGcmPolicyConfig |
Detailed Description¶
AES-256-GCM confidentiality-and-integrity SecurityPolicy via Mbed TLS, for a store that must encrypt records at rest.
What the policy does through its vtable is the substance:
- Seal encrypts a record in place: draws a fresh 12-byte nonce from the caller's CTR-DRBG, encrypts the body (Content past HeaderLength), authenticates the header as associated data, and writes nonce||tag into the record trailer. It is keyed and fails closed - if the key is unavailable or not exactly 32 bytes, Seal returns false and nothing is stored.
- Open reverses it: decrypts the body and verifies the tag over the header and ciphertext. A tag mismatch (tamper, or wrong key) is the expected rejection and returns false silently; only a genuine mbedTLS fault is reported.
The key is fetched on demand via GetKey and wiped after every operation - it is never stored on the instance.
Public Functions Documentation¶
SolidSyslogMbedTlsAesGcmPolicy_Create¶
Draw an AES-GCM policy from the pool.
struct SolidSyslogSecurityPolicy * SolidSyslogMbedTlsAesGcmPolicy_Create (
const struct SolidSyslogMbedTlsAesGcmPolicyConfig * config
)
Bad config (NULL GetKey or NULL Rng) or an exhausted pool falls back to the shared NullSecurityPolicy.
SolidSyslogMbedTlsAesGcmPolicy_Destroy¶
Release the pool slot; the policy owns no resources beyond the slot (the key is fetched per-call, the CTR-DRBG is caller-owned).
The documentation for this class was generated from the following file Platform/MbedTls/Interface/SolidSyslogMbedTlsAesGcmPolicy.h