Maskinoversettelse, ikke gjennomgått av en morsmålsbruker. Engelsk er referansen.

Integritet og interferensRediger på GitHubKilde: docs/INTEGRITY.md

Integritet og sikkerhet: hva Kshana modellerer, og hva den ikke modellerer

Kshana rapporterer to kvalitetsmål (FoM-er), Integritet og Sikkerhet, som lett forveksles med størrelsene med samme navn i luftfartskvalitet. Denne siden sier rett ut hva de er i dag, hva de ikke er, og hva veikartet legger til. Hvis du vurderer Kshana til bruk der liv og sikkerhet står på spill, eller der det kreves formell attestering, bør du lese dette først.

I dag (v0.37.0)#

Integritets-FoM: filterets selvkonsistens#

Integritets-FoM er andelen av avbruddsepokene der den sanne tidsfeilen holder seg innenfor Kalman-filterets eget k-sigma-beskyttelsesnivå:

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

Dette måler om filterets selvrapporterte usikkerhet er ærlig om filterets egen feil under et GNSS-avbrudd (GNSS: globalt navigasjonssatellittsystem). Det er en nyttig intern konsistenssjekk.

Det er ikke:

  • et horisontalt/vertikalt beskyttelsesnivå (HPL/VPL): det finnes ikke noe beskyttelsesnivå i posisjonsdomenet i det hele tatt (klokkepakkene er i tidsdomenet);
  • en integritetsrisiko / sannsynlighet for farlig villedende informasjon (P_HMI);
  • en sammenligning med en varslingsgrense;
  • i samsvar med RTCA DO-229E / DO-316 eller EUROCAE ED-259A (RTCA: Radio Technical Commission for Aeronautics; EUROCAE: European Organisation for Civil Aviation Equipment) eller noen annen sertifiseringsstandard.

Sikkerhets-FoM: analytisk grense for spoofing-detekterbarhet#

Sikkerhets-FoM er en klokkestabilitetsbasert grense for detekterbarhet av spoofing: gitt en klokkes støy (hvit frekvensstøy og random-walk-PSD-er (effekttetthetsspektre)) og et overvåkingsvindu er den den analytiske deteksjonsmarginen til en enkeltklokke-konsistensmonitor mot en sakte stigende falsk-tid-spoofing. En roligere klokke (for eksempel en optisk klokke) oppdager en mindre og tregere spoofing enn en mer støyfull (for eksempel en CSAC (chip-scale atomklokke)). Denne kontrasten er poenget med demonstratoren.

Den er ikke en RAIM-detektor (receiver autonomous integrity monitoring, mottakerautonom integritetsovervåking) med flere satellitter. Det finnes ingen pseudoavstandsresidualer på tvers av satellitter, intet beskyttelsesnivå og ingen P_HMI. Innovasjon-mot-sigma-testen har samme matematiske form som klassisk RAIM-feildeteksjon (Brown), men tallet er en analytisk grense for en gitt klokke, ikke en RAIM-implementering, og det har bare mening i sammenheng med et konfigurert spoofing-scenario (se scenariotypen spoof, som injiserer et faktisk stigende angrep).

Utdataene sier fra om dette. Typene clock, orbit, hybrid og fusion konfigurerer ikke noe angrep, så enlinjeoppsummeringen deres skriver security n/a (no attack) i stedet for et tall, og resultatdokumentet deres markerer fom.security som applicable: false, med begrunnelse, i blokken figure_tiers. Selve verdien blir stående i dokumentet for den som vil ha grensen.

Ekte snapshot-, løsningsseparasjons- og ARAIM-RAIM (src/raim.rs)#

