説明

ICカード

【課題】1枚のICカードでサービスの運用が違う複数のICカードリーダライタで使用可能なICカードを提供する。
【解決手段】ICカード(105)において、通信部(402)はICカードリーダライタ(401)と通信し、第1の双方向バッファ(101a)は通信部(402)と第1の演算装置(408a)を接続し、第2の双方向バッファ(101b)は通信部(402)と第2の演算手段(408a)とを接続し、バッファ制御器(103)は通信部(402)の出力に基づいて第1の双方向バッファ(101a)と第2の双方向バッファ(101b)とを切り換え制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、キャッシュカードやクレジットカード等の名称で一般に使用される、カード基板内に集積回路(以下、「IC」)を内蔵するICカードに関する。
【背景技術】
【0002】
従来より、国際標準化機構(ISO、International Organization for Standardization)や国際電気標準会議(IEC、International Electrotechnical Commission)は、ICカードのカード基板の形状、インタフェースの電気的特性および伝送プロトコル等に関して、例えばISO/IEC7816として規格化している。しかし、IC内部のハードウェアとソフトウェア仕様はICカードを運用する団体に固有のものであり、1枚のICカードでユーザが受けられるサービスは基本的に1つのみである。(例えば、特許文献1参照)。
【0003】
一方、特定範囲の運用を前提として、ICカードの標準化も進められている。具体例として、Javaカード(Java(登録商標)言語で記述されたプログラムを実行するカード)やMULTOSカード(MELという専用の言語で記述されたプログラムを実行するカード)が提案されている。これらのカードにおいては、プログラムの全てをROM(Read Only Memory、読み出し専用メモリ)に格納するのでなく、基本プログラムと基本データをROMに、書き換え可能なアプリケーションプログラムとデータをEEPROM(Electrically Erasable Programmable Read Only Memory、電気的書き換え可能な不揮発性メモリ)にダウンロードできる仕組みが備えられている。このような方式(例えば特許文献2参照)では、ICカードのアプリケーションプログラムの書き換えが可能であるので1枚のICカードでユーザが受けられるサービスは複数である。
【0004】
図4に、上述のICカード(特許文献1)の構成を示す。ICカード407は、通信部402および演算装置408を含む。なお、演算装置408は所謂マイクロコンピュータである。通信部402は演算装置408に接続されて、演算装置408と通信する。さらに、ICカード407は、接触式(例えば、8端子のスマートカードインターフェースで通信する国際規格ISO/IEC7816)あるいは非接触式(例えば、13.56MHzの電波信号で通信する国際規格ISO/IEC14443)の通信部402でICカードリーダライタ401と通信する。通信部402は、ICカードリーダライタ401との接触式あるいは非接触式の通信を具現化する手段である。
【0005】
演算装置408は、CPU(Central Processing Unit、中央処理装置)403、ROM404、RAM(Random Access Memory)405、およびEEPROM406を含む。CPU403は通信部402を介してICカードリーダライタ401と通信する。ROM404はCPU403で処理する基本プログラムと基本データを格納する。RAM405はCPU403で処理するプログラムの作業メモリである。EEPROM406は書き換え可能なアプリケーションプログラムとデータを格納する。
【0006】
ICカード407がICカードリーダライタ401に装着されると、最初に、ICカードリーダライタ401はCPU403で動作するプログラムとデータが対応できるか否かを判断する。即ち、ICカードリーダライタ401とICカード407が同じサービスの運用に対応できるのであれば、以降の処理が進められる。対応できないものであれば、ユーザにICカード407を拒絶する旨が、あるいはエラーが通知されて処理が中断される。
【特許文献1】特開2001―167244号公報
【特許文献2】特開2004―151864号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上述のICカードが使用できるのは、ICカードリーダライタと同じサービスを運用できる場合に限定される。また、ソフトウェアプログラムの切り換えで使用できるICカードの場合でも、特定範囲の運用に限られる複数ソフトウェアプログラムをROMおよびEEPROMで共存させて使い分けることはできても、特定範囲以外の運用では共存できない。なぜならば、ハードウェアであるCPU、ROM、RAM、およびEEPROMの仕様は互いに異なるのが通常であるので共存はできない。よって、1枚のICカードで運用範囲が異なるサービスを複数運用はできない。
本発明は、上述の問題に鑑みて、1枚のICカードでサービスの運用が違う複数のICカードリーダライタで使用可能なICカードを提供することを目的とする。
【課題を解決するための手段】
【0008】
上述の目的を達成するために本発明は、
ICカードリーダライタと通信する通信手段と、
前記通信手段と第1の演算手段を接続する第1の双方向バッファと、
前記通信手段と第2の演算手段を接続する第2の双方向バッファと、
前記通信手段の出力に基づいて。前記第1の双方向バッファと前記第2の双方向バッファとを切り換え制御するバッファ制御手段とを備えるICカード。
【0009】
前記第1および第2の演算手段のそれぞれは、
ソフトウェアプログラムにより動作するCPUと、
基本となるソフトウェアプログラムを格納するROMと、
アプリケーションプログラムを格納するEEPROMと、
前記CPUの作業メモリであるRAMとを備えることが望ましい。
【0010】
前記バッファ制御手段の切り替え制御する順番を記憶する記憶手段をさらに備えることが望ましい。
【0011】
前記第1の双方向バッファと前記第2の双方向バッファのそれぞれから送信されるリセット応答データを記憶する記憶手段と、
前記通信手段の出力に応答して、前記記憶手段に記憶されているリセット応答データを前記通信手段に送信するリセット応答制御手段とをさらに備えることが望ましい。
【0012】
前記バッファ制御手段は、
前記通信手段を介して入力される前記ICカードリーダライタからの出力に基づいて、
前記第1の双方向バッファおよび前記第2の双方向バッファのうち、前記ICカードリーダライタが同じサービスを運用すると判断される演算手段を接続する双方向バッファをオンにすることを特徴とすることが望ましい。
【発明の効果】
【0013】
本発明はかかるICカードにおいては、1枚のICカードで2つの別運用のサービスに対応、つまり別運用のICカードリーダライタで使用できる。
【発明を実施するための最良の形態】
【0014】
(第1の実施の形態)
先ず、図1を参照して、本発明の実施の形態にかかるICカードの構成について説明する。なお、図5に示した従来のICカード407と同じ構成要素には同一符号を付して示すと共に、その動作説明は割愛する。ICカード105は、ICカード407と同様に、接触式あるいは非接触式でICカードリーダライタ401と通信する。
【0015】
ICカード105においては、演算装置408が1つではなく2つ設けられている。この2つの演算装置408を、説明の便宜上、第1の演算装置408aおよび第2の演算装置408bと識別する。また、第1の演算装置408aのCPU403、ROM404、RAM405、およびEEPROM406をそれぞれ、CPU403a、ROM404a、RAM405a、およびEEPROM406aと識別する。同様に、第2の演算装置408bのCPU403、ROM404、RAM405、およびEEPROM406をそれぞれ、CPU403b、ROM404b、RAM405b、およびEEPROM406bと識別する。
【0016】
さらに、第1の演算装置408aおよび第2の演算装置408bの間に、通信切替部104が設けられている。通信切替部104は、第1の双方向バッファ101a、第2の双方向バッファ101b、およびバッファ制御器103を含む。なお、紙面の都合上、第1の双方向バッファ101および第2の双方向バッファ101bは、図1において「双方向バッファ」と表示されている。
【0017】
第1の双方向バッファ101aは、一端が第1のCPU403aに接続され、他端が通信部402に接続され、さらにバッファ制御器103に接続されている。同様に、第2の双方向バッファ101bは、一端がCPU403bに接続され、他端が通信部402に接続され、さらにバッファ制御器103に接続されている。
【0018】
ICカード105がICカードリーダライタ401に装着されると、ICカードリーダライタ401とICカード105との通信を開始するために、バッファ制御器103によって第1の双方向バッファ101aがオンにされると共に第2の双方向バッファ101bがオフにされる。そして、先ずICカードリーダライタ401と第1の演算装置408aとが通信されて、ICカードリーダライタ401と第1の演算装置408aが同じサービスを運用するものであるか否かが判断される。そして、同じサービスが運用できる場合は、以降の処理が進められる。対応できない場合は、ユーザにICカード105を拒絶する旨が通知、あるいはエラーを通知して処理が中断されるか、通信の再試行がICカード105に要求される。
【0019】
処理が中断された場合には、ユーザは再度ICカード105をICカードリーダライタ401に接続して、ICカードリーダライタ401がICカード105に対して通信しようとする。バッファ制御器103は、第1の双方向バッファ101aをオフにすると共に第2の双方向バッファ101bをオンにして第2の演算装置408bをICカードリーダライタ401と通信させる。そして、第2の演算装置408bがICカードリーダライタ401と同じサービスを運用するものであるか否かが判断される。同じサービスを運用するものと判断される場合には以降の処理が進められる。
【0020】
なお、ICカードリーダライタ401が処理を中断するのではなく通信の再試行を要求する場合には、バッファ制御器103はその要求に基づき第1の双方向バッファ101aをオフにすると共に第2の双方向バッファ101bをオンにして第2の演算装置408bと通信し、同じサービスを運用するものであるかどうかを判断し対応できるのであれば、以降の処理を進める。
【0021】
(第2の実施の形態)
図2を参照して、本発明の第2の実施の形態にかかるICカードについて説明する。ICカード205は、図1に示したICカード105において、通信切替部104が通信切替部204に置き換えられている。通信切替部204は、通信切替部104においてバッファ制御器103がバッファ制御器203に置き換えられると共に、記憶器202が新たに設けられている。バッファ制御器203はバッファ制御器103と同様に第1の双方向バッファ101aおよび第2の双方向バッファ101bに接続されて両者を制御すると共に、さらに記憶器202に接続されている。
【0022】
上述のように第1の実施の形態においては、ICカード105がICカードリーダライタ401に対応できなれば、ユーザに対してICカード105を拒絶する旨が通知されたり、ユーザにエラーが通知されて処理が中断されたり、ICカード105に対して通信の再試行が要求されたりする。なお、処理の中断は、一般にICカード105は電源供給機能を持たず、外部給電が前提とされている。
【0023】
ICカード105には、最初に第1の双方向バッファ101aと第2の双方向バッファ101bのどちらをオンとしたか記憶する手段が設けられていない。つまり、処理が中断し接続を遮断されると電源供給も遮断される。そのために、再度ユーザがICカードリーダライタ401に接続する場合に、バッファ制御器103は第1の双方向バッファ101aと第2の双方向バッファ101bのどちらをオンするべきか判断できない。そのために、最初と同様に第1の双方向バッファ101aがオンにされ、第2の双方向バッファ101bがオフにされてしまう。
【0024】
このような事態を防止するために、第2の実施の形態においては、ICカードリーダライタ401から処理を中断される前に、バッファ制御器204は第1の双方向バッファ101aと第2の双方向バッファ101bのどちらをオンにしたかを表すバッファ選択情報Dbが記憶器202に記憶される。そして処理の中断後に、ユーザは再度ICカード205をICカードリーダライタ401に接続すれば、バッファ制御器203は記憶器202から前回オンにしたのは第1の双方向バッファ101aであるということを読み出す。そして、前回オンにした第1の双方向バッファ101aをオフにすると共に、第2の双方向バッファ101bをオンにして第2の演算装置408をICカードリーダライタ401と通信させる。そして、バッファ制御器201は、第1の双方向バッファ101aをオフにし、第2の双方向バッファ101bをオンにした状態を記憶器202に記憶する。
【0025】
(第3の実施の形態)
図3を参照して、本発明の第3の実施の形態にかかるICカードについて説明する。図3に示すように、ICカード305は、上述のICカード205において、通信切替部204が通信切替部304に置き換えられている。通信切替部304は、通信切替部204において、バッファ制御器203および記憶器202がそれぞれバッファ制御器303および記憶器302に置き換えられていると共に、リセット応答制御器306が新たに設けられている。リセット応答制御器306は通信部402、バッファ制御器303、および記憶器302に接続されている。
【0026】
上述の、第2の実施の形態においては、第1の双方向バッファ101aと第2の双方向バッファ101bのどちらをオンにしたかを表すバッファ選択情報Dbが記憶器202に記憶される。本実施の形態においては、第1の演算装置408aと第2の演算装置408bがICカードリーダライタ401に返信するリセット応答データDrが記憶器302に記憶される。
【0027】
リセット応答データDrとは、最初にICカードリーダライタ401がICカード305と通信を開始する場合に、ICカードリーダライタ401から演算装置408対して発行されるリセットに応答して、演算装置がICカードリーダライタ401に返信する演算装置408に固有のデータである。リセット応答データDrは、具体的にはインタフェース文字と履歴文字とからなり、ICカードの電気的機能、通信機能およびアプリケーション固有の数十バイトのデータ列である。なお、第1の演算装置408aおよび第2の演算装置408bそれぞれのリセット応答データDrを第1のリセット応答データDraおよび第2のリセット応答データDrbと識別する。
【0028】
ICカードリーダライタ401はこのリセット応答データDrを解釈して、ICカード305が対応するサービスとICカードリーダライタ401自身が対応するサービスが一致するか否かを判断する。リセット応答制御器306にはあらかじめ第1の演算装置408aと第2の演算装置408bのそれぞれの第1のリセット応答データDraおよびリセット応答データDrbが記憶器302に記憶されている。
【0029】
最初にICカードリーダライタ401がICカード305と通信を開始する場合、リセット応答制御器306はバッファ制御器303に対して第1の双方向バッファ101aおよび第2の双方向バッファ101bの両方をオフにするよう通知して、バッファ制御器303は第1の双方向バッファ101aおよび第2の双方向バッファ101bをオフにさせる。リセット応答制御器306は、あらかじめ記憶器302に記憶している第1の演算装置408aの第1のリセット応答データDraを読み出し通信部402を介してICカードリーダライタ401に返信する。
【0030】
ICカードリーダライタ401が同じサービスを運用するものであるかどうかを判断し対応できるのであればICカードリーダライタ401は第1の演算装置408aと通信を開始するので、リセット応答制御器306はバッファ制御器303に第1の双方向バッファ101aをオンにし、第2の双方向バッファ101bをオフにするように通知する。バッファ制御器303は第1の双方向バッファ101aをオンに第2の双方向バッファ101bをオフにする。
【0031】
そして、ICカードリーダライタ401と第1の演算装置408aとの間で通信が開始される。ICカードリーダライタ401が対応できないものであれば、ユーザにICカード305を拒絶する旨を、あるいはエラーが通知されて処理が中断されるか、通信の再試行がICカード305に要求される。処理が中断される場合、ユーザが再度ICカード305をICカードリーダライタ401に接続するので、リセット応答制御器306はバッファ制御器303に第1の双方向バッファ101aおよび第2の双方向バッファ101bをオフにするよう通知する。バッファ制御器303は第1の双方向バッファ101aおよび第2の双方向バッファ101bをオフにする。
【0032】
リセット応答制御器306は、あらかじめ記憶器302に記憶されている第2の演算装置408bのリセット応答データDrbを読み出し通信部402を介してICカードリーダライタ401に返信する。ICカードリーダライタ401が同じサービスを運用するものであるかどうかを判断し対応できるのであれば、ICカードリーダライタ401は第2の演算装置408bと通信を開始する。そして、リセット応答制御器306はバッファ制御器303に第1の双方向バッファ101aをオフにし、第2の双方向バッファ101bをオンにするように通知する。バッファ制御器303は第1の双方向バッファ101aをオフに第2の双方向バッファ101bをオンにする。そして、ICカードリーダライタ401と第2の演算装置408bとの間の通信が開始される。
【0033】
本実施の形態にかかるICカード305は、第2の実施の形態にかかるICカード205に比べて、各演算装置の代理でリセット応答データDrをICカードリーダライタ401に高速に返信できる。さらに、演算装置内のCPU、ROM、RAM、およびEEPROMに電力供給する必要がなくリセット応答制御器、記憶手段、およびバッファ制御器のみに電力供給するので消費電力が少なくて済むというメリットがある。
【0034】
なお、本明細書においては、演算装置408として第1の演算器408aと第2の演算器408bの2つの演算器が用いられる例が述べられているが、演算装置408の数は2つに限定されるものでなく、任意個数の演算器をICカードに搭載できる。また、記憶器202および記憶器302は不揮発性メモリであり、例えばEEPROMで具現化できる。さらにICカードにはその物理的形状の制約からICを1個しか搭載できないので、図1、図2、および図3においてICカードとして示されるブロック部は1つのICに集積される方が具現化しやすい。
【0035】
上述のように、本発明にかかるICカードにおいては、それぞれが別運用のサービスに対応する第1の演算装置と第2の演算装置が設けられている。そして、第1の双方向バッファと第2の双方向バッファをバッファ制御器で切り替えることにより、1枚のICカードで2つの別運用のサービスに対応できるので、別運用のICカードリーダライタでも使用できる。
【産業上の利用可能性】
【0036】
本発明は、1枚で複数のサービスに対応するICカードに利用できる。
【図面の簡単な説明】
【0037】
【図1】本発明の第1の実施の形態にかかるICカードの構成を示すブロック図
【図2】本発明に第2の実施の形態にかかるICカードの構成を示すブロック図
【図3】本発明に第3の実施の形態にかかるICカードの構成を示すブロック図
【図4】従来のICカードの構成を示すブロック図
【符号の説明】
【0038】
105、205、305、407 ICカード
104、204、304 通信切替部
101a 第1の双方向バッファ
101b 第2の双方向バッファ
103、203、303 バッファ制御器
202、302 記憶器
306 リセット応答制御器
401 ICカードリーダライタ
402 通信部
403、403a、403b CPU
404、404a、404b ROM
405、405a、405b RAM
406、406a、406b EEPROM
408 演算装置
408a 第1の演算装置
408b 第2の演算装置

