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

Portable authenticatorLargeBlobs write-session accumulator and the canonical empty large-blob array constant (CTAP2.1 Section 6.10). More...

#include <cstddef>
#include <cstdint>

Go to the source code of this file.

Classes

class  cdc::mod_fido2::LargeBlobWriteSession
 Accumulates an offset-chunked authenticatorLargeBlobs write into a caller-owned buffer. More...

Namespaces

namespace  cdc
namespace  cdc::mod_fido2

Enumerations

enum class  cdc::mod_fido2::LbResult : uint8_t { cdc::mod_fido2::Ok , cdc::mod_fido2::StorageFull , cdc::mod_fido2::BadLength , cdc::mod_fido2::BadSeq }
 Outcome of a write-session step, mapped to a CTAP status by the caller. More...

Variables

constexpr uint16_t cdc::mod_fido2::kLargeBlobMaxArray = 1024
 Largest serialized large-blob array, advertised as maxSerializedLargeBlobArray.
constexpr uint16_t cdc::mod_fido2::kLargeBlobEmptyLen = 17
const uint8_t cdc::mod_fido2::kLargeBlobEmpty [kLargeBlobEmptyLen]
 Canonical empty large-blob array bytes.

Detailed Description

Portable authenticatorLargeBlobs write-session accumulator and the canonical empty large-blob array constant (CTAP2.1 Section 6.10).

Pure logic with no crypto or persistence so it can be unit-tested on the host. The session writes into a caller-owned buffer (so the large staging buffer can live in PSRAM); the caller verifies the trailing SHA-256 checksum once LargeBlobWriteSession::complete is true and then persists it.

Definition in file LargeBlobStore.h.