En ekte RAIM i posisjonsdomenet er implementert i src/raim.rs, adskilt fra selvkonsistens-FoM-en over:

  • Residualovervåking med flere satellitter: den bygger geometrimatrisen for siktlinjer til de synlige satellittene, danner minste kvadraters posisjons- og klokkeløsning og tester summen av kvadrerte residualer.
  • χ²-feildeteksjon: SSE/σ² (SSE: sum av kvadrerte residualer) er χ²(n−4) under hypotesen om ingen feil; en feil erklæres over chi2_{1-P_fa}(n-4). χ²-tersklene kommer fra en avhengighetsfri regularisert ufullstendig gammafunksjon (eksakt, uten tabeller).
  • Stigningsbasert HPL / VPL: max_i(slope_i)·pbias·σ, der slope_i er posisjonsfeilfølsomheten per satellitt fra hatt-matrisen og pbias er den ikke-sentrale-χ²-skjevheten som oppfyller den konfigurerte sannsynligheten for udetektert feil P_md.
  • Løsningsseparasjons-RAIM (MHSS: multiple-hypothesis solution separation): for løsningen med alle satellitter i sikte og hver delløsning med én satellitt utelatt både oppdager og identifiserer den nøstede estimatorseparasjonen Δ_k = x_k − x₀ den feilbehengte satellitten og mater grensen for beskyttelsesnivået.
  • ARAIM-budsjett for integritetsrisiko (P_HMI) (ARAIM: advanced receiver autonomous integrity monitoring): araim_raim løser ut det minste HPL/VPL der den summerte sannsynligheten for farlig villedende informasjon P_HMI = Σ_k p_fault,k · Q((PL − T_k)/σ_k) (Blanch m.fl., Baseline ARAIM) holder seg innenfor en eksplisitt allokering av integritetsrisiko, og rapporterer risikoen nivåene oppnår. Dermed kan integritet veies direkte mot varslingsgrensen, i stedet for å bli liggende implisitt i en fast K_md-multiplikator.
  • Stanford–ESA-integritetsdiagram (ESA: European Space Agency): en akkumulator per epoke klassifiserer (error, PL) i regionene Tilgjengelig / Systemet utilgjengelig / Villedende / Farlig villedende for en tilgjengelighetsoppsummering.
  • Nåbar fra ende til ende: scenariotypen integrity kjører det ovenstående over en SGP4-konstellasjon (Simplified General Perturbations 4) eller en keplersk konstellasjon, eller en som er lest fra ekte TLE-er (two-line element sets) eller en RINEX-navigasjonsfil (Receiver Independent Exchange Format), og gir et HPL/VPL-tilgjengelighetskart per epoke mot de konfigurerte varslingsgrensene (scenarios/integrity-raim.toml). Den samme kjøringen eksporterer et vertikalt Stanford-diagram: i hver beskyttet epoke blir et seedet, reproduserbart feilfritt avstandsfeiltrekk avbildet gjennom geometrien til en faktisk vertikal feil og klassifisert mot VPL og den vertikale varslingsgrensen, slik at JSON-resultatet (JavaScript Object Notation) og CLI-oppsummeringen (kommandolinjegrensesnitt) viser antall i hver region (integritetshendelser og HMI: farlig villedende informasjon), ikke bare en tilgjengelighetsandel. På den medfølgende scenarios/integrity-raim.toml rapporterer kjøringen 344 av 361 epoker tilgjengelige (95,3 %) ved en horisontal varslingsgrense på 40 m og en vertikal på 50 m, med 0 integritetshendelser og 0 HMI.
  • ARAIM med to konstellasjoner og en integritetsstøttemelding: araim_dual_raim legger til feilmodusen for hele konstellasjonen: ved siden av hypotesene om ingen feil og feil på én satellitt bidrar hver konstellasjon med én hypotese som fjerner alle satellittene sine, med a priori-sannsynlighet P_const, til den samme MHSS-integritetsrisikosummen. IntegritySupportMessage (ISM) bærer brukerens avstandsnøyaktighet for integritet (σ_URA), nøyaktighetens kvadratiske middelverdi (σ_URE), den største nominelle skjevheten b_nom som legges ensidig inn i hver modus, og a priori-sannsynlighetene P_sat og P_const. Referansesettet fra WG-C (Working Group C i samarbeidet mellom EU og USA om satellittnavigasjon, hvis tekniske ARAIM-undergruppe utgir referansen) er σ_URA = 0,75 m, σ_URE = 0,67 m, b_nom = 0,75 m, P_sat = 1e-5 og P_const = 1e-4. P_const = 0 gjengir enkeltfeil-resultatet fra araim_raim bit for bit. Typen integrity tar denne veien med araim_dual = true (scenarios/araim-gps-galileo.toml: GPS + Galileo, 48 satellitter, 145 av 145 epoker tilgjengelige ved de samme varslingsgrensene).
  • Beskyttelsesnivåer mot publiserte referansevektorer: typen araim-reference-check kjører motorens araim_protection_level og araim_integrity_risk på de gjennomregnede eksemplene til WG-C-undergruppen for ARAIM selv (Reference Airborne Algorithm Description Document v3.1, 2019, vedlegg D, og Milestone 3 Report, 2016, vedlegg A). Den største forskjellen i vertikalt/horisontalt beskyttelsesnivå på akseptvektoren er 0,0437 m mot dokumentenes egen toleranse på 0,05 m. Denne raden er VALIDATED i VERIFICATION-MATRIX.md: den kontrollerer ligningen for beskyttelsesnivået, ikke en operativ ISM eller en mottaker.

