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

Proof-of-Location Systems

A proof-of-location system is any system that produces evidence about physical location. These systems are the foundation of location proofs — each location stamp comes from a proof-of-location system, wrapped in a location proof plugin.
Location verification is already everywhere online, but it’s usually ad hoc and hard to check: GeoIP lookups, scanning a QR code, entering a passphrase, checking in with an event host, even submitting a bank statement as proof of address. The Location Proof framework is an attempt to make these techniques more transparent and legible — not to replace them.

Categories of proof-of-location systems

Proof-of-location systems span a wide range of approaches, from hardware-based measurement to social attestation:
CategoryMechanismExampleStrengthsLimitations
Near-field machinePhysical proximity verification via short-range signalsRFID, NFC, Bluetooth beaconsHard to forge without physical presenceShort range; requires infrastructure
Network machinePosition derived from network measurementsTime of Flight, TDOA, latency triangulationIndependent of device; based on physicsRequires distributed infrastructure
Sensor dataLocation inferred from environmental readingsMagnetometer signatures, image/audio analysisRich contextual evidenceComputationally expensive to verify, difficult to detect generated sensor data
DelegatedTrusted third party attests to locationNotarized presence, institutional witnessLeverages existing trust relationshipsOnly as trustworthy as the delegate
SocialPeer confirmations of co-locationMutual attestation, group check-inDistributed trust; no infrastructure neededCollusion risk
Authority-basedAuthorized entity confirms locationGovernment agency, licensed surveyorHigh institutional trustCentralized; requires authority access
LegalLocation established through legal processCourt records, notarized documents, affidavitsStrong evidentiary weight, legal liability of fraudSlow; expensive; not real-time

Current state of the field

Honesty matters here: few “hard” proof-of-location systems exist at scale today, and even fewer are decentralized. Most deployed location infrastructure (GPS, Wi-Fi positioning, cell tower triangulation) was designed for navigation, not proof. These systems tell you where you are but don’t produce cryptographically verifiable evidence that you were there. The proof-of-location systems that do exist with meaningful cryptographic properties — hardware attestation, network latency triangulation, secure enclave readings, Galileo’s OSNMA authentication feature — are still maturing. Each has real limitations and known attack vectors. That said, significant value comes from “softer” proof-of-location systems too. Even a single device attestation with sensor readings, while not unbreakable, raises the cost of forgery substantially compared to self-reported GPS. And combining multiple independent sources — even individually weak ones — creates meaningful assurance through cross-correlation. Our vision is to build a community ecosystem of location proof plugins, and over time enhance our capability to create location proofs further and further up the certainty spectrum.

Available plugins

v0 of Astral connects to proof-of-location systems through location proof plugins. ProofMode is working today — its stamps can be verified end to end. The other plugins are experimental, with interfaces defined and early verification logic in place. The two highlighted below are the documented examples:

ProofMode — implemented

Device attestation + sensor fusion. Uses iOS Secure Enclave and Android hardware keystore to attest to device sensor readings (GPS, Wi-Fi, cellular, magnetometer). Trust derives from device hardware integrity. This is the one proof-of-location plugin available today (alpha).

WitnessChain — experimental

Infrastructure verification. The design uses UDP latency triangulation across a distributed challenger network, where trust derives from the speed of light — you can’t fake being close to many geographically distributed nodes at once. The interface is defined and an experimental server-side verification logic exists; it’s not production yet.
The Verify service also includes experimental stamp-verification logic for gpsd, geoclue, wifi-mls, and ip-geolocation. The Mock plugin is available for development and testing on the client.
ProofMode is working today; the others are experimental, with interfaces defined and early verification logic in place. We’re actively interested in developing new proof-of-location plugins with partners — if you work on a proof-of-location system, get in touch.

Building new plugins

The location proof plugin interface is extensible by design. If you have a proof-of-location system that isn’t covered by existing plugins, you can build a custom plugin that implements the standard interface.

Next: Location stamps

Evidence from a single proof-of-location system

See also: