  Many online services rely on self-reported locations of user devices like
smartphones. To mitigate harm from falsified self-reported locations, the
literature has proposed location proof services (LPSs), which provide proof of
a device's location by corroborating its self-reported location using
short-range radio contacts with either trusted infrastructure or nearby devices
that also report their locations. This paper presents ProLoc, a new LPS that
extends prior work in two ways. First, ProLoc relaxes prior work's proofs that
a device was at a given location to proofs that a device was within distance
"d" of a given location. We argue that these weaker proofs, which we call
"region proofs", are important because (i) region proofs can be constructed
with few requirements on device reporting behavior as opposed to precise
location proofs, and (ii) a quantitative bound on a device's distance from a
known epicenter is useful for many applications. For example, in the context of
citizen reporting near an unexpected event (earthquake, violent protest, etc.),
knowing the verified distances of the reporting devices from the event's
epicenter would be valuable for ranking the reports by relevance or flagging
fake reports. Second, ProLoc includes a novel mechanism to prevent collusion
attacks where a set of attacker-controlled devices corroborate each others'
false locations. Ours is the first mechanism that does not need additional
infrastructure to handle attacks with made-up devices, which an attacker can
create in any number at any location without any cost. For this, we rely on a
variant of TrustRank applied to the self-reported trajectories and encounters
of devices. Our goal is to prevent retroactive attacks where the adversary
cannot predict ahead of time which fake location it will want to report, which
is the case for the reporting of unexpected events.
