« 2007年05月18日 | メイン | 2007年05月20日 »
2007年05月19日
PDFと署名(30) — PDFの署名の検証
さて、今週は、水曜日から金曜日3日間ソフトウェア開発環境展ということで、3日間のうち半分ほどは、国際展示場に行っていました。弊社は、このところ、ソフトウエア・コンポーネントの販売が好調で、だんだん、パッケージ会社からソフトウエア・コンポーネント会社に事業の中心がシフトしつつあります。そういう意味では、今年のソフトウェア開発環境展は丁度良い機会でした。
ブースでは、XSL Formatterを初め、PDF製品を出展して説明させていただきましたが、大勢の方に関心をもっていただき、また、説明を聞いていただいた方も多く、本当にありがとうございました。
今回、参考出品した「PDF電子署名モジュール」を目当てにお立ち寄りいただいた方も予想外に多く、商品化に向けて、ますます張り切っていきたいと思います。さて、「PDF電子署名モジュール」関係で幾つか、ご質問をいただきました。その中に、
○PDFの署名にルート証明書が付くかどうか、
という御質問がありました。
これは、Acrobatを初め、PDFの署名にSelfSign方式を使っているため、いわゆる、PKI(公開鍵インフラ)の立場から見て、「PDFの署名の信頼度はどうなんだろう?」という疑問をもたれているのではないか、と推察しました。
この質問に対してお答えするため、まず、「PDF電子署名モジュール」では、どのような「秘密鍵+電子証明書」を使うかについてQ&A形式で整理してみます。
質問:認証局が発行した証明書は使えますか?
回答:使えます。「PDF電子署名モジュール」(参考出品版)では、Windowsの証明書ストアに証明書を登録して、Windows証明書ストア用のAPIを使って署名をします。ですので、Windowsの証明書ストアに入れることのできる電子証明書であれば、任意のものが利用可能です。
質問:自己署名(Self-Sign)証明書は使えますか?
回答:使えます。「PDF電子署名モジュール」(参考出品版)には、自己署名証明書を発行する機能も付いています。また、自己署名証明書は、Windowsの証明書ストアに入れることができます。
質問:Windowsの証明書ストアとは何ですか?
回答:Windows標準の証明書管理領域を、証明書ストアと言います。Internet Explorerの[ツール]-[インターネットオプション]の[コンテンツ]タブから[証明書]ボタンをクリックして証明書ストアに格納されている証明書を確認することができます。Windows環境では、証明書と秘密鍵を証明書ストアに入れて利用する方法が一般的です。
さて、そこで、最初の「PDFの署名にルート証明書が付くかどうか」という御質問ですが、電子署名したPDFには、PDFの指定した範囲のハッシュ値を秘密鍵で暗号化したデータと、その秘密鍵のペアである公開鍵証明書(電子証明書)を埋め込みます。ですので、ルート証明書が署名されたPDFの中に付くわけではありません。
ルート証明書は、PDFに埋め込まれた電子証明書を検証するために使うのですが、その際、署名を検証する環境で、PDFの中の電子証明書からルート証明書までのチェーンができれば、ルート証明書の役割は終わりです。そういう意味では、ルート証明書は署名を検証するPC環境にあるか、あるいはインターネット経由でアクセスできれば良いのであって、「電子署名をしたPDFの中にルート証明書を入れる必要はもともとありません。」ということになります。
上記アンダーラインの部分、PDF Referenceを確認しましたところ、間違っているのかもしれません。
☞ 5月21日へ続く