Q&A

最終更新日:2011/5/18

このページでは、「アンテナハウスPDF電子署名モジュール」について、サポートに寄せられた質問への回答を紹介しています。

製品についてのQ&A

【質問】
RSA-2048bitの証明書に対応していますか?

【回答】

PDF電子署名モジュールでは最初のバージョンから対応済みです。PdsSettingで生成する証明書でも RSA-2048bit に対応しています。


【質問】
PDF電子署名の署名設定は、数百アカウント分作成するようなことは可能でしょうか。実用的な上限などの情報がありましたらお願いいたします。

【回答】

PDF電子署名モジュールではWindows証明書ストアに入れられた証明書+秘密鍵、またはPFX/PKCS#12ファイルを使って署名をします(PFX/PKCS#12はV1.2以降で対応)。

またPDF電子署名モジュール自体の設定としてはXML形式ですので、数百レベルだと大きな問題にはならないと考えます。


【質問】
陰影を透過(スタンプの下の文字や文面が見える状態)にしたいのですが、どのように設定したら良いでしょうか?

【回答】

透過の印影は、次の条件が必要です。


【質問】
署名処理を実行したらlibeay32.dllからエラーが返り、署名ができなかったので調べたら、C:\Windows\System32 folderに干渉するlibeay32.dll があった。これを別名保存することで、問題は解決し、署名はできるようになった。他のソフトをインストールしたら壊れるのではないか。電子署名モジュール配布のlibeay32.dllは、他のlibeay32.dllと互換性があるのか知りたい。

【回答】

本製品のV1.0ではご指摘の問題がありました。V1.1以降で、libeay32.dllの名称を変更し、この問題が起きないようにしました。


【質問】
証明書にベリサインの「ドキュメントサイニング用 Digital ID」を使用することはできますか?

【回答】

PDF 電子署名モジュールV1.3 MR1にて動作確認済みです。
ベリサインの「ドキュメントサイニング用 Digital ID」証明書は、PVKファイルとSPCファイルの2つで提供されます。(Windows XPの場合)PVKファイルが秘密鍵でSPCファイルが公開証明書になります。
これをWindows証明書ストアにインストールするにはMicrosoftのツールが必要になりますが以下より取得できます。(PVK/SPCファイルの説明もあります。)これでPDF電子署名モジュールからも利用可能になります。
http://www.microsoft.com/japan/msdn/vba/technical/pvk.htm
一旦Windows証明書ストアにインポートしてしまえば、PKCS#12ファイルとしてエクスポートも可能です。


【質問】
ICカードやUSBトークンの証明書を署名に使うことができますか?

【回答】

WindowsのCryptoAPI(CAPI)対応のUSBトークンやICカードリーダであればできるはずです。但し、弊社で確認済みなのは、技研商事インターナショナル社が販売しているiKey1000と、ロジカルテック社のLOCK STAR-PKIと、AladdinのeToken Pro(MR1からの対応となります。)のみです。

上記以外のCAPI対応のUSBトークンで署名できない場合は、以下の2点をメーカーに確認してみてください。


【質問】
コマンドラインにて署名実行を行っておりますが、スマートカード型の電子署名の場合、PINコードが設定されており、コマンドラインで実行をかけるとPINコード入力の要求がなされます。予め、PINコードをセットし一括で署名処理を行うことは可能でしょうか?

【回答】

残念ながら対応できません。
スマートカードのPINの処理はWindowsのCryptoAPIからスマートカードのドライバが呼び出されることで行われます。つまりスマートカードのドライバ毎に処理が異なります。また、CryptoAPIから制御も出来ませんので対応できません。


【質問】
PDF/Aをサポートしていますか?

【回答】

PDF 電子署名モジュールV1.1/1.2は、PDF/Aをサポートしていません。PDF/A準拠のPDFに署名はできますが、署名したPDFファイルはPDF/A準拠となりません。


【質問】
「PDF電子署名モジュールV1」で作成した署名フィールドにAdobe Readerで電子署名を付ける事はできますか?

【回答】

いいえ。Adobe Readerでは電子署名を付ける事はできません。Adobe Acrobatが必要です。(弊社では Acrobat 7以上で動作確認済みです)。


【質問】
「PDF電子署名モジュールV1」で商用タイムスタンプを付けたのですが、Adobe Acrobat 8で署名を検証すると、次の図のように時刻が不明になってしまいます。

QA-TS-Before.jpg

【回答】

QA-TS-Environment.jpg

この現象は、Acrobat/Adobe Readerでタイムスタンプ局の証明書の信頼性を検証できない状態になっている時に起きるようです。お使いのAcrobat 8(9も同じ)またはAdobe Readerの環境設定を変更して、Windows統合機能にチェックをしてみてください(左の図を参照)。

QA-TS-After.jpg チェック後は左の図のように表示されるはずです。

なお、Adobe Acrobat/Reader 7以前(のみ)では、日本の商用タイムスタンプの検証はできませんので、ご注意ください。


【質問】
・Java環境、.NET環境で署名フィールドを複数一度に作成することは可能ですか?

