ConceptioArchivearXiv CS
arXiv CSopen access

A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing

Unknown · 2026 · arxiv_cs
arXiv CS · Papers · License: Open Access · 2026
Open Source ↗Direct PDF ↓
cryptography, security, privacy, cybersecurity

A Conditional Timing Protection Level: Holdover-Limited Undetected Time Error Under GNSS Spoofing Chakshu Baweja

arXiv:2606.24210v1 [eess.SP] 23 Jun 2026

Ashforde OÜ [email protected] Abstract—A GNSS timing receiver under spoofing has no nominal-geometry fault to bound with position-domain receiver autonomous integrity monitoring: the threat is a slow, commonmode pull of served clock time that the receiver’s own timeaccuracy flag need not reveal. We make three contributions of graded strength. First, a field measurement: solving the receiver clock-solution trajectory from the raw L1 pseudoranges, the receiver’s clean dual-band position, and broadcast ephemeris, we show that a recorded over-the-air spoof in the public JammerTest 2024 campaign pulled a survey-grade u-blox ZED-F9P by roughly 1.01 ms of served time while the receiver reported a self-assessed time accuracy of at most 51 ns, a claim-versus-reality gap near 2 × 104 . Second, an impossibility observation: against an adversary free to choose the ramp rate, no finite unconditional bound on undetected time error exists under a single selfreferential clock-aided monitor, because a ramp slow enough to keep the disciplined reference in lock-step (equivalently, below a sequential test’s reference value) is never alarmed while the integrated error grows without limit. A finite guarantee is therefore necessarily conditional. Third, the conditional bound itself: the Timing Protection Level (TPL), equal to a modelfree monitor’s static detectability floor plus the oscillator’s coast uncertainty over the detection latency, holds given detection by an independent cross-satellite consistency check that a coherent spoofer does not drive in lock-step. Each term is a closed form over a primitive verified separately in the open Kshana simulator, so the sum is reproducible by hand. Calibrated on the recorded attack, the holdover budget is 114 ns at a one-second recovery and 458 ns even at a 60-second coast, between 2200 and 8800 times below the 1.01 ms the receiver silently accepted; on this slow ramp a clock-aided sequential test alone gives essentially no protection (it alarms only after ∼993 µs), whereas the model-free consistency monitor crosses its alarm during the spoofer’s ramp, minutes before the capture. We are explicit about the boundary: the bound is calibrated on real data but not independently validated against ground-truth field error, it carries no aviationstyle integrity-risk budget, and its long-coast value is governed by the oscillator’s long-tau red-noise floor and is reported as a swept band rather than a single scalar. The simulator, the bound, and the calibration example are open source under AGPL-3.0.

I. I NTRODUCTION Critical infrastructure increasingly takes its time from GNSS. Power grids timestamp phasor measurements, cellular base stations align frames, financial venues stamp trades, and data-center fabrics order events, all to a common clock that is, in practice, a GPS-disciplined oscillator distributed over packet networks by protocols such as IEEE 1588 PTP [23], [26], [25], [27]. The same property that makes GNSS attractive, a free

global time reference, makes it a single point of failure now recognised at the policy level [24]: an attacker who controls the signal controls the clock, and the feasibility of doing so over the air is well established [3], [4]. The defensive literature is dominated by two framings that do not, on their own, protect a timing user. The first is spoofing detection: a large body of work raises an alarm when the received signal looks inauthentic, using power, correlationpeak, angle-of-arrival, or clock-consistency cues [2], [3], [5], [7], [8], [9]. Detection answers “is something wrong?” but not “how wrong can the time be before I would have noticed?” The second is integrity, formalised for aviation as a protection level: a statistical bound on position error that, with quantified probability, is not exceeded without an alarm [10], [11], [12]. Protection levels are the right shape of guarantee, but the classical construction, receiver autonomous integrity monitoring (RAIM) and its advanced multi-hypothesis descendants, bounds a position error produced by anomalous ranges. A time-synchronization spoofer of the coordinated, coherent class [2], [4] produces no such fault: it can drive every satellite coherently, hold a clean four-satellite fix, and leave the position essentially stationary while it walks the clock. A positiondomain solution with a floating clock absorbs the commonmode pull entirely into the clock estimate, leaving no range residual, so position-domain T-RAIM has nothing to bound. (An authentication layer such as Galileo OSNMA [13] attacks the problem upstream, at the signal; it is complementary to, and does not replace, a receiver-side error bound.) A timing user needs a bound on the time error that can be served without detection, given the monitor in place and the oscillator on the bench. That quantity is the subject of this paper. We call it the Timing Protection Level (TPL), and we make three contributions of graded strength. First, a field measurement of the gap (Section III). Using a recorded over-the-air spoof from JammerTest 2024 [1], we solve the receiver clock-solution trajectory from raw pseudoranges and show a real ∼1.01 ms pull of served time while the receiver’s own reported time accuracy stayed at or below 51 ns. The integrity flag was not merely optimistic; it was wrong by four orders of magnitude. This is the problem the TPL exists to address, observed in the field rather than asserted. Second, an impossibility observation (Section IV). We

