(57)【要約】【課題】ＩＣモジュール側のメモリを仮想的に拡張する。【解決手段】ＩＣモジュール上にＩＤを蓄積しておき、仮想メモリ・モジュールのデータとリンクが形成されている。ＩＣモジュールのデータ蓄積部のファイル構造には上限値があり、仮想メモリ・モジュール側のファイル構造に接続されている。ＩＣモジュールにネットワーク経由で接続された仮想メモリ・モジュールを接続する。ＩＣモジュールがリーダ／ライタと通信を実施するとき、ＩＣモジュールに蓄積されているはずのデータがＩＣモジュール内に存在しない場合には仮想メモリ・モジュール内のデータ蓄積部にアクセスする。【選択図】　図１
2004127052.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣモジュールに付随するメモリ領域を拡張するためのデータ管理システムであって、
ＩＣモジュール上で利用されるデータを蓄積するデータ蓄積部と通信データの暗号制御を行なうカード暗号機能制御部で構成される仮想メモリ・モジュールと、
ＩＣモジュールのメモリ領域にアクセスするリーダ／ライタ通信制御部と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号機能制御部と、ネットワーク経由で前記仮想メモリ・モジュールに接続するネットワーク通信制御部で構成されるリーダ／ライタとを備え、
前記リーダ／ライタは、前記ＩＣモジュール上で利用されるデータが前記ＩＣモジュール上にないときには前記仮想メモリ・モジュールにアクセスして取り出す、
ことを特徴とするデータ管理システム。
【請求項２】
前記ＩＣモジュールには、前記仮想メモリ・モジュール上のデータとリンクするＩＤが蓄積されている、
ことを特徴とする請求項１に記載のデータ管理システム。
【請求項３】
前記ＩＣモジュールのメモリ領域のファイル構造には上限値が設定され、仮想メモリ・モジュールのファイル構造に接続される、
ことを特徴とする請求項１に記載のデータ管理システム。
【請求項４】
ネットワーク経由で接続するサーバ側リーダ／ライタ・モジュールを配置し、
前記サーバ側リーダ／ライタ・モジュールにＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号処理部を設置し、
前記リーダ／ライタはＩＣモジュールより受信したレスポンスを受信し、暗号化されたレスポンス・データをそのままネットワーク経由で前記サーバ側リーダ／ライタ・モジュールに転送し、前記サーバ側リーダ／ライタ・モジュールにてレスポンス・データを処理する、
ことを特徴とする請求項１に記載のデータ管理システム。
【請求項５】
前記リーダ／ライタのリーダ／ライタ暗号処理部及び／又は前記仮想メモリ・モジュールのカード暗号処理部のそれぞれのバージョンアップ・プログラムを用意し、前記リーダ／ライタ及び／又は仮想メモリ・モジュールに転送するバージョン管理モジュールをネットワーク上に配設する、
ことを特徴とする請求項１に記載のデータ管理システム。
【請求項６】
ＩＣモジュールに付随するメモリ領域を拡張するための仮想メモリ装置であって、
ＩＣモジュール上で利用されるデータを蓄積するデータ蓄積部と、
通信データの暗号制御を行なうカード暗号機能制御部と、
を具備することを特徴とする仮想メモリ装置。
【請求項７】
前記ＩＣモジュールには、前記仮想メモリ・モジュール上のデータとリンクするＩＤが蓄積されている、
ことを特徴とする請求項６に記載の仮想メモリ装置。
【請求項８】
前記ＩＣモジュールのメモリ領域のファイル構造には上限値が設定され、仮想メモリ・モジュールのファイル構造に接続される、
ことを特徴とする請求項６に記載の仮想メモリ装置。
【請求項９】
ＩＣモジュールに付随するメモリ領域を拡張するための仮想メモリの制御方法であって、
ＩＣモジュール上で利用されるデータを蓄積するデータ蓄積ステップと、
通信データの暗号制御を行なうカード暗号機能制御ステップと、
を具備することを特徴とする仮想メモリの制御方法。
【請求項１０】
前記ＩＣモジュールには、前記仮想メモリ・モジュール上のデータとリンクするＩＤが蓄積されている、
ことを特徴とする請求項９に記載の仮想メモリの制御方法。
【請求項１１】
前記ＩＣモジュールのメモリ領域のファイル構造には上限値が設定され、仮想メモリ・モジュールのファイル構造に接続される、
ことを特徴とする請求項９に記載の仮想メモリの制御方法。
【請求項１２】
ネットワーク上の仮想メモリ・モジュールによってメモリ領域が拡張されたＩＣモジュールにアクセスするＩＣモジュール・アクセス装置であって、
ＩＣモジュールのメモリ領域にアクセスするリーダ／ライタ通信制御部と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号機能制御部と、ネットワーク経由で前記仮想メモリ・モジュールに接続するネットワーク通信制御部で構成され、
前記ＩＣモジュール上で利用されるデータが前記ＩＣモジュール上にないときには前記仮想メモリ・モジュールにアクセスして取り出す、
を具備することを特徴とするＩＣモジュール・アクセス装置。
【請求項１３】
前記ＩＣモジュールには、前記仮想メモリ・モジュール上のデータとリンクするＩＤが蓄積されている、
ことを特徴とする請求項１２に記載のＩＣモジュール・アクセス装置。
【請求項１４】
前記ＩＣモジュールのメモリ領域のファイル構造には上限値が設定され、仮想メモリ・モジュールのファイル構造に接続されている、
ことを特徴とする請求項１２に記載のＩＣモジュール・アクセス装置。
【請求項１５】
ネットワーク上の仮想メモリ・モジュールによってメモリ領域が拡張されたＩＣモジュールにアクセスするＩＣモジュールへのアクセス制御方法であって、
ＩＣモジュールのメモリ領域にアクセスするリーダ／ライタ通信制御ステップと、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号機能制御ステップと、ネットワーク経由で前記仮想メモリ・モジュールに接続するネットワーク通信制御ステップで構成され、
前記ＩＣモジュール上で利用されるデータが前記ＩＣモジュール上にないときには前記仮想メモリ・モジュールにアクセスして取り出す、
を具備することを特徴とするＩＣモジュールへのアクセス制御方法。
【請求項１６】
前記ＩＣモジュールには、前記仮想メモリ・モジュール上のデータとリンクするＩＤが蓄積されている、
ことを特徴とする請求項１５に記載のＩＣモジュールへのアクセス制御方法。
【請求項１７】
前記ＩＣモジュールのメモリ領域のファイル構造には上限値が設定され、仮想メモリ・モジュールのファイル構造に接続されている、
ことを特徴とする請求項１５に記載のＩＣモジュールへのアクセス制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データを保持するメモリ機能を備えたＩＣモジュール及びこれにアクセスするデータ管理システムに係り、特に、ＩＣモジュールに付随するメモリ領域を拡張するためのデータ管理システムに関する。
【０００２】
【従来の技術】
従来から、本人確認や認証処理のために暗証番号やパスワードを用いたさまざまな装置が考案され、実用に供されている。例えば、銀行やその他の金融機関において、キャッシュ・カードやクレジット・カードを使用する際には、キャッシュ・ディスペンサやその他の金融端末上で、本人認証の手段として、暗証番号やパスワードの入力を使用者に対して促し、使用者から正しい暗証番号やパスワードが入力されたことを確認してから、入出金動作を行なうようになっている。
【０００３】
１枚のキャッシュ・カード上に配設されている磁気ストライプなどの記憶媒体の中には、その銀行に対してのみ使用可能な記憶領域しか設けられていない。したがって、上述したような暗証番号あるいはパスワードの入力は、この単一の記憶領域へのアクセスに過ぎないので、偽造や盗用に対する保護は充分とは言い難い。
【０００４】
このため、偽造防止などの観点から、キャッシュ・カードやクレジット・カードなどに電気的な接点を持った接触式ＩＣカードや、無線データを介して非接触でデータの読み書きを行う非接触ＩＣカードなどのＩＣ機能が実装されたモジュール（以下では、「ＩＣモジュール」とも呼ぶ）がよく使われるようになってきている。例えば、キャッシュ・ディスペンサやコンサート会場の出入口、駅の改札口などに設置されたＩＣカード・リーダ／ライタは、利用者がかざしたＩＣカードに非接触でアクセスすることができる。
【０００５】
利用者が暗証番号をＩＣカード・リーダ側に入力して、入力された暗証番号をＩＣカード上に格納された暗証番号と照合することで、ＩＣカードとＩＣカード・リーダ／ライタ間で本人確認又は認証処理が行なわれる。そして、本人確認又は認証処理に成功した場合には、例えば、ＩＣカード内に保存されているアプリケーションの利用が可能となる。ここで、ＩＣカードが保持するアプリケーションとしては、例えば、電子マネーや電子チケットなどの価値情報を挙げることができる。（ＩＣカード・アクセス時に使用する暗証番号のことを、特にＰＩＮ（Ｐｅｒｓｏｎａｌ　Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ　Ｎｕｍｂｅｒ）と呼ぶ。）
【０００６】
図７には、ＩＣモジュールを使用したシステム構成例（従来技術）を模式的に示している。同図に示すように、このシステムは、ユーザが携帯して所定のデータをセキュアな状態で保持するＩＣモジュールと、このＩＣモジュールのメモリ空間にアクセスしてデータの読み書き動作を行なうリーダ／ライタで構成される。
【０００７】
ＩＣモジュールは、例えばカード型にパッケージ化されており、データ蓄積部と、リーダ／ライタとの間で通信動作を行なうカード通信制御部と、リーダ／ライタとの通信データの暗号制御を行なうカード暗号制御部を備えている。
【０００８】
また、リーダ／ライタは、ＩＣモジュールとの間で通信動作を行なうリーダ／ライタ通信制御部と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号制御部を備えている。
【０００９】
ＩＣモジュール及びリーダ／ライタの各通信制御部間では、例えば、電磁誘導の原理に基づいた非接触接続が行なわれる。
【００１０】
リーダ／ライタ通信制御部よりコマンドを発行し、ＩＣモジュール側はそれをカード通信制御部で受信し、カード暗号処理部で暗号の解読などの処理を実施し、その際にデータ蓄積部に蓄積されているデータにアクセスするようになっている。また、ＩＣモジュールは、レスポンスをカード暗号処理部で生成して、リーダ／ライタに返答する。そして、このようなシーケンスを連続的に実施することにより、トランザクションを完結する。
【００１１】
最近では、微細化技術の向上とも相俟って、比較的大容量のデータ蓄積部を持つＩＣモジュールが出現し、普及してきている。従来のキャッシュ・カードなどにおいては単一の記憶領域すなわち単一のアプリケーションしか担持しないので、各用途又は目的毎に応じた複数のＩＣカードを持ち歩く必要がある。これに対して、このような大容量メモリ付きのＩＣモジュールによれば、複数のアプリケーションを同時に格納しておくことができるので、１枚のＩＣカードを複数の用途に利用することができる。例えば、１枚のＩＣカード上に、電子決済を行なうための電子マネーや、特定のコンサート会場に入場するための電子チケットなど、２以上のアプリケーションを格納しておき、１枚のＩＣカードをさまざまな用途に適用させることができる。
【００１２】
ところが、ＩＣモジュールは、データの安全な携帯を目的として開発されたものであり、一般にカード形状に構成され、あるいはチップ化されて携帯電話機やＰＤＡなどの小型機器に内蔵して用いられるのが提案されている。すなわち、ハードウェア的な制約を受けることが多く、このため大容量化が進んだとはいえ、データ蓄積部のメモリ・サイズには上限がある。
【００１３】
【発明が解決しようとする課題】
本発明の目的は、ＩＣモジュールに付随するメモリ領域を拡張することができる、優れたデータ管理システムを提供することにある。
【００１４】
本発明のさらなる目的は、ＩＣモジュールとリーダ／ライタ間のトランザクションを実施するプログラムのバージョン変更を好適に行なうことができる、優れたデータ管理システムを提供することにある。
【００１５】
【課題を解決するための手段及び作用】
本発明は、上記課題を参酌してなされたものであり、その第１の側面は、ＩＣモジュールに付随するメモリ領域を拡張するためのデータ管理システムであって、
ＩＣモジュール上で利用されるデータを蓄積するデータ蓄積部と通信データの暗号制御を行なうカード暗号機能制御部で構成される仮想メモリ・モジュールと、
ＩＣモジュールのメモリ領域にアクセスするリーダ／ライタ通信制御部と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号機能制御部と、ネットワーク経由で前記仮想メモリ・モジュールに接続するネットワーク通信制御部で構成されるリーダ／ライタとを備え、
前記リーダ／ライタは、前記ＩＣモジュール上で利用されるデータが前記ＩＣモジュール上にないときには前記仮想メモリ・モジュールにアクセスして取り出す、
ことを特徴とするデータ管理システムである。
【００１６】
但し、ここで言う「システム」とは、複数の装置（又は特定の機能を実現する機能モジュール）が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
【００１７】
仮想メモリ・モジュールは、ハードウェア的に制約のあるＩＣモジュール側のデータ蓄積部のメモリ領域を仮想的に拡張することを目的とする。仮想メモリ・モジュール自体は、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はない。したがって、そのデータ蓄積部は、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュールのデータ蓄積部の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリ・モジュールの実体は、例えば、広帯域ネットワーク上に構築されたサーバ・マシンであるが、ユーザ・サイドにあるＰＣに装備されたハード・ディスクなどの外部記憶装置、メモリ・モジュールなど、必ずしもネットワーク通信性を要求するものではない。
【００１８】
ＩＣモジュールとリーダ／ライタとの通信でＩＤなどを伝送する際には、ＩＣモジュール通信における既存のシーケンスに基づく暗号化通信を行なう。また、リーダ／ライタは、ＩＣモジュールの代わりに仮想メモリ・モジュールへのアクセスを実施し、該当するデータへのアクセスを行なう。仮想メモリ・モジュールへのアクセスは、ＴＣＰ／ＩＰプロトコルなどネットワーク通信における既存のシーケンスに基づく暗号化通信を行なう。ＩＣモジュールを搭載したカードと仮想メモリ・モジュールをシームレスに通信可能にするためには、仮想メモリ・モジュールとＩＣモジュールを同一のプロトコルで通信すればよい。例えば、カードとリーダ／ライタのコマンド・パケットをＴＣＰ／ＩＰ上で流すことで、同一化が可能である。
【００１９】
リーダ／ライタは、ＩＣモジュールとの間でＩＤ連絡が実施された以後は、仮想メモリ・モジュールへの実際のデータ・エンティティへのアクセスを広帯域ネットワークで接続された高性能サーバ間同士の通信動作で行なうことができるので、トランザクションの時間が非常に短時間で完結する。
【００２０】
ＩＣモジュールのデータ蓄積部には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュールのデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部では所定のファイル構造が構成され、その上限値が設定され、この上限値は仮想メモリ・モジュール側のデータ蓄積部のファイル構造に接続されている。リーダ／ライタは、ＩＣモジュールとの通信を実施するとき、ＩＣモジュールのデータ蓄積部が蓄積しているデータのエンティティがＩＣモジュール内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュールにアクセスして、所望のデータを取り出すことができる。
【００２１】
また、前記リーダ／ライタにネットワーク経由で接続するサーバ側リーダ／ライタ・モジュールを配置し、この前記サーバ側リーダ／ライタ・モジュールにＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号処理部を設置してもよい。
【００２２】
このような場合、前記リーダ／ライタはＩＣモジュールより受信したレスポンスを受信し、暗号化されたレスポンス・データをそのままネットワーク経由で前記サーバ側リーダ／ライタ・モジュールに転送し、前記サーバ側リーダ／ライタ・モジュールにてレスポンス・データを処理することができる。
【００２３】
サーバ側リーダ／ライタ・モジュールの実体は、例えば広帯域ネットワーク上に構築された、仮想メモリ・モジュールへのアクセス機能を装備したサーバ・マシンである。サーバ側リーダ／ライタ・モジュールは、ＩＣモジュールが担持するデータの取得を実施するとき、ＩＣモジュールのデータ蓄積部が蓄積しているデータのエンティティがＩＣモジュール内に存在する場合には、リーダ／ライタ経由でＩＣモジュールにアクセスして、そのデータ蓄積部からこれを取り出すことができる。一方、ＩＣモジュールのデータ蓄積部が蓄積しているデータのエンティティがＩＣモジュール内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュールにアクセスして、そのデータ蓄積部からこれを取り出すことができる。ＩＣモジュールとの間でＩＤ連絡が実施された以後は、仮想メモリ・モジュールへの実際のデータ・エンティティへのアクセスは、広帯域ネットワークで接続された高性能サーバ間同士の通信動作であるため、トランザクションの時間が非常に短時間で完結する。
【００２４】
また、前記リーダ／ライタのリーダ／ライタ暗号処理部及び／又は前記仮想メモリ・モジュールのカード暗号処理部のそれぞれのバージョンアップ・プログラムを用意し、前記リーダ／ライタ及び／又は仮想メモリ・モジュールに転送するバージョン管理モジュールをネットワーク上に配設してもよい。
【００２５】
仮想メモリ・モジュールに対する仮想的なトランザクションは、リーダ／ライタ内のリーダ／ライタ暗号機能制御部（又は、サーバ側リーダ／ライタ・モジュール内のリーダ／ライタ暗号機能制御部）と、仮想メモリ・モジュール内のカード暗号制御部との協働的動作により行なわれる。仮想的トランザクションを行なう協働的動作は、各モジュールにおけるトランザクション実施プログラムを実行するという形態で実装されるのが一般的である。
【００２６】
ＩＣモジュールとリーダ／ライタ間で通信をする際には、既存のプログラムを利用したシーケンスによりやり取りを行い（通信のハンドシェークの位置付け）、その後のリーダ／ライタと仮想メモリ・モジュールとのやり取りのときには、バージョンアップされたプログラムでの拡張シーケンスによるトランザクションを実施することができる。
【００２７】
すなわち、バージョン管理モジュールによってこのトランザクション実施プログラムをバージョンアップすることにより、固定的なＩＣモジュールのプログラムを仮想的に拡張することが可能になる。
【００２８】
また、ＩＣモジュールのパフォーマンスでは処理不可能な高付加処理を、サーバで実施することが可能となる。
【００２９】
また、あるサービス事業者が、自分のサービスのためだけにＩＣモジュールの機能を拡張したい場合、既存のＩＣモジュールをそのまま適用し、仮想メモリ・モジュールのプログラムのバージョンを上げることにより、独自のサービスが低コストで実現することが可能である。
【００３０】
また、本発明の第２の側面は、ＩＣモジュールに付随するメモリ領域を拡張するための仮想メモリ装置又は仮想メモリの制御方法であって、
ＩＣモジュール上で利用されるデータを蓄積するデータ蓄積部又はステップと、
通信データの暗号制御を行なうカード暗号機能制御部又はステップと、
を具備することを特徴とする仮想メモリ装置又は仮想メモリの制御方法である。
【００３１】
仮想メモリは、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はなく、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュールのデータ蓄積部の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリの実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【００３２】
リーダ／ライタは、ＩＣモジュールとの間でＩＤ連絡が実施された以後は、仮想メモリ・モジュールへの実際のデータ・エンティティへのアクセスを広帯域ネットワークで接続された高性能サーバ間同士の通信動作で行なうことができるので、トランザクションの時間が非常に短時間で完結する。
【００３３】
ＩＣモジュールのデータ蓄積部には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュールのデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部では所定のファイル構造が構成され、その上限値が設定され、この上限値は仮想メモリ・モジュール側のデータ蓄積部のファイル構造に接続されている。リーダ／ライタは、ＩＣモジュールとの通信を実施するとき、ＩＣモジュールのデータ蓄積部が蓄積しているデータのエンティティがＩＣモジュール内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュールにアクセスして、所望のデータを取り出すことができる。
【００３４】
また、本発明の第３の側面は、ネットワーク上の仮想メモリ・モジュールによってメモリ領域が拡張されたＩＣモジュールにアクセスするＩＣモジュール・アクセス装置又はＩＣモジュールへのアクセス制御方法であって、
ＩＣモジュールのメモリ領域にアクセスするリーダ／ライタ通信制御部又はステップと、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号機能制御部又はステップと、ネットワーク経由で前記仮想メモリ・モジュールに接続するネットワーク通信制御部又はステップで構成され、
前記ＩＣモジュール上で利用されるデータが前記ＩＣモジュール上にないときには前記仮想メモリ・モジュールにアクセスして取り出す、
を具備することを特徴とするＩＣモジュール・アクセス装置又はＩＣモジュールへのアクセス制御方法である。
【００３５】
仮想メモリは、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はなく、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュールのデータ蓄積部の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリの実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【００３６】
リーダ／ライタは、ＩＣモジュールとの間でＩＤ連絡が実施された以後は、仮想メモリ・モジュールへの実際のデータ・エンティティへのアクセスを広帯域ネットワークで接続された高性能サーバ間同士の通信動作で行なうことができるので、トランザクションの時間が非常に短時間で完結する。
【００３７】
ＩＣモジュールのデータ蓄積部には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュールのデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部では所定のファイル構造が構成され、その上限値が設定され、この上限値は仮想メモリ・モジュール側のデータ蓄積部のファイル構造に接続されている。リーダ／ライタは、ＩＣモジュールとの通信を実施するとき、ＩＣモジュールのデータ蓄積部が蓄積しているデータのエンティティがＩＣモジュール内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュールにアクセスして、所望のデータを取り出すことができる。
【００３８】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【００３９】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態について詳解する。
【００４０】
本発明は、ＩＣモジュールを利用してユーザのデータを安全に管理するシステムであり、ハードウェア的に制約のあるメモリ領域を仮想的に拡張することで、ＩＣモジュールの最大メモリ容量を事実上無制限とするものである。
【００４１】
第１の実施形態：
図１には、本発明の一実施形態に係るデータ管理システムの基本構成を模式的に示している。同図に示すように、このデータ管理システムは、ユーザが携帯して所定のデータ（価値情報など）をセキュアな状態で保持するＩＣモジュール１００と、このＩＣモジュール１００のメモリ空間にアクセスしてデータの読み書き動作を行なうリーダ／ライタ２００と、リーダ／ライタ２００とはネットワーク経由で接続されている仮想メモリ・モジュール３００で構成される。
【００４２】
ＩＣモジュール１００は、データ蓄積部１０１と、リーダ／ライタ２００との間で通信動作を行なうカード通信制御部１０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部１０３を備えている。
【００４３】
ＩＣモジュール１００は、例えばカード形状に構成され、あるいはチップ化されて携帯電話機やＰＤＡなどの小型機器に内蔵されている。データ蓄積部１０１は、半導体メモリであり、その記憶容量には上限がある。
【００４４】
また、リーダ／ライタ２００は、ＩＣモジュール１００との間で通信動作を行なうリーダ／ライタ通信制御部２０１と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号制御部２０２と、ＴＣＰ／ＩＰなどのネットワークを経由したデータ通信を実現するネットワーク通信制御部２０３を備えている。リーダ／ライタ２００の実体は、例えば広帯域ネットワーク上に構築された、ＩＣモジュール１００へのアクセス機能を装備したサーバ・マシンである。
【００４５】
ＩＣモジュール１００及びリーダ／ライタ２００の各通信制御部１０２，２０１間では、例えば、電磁誘導の原理に基づいた非接触接続が行なわれる。カード通信制御部１０３は、リーダ／ライタ２００からの質問信号に対する応答信号に応じて自身のアンテナ（図示しない）間の負荷を変化させることによってリーダ／ライタ２００の受信回路に現れる信号に振幅変調をかけて通信を行なう。
【００４６】
勿論、ＩＣモジュール１００とリーダ／ライタ２００間の接続形態は非接触接続には限定されず、リーダ／ライタ２００側のカード・スロットにＩＣモジュール１００を挿入して接続を実現するように構成してもよい。
【００４７】
仮想メモリ・モジュール３００は、ＩＣモジュールのための仮想的なメモリ空間を提供するデータ蓄積部３０１と、リーダ／ライタ２００との間で通信動作を行なうネットワーク通信制御部３０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部３０３を備えている。
【００４８】
仮想メモリ・モジュール３００及びリーダ／ライタ２００の各ネットワーク通信制御部３０２，２０１間では、例えば、ＴＣＰ／ＩＰなどの所定の通信プロトコルに基づいたネットワーク接続が行なわれる。
【００４９】
仮想メモリ・モジュール３００は、ハードウェア的に制約のあるＩＣモジュール１００側のデータ蓄積部１０１のメモリ領域を仮想的に拡張することを目的とする。仮想メモリ・モジュール３００自体は、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はない。したがって、そのデータ蓄積部３０１は、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュール１００のデータ蓄積部１０１の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリ・モジュール３００の実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【００５０】
ＩＣモジュール１００のデータ蓄積部１０１には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュール３００のデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【００５１】
リーダ／ライタ２００は、ＩＣモジュール１００との通信を実施するとき、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュール３００にアクセスして、そのデータ蓄積部３０１からこれを取り出すことができる。
【００５２】
各ＩＣモジュール毎に１台の仮想メモリ・モジュールを配置してもよいが、仮想メモリ・モジュールが同時に複数個のＩＣモジュールに対して仮想記憶空間を提供するように構成してもよい。勿論、１個のＩＣモジュールが複数台の仮想メモリ・モジュールに仮想記憶空間を持つようにしてもよい。
【００５３】
図２には、このデータ管理システムにおいて、ＩＣモジュール１００が蓄積するデータのエンティティにアクセスするための動作手順を示している。
【００５４】
リーダ／ライタ２００の通信制御部２０１は、ＩＣモジュール１００を常にポーリングしている。
【００５５】
ＩＣモジュール１００がリーダ／ライタ２００に十分接近すると、カード通信制御部１０２が活性化されて電磁誘導作用による接続が可能となり、ＩＣモジュール１００は、レスポンスをカード暗号制御部１０３で生成して、リーダ／ライタ２００に返答する。
【００５６】
その後、ＩＣモジュール１００とリーダ／ライタ２００間では相互認証及びレスポンスの手続きを１回以上行ない、相互認証並びに暗号鍵の共有が実現し、暗号を利用した安全なデータ通信が可能となる。
【００５７】
リーダ／ライタ２００は、さらに、ＩＣモジュール１００内のデータ蓄積部１０１に格納されているＩＤを読み出して（ＲｅａｄＩＤ）、仮想メモリ・モジュール３００のデータ蓄積部３０１のファイル構造へのリンク情報を得ることができる。
【００５８】
データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【００５９】
リーダ／ライタ２００は、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュール３００にアクセスして、そのデータ蓄積部３０１からこれを取り出すことができる。
【００６０】
すなわち、リーダ／ライタ２００は、ＩＣモジュール１００から得たＩＤを利用して、ネットワーク経由で仮想メモリ・モジュール３００のポーリングを実施する。
【００６１】
これに対し、仮想メモリ・モジュール３００は、レスポンスをカード暗号制御部３０３で生成して、リーダ／ライタ２００に返答する。相互認証及びレスポンスの手続きを１回以上行なった結果、相互認証並びに暗号鍵の共有が実現し、暗号を利用した安全なデータ通信が可能となる。
【００６２】
その後、仮想メモリ・モジュール３００とリーダ／ライタ２００間では相互認証及びレスポンスの手続きを１回以上行ない、相互認証並びに暗号鍵の共有が実現し、暗号を利用した安全なデータ通信が可能となる。リーダ／ライタ２００は、所望のデータのエンティティを取得するために、仮想メモリ・モジュール３００との間で任意の回数だけＲｅａｄ又はＷｒｉｔｅアクセス及びそのレスポンスの手続きを繰り返すことができる。
【００６３】
図３には、リーダ／ライタ２００がＩＣモジュール１００に蓄積されているデータのエンティティにアクセスするための動作手順をフローチャートの形式で示している。
【００６４】
ＩＣモジュール１００をリーダ／ライタ２００にかざすと、カード通信制御部１０２が活性化されて、電磁誘導作用に基づく非接触接続が確立する（ステップＳ１）。ＩＣモジュール１００は、レスポンスをカード暗号制御部１０３で生成して、リーダ／ライタ２００に返答する。
【００６５】
その後、ＩＣモジュール１００とリーダ／ライタ２００間では相互認証及びレスポンスの手続きを１回以上行ない、相互認証並びに暗号鍵の共有が実現し（ステップＳ２）、暗号を利用した安全なデータ通信が可能となる。
【００６６】
リーダ／ライタ２００は、さらに、ＩＣモジュール１００内のデータ蓄積部１０１に格納されているＩＤを読み出して（ＲｅａｄＩＤ）、仮想メモリ・モジュール３００のデータ蓄積部３０１のファイル構造へのリンク情報を得る（ステップＳ３）。
【００６７】
次いで、電子マネーや電子チケットなどの価値情報（バリュー）、あるいはその他の所望のデータがＩＣモジュール１００内のデータ蓄積部１０１に存在するかどうかを判断する（ステップＳ４）。
【００６８】
ここで、所望のデータがＩＣモジュール１００内のデータ蓄積部１０１に存在する場合には、リーダ／ライタ２００は、ＩＣモジュール１００との間に任意の回数だけＲｅａｄ又はＷｒｉｔｅアクセス及びそのレスポンスの手続きを繰り返すことによって、所望のデータを取得する（ステップＳ５）。
【００６９】
データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【００７０】
したがって、所望のデータがＩＣモジュール１００内のデータ蓄積部１０１に存在しない場合には、リーダ／ライタ２００は、ネットワーク通信制御部２０３によりネットワーク経由で仮想メモリ・モジュール３００に接続し（ステップＳ６）、相互認証及びレスポンスの手続きを１回以上行なうことで、相互認証並びに暗号鍵を共有する（ステップＳ７）。
【００７１】
そして、ＩＣモジュール１００から得たＩＤを利用して、仮想メモリ・モジュール３００との間で任意の回数だけＲｅａｄ又はＷｒｉｔｅアクセス及びそのレスポンスの手続きを繰り返し、そのデータ蓄積部３０１から所望のデータを取得する（ステップＳ８）。
【００７２】
この実施形態では、ＩＣモジュール１００とリーダ／ライタ２００との通信でＩＤなどを伝送する際には、ＩＣモジュール通信における既存のシーケンスに基づく暗号化通信を行なう。また、リーダ／ライタ２００は、ＩＣモジュール１００の代わりに仮想メモリ・モジュール３００へのアクセスを実施し、該当するデータへのアクセスを行なう。仮想メモリ・モジュール３００へのアクセスは、ＴＣＰ／ＩＰプロトコルなどネットワーク通信における既存のシーケンスに基づく暗号化通信を行なう。
【００７３】
リーダ／ライタ２００は、ＩＣモジュール１００との間でＩＤ連絡が実施された以後は、仮想メモリ・モジュール３００への実際のデータ・エンティティへのアクセスは、広帯域ネットワークで接続された高性能サーバ間同士の通信動作であるため、トランザクションの時間が非常に短時間で完結する（これに対し、一般的なＩＣモジュールを利用した場合の通信環境は、ＩＣモジュール側の８ビットＣＰＵの動作速度によって制約され、リーダ／ライタとの通信帯域は２００Ｋｂｐｓ程度となる）。
【００７４】
第２の実施形態：
図４には、図１に示したデータ管理システムの変形例を模式的に示している。図１に示した実施形態では、ＩＣモジュールへのアクセス機能を備えたリーダ／ライタ２００がネットワーク接続機能も兼ね備えて、リーダ／ライタ２００が仮想メモリ・モジュール３００へのアクセス動作も合わせて行なうように構成されている。これに対し、図４に示す実施形態では、リーダ／ライタ２００はネットワーク接続機能を備えておらず、ネットワーク上のサーバ４００の管理下でＩＣモジュール１００が担持するデータへのアクセス動作を行なう。そして、仮想メモリ・モジュール３００へのアクセスはこのサーバ４００がネットワーク経由で行なうようになっている。
【００７５】
図４に示すように、このデータ管理システムは、ユーザが携帯して所定のデータ（価値情報など）をセキュアな状態で保持するＩＣモジュール１００と、このＩＣモジュール１００のメモリ空間にアクセスしてデータの読み書き動作を行なうリーダ／ライタ２００と、ネットワーク経由で接続されている仮想メモリ・モジュール３００と、リーダ／ライタ２００との通信機能を装備するとともに仮想メモリ・モジュール３００のメモリ空間にアクセスしてデータの読み書き動作を行なうサーバ側リーダ／ライタ・モジュール４００とで構成される。
【００７６】
ＩＣモジュール１００は、データ蓄積部１０１と、リーダ／ライタ２００との間で通信動作を行なうカード通信制御部１０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部１０３を備えている。
【００７７】
ＩＣモジュール１００は、例えばカード形状に構成され、あるいはチップ化されて携帯電話機やＰＤＡなどの小型機器に内蔵されている。データ蓄積部１０１は、半導体メモリであり、その記憶容量には上限がある。
【００７８】
また、リーダ／ライタ２００は、ＩＣモジュール１００との間で通信動作を行なうリーダ／ライタ通信制御部２０１と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号制御部２０２を備えている。
【００７９】
ＩＣモジュール１００及びリーダ／ライタ２００の各通信制御部１０２，２０１間では、例えば、電磁誘導の原理に基づいた非接触接続が行なわれる。カード通信制御部１０３は、リーダ／ライタ２００からの質問信号に対する応答信号に応じて自身のアンテナ（図示しない）間の負荷を変化させることによってリーダ／ライタ２００の受信回路に現れる信号に振幅変調をかけて通信を行なう。勿論、ＩＣモジュール１００とリーダ／ライタ２００間の接続形態は非接触接続には限定されず、リーダ／ライタ２００側のカード・スロットにＩＣモジュール１００を挿入して接続を実現するように構成してもよい。
【００８０】
仮想メモリ・モジュール３００は、ＩＣモジュールのための仮想的なメモリ空間を提供するデータ蓄積部３０１と、リーダ／ライタ２００との間で通信動作を行なうネットワーク通信制御部３０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部３０３を備えている。
【００８１】
仮想メモリ・モジュール３００は、ハードウェア的に制約のあるＩＣモジュール１００側のデータ蓄積部１０１のメモリ領域を仮想的に拡張することを目的とする。仮想メモリ・モジュール３００自体は、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はない。したがって、そのデータ蓄積部３０１は、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュール１００のデータ蓄積部１０１の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリ・モジュール３００の実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【００８２】
サーバ側リーダ／ライタ・モジュール４００は、リーダ／ライタとの間で暗号化通信動作を行なうリーダ／ライタ暗号制御部４０１と、ＴＣＰ／ＩＰなどのネットワークを経由したデータ通信を実現するネットワーク通信制御部４０２を備えている。サーバ側リーダ／ライタ・モジュール４００の実体は、例えば広帯域ネットワーク上に構築された、仮想メモリ・モジュール３００へのアクセス機能を装備したサーバ・マシンである。
【００８３】
仮想メモリ・モジュール３００及びサーバ側リーダ／ライタ・モジュール４００の各ネットワーク通信制御部３０２，４０２間では、例えば、ＴＣＰ／ＩＰなどの所定の通信プロトコルに基づいたネットワーク接続が行なわれる。
【００８４】
ＩＣモジュール１００のデータ蓄積部１０１には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュール３００のデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【００８５】
サーバ側リーダ／ライタ・モジュール４００は、ＩＣモジュール１００が担持するデータの取得を実施するとき、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在する場合には、リーダ／ライタ２００経由でＩＣモジュール１００にアクセスして、そのデータ蓄積部１０１からこれを取り出すことができる。一方、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュール３００にアクセスして、そのデータ蓄積部３０１からこれを取り出すことができる。
【００８６】
第３の実施形態：
本発明によれば、仮想メモリ・モジュール３００に対する仮想的なトランザクションを実施することにより、ハードウェア的に制約のあるＩＣモジュール１００内のメモリ領域を仮想的に拡張するものであり、ＩＣモジュール１００の最大メモリ容量を事実上無制限とすることができる。
【００８７】
このような仮想メモリ・モジュール３００に対する仮想的なトランザクションは、リーダ／ライタ２００内のリーダ／ライタ暗号制御部２０２（又は、サーバ側リーダ／ライタ・モジュール４００内のリーダ／ライタ暗号制御部４０１）と、仮想メモリ・モジュール３００内のカード暗号制御部３０３との協働的動作により行なわれる。
【００８８】
仮想的トランザクションを行なう協働的動作は、各モジュールにおけるトランザクション実施プログラムを実行するという形態で実装されるのが一般的である。そして、このトランザクション実施プログラムをバージョンアップすることができれば、固定的なＩＣモジュール１００のプログラムを仮想的に拡張することが可能になる。
【００８９】
図５には、図１に示したデータ管理システムの変形例を模式的に示している。図示の実施形態では、リーダ／ライタ２００内のリーダ／ライタ暗号制御部２０２並びに仮想メモリ・モジュール３００内のカード暗号制御部３０３において実行される仮想トランザクション実施プログラムの管理がバージョン管理モジュール５００において行なわれる。
【００９０】
図５に示すように、このデータ管理システムは、ユーザが携帯して所定のデータ（価値情報など）をセキュアな状態で保持するＩＣモジュール１００と、このＩＣモジュール１００のメモリ空間にアクセスしてデータの読み書き動作を行なうリーダ／ライタ２００と、ネットワーク経由で接続されている仮想メモリ・モジュール３００と、仮想メモリ・モジュール３００に対する仮想トランザクションの実施プログラムの管理を行なうバージョン管理モジュール５００とで構成される。
【００９１】
ＩＣモジュール１００は、データ蓄積部１０１と、リーダ／ライタ２００との間で通信動作を行なうカード通信制御部１０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部１０３を備えている。
【００９２】
ＩＣモジュール１００は、例えばカード形状に構成され、あるいはチップ化されて携帯電話機やＰＤＡなどの小型機器に内蔵されている。データ蓄積部１０１は、半導体メモリであり、その記憶容量には上限がある。
【００９３】
また、リーダ／ライタ２００は、ＩＣモジュール１００との間で通信動作を行なうリーダ／ライタ通信制御部２０１と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号制御部２０２と、ＴＣＰ／ＩＰなどのネットワークを経由したデータ通信を実現するネットワーク通信制御部２０３を備えている。リーダ／ライタ２００の実体は、例えば広帯域ネットワーク上に構築された、ＩＣモジュール１００へのアクセス機能を装備したサーバ・マシンである。
【００９４】
ＩＣモジュール１００及びリーダ／ライタ２００の各通信制御部１０２，２０１間では、例えば、電磁誘導の原理に基づいた非接触接続が行なわれる。カード通信制御部１０３は、リーダ／ライタ２００からの質問信号に対する応答信号に応じて自身のアンテナ（図示しない）間の負荷を変化させることによってリーダ／ライタ２００の受信回路に現れる信号に振幅変調をかけて通信を行なう。
【００９５】
仮想メモリ・モジュール３００は、ＩＣモジュールのための仮想的なメモリ空間を提供するデータ蓄積部３０１と、リーダ／ライタ２００との間で通信動作を行なうネットワーク通信制御部３０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部３０３を備えている。
【００９６】
仮想メモリ・モジュール３００及びリーダ／ライタ２００の各ネットワーク通信制御部３０２，２０１間では、例えば、ＴＣＰ／ＩＰなどの所定の通信プロトコルに基づいたネットワーク接続が行なわれる。
【００９７】
仮想メモリ・モジュール３００は、ハードウェア的に制約のあるＩＣモジュール１００側のデータ蓄積部１０１のメモリ領域を仮想的に拡張することを目的とする。仮想メモリ・モジュール３００自体は、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はない。したがって、そのデータ蓄積部３０１は、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュール１００のデータ蓄積部１０１の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリ・モジュール３００の実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【００９８】
ＩＣモジュール１００のデータ蓄積部１０１には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュール３００のデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【００９９】
リーダ／ライタ２００は、ＩＣモジュール１００との通信を実施するとき、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュール３００にアクセスして、そのデータ蓄積部３０１からこれを取り出すことができる。
【０１００】
バージョン管理モジュール５００は、リーダ／ライタ２００とネットワーク経由で接続するためのネットワーク通信制御部５０１と、リーダ／ライタ２００との暗号通信の制御並びにリーダ／ライタ２００用の仮想トランザクション実行プログラムの拡張プログラムを生成するリーダ／ライタ暗号制御及び拡張プログラム生成部５０２と、仮想メモリ・モジュール３００とネットワーク経由で接続するためのネットワーク通信制御部５０３と、仮想メモリ・モジュール３００との暗号通信の制御並びに仮想メモリ・モジュール３００用の仮想トランザクション実行プログラムの拡張プログラムを生成する仮想メモリ・モジュール暗号制御及び拡張プログラム生成部５０４で構成される。
【０１０１】
ネットワーク上にこのようなバージョン管理モジュールを設置し、リーダ／ライタ暗号制御部２０２及びカード暗号制御部３０３のそれぞれのバージョンアップ・プログラムを生成並びに蓄積し、適切なタイミングでリーダ／ライタ２００又は仮想メモリ・モジュール３００に転送する。
【０１０２】
ＩＣモジュール１００とリーダ／ライタ２００間で通信をする際には、既存のプログラムを利用したシーケンスによりやり取りを行ない（通信のハンドシェークの位置付け）、その後のリーダ／ライタ２００と仮想メモリ・モジュール３００とのやり取りのときには、バージョンアップされたプログラムでの拡張シーケンスによるトランザクションを実施する。
【０１０３】
したがって、ＩＣモジュール１００のバージョンを変更しなくても、ＩＣモジュール１００よりＩＤを取得した後のリーダ／ライタ２００及び仮想メモリ・モジュール３００の間の通信では、拡張されたシーケンスを実施することが可能となる。すなわち、実質的にＩＣモジュール１００のプログラムのバージョンアップを実施した場合と同様の効果を持たせることが可能となる。
【０１０４】
また、ＩＣモジュール１００のパフォーマンスでは処理不可能な高負荷処理を、サーバで実施することが可能となる。
【０１０５】
また、あるサービス事業者が、自分のサービスのためだけにＩＣモジュール１００の機能を拡張したい場合、既存のＩＣモジュール１００をそのまま適用し、仮想メモリ・モジュールのプログラムのバージョンを上げることにより、独自のサービスが低コストで実現することが可能である。これに対し、独自のＩＣモジュールを開発するためには、非常に高いコストがかかる。
【０１０６】
第４の実施形態：
仮想メモリ・モジュールに対する仮想トランザクションを行なう協働的動作は、各モジュールにおけるトランザクション実施プログラムを実行するという形態で実装されるのが一般的である。そして、このトランザクション実施プログラムをバージョンアップすることができれば、固定的なＩＣモジュール１００のプログラムを仮想的に拡張することが可能になる。
【０１０７】
図６には、図４に示したデータ管理システムの変形例を模式的に示している。図示の実施形態では、リーダ／ライタ２００はネットワーク接続機能を備えておらず、ネットワーク上のサーバ４００の管理下でＩＣモジュール１００が担持するデータへのアクセス動作を行ない、仮想メモリ・モジュール３００へのアクセスはこのサーバ４００がネットワーク経由で行なうようになっている。また、リーダ／ライタ２００内のリーダ／ライタ暗号制御部２０２並びに仮想メモリ・モジュール３００内のカード暗号制御部３０３において実行される仮想トランザクション実施プログラムの管理がバージョン管理モジュール５００において行なわれる。
【０１０８】
図４に示すように、このデータ管理システムは、ユーザが携帯して所定のデータ（価値情報など）をセキュアな状態で保持するＩＣモジュール１００と、このＩＣモジュール１００のメモリ空間にアクセスしてデータの読み書き動作を行なうリーダ／ライタ２００と、ネットワーク経由で接続されている仮想メモリ・モジュール３００と、リーダ／ライタ２００との通信機能を装備するとともに仮想メモリ・モジュール３００のメモリ空間にアクセスしてデータの読み書き動作を行なうサーバ側リーダ／ライタ・モジュール４００と、仮想メモリ・モジュール３００に対する仮想トランザクションの実施プログラムの管理を行なうバージョン管理モジュール５００とで構成される。
【０１０９】
ＩＣモジュール１００は、データ蓄積部１０１と、リーダ／ライタ２００との間で通信動作を行なうカード通信制御部１０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部１０３を備えている。
【０１１０】
ＩＣモジュール１００は、例えばカード形状に構成され、あるいはチップ化されて携帯電話機やＰＤＡなどの小型機器に内蔵されている。データ蓄積部１０１は、半導体メモリであり、その記憶容量には上限がある。
【０１１１】
また、リーダ／ライタ２００は、ＩＣモジュール１００との間で通信動作を行なうリーダ／ライタ通信制御部２０１と、ＩＣモジュールとの通信データの暗号制御を行なうリーダ／ライタ暗号制御部２０２を備えている。
【０１１２】
ＩＣモジュール１００及びリーダ／ライタ２００の各通信制御部１０２，２０１間では、例えば、電磁誘導の原理に基づいた非接触接続が行なわれる。カード通信制御部１０３は、リーダ／ライタ２００からの質問信号に対する応答信号に応じて自身のアンテナ（図示しない）間の負荷を変化させることによってリーダ／ライタ２００の受信回路に現れる信号に振幅変調をかけて通信を行なう。
【０１１３】
仮想メモリ・モジュール３００は、ＩＣモジュールのための仮想的なメモリ空間を提供するデータ蓄積部３０１と、リーダ／ライタ２００との間で通信動作を行なうネットワーク通信制御部３０２と、リーダ／ライタ２００との通信データの暗号制御を行なうカード暗号制御部３０３を備えている。
【０１１４】
仮想メモリ・モジュール３００は、ハードウェア的に制約のあるＩＣモジュール１００側のデータ蓄積部１０１のメモリ領域を仮想的に拡張することを目的とする。仮想メモリ・モジュール３００自体は、ユーザが携行して用いるものではなく、カード形状などハードウェア上の制約はない。したがって、そのデータ蓄積部３０１は、例えばハード・ディスク装置などの大容量記憶装置を用いて構成され、ＩＣモジュール１００のデータ蓄積部１０１の仮想記憶空間として動作して、その最大メモリ容量を事実上無制限とすることができる。仮想メモリ・モジュール３００の実体は、例えば広帯域ネットワーク上に構築されたサーバ・マシンである。
【０１１５】
サーバ側リーダ／ライタ４００は、リーダ／ライタとの間で暗号化通信動作を行なうリーダ／ライタ暗号制御部４０１と、ＴＣＰ／ＩＰなどのネットワークを経由したデータ通信を実現するネットワーク通信制御部４０２を備えている。リーダ／ライタ２００の実体は、例えば広帯域ネットワーク上に構築された、仮想メモリ・モジュール３００へのアクセス機能を装備したサーバ・マシンである。
【０１１６】
仮想メモリ・モジュール３００及びサーバ側リーダ／ライタ４００の各ネットワーク通信制御部３０２，４０２間では、例えば、ＴＣＰ／ＩＰなどの所定の通信プロトコルに基づいたネットワーク接続が行なわれる。
【０１１７】
ＩＣモジュール１００のデータ蓄積部１０１には、当該モジュールのデータ空間を識別するＩＤが格納されており、このＩＤを基に仮想メモリ・モジュール３００のデータ蓄積部のデータとのリンクが形成されている。また、データ蓄積部１０１では所定のファイル構造が構成され、その上限値が設定されている。データ蓄積部１０１の上限値は、仮想メモリ・モジュール３００側のデータ蓄積部３０１のファイル構造に接続されている。
【０１１８】
サーバ側リーダ／ライタ・モジュール４００は、ＩＣモジュール１００が担持するデータの取得を実施するとき、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在する場合には、リーダ／ライタ２００経由でＩＣモジュール１００にアクセスして、そのデータ蓄積部１０１からこれを取り出すことができる。一方、ＩＣモジュール１００のデータ蓄積部１０１が蓄積しているデータのエンティティがＩＣモジュール１００内に存在しない場合には、ネットワーク経由で仮想メモリ・モジュール３００にアクセスして、そのデータ蓄積部３０１からこれを取り出すことができる。
【０１１９】
バージョン管理モジュール５００は、リーダ／ライタ２００とネットワーク経由で接続するためのネットワーク通信制御部５０１と、リーダ／ライタ２００との暗号通信の制御並びにリーダ／ライタ２００用の仮想トランザクション実行プログラムの拡張プログラムを生成するリーダ／ライタ暗号制御及び拡張プログラム生成部５０２と、仮想メモリ・モジュール３００とネットワーク経由で接続するためのネットワーク通信制御部５０３と、仮想メモリ・モジュール３００との暗号通信の制御並びに仮想メモリ・モジュール３００用の仮想トランザクション実行プログラムの拡張プログラムを生成する仮想メモリ・モジュール暗号制御及び拡張プログラム生成部５０４で構成される。
【０１２０】
ネットワーク上にこのようなバージョン管理モジュールを設置し、リーダ／ライタ暗号制御部２０２及びカード暗号制御部３０３のそれぞれのバージョンアップ・プログラムを生成並びに蓄積し、適切なタイミングでリーダ／ライタ２００又は仮想メモリ・モジュール３００に転送する。
【０１２１】
ＩＣモジュール１００とリーダ／ライタ２００間で通信をする際には、既存のプログラムを利用したシーケンスによりやり取りを行ない（通信のハンドシェークの位置付け）、その後のリーダ／ライタ２００と仮想メモリ・モジュール３００とのやり取りのときには、バージョンアップされたプログラムでの拡張シーケンスによるトランザクションを実施する。
【０１２２】
したがって、ＩＣモジュール１００のバージョンを変更しなくても、ＩＣモジュール１００よりＩＤを取得した後のリーダ／ライタ２００及び仮想メモリ・モジュール３００の間の通信では、拡張されたシーケンスを実施することが可能となる。すなわち、実質的にＩＣモジュール１００のプログラムのバージョンアップを実施した場合と同様の効果を持たせることが可能となる。
【０１２３】
また、ＩＣモジュール１００のパフォーマンスでは処理不可能な高負荷処理を、サーバで実施することが可能となる。
【０１２４】
また、あるサービス事業者が、自分のサービスのためだけにＩＣモジュール１００の機能を拡張したい場合、既存のＩＣモジュール１００をそのまま適用し、仮想メモリ・モジュールのプログラムのバージョンを上げることにより、独自のサービスが低コストで実現することが可能である。
【０１２５】
［追補］
以上、特定の実施形態を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【０１２６】
【発明の効果】
以上詳記したように、本発明によれば、ハードウェア的に制約のあるデータ蓄積部のメモリ領域を仮想的に拡張することで、ＩＣモジュールのデータ蓄積部の最大メモリ容量を事実上無制限とすることができる。
【０１２７】
また、本発明によれば、仮想的なトランザクションを実施するプログラムをバージョンアップ可能とすることにより、固定的なＩＣモジュールのプログラムを仮想的に拡張することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係るデータ管理システムの基本構成を模式的に示した図である。
【図２】本発明の一実施形態に係るデータ管理システムにおいて、ＩＣモジュール１００が蓄積するデータのエンティティにアクセスするための動作手順を示したシーケンス図である。
【図３】リーダ／ライタ２００がＩＣモジュール１００に蓄積されているデータのエンティティにアクセスするための動作手順を示したフローチャートである。
【図４】図１に示したデータ管理システムの変形例を模式的に示した図である。
【図５】図１に示したデータ管理システムの変形例を模式的に示した図である。
【図６】図４に示したデータ管理システムの変形例を模式的に示した図である。
【図７】ＩＣモジュールを使用したシステム構成例（従来技術）を模式的に示した図である。
【符号の説明】
１００…ＩＣモジュール
１０１…データ蓄積部
１０２…カード通信制御部
１０３…カード暗号制御部
２００…リーダ／ライタ
２０１…リーダ／ライタ通信制御部
２０２…リーダ／ライタ暗号制御部
２０３…ネットワーク通信制御部
３００…仮想メモリ・モジュール
３０１…データ蓄積部
３０２…ネットワーク通信制御部
３０３…カード暗号制御部
４００…サーバ側リーダ／ライタ・モジュール
４０１…リーダ／ライタ暗号制御部
４０２…ネットワーク通信制御部
５００…バージョン管理モジュール
５０１…ネットワーク通信制御部
５０２…リーダ／ライタ暗号制御及び拡張プログラム生成部
５０３…ネットワーク通信制御部
５０４…仮想メモリ・モジュール暗号制御及び拡張プログラム生成部
【図１】
2004127052.tif 000003
【図２】
2004127052.tif 000004
【図３】
2004127052.tif 000005
【図４】
2004127052.tif 000006
【図５】
2004127052.tif 000007
【図６】
2004127052.tif 000008
【図７】
2004127052.tif 000009