« GreenPDF.com PDFで地球温暖化を救う! | メイン | XSL Formatterケーススタディ:ブログ製本サービス »

2007年05月24日

PDFと署名(32) — PDF署名の検証について、再び

PDF署名の検証については、既に何回かお話しました。しかし、どうも、断片的でしたので、もう一度、Adobeの「Digital Signature User Guide」に沿って、簡単にまとめてみたいと思います。以下は、Adobe Readerによる署名の検証の概要です。

○署名が有効(妥当)であるとは?
・署名に使った証明書が有効で信頼できること。すなわち、署名者の証明書から信頼できる認証元までのチェーンを作ることができて、また、署名者の証明書が失効していないこと。
・文書が署名されてから変更されていないか、もしくは許可された変更のみがなされていること。

○署名の有効性検証の結果
・有効、不明、有効でないの3つの状態になる。
・有効とは、署名が有効で信頼できる証明書に関連づけられており、かつ、文書は著者が禁止した方法では変更されていない状態
・不明とは、署名が有効性を検証できない証明書に関連づけられているか、文書に不明な変更があるか、それとも未検証の状態
・有効でないとは、署名が有効でない証明書に関連づけられているか、それとも文書は著者に禁止された変更がなされている

PDFの署名の有効性の検証は、証明書の状態と文書の状態を完全に分離していません。本来、証明書の状態と文書の状態は完全に独立なので、検証結果を明確に分離しても良いように思うのですが。このため、Adobe ReaderのPDF署名の検証状態の表示はとても分かりにくいように感じます。

PDF署名では、署名につかったハンドラが様々になります。署名につかったハンドラと署名を検証するハンドラは同じものであることが望ましいのですが、これは代替ハンドラを使うこともできます。このことは、既にお話しました。

☞ 2007年05月10日 PDFと署名(23) — 署名ハンドラ

証明書が失効していないかどうかの検証は、証明書失効リスト(CRL)と照合するか、それとも、オンライン証明書状態プロトコル(OCSP)でチェックするかのいづれかの方法になります。そして、PDFには、通常署名とMDP署名という2種類の署名がありますが、Adobe Readerは通常署名では必ずしも証明書失効チェックは行われません。MDP署名では必ず証明書失効チェックをするようです。

☞ 2007年05月16日 PDFと署名(28) — PDFの2種類の署名

Windows証明書ストアを信頼するかどうか?
証明書の有効性を検証するには、証明書のチェインを作ることになりますが、証明書のチェインはルート証明書に行き着きます。「Windows証明書ストアには、メーカからの出荷時に、様々なルート証明書が入っていますし、なんらかの拍子に、ルート証明書がWindows証明書ストアに入ってしまうことがあります。そこで、個人ユーザは、Windows証明書ストアを信頼しない方が良い。企業ユーザは、管理者が遠隔操作でWindows証明書ストアを管理できるので、信頼しても良い。」(「Digital Signature User Guide」P.88 6.2.3 Using Root Certificates in the Windows Certificate Storeより)。」

証明書を直接入手した場合、その証明書を信頼する証明書のリストに追加できます。

こうしてみますと、Adobe Readerによる署名の検証結果については、それを左右する様々な要因があり、署名検証の運用管理は注意深く要因を管理しなければならないでしょう。

投稿者 koba : 2007年05月24日 08:00

トラックバック

このエントリーのトラックバックURL:
http://blog.antenna.co.jp/PDFTool/mt-tbng2.cgi/697

コメント

コメントしてください




保存しますか?