Как внедрить информацию об отзыве CRL/OCSP для временной метки подписи PAdES с помощью iText?

Этот вопрос связан с этим другой вопрос.

Поскольку я хотел бы полностью проверить метку времени, добавленную в подпись PAdES (срок действия и отзыв), мне также необходимо добавить в подпись файл crl или ответ ocsp сертификата TSA, полученный при создании метки времени.

Насколько я понимаю, iText 5.4.1, похоже, не предоставляет эту функцию. В частности через

  • com.itextpdf.text.pdf.security.TSAClientBouncyCastle и
  • com.itextpdf.text.pdf.security.MakeSignature

Я что-то упускаю?

Заранее спасибо за вашу помощь,

Бертран


person bgillis    schedule 19.04.2013    source источник


Ответы (1)


Что касается CRL, вы можете добавить CrlClient, который получает CRL для сертификата TSA, в CrlList, переданный в MakeSignature.

Что касается ответа OCSP: вы правы. Кажется, что у нас нет другого способа сделать это, кроме как при создании метки времени на уровне документа.

person Bruno Lowagie    schedule 20.04.2013
comment
Спасибо, Бруно, за пояснение... Значит, вы имеете в виду, что как только мы добавим DSS и отметку времени на уровне документа, больше не будет необходимости проверять CRL или ответ OCSP, встроенный в подпись, или цепочку сертификатов, участвующих в подписи, потому что они также будут добавлены в DSS. Таким образом, проверки DSS и временной метки на уровне документа достаточно для проверки целостности подписи, а также ее действительности? - person bgillis; 20.04.2013
comment
DSS — это средство для добавления более свежей информации, связанной с проверкой, такой как CRL, OCSP,... для всех сертификатов в цепочке сертификатов сертификата подписи и сертификата с меткой времени. Это не то же самое, что сказать «этой информации достаточно для проверки действительности подписи». Сначала вам нужно проверить последнюю версию DSS, затем предыдущую и т. д., и, наконец, проверить CRL, OCSP и т. д. внутри подписи. Вкратце: вам нужно проверить их все. (См. определение в PAdES-4.) - person Bruno Lowagie; 20.04.2013
comment
В PAdES-4 (ETSI TS 102 778-4 V1.1.2) компоненты для проверки подписи: 1) данные проверки, на которые ссылается компонент VRI в DSS. 2) Данные проверки, указанные в DSS. 3) Данные проверки, встроенные в подпись (например, данные OCSP, см. часть 2 [i.4], пункт 4.4). 4) Данные проверки, указанные в локальном репозитории. 5) Данные проверки, на которые ссылаются, получены из онлайн-источника. Итак, какова цель добавления и проверки OSCP и CRL в части 2, если мы добавляем и проверяем OSCP и CRL в части 4 через DSS и отметку времени на уровне документа? Мне это кажется излишним. - person bgillis; 20.04.2013
comment
Предположим, мне нужно подписать документ с обещанием вам. В этом случае я могу быть заинтересован в том, чтобы опустить информацию OSCP и CRL, чтобы впоследствии я мог заявить, что не подписывал это; это подделка. Вот почему вы добавите временную метку DSS + Document-Level при получении документа. Если вы проверили все сертификаты, вы уверены, что документ в порядке. Я надеюсь, что этот простой пример доказывает, что это не всегда избыточно. - person Bruno Lowagie; 20.04.2013
comment
Я полностью понимаю этот вариант использования... однако, должны ли мы добавлять информацию OCSP и CRL (часть 2) и снова добавлять ту же информацию в DSS (часть 4), если все эти операции выполняются одновременно? Достаточно ли в этом конкретном случае добавления DSS и метки времени на уровне документа? Извините, но я немного запутался, когда и где я должен добавлять и проверять какую информацию (целостность подписи и документа, истечение срока действия и отзыв сертификата, проверка LTV) в зависимости от варианта использования. Я хотел бы, чтобы эта тема была добавлена ​​в ваш очень хорошо написанный технический документ «Цифровые подписи для документа PDF». - person bgillis; 20.04.2013
comment
Добавление DSS и метки времени на уровне документа — это то, что обычно не делается в момент подписания. Обычно это делается намного позже: чтобы добавить отсутствующие сертификаты, OCSP, CRL,... Чтобы добавить подпись с лучшим алгоритмом хеширования и/или шифрования,... - person Bruno Lowagie; 20.04.2013
comment
@bgillis Добавление информации OCSP/CRL в соответствии с PAdES-2 — это, по сути, старый добрый стиль PDF-1. Таким образом, если вы хотите предоставить информацию в формате, понятном зрителям, не поддерживающим PAdES-4, включите их туда. Обратной стороной является то, что эта информация получена до фактического времени подписания. Если вы хотите иметь информацию, подтверждающую, что сертификаты были действительны даже во время подписания, обязательно используйте способ PAdES-4. Если вы хотите добавить информацию о проверке апостериорно, вы должны использовать стиль PAdES-4. - person mkl; 20.04.2013