署名付きPDFかどうかを判定署名付きPDFかどうかを判定します。
PDFドキュメントが電子署名付きPDFかどうかを判定できます。電子署名とは、電子文書に対して改ざんを検出するための仕組みです。PDFファイルに電子署名を付与することで、電子メールに添付して送付する見積書など配布するPDFファイルに署名することで第三者による文書の改ざんを防止することができます。また、信頼できる認証局(CA)から入手した証明書と、タイムスタンプサービスを利用すれば、いつ・だれが作成したPDFファイルであるかを保証することができ、文書の信頼性を高めることができます。
本サンプルプログラムでは、入力PDFが電子署名付きか否かを判定してコンソールに出力します。
package cookbook; import jp.co.antenna.ptl.*; public class CheckIsSignatured { // そのクラスのusageを表示する関数 private static void printUsage() { System.out.print("usage: java CheckIsSignatured in-pdf-file"); } /** * @param args the command line arguments */ public static void main(String[] args) { if (args.length < 1) { printUsage(); return; } try (PtlParamInput inputFile = new PtlParamInput(args[0]); PtlPDFDocument doc = new PtlPDFDocument()) { // PDFファイルをロードします。 doc.load(inputFile); System.out.println("署名付きかどうかを判定します。"); if(doc.isSignatured()){ System.out.println("このPDFは署名付きです。"); }else { System.out.println("このPDFは署名付きではありません。"); } } ...【AppendAnnotStampDefault.javaと同じ処理のため省略 ・エラーメッセージ処理と出力】... } }
CheckIsSignatured.java
C:\samples>java cookbook.CheckIsSignatured usage: java CheckIsSignatured in-pdf-file C:\samples>java cookbook.CheckIsSignatured blank.pdf 署名付きかどうかを判定します。 このPDFは署名付きではありません。 -- 完了 -- C:\samples>java cookbook.CheckIsSignatured pdf_kaizan_press.pdf 署名付きかどうかを判定します。 このPDFは署名付きです。 -- 完了 --