Skip to content

Проверка ЭЦП и ГОСТ без КриптоПро; исправления объединения и МЧД - #3

Merged
zaynullinmi merged 3 commits into
mainfrom
feature/managed-signature-verification
Oct 7, 2026
Merged

zaynullinmi merged 3 commits into
mainfrom
feature/managed-signature-verification

Conversation

@debug23win

@debug23win debug23win commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

Добавлена проверка каждого подписанта CMS/CAdES (ГОСТ-2001, ГОСТ-2012 256/512, RSA, ECDSA) через BouncyCastle 2.7.0 без криптопровайдера. Пункт «Инструменты → Проверить ЭЦП…» показывает отдельные результаты для документа, подписи, привязки сертификата, доверия, отзыва и TSA; отчёт можно сохранить или скопировать.

Исправлены принятие повреждённых подписей по совпавшему messageDigest, старый вложенный документ при объединении, потеря выбранного режима откреплённой подписи и использование устаревших данных МЧД. XML/SIG проверяются и копируются из одного снимка; конфликт файлов и противоречивые идентификаторы останавливают операцию. Запись подписей атомарная; ASN.1 ограничен по вложенности и длине.

Поддержаны PKIX, подписанные CRL/OCSP и запросы по выбору, проверка TSA с nonce/imprint/ESS/EKU. Вложенный корень не создаёт доверия, неизвестные статусы показаны явно, signing-time не используется для обхода срока сертификата. Тесты запускаются на pull request и блокируют сборку Windows; релизный тег привязан к коммиту сборки.

Проверка: полный Linux CI прошёл, включая OpenSSL TSA, сохранение/установку/удаление сертификатов и 76 новых регрессионных сценариев. Windows x64 self-contained single-file сборка также прошла. Локально выполнены Release-сборка и интеграционные тесты с --skip-user-store.

Релиз v1.1.0 собран и опубликован с точного коммита 45de8c6. В релизе доступны EXE, ZIP с лицензиями зависимостей и контрольные суммы SHA-256. Проверки выпуска завершились успешно.

zaynullinmi pushed a commit that referenced this pull request Oct 7, 2026
zaynullinmi added a commit that referenced this pull request Oct 7, 2026
Сведение PR #3 (проверка ЭЦП без КриптоПро) с переработкой интерфейса, перенос разделения подписи, исключения подписанта и надёжного автообновления из PR #2, исправления по ревью и автоматическая сборка архива релиза.
@zaynullinmi
zaynullinmi merged commit aa49765 into main Oct 7, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants