Перейти к содержимому
ecdsa.com

Подпись кода и документов

Прежде чем запускать релиз, выясните, что он на самом деле собой представляет. Проверьте бандлы Sigstore и сведения о происхождении пакетов npm вплоть до репозитория, рабочего процесса и коммита, которые использовались при сборке, прочитайте аттестации SLSA и in-toto, проверьте коммиты Git и файлы с SSH-подписью по списку allowed_signers и разберите подписи исполняемых файлов Windows, APK-файлов Android и архивов Java. Для документов и медиафайлов тоже есть инструменты: проверьте подписи PDF (PAdES, LTV) и подписанные письма (S/MIME), ничего не загружая на сервер, декодируйте метки времени RFC 3161, прочитайте Content Credentials (C2PA) изображений и видео и докажите, что ключ сгенерирован на YubiKey. Файлы и ключи остаются в браузере; инструмент проверки npm обращается к общедоступному реестру за пакетом, который вы указали, а необязательная вторая проверка Sigstore отправляет на наш сервер только бандл и хеш файла.

12 инструментов

Sigstore Bundle Verifier — проверка бандлов Sigstore

Бандлы cosign, npm и аттестаций GitHub

Проверьте бандл Sigstore по файлу, который он подписывает, и по ожидаемому удостоверению: сертификат Fulcio и его SCT, запись в журнале Rekor с доказательством включения и контрольной точкой (checkpoint), подписанные метки времени и метки времени RFC 3161, подписи DSSE и подписи сообщений — офлайн, как cosign verify-blob.

Открыть инструмент

npm Provenance Checker — проверка происхождения пакетов npm

Где на самом деле собран пакет npm

Введите пакет и версию: браузер загрузит аттестации реестра, и они будут проверены на этой странице — сведения о происхождении SLSA с подписью Sigstore и аттестация публикации от реестра — вплоть до того, в каком репозитории, каким рабочим процессом и из какого коммита собран архив пакета.

Открыть инструмент

in-toto Attestation Viewer — просмотр аттестаций in-toto

Сведения о происхождении SLSA, DSSE и .intoto.jsonl

Вставьте конверт DSSE, файл .intoto.jsonl, бандл Sigstore или список аттестаций npm: вы увидите субъекты утверждения и то, что говорит его предикат (сведения о происхождении SLSA, сводки проверки, SBOM), и сможете проверить подписи своими ключами или встроенным сертификатом.

Открыть инструмент

SSH Signature Verifier — проверка SSH-подписей

Подписанные файлы (ssh-keygen -Y), коммиты и теги

Проверьте подпись SSHSIG, созданную командой ssh-keygen -Y sign, или подписанный SSH-ключом коммит или тег Git по файлу allowed_signers: пространства имён, принципалы, сроки действия и SSH-сертификаты проверяются по тем же правилам, что и в ssh-keygen.

Открыть инструмент

Authenticode Inspector — инспектор Authenticode

Подписи файлов Windows: EXE, DLL и SYS

Перетащите исполняемый файл Windows: инструмент заново вычислит его хеш образа Authenticode и проверит каждую подпись — сертификат подписанта и цепочку, вложенные подписи SHA-1 и SHA-256, метки времени RFC 3161 и контрподписи — и выдаст предупреждения о данных, спрятанных после подписи.

Открыть инструмент

APK Signature Inspector — инспектор подписей APK

Схемы подписи Android APK v1–v4

Перетащите APK (и его .idsig): инструмент проверяет каждую схему подписи так же, как apksigner, — подписантов v2, v3 и v3.1 с их дайджестами содержимого, диапазонами SDK и цепочкой ротации ключей, дерево Меркла v4 и подпись JAR v1 — и показывает отпечаток сертификата, по которому Android идентифицирует приложение.

Открыть инструмент

JAR Signature Inspector — инспектор подписей JAR

Подписанные файлы JAR, WAR и EAR, запись за записью

Перетащите JAR, WAR или EAR: инструмент сверяет каждую запись с манифестом, каждый файл подписи — с манифестом, а каждый блок PKCS #7 — с его файлом подписи, проверяет метки времени и цепочку подписанта и выносит вердикт, как jarsigner -verify -strict, запись за записью.

Открыть инструмент

PDF Signature Verifier — проверка подписей PDF

Проверьте подписи PDF без загрузки файла

Перетащите подписанный PDF, чтобы увидеть, что охватывает каждая подпись, менялся ли документ после подписания, кто и когда его подписал. PAdES, CMS, метки времени RFC 3161 и данные LTV проверяются в браузере — файл никуда не загружается.

Открыть инструмент

S/MIME Signature Verifier — проверка подписей S/MIME

Проверьте подписанное письмо локально

Вставьте подписанное письмо или откройте файл .eml, .p7m или .p7s: подпись CMS, сертификат подписанта, соответствие указанного в нём адреса электронной почты заголовку From: и цепочка сертификатов проверяются в браузере.

Открыть инструмент

Timestamp Token Inspector — инспектор токенов меток времени

Декодируйте и проверьте токены RFC 3161

Вставьте токен метки времени, ответ или запрос: инструмент декодирует TSTInfo, сверит отпечаток сообщения с вашим файлом, а nonce — с запросом, и проверит подпись TSA и цепочку сертификатов. Всё это происходит в браузере.

Открыть инструмент

C2PA Content Credentials Inspector — инспектор манифестов C2PA

Прочитайте и проверьте Content Credentials

Перетащите файл с фото, видео или аудио, чтобы прочитать его Content Credentials: кто его подписал, какие инструменты его создали и редактировали, участвовал ли ИИ, из чего он сделан и менялся ли файл после подписания. Всё читается в браузере эталонной реализацией C2PA.

Открыть инструмент

YubiKey Attestation Verifier — проверка аттестации YubiKey

Докажите, что ключ создан на YubiKey

Вставьте аттестацию YubiKey PIV и сертификат f9 устройства: здесь проверяется цепочка до CA Yubico и считываются слот, прошивка, серийный номер, политики PIN и касания — чтобы перед выпуском сертификата вы могли потребовать ключ, сгенерированный аппаратно.

Открыть инструмент