Skip to main content

atlas-pca

Reference verifier for Proof-Carrying Authority (PCA), an execution-authentication framework for autonomous agents. With every action the agent presents a self-contained proof-carrying action (PCActn); the resource server verifies the proof offline instead of trusting a bearer token.

Status: 0.3.0, unaudited. Not independently security-reviewed; evaluate before relying on it for production authorization decisions.

Install

pip install atlas-pca

The verifier has no required dependencies. Optional extras: atlas-pca[fast] (native Ed25519 via cryptography), atlas-pca[pq] (ML-DSA-65 post-quantum signatures via dilithium-py), atlas-pca[fastapi], atlas-pca[django].

Use

from atlas_pca import verify_pcactn_core

verdict = verify_pcactn_core(pcactn, grant, audience="https://api.example.com")
if not verdict.allow:
    raise PermissionError(f"authF failed: {verdict.reason}")

Checks

Verification is stateless, fail-closed and runs in a fixed, normative order: wire, version, audience, validity, chain, grant_ref_bound, plan_inclusion, leaf_signature, counter.

grant_ref_bound (new in 0.2.0) requires the signed grant_ref to equal the id of the root capability (cap_chain[0]), so replay state cannot be keyed on an attacker-chosen value.

The package passes the shared 172-vector PCA conformance corpus, which the TypeScript, Rust, Go and other verifiers also pass.

License: MIT

Metadata

Release files for atlas-pca 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for atlas-pca 0.3.0
File Size Uploaded
atlas_pca-0.3.0.tar.gz 20.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for atlas-pca 0.3.0
File Interpreter ABI Platform
atlas_pca-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 42.2 kB

Release files / atlas_pca-0.3.0.tar.gz

Download URL atlas_pca-0.3.0.tar.gz
Size 20.7 kB
Tags Source
SHA-256 checksum
How to use checksums
9e4acaedcb59392ef424e51ae003e5582d8504f9f650216bc9f70996f3630e9e
BLAKE2b-256 checksum
How to use checksums
ee1d42beed02d930d9b97f85c7494a91de0c127c9ca5d903f7125e1e283ad494
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / atlas_pca-0.3.0-py3-none-any.whl

Download URL atlas_pca-0.3.0-py3-none-any.whl
Size 21.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f440cece5588a72627d369e62ff6c723576254aa05fcd9cb48ca55a401563a1
BLAKE2b-256 checksum
How to use checksums
e184a2229842d7becfcb597962a4cca45e896d42f8113daf71a61c3f4a45ffc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.4.1

2 release files

0.4.0

2 release files

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page