LinuxでPDFのデジタル署名を検証するにはどうすればよいですか?


18

MS Windowsで使用しているAdobe Readerには、PDFファイルのデジタル署名(X.509証明書で作成された)を検証する機能があります。

Linuxデスクトップでこのような検証を行いたいです。最も推奨されるPDFリーダーであるEvinceとOkularを試しましたが、それはできません。一方、Adobe ReaderはLinuxでは使用できません(https://get.adobe.com/reader/otherversions/を参照)。FirefoxおよびChromeの現在のバージョンに組み込まれているPDFリーダーは、署名を検証できません。

これを行うには、GUI、コマンドラインツール、またはFirefox / Chrome拡張機能を使用します。



3
最近、EnviceとOkularが使用しているPDF ライブラリーであるpopplerの開発が行われていることがわかりました。バグ16770を参照してください -デジタル署名のサポート
rpr

回答:


13

Poppler(poppler-utils)にはpdfsig、保存されている既知の証明書に対して署名を検証します。

まだ高度ではありません(エクスポートはありません)が、大きな前進です。

更新:元のバグ番号は16770で、2016-03-01に本番環境にプッシュされました。最初にv0.42に含まれました


この回答を編集して、これを導入したバージョン(おおよそ)をお知らせいただければ幸いです。
CVn

これはOkularまたはEvianceにインポートされますか?
フルボジェT

Ubuntu 16.04に含まれるpoppler-utilsでは利用できません
s1d

@ s1d:Ubuntulandで何を意味するにしても、それはBionic Beaverで最初でした。16.04は古いと思います。
笑顔

11

Libreoffice DrawはPDFを読み取ることができ、ドキュメントの証明書と署名を検証できます(File -> Digital Signatures -> Digital Signatures…)。

また、PDFがロードされると、証明書を検証できなかったが、署名が正常であった場合に警告メッセージが表示されます。

6.0.4.2を使用してテストしましたが、LibreOfficeのPDF署名に関連するクラウドファンディングページによると、おそらく2015年のバージョン4.4または4.5で可能でした。


私のために働いていない、パスワードを提供した後でも暗号化されたドキュメントを開くことができないと言います。Ubuntu 16.04上のv5.1
s1d

@ s1dは暗号化されたドキュメントにも署名されていましたか?
bjauy

はい、このページの他のスレッドで説明されている同じeAadharドキュメント。
s1d

0

デジタル署名のレンダリングと検証をサポートするLinux用PDFリーダーであるソフトウェアPDF Studio Viewerをお試しください。私はこのソフトウェアの開発者です。

開示:私はQoppaの開発者です


私はそれを試しましたが、実際にはpdfが署名されているかどうかを確認するのは非常に簡単です。これがなぜ投票されたのか分かりません。
ナルコレッシコ

これを試してみました。ドキュメントの下部に「署名が検証されていません」というメッセージが表示されました。そのメッセージの上にある疑問符をクリックすると、「署名の有効性は不明です」ポップアップが表示されます。さらに「詳細」ボタンをクリックすると、証明書の詳細と「証明書を信頼する」ボタンが表示されます。その後、PDF Studio Viewerを再起動してファイルを再度開きますが、マークをクリックしても同じ「署名が検証されていません」というメッセージが表示されます。ただし、[詳細]をクリックすると、証明書が信頼されていることがわかります。:S
ジャニスエルメリス

0

次の手順は、Aadhaarカードをダウンロードし、それを素敵なPDFに変換する方法を示しています。

  1. 後藤https://eaadhaar.uidai.gov.in/eaadhaar/この醜い探してフォームを埋めます。
  2. SMSからコードを入力して、ファイルをダウンロードして保存します。「aadhaar-unverified.pdf」として保存したと仮定します。
  3. deb-multimedia.orgリポジトリからacrobatリーダーとjavascriptプラグインをインストールします。apt-get install acroread acroread-plugins acroread-escript
  4. acroreadでファイルを開きます。パスワードは市のZIPです。
  5. 疑問符をクリックすると、「署名検証ステータス」というタイトルのウィンドウが開きます。
  6. 「署名のプロパティ」をクリックして、同じタイトルのウィンドウを開きます。
  7. 「証明書を表示」をクリックして、証明書ウィンドウを開きます。「信頼」タブを選択します。
  8. [信頼済みIDに追加]をクリックします。
  9. 「OK」をクリックして、証明書ウィンドウを閉じます。
  10. 「署名の検証」をクリックします。
  11. [閉じる]をクリックして、[署名のプロパティ]ウィンドウを閉じます。
  12. ページをファイル「aadhaar-verified.ps」に印刷します。
  13. ポストスクリプトファイルをPDFに変換します。次のコマンドは1行です。「sed」は、愚かな「コピー防止」をポストスクリプトファイルから削除し、ps2pdfがPDFファイルを作成します。 sed "/mark currentfile eexec/,/cleartomark/ d" aadhaar-verified.ps | ps2pdf - aadhaar-verified.pdf
  14. E-Aadhaarカードのコピーを紙に印刷し、PDFファイルのバックアップを作成します。

これで、問題なく印刷できる検証済みのPDFができました。そんなに簡単じゃなかった?


手順3を詳しく説明してください。
ユブラージパティル

私はこれが何であるかについて私があまり投票できないことをあまり理解していません。
アコスタディノフ

これらのユーザーがLinuxユーザーを苛立たせるためにaadhar検証プロセスを特別に設計したのはうれしいです。バックエンドのコードはどのようになるのでしょうか。
ナビーン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.