Samouczek 3 — Odporność kwantowa a klasyczna GNSS (zwieńczenie)
Kinds: spoof + hybrid · Scenariusze: scenarios/spoof-attack.toml, scenarios/hybrid-pnt.toml (kopie dydaktyczne: scenarios/security.toml, scenarios/hybrid.toml) · Poziom trudności: średniozaawansowany · ~35 min
Zwieńczenie. Uruchomisz scenariusz detektora spoofingu i pełny zestaw fuzji PNT (pozycjonowania, nawigacji i czasu) oraz nauczysz się czytać razem bezpieczeństwo, integralność i nawigację zliczeniową — cała teza: inercja kwantowa i czas optyczny dają odporność, którą odmowa GNSS (globalnego systemu nawigacji satelitarnej) w przeciwnym razie by odebrała.
Część A — Bezpieczeństwo: wykrywanie spoofingu czasu#
Atakujący wprowadza powoli narastający fałszywy czas GNSS (0,1 ns/s, od t = 60 s). Odbiornik porównuje zadeklarowany czas z przewidywaniem własnego zegara w dryfie i zgłasza spoofing, gdy rozbieżność przekracza granicę detekcji. Detektorem jest dwustronny test energii χ²₁ / Neymana–Pearsona przy prawdopodobieństwie fałszywego alarmu P_fa = 0,01; wskaźnikiem jakości Security jest 1 − P_md (jeden minus prawdopodobieństwo niewykrycia) przy spoofingu o wielkości zgodnej ze specyfikacją (20 ns).
cargo run -- scenarios/spoof-attack.toml
Summary:
scenario 2b6bd22c3b80 | spoof LinearRamp { rate_ns_per_s: 0.1 } vs 20.000 ns spec (P_fa 0.010) | quantum security 1.000 (P_md 0.000, MC 0.000) detected 70s | classical security 0.558 (P_md 0.442, MC 0.444) detected 430s
- Kwantowy:
security 1.000, wykryty w 70 s. Próg detekcji zegara optycznego to ułamek nanosekundy, więc zgłasza spoofing niemal natychmiast — daleko poniżej specyfikacji 20 ns. - Klasyczny:
security 0.558, wykryty w 430 s. Własny szum dryfu atomowego zegara w skali układu scalonego (CSAC) w oknie jest porównywalny z 20 ns, więc często nie potrafi odróżnić spoofingu od własnego dryfu — przegapia go w 44 % przypadków.
Niecykliczna wyrocznia: analityczne a Monte Carlo P_md#
Prawdopodobieństwo niewykrycia detektora jest obliczane na dwa niezależne sposoby, które muszą się zgadzać: ogon χ²₁ w postaci zamkniętej (wynik Neymana–Pearsona) i oszacowanie Monte Carlo (MC). Dla CSAC analityczne P_md wynosi 0.442, a MC P_md 0.444 — zgadzają się z dokładnością 0,002, dobrze w granicach błędu próbkowania ~few × 1/√N. Dla zegara optycznego oba wynoszą 0,000. Zgodność dwóch osobnych obliczeń tego samego prawdopodobieństwa jest niecykliczną kontrolą krzyżową (Kay, Fundamentals of Statistical Signal Processing: Detection Theory; standardowa detekcja NP / χ²). tests/tutorials.rs::tutorial3_spoof_analytic_matches_montecarlo sprawdza |analytic_pmd − mc_pmd| < 0.05 dla obu zegarów oraz quantum security_fom > 0.9.
Część B — Hybrydowy PNT: pełny zestaw fuzji#
Teraz scenariusz zwieńczenia łączy zegar optyczny i zimnoatomową inercyjną jednostkę pomiarową (IMU) (zestaw kwantowy) wobec CSAC i IMU klasy nawigacyjnej (zestaw klasyczny), przez tę samą przerwę GNSS 6600 s (1,83 h), przy specyfikacji czasu 20 ns i specyfikacji pozycji 100 m. Oba zestawy ponownie kotwiczą swoje zegary co 60 s przez to samo optyczne międzysatelitarne łącze transferu czasu, modelowane z jitterem 1 ps na jedną resynchronizację ([resync] w scenariuszu; src/hybrid.rs buduje jedno łącze optical-isl dla obu zestawów).
cargo run -- scenarios/hybrid-pnt.toml
Summary:
scenario f33d734ecc51 | quantum PNT-holdover 6600s (t 6600s/p 6600s) integrity 0.998 security n/a (no attack) | classical PNT-holdover 350s (t 6600s/p 350s) integrity 1.000 security n/a (no attack)
Przeczytaj podział (t …/p …) — holdover czasu a holdover pozycji:
- Kwantowy: PNT-holdover 6600 s — utrzymuje zarówno czas (t 6600 s), jak i pozycję (p 6600 s) przez całą przerwę.
- Klasyczny: PNT-holdover 350 s — czas utrzymuje się przez całe 6600 s (t 6600 s), ponieważ optyczna resynchronizacja transferu czasu utrzymuje zablokowany nawet zegar klasyczny. Zestaw jest ograniczony pozycją przy p 350 s: IMU klasy nawigacyjnej jest słabym ogniwem. To teza fuzji — przypisać awarię zestawu klasycznego jego czujnikowi inercyjnemu.
integrity 0.998dla zestawu kwantowego jest prawdziwe i nie jest błędem. To samospójność filtra przy zaszumionej resynchronizacji — nie lotnicza wartość integralności (poziom ochrony poziomy lub pionowy, HPL/VPL). Nie nadinterpretuj tu słowa „integralność”; zob.docs/INTEGRITY.md.
Niecykliczna wyrocznia: holdover pozycji 350 s#
Wartość 350 s to fizyka nawigacji zliczeniowej, a nie dopasowana liczba. Stała odchyłka akcelerometru b powoduje błąd pozycji równy ½·b·T². Przekroczenie specyfikacji 100 m:
Navigation-grade (classical), b = 1.57e-3 m/s^2:
T = sqrt(2 * 100 / 1.57e-3) = 357 s
Cold-atom (quantum), b = 5.88e-7 m/s^2 (Templier et al. 2022, arXiv:2209.13209):
T = sqrt(2 * 100 / 5.88e-7) = 18,443 s >> 6600 s outage -> holds the full outage
Silnik raportuje 350 s, ostatni punkt siatki 10 s przed przekroczeniem i o 2 % mniej niż 357 s wynikające samej odchyłki: akcelerometry scenariusza niosą też szum błądzenia losowego prędkości (q_va), który dodaje się do dryfu odchyłki, więc modelowany błąd osiąga 100 m nieco wcześniej.
Prawo źródłowe: Groves, Principles of GNSS, Inertial, and Multisensor Integrated Navigation (wyd. 2), wzrost błędu w nawigacji zliczeniowej. Te dwie wartości ½bT² tłumaczą podział silnika 350 s / 6600 s: zamknięta kontrola fizyczna, zewnętrzna wobec filtra.
Słabe ogniwo inercyjne widać bezpośrednio w scenariuszu nawigacji zliczeniowej (scenarios/inertial.toml, rodzaj inertial): quantum holdover 6600s p95 41.39m | classical holdover 350s p95 30629.9m: czujnik klasy nawigacyjnej rozbiega się do dziesiątek kilometrów.
Jak czytać razem trzy wartości#
| Wartość | Co to znaczy tutaj | Czego to nie oznacza |
|---|---|---|
| Bezpieczeństwo | analityczna granica wykrywalności spoofingu (1 − P_md) dla skonfigurowanego ataku; podsumowanie hybrid drukuje n/a (no attack), ponieważ ten scenariusz żadnego nie konfiguruje |
nie jest detektorem RAIM wielosatelitarnym (autonomiczne monitorowanie integralności przez odbiornik) |
| Integralność | samospójność filtra (próbki wewnątrz granicy k-σ) | nie jest integralnością lotniczą HPL/VPL/RAIM |
| PNT-holdover | czas w specyfikacji po utracie GNSS, rozdzielony na czas i pozycję | nie jest to dokładność 2-D CEP (circular error probable, błąd kołowy prawdopodobny) ani 2DRMS (twice the distance root mean square, dwukrotny pierwiastek ze średniej kwadratowej odległości) |
Właściwa integralność autonomiczna odbiornika (rzeczywiste HPL/VPL z limitami alarmowymi i diagramem Stanforda) znajduje się w pakiecie integrity (scenarios/integrity.toml); to ćwiczenie do czytania Tier-3.
Co przypinają testy#
tutorial3_spoof_analytic_matches_montecarlo— analityczne i Monte Carlo P_md zgadzają się z dokładnością do < 0,05 dla obu zegarów;quantum security_fom > 0.9.- Podsumowanie hybrydowe (6600 s / 350 s) i podział inercjalny są przypięte przez ich scenariusze dydaktyczne (
scenarios/hybrid.toml,scenarios/inertial.toml) za pomocąteaching_scenarios_match_their_recorded_expected_summary, który porównuje podsumowanie każdego silnika z wierszem# expected:zapisanym w pliku. Wyrocznia ½bT² powyżej jest fizyczną kontrolą tych liczb.
Pułapki i jednostki#
- Wskaźnik jakości (FoM) czasu jest podawany w nanosekundach; FoM pozycji jest podawany w metrach i jest 1-DOF (jeden stopień swobody: jedna oś, nie CEP/2DRMS).
integrity 0.998to samospójność, a nie integralność w rozumieniu lotnictwa.- Synchronizacja czasu w klasycznym zestawie przetrwa tylko dzięki ponownej synchronizacji optycznego transferu czasu; należy czytać podział
(t …/p …), a nie tylko nagłówkowy holdover PNT.
Co dalej#
- Uruchom przypadek uczciwej porażki:
scenarios/lunanet-araim.toml(rodzajlunar-integrity) podaje przejście ARAIM (advanced RAIM) na biegunie południowym, w którym poziomy ochrony przekraczają limit alarmowy (HPL 263–452 m > 50 m, dostępnych 0 z 24 epok), więc system jest zgłaszany jako niedostępny: to cecha, a nie błąd. - Przenieś tę historię na niską orbitę okołoziemską (LEO):
scenarios/leo-resilience-gnss-jammed-leo-carries.toml(rodzajcampaign) łączy w jednej osi czasu fazę zagłuszania GNSS, warstwę pozycjonowania LEO, która prowadzi użytkownika przez tę fazę, oraz kontrolę integralności. Pozostałe scenariusze odporności i branżowe znajdziesz w nowszych możliwościach. - Obroń wynik: wykonaj ćwiczenie z poziomu 3 — pasma Monte Carlo, odtwarzalność i odczytywanie poziomu ochrony.