Det gjenstående gapet (veikart)#

Hva raim.rs ikke gjør ennå:

  • den er ikke innfelt i FoM-en for klokke-/holdover-scenarioene: disse pakkene rapporterer fortsatt filterets selvkonsistens-integritetstall over, ikke et HPL/VPL;
  • feilhypotesene er det feilfrie tilfellet, enkeltsatellitter og hele konstellasjoner; samtidige feil på delmengder av to eller flere satellitter (SV: space vehicle, det vil si en satellitt) er ikke modellert;
  • ISM er et konfigurerbart parametersett (med referanseverdiene fra WG-C), ikke en operativ kringkastet melding eller en validert trusselmodell;
  • feildeteksjon og eksklusjon (FDE) finnes bare for enkeltsatellitter og snapshot: løsningsseparasjon peker ut den feilbehengte satellitten, og snapshot_raim_fde løser på nytt hver eksklusjon av én satellitt og returnerer den utelatte satellitten sammen med khikvadrattesten og beskyttelsesnivåene for den gjenværende delmengden, men ingen eksklusjonsbeskyttet posisjon rapporteres, og scenariotypen integrity kjører ikke eksklusjonssteget.

Snapshot-, løsningsseparasjons- og ARAIM-kjernene er prøvd på ekte presis baneinformasjon fra IGS (International GNSS Service) (SP3: Standard Product 3) som geometri, ikke bare på syntetiske konstellasjoner: tests/igs_real_data.rs danner siktlinjegeometrien fra den første epoken i et ekte IGS SP3-produkt ved en reell bakkestasjon, og kontrollerer at beskyttelsesnivåene er endelige og innenfor APV-I-varslingsgrensene (approach with vertical guidance) på 40 m horisontalt og 50 m vertikalt, at en pseudoavstandsskjevhet på 60 m utløser χ²-monitoren, at løsningsseparasjon identifiserer den feilbehengte satellitten, og at ARAIMs nivåer holder den allokerte P_HMI. tests/araim_dual_real_data.rs kjører veien for to konstellasjoner på de ekte katalogene for GPS og Galileo fra Celestrak av 2026-06-07, propagert til én felles epoke (se REAL_TLE_GUIDE.md §3). En dypere kryssjekk, der beskyttelsesnivåene sammenlignes epoke for epoke med gLAB (GNSS-Lab Tool, en programvarepakke for GNSS-databehandling distribuert av ESA) over en full RINEX-observasjonsbue, ville gitt paritet i mottakerdomenet. Den er ikke gjort: typen pvt beregner en kode-enkeltpunktsposisjon fra ekte RINEX-observasjoner, men intet beskyttelsesnivå fra den løsningen er sammenlignet med gLAB.

raim.rs er altså en ekte kjerne for beskyttelsesnivå og integritetsrisiko, nåbar fra scenariotypene integrity og araim-reference-check, prøvd på geometri fra ekte referansebaner og kontrollert mot WG-C-referansevektorene. Feil i delmengder av flere satellitter, gLAB-paritet i mottakerdomenet og integrasjon i klokke-FoM-en står igjen som veikartpunkter, og ingenting av dette er sertifiseringsbevis.

