0

デジタル証明書を Windows のパスワードで保護された PFX ファイルにエクスポートしました。

これでPDFにデジタル署名するにはどうすればよいですか?

4

3 に答える 3

3

Aspose Pdf Java SDK を使用して PDF に署名しています。これらの最初の 2 つの手順は、どのライブラリでも同じです。

証明書をまだ持っていない場合は、openssl を使用して ssl 秘密鍵を生成します。CAによって署名されていないため、明らかに警告が表示されます。

openssl req -x509 -newkey rsa:2048 -keyout testkey.pem -out testcert.pem -days 365

次に、キーを pkcs12 形式の証明書に変換します。

openssl pkcs12 -name test -export -in testcert.pem -inkey testkey.pem -out test.pfx

最後に、Aspose Pdf またはその他のライブラリを使用して PDF に署名します。

        PdfFileSignature pdfSignSingle = new PdfFileSignature();
        //Open the pdf
        pdfSignSingle.bindPdf(pdfFileInputStream);

        // Load the certificate using the com.aspose.pdf.PKCS1 object
        PKCS1 pkcs1 = new PKCS1(certificateFileInputStream, certificatePassword);
        pkcs1.setAuthority("Sample Person");
        pkcs1.setReason("I want to sign");
        pkcs1.setContactInfo("some contact info");
        pkcs1.setLocation("here");
        pkcs1.setShowProperties(false);

        // Apply the signature. (0,0) is in the lower left corner.
        pdfSignSingle.sign(1, true, new Rectangle(100, 100, 150, 50), pkcs1);
        // Apply the signature image
        pdfSignSingle.setSignatureAppearanceStream(imageFileInputStream);

        pdfSignSingle.save(pdfFileOutputStream);
于 2016-05-06T03:47:45.207 に答える
0

当社のSecureBlackboxは、さまざまな形式のファイル、Windows CryptoAPI、および PKCS#11 を介したハードウェア デバイスに保存された証明書を使用して PDF ドキュメントに署名するために使用できます。

于 2013-07-18T09:40:28.473 に答える
-2

iTextPdfは Java 用の優れた API であり、pdf ファイルを処理します。例を含む優れたドキュメントもあります: http://itextpdf.com/book/digitalsignatures20130304.pdf

PDFドキュメントに署名する例もあります

于 2013-07-18T09:24:19.693 に答える