  This paper introduces Zero-Knowledge Location Privacy (ZKLP), enabling users
to prove to third parties that they are within a specified geographical region
while not disclosing their exact location. ZKLP supports varying levels of
granularity, allowing for customization depending on the use case. To realize
ZKLP, we introduce the first set of Zero-Knowledge Proof (ZKP) circuits that
are fully compliant to the IEEE 754 standard for floating-point arithmetic.
  Our results demonstrate that our floating point implementation scales
efficiently, requiring only $69$ constraints per multiplication for $2^{15}$
single-precision floating-point multiplications. We utilize our floating point
implementation to realize the ZKLP paradigm. In comparison to the
state-of-the-art, we find that our optimized implementation has $14.1 \times$
less constraints utilizing single precision floating-point values, and $11.2
\times$ less constraints when utilizing double precision floating-point values.
We demonstrate the practicability of ZKLP by building a protocol for privacy
preserving peer-to-peer proximity testing - Alice can test if she is close to
Bob by receiving a single message, without either party revealing any other
information about their location. In such a configuration, Bob can create a
proof of (non-)proximity in $0.27 s$, whereas Alice can verify her distance to
about $250$ peers per second
