PDF電子署名を長期署名化するPAdESと言う仕様の検討がETSIを中心に進められています。既に英語と
日本語のWikipediaには記載されています。日本語版はETSI にも行かれているUさんが編集されてました。で私もPAdESの事をこのブログに書こうと思いつつ…ずるずる伸ばしていたらUさんのブログで
PAdESに関する説明が開始されていました。
しまった!どう考えてもPKIの仕様の話でUさんに勝てるとは思えない(笑) これはもうあちらのブログを楽しみにするしか無いか… とは言え時間があったら私なりのPAdESの話を書くかも。こちらは入門編的な内容になるだろうし、勝ち負けの問題でも無いだろうし… と自分をなぐさめてみる。
なお弊社ではPDF電子署名に関しては
アンテナハウスのPDF電子署名モジュールの販売代理店でもあります。PDF電子署名に関しては多少はノウハウもあります。一括してバッチ的にPDF署名を付与するようなツールを受託開発した経験も複数ありますので、ご興味がありましたら
お問い合わせ下さい。カスタマイズを含めてご相談にのります。ちなみに最近は署名ではありませんが
PDF/Aに関係する仕事もしていたりします。
何とかPAdESに対応したPDF署名ツールが提供できるようになると良いなぁとは思っていますがさてどうなりますか。その前に(入門的な)記事をちゃんと書かなきゃなぁ。とりあえずPAdESに(特にPKI的な)興味がある方はUさんのブログ
「自堕落な技術者の日記」は必読ですよ。
また間が空いてしまいました。今日はモバイル環境に関してつぶやいて…違う違う書いてみましょう。(ブログを書かずに何をしているかがバレバレです…)
以前にも書きましたがモバイルに私が使っているのはdocomoの
Android端末HT-03Aです。しかし
iPod touchも持っているので状況により使い分けています。残念ながらWi-Fiが使える環境下での使い勝手は私的にはiPod touchの方が上です。Wi-Fi環境下において比較すると、
・HT-03Aのタッチパネルの感度が悪い。
・HT-03Aの動作が少しもっさりしている。
・HT-03Aの方がネット接続するまでの時間もかかる。
ん?でもこれらはどちらかと言えばハードに関わる割合も大きいですよね?と言うことでAndroidの問題と言うよりもHT-03Aのデバイス性能の問題が大きいと思っています。きびきび動くCPU(まあもっさりしているのはJavaって面もありますが)と良いタッチパネル等を使った端末が出ればかなりイメージは異なる思います。操作的に不満なのは2本指での拡大縮小操作(ピンチインとアウト)が無いことくらいです。
HT-03AのAndroidは先日1.5から1.6にバージョンアップされました。iPhoneの場合はiTunesを使ってPC経由だけど、Androidは端末だけでバージョンアップできるから便利!…とは良く聞く話ですが肝心のバージョンアップはサーバから通知が来ないと行えない問題があります。1日とか待つなら良いのですが私の場合は開始されて1週間後でした。これはちと辛い。操作は楽だけど時間がかかると言うのはマニア向けでは無いですね。しかし実際のHT-03Aの利用者は現時点ではマニアが多い気もします。
何はともあれAndroid 1.6になってやっと有料アプリも買えるようになりました。で有料アプリの値段を見るとドルと円はもちろんユーロやらポンドやらフランやら色々な通貨で根付けされてます(笑) まあ何でも自由なAndroidっぽくて良いと言えば良いですけど(^^; ただ個人的にはプリペイドの仕組みが無いのが残念なところです。なのでまだ有料アプリは買っていません。Androidアプリ自体は随分増えました。iPhoneとはまだアプリ数が1桁違いますが1万は突破したので結構揃ってきたなと感じています。
iPod touchではプリペイドで気軽に支払っているので少しずつアプリ増やしてます。先日は
知人から教えて貰ってロシア語の辞書が見たくて
EBPocket Proと言うアプリを600円で購入しました。EBPocketはEPWING/電子ブックビューアなんですが、これに
Joeさんがフリー公開されている露和辞書等を組み合わせて無事にロシア語を引けるようになりました。ちなみにiPod touchにはロシア語のソフトキーボードも入っているのでONにすればロシア語の入力も簡単です。え?なんでロシア語なのかって?そりゃもちろん歴史あるロシア宇宙開発をネットでチェックする為ですよ(^^; EBPocketはフリー版もありますがフリー版だとPDIC辞書が使えないのでご注意下さい。
あとAndroidアプリが弱いのはゲームかなあ。iPhoneアプリの方が手軽で本格的なゲームが楽しめるように思います。ただAndroidアプリの面白いところは裏技的なプログラミングでも審査が無いので利用可能なところでしょうか。iPhoneアプリは安心して使える半面プログラミング的な面白さは審査を考えると難しい面があるように思います。
モバイルに話を戻しましょう。先日数日ですがWi-Fi等のネット接続が出来ない環境で仕事をする必要に迫られました。プログラミングはMacBookを使ってMacOSでGCCを、WindowsでオフィスアプリやVisual Studioを使えるので何とかなります。ただ最近だと分からないことはまずネットで検索するクセが付いていてこれとメールが困ります。今回はHT-03Aが活躍してくれました。検索はGoogle検索ウィジェットがあるので一発で検索できますので便利でした。これで結構問題無く仕事が出来てしまいました。いややはりモバイル用端末があると便利です。
HT-03Aの弱点は後は通信料金でしょうか。おそらくiPhoneよりも1000円から2000円くらい毎月の通信費が多くかかってます。docomoさんも通信費くらいはiPhoneと同等にして欲しいです。と言うことで単にモバイル環境が欲しいとか手軽に使いたいならやはりiPhoneを勧めてしまいます。
以上HT-03Aに厳しいことばかり書いた気もしますが、私個人としてはそれなりに使えていますし後悔はしていません。Androidはあと数年して端末が洗練されてくると面白くなるかもしれませんね。その為の事前投資ってことですね。まあHT-03Aの2年縛りが解けた時がある意味楽しみです。
Windows環境で証明書ストアを利用するAPIはWin32の時代ではCryptoAPI(CAPI)が使われてきました。.NET Frameworkの時代になって、CryptoAPIに対してCOMインターフェイスを提供するAPIが
CAPICOMでした。CAPICOMにより.NET FrameworkからCryptoAPIの利用が可能になります。証明書の選択ダイアログを表示して選択したり、証明書情報をGUIで表示したり、証明書を検証したりする事ができます。しかしCAPICOMのDLLファイルは標準では提供されていません。更に色々なアプリケーションがCAPICOMをインストールする事が多く混乱の元になっていました。
実は弊社の
長期署名ライブラリLe-XAdESはCAPICOMを使っています。それは昔Le-XAdESを開発した当時参考にしたのが.NET Framework 1.0用のサンプルだった為でした。しかし.NET Framework 2.0から
X509Certificateが新しく
X509Certificate2として機能が拡張されCAPICOMと同等の処理が可能になっていました。調べた結果、現在Le-XAdESの利用においてもX509Certificate2を使えばCAPICOMを使わなくても良いと言う事が分かりましたので、現在修正してバージョンアップ作業中です。
と言う事で今後.NET Framework 2.0以降にて証明書ストアを利用するならX509Certificate2クラスと
X509Storeクラスを使いましょう。証明書の認証パスの検証も
X509Chainクラスにて可能です。GUIを使った証明書の選択や表示は
X509Certificate2UIクラスを利用します。
これで今後はCAPICOMと決別できそうです。ただCryptoAPI(CAPI)はICカード等のドライバの関係でまだまだ使わなければならなかったりしますが…