show that no finite unconditional TPL exists: against an adversary free to choose the ramp rate, a sufficiently slow common-mode pull keeps the disciplined reference corrupted in lock-step and is never alarmed, so the integrated undetected error is unbounded. Any finite guarantee must be conditional, either on a detectable ramp rate or on a cross-check that does not depend on the disciplined reference. Third, the conditional bound and its real calibration (Sections IV–VII). Given detection by a model-free crosssatellite consistency monitor, the served error is holdoverlimited to the sum of the monitor’s static detectability floor and the oscillator’s coast 1-sigma over the detection latency. Each term is a closed form over a primitive verified independently: a k-sigma offset floor, a van Loan coast variance calibrated to the measured Allan deviation [16], [17], and a CUSUM timeto-alarm [18]. Calibrated on the recorded attack, the bound runs from 114 ns at a one-second latency to 458 ns at a 60second coast, between 2200 and 8800 times below the 1.01 ms. We are explicit about the limits: the bound is calibrated, not field-validated; it carries no integrity-risk-per-hour budget; and its long-coast value is reported as a band swept over the oscillator’s long-tau floor, not a single number. II. R ELATED WORK Spoofing feasibility and detection. The feasibility of coordinated over-the-air spoofing is established by Humphreys et al. [3] and, from the security side, by Tippenhauer et al. [4]; Psiaki and Humphreys [2], and the surveys of Jafarnia-Jahromi et al. [8] and Schmidt et al. [9], catalogue the detection cues, while Akos [5] gives a receiver-level AGC defence and Montgomery et al. [6] a multi-antenna one. These methods decide whether an attack is present. The TPL consumes such a detector as a component, its detectability floor and its timeto-alarm, and turns the detector into a quantitative error bound. Integrity and protection levels. RAIM [10], weighted RAIM [11], and advanced RAIM [12] bound position error under a fault hypothesis with a quantified missed-detection probability. The TPL borrows the protection-level shape, a bound not exceeded without an alarm, but retargets it from a range fault to a coherent clock-time pull. We are explicit (Section VII) that, unlike an aviation protection level, the TPL as constructed here does not carry an integrity-risk-per-hour budget. Holdover and clock characterisation. The behaviour of a free-running oscillator over a coast interval is standard metrology: the Allan deviation [15], [16] characterises the noise, and the phase-error variance over a coast is obtained from the clock’s power spectral densities via van Loan’s matrix-exponential integration [17]. The TPL’s coast term is exactly this holdover variance, evaluated over the detection latency and calibrated to the measured Allan deviation of the receiver under test. Secure time transfer. On the theory side, Narula and Humphreys [14] establish necessary and sufficient conditions for secure two-way clock synchronization and show that oneway time transfer, and IEEE 1588 PTP [27] as specified,

cannot be secured against a replaying adversary. Their result is a formal theorem; our impossibility argument is a weaker receiver-side analogue in spirit: for an unconstrainedrate common-mode ramp under a self-referential clock-aided monitor of the class above, no finite bound on undetected time error exists. Timing-spoofing impact and sequential detection. The downstream consequence is concrete: Shepard et al. [20] show GPS spoofing driving phasor measurement units out of their grid timing budget. For the detector itself, Page’s CUSUM [18] is the classical minimum-latency test for a change in a monitored mean, set in the broader sequential change-detection theory of Basseville and Nikiforov [19]; the TPL uses its time-to-alarm to set the coast interval. To our knowledge, no prior work combines an impossibility argument for the unconditional case with a closed-form conditional bound on undetected time error, calibrated on a recorded over-the-air spoof with a self-consistency-checked clock-solution solver. III. T HE PROTECTION - LEVEL GAP, MEASURED Dataset and method. JammerTest 2024 is a Norwegian live-sky campaign that subjected commercial receivers to controlled jamming, spoofing, and meaconing at Bleik/Andøya, Norway (69.275◦ N, 15.968◦ E); we use a public dataset of survey-grade multi-band u-blox ZED-F9P recordings made at the event [1]. The ZED-F9P is a high-precision RTK positioning module with a TCXO reference; we treat its reconstructed clock solution as the served time a timing user would consume. The timing-grade sibling (ZED-F9T) adds receiver clock-RAIM, an additional defence that the coherent threat model of this paper would also have to defeat. We use scenario 2.1.1, a real over-the-air spoof, and scenario 3.1.1, a meaconing (record-and-rebroadcast) replay. The receiver does not log its internal clock solution, so we reconstruct it. For each epoch we solve the receiver clocksolution offset from true GPS time using the recorded L1 pseudoranges, the receiver’s own clean dual-band position held fixed, and IGS broadcast ephemeris (IS-GPS-200 Keplerian propagation with satellite-clock, relativistic, and Sagnac corrections) [21], [22]. For a static timing receiver this clocksolution offset is the served-time error a downstream user would consume, up to the disciplining loop. We reference it to the holdover extrapolation of the clean pre-attack segment, so that natural oscillator drift is removed and the residual is the attack-induced pull rather than free-running bias. We check the solver for self-consistency before trusting it: in clean epochs the per-satellite clock estimates agree to about 7 to 8 metres (∼22 to 26 ns), and a deliberate time-offset sweep minimises the cross-satellite residual at zero offset, confirming the time tag. These are internal-consistency checks, not a comparison against an independent absolute truth; the headline pull is a differential excursion against the clean holdover extrapolation, so it is robust to the constant L1-only, broadcastephemeris biases (uncorrected ionosphere, troposphere, and multipath) that this solution does not model. That same uncorrected noise inflates the clean cross-satellite spread, which

