Machinevertaling, niet beoordeeld door een moedertaalspreker. Engels is de referentie.

Integriteit en interferentieBewerken op GitHubBron: docs/INTEGRITY.md

Integriteit en beveiliging: wat Kshana modelleert en wat niet

Kshana rapporteert twee kwaliteitsmaten (FoM's) — Integriteit en Beveiliging — die gemakkelijk worden verward met de gelijknamige grootheden uit de luchtvaart. Deze pagina zet nuchter uiteen wat ze nu zijn, wat ze niet zijn en wat de roadmap toevoegt. Beoordeelt u Kshana voor een toepassing waarin mensenlevens op het spel staan of voor certificering, lees dit dan eerst.

Vandaag (v0.37.0)#

Integriteits-FoM — zelfconsistentie van het filter#

De integriteits-FoM is het aandeel van de uitvalsamples waarvan de werkelijke tijdsfout binnen de eigen k-sigma-beveiligingsgrens van het Kalman-filter blijft:

integrity = (# outage samples with |error| <= k * phase_sigma) / (# outage samples)

Dit meet of de zelf gerapporteerde onzekerheid van het filter eerlijk is over zijn eigen fout tijdens een uitval van GNSS (global navigation satellite system). Het is een nuttige interne consistentiecontrole.

Het is niet:

  • een horizontaal/verticaal beveiligingsniveau (HPL/VPL) — er is helemaal geen beveiligingsniveau in het positiedomein (de klokpakketten liggen in het tijdsynchronisatiedomein);
  • een integriteitsrisico of kans op gevaarlijk misleidende informatie (P_HMI);
  • een vergelijking met een alarmgrens;
  • in overeenstemming met RTCA DO-229E / DO-316 of EUROCAE ED-259A (RTCA: Radio Technical Commission for Aeronautics; EUROCAE: European Organisation for Civil Aviation Equipment) of enige andere certificeringsnorm.

Beveiligings-FoM — analytische grens voor spoof-detecteerbaarheid#

De beveiligings-FoM is een op klokstabiliteit gebaseerde grens voor spoof-detecteerbaarheid: gegeven de ruis van een klok (PSD's (power spectral densities) van witte frequentieruis en random walk) en een bewakingsvenster is het de analytische detectiemarge van een consistentiemonitor met één klok tegen een langzaam oplopende spoofing met valse tijd. Een rustigere klok (bijvoorbeeld een optische klok) detecteert een kleinere, tragere spoof dan een ruisigere (bijvoorbeeld een CSAC (chip-scale atomic clock)) — dat contrast is de kern van de demonstrator.

Het is niet een RAIM-detector (receiver autonomous integrity monitoring) met meerdere satellieten. Er zijn geen pseudorange-residuen over satellieten heen, geen beveiligingsniveau en geen P_HMI. De innovatie-ten-opzichte-van-sigma-test heeft dezelfde wiskundige vorm als klassieke RAIM-foutdetectie (Brown), maar het getal is een analytische grens voor een gegeven klok, geen RAIM-implementatie, en het is alleen zinvol in de context van een geconfigureerd spoofingscenario (zie het scenariotype spoof, dat een werkelijke oplopende aanval injecteert).

De uitvoer zegt dat ook. De typen clock, orbit, hybrid en fusion configureren geen aanval, dus hun samenvatting van één regel toont security n/a (no attack) in plaats van een getal, en hun resultaatdocument markeert fom.security als applicable: false, met de reden, in het blok figure_tiers. De waarde zelf blijft in het document voor wie de grens wil hebben.

Echte snapshot-, oplossingsscheidings- en ARAIM-RAIM (src/raim.rs)#

Een echte RAIM in het positiedomein is geïmplementeerd in src/raim.rs, los van de zelfconsistentie-FoM hierboven:

  • Residubewaking met meerdere satellieten — ze bouwt de geometriematrix van de zichtlijnen naar de zichtbare satellieten op, vormt de kleinste-kwadratenoplossing voor positie en klok en toetst de som van de gekwadrateerde residuen.
  • χ²-foutdetectie — SSE/σ² (SSE: som van de gekwadrateerde residuen) is χ²(n−4) onder de hypothese zonder fout; boven chi2_{1-P_fa}(n-4) wordt een fout vastgesteld. De χ²-drempels komen uit een afhankelijkheidsvrije evaluatie van de geregulariseerde onvolledige gammafunctie (exact, geen tabellen).
  • HPL / VPL op basis van de helling — max_i(slope_i)·pbias·σ, waarbij slope_i de positiefoutgevoeligheid per satelliet uit de hoedmatrix is en pbias de niet-centrale-χ²-bias die voldoet aan de geconfigureerde kans op gemiste detectie P_md.
  • RAIM met oplossingsscheiding (MHSS: multiple-hypothesis solution separation) — voor de oplossing met alle satellieten in zicht en elke deeloplossing met één uitgesloten satelliet detecteert en identificeert de geneste schattersscheiding Δ_k = x_k − x₀ de defecte satelliet en voedt ze de grens van het beveiligingsniveau.
  • Budget voor integriteitsrisico (P_HMI) van ARAIM (advanced receiver autonomous integrity monitoring) — araim_raim lost het kleinste HPL/VPL op waarvan de som van de kansen op gevaarlijk misleidende informatie P_HMI = Σ_k p_fault,k · Q((PL − T_k)/σ_k) (Blanch et al., Baseline ARAIM) voldoet aan een expliciete toewijzing van integriteitsrisico, en rapporteert het risico dat de niveaus bereiken — zodat integriteit rechtstreeks kan worden afgewogen tegen de alarmgrens, in plaats van impliciet te blijven in een vaste K_md-vermenigvuldiger.
  • Stanford–ESA-integriteitsdiagram (ESA: European Space Agency) — een accumulator per epoch deelt (error, PL) in gebieden in: beschikbaar / systeem niet beschikbaar / misleidend / gevaarlijk misleidend, voor een beschikbaarheidssamenvatting.
  • Van begin tot eind bereikbaar — het scenariotype integrity voert het bovenstaande uit over een SGP4-constellatie (Simplified General Perturbations 4) of een Kepler-constellatie, of een constellatie die uit echte TLE's (two-line element sets) of een RINEX-navigatiebestand (Receiver Independent Exchange Format) is gelezen, en levert een HPL/VPL-beschikbaarheidskaart per epoch op tegen de geconfigureerde alarmgrenzen (scenarios/integrity-raim.toml). Dezelfde run exporteert een verticaal Stanford-diagram: op elk beschermd epoch wordt een gezaaide, reproduceerbare foutloze afstandsfoutentrekking via de geometrie omgezet in een werkelijke verticale fout en ingedeeld tegen de VPL en de verticale alarmgrens, zodat het JSON-resultaat (JavaScript Object Notation) en de CLI-samenvatting (command-line interface) de aantallen per gebied bevatten (integriteitsgebeurtenissen, en HMI: hazardously misleading information) — en niet alleen een beschikbaarheidsfractie. Op de meegeleverde scenarios/integrity-raim.toml meldt de run 344 van 361 epochs beschikbaar (95,3 %) bij een horizontale alarmgrens van 40 m en een verticale van 50 m, met 0 integriteitsgebeurtenissen en 0 HMI.
  • ARAIM met twee constellaties en een integriteitsondersteuningsbericht — araim_dual_raim voegt de foutmodus voor een hele constellatie toe: naast de hypothesen zonder fout en met één satelliet draagt elke constellatie één hypothese bij die al haar satellieten verwijdert, met a-priorikans P_const, aan dezelfde MHSS-integriteitsrisicosom. Het IntegritySupportMessage (ISM) bevat de nauwkeurigheid van de afstand voor integriteit (σ_URA), de kwadratisch gemiddelde nauwkeurigheid (σ_URE), de maximale nominale bias b_nom, eenzijdig in elke modus opgenomen, en de a-priorikansen P_sat en P_const; de referentieset van WG-C (Working Group C van de samenwerking tussen de Europese Unie en de Verenigde Staten op het gebied van satellietnavigatie, wier technische subgroep voor ARAIM de referentie publiceert) is σ_URA = 0,75 m, σ_URE = 0,67 m, b_nom = 0,75 m, P_sat = 1e-5 en P_const = 1e-4. P_const = 0 reproduceert het araim_raim-resultaat met één fout bit voor bit. Het type integrity neemt dit pad met araim_dual = true (scenarios/araim-gps-galileo.toml: GPS + Galileo, 48 satellieten, 145 van 145 epochs beschikbaar bij dezelfde alarmgrenzen).
  • Beveiligingsniveaus tegen gepubliceerde referentievectoren — het type araim-reference-check voert de araim_protection_level en araim_integrity_risk van de engine uit op de eigen uitgewerkte voorbeelden van de ARAIM-subgroep van WG-C (de Reference Airborne Algorithm Description Document v3.1, 2019, Appendix D, en het Milestone 3 Report, 2016, Annex A). Het grootste verschil in verticaal/horizontaal beveiligingsniveau op de acceptatievector is 0,0437 m tegen de eigen tolerantie van de documenten van 0,05 m. Deze rij is VALIDATED in VERIFICATION-MATRIX.md: ze controleert de vergelijking voor het beveiligingsniveau, geen operationeel ISM en geen ontvanger.

De resterende lacune (roadmap)#

Wat raim.rs nog niet doet:

  • het is niet opgenomen in de FoM van het klok-/holdover-scenario — die pakketten rapporteren nog steeds de zelfconsistentiecijfers van het filter voor integriteit hierboven, geen HPL/VPL;
  • de foutenhypothesen zijn het geval zonder fout, afzonderlijke satellieten en hele constellaties — gelijktijdige fouten op deelverzamelingen van twee of meer satellieten (SV: space vehicle, dat is een satelliet) worden niet gemodelleerd;
  • het ISM is een configureerbare parameterset (met de referentiewaarden van WG-C), geen uitgezonden operationeel bericht en geen getoetst bedreigingsmodel;
  • foutdetectie en -uitsluiting (FDE) is alleen voor één satelliet en alleen voor een snapshot: oplossingsscheiding wijst de defecte satelliet aan, en snapshot_raim_fde lost elke uitsluiting van één satelliet opnieuw op en geeft de uitgesloten satelliet terug met de chikwadraattest en de beveiligingsniveaus van de resterende deelverzameling, maar er wordt geen tegen uitsluiting beschermde positie gerapporteerd, en het scenariotype integrity voert de uitsluitingsstap niet uit.

De kernen voor snapshot, oplossingsscheiding en ARAIM worden beproefd op echte geometrie van nauwkeurige IGS-banen (International GNSS Service) (SP3: Standard Product 3), en niet alleen op synthetische constellaties: tests/igs_real_data.rs vormt de zichtlijngeometrie uit het eerste epoch van een echt IGS-SP3-product op een echt grondstation en controleert dat de beveiligingsniveaus eindig zijn en binnen de APV-I-alarmgrenzen (approach with vertical guidance) van 40 m horizontaal en 50 m verticaal liggen, dat een pseudorange-bias van 60 m de χ²-monitor activeert, dat oplossingsscheiding de defecte satelliet identificeert en dat de niveaus van ARAIM voldoen aan de toegewezen P_HMI. tests/araim_dual_real_data.rs voert het pad met twee constellaties uit op de echte Celestrak-catalogi van GPS en Galileo van 2026-06-07, gepropageerd naar één gemeenschappelijk epoch (zie REAL_TLE_GUIDE.md §3). Een diepere kruiscontrole — het epoch voor epoch vergelijken van beveiligingsniveaus met gLAB (de GNSS-Lab Tool, een door ESA verspreide software voor GNSS-gegevensverwerking) over een volledige RINEX-waarnemingsboog — zou pariteit in het ontvangerdomein toevoegen. Die is niet gedaan: het type pvt berekent een enkelvoudige codepositie uit echte RINEX-waarnemingen, maar geen enkel beveiligingsniveau uit die oplossing is met gLAB vergeleken.

raim.rs is dus een echte kern voor beveiligingsniveau en integriteitsrisico, bereikbaar vanuit de scenariotypen integrity en araim-reference-check, beproefd op geometrie van echte referentiebanen en gecontroleerd tegen de referentievectoren van WG-C. Fouten in deelverzamelingen van meerdere satellieten, pariteit met gLAB in het ontvangerdomein en integratie met de klok-FoM blijven roadmap-onderwerpen, en niets hiervan is bewijs voor certificering.

Zie ook#

  • GLOSSARY.md — definities van één regel van elke FoM en afkorting.
  • ARAIM_REFERENCE.md — de ISM-parameters en de referentievectoren van WG-C.
  • SLOT-TIMING.md — het beveiligingsniveau voor tijdsynchronisatie (TPL) van een uitlopende klok, dat afhankelijk is van detectie.
  • VALIDATION.md — welke grootheden aan een referentie zijn getoetst en welke zelfconsistentiecontroles zijn.
  • src/security.rs — de afleiding van de grens voor spoof-detecteerbaarheid.

RAIM naast de kwaliteitsmaten voor klok-holdover (0,36, opt-in)#

Een klokscenario kan een sectie [integrity] bevatten (src/clock_integrity.rs): een locatie (lat_deg, lon_deg, height_m), constellatievoorinstellingen (systems, standaard gps-baseline), een masker, een sigma van het afstandsresidu, de kansen op valse alarmen en gemiste detectie, de horizontale en verticale alarmgrenzen, een epoch-interval en een optionele opgegeven bias op één satelliet. De run rapporteert dan een afzonderlijk blok integrity_fom: per epoch de satellieten in zicht, de snapshot-RAIM-beveiligingsniveaus en een oordeel (available, alarm, unavailable-pl-above-al, unavailable-too-few-satellites, unavailable-gnss-denied), en de aantallen en de beschikbaarheid over de run. Zolang de tijdlijn aangeeft dat GNSS wordt geweigerd, is RAIM niet beschikbaar en wordt niets geëxtrapoleerd; een gedegradeerd venster wordt als nominaal beoordeeld. De kwaliteitsmaten voor holdover blijven ongewijzigd en zonder de sectie is de uitvoer byte-identiek. MODELLED: een representatieve voorinstelling van de hemel, synthetische residuen en opgegeven grenzen. Het vereist runs = 1.

De reproductie van de maximale URA uit Milestone 3 van de ARAIM-werkgroep WG-C van EU en VS (CAP-05c)#

Een eerder plan beloofde een vergelijking met "Table A-3" van een technische notitie over EU-ARAIM. Voor die tabel kon geen openbare bron worden gevonden (de openbare rapporten Milestone 1 tot en met 3 van de ARAIM Technical Subgroup van de EU-US Working Group C bevatten geen Table A-3), dus die vergelijking is ingetrokken en onder die naam wordt niets beloofd.

Wat in plaats daarvan wordt geprobeerd, is het rapport dat openbaar is: het Milestone 3 Report (25 februari 2016, kopie van GPS.gov, SHA-256 156147e1...13d8), Tables 5, 6 en 7, die voor elke constellatieconfiguratie en voor zowel RNP 0,1 als RNP 0,3 de grootste sigma_URA afdrukken waarvoor 90 % van de gebruikers 99,5 % beschikbaarheid heeft. Twaalf afgedrukte items (de rijen Depleted en Baseline van de dualefrequentietabellen) worden gecontroleerd, volgens drempels die vóór elke beoordeelde run zijn vastgelegd in xval/araim-m3/PREREGISTRATION.md, met de afwijkingen die niet kunnen worden weggenomen daar vermeld: geen almanakbestanden, Walker-schillen in plaats van de echte slots, een grovere rasterafstand en stap, en het horizontale ADD v4.2-pad van de engine in plaats van de eigen tekst van het rapport. Tables 8 tot en met 13 (enkele frequentie) en de rijen Optimistic worden niet geprobeerd, met de daar genoemde redenen. Resultaat: 8 van de 12 items gereproduceerd, 4 NOT MET (vastgepind): de items met twee constellaties en alle items met alleen Galileo komen overeen (inclusief de N/A-rijen), het item met twee constellaties Depleted RNP 0,1 bereikt dekking 0,847 bij 9 m tegen de afgedrukte 9 m (vereist 0,90), en drie items met alleen GPS missen ruim (dekking 0,70 bij 4 m, 0,58 bij 6 m, 0,65 bij 10 m tegen afgedrukt 4 m, 6 m en ">10 m"). De missers bij alleen GPS kunnen komen doordat de uniforme Walker-schil in de plaats komt van de echte GPS-slots (D1); dat is een hypothese, geen bevinding. Het resultaat blijft MODELLED, wat het ook is. De studie is src/bin/gen_araim_m3_study.rs; de gemeten dekkingen staan in xval/araim-m3/results.json en worden beoordeeld door tests/araim_m3_reproduction.rs. Het rapport zelf wordt geciteerd, niet meegeleverd.