Машинный перевод, не проверенный носителем языка. Эталоном служит английская версия.

Compliance и test benchПравить на GitHubИсточник: docs/compliance/README.md

Сопоставление compliance

Покупатели и производители приёмников отвечают перед общедоступными каркасами устойчивости. В этой папке то, что Kshana вычисляет и записывает, сопоставлено с этими каркасами строка за строкой, а kshana compliance-report заполняет сопоставление по тем прогонам, которые у вас действительно есть.

Формулировки. Выходные данные Kshana подкрепляют доказательствами требование. Это не оценка и не одобрение какого-либо изделия, и ни один из этих файлов не является заявлением органа оценки; Kshana таковым не является. Текст требований пересказан, а не воспроизведён.

Каркас Файл
US DHS Resilient PNT Conformance Framework, v2.0 dhs-rpcf.md
Рекомендации IMO по помехам для ГНСС на судах imo-ships.md
Рекомендации EASA по помехам для ГНСС в авиации easa-aviation.md
Директива EU NIS2, статья 21 nis2-art21.md
EN 16803 (платный стандарт; только по частям и по номерам пунктов, видимым в каталоге) en-16803.md
NIST IR 8323r1, Foundational PNT Profile (январь 2023) nist-ir-8323r1.md

Пакеты стандартов (0,38) превращают каркас в оцениваемые сценарии: в каждом пакете есть сценарии, пороги, заданные до прогона, и строки, которые он подкрепляет доказательствами. kshana standards-pack list показывает их.

Пакет Файл
DHS Resilient PNT Conformance Framework, профили испытаний для уровней от 1 до 4 dhs-rpcf-test-profiles.md
IMO MSC.1/Circ.1575, обработка данных PNT на судне: уровни точности и целостность imo-circ-1575.md
ICAO Doc 9849, приложение F: мониторинг, оценка и смягчение помех для GNSS icao-doc9849-appf.md

Каждый файл перечисляет свои исходные документы с версией, URL, датой прочтения и указанием того, что было и что не было проверено. Источники прочитаны 2026-10-09 (профиль NIST — 2026-10-18; бюллетень EASA и каталожные страницы EN 16803 проверены повторно 2026-10-10). Если источник удалось прочитать только через зеркало или каталожную страницу, файл говорит об этом.

Каждое испытание трёх оцениваемых пакетов стандартов по реальным прогонам движка v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 выполнено (met), 1 не выполнено (not met), для 2 нужны входные данные; imo-circ-1575: 1 выполнено (met), 4 не выполнено (not met), для 2 нужны входные данные; icao-doc9849-appf: 6 выполнено (met), 0 не выполнено (not met), для 2 нужны входные данные. Всего 13 выполнено (met), 5 не выполнено (not met) и для 6 нужны входные данные, которых у движка нет (журнал приёмника или документация на оборудование). Каждый порог был задан до прогона; промах остаётся промахом. Выполненный порог означает, что смоделированный сценарий выполнил заданный порог, и ничего не говорит об изделии. Пакеты подкрепляют доказательствами строки, на которые они ссылаются; это не оценка. Носит консультативный характер: результат анализа исследовательского и инженерного инструмента; это не навигационное оборудование с утверждённым типом и не служба обеспечения безопасности жизни; не должен служить единственным основанием для какого-либо решения по навигации или безопасности.Каждое испытание трёх оцениваемых пакетов стандартов по реальным прогонам движка v0.40.0 (`kshana standards-pack run`): dhs-rpcf: 6 выполнено (met), 1 не выполнено (not met), для 2 нужны входные данные; imo-circ-1575: 1 выполнено (met), 4 не выполнено (not met), для 2 нужны входные данные; icao-doc9849-appf: 6 выполнено (met), 0 не выполнено (not met), для 2 нужны входные данные. Всего 13 выполнено (met), 5 не выполнено (not met) и для 6 нужны входные данные, которых у движка нет (журнал приёмника или документация на оборудование). Каждый порог был задан до прогона; промах остаётся промахом. Выполненный порог означает, что смоделированный сценарий выполнил заданный порог, и ничего не говорит об изделии. Пакеты подкрепляют доказательствами строки, на которые они ссылаются; это не оценка. Носит консультативный характер: результат анализа исследовательского и инженерного инструмента; это не навигационное оборудование с утверждённым типом и не служба обеспечения безопасности жизни; не должен служить единственным основанием для какого-либо решения по навигации или безопасности.

