CDC Badge OS
Firmware for the CDC Badge v1.0 hardware security key
Loading...
Searching...
No Matches
Crypto.h File Reference

Shared AES-256-GCM helpers built on mbedTLS. More...

#include <mbedtls/gcm.h>
#include <cstddef>
#include <cstdint>

Go to the source code of this file.

Classes

class  cdc::core::GcmContext
 RAII wrapper around mbedtls_gcm_context. Non-copyable, non-movable. More...

Namespaces

namespace  cdc
namespace  cdc::core

Functions

bool cdc::core::aesGcm256Seal (const uint8_t key[32], const uint8_t *iv, size_t ivLen, const uint8_t *aad, size_t aadLen, const uint8_t *pt, size_t ptLen, uint8_t *ctOut, uint8_t tagOut[16])
 Encrypts pt with AES-256-GCM and produces a 16-byte tag.
bool cdc::core::aesGcm256Open (const uint8_t key[32], const uint8_t *iv, size_t ivLen, const uint8_t *aad, size_t aadLen, const uint8_t *ct, size_t ctLen, const uint8_t tag[16], uint8_t *ptOut)
 Authenticates and decrypts ct with AES-256-GCM.

Detailed Description

Shared AES-256-GCM helpers built on mbedTLS.

Single source of truth for the AES-256-GCM seal/open pattern used across the firmware (encrypted backups, GPG key storage, plugin host crypto API), centralizing the mbedtls_gcm_init/setkey/crypt_and_tag/auth_decrypt/ free sequence.

Definition in file Crypto.h.