【回答】

現時点でJavaインターフェイスと.NETインターフェイスでは、一度に複数の署名フィールドを作成することはできません。複数を生成するにはひとつずつ、複数回 addDigSIg の API をご使用ください。


【質問】
コマンドラインで次のように入力したのですが、署名することができません。なぜでしょうか?
>PdsCmd -sign -add -sf FieldA -in outputA.pdf -out outputB.pdf

【回答】

署名する引数の付け方が間違っています。署名フィールド名 "-sf FieldA" として署名しようとしているのでエラーになっています。-add の後ろがそのままフィールド名になります。次のように入力してみてください。

>PdsCmd -sign -add FieldA -in outputA.pdf -out outputB.pdf

【質問】
署名した PDF を Acrobat で確認したところ、「署名の完全性は不明です」となっていました。また、その説明として「署名者の ID は信頼済み証明書の一覧に見つからず、親証明書も信頼済み証明書ではないため不明です」とありました。どうすれば正常に認識されるのでしょうか?

【回答】

次の三通りの方法があります。

1)自分で信頼する証明書に登録する。
たとえば Acrobat 8 なら、「署名のプロパティ」ダイアログから「概要」タブ-「証明書を表示」をクリックすると、「証明書ビューア」ダイアログが開きます。ここの「信頼」タブで「信頼済み証明書に追加」の設定をします。 ただし、これは利用する環境すべてで設定する必要があります。

2)信頼されている一般の認証局から証明書を購入する(有償です)
マイクロソフトが信頼するサードパーティによる商用の証明機関の証明書が便利です。たとえば、Windows 環境の Acrobat 8 なら、「環境設定」ダイアログから「セキュリティ」の「詳細環境設定」をクリックすると「電子署名の詳細環境設定」ダイアログが開きます。そこの「Windows 統合」タブのチェックを全てオンにしておけば信頼されます(Acrobat のデフォルト設定は Windows 証明書ストアを利用しない状態になっているため、この設定が必要となります)。

3)その他、使用している証明書のルート証明書が標準で Windows 環境に入っていない場合は、必要なルート証明書を取得して自分で Windows の証明書ストアの「信頼されたルート証明書機関」にインポートする必要があります。


【質問】
署名した PDF を Acrobat で確認したところ、「有効な証明済み」とはなっているのですが、「署名は有効ですが、署名者の ID が失効しているかどうかを確認できませんでした」という説明がついてしまいました。これはどうすれば解決できるのでしょうか?

【回答】

これは電子署名モジュールの問題ではなく、CRL(失効した証明書のリスト)の取得に失敗している可能性が高いです。ネット環境として CRL 配布ポイントにアクセス可能かどうかを確認してください。認証局のサーバが一時的にメンテナンスを行なっている場合にもこのエラーが出ることがあります。この場合は、時間をおいて試すことで成功します。


【質問】
日本認証サービス(JCSI)の SecureSign 証明書を使って署名をしました。Acrobat で閲覧する分には問題ないのですが、Acrobat の「署名のプロパティ」ダイアログから「証明書を表示」ボタンをクリックすると何の反応もなく、その後 Acrobat を終了することができなくなります。どうすればよいですか?使用しているのは Acrobat 8 です。

【回答】

これは Acrobat 8 / Adobe Reader 8 のバグです。Acrobat 9 / Adobe Reader 9 にバージョンアップすることで解決するようです。詳細は以下の Adobe の「サポートデータベース」をご覧ください。


【質問】
自己証明で署名を行い、作成されたPDFを別マシンに持っていた際に、証明書が無いため、署名の有効性が不明となります。この場合、署名自体に信頼がないとしても、PDFが変更されていないことが保証されていると考えてよいでしょうか?

【回答】

無効の理由として「署名後、文書が変更されたか壊れています」と出なければ改変されていないと言う事になります。
ただし秘密鍵が流出して偽造されたかどうかの確認は、署名者が確認でき無いので保証できないと言う事になります。


【質問】
電子署名モジュールでは、PDFを生成する際にハッシュキーを生成し、秘密鍵で暗号化していると認識しております。この場合、公開鍵を受け取っていることになるのですが、これはどうやって入手しているのでしょうか?

【回答】

署名値はPKCS#7形式でPDFの中に埋め込まれています。 PKCS#7バイナリの中にはX.509形式の証明書が含まれています。証明書の中には署名者の公開鍵が含まれています。


【質問】
電子署名モジュールが対応している JDK のバージョンを教えてください。

【回答】

電子署名モジュールは、JDK 1.4.2 で動作確認をしています。


【質問】
PFX ファイルを作成しましたが、コマンドラインでどうやって動かすのか判りません。

【回答】

'-p12-file password' でパスワードを指定してください。PFXファイルが開けない時はエラーメッセージが表示されます。

>PdsCmd -sign -add FieldA -in outputA.pdf -out outputB.pdf -p12-file [password] [filepath]

Copyright © 1996-2011 Antenna House, Inc. All right reserved.
Antenna House is a trademark of Antenna House, Inc.