2007年7月16日月曜日

XML署名.

 XML署名……は、初めて耳にしたよ orz
 何ですかXML署名って?w

 仕事で使うかもしれないと言う話が持ち上がり、色々と調べてみたんですが、結局使わない事になりやがりました.
 が、何か面白そうだったので引き続き調査中.

 元々「XML署名」と言うのは、XML(タグで区切られたデータを扱うファイル)の改ざん防止、ファイル真性の証明を目的として作られた規格との事.
 詳しくは↓ココ参照.
 @IT:XMLデジタル署名とXML暗号

 別に新しい技術と言う訳では無いようです.
 確かに今やあらゆるデータのデファクトスタンダードとなりつつある(既に成ってる?)XMLに電子署名を付けるのは理にかなった考えです.

 が、この機能を実現しようとするとちょいと面倒.
 面倒と言うか、まだ上手く動かせてません orz
 .Netで試してみたんですが、何故かエラーが発生.
 丸々MSのサンプルを動かしてもエラー.
 OpenSSLで自己署名した証明書の作り方が悪いんだろうか??

 でもこれが使える様になったら、結構面白そうです.
 因みに.NetでもJavaでもちゃんと標準ライブラリとして実装されている様です.
 .Netでは

 System.Security.Cryptography.Xml.SignedXml

 で実現するんですが、これ自体は何にも難しい事は無い(と思われる)んですが、ちゃんと動作するか確認するのに証明書を用意しないと駄目な訳で、エラーが出ると「これってコードが間違えてるのか?それとも証明書自体が悪いのか?」と前述した様に迷走モードに突入しますw

 そんなXML電子署名ですが、ちゃんとサードパーティのライブラリもあります.

 Le-XAdES Library / XAdES署名ツール XAdEStool

 まぁ、実際にはライブラリは公開されていない開発途中のライブラリですが、これが実際にライブラリとして公開されたら楽そうです.
 実際問題、SOAPなんかのセキュリティ確保にXML署名が利用されている様ですので、今後ますます需要が出そうな規格かもしれません.

0 件のコメント: