Skip to main content
Research Preview — APIs may change. GitHub

Building verification plugins

A plugin connects a proof-of-location (PoL) system to Astral’s verification framework. Plugins collect signals from a PoL system, produce location stamps, and verify those stamps.
The plugin interface is under active development. The patterns shown here reflect the current design direction, but specifics may change as we iterate on the verification framework.

What is a plugin?

Proof-of-location systems vary widely — hardware attestation, network triangulation, sensor fusion, institutional records. A plugin is a standardized adapter that translates a specific PoL system’s output into the common stamp format that Astral can verify and cross-correlate. Each plugin handles three responsibilities:
  1. Collect signals from the PoL system (GPS readings, network measurements, device attestations)
  2. Create stamps from those signals (structured evidence artifacts)
  3. Verify stamps for authenticity and structural integrity

Plugin interface

How stamps work

A stamp is a signed artifact from a PoL system. It encodes the system’s conclusion about where and when an event occurred, along with the raw signals that support that conclusion. Stamps follow the Location Protocol format:
The distinction between a stamp’s location and a claim’s location is important. The stamp records where the PoL system observed the subject. The claim records where the subject asserts they were. Verification compares the two.

Implementation guide

Here is a step-by-step walkthrough for building a hypothetical plugin that uses Wi-Fi access point data.

Step 1: Define signal collection

Step 2: Create stamps from signals

Step 3: Implement stamp verification

Registration

Register your plugin with the Astral SDK so it can be used in stamp collection and verification:

Testing

Test each plugin responsibility independently:

Existing plugins

ProofMode is the plugin that’s working end to end today. The Verify service also includes experimental stamp-verification logic — witnesschain, gpsd, geoclue, wifi-mls, and ip-geolocation — with interfaces defined. We’re keen to develop new ones with partners. Two are highlighted here:

ProofMode

Device attestation and sensor fusion. Uses Secure Enclave (iOS) or hardware keystore (Android) to sign location observations.

WitnessChain

Infrastructure verification using UDP latency triangulation and a challenger network. Trust is intended to derive from speed-of-light constraints and cryptoeconomic incentives.
Each plugin documents its own threat model and trust assumptions. When building a new plugin, you should clearly document what an attacker would need to do to forge a stamp from your system.

Next steps

Location proofs

Understand how stamps combine into verifiable proofs

Verifying location proofs

Submit proofs and understand credibility scores