Как проверить цифровую подпись на PDF в Linux?

1396
TorstenS

Я пользователь Linux на рабочем столе.

Кто-то отправляет мне файл PDF с цифровой подписью. Предполагается, что он будет подписан с использованием какого-либо сертификата, выданного государственным / регулируемым органом / официальным учреждением.

Есть ли способ, которым я, как типичный конечный пользователь, мог бы определить, действительна ли подпись?

Я знаю, что Windows Acrobat Reader работает в некоторой степени, хотя даже там не совсем ясно, какова действительность подписи, в отличие от того факта, что она есть и, кажется, от XYZ.

5
Как и во всех сертификатах цифровой подписи, если вы не доверяете сертификату, подписавшему документ, подлинность документа не может быть подтверждена. Вы можете подписать документ с любым сертификатом, который вы хотите использовать в качестве автора, все зависит от того, доверяет ли человек, читающий документ, сертификату, который вы использовали. Только вы можете определить, так ли это, я бы просто использовал тот же подход, который я использую для проверки пути сертификата сертификата веб-сайта, для проверки пути подписи сертификата подписи. Ramhound 5 лет назад 0
@Ramhound: Я думаю, что вопрос скорее в том, "какая утилита мне покажет цепочку доверия, относящуюся к некоторым данным PDF со встроенными сертификатами?" Случайно, я не могу вспомнить инструмент, где я знаю, что он может получить доступ к подписи в файлах PDF. Мне тоже был бы интересен ответ на этот вопрос. dirkt 5 лет назад 1
Я знаю о том, что это за вопрос, избегая этого, благодаря справочному центру. Ramhound 5 лет назад 0

3 ответа на вопрос

3
cgrim

Я провел несколько часов, экспериментируя с этим, и обнаружил, что:

1) pdfsigкоманда из пакета poppler-utils может проверить подпись PDF. Использование простое:

pdfsig signed.pdf 

Но для меня это работает только для видимых подписей (версия 0.62.0 на Fedora 28). Для невидимых подписей это показывает:

Файл подписанный.pdf не содержит подписи

2) Master PDF Editor - это инструмент с графическим интерфейсом, который показывает и проверяет подписи, как показано на рисунке ниже, и для этого достаточно иметь бесплатную версию. Master PDF Editor - Signatures

3) LibreOffice Draw может показывать и проверять подпись, используя Файл -> Электронные подписи -> Электронные подписи . Но в моем случае он снова показывает только видимые подписи.

Что для вас означает «видимая подпись»? TorstenS 5 лет назад 0
@TorstenS _visible signature_ для меня - то, что PDF имеет некоторую дополнительную аннотацию, такую ​​как видимое изображение или текст, сигнализирующий, что PDF подписан, это похоже на водяной знак. cgrim 5 лет назад 0
Моим лучшим предположением будет то, что видимая подпись совсем не связана с криптографической подписью. Некоторые инструменты подписи PDF, которые позволяют криптографически подписывать PDF, также добавляют видимую подпись к документу, но обычно это не то, что вас интересует. TorstenS 5 лет назад 0
@TorstenS Посмотрите в документе [Появления цифровых подписей] (https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PPKAppearances.pdf) стр. 9: подписи _PDF могут быть видимыми или невидимыми ._ Вероятно, визуальная _Signature annotation_ (не сама подпись) должна присутствовать в документе PDF и может быть видимой или невидимой. Я попробовал документ, в котором есть только цифровая подпись, но без этой визуальной аннотации _Signature_, а затем инструменты, которые я перечислил в ответе, не смогут ее увидеть. cgrim 5 лет назад 0
2
eckes

По крайней мере Foxit Reader и Mupdf позволяют проверять подписи и работать в Linux. Предполагается, что последний будет иметь подкоманду командной строки для подписи и проверки ( mutool signначиная с 1.13.0)

Хотя верно, что Mupdf содержит код для этого, по крайней мере версии, которые упакованы в Ubuntu (16.04 LTS и 18.04 LTS), к сожалению, компилируются без этой функции. Я еще не проверял другие дистрибутивы. TorstenS 5 лет назад 1
Я попробовал `знак mutool подписанного.pdf`, но он ничего не показывает (версия 1.13.0 на Fedora 28). Как Foxit Reader для Linux может проверять подписи? Я установил последнюю версию 2.4.4.0911 и не могу найти для этого никакой функции. cgrim 5 лет назад 1
0
Tshering Namgyal Wangdi

Foxit PhantomPDF должен быть в состоянии обеспечить функциональность проверки цифровых сертификатов - доступны на основе покупки. Foxit Reader может подписывать сертификаты только цифровым способом. Функция mutool sign sign.pdf недоступна в сборках Ubuntu. Может присутствовать в Arch.

Похожие вопросы