Skip to main content
Research Preview — The proofs module is under active development.

Location proofs

The ProofsModule handles proof construction and multidimensional verification. A location proof bundles a claim (“I was at location X at time T”) with one or more stamps (evidence from proof-of-location systems). Verification produces a CredibilityVector — not a single score.
For conceptual background, see Location Proofs.

proofs.create()

Bundle a claim with stamps into a location proof. This is a synchronous operation.

Parameters

ParameterTypeRequiredDescription
claimLocationClaimYesThe location claim to prove
stampsLocationStamp[]YesOne or more signed stamps as evidence
Requires at least one stamp.

Example


proofs.verify()

Verify a location proof. Two modes available:

Local mode (default)

Runs verification in-process. Free and fast. Returns a CredibilityVector.
Local verification:
  • Verifies each stamp via its plugin’s verify() method
  • Measures spatial alignment between each stamp and the claim
  • Measures temporal overlap between each stamp and the claim
  • Assesses independence across stamps from different plugins

TEE mode

Runs in a hosted Trusted Execution Environment. Returns a VerifiedLocationProof with an EAS attestation.

Type guard

Use isVerifiedLocationProof() to narrow the return type:

ProofsModule.exampleWeighting()

Static helper demonstrating how to collapse a CredibilityVector into a single decision value. This is provided as an example — applications should implement their own weighting functions.
CredibilityVector intentionally has no single score. The example weighting is for demonstration only. Applications should define their own weighting based on their risk tolerance and use case.

CredibilityVector

The core verification output. Four dimensions, no opinionated scoring.

StampResult

Per-stamp assessment within the CredibilityVector:

VerifiedLocationProof

Returned by TEE mode verification. Contains the full credibility vector plus an EAS attestation.

LocationClaim

Defines what the proof is asserting.

Multi-stamp cross-correlation

Independent plugins increase credibility. When stamps from different proof-of-location systems agree, the independence dimension reflects this:
Independent, corroborating evidence from different proof systems strengthens the proof. Redundant stamps from the same plugin don’t add independence — but they don’t subtract either.

Complete example

Next: Plugins

Learn about the plugin system and registry