Model-free monitor: cross-satellite consistency under attack

Spoof 2.1.1: served-time error vs receiver-reported accuracy

time error (ns, log)

cross-sat clock consistency (ns, log)

∼ 1 ms capture

106 105 104

solved served-time error receiver-reported accuracy (tAcc) 1 μs timing budget

103 102 101

0

10

20 time (min)

30

40

Fig. 1. Recorded over-the-air spoof (JammerTest 2024, scenario 2.1.1). The served-time error solved from the raw pseudoranges (red) reaches a sustained ∼1.01 ms at capture, while the receiver’s self-reported time accuracy (tAcc, blue) stays at or below 51 ns throughout. The dashed line is a 1 µs timing budget. The receiver’s own integrity flag does not reveal the attack. TABLE I C LAIMED VERSUS ACTUAL INTEGRITY ON THE RECORDED ATTACKS .

Served time error (actual) Receiver claimed accuracy Claim-vs-reality ratio Clean x-sat consistency floor Attack x-sat consistency (peak) (∼ floor multiple) Model-free 5σ alarm Clock-aided CUSUM protection

Spoof 2.1.1

Meacon 3.1.1

∼1.01 ms ≤ 51 ns ∼2 × 104 22 ns ms-scale > 104 × yes (during ramp) 1× (∼993 µs)

n/a ≤ 27 ns n/a 26 ns 1114 ns ∼43× yes (at replay) n/a

makes the spread an upper bound on the monitor floor σmon and hence makes the detectability-floor term conservative; the spread is a differential statistic and does not by itself bound the oscillator’s temporal instability, which the coast term takes from the measured Allan deviation separately (Section V). The ∼1.01 ms pull is four orders of magnitude above this ∼22 ns noise, so the noise neither materially affects the gap nor undermines the floor’s conservatism. Only after this check do we read the attack segment. The gap. Figure 1 shows the result. The solved served-time error (red) rises from the clean tens-of-nanoseconds floor to a sustained ∼1.01 ms at full spoofer capture (the solved value is not meaningful beyond roughly three significant figures, given the ∼22 ns solver floor). Over the same interval the receiver’s self-reported time accuracy (blue, the tAcc field of its navigation solution) never exceeds 51 ns. The receiver believed it was serving time good to 51 ns while it was wrong by more than a millisecond, a claim-versus-reality ratio of order 2×104 (Table I). For a power-grid or telecom timing user with a 1 µs budget [25], [26], that is the difference between in-spec and a thousandfold violation served with a green flag. Why the flag fails, and what catches the attack. The attack is a common-mode time push: a slow power ramp that drags the tracked satellites together. Position stays essentially stationary, so there is no geometric residual, and the receiver’s

spoofing 2.1.1 meaconing 3.1.1

106 105 104 103 5σ alarm (110 ns)

102 101

clean floor 22 ns

0

10

20 time (min)

30

40

Fig. 2. The model-free monitor signal. Cross-satellite clock consistency (median per bin) for the spoofing and meaconing scenarios. The clean floor is ∼22 ns (dotted); under attack the binned median rises by one to two decades and the peak reaches millisecond scale, crossing the 5σ alarm (dashed) during the ramp. The receiver’s own flag, by contrast, stays nominal.

tAcc is a formal covariance that a coherent pull leaves small by construction, requiring no active effort from the spoofer. What a real over-the-air spoofer cannot keep perfectly selfconsistent is the agreement between every channel’s clock solution and an independent cross-check: a physical transmitter induces small differential errors, so the attack is not perfectly coherent. Figure 2 plots the cross-satellite clockconsistency statistic for both scenarios. The clean floor is about 22 ns; under attack it rises by orders of magnitude to a millisecond-scale peak, crossing a 5-sigma (110 ns) alarm during the spoofer’s ramp (about 17 min in), minutes before the ∼1 ms capture completes (about 21 min in). This modelfree monitor compares satellites against each other rather than against the (corruptible) disciplined reference, so it does not share the slow-ramp blind spot of Section IV: it is precisely the observable the conditional TPL is built on, and the reason the impossibility does not leave the user defenceless. The served error at the instant of the alarm depends on the holdover reference used to define it (several hundred to a few thousand nanoseconds here, two to three decades below the capture; the measured 310 to 3700 ns range is quantified in Section VI); we therefore report the detection by its robust, reference-free signature (the 5σ consistency crossing and its timing) rather than a single reference-dependent served-error scalar. IV. T HE T IMING P ROTECTION L EVEL Threat model. The adversary transmits a counterfeit constellation that the victim tracks in place of the authentic signals, drives the satellites coherently, shapes power and code phase to hold the receiver’s internal integrity flag green, and chooses the rate of the served-time ramp. The defender controls (i) a model-free cross-satellite consistency monitor with clean residual standard deviation σmon and a k-sigma alarm, and (ii) a known oscillator with power spectral densities (qwf , qrw , qdrif t ) for white-FM, random-walk-FM, and drift. No finite unconditional bound on the served error. A monitor that references served time to the receiver’s own

