Documentation

GrayPass documentation

GrayPass is human-agency infrastructure. Login proves who entered a session. Before a consequential action executes, GrayPass checks whether the expected person is still in control and returns a decision your application can enforce.

Your identity provider, passkeys, MFA, fraud system, and device controls stay in place. GrayPass adds fresh evidence at the action: a typed Assurance Profile, a policy decision for one registered action, and a signed Proof of Agency a relying party can verify without any Brainprint data.

How the system works

Operation Who performs it What it produces
Enroll Your backend, with the browser SDK observing A tenant-scoped Brainprint reference for a pseudonymous subject, with its anchor limitation recorded
Observe Browser SDK Signed, replay-checked windows of derived interaction features; never typed content or raw cursor paths
Assess GrayPass An Assurance Profile: separate typed claims with coverage, freshness, evidence references, and limitations
Authorize Your backend Exactly one of allow, challenge, hold, or deny for one registered action, with reason codes
Prove GrayPass A short-lived ES256 Proof of Agency, issued for allow in enforce mode
Verify The service that executes the action Local signature and binding checks before anything runs

insufficient_evidence is never a decision. It is an assurance status. Your policy states whether it becomes a challenge, a hold, or a denial for each action.

Start here

  1. Integrate the protected-action flow: register an action, enroll a subject, observe in the browser, authorize on the backend, and verify the proof where the action runs.
  2. Protected actions and policies: what an action records and how an immutable policy version decides.
  3. Decisions and challenges: the four decisions, the reason codes behind them, and how an action-bound challenge completes.
  4. Proof of Agency: the signed claims, offline verification, and one-time consumption.
  5. Evaluate in shadow mode: measure before you enforce.
  6. Troubleshooting: what each error means and how to fix it.

The API reference, schemas, capability status, and reason codes are generated from the running application.

What a Brainprint is

A Brainprint is a private, tenant-scoped, continuously learned model of how an enrolled person interacts with software: keystroke timing, pointer movement, scrolling rhythm, and similar interaction dynamics reduced to derived features in the browser. It is one source of evidence about operator continuity.

It is not a portable identifier, a map of anyone's brain, or a measure of intelligence, personality, emotion, or health. It does not establish legal identity, personhood, device integrity, agent authority, or that the original enrollment was honest. Each of those appears in the Assurance Profile as an explicit unsupported claim so a policy can never depend on it.

Environments and modes

Every tenant has a sandbox environment and can have a live environment. A credential is bound to one environment. Actions start in shadow mode, where GrayPass records the decision it would make and your application changes nothing. Sandbox enforcement lets you test challenges, proofs, verification, one-time consumption, outcomes, and deletion end to end.

Scientific status

The continuous engine has not completed a recorded-human evaluation. Its categorical continuity, change, and automation outputs are experimental and are reported as such in every profile. No Assurance Profile contains a confidence value, the server does not permit live enforcement, and no production accuracy figure is published. The claim registry lists every quantitative statement GrayPass currently makes.

Generated from the API contract in contracts/ and the source in docs/. The build fails if this page disagrees with the running API.