(57)【要約】【課題】  認証システムの機能拡張を行った場合に，上位互換を維持することが可能な相互認証システムを提供する。【解決手段】  情報処理装置（Ｂ）から情報処理装置（Ａ）へ，複数のサービスを表すサービスコードリストが送信され（Ｓ１００８），情報処理装置（Ａ）は，サービスコードリストに表されたすべてのサービスについての第１の鍵と第２の鍵とが同一の場合には，第１の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された少なくとも一つのサービスについての第１の鍵と第２の鍵とが異なる場合には，第２の縮退鍵生成アルゴリズムを実行して，サービスコードリストに表された複数のサービスについての第１の鍵および第２の鍵から縮退鍵を生成する（Ｓ１０１０）ことを特徴とする。【選択図】  図７
2006352215.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報処理装置間で所定のサービスへのアクセス権に関する相互認証を行う相互認証システムであって，
前記各情報処理装置は，
複数の各サービスについての第１の鍵および第２の鍵を記憶するメモリ部と，
第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行して，縮退鍵を生成する縮退鍵生成部と，
を含み，
一の情報処理装置から他の情報処理装置へ，複数のサービスを表すサービスコードリストが送信され，
前記他の情報処理装置は，
前記サービスコードリストに表されたすべてのサービスについての前記第１の鍵と前記第２の鍵とが同一の場合には，前記第１の縮退鍵生成アルゴリズムを実行し，前記サービスコードリストに表された少なくとも一つのサービスについての前記第１の鍵と前記第２の鍵とが異なる場合には，前記第２の縮退鍵生成アルゴリズムを実行して，前記サービスコードリストに表された複数のサービスについての前記第１の鍵および前記第２の鍵から縮退鍵を生成することを特徴とする，相互認証システム。
【請求項２】
前記各情報処理装置は，
乱数を発生する乱数発生部と，
前記乱数を前記縮退鍵で暗号・復号処理する暗号・復号部と，
をさらに含み，
前記暗号・復号部は，
前記縮退鍵生成部が前記第１の縮退鍵生成アルゴリズムまたは前記第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行して，前記乱数を前記縮退鍵で暗号・復号処理することを特徴とする，請求項１に記載の相互認証システム。
【請求項３】
前記一の情報処理装置は，
前記他の情報処理装置へ前記サービスコードリストを送信する際に，前記乱数発生部で発生した第１の乱数を前記暗号・復号部で暗号処理した第１の暗号文もあわせて送信することを特徴とする，請求項２に記載の相互認証システム。
【請求項４】
前記他の情報処理装置は，
前記第１の暗号文を前記縮退鍵で復号化して前記第１の乱数を取得し，
前記第１の乱数を再び前記縮退鍵で暗号化して第２の暗号文を生成し，
前記乱数発生部で第３の乱数を発生し，
前記縮退鍵で暗号化して第３の暗号文を生成し，
前記第２の暗号文および前記第３の暗号文を前記一の情報処理装置に送信することを特徴とする，請求項３に記載の相互認証システム。
【請求項５】
他の情報処理装置との間で所定のサービスへのアクセス権に関する相互認証を行う情報処理装置において，
複数の各サービスについての第１の鍵および第２の鍵を記憶するメモリ部と，
前記他の情報処理装置から，複数のサービスを表すサービスコードリストが送信される通信部と，
前記サービスコードリストに基づいて，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行し，前記サービスコードリストに表された複数のサービスについての前記第１の鍵および前記第２の鍵から縮退鍵を生成する縮退鍵生成部と，
を含み，
前記縮退鍵生成部は，
前記サービスコードリストに表されたすべてのサービスについての前記第１の鍵と前記第２の鍵とが同一の場合には，前記第１の縮退鍵生成アルゴリズムを実行し，
前記サービスコードリストに表された少なくとも一つのサービスについての前記第１の鍵と前記第２の鍵とが異なる場合には，前記第２の縮退鍵生成アルゴリズムを実行することを特徴とする，情報処理装置。
【請求項６】
乱数を発生する乱数発生部と，
前記乱数を前記縮退鍵で暗号・復号処理する暗号・復号部と，
をさらに含み，
前記暗号・復号部は，
前記縮退鍵生成部が前記第１の縮退鍵生成アルゴリズムまたは前記第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行して，前記乱数を前記縮退鍵で暗号・復号処理することを特徴とする，請求項５に記載の情報処理装置。
【請求項７】
他の情報処理装置との間で所定のサービスへのアクセス権に関する相互認証を行う情報処理方法であって，
前記他の情報処理装置から，複数のサービスを表すサービスコードリストが送信される工程と，
前記サービスコードリストに基づいて，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行し，前記サービスコードリストに表された複数のサービスについての第１の鍵および第２の鍵から縮退鍵を生成する工程と，
を含み，
前記縮退鍵を生成する工程では，
前記サービスコードリストに表されたすべてのサービスについての前記第１の鍵と前記第２の鍵とが同一の場合には，前記第１の縮退鍵生成アルゴリズムを実行し，
前記サービスコードリストに表された少なくとも一つのサービスについての前記第１の鍵と前記第２の鍵とが異なる場合には，前記第２の縮退鍵生成アルゴリズムを実行することを特徴とする，情報処理方法。
【請求項８】
乱数を発生する工程と，
前記乱数を前記縮退鍵で暗号・復号処理する工程と，
をさらに含み，
前記暗号・復号処理する工程では，
前記縮退鍵を生成する工程で，前記第１の縮退鍵生成アルゴリズムまたは前記第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行し，前記縮退鍵を暗号・復号処理することを特徴とする，請求項７に記載の情報処理方法。
【請求項９】
コンピュータを，請求項５または６に記載の情報処理装置として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，相互認証システム，情報処理装置，情報処理方法，およびコンピュータプログラムにかかり，特に，複数の情報処理装置間で所定のサービスへのアクセス権に関する相互認証を行う相互認証システムおよびその関連技術に関する。なお，本明細書において「相互認証」とは，情報処理装置（Ａ）のメモリ空間に保持されている複数のサービス領域へのアクセス権を情報処理装置（Ｂ）が保有することを，情報処理装置（Ａ），情報処理装置（Ｂ）の間で認証することをいう。
【背景技術】
【０００２】
従来，複数のサービス（例えば，サービス１，サービス２，サービス３とする）に関する相互認証を情報処理装置（Ａ），情報処理装置（Ｂ）の間で行う場合，以下のような処理を行っていた。まず，複数のサービスが保持するサービス鍵（サービス１鍵，サービス２鍵，サービス３鍵）を合成してこれらの代用となる１つの鍵を生成する。以下，このような鍵を「縮退鍵」と称する。また，縮退鍵を生成するアルゴリズムを「縮退鍵生成アルゴリズム」と称する。そして，情報処理装置（Ａ），情報処理装置（Ｂ）で生成した乱数Ａ，乱数Ｂを，情報処理装置（Ａ），情報処理装置（Ｂ）の縮退鍵Ａ，縮退鍵Ｂで暗号化・復号化して，お互いの縮退鍵Ａ，縮退鍵Ｂが等しいことを確認する。このようにして，情報処理装置（Ａ），情報処理装置（Ｂ）の間で相互認証を行っていた（例えば，特許文献１参照。）。
【０００３】
情報処理装置（Ａ），情報処理装置（Ｂ）の間で相互認証が完了すると，乱数Ａ，乱数Ｂをセッション鍵（所定時間の情報交換に用いられる一時的な共通鍵）として，通信パケットを暗号化し，情報処理装置（Ａ），情報処理装置（Ｂ）の間で通信を行っていた。以下，このような通信パケットを暗号・復号するアルゴリズムを「パケット暗号・復号アルゴリズム」と称する。
【０００４】
【特許文献１】特開平１０−３２７１４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで，従来は，縮退鍵生成アルゴリズムとパケット暗号・復号アルゴリズムが一意に定まり，複数のアルゴリズムを情報処理装置が保有することはなかった。このため，セキュリティの向上等を目的とした相互認証システムの更新に当たり，互換性を維持する機能を提供することができないという問題点があった。すなわち，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加や，新たなパケット暗号・復号アルゴリズムの追加などといった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムとパケット暗号・復号アルゴリズムが一意に定まっていたため，互換性を維持する機能を提供することができないという問題点があった。
【０００６】
本発明は，従来の相互認証システムが有する上記問題点に鑑みてなされたものであり，本発明の目的は，相互認証システムにおいて新たな機能を情報処理装置に実装する場合に，互換性を維持する機能を提供することの可能な，新規かつ改良された情報処理装置，情報処理方法，およびコンピュータプログラムを提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するため，本発明の第１の観点によれば，複数の情報処理装置間で所定のサービスへのアクセス権に関する相互認証を行う相互認証システムが提供される。本発明の相互認証システムの各情報処理装置は，複数の各サービスについての第１の鍵および第２の鍵を記憶するメモリ部と，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行して縮退鍵を生成する縮退鍵生成部と，を含む。
【０００８】
そして，一の情報処理装置から他の情報処理装置へ，複数のサービスを表すサービスコードリストが送信され，他の情報処理装置は，サービスコードリストに表されたすべてのサービスについての第１の鍵と第２の鍵とが同一の場合には，第１の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された少なくとも一つのサービスについての第１の鍵と第２の鍵とが異なる場合には，第２の縮退鍵生成アルゴリズムを実行して，サービスコードリストに表された複数のサービスについての第１の鍵および第２の鍵から縮退鍵を生成することを特徴とする。
【０００９】
かかる相互認証システムによれば，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することが可能である。このため，セキュリティの向上等を目的とした相互認証システムの更新に当たり，互換性を維持する機能を提供することが可能である。すなわち，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加といった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することができるので，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【００１０】
本発明の相互認証システムにおいて，以下のような応用が可能である。すなわち，各情報処理装置は，乱数を発生する乱数発生部と，乱数を縮退鍵で暗号・復号処理する暗号・復号部と，をさらに含み，暗号・復号部は，縮退鍵生成部が第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行して，乱数を縮退鍵で暗号・復号処理するようにしてもよい。かかるシステムによれば，パケット暗号・復号アルゴリズムとして，縮退鍵生成アルゴリズムに対応して，複数のアルゴリズムを情報処理装置が保有することが可能である。
【００１１】
具体的には，以下のように相互認証を行うことができる。すなわち，一の情報処理装置は，他の情報処理装置へサービスコードリストを送信する際に，乱数発生部で発生した第１の乱数を暗号・復号部で暗号処理した第１の暗号文もあわせて送信するようにしてもよい。
【００１２】
また，他の情報処理装置は，第１の暗号文を縮退鍵で復号化して第１の乱数を取得し，第１の乱数を再び縮退鍵で暗号化して第２の暗号文を生成し，乱数発生部で第３の乱数を発生し，縮退鍵で暗号化して第３の暗号文を生成し，第２の暗号文および第３の暗号文を一の情報処理装置に送信するようにしてもよい。
【００１３】
上記課題を解決するため，本発明の第２の観点によれば，他の情報処理装置との間で所定のサービスへのアクセス権に関する相互認証を行う情報処理装置が提供される。本発明の情報処理装置は，複数の各サービスについての第１の鍵および第２の鍵を記憶するメモリ部と，他の情報処理装置から，複数のサービスを表すサービスコードリストが送信される通信部と，サービスコードリストに基づいて，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された複数のサービスについての第１の鍵および第２の鍵から縮退鍵を生成する縮退鍵生成部と，を含む。そして，縮退鍵生成部は，サービスコードリストに表されたすべてのサービスについての第１の鍵と第２の鍵とが同一の場合には，第１の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された少なくとも一つのサービスについての第１の鍵と第２の鍵とが異なる場合には，第２の縮退鍵生成アルゴリズムを実行することを特徴とする。
【００１４】
かかる情報処理装置によれば，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することが可能である。このため，セキュリティの向上等を目的とした相互認証システムの更新に当たり，互換性を維持する機能を提供することが可能である。すなわち，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加といった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することができるので，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【００１５】
本発明の情報処理装置において，以下のような応用が可能である。すなわち，乱数を発生する乱数発生部と，乱数を縮退鍵で暗号・復号処理する暗号・復号部と，をさらに含み，暗号・復号部は，縮退鍵生成部が第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行して，乱数を縮退鍵で暗号・復号処理するようにしてもよい。かかる構成によれば，パケット暗号・復号アルゴリズムとして，縮退鍵生成アルゴリズムに対応して，複数のアルゴリズムを情報処理装置が保有することが可能である。
【００１６】
上記課題を解決するため，本発明の第３の観点によれば，他の情報処理装置との間で所定のサービスへのアクセス権に関する相互認証を行う情報処理方法が提供される。本発明の情報処理方法は，他の情報処理装置から，複数のサービスを表すサービスコードリストが送信される工程と，サービスコードリストに基づいて，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された複数のサービスについての第１の鍵および第２の鍵から縮退鍵を生成する工程と，を含む。そして，縮退鍵を生成する工程では，サービスコードリストに表されたすべてのサービスについての第１の鍵と第２の鍵とが同一の場合には，第１の縮退鍵生成アルゴリズムを実行し，サービスコードリストに表された少なくとも一つのサービスについての第１の鍵と第２の鍵とが異なる場合には，第２の縮退鍵生成アルゴリズムを実行することを特徴とする。
【００１７】
かかる情報処理方法によれば，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することが可能である。このため，セキュリティの向上等を目的とした相互認証システムの更新に当たり，互換性を維持する機能を提供することが可能である。すなわち，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加といった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムとして，複数のアルゴリズムを情報処理装置が保有することができるので，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【００１８】
本発明の情報処理方法において，以下のような応用が可能である。すなわち，乱数を発生する工程と，乱数を縮退鍵で暗号・復号処理する工程と，をさらに含み，暗号・復号処理する工程では，縮退鍵を生成する工程で，第１の縮退鍵生成アルゴリズムまたは第２の縮退鍵生成アルゴリズムのいずれを実行したかに基づいて，第１の暗号・復号アルゴリズムまたは第２の暗号・復号アルゴリズムを実行し，縮退鍵を暗号・復号処理するようにしてもよい。かかる方法によれば，パケット暗号・復号アルゴリズムとして，縮退鍵生成アルゴリズムに対応して，複数のアルゴリズムを情報処理装置が保有することが可能である。
【００１９】
また，本発明の他の観点によれば，コンピュータを，上記本発明の第２の観点にかかる情報処理装置として機能させるためのプログラムと，そのプログラムを記録した，コンピュータにより読み取り可能な記録媒体が提供される。ここで，プログラムはいかなるプログラム言語により記述されていてもよい。また，記録媒体としては，例えば，ＣＤ−ＲＯＭ，ＤＶＤ−ＲＯＭ，フレキシブルディスクなど，プログラムを記録可能な記録媒体として現在一般に用いられている記録媒体，あるいは将来用いられるいかなる記録媒体をも採用することができる。
【発明の効果】
【００２０】
以上のように，本発明によれば，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加や，新たなパケット暗号・復号アルゴリズムの追加などといった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムおよびパケット暗号・復号アルゴリズムとして，それぞれ複数のアルゴリズムを情報処理装置が保有することができるので，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【発明を実施するための最良の形態】
【００２１】
以下に添付図面を参照しながら，本発明にかかる相互認証システム，情報処理装置，情報処理方法，およびコンピュータプログラムの好適な実施形態について詳細に説明する。なお，本明細書および図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００２２】
（１）本実施形態の概念（図１）
まず，本実施形態の概念について説明する。本実施形態では，情報処理装置の一例として，ＩＣカードや携帯電話等の携帯情報端末と，携帯情報端末との間で通信を行い情報を読み書きするリーダライタ（Ｒ／Ｗ）とを例に挙げ，これらの間の相互認証システムについて説明する。
【００２３】
本実施形態は，新バージョンのアルゴリズムを搭載した携帯情報端末と旧バージョンのアルゴリズムを搭載した携帯情報端末との間の互換性確保に関するものである。なお以下の説明において，単に「アルゴリズム」というときには，特に断らない限り，縮退鍵を生成する縮退鍵生成アルゴリズムおよび通信パケットを暗号・復号するパケット暗号・復号アルゴリズムのことをいう。
【００２４】
従来，旧バージョンの携帯情報端末は旧バージョンのリーダライタとのみ通信を行うことができ，新バージョンの携帯情報端末は新バージョンのリーダライタとのみ通信を行うことができた。この点，本実施形態では，図１に示したように，旧バージョンの携帯情報端末１１０は旧バージョンのリーダライタ１２０とのみ通信を行うことができるのに対し，新バージョンの携帯情報端末１３０は，旧バージョンのリーダライタ１２０とも，新バージョンのリーダライタ１４０とも通信を行うことができる。
【００２５】
（２）リーダライタ・携帯情報端末の構成（図２）
図２は，リーダライタおよび携帯情報端末の構成を示す説明図である。なお，図２においては，本実施形態の説明に直接関係ない構成要素については図示を省略しており，本明細書においてもその説明を省略する。
【００２６】
新バージョンのリーダライタ１４０は，図２に示したように，携帯情報端末と通信を行うためのアンテナ１４２および通信部１４４と，この通信部１４４を制御するためのプロセッサ１４６と，を含んで構成される。なお，旧バージョンのリーダライタ１２０も実質的に同様の構成である。
【００２７】
新バージョンの携帯情報端末１３０は，図２に示したように，メモリ領域（ＥＥＰＲＯＭ）１３１を保持し，このメモリ領域１３１にアクセスするためのアンテナ１３２および通信部１３３と，メモリ領域１３１にアクセスするためのアルゴリズムが保持されているＲＯＭ１３４と，アルゴリズムを処理するときに使用するＣＰＵ１３５およびＲＡＭ１３６と，を含んで構成される。なお，旧バージョンの携帯情報端末１１０も実質的に同様の構成であるが，以下の説明の便宜上，旧バージョンの携帯情報端末１１０のメモリ領域を，参照符号１１１として説明する。
【００２８】
（３）メモリ領域（ＥＥＰＲＯＭ）の構成（図３，４）
メモリ領域（ＥＥＰＲＯＭ）のファイルシステムは，図３，４に示したように，「エリア」と「サービス」によって階層状に構成される。エリアはフォルダに相当するものであり，エリアの下にさらに階層的にエリアを作成することも可能である。サービスは，データに対するアクセスの種類や権限を定義するものである。エリアやサービスに設定される「アクセスキー」は，権限の無い者がサービスにアクセスすることを防ぎ，アプリケーション・ファイアウォールを実現している。また，複数のアクセスキーを合成して作られる「縮退鍵」によって，アクセス対象が複数にわたる場合でも，一回の相互認証で複数のファイルをオープンすることができる。縮退鍵についてはさらに後述する。
【００２９】
本実施形態では，エリアへのリードライトを行うのに必要なアクセスキーを「エリア鍵」と称し，サービスへのリードライトを行うのに必要なアクセスキーを「サービス鍵」と称する。旧バージョンの携帯情報端末１１０のメモリ領域１１１（図３）と，新バージョンの携帯情報端末１３０のメモリ領域１３１（図４）との違いは，それぞれのメモリ領域に保持されるエリア鍵およびサービス鍵の鍵長である。すなわち，旧バージョンは１つのエリア／サービスで１つのエリア鍵／サービス鍵を保持するのに対し，新バージョンは１つのエリア／サービスで２つのエリア鍵／サービス鍵を保持する。この点につき，以下に詳細に説明する。
【００３０】
図３は，旧バージョンの携帯情報端末１１０のメモリ領域１１１を示す説明図である。メモリ領域１１１は，以下のような階層構造からなる。
【００３１】
エリア（０）３００の下位層にはエリア（１）３１０とエリア（３）３３０が作成されている。エリア（１）３１０の下位層に，サービス（１）３１５，エリア（２）３２０，およびサービス（３）３３５が作成されている。このように，エリアの下にさらに階層的にエリアを作成することが可能である。エリア（２）３２０の下位層にサービス（２）３２５が設定されている。一方，エリア（３）３３０の下位層にはサービス（４）３４５が設定されている。
【００３２】
図３に示した各エリア／サービスはそれぞれ１つのエリア鍵／サービス鍵を保持する。メモリ領域１１１のシステム鍵を［システム鍵１］とすると，エリア鍵は，“エリア名  ［エリアコード］−［エンドサービスコード］  ［エリア鍵１］”として定義される。また，サービス鍵は，“サービス名  ［サービスコード］  ［サービス鍵１］”として定義される。
【００３３】
図４は，新バージョンの携帯情報端末１３０のメモリ領域１３１を示す説明図である。メモリ領域１３１は，以下のような階層構造からなる。
【００３４】
エリア（０）４００の下位層にはエリア（１）４１０とエリア（３）４３０が作成されている。エリア（１）４１０の下位層に，サービス（１）４１５，エリア（２）４２０，およびサービス（３）４３５が作成されている。このように，エリアの下にさらに階層的にエリアを作成することが可能である。エリア（２）４２０の下位層にサービス（２）４２５が設定されている。一方，エリア（３）４３０の下位層にはサービス（４）４４５が設定されている。
【００３５】
図４に示した各エリア／サービスはそれぞれ２つのエリア鍵／サービス鍵を保持する。メモリ領域１３１のシステム鍵を［システム鍵１］，［システム鍵２］とすると，エリア鍵は，“エリア名  ［エリアコード］−［エンドサービスコード］  ［エリア鍵１］，［エリア鍵２］”として定義される。また，サービス鍵は，“サービス名  ［サービスコード］  ［サービス鍵１］，［サービス鍵２］”として定義される。
【００３６】
（４）相互認証システムの構成（図５，６）
本実施形態にかかる相互認証システムの構成について，図５，６を参照しながら説明する。図５は，機能追加を行う前の旧バージョンの相互認証システム（以下，旧認証システムという。）であり，図６は機能追加後の新バージョンの相互認証システム（以下，新認証システムという。）である。認証システムとして，これら，旧認証システムと新認証システムが混在しており，新認証システムは，旧認証システムとの互換性を保たなければならない。本実施形態では，新認証システムは，新旧どちらの認証システムが実行されているかという，認証システムバージョン（図７の参照符号７２４）を保持していることを特徴とする。
【００３７】
図５は，旧認証システムの構成例を示す説明図である。
旧認証システムは，図５に示したように，情報処理装置（Ａ）５１０と，情報処理装置（Ｂ）５６０とを含んで構成される。情報処理装置（Ａ）５１０は図１に示した旧バージョンの携帯情報端末１１０に相当するものであり，情報処理装置（Ｂ）５６０は，図１に示した旧バージョンのリーダライタ１２０に相当するものである。
【００３８】
情報処理装置（Ａ）５１０は，図５に示したように，通信部５１２と，縮退鍵を生成する縮退鍵生成部５１４と，外部の情報処理装置との間で乱数と縮退鍵とを用いて相互認証を行う相互認証部５１６と，乱数生成部５１８と，相互認証部５１６により認証されたセッション鍵を用いて通信パケットを暗号化・復号化するパケット暗号・復号部５２０と，複数のサービスを保持するメモリ領域５２２と，を含んで構成される。
【００３９】
縮退鍵生成部５１４は，１つの縮退鍵生成アルゴリズム（縮退鍵生成アルゴリズム１）を実行可能である。縮退鍵生成アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。パケット暗号・復号部６２０は，１つのパケット暗号・復号アルゴリズム（パケット暗号・復号アルゴリズム１）を実行可能である。パケット暗号・復号アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，メモリ領域６２２に保持された各サービスには，サービスにアクセス（リード／ライド）するための１つのサービス鍵（サービス鍵１）が保持されている。
【００４０】
図５に示したメモリ領域５２２から縮退鍵生成部５１４へ向かう矢印は，縮退鍵生成部５１４が，サービス１，サービス２，およびサービス３のサービス鍵から，縮退鍵Ａ，Ｂを生成することを示している。
【００４１】
縮退鍵生成部５１４による縮退鍵Ａ，Ｂの生成は，例えば以下のように行うことができる。まず，「システム鍵１」を「エリア０鍵１」，「エリア１鍵１」，「エリア２鍵１」で順次暗号化することにより，縮退鍵Ａを生成することができる。さらに，縮退鍵Ａを，「サービス１鍵１」，「サービス２鍵１」，「サービス３鍵１」で順次暗号化することにより，縮退鍵Ｂを生成することができる。この例は一例に過ぎず，任意の方法で縮退鍵をＡ，Ｂを生成することが可能である。
【００４２】
情報処理装置（Ｂ）５６０は，図５に示したように，通信部５６２と，縮退鍵を生成する縮退鍵生成部５６４と，外部の情報処理装置との間で乱数と縮退鍵とを用いて相互認証を行う相互認証部５６６と，乱数生成部５６８と，相互認証部５６６により認証されたセッション鍵を用いて通信パケットを暗号化・復号化するパケット暗号・復号部５７０と，を含んで構成される。
【００４３】
縮退鍵生成部５６４は，１つのアルゴリズム（縮退鍵生成アルゴリズム１）を実行可能である。縮退鍵生成アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，パケット暗号・復号部５７０は，１つのパケット暗号・復号アルゴリズム（パケット暗号・復号アルゴリズム１）を実行可能である。パケット暗号・復号アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。なお，縮退鍵生成部５６４による縮退鍵Ａ，Ｂの生成は，上記の縮退鍵生成部５１４による縮退鍵Ａ，Ｂの生成と同じ方法であってもよく，異なる方法であってもよい。
【００４４】
図６は，旧バージョンの縮退鍵生成部５１４による縮退鍵の生成を示す説明図である。
図６において，縮退鍵生成アルゴリズム６１０は，図５の縮退鍵生成部５１４に相当する。また，メモリ領域１１１は，図３に示した旧バージョンのメモリ領域であり，図５ではメモリ領域５２２に相当する。
【００４５】
他の情報処理装置からサービスコードリスト６２０およびエリアコードリスト６３０が送信されて，相互認証を要求される。このサービスコードリスト６２０およびエリアコードリスト６３０に基づいて，メモリ領域１１１からエリア鍵リストおよびサービス鍵リストが取得される。図６に示した旧バージョンのメモリ領域１１１では，エリア鍵リストおよびサービス鍵リストはそれぞれ１つであることを特徴とする。そして，縮退鍵生成アルゴリズム６１０を実行して，エリア鍵リストおよびサービス限りストに基づいて，縮退鍵（Ａ）６４０および縮退鍵（Ｂ）６５０を生成する。図６に示した旧バージョンでは，縮退鍵生成アルゴリズム６１０は，１つのアルゴリズム（縮退鍵生成アルゴリズム１）であることを特徴とする。
【００４６】
図７は，新認証システムの構成例を示す説明図である。
新認証システムは，図７に示したように，情報処理装置（Ａ）７１０と，情報処理装置（Ｂ）７６０とを含んで構成される。情報処理装置（Ａ）７１０は図１に示した新バージョンの携帯情報端末１３０に相当するものであり，情報処理装置（Ｂ）７６０は，図１に示した新バージョンのリーダライタ１４０に相当するものである。
【００４７】
情報処理装置（Ａ）７１０は，図７に示したように，通信部７１２と，縮退鍵を生成する縮退鍵生成部７１４と，外部の情報処理装置との間で乱数と縮退鍵とを用いて相互認証を行う相互認証部７１６と，乱数生成部７１８と，相互認証部７１６により認証されたセッション鍵を用いて通信パケットを暗号化・復号化するパケット暗号・復号部７２０と，複数のサービスを保持するメモリ領域７２２と，認証システムが旧バージョンであるか新バージョンであるかを判断するための情報である認証システムバージョン７２４と，を含んで構成される。
【００４８】
縮退鍵生成部７１４は，２つの縮退鍵生成アルゴリズム（縮退鍵生成アルゴリズム１，縮退鍵生成アルゴリズム２）を実行可能である。縮退鍵生成アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，縮退鍵生成アルゴリズム２としては，例えば，Ｔｒｉｐｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。
【００４９】
図８は，新バージョンの縮退鍵生成部７１４による縮退鍵の生成を示す説明図である。
図８において，縮退鍵生成アルゴリズム８１０は，図７の縮退鍵生成部７１４に相当する。また，メモリ領域１３１は，図４に示した新バージョンのメモリ領域であり，図７ではメモリ領域７２２に相当する。
【００５０】
他の情報処理装置からサービスコードリスト８２０およびエリアコードリスト８３０が送信されて，相互認証を要求される。このサービスコードリスト８２０およびエリアコードリスト８３０に基づいて，メモリ領域１３１からエリア鍵リストおよびサービス鍵リストが取得される。図８に示した新バージョンのメモリ領域１３１では，エリア鍵リストおよびサービス鍵リストはそれぞれ２つであることを特徴とする。そして，縮退鍵生成アルゴリズム８１０を実行して，エリア鍵リストおよびサービス限りストに基づいて，縮退鍵（Ａ）８４０および縮退鍵（Ｂ）８５０を生成する。図８に示した新バージョンでは，縮退鍵生成アルゴリズム８１０は，２つのアルゴリズム（縮退鍵生成アルゴリズム１，縮退鍵生成アルゴリズム２）であることを特徴とする。
【００５１】
縮退鍵生成部７１４による縮退鍵Ａ，Ｂの生成は，例えば以下のように行うことができる。まず，「システム鍵１」と「システム鍵２」をＯＲ結合する。さらに，「エリア０鍵１」，「エリア０鍵２」，「エリア０鍵１」，「エリア１鍵１」，「エリア１鍵２」，「エリア１鍵１」，「エリア２鍵１」，「エリア２鍵２」，「エリア２鍵１」で順次暗号化することにより，縮退鍵Ａを生成することができる。さらに，縮退鍵Ａを，「サービス１鍵１」，「サービス１鍵２」，「サービス１鍵１」，「サービス２鍵１」，「サービス２鍵２」，「サービス２鍵１」，「サービス３鍵１」，「サービス３鍵２」，「サービス３鍵１」で順次暗号化することにより，縮退鍵Ｂを生成することができる。この例は一例に過ぎず，任意の方法で縮退鍵をＡ，Ｂを生成することが可能である。
【００５２】
パケット暗号・復号部７２０は，２つのパケット暗号・復号アルゴリズム（パケット暗号・復号アルゴリズム１，パケット暗号・復号アルゴリズム２）を実行可能である。パケット暗号・復号アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，パケット暗号・復号アルゴリズム２としては，例えば，Ｔｒｉｐｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。
【００５３】
メモリ領域７２２に保持された各サービスには，サービスにアクセス（リード／ライド）するための２つのサービス鍵（サービス鍵１，サービス鍵２）が保持されている。
【００５４】
情報処理装置（Ｂ）７６０は，図７に示したように，通信部７６２と，縮退鍵を生成する縮退鍵生成部７６４と，外部の情報処理装置との間で乱数と縮退鍵とを用いて相互認証を行う相互認証部７６６と，乱数生成部７６８と，相互認証部７６６により認証されたセッション鍵を用いて通信パケットを暗号化・復号化するパケット暗号・復号部７７０と，を含んで構成される。
【００５５】
縮退鍵生成部７６４は，２つのアルゴリズム（縮退鍵生成アルゴリズム１，縮退鍵生成アルゴリズム２）を実行可能である。縮退鍵生成アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，縮退鍵生成アルゴリズム２としては，例えば，Ｔｒｉｐｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。なお，縮退鍵生成部７６４による縮退鍵Ａ，Ｂの生成は，上記の縮退鍵生成部７１４による縮退鍵Ａ，Ｂの生成と同じ方法であってもよく，異なる方法であってもよい。
【００５６】
パケット暗号・復号部７７０は，２つのパケット暗号・復号アルゴリズム（パケット暗号・復号アルゴリズム１，パケット暗号・復号アルゴリズム２）を実行可能である。パケット暗号・復号アルゴリズム１としては，例えば，Ｓｉｎｇｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。また，パケット暗号・復号アルゴリズム２としては，例えば，Ｔｒｉｐｌｅ−ＤＥＳを使用したアルゴリズムを採用することができる。
【００５７】
このように，新認証システムでは，旧認証システムと比較して，（１）エリア鍵／サービス鍵の鍵長の拡張，（２）縮退鍵生成部７１４に新たな縮退鍵生成アルゴリズムの追加，（３）パケット暗号・復号部７２０に新たなパケット暗号・復号アルゴリズムが追加されている。さらに，認証システムが旧バージョンであるか新バージョンであるかを判断するための情報である認証システムバージョン７２４を保持している。
【００５８】
（５）認証システムの判別方法（図９）
図９に，新認証システムと旧認証システムの判別方法を示す。新認証システムと旧認証システムの違いの１つは，サービスが保持するサービス鍵を１つ持つか，２つ持つかの違いである。そこで，相互認証で指定された複数のサービス鍵１とサービス鍵２とがすべて同じ場合は，サービス鍵が１つの場合と同一であると判別する（ステップＳ９１０）。このとき，認証システムバージョン７２４には旧認証システムであることが保持される（ステップＳ９２０）。アルゴリムとして，縮退鍵生成アルゴリズム１，パケット暗号・復号アルゴリズム１が選択される（ステップＳ９３０）。
【００５９】
一方，相互認証で指定された複数のサービスのうち，サービス鍵１とサービス鍵２とが１つでも異なるサービスが存在した場合は，認証システムが新認証システムであると判別する（ステップＳ９１０）。このとき，認証システムバージョン７２４には新認証システムであることが保持される（ステップＳ９４０）。そして，アルゴリズムとして，縮退鍵生成アルゴリズム２，パケット暗号・復号アルゴリズム２が選択される（ステップＳ９５０）。
【００６０】
このとき，図３，４で示した，階層構造において，縮退鍵生成時に含められたエリア鍵は，新旧アルゴリズム選択の判別対象外とする。このようにすることによって，サービス領域の所有者がアルゴリズムの選択を行うことができる。
【００６１】
（６）本実施形態の動作（図１０）
図１０は本実施形態の動作を示す説明図である。図１０は，図７に示した新認証システムに含まれる情報処理装置（Ａ）７１０と情報処理装置（Ｂ）７６０との間の動作について示している。
【００６２】
まず，情報処理装置（Ｂ）７６０において，縮退鍵Ｂを生成するとともに（ステップＳ１００２），乱数Ｂを生成する（ステップＳ１００４）。そして，乱数Ｂを縮退鍵Ｂで暗号化した暗号文Ｍ１を作成し（ステップＳ１００６），認証を行うサービスコードリストと暗号文Ｍ１を情報処理装置（Ａ）７１０に送信する（ステップＳ１００８）。サービスコードリストは，図５，図７に示した例では，サービス１，サービス２，およびサービス３のサービスコードのリストである。またこのとき，必要に応じてエリアコードリストも送信される（図８参照）。
【００６３】
次いで，情報処理装置（Ａ）７１０において，サービスコードリストで指定されたサービスの鍵を使用して縮退鍵Ａを生成する（ステップＳ１０１０）。そして，暗号文Ｍ１を縮退鍵Ａで復号化して乱数Ｂ’を取得する（ステップＳ１０１２）。その乱数Ｂ’を再び縮退鍵Ａで暗号化して暗号文Ｍ２を生成する（ステップＳ１０１４）。これと並列して乱数Ａを生成する（ステップＳ１０１６）。そして，乱数Ｓを縮退鍵で暗号化した暗号文Ｍ３を生成する（ステップＳ１０１８）。以上のように生成した暗号文Ｍ２と暗号文Ｍ３を情報処理装置（Ｂ）７６０に送信する（ステップＳ１０２０）。
【００６４】
次いで，情報処理装置（Ｂ）７６０において，暗号文Ｍ２を縮退鍵Ｂで復号化して乱数Ｂと等しいことを確認する（ステップＳ１０２２）。さらに，暗号文Ｍ３を縮退鍵Ｂで復号化して乱数Ａ’を取得し（ステップＳ１０２４），乱数Ａ’を再び縮退鍵Ｂで暗号化して暗号文Ｍ４を生成する（ステップＳ１０２６）。この暗号文Ｍ４を情報処理装置（Ａ）７１０に送信する（ステップＳ１０２８）。
【００６５】
情報処理装置（Ａ）７１０では，暗号文Ｍ４を縮退鍵Ａで復号化して乱数Ａと等しいことを確認する（ステップＳ１０３０）。
【００６６】
以上の一連の流れを経て，相互認証が行われる。
【００６７】
（７）本実施形態の効果
以上説明したように，本実施形態によれば，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【００６８】
すなわち，縮退鍵生成アルゴリズムおよびパケット暗号・復号アルゴリズムとして，それぞれ複数のアルゴリズムを情報処理装置が保有することが可能である。このため，セキュリティの向上等を目的とした相互認証システムの更新に当たり，互換性を維持する機能を提供することが可能である。すなわち，サービスが保持する鍵長の拡張や，新たな縮退鍵生成アルゴリズムの追加や，新たなパケット暗号・復号アルゴリズムの追加などといった，新たな機能を情報処理装置に実装する場合に，上位互換性を保つ必要があるが，縮退鍵生成アルゴリズムおよびパケット暗号・復号アルゴリズムとして，それぞれ複数のアルゴリズムを情報処理装置が保有することができるので，認証システムの機能拡張を行った場合に，上位互換を維持することが可能である。
【００６９】
また，本実施形態で説明した情報処理装置（Ａ），情報処理装置（Ｂ）は，上記機能を実現するためのコンピュータプログラムをコンピュータに組み込むことで，コンピュータを情報処理装置（Ａ），情報処理装置（Ｂ）として機能させることが可能である。かかるコンピュータプログラムは，所定の記録媒体（例えば，ＣＤ−ＲＯＭ）に記録された形で，あるいは，電子ネットワークを介したダウンロードの形で，市場を流通させることが可能である。
【００７０】
以上，添付図面を参照しながら本発明にかかる相互認証システム，情報処理装置，情報処理方法，およびコンピュータプログラムの好適な実施形態について説明したが，本発明はかかる例に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００７１】
【図１】Ｒ／Ｗと携帯情報端末の互換性を示す説明図である。
【図２】Ｒ／Ｗと携帯情報端末の構成を示す説明図である。
【図３】旧バージョンのメモリ領域の階層構造を示す説明図である。
【図４】新バージョンのメモリ領域の階層構造を示す説明図である。
【図５】旧認証システムを示す説明図である。
【図６】旧バージョンの縮退鍵生成アルゴリズムを示す説明図である。
【図７】新認証システムを示す説明図である。
【図８】新バージョンの縮退鍵生成アルゴリズムを示す説明図である。
【図９】認証システム新旧判別フローを示す説明図である。
【図１０】相互認証システムの動作を示す説明図である。
【符号の説明】
【００７２】
１１０  旧バージョンの携帯情報端末
１２０  旧バージョンのリーダライタ（Ｒ／Ｗ）
１３０  新バージョンの携帯情報端末
１３１  メモリ領域
１３２  アンテナ
１３３  通信部
１３４  ＲＯＭ
１３５  ＣＰＵ
１３６  ＲＡＭ
１４０  新バージョンのリーダライタ（Ｒ／Ｗ）
１４２  アンテナ
１４４  通信部
１４６  プロセッサ
７１０  第１の情報処理装置
７１２  通信部
７１４  縮退鍵生成部
７１６  相互認証部
７１８  乱数生成部
７２０  パケット暗号・復号部
７２２  メモリ
７２４  認証システムバージョン
７６０  第２の情報処理装置
７６２  通信部
７６４  縮退鍵生成部
７６６  相互認証部
７６８  乱数生成部
７７０  パケット暗号・復号部
【図１】
2006352215.tif 000003
【図２】
2006352215.tif 000004
【図３】
2006352215.tif 000005
【図４】
2006352215.tif 000006
【図５】
2006352215.tif 000007
【図６】
2006352215.tif 000008
【図７】
2006352215.tif 000009
【図８】
2006352215.tif 000010
【図９】
2006352215.tif 000011
【図１０】
2006352215.tif 000012