coasted clock has a fundamental limit while that clock is still being disciplined. The coast reference is only trustworthy from the instant disciplining stops; while the loop remains slaved to the (spoofed) signal, a ramp slower than the loop’s correction is absorbed and the self-referential residual stays small. Equivalently, a sequential test on the rate of that residual never alarms once the per-sample standardized increment falls at or below the reference value kref . An adversary who ramps slowly enough therefore corrupts the reference in lock-step, raises no alarm, and lets the integrated served-time error grow without bound. The escape is not a static level test against a frozen reference, which catches any offset above kσ however slowly it was reached; but freezing the reference requires knowing when, which is precisely the detection the slaved monitor cannot supply. Hence there is no finite worst-case served-time error against an unconstrained-rate common-mode ramp under a self-referential clock-aided monitor alone, by which we mean any test whose decision statistic is a function of the disciplined-reference residual standardized by a fixed clean scale; detectors with unbounded memory or rate-of-rate statistics are a separate question we do not address. This is why a finite guarantee must be conditional, and why the modelfree cross-check of Section III, which does not depend on the disciplined reference, is the trigger the finite bound relies on: in the recorded attack it fired on the differential leakage a coherent spoofer did not suppress. The conditional bound is a holdover budget. The two monitors play distinct roles, and the two must not be conflated. The model-free cross-satellite monitor is the detection trigger; how much served error accrues before it fires is attackdependent and reference-sensitive, and for a slow ramp is exactly the unbounded quantity above (Section VI). The TPL bounds what happens after that trigger, once the receiver freezes its reference and coasts: the residual undetected error is a static detectability floor plus the oscillator’s coast over the recovery window, TPL(τdet ) =

k σmon | {z }

detectability floor

+ K σcoast (τdet ) , {z } |

(1)

holdover over latency

so it is a holdover budget: how far the served time can drift undetected while the oscillator carries the clock through a detection-and-recovery latency τdet . The first term is the largest served-time offset that the check against the now-frozen coast (clean residual σmon , here the ≈22 ns clock-solution consistency) does not flag at k sigma. The two terms are commensurable because both measure served-time error after the reference is frozen: before freezing, the reference is slaved to the spoofed signal and a common-mode pull is invisible (the regime of the impossibility above); once frozen at detection, the reference no longer moves with the attack, so any further common-mode offset reappears as a residual against it. The first term is then a genuine served-error floor, not merely a differential detection threshold, and the second is the servedtime drift the oscillator accrues over the same window; adding them is therefore a budget on one quantity, not a mix of two. Under a Gaussian clean-residual model, k = 5 would

correspond to a per-test false-alarm probability of ≈ 3 × 10−7 one-sided (≈ 6 × 10−7 for a two-sided consistency alarm); we quote this only as an idealisation, because the real residual has heavier, time-correlated tails (Section VII), and we do not convert it to an integrity-risk-per-hour (that would require the full residual distribution, the test rate, and a target risk allocation we do not claim, Section VII). The second term is the oscillator’s own phase uncertainty accumulated over the detection latency τdet , scaled by a coverage factor K; during this interval the holdover prediction, not the spoofed signal, is the trustworthy time. The coast 1-sigma is the closed-form integral of the clock state-space model [17], r τ3 τ5 qwf τ + qrw + qdrif t , (2) σcoast (τ ) = 3 20 with the PSDs obtained from the measured Allan deviations via qwf = σy2 (1) (fractional-frequency to phase), the randomwalk-FM level from the long-tau slope, and qdrif t a randomrate term (deterministic drift is removed by the holdover reference) [16]. The TPL is a linear sum of the two terms, reproducible by hand: at τdet = 1 s the coast is σy (1)·1 s = 2.8 ns on top of the ≈111 ns floor, giving 114 ns. We report the nominal budget at K = 1 and state the coverage scaling explicitly: the K = 5 TPL at a 60 s latency is 1844 ns (the floor is not scaled by K), still 548× below the observed pull. Detection latency. The latency τdet can be set by the sequential detector rather than assumed. For a one-sided CUSUM with reference value kref and decision interval h facing a sustained standardized shift z per sample at cadence ∆t, the accumulator Sn = max(0, Sn−1 + z − kref ) first exceeds h at    h τdet = + 1 ∆t (z > kref ), (3) z − kref and never alarms for z ≤ kref , which is exactly the slow-ramp limit above. This sets a useful τdet only when the clock-aided test actually fires; on the slow ramp of the calibrated attack it does not (Section VI), so there the latency is set by the model-free monitor’s crossing instead. In the calibration we therefore both sweep τdet as a design parameter (Table II) and report the latency measured by running the monitors on the real trajectory (Section VI). Reproducibility of the construction. Each term of (1) is a closed form over a primitive that the open Kshana simulator [28], an AGPL-3.0 PNT-resilience library, verifies separately: the k-sigma floor against its phase-noise model, the coast (2) against the NIST Allan stack [16], and the CUSUM latency (3) against the running detector. A reviewer can reproduce the bound by hand from the three inputs. We claim reproducibility of the composition, which is weaker than an end-to-end validation of its coverage, and we keep that distinction explicit. V. R EAL - DATA CALIBRATION We calibrate (1) on scenario 2.1.1. The receiver clock’s overlapping Allan deviation, measured on the clean pre-attack segment, is 2.8 × 10−9 at τ = 1 s (Figure 3). Because the

