Skip to main content
Every AI call, data access, and PHI event on HASP is written to a tamper-resistant audit chain. The chain is tamper-resistant at the database layer, tamper-evident at the cryptographic layer, and externally anchored to a third-party timestamping authority — and you can verify all of it independently, without trusting HASP’s application.

How the chain is built

Each audit entry is linked into a per-org hash chain. Three mechanisms harden it: Writes are serialized per org (advisory lock + transaction) so concurrent writes cannot fork the chain, and verification streams the chain in bounded memory so it scales to 7+ years of activity.

Signed, independently verifiable exports

An audit export is a self-describing audit-export.json envelope, signed end-to-end with per-tenant Ed25519 keys for non-repudiation. It contains: Verification is self-contained and needs no HASP software: confirm the embedded key matches the independently-published key, recompute each record’s hash and confirm the chain links, verify every per-record signature under the published key, and validate the RFC 3161 timestamp over the chain head. Your organization’s audit public keys are published at /.well-known/audit-keys.json and /trust/keys/{org_id} so a verifier can confirm the embedded key against a source HASP does not control.

Verify it yourself with @usehasp/verify

HASP publishes an open-source verifier that checks a signed export end-to-end — hash chain continuity, Ed25519 signatures, and the RFC 3161 TSA timestamps — entirely on your machine:
The package is on npm and the source is on GitHub. Because verification is independent, you do not have to trust the same system that produced the data — the proof travels with the export. HASP also exposes server-side verification surfaces: a public-key endpoint, a verify-export endpoint, and a live chain-health check on the compliance settings page.

Applies to every org — including Free Evaluation

The full chain applies to every organization, paid and Free Evaluation alike. A prospective customer who registers an agent, watches it execute through the policy gate, and downloads a cryptographically signed export during their evaluation has seen the substrate doing its job — not a feature tour. When a Free Evaluation org converts to paid, the chain continues uninterrupted — no reset, no new genesis hash.
IP-address logging is a compliance floor, not a tier feature — it is included on every paid tier because HIPAA §164.312(b) requires access logs to capture enough context to reconstruct who accessed what from where. Device-metadata logging (user-agent, OS, device fingerprint) is distinct and remains an Enterprise-optional surface.

What PHI events look like in the chain

PHI events (gateway.phi_detected, gateway.phi_redacted, and every subsequent step) are recorded — but the original PHI is never persisted. Rows carry the redacted form plus entity-class metadata only. See BAA Structure for how PHI handling feeds the chain.