Maschinelle Übersetzung, nicht von einem Muttersprachler geprüft. Englisch ist die maßgebliche Fassung.

Test-bench und complianceAuf GitHub bearbeitenQuelle: docs/compliance/README.md

compliance-Zuordnung

Käufer und Empfängerhersteller müssen sich an öffentlichen Resilienz-Rahmenwerken messen lassen. Dieser Ordner ordnet zeilenweise zu, was Kshana berechnet und aufzeichnet, und kshana compliance-report füllt die Zuordnung aus den Läufen, die Sie tatsächlich haben.

Wortlaut. Ausgaben von Kshana liefern Belege für eine Anforderung. Sie sind keine Bewertung oder Zulassung irgendeines Produkts, und keine dieser Dateien ist eine Aussage einer Bewertungsstelle; Kshana ist keine. Anforderungstexte werden paraphrasiert, nie wiedergegeben.

Rahmenwerk Datei
US DHS Resilient PNT Conformance Framework, v2.0 dhs-rpcf.md
IMO-Leitlinien zu GNSS-Störungen für Schiffe imo-ships.md
EASA-Leitlinien zu GNSS-Störungen für die Luftfahrt easa-aviation.md
EU-Richtlinie NIS2, Artikel 21 nis2-art21.md
EN 16803 (kostenpflichtige Norm; nur nach Teilen und im Katalog sichtbaren Abschnittsnummern) en-16803.md
NIST IR 8323r1, Foundational PNT Profile (Januar 2023) nist-ir-8323r1.md

Standardpakete (0,38) machen aus einem Rahmenwerk bewertete Szenarien: Jedes Paket hat Szenarien, vor dem Lauf festgelegte Zielwerte und Zeilen, für die es Belege liefert. kshana standards-pack list zeigt sie.

Paket Datei
DHS Resilient PNT Conformance Framework, Testprofile für die Stufen 1 bis 4 dhs-rpcf-test-profiles.md
IMO MSC.1/Circ.1575, Datenverarbeitung von PNT auf Schiffen: Genauigkeitsstufen und Integrität imo-circ-1575.md
ICAO Doc 9849 Anhang F, GNSS-Störungen überwachen, bewerten und mindern icao-doc9849-appf.md

Jede Datei listet ihre Quelldokumente mit Version, URL, Lesedatum und dem auf, was geprüft wurde und was nicht. Die Quellen wurden am 2026-10-09 gelesen (das NIST-Profil am 2026-10-18; das EASA-Bulletin und die Katalogseiten zu EN 16803 wurden am 2026-10-10 erneut geprüft). Wo eine Quelle nur über eine Spiegelung oder eine Katalogseite gelesen werden konnte, steht das in der Datei.

Jeder Test der drei bewerteten Standardpakete aus echten Läufen der Engine v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 erreicht, 1 nicht erreicht, 2 benötigen eine Eingabe; imo-circ-1575: 1 erreicht, 4 nicht erreicht, 2 benötigen eine Eingabe; icao-doc9849-appf: 6 erreicht, 0 nicht erreicht, 2 benötigen eine Eingabe. Insgesamt 13 erreicht, 5 nicht erreicht und 6 benötigen eine Eingabe, die der Engine fehlt (ein Empfängerlog oder Ausrüstungsdokumentation). Jeder Zielwert wurde vor dem Lauf festgelegt; ein Verfehlen bleibt ein Verfehlen. Ein erreichter Zielwert besagt, dass ein modelliertes Szenario einen festgelegten Zielwert erreicht hat, nichts über ein Produkt. Die Pakete liefern Belege für die Zeilen, die sie nennen; sie sind keine Bewertung. Nur beratend: Analyseausgabe eines Forschungs- und Engineering-Werkzeugs, keine typzugelassene Navigationsausrüstung und kein Dienst für Menschenleben (safety of life); sie darf nicht die alleinige Grundlage einer Navigations- oder Sicherheitsentscheidung sein.Jeder Test der drei bewerteten Standardpakete aus echten Läufen der Engine v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 erreicht, 1 nicht erreicht, 2 benötigen eine Eingabe; imo-circ-1575: 1 erreicht, 4 nicht erreicht, 2 benötigen eine Eingabe; icao-doc9849-appf: 6 erreicht, 0 nicht erreicht, 2 benötigen eine Eingabe. Insgesamt 13 erreicht, 5 nicht erreicht und 6 benötigen eine Eingabe, die der Engine fehlt (ein Empfängerlog oder Ausrüstungsdokumentation). Jeder Zielwert wurde vor dem Lauf festgelegt; ein Verfehlen bleibt ein Verfehlen. Ein erreichter Zielwert besagt, dass ein modelliertes Szenario einen festgelegten Zielwert erreicht hat, nichts über ein Produkt. Die Pakete liefern Belege für die Zeilen, die sie nennen; sie sind keine Bewertung. Nur beratend: Analyseausgabe eines Forschungs- und Engineering-Werkzeugs, keine typzugelassene Navigationsausrüstung und kein Dienst für Menschenleben (safety of life); sie darf nicht die alleinige Grundlage einer Navigations- oder Sicherheitsentscheidung sein.

Der Bericht#

