- Added DefaultCryptoHmac class implementing ICryptoHmac interface. - Introduced purpose-based HMAC computation methods. - Implemented verification methods for HMACs with constant-time comparison. - Created HmacAlgorithms and HmacPurpose classes for well-known identifiers. - Added compliance profile support for HMAC algorithms. - Included asynchronous methods for HMAC computation from streams.
Risk Samples (fixtures layout)
Use this folder for frozen, deterministic fixtures once schemas and payloads arrive.
Structure (proposed):
profiles/— profile JSON (DSSE-wrapped where applicable) +SHA256SUMSfactors/— factor input payloads grouped by source (epss/, kev/, reachability/, runtime/), each withSHA256SUMSexplain/— explainability outputs paired with inputs; includeSHA256SUMSapi/— request/response examples for risk endpoints; includeSHA256SUMS
Rules:
- UTC timestamps; stable ordering of arrays/objects.
- No live calls; fixtures only.
- Record hashes via
sha256sumand keep manifests alongside samples.
Quick receipt checklist (see INGEST_CHECKLIST.md for detail):
- Normalize JSON with
jq -S . - Update
SHA256SUMSin the target folder - Verify with
sha256sum -c - Log files + hashes in the sprint Execution Log
Manifests created:
profiles/SHA256SUMSfactors/SHA256SUMSexplain/SHA256SUMSapi/SHA256SUMS