W3C規格解説
XKMS(XML Key Management)
(株)日本ユニテック
青木 秀起
XKMSとは、公開鍵の登録や配布を行うためのプロトコルです。現在ワーキングドラフトとして開発が進められています。
(http://www.w3.org/TR/xkms2/)
XKMSの仕組み
XKMSは、公開鍵管理や証明書検証などのPKIによる複雑な処理を、図1にあるとおり、Webサービスとして提供する外部サーバに委託することによって処理を自動化し、ユーザ側のアプリケーション開発負担を軽減することができます。
図1 XSKMサーバ
XKMSは、XKMSサーバとサービス要求者/サービス提供者間で、公開鍵の登録や配布を行うためのメッセージとプロトコルを規定しています。
XKMSメッセージ
ユーザ(サービス要求者またはサービス提供者)からXKMSサーバに送信される要求メッセージと、XKMXサーバからユーザに送信される応答メッセージは1対1に対応するようになっています。XKMSメッセージは、さまざまなプロトコルに載せて送受信できる共通フォーマットですが、HTTP/SOAPをサポートすることが推奨されています。次のリストのように、SOAPメッセージのBody要素内にXKMSメッセージを包み込むことができます。
<?xml version='1.0' encoding="utf-8"?>
<env:Envelope xmlns:env="http://www.w3.org/2002/06/soap-envelope">
<env:Header>・・・</env:Header>
<env:Body>
XKMS要求/応答メッセージ要素
</env:Body>
</env:Envelope> |
リスト1 SOAPメッセージで包み込んだXKMSメッセージ要素
XKMSサービス
XKMSは、以下の2つのサービスで構成されています。
■X-KISS (XML Key Information Service Specification)
X-KISSは、XML-Signatureのds:KeyInfo要素の処理をXKMSサービスに委託し、問い合わせることができるようにします。X-KISSサービスには、LocateサービスとValidateサービスの2つがあります。
①Locateサービス:完全な公開鍵情報を取得するサービス
②Validateサービス:公開鍵の有効性を検証するサービス
■X-KRSS (XML Key Registration Service Specification)
X-KRSSサービスは、公開鍵の登録と管理に関連するサービスです。X-KRSSサービスには、以下の4つのサービスがあります。
①登録サービス:公開鍵の登録
②再発行サービス:以前に登録された公開鍵の再発行
③失効サービス:以前に登録された公開鍵の失効
④回復サービス:公開鍵の回復
実装状況
XKMSを実装しているツールには以下のものがあります。
- lXKMS toolkit (VeriSign)
- XKMS toolkit (Entrust)
- .NET Framework(Microsoft)
まとめ
XKMSは、証明書の名前や公開鍵の値だけでなく、XML-SignatureのKeyInfo要素以下の証明書自体を取得したりその有効性を検証することができます。またその処理を外部サーバに委託してクライアント・XKMSサーバ間で通信する仕組みを提供しています。クライアント・アプリケーションの負担が減るため、携帯電話などの軽量クライアントを始め、PKIの導入が進むものと期待されています。ただし、XKMSはまだワーキングドラフト段階であり、サービスやメッセージ構造などが変わる可能性があるので注意が必要でしょう。
関連サービス
標準化仕様の動向調査
最新動向を伝えるDXメールニュース
(無料)
|