Computed TPL versus detection latency, by oscillator class

Measured receiver-clock Allan deviation (clean segment) measured (clean clock) white-FM ∝ τ−1/2

2 × 10−9 10−9 6 × 10−10 4 × 10−10 101

100

τ (s, log)

Timing Protection Level (ns, log)

overlapping ADEV (log)

3 × 10−9

TCXO (this receiver, measured) OCXO (typical) Rubidium (typical)

106 105 104 103 102

receiver claimed 51 ns

100 Fig. 3. Measured overlapping Allan deviation of the reconstructed receiver clock on the clean segment (squares), with a τ −1/2 white-FM line shown only for reference (dashed). The measured short-τ slope is steeper (near τ −0.9 , measurement-noise-limited), so the 1-second value 2.8 × 10−9 is used as a conservative scalar upper bound on σy (1), not as evidence of a white-FM region; the curve turns up beyond τ ≈ 16 s, and the long-τ red-noise floor, below the resolution of the few-minute clean window, is swept as a band. TABLE II C ALIBRATED CONDITIONAL TPL VERSUS DETECTION LATENCY ( SCENARIO 2.1.1). T HE BAND IS THE ±1- DECADE RED - NOISE - FLOOR SWEEP ; THE MARGIN USES THE NOMINAL . Latency

TPL (nom.)

Band [low, high]

Margin

1s 5s 10 s 30 s 60 s

114 ns 119 ns 128 ns 200 ns 458 ns

[114, 115] ns [118, 128] ns [121, 158] ns [143, 389] ns [223, 1205] ns

8849× 8468× 7886× 5048× 2208×

deviation is computed from the pseudorange-derived clock estimate, the short-τ region is dominated by measurement (phase) noise rather than oscillator white-FM: the measured slope from 1 to 4 s is near τ −0.9 , steeper than the τ −1/2 of true white-FM, and the curve bottoms out near τ = 16 s before turning up. We therefore do not claim a clean whiteFM region; we use σy (1 s) only as a conservative scalar upper bound on the oscillator’s white-FM level, since measurement noise can only inflate it. This makes the short-latency coast term conservative, and the long-τ behaviour is carried by the swept red-noise band (below), not by this scalar. The monitor floor is the measured clean cross-satellite consistency σmon = 22.1 ns, and we set k = 5, giving a detectability floor of ≈111 ns (the white-FM term lifts 5 × 22.1 ns slightly). The clean clock drift is 1618 ns/min (27 ns/s), a useful holdover sanity figure. The white-FM PSD is set from the conservative σy (1 s) scalar above. The long-tau random-walk and drift PSDs cannot be observed in a clean window of only a few minutes, so we treat them as the dominant uncertainty and sweep them (Section VII). Table II reports the resulting TPL and its band versus detection latency. VI. R ESULTS The holdover budget is small relative to the threat. Once the model-free monitor has flagged the attack and the receiver

uncontrolled pull (1.01 ms)

101 detection latency (s, log)

102

Fig. 4. Computed TPL versus detection latency for three oscillator classes at a common ≈111 ns monitor floor. Only the TCXO is measured; the OCXO and Rb curves are model extrapolations from class-typical PSDs. The dashed line is the 1.01 ms uncontrolled pull; the dotted line is the receiver’s claimed 51 ns. Every curve sits orders of magnitude below the uncontrolled capture across the plotted range.

