Japanese version: Index
HATL Interface Contracts
HATL contracts define the package boundary for Hash-Anchored Trust Layer ledger, anchor, deed, and external cryptographic operator integration. AIKernel.NET does not implement cryptography, key handling, ratchets, Merkle proofs, or public-anchor publication logic.
Contract Surface
| Contract | Responsibility |
|---|---|
IHatlLedgerStore |
Append and read HATL micro-ledger entries. |
IHatlAnchorPublisher |
Publish public anchor documents through a runtime/provider boundary. |
IHatlAnchorVerifier |
Verify public anchor documents and ledger-entry inclusion proofs. |
IHatlDigitalDeedResolver |
Resolve and verify Digital Deed status for governed identities. |
IHatlCryptographicOperator |
Delegate BlockMAC, ratchet advancement, and anchor-signature verification to an external cryptographic operator, such as an AIKernel.RH-backed module. |
DTO Ownership
HATL DTOs are owned by AIKernel.Dtos.Hatl. Shared HATL enum primitives are owned by AIKernel.Enums. Runtime cryptographic implementations belong to external operator/provider packages, not to AIKernel.Abstractions.
External Crypto Boundary
IHatlCryptographicOperator is intentionally a capability boundary. It allows Core or host applications to bind an AIKernel.RH-based native module, hardware-backed crypto provider, or other audited operator without adding cryptographic implementation to AIKernel.NET.
The contract surface carries hashes, MACs, commitments, anchor documents, receipts, verification outcomes, and metadata only. Raw secrets, mutable key material, and secret-erasure behavior are runtime concerns outside this repository.
ResultStep / LINQ Boundary
HATL contracts intentionally return DTO-based ValueTask results rather than Result<T> or ResultStep<TState, TValue>. This keeps AIKernel.Abstractions independent from AIKernel.Common and Core runtime packages.
Core implementations that need monadic LINQ composition should wrap IHatlCryptographicOperator calls in a Core-owned adapter. That adapter is responsible for converting HATL DTO outcomes into fail-closed Result<T> or ResultStep<TState, TValue> values, attaching SemanticDelta, replay metadata, and HATL metadata keys such as hatl_anchor_id or hatl_merkle_root_hash.
Changelog
- v0.0.5 (2026-06-05): Clarified HATL external cryptographic operator and Core/Common LINQ adapter boundaries.
architecture/interfaces/hatl/index.md