Отчёт#

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

записывает compliance-report.compliance.md и compliance-report.compliance.json (--out <base> меняет имя). Входные данные — файлы результатов предыдущих прогонов: прогон сценария записывает <name>.result.json рядом с <name>.toml, а kshana receiver-trust записывает собственный. Вид каждого прогона читается из файла сценария рядом с результатом, из содержимого результата receiver-trust или из поля kind верхнего уровня и должен быть видом, известным движку. Результат указывается как неиспользованный, с причиной, и ничего не засчитывает, если его вид не удаётся найти, он не является известным видом или соседний сценарий и собственное поле kind результата расходятся. (scenario_hash результата и хеш файла сценария не сравниваются: первый движок вычисляет по разобранному сценарию, а хеш файла берётся по тексту, так что это разные величины.)

Одна лишь метка вида не является доказательством. Прогон засчитывается для возможности, только если его результат содержит и поля, которые записывает этот вид (например, результату jamming нужны его показатели качества и строки по эпохам; результату integrity нужны числа отсчётов). Поля перечислены в src/compliance/mapping.rs (KIND_FIELDS), и результат, в котором одного из них нет, не засчитывается. Хеш, не являющийся шестнадцатеричным, не сообщается как хеш. Результат receiver-trust, счётчики которого не являются целыми числами или у которого число обнаруженных или согласующихся превышает число поддающихся оценке, исключается и указывается как неиспользованный.

Для каждой строки отчёт выдаёт одно из:

Статус Значение
evidenced каждая названная в строке возможность имеет хотя бы один прогон в наборе
partly-evidenced некоторые имеют
not-evidenced ни одна не имеет
out-of-scope ни один результат Kshana строки не затрагивает

Столбец пробелов печатается для каждой строки, включая подкреплённые доказательствами: прогон, подкрепляющий доказательствами возможность, всё равно оставляет большую часть требования другим доказательствам. Отчёт повторяет правило формулировок в начале. --mapping печатает статические таблицы, а --sources — список источников.

Прогоны receiver-trust также вносят указанные ими числа (обнаруженные события из поддающихся оценке, согласующиеся предсказания из поддающихся оценке). Они описывают этот журнал, оценённый по событиям и допускам, заданным до прогона, и сообщаются так, как их указывает прогон.

Возможности#

Возможность Вывод Виды прогонов
Оценка доверия по журналу приёмника состояние доверия по эпохам по собственному журналу реального приёмника, моменты тревог и согласие с событиями, заданными до прогона receiver-trust
Влияние подавления (jamming) на бюджет линии отношение мощности несущей к плотности шума и состояние захвата по каждому спутнику при заданной геометрии источника подавления jamming, lunar-jamming, conflict-resilience
Обнаружение спуфинга и meaconing решения детектора и различающая способность детектора при заданной атаке спуфинга spoof, spoof-detect, impairment-eval
Мониторинг целостности и уровни защиты уровни защиты, доступность относительно пределов оповещения и результаты обнаружения неисправностей integrity, araim-reference-check, lunar-integrity
Holdover и инерциальное удержание рост ошибки положения или времени при недоступности GNSS относительно заданного порога clock, inertial, gnss-ins, ins-trn-coast, hybrid, hybrid-ukf, fusion, timetransfer, quantum-gnss-free-nav, quantum-time-transfer
Альтернативные и разнородные источники PNT характеристики навигации или синхронизации времени по источникам, независимым от основного диапазона GNSS combined-altpnt, terrain-nav, terrain-slam, gravity-map, leo-pass, leo-pvt, leo-pnt-chain, hybrid-optical-rf, ntn-positioning, hybrid, fusion
Оценка устойчивости по ансамблям угроз коэффициенты выживаемости и устойчивости по каждому вектору угроз для заданного ансамбля, с указанием допущений conflict-resilience, campaign
Происхождение воспроизводимого прогона хеш сценария, версия движка и начальное значение (seed) содержатся в каждом результате, чтобы прогон можно было повторить любой прогон, результат которого содержит scenario_hash