2010/01/25

pdf 署名

PDF に署名したいなーって思いました
ググりました

Adobe Acrobat 使えばいいみたいなんですが
手元にあるのが弱いバージョンだからなのか
Reader と上手く連携してないからなのか
何だか良く分かりません

っていうか Linux とかでしたいじゃん

で、これですね
MOONGIFT: » PDFに署名をする「PortableSigner」:オープンソースを毎日紹介
Java で書かれてるようなので Linux でもいけそうだ!
と言いながらとりあえず Windows XP で試してみたんですが
インストールして Readme を参照して JCE というのを入れてみたら
しっかり署名することができました
簡単!
まぁ、きっと Acrobat を使うともっと凄いこと色々できるんだろうなぁ

で、Acrobat で開くと
「文書の証明の完全性が不明です。作成者が検証できませんでした。」
って出ます。
これはルート証明書から署名した証明書まで辿れなかったってことだろう
と思ったんでちょっと仕組みを調べてみました。

といっても、メニューの「文書」に「信頼済み証明書」ってのがあって
それ開いて表示を「証明書」にすれば良かっただけなんですが。
で、そこには Adobe Root CA ってのしかありません。
ん〜? と思って他のも調べてみると Reader の 8 までは Adobe Root CA のみ
9 になると色々と第三者機関の証明書も入っていました。

全ての信頼の起点はこれなの? と思いもう少し調べてみると
Windows であれば
[編集] -> [環境設定] -> [セキュリティ] -> [詳細環境設定]
と進んで [Windows 統合] ってところで
片っ端からチェックすればいいみたい。
Windows で信頼されているルートを Reader でも信頼することになります。

んでは、信頼済みな証明書ってのは何のことなの? って思ったので
更にしつこくググってみたら
Adobe - Certified Document Services (CDS)
に辿り着きました。

なるほど、Microsoft の場合は
Microsoft Root Certificate Program
Firefox の場合は
Mozilla CA Certificate Store Information
で採用されていないといけないわけですが
Adobe Reader に関してもそういうのがあるってことですね。
でも Adobe の少なくないの?

PDF の方が色々用途があったり署名が頻繁だからなのか
商品ラインナップも個人用とか法人用とかあったりして
署名できる回数も決まってたりで複雑そうでした。
タイムスタンプとかその辺良く分かってないんですが。
同じ Adobe でも Air 用の Code Signing とかとは勝手が違うみたい。
ビジネスとか法律の香がしてきました。