coasts, the residual undetected drift stays tightly bounded: 114 ns at a one-second recovery and, even at a pessimistic 60second coast, a nominal 458 ns (band high 1205 ns). At that 60-second row alone the budget runs from 2208× (nominal) down to 839× (band high) below the 1.01 ms a greenflagged receiver accepted; the worst case we report anywhere is therefore 839×, still nearly three orders of magnitude of margin. This budget is computable in advance from the monitor floor and the oscillator on the bench. It is not, and we do not present it as, a bound on how much error accrues before detection: that pre-detection accrual is the unbounded slow-ramp quantity of Section IV, and in this recording it grew into the microsecond range before the model-free monitor’s 5σ crossing (its exact value is reference-dependent, below). The TPL bounds the recovery phase; the model-free monitor bounds the detection phase empirically; neither alone is an unconditional guarantee, and the paper claims neither. Oscillator class sets the achievable bound (model extrapolation). Figure 4 sweeps the TPL against detection latency for three oscillator classes holding the same ≈111 ns monitor floor. Only the TCXO curve is calibrated on measured data; the OCXO (266 ns at a 300 s coast) and rubidium (126 ns) curves are model extrapolations using class-typical PSDs, not measurements, and inherit the synthesised long-tau floor that Section VII says must be measured per unit. With that caveat, the qualitative message for a system integrator holds within the model: under the same monitor, a better holdover oscillator buys a tighter bound at long detection latency, and the curve says by how much. The two monitors, run on the real trajectory. The clockaided sequential test fails exactly as the impossibility predicts. Running a CUSUM (kref = 0.5, h = 5) on the solved clock trajectory (quadratic holdover fit on a clean sub-segment, standardized by the robust clean sigma, with a held-out clean window verified to raise no false alarm) does not alarm until

VII. L IMITATIONS AND HONESTY BOUNDARY We state the limits of the claims precisely. No integrity-risk budget. An aviation protection level is tied to a target integrity risk (for example 10−7 /hr) from which the σ-multipliers are derived. The TPL as constructed here is not: k = 5 sets a per-test false-alarm probability under a Gaussian assumption, but we do not assert a residual distribution in the tails, a test rate, or a missed-detection probability for the detection event on which the bound is conditioned. The TPL is a calibrated, reproducible engineering bound, not a certified integrity guarantee, and we do not use the word “certified” for it. The model-free monitor’s missed-detection is the critical assumption. The entire finite guarantee is conditional on the cross-satellite monitor detecting the attack, and that monitor’s

TPL is floor-governed at long coast (reported as a band) ±1 decade red-noise floor nominal

TPL (ns, log)

∼560 s after onset, by which point ∼993 µs of served error has already accrued: a protection factor (uncontrolled-capture error divided by error-at-alarm) of 1×, i.e. essentially none. The slow power ramp of 2.1.1 keeps the per-sample increment near the reference value, so the clock-aided test never gets ahead of the attack. The model-free cross-satellite consistency monitor of Figure 2 does not share this blind spot: it crosses its 5σ alarm during the ramp (about 17 min in, against a capture completing around 21 min), while the served error is still two to three decades below the ∼1 ms capture. The served error at that crossing is sensitive to the holdover reference used to define it (we measured ∼310 to ∼3700 ns across defensible quadratic and linear fits), which is why we headline the robust reference-free signature, the 5σ crossing and its timing, and not a single served-error scalar; we report the sensitivity rather than tuning for the best number. The slow-ramp limit, quantified. The slow-ramp limit of Section IV has a concrete calibrated threshold. A clock-aided CUSUM detects a sustained common-mode ramp only when its per-sample standardized increment exceeds the reference value, so the minimum detectable ramp rate is ṙmin = kref σ/∆t, where σ is the scale that standardizes the test. Taking σ equal to the clean clock-solution consistency σmon = 22.1 ns (the two clean scales agree to within their estimation error here) and kref = 0.5 at 1 Hz gives ≈ 11 ns/s: a coherent pull slower than that is invisible to the clock-aided test indefinitely, yet still accrues ∼955 µs per day, far outside any infrastructure timing budget over a sustained operation. This is the impossibility made numeric, and the recorded attack confirms it: the clock-aided CUSUM gave 1× protection (Section above). The protection therefore cannot rest on the clockaided test alone. The model-free consistency monitor does not share the limit, because it keys on the differential inconsistency that an imperfectly coherent spoofer leaks rather than on the corruptible reference; in the recorded attack it crossed its 5σ alarm during the ramp and reached a millisecond-scale peak (and a 1114 ns peak on the meaconing replay). Its own misseddetection probability against a coherence-optimising adversary is, however, uncharacterised, and that, not the clock-aided floor, is the assumption the guarantee rests on (Section VII).

104

103

102

100

101 detection latency (s, log)

102

Fig. 5. The TPL is floor-governed at long coast. Sweeping the long-tau red-noise floor ±1 decade in PSD (shaded) leaves the short-latency bound essentially fixed but widens it materially at long detection latency. The bound must be reported as a band; the critical input is the oscillator’s measured long-tau stability.