kshana compliance-report spoof-detect.result.json integrity-raim.result.json session.result.json

schreibt compliance-report.compliance.md und compliance-report.compliance.json (--out <base> ändert den Namen). Die Eingaben sind Ergebnisdateien früherer Läufe: Ein Szenariolauf schreibt <name>.result.json neben <name>.toml, und kshana receiver-trust schreibt seine eigene. Die Art jedes Laufs wird aus der Szenariodatei neben dem Ergebnis, aus dem Inhalt eines receiver-trust-Ergebnisses oder aus einem kind auf oberster Ebene gelesen und muss eine der Engine bekannte Art sein. Ein Ergebnis wird mit Begründung als nicht verwendet aufgeführt und zählt nicht, wenn seine Art nicht gefunden werden kann, keine bekannte Art ist oder das danebenliegende Szenario und das kind des Ergebnisses selbst sich widersprechen. (Der scenario_hash des Ergebnisses und ein Hash der Szenariodatei werden nicht verglichen: Die Engine berechnet den ersten über ihr geparstes Szenario, und ein Datei-Hash bezieht sich auf den Text, es sind also verschiedene Größen.)

Ein Art-Label allein ist kein Beleg. Ein Lauf zählt für eine Fähigkeit nur, wenn sein Ergebnis auch die Felder trägt, die diese Art schreibt (zum Beispiel braucht ein jamming-Ergebnis seine Gütemaße und Zeilen je Epoche; ein integrity-Ergebnis braucht seine Stichprobenzahlen). Die Felder sind in src/compliance/mapping.rs (KIND_FIELDS) aufgeführt, und ein Ergebnis, dem eines fehlt, wird nicht gezählt. Ein Hash, der nicht hexadezimal ist, wird nicht als Hash ausgewiesen. Ein receiver-trust-Ergebnis, dessen Zahlen keine ganzen Zahlen sind oder dessen Zahl erkannter oder übereinstimmender Fälle die Zahl der auswertbaren übersteigt, wird ausgeschlossen und als nicht verwendet aufgeführt.

Für jede Zeile gibt der Bericht eines der folgenden an:

Status Bedeutung
evidenced jede Fähigkeit, die die Zeile nennt, hat mindestens einen Lauf in der Menge
partly-evidenced einige haben einen
not-evidenced keine haben einen
out-of-scope keine Ausgabe von Kshana betrifft die Zeile

Die Lückenspalte wird für jede Zeile ausgegeben, auch für belegte: Ein Lauf, der Belege für eine Fähigkeit liefert, überlässt den größten Teil einer Anforderung dennoch anderen Belegen. Der Bericht wiederholt die Wortlautregel an seinem Anfang. --mapping gibt die statischen Tabellen aus und --sources die Quellenliste.

Receiver-trust-Läufe tragen außerdem die Zahlen bei, die sie angeben (erkannte Ereignisse von den auswertbaren, übereinstimmende Vorhersagen von den auswertbaren). Diese beschreiben dieses Log, bewertet gegen vor dem Lauf festgelegte Ereignisse und Toleranzen, und werden so berichtet, wie der Lauf sie angibt.

Fähigkeiten#

Fähigkeit Ausgabe Laufarten
Vertrauensbewertung von Empfänger-Logs Vertrauenszustand je Epoche aus dem eigenen Log eines echten Empfängers, Alarmzeiten und Übereinstimmung mit vor dem Lauf festgelegten Ereignissen receiver-trust
Auswirkungen von jamming auf die Link-Bilanz Träger-Rausch-Leistungsdichte und Zustand der Verriegelung je Satellit bei einer angegebenen Geometrie des Störsenders jamming, lunar-jamming, conflict-resilience
Erkennung von spoofing und meaconing Entscheidungen des Detektors und Trennschärfe des Detektors bei einem angegebenen spoofing-Angriff spoof, spoof-detect, impairment-eval
Integritätsüberwachung und Schutzniveaus Schutzniveaus, Verfügbarkeit gegenüber Alarmgrenzen und Ergebnisse der Fehlererkennung integrity, araim-reference-check, lunar-integrity
Holdover und Überbrückung Zunahme des Positions- oder Zeitfehlers, während GNSS verwehrt ist, gegenüber einem angegebenen Schwellwert clock, inertial, gnss-ins, ins-trn-coast, hybrid, hybrid-ukf, fusion, timetransfer, quantum-gnss-free-nav, quantum-time-transfer
Alternative und diverse PNT-Quellen Navigations- oder Zeitgebungsleistung aus Quellen, die vom primären GNSS-Band unabhängig sind combined-altpnt, terrain-nav, terrain-slam, gravity-map, leo-pass, leo-pvt, leo-pnt-chain, hybrid-optical-rf, ntn-positioning, hybrid, fusion
Resilienzbewertung über Bedrohungsensembles Überlebens- und Resilienzverhältnisse je Bedrohungsvektor über ein angegebenes Ensemble, mit angegebenen Annahmen conflict-resilience, campaign
Reproduzierbare Herkunft des Laufs Szenario-Hash, Engine-Version und Seed, die in jedem Ergebnis stehen, damit ein Lauf wiederholt werden kann jeder Lauf, dessen Ergebnis einen scenario_hash trägt