In location-based applications, a browser running on a client device connects to a webserver and claims the device is in some geographic location. This unverified assertion can often be faked, and IP-address-based geolocation is susceptible to IP-masking technologies. CPV verifies geographic locations in three stages.
CPV uses WebSockets to have the browser communicate with three location verifiers circumscribing the asserted location.
The verifiers iteratively measure one-way network delays among themselves and with the client.
The information is processed to verify the device's geographic presence inside the triangle determined by the verifiers.
From your IP address, it looks like you are in Ashburn, Virginia, US. This demo uses three US-based verifiers in San Francisco, Las Vegas, and San Diego, thus verifying claims of physical presence inside the triangle determined by their locations.Am I inside the triangle?