Подпись кода и документов
Прежде чем запускать релиз, выясните, что он на самом деле собой представляет. Проверьте бандлы 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 и касания — чтобы перед выпуском сертификата вы могли потребовать ключ, сгенерированный аппаратно.
Открыть инструмент