missed-detection probability against a coherence-optimising adversary is not characterised here. In the recorded attack the spoofer was imperfectly coherent and leaked a large differential inconsistency, so the monitor fired; we say it does not suppress that leakage in this recording and in current spoofer hardware, not that it cannot. A multi-antenna or carefully calibrated transmitter, the inverse of the antennadiversity defence of Montgomery et al. [6], could drive the differential statistic down at any ramp rate, which would move the unbounded slow-ramp regime up to the modelfree monitor. Characterising that monitor’s missed-detection floor against an optimising adversary, and its slowest reliably detectable ramp, is the necessary next step. The clock-aided test alone gives no finite bound. As Section IV shows, a sufficiently slow ramp evades the clockaided test entirely; Section VI quantifies its floor at ≈ 11 ns/s and confirms it on the recording (a 1× protection factor). The clock-aided sequential test is therefore a latency-tightener where it applies, not a stand-alone defence. The bound is floor-governed at long coast. The longtau red-noise PSDs (qrw , qdrif t ) are not observable in a fewminute clean window, so the coast term at large τdet inherits their uncertainty. We report the TPL as a band swept ±1 decade in PSD over the red-noise floor (Table II, Figure 5); ±1 decade is a working choice, and a unit’s true random-walkFM and drift can span more than a decade across temperature, so the band is a guide, not a guarantee. A defensible per-unit figure requires the oscillator’s measured long-tau stability; the band, not the nominal scalar, is the appropriate object to report. Verified primitives are not a validated bound. The TPL is a modelled composition of verified primitives, where “verified” means each closed form was checked against its own reference model, not against ground truth. Its inputs are measured from a real recorded attack, and each component term is checkable in isolation, but the end-to-end bound has not been validated against an independent ground-truth time

error across many attacks and receivers. We claim a calibrated, reproducible construction, not field-proven coverage. Demonstrating empirical coverage across a receiver and attack population is the necessary next step and is outside this paper. Reconstructed clock solution, not steered PPS. We solve the receiver’s clock-solution offset, not its steered hardware PPS output, which the dataset does not expose. For a static timing receiver the two coincide up to the disciplining loop; a direct PPS measurement would settle the small residual difference. Single campaign, two scenarios. The calibration rests on one campaign, one receiver, and two attack scenarios. The ∼1.01 ms gap and the monitor behaviour are real and reproduced by two independent estimates, but generalisation to other receivers, oscillators, and attack waveforms is asserted by construction, not yet measured. VIII. C ONCLUSION A GNSS timing receiver’s self-reported integrity is not a safety bound: on a recorded over-the-air spoof, a surveygrade receiver served a ∼1.01 ms time error while claiming 51 ns, a gap of order 2 × 104 . We argued that no finite unconditional bound on undetected time error exists against an unconstrained-rate common-mode ramp under a self-referential clock-aided monitor, so the achievable guarantee is necessarily conditional, and we gave that conditional bound: the Timing Protection Level, a holdover budget equal to a detectability floor plus the oscillator’s coast over the detection-and-recovery latency, each a closed form over a separately verified primitive. Calibrated on the recorded attack, the budget is 114 ns at a one-second recovery and 458 ns (band [223, 1205] ns) at a 60-second coast, thousands of times below the uncontrolled capture. The recording bears out the structure: the clock-aided sequential test alone gave essentially no protection on the slow ramp (∼993 µs, 1×), while the model-free consistency monitor crossed its alarm during the ramp, before the uncontrolled capture. We are explicit that the bound is calibrated rather than field-validated, carries no integrity-risk budget, is conditioned on a model-free monitor whose missed-detection against an optimising adversary we do not characterise, and must be read as a band at long coast. The Kshana simulator [28], the bound, the calibration example, and the figure pipeline are open source under AGPL-3.0 so that the construction can be reproduced and the next steps, the monitor’s slowest detectable ramp and empirical coverage across receivers and attacks, can be carried out in the open. R EPRODUCIBILITY The TPL primitives, the CUSUM detector, the Allandeviation stack, and the calibrated example (cargo run --example tpl_jammertest) are part of the open Kshana simulator [28] under AGPL-3.0 and reproduce Table II exactly. The clock-solution solver and the figure pipeline that derive the real-data figures from the recordings accompany the paper rather than the core library. The JammerTest 2024