【特許請求の範囲】
【請求項1】
ICカードリーダライタと通信する通信手段と、
前記通信手段と第1の演算手段を接続する第1の双方向バッファと、
前記通信手段と第2の演算手段を接続する第2の双方向バッファと、
前記通信手段の出力に基づいて、前記第1の双方向バッファと前記第2の双方向バッファとを切り換え制御するバッファ制御手段とを備えるICカード。
【請求項2】
前記第1および第2の演算手段のそれぞれは、
ソフトウェアプログラムにより動作するCPUと、
基本となるソフトウェアプログラムを格納するROMと、
アプリケーションプログラムを格納するEEPROMと、
前記CPUの作業メモリであるRAMとを備える請求項1に記載のICカード。
【請求項3】
前記バッファ制御手段の切り替え制御する順番を記憶する記憶手段をさらに備える請求項1に記載のICカード。
【請求項4】
前記第1の双方向バッファと前記第2の双方向バッファのそれぞれから送信されるリセット応答データを記憶する記憶手段と、
前記通信手段の出力に応答して、前記記憶手段に記憶されているリセット応答データを前記通信手段に送信するリセット応答制御手段とをさらに備える請求項1に記載のICカード。
【請求項5】
前記バッファ制御手段は、
前記通信手段を介して入力される前記ICカードリーダライタからの出力に基づいて、
前記第1の双方向バッファおよび前記第2の双方向バッファのうち、前記ICカードリーダライタが同じサービスを運用すると判断される演算手段を接続する双方向バッファをオンにすることを特徴とする請求項1、請求項2、請求項3、および請求項4の何れかに記載のICカード。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate