Location proofs
TheProofsModule 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
| Parameter | Type | Required | Description |
|---|---|---|---|
claim | LocationClaim | Yes | The location claim to prove |
stamps | LocationStamp[] | Yes | One or more signed stamps as evidence |
Example
proofs.verify()
Verify a location proof. Two modes available:Local mode (default)
Runs verification in-process. Free and fast. Returns aCredibilityVector.
- 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 aVerifiedLocationProof with an EAS attestation.
Type guard
UseisVerifiedLocationProof() to narrow the return type:
ProofsModule.exampleWeighting()
Static helper demonstrating how to collapse aCredibilityVector into a single decision value. This is provided as an example — applications should implement their own weighting functions.
CredibilityVector
The core verification output. Four dimensions, no opinionated scoring.StampResult
Per-stamp assessment within theCredibilityVector:
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, theindependence 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