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