Se også#

  • GLOSSARY.md: énlinjedefinisjoner av hver FoM og forkortelse.
  • ARAIM_REFERENCE.md: ISM-parametrene og WG-C-referansevektorene.
  • SLOT-TIMING.md: tidsbeskyttelsesnivået (TPL) for en klokke i fri gange, som er betinget av deteksjon.
  • VALIDATION.md: hvilke størrelser som er validert mot en referanse, og hvilke som er selvkonsistenssjekker.
  • src/security.rs: utledningen av grensen for spoofing-detekterbarhet.

RAIM ved siden av kvalitetsmålene for klokke-holdover (0,36, må velges)#

Et klokkescenario kan ha en [integrity]-seksjon (src/clock_integrity.rs): et sted (lat_deg, lon_deg, height_m), forhåndsinnstillinger for konstellasjoner (systems, standard gps-baseline), en maske, en sigma for avstandsresidual, sannsynlighetene for falsk alarm og udetektert feil, de horisontale og vertikale varslingsgrensene, en epokeavstand og en valgfri oppgitt skjevhet på én satellitt. Kjøringen rapporterer da en egen integrity_fom-blokk: per epoke satellittene i sikte, snapshot-RAIM-beskyttelsesnivåene og en konklusjon (available, alarm, unavailable-pl-above-al, unavailable-too-few-satellites, unavailable-gnss-denied), samt antall og tilgjengelighet over kjøringen. Så lenge tidslinjen sier at GNSS er nektet, er RAIM utilgjengelig og ingenting ekstrapoleres; et degradert vindu vurderes som nominelt. Kvalitetsmålene for holdover er uendret, og uten seksjonen er utdataene byte-identiske. MODELLED: en representativ himmel fra forhåndsinnstillinger, syntetiske residualer og oppgitte grenser. Den trenger runs = 1.

Gjengivelsen av maksimal URA fra EU-USAs WG-C ARAIM Milestone 3 (CAP-05c)#

En tidligere plan lovet en sammenligning med «Table A-3» i et teknisk EU-ARAIM-notat. Ingen offentlig kilde til den tabellen lot seg finne (de offentlige Milestone 1- til 3-rapportene fra ARAIM-undergruppen til EU-USAs Working Group C har ingen Table A-3), så den sammenligningen er trukket tilbake, og ingenting lovet under det navnet.

I stedet forsøkes den rapporten som er offentlig: Milestone 3 Report (25 februar 2016, kopi fra GPS.gov, SHA-256 156147e1...13d8), tabellene 5, 6 og 7, som for hver konstellasjonskonfigurasjon og for både RNP 0,1 og RNP 0,3 oppgir den største sigma_URA som gir 99,5 % tilgjengelighet for 90 % av brukerne. Tolv oppgitte oppføringer (radene Depleted og Baseline i tabellene for to frekvenser) kontrolleres, under terskler som er forhåndsregistrert i xval/araim-m3/PREREGISTRATION.md før noen poengsatt kjøring, med de avvikene som ikke kan fjernes oppgitt der: ingen almanakkfiler, Walker-skall i stedet for de virkelige slottene, et grovere rutenett og trinn, og motorens ADD v4.2-horisontalvei i stedet for rapportens egen tekst. Tabellene 8 til 13 (én frekvens) og radene Optimistic forsøkes ikke, av årsakene som er oppgitt der. Resultat: 8 av 12 oppføringer gjengitt, 4 NOT MET (festet): oppføringene for to konstellasjoner og alle oppføringer for bare Galileo stemmer (inkludert N/A-radene), oppføringen for to konstellasjoner Depleted RNP 0,1 når dekning 0,847 ved 9 m mot oppgitt 9 m (trenger 0,90), og tre oppføringer for bare GPS bommer vidt (dekning 0,70 ved 4 m, 0,58 ved 6 m, 0,65 ved 10 m mot oppgitt 4 m, 6 m og «>10 m»). Bommene for bare GPS kan skyldes at det jevne Walker-skallet står i stedet for de virkelige GPS-slottene (D1); det er en hypotese, ikke et funn. Resultatet forblir MODELLED uansett hva det er. Studien er src/bin/gen_araim_m3_study.rs; de målte dekningene står i xval/araim-m3/results.json og er poengsatt av tests/araim_m3_reproduction.rs. Selve rapporten siteres, ikke medlevert.