recordings are distributed by their authors under GPL-3.0-orlater [1] and are not included here; only the scalars solved from them, with the verification described in Section III, are reproduced. R EFERENCES [1] M. I. Sayyaf, M. Ortiz, and V. Renaudin, “GNSS dataset under jamming, spoofing, and meaconing conditions (JammerTest 2024),” dataset, Université Gustave Eiffel, Zenodo, 2025, GPL-3.0-or-later. Version DOI 10.5281/zenodo.15911589 (concept DOI 10.5281/zenodo.15910563). [Online]. Available: https://doi.org/10.5281/zenodo.15911589 [2] M. L. Psiaki and T. E. Humphreys, “GNSS spoofing and detection,” Proc. IEEE, vol. 104, no. 6, pp. 1258–1270, 2016. [3] T. E. Humphreys, B. M. Ledvina, M. L. Psiaki, B. W. O’Hanlon, and P. M. Kintner, “Assessing the spoofing threat: development of a portable GPS civilian spoofer,” in Proc. ION GNSS, 2008. [4] N. O. Tippenhauer, C. Pöpper, K. B. Rasmussen, and S. Čapkun, “On the requirements for successful GPS spoofing attacks,” in Proc. ACM Conf. Computer and Communications Security (CCS), 2011, pp. 75–86. [5] D. M. Akos, “Who’s afraid of the spoofer? GPS/GNSS spoofing detection via automatic gain control (AGC),” NAVIGATION, vol. 59, no. 4, pp. 281–290, 2012. [6] P. Y. Montgomery, T. E. Humphreys, and B. M. Ledvina, “Receiverautonomous spoofing detection: experimental results of a multi-antenna receiver defense against a portable civil GPS spoofer,” in Proc. ION Int. Tech. Meeting (ITM), 2009. [7] F. Dovis, GNSS Interference Threats and Countermeasures. Norwood, MA: Artech House, 2015. [8] A. Jafarnia-Jahromi, A. Broumandan, J. Nielsen, and G. Lachapelle, “GPS vulnerability to spoofing threats and a review of antispoofing techniques,” Int. J. Navig. Obs., vol. 2012, art. 127072, 2012. [9] D. Schmidt, K. Radke, S. Camtepe, E. Foo, and M. Ren, “A survey and analysis of the GNSS spoofing threat and countermeasures,” ACM Comput. Surv., vol. 48, no. 4, art. 64, pp. 1–31, 2016. [10] R. G. Brown, “A baseline GPS RAIM scheme and a note on the equivalence of three RAIM methods,” NAVIGATION, vol. 39, no. 3, pp. 301–316, 1992. [11] T. Walter and P. Enge, “Weighted RAIM for precision approach,” in Proc. ION GPS, 1995. [12] J. Blanch et al., “Baseline advanced RAIM user algorithm and possible improvements,” IEEE Trans. Aerosp. Electron. Syst., vol. 51, no. 1, pp. 713–732, 2015. [13] I. Fernández-Hernández, V. Rijmen, G. Seco-Granados, J. Simon, I. Rodrı́guez, and J. D. Calle, “A navigation message authentication proposal for the Galileo open service,” NAVIGATION, vol. 63, no. 1, pp. 85–102, 2016. [14] L. Narula and T. E. Humphreys, “Requirements for secure clock synchronization,” IEEE J. Sel. Topics Signal Process., vol. 12, no. 4, pp. 749–762, 2018. [15] D. W. Allan, “Statistics of atomic frequency standards,” Proc. IEEE, vol. 54, no. 2, pp. 221–230, 1966. [16] W. J. Riley, Handbook of Frequency Stability Analysis, NIST Special Publication 1065. Boulder, CO: National Institute of Standards and Technology, 2008. [17] C. F. Van Loan, “Computing integrals involving the matrix exponential,” IEEE Trans. Autom. Control, vol. 23, no. 3, pp. 395–404, 1978. [18] E. S. Page, “Continuous inspection schemes,” Biometrika, vol. 41, no. 1/2, pp. 100–115, 1954. [19] M. Basseville and I. V. Nikiforov, Detection of Abrupt Changes: Theory and Application. Englewood Cliffs, NJ: Prentice Hall, 1993. [20] D. P. Shepard, T. E. Humphreys, and A. A. Fansler, “Evaluation of the vulnerability of phasor measurement units to GPS spoofing attacks,” Int. J. Critical Infrastructure Protection, vol. 5, no. 3–4, pp. 146–153, 2012. [21] Global Positioning System Directorate, “Navstar GPS space segment / navigation user segment interfaces,” Interface Specification IS-GPS-200, Rev. N, 2022. [22] E. D. Kaplan and C. J. Hegarty, Understanding GPS/GNSS: Principles and Applications, 3rd ed. Norwood, MA: Artech House, 2017. [23] J. A. Volpe National Transportation Systems Center, “Vulnerability assessment of the transportation infrastructure relying on the Global Positioning System,” U.S. Department of Transportation, 2001.

[24] Executive Office of the President, “Executive Order 13905: strengthening national resilience through responsible use of positioning, navigation, and timing services,” Federal Register, vol. 85, no. 32, p. 9359, Feb. 2020. [25] IEC/IEEE, “Measuring relays and protection equipment – Part 118-1: synchrophasor for power systems – measurements,” IEC/IEEE 60255118-1:2018. [26] International Telecommunication Union, “Timing characteristics of primary reference time clocks,” ITU-T Recommendation G.8272, 2018. [27] IEEE, “IEEE standard for a precision clock synchronization protocol for networked measurement and control systems,” IEEE Std 1588-2019, 2020. [28] C. Baweja, “Kshana: an open, reproducible PNT-resilience simulator,” software, version 0.19.0, AGPL-3.0-only, 2026. [Online]. Available: https://github.com/AshfordeOU/kshana

Record · ID 303157 · SHA-256 696ac41aa8de53d2
Retrieved via Conceptio — every document is proof-bundled with source, license, and retrieval metadata.