Перевірити підпис
Завантажте підписаний PDF, і інструмент витягне кожен цифровий підпис, визначить підписанта, перевірить дійсність сертифіката та покаже, чи змінювався документ після підписання. Також можна надати довірений сертифікат для перевірки ланцюжка підпису.
Як це працює
- Завантажте підписаний PDF-файл. Перевірка починається автоматично.
- Інструмент показує зведення: кількість знайдених підписів і скільки з них дійсні.
- Кожен підпис отримує детальну картку з іменем підписанта, видавцем, датами та статусом.
- За бажанням завантажте довірений сертифікат (.pem, .crt, .cer, .der), щоб перевірити підпис відносно конкретного центру довіри. Повторна перевірка запускається автоматично.
Що перевіряється
Розбір підпису
Інструмент витягує з PDF об'єкти підпису PKCS#7, декодує структуру ASN.1 і отримує сертифікат X.509 підписанта разом із ланцюжком сертифікатів, вбудованим у підпис.
Дійсність сертифіката
- Термін дії: чи перебуває сертифікат зараз у межах строку дії?
- Виявлення самопідписаних: чи є сертифікат власним видавцем?
- Ланцюжок довіри: якщо надано довірений сертифікат, чи веде до нього ланцюжок сертифіката підписанта?
Криптографічна перевірка
- Інструмент відтворює байти, які охоплює
/ByteRangeпідпису, хешує їх алгоритмом, заявленим підписантом, і порівнює результат з атрибутомmessageDigestусередині підпису. - Потім він повторно серіалізує підписані атрибути як DER SET і перевіряє підпис за відкритим ключем сертифіката підписанта.
- Підпис вважається дійсним, лише якщо пройдено всі ці перевірки. Якщо байти PDF змінили після підписання або вбудований підпис не відповідає ключу підписанта, статус показує «Недійсний: криптографічну перевірку не пройдено» із конкретною причиною.
Підтримувані алгоритми підпису
| Алгоритм | Шлях перевірки |
|---|---|
| RSA (PKCS#1 v1.5) | node-forge publicKey.verify, із запасним варіантом Web Crypto |
| RSA-PSS (RSASSA-PSS) | Web Crypto verify({name: 'RSA-PSS', saltLength}) |
| ECDSA P-256/P-384/P-521 | Web Crypto verify({name: 'ECDSA', hash}) після перетворення підпису DER → IEEE P1363 |
Якщо підпис використовує алгоритм поза цим списком (наприклад Ed25519, SM2 або RSA з нетиповим OID дайджесту), картка показує жовтим «Не перевірено: непідтримуваний алгоритм підпису» разом із конкретним OID або причиною. Це свідомий поділ на три стани:
- Дійсний: підпис криптографічно перевірено за відкритим ключем підписанта.
- Недійсний: перевірку виконано, і результат негативний (байти змінено, ключ не збігається).
- Неперевірений: інструмент не зміг виконати перевірку для цього алгоритму. Метадані сертифіката все одно показуються, але підпис слід вважати «невідомим» і перевірити його в Adobe Acrobat або через
openssl cms -verify.
Небезпечні алгоритми дайджесту
- Підписи з MD5 або SHA-1 відхиляються як недійсні й позначаються статусом «Небезпечний дайджест». Для обох алгоритмів опубліковано атаки на колізії, тож підпис поверх хешу SHA-1 чи MD5 не гарантує цілісності.
- SHA-224, SHA-256, SHA-384 і SHA-512 приймаються.
Охоплення документа
- Повне охоплення: підпис охоплює весь PDF-файл, тобто після підписання жодних байтів не додавали й не змінювали.
- Часткове охоплення: підпис охоплює лише частину файлу. Це може означати, що після підписання вносилися зміни (не обов'язково зловмисні: інкрементальні збереження дають часткове охоплення).
Відомості про підпис
Кожна картка підпису показує:
- Підписав: загальне ім'я, організацію та email із сертифіката підписанта
- Емітент: центр сертифікації, що видав сертифікат підписанта
- Дата підписання: позначку часу, вбудовану в підпис
- Дійсний з / Дійсний до: період дії сертифіката
- Причина: чому документ підписано (якщо вказано)
- Розташування: де його підписано (якщо вказано)
- Статус охоплення: повне чи часткове
- Значок довіри: довірений чи поза ланцюжком довіри (лише коли надано власний сертифікат)
Технічні подробиці
Розгорніть розділ технічних подробиць, щоб побачити:
- Серійний номер сертифіката підписанта
- Алгоритм дайджесту (SHA-256, SHA-512 тощо)
- Алгоритм підпису (RSA із SHA-256, ECDSA із SHA-256 тощо)
- Повідомлення про помилки для недійсних підписів
Сценарії використання
- Перевірка цифрово підписаного договору перед контрпідписанням
- Аудит підписаних документів, щоб переконатися, що їх не змінювали
- Перевірка, чи не закінчився термін дії сертифіката після підписання документа
- Перевірка підписів за кореневим сертифікатом вашої організації
- Огляд відомостей про підписання державних чи юридичних документів
Поради
- Самопідписаний сертифікат не означає, що підпис недійсний: це означає, що особу підписанта не можна підтвердити через довірену третю сторону. Для внутрішніх документів це звична річ.
- Часткове охоплення не завжди свідчить про втручання. Багато робочих процесів PDF додають інкрементальні оновлення (наприклад, другий підпис), які створюють часткове охоплення.
- Завантажте кореневий або проміжний сертифікат вашої організації як довірений, щоб отримати перевірку ланцюжка довіри.
Пов'язані інструменти
- Цифровий підпис: підписуйте PDF власним сертифікатом
- Сплощити PDF: сплощіть PDF перед підписанням, щоб запобігти змінам після підпису
- Видалити метадані: очистьте PDF перед накладанням підпису