Public verifier and CLI for AAP Core evidence bundles (.aap).
aap-verify is verification-only. It does not generate or export bundles.
- License: Apache-2.0 (
LICENSE) - Development stage: Alpha (
0.1.x) - Python:
>=3.10
From source:
pip install -e .Verify a bundle:
aap-verify evidence.aapJSON output:
aap-verify evidence.aap --output jsonStrict profile path checks:
aap-verify evidence.aap --strict-profilesShow CLI version:
aap-verify --versionusage: aap-verify [--version] [--output {text,json}] [--strict-profiles] package_file
Arguments:
package_file: Path to.aapbundle.--output {text,json}: Output format. Default istext.--json: Legacy alias for--output json.--strict-profiles: Enforce declaredprofile.path_prefixfile presence.--version: Print CLI version.
Exit codes:
0: Verification passed.4: Verification failed.2: CLI usage error (argument parsing).
The verifier currently checks:
- Manifest shape and required fields.
- Integrity profile constraints (
sha256,sha384,sha512). - Declared file hashes.
- Archive strictness: rejects files not declared in
manifest.file_hashes. - Event chain integrity (
sequence_index,prev_hash,data_hash). - Merkle root integrity for batches.
- Anchor/proof integrity (including
local-hmac-*local proofs). evidence_scopeconsistency against discovered sessions/batches/anchors.timestamp_evidenceconsistency with anchors and file hashes.- Optional profile-required files.
aap-verifyvalidates bundle consistency and cryptographic linkage.- Verification of trust in an external anchor service/operator is out of scope for this package.
- Local anchor (
local-hmac-*) verification depends on local key material (AAP_ANCHOR_KEYor dev fallback).
See docs/verification-model.md and docs/threat-model.md for details.
Normative spec and schemas are maintained in aap-spec.
- Local workspace path:
../aap-spec - Canonical URL:
https://github.com/cynsta/aap-spec - Compatibility notes:
docs/spec-compatibility.md
Run tests:
python -m unittest discover -s tests -p "test_*.py"Run formatting/lint checks:
python -m black --check .
python -m ruff check .Please report vulnerabilities according to SECURITY.md.
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, and the issue/PR templates in .github/.