(57)【特許請求の範囲】
【請求項１】
アプリケーションに対応する上位機器との間で通信を行うことで、ＩＣカードに記憶されているデータを読み出して前記上位機器側に送信するカードリーダにおいて、
複数の前記アプリケーション毎に接続された複数の前記上位機器と各々通信するための複数種類の通信用ポートと、
実行するアプリケーションに応じて通信する上位機器が選択される以前は、複数の前記上位機器と前記ＩＣカードとの間で前記複数種類の通信ポートを介して行われる通信を、アプリケーション情報ファイルの有無を照合する通信については許可し、前記上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを介して前記ＩＣカードとの間で行われる通信を、前記選択された上位機器との通信が終了するまで一時的に禁止する通信制御手段とを備えたことを特徴とするカードリーダ。
【請求項２】
アプリケーションに対応する上位機器との間で通信を行うことで、ＩＣカードに記憶されているデータを読み出して前記上位機器側に送信するカードリーダにおいて、
複数の前記アプリケーション毎に接続された複数の前記上位機器と各々通信するための複数種類の通信用ポートと、
実行するアプリケーションに応じて通信する上位機器が選択される以前は、前記複数の上位機器と前記ＩＣカードとの間で前記複数種類の通信ポートを介して行われる通信を、アプリケーション情報ファイルの有無を照合する通信については許可し、前記上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを介して前記ＩＣカードとの間で行われる通信を、前記選択された上位機器との通信が終了するまで一時的に禁止するモード、並びに前記複数種類の通信用ポートの何れかを介して上位機器との通信が行われると、以降はその他の通信用ポートを介して行われる通信を禁止するモードの設定切換えが、外部より変更可能に構成される通信制御手段とを備えたことを特徴とするカードリーダ。
【請求項３】
アプリケーションに対応する上位機器との間で通信を行うことでＩＣカードに記憶されているデータを読み出して前記上位機器側に送信し、複数の前記アプリケーション毎に接続された複数の前記上位機器と各々通信するための通信用ポートを複数種類備えるカードリーダの通信を制御する方法であって、
実行するアプリケーションに応じて通信する上位機器が選択される以前は、複数の前記上位機器と前記ＩＣカードとの間で前記複数種類の通信ポートを介して行われる通信を、アプリケーション情報ファイルの有無を照合する通信については許可し、前記上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを介して前記ＩＣカードとの間で行われる通信を、前記選択された上位機器との通信が終了するまで一時的に禁止することを特徴とするカードリーダの通信制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、上位機器との間で通信を行うことで、ＩＣカードに記憶されているデータを読み出して前記上位機器側に送信するカードリーダ、及びカードリーダの通信制御方法に関する。
【０００２】
【発明が解決しようとする課題】
現在、内部にデータが記憶されるメモリやＣＰＵなどを備えてなるＩＣカードを用いたシステムが、例えば、入室管理，パーソナルコンピュータのアクセス管理，企業における勤怠管理，決済端末などに適用されつつある。ＩＣカードはメモリのデータ容量が大きいことから、１枚で複数のアプリケーションに対応することも可能である。その場合、内部のメモリには夫々のアプリケーションに対応したデータが記憶され、夫々のデータには各アプリケーション毎のセキュリティ保護がかけられており、不正なアクセスが禁止されるようになっている。
【０００３】
一方、ＩＣカードと通信を行って記憶されているデータを読取るカードリーダと上位機器との間においては、アプリケーション毎に様々な通信インターフェイス（プロトコル，例えば、ＲＳ−２３２Ｃ，ＵＳＢ，ＬＡＮなど）が採用されている。従って、カードリーダには、夫々のアプリケーションに応じて使用される通信ポートを設ける必要があり、開発や製品管理における負担が大きくなるといった問題があった。
【０００４】
本発明は上記事情に鑑みてなされたものであり、その目的は、アプリケーションに応じて上位機器との間で通信を行うためのインターフェイスが異なる場合でも１台で容易に対応することができるカードリーダ、及びカードリーダの通信制御方法を提供することにある。
【０００５】
【課題を解決するための手段】
請求項１記載のカードリーダによれば、複数の前記アプリケーション毎に接続された複数の上位機器と各々通信するための通信用ポートを複数種類備えるので、様々なアプリケーションに応じて上位機器との間で行なう通信のインターフェイスが異なる場合でも、通信用ポートを選択して使用することで１台で対応することができる。そして、異なるインターフェイスに対応してカードリーダを作り分ける必要がなくなるので、製品の開発や管理を一括して行なうことができ、それらに要する負担を軽減することが可能となる。
【０００８】
また、通信制御手段は、実行するアプリケーションに応じて通信する上位機器が選択される以前は、複数の上位機器とＩＣカードとの間で複数種類の通信ポートを介して行われる通信を、アプリケーション情報ファイルの有無を照合する通信については許可し、前記上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを介して前記ＩＣカードに行われる通信を、前記選択された上位機器との通信が終了するまで一時的に禁止する。即ち、実行するアプリケーションに応じて通信する上位機器が選択された以降にＩＣカードからのデータの読み出しを行なう場合には、ＩＣカード側のデータに対してかけられているセキュリティを解除することになるため、その時に不正なアクセスが行なわれ易い状態となる。
【０００９】
従って、上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを用いたＩＣカードに対する通信を一時的に（例えば、所定のアプリケーションの実行期間中）禁止すれば、不正なアクセスが行なわれる可能性を排除することができる。そして、この場合は、その他の通信用ポートを用いて異なるアプリケーションを実行するための通信を並行して実行することが可能となる。
【００１０】
請求項２記載のカードリーダによれば、通信制御手段は、実行するアプリケーションに応じて通信する上位機器が選択される以前は、複数の上位機器とＩＣカードとの間で前記複数種類の通信ポートを介して行われる通信を、アプリケーション情報ファイルの有無を照合する通信については許可し、上位機器の何れかが選択された以降は、選択された上位機器のための通信用ポート以外のその他の通信用ポートを介してＩＣカードとの間で行われる通信を、選択された上位機器との通信が終了するまで一時的に禁止するモード、並びに複数種類の通信用ポートの何れかを介して上位機器との通信が行われると、以降はその他の通信用ポートを介して行われる通信を禁止するモードの設定切換えが、外部より変更可能に構成される。斯様に構成すれば、ユーザの用途に応じて、通信を一時的に禁止するモードと以降の通信を完全に禁止するモードを選択することができるので、利便性を高めることができる。
【００１１】
【発明の実施の形態】
（第１実施例）
以下、本発明の第１実施例について図１乃至図３を参照して説明する。図１は、カードリーダ１の電気的構成を示す機能ブロック図である。カードリーダ１は、ＣＰＵやメモリなどを備える制御部（通信制御手段）２と、その制御部２を中心とする複数の周辺回路とで構成されている。制御部２は、上位機器（ホスト）との間で通信を行ない、上位機器からの指令に応じて各種のアプリケーションに対応したデータをＩＣカード３から読み出すと、上位機器に送信するようになっている。また、必要に応じて、上位機器より送信されたデータをＩＣカード３に書き込む。
【００１２】
カードリーダ１は、上位機器と通信を行なうためのインターフェイス（Ｉ／Ｆ，通信用ＬＳＩ）を、（ＲＳ−）２３２Ｃインターフェイス４，ＵＳＢ(Universal Serial Bus)インターフェイス５及びＬＡＮインターフェイス６の３種類備えている。即ち、カードリーダ１は、各種のアプリケーションに応じて異なる上位機器との間で通信を行なう必要があり、上位機器側が備えている通信インターフェイス（プロトコル）が様々である場合でも対応できるようにしている。
【００１３】
また、カードリーダ１は、具体的には図示しないが、ＩＣカード３が本体１ａに設けられているカードスロットに挿入されると、ＩＣカード３を本体１ａ内部の所定位置まで搬送してから通信を行なうように構成されている。即ち、制御部２がＩＣカード３を図示しないセンサ等によって検出すると、モータやローラなどで構成されるカード搬送部７を駆動することでＩＣカード３を内部に搬送する。それから、制御部２は、ＩＣカード３のタイプに応じて接点ＩＣカードインターフェイス８又は非接触ＩＣカードインターフェイス９を介してＩＣカード３と通信を行い、ＩＣカード３に記憶されているデータを読み出す。制御部２が読み出したデータは、何れかのインターフェイス（通信用ポート）４〜６を介して上位機器側に送信される。
【００１４】
その他、カードリーダ１は、入力操作用のテンキー１０，必要な表示を行なうための表示部１１，各部に動作用の電源を供給するための電源部１２などを備えている。
【００１５】
図２は、上位機器側を含むＩＣカードシステム全体の構成を概略的に示すものである。カードリーダ１には、例えばパーソナルコンピュータなどの上位機器１３（Ａ）が、ＵＳＢインターフェイス５を介して接続された状態にある。上位機器１３には、アプリケーション（アプリ）Ａとして電子マネー情報を管理するデータベース（ＤＢ）１４が接続されている。そして、上位機器１３は、ＩＣカード３に記憶されている電子マネー情報を読み出して、ＩＣカード３のユーザが電子マネーを利用して行なう決済を処理するようになっている。
【００１６】
尚、ＩＣカード３のメモリには、▲２▼電子マネー情報の他に、▲１▼クレジット情報，▲３▼銀行口座情報などもデータファイルとして記憶されており、それらのアプリケーションにも対応するように構成されている。
【００１７】
また、上位機器１５は、クレジットのアプリケーションを実行するためのホストであり、クレジット情報を管理するデータベース１６に接続されている。そして、上位機器１５は、カードリーダ１に対しては２３２Ｃインターフェイス４を介して接続可能であるが、初期状態として未接続となっているものとする。
【００１８】
次に、本実施例の作用について図３を参照して説明する。図３は、上位機器１３，カードリーダ１，ＩＣカード３との間で行われる通信処理のシーケンスである。上位機器１３は、図２に示すように、カードリーダ１にＵＳＢインターフェイス５を介して接続された状態にある。
【００１９】
そして、ＩＣカード３がカードリーダ１の本体１ａに挿入された場合に、上位機器１３より「カードＩＮ？」の問い合わせがあると（▲１▼）、制御部２は、上位機器１５（Ｂ）側との通信を禁止する設定を行なう（▲２▼）。即ち、最初に使用されたＵＳＢインターフェイス５だけを有効な通信ポートとして、２３２Ｃインターフェイス４及びＬＡＮインターフェイス６を使用不能とするように設定し、ＵＳＢインターフェイス５だけが有効であることを示すために通信ポートフラグを内部のメモリにセットする（▲３▼）。
【００２０】
以降は、通常のＩＣカード３との間における通常の通信処理となる。即ち、制御部２は、上位機器１３からの「カードＩＮ？」の問い合わせに対して応答「ＹＥＳ」を返す（▲４▼）。すると、上位機器１３は、ＩＣカード３が電子マネーに関する情報ファイルを有しているか否かの問い合わせを行ない（▲５▼）、制御部２は、その問い合わせを受けてＩＣカード３が有している情報内容を照合する（▲６▼）。その結果、ＩＣカード３が電子マネー情報ファイルを有していれば、制御回路２は、上位機器１３に応答「ＹＥＳ」を返す（▲７▼）。
【００２１】
次に、上位機器１３は、カードリーダ１に対して電子マネーのメニューを表示するように指示を与える（▲８▼）。すると、制御部２は、表示部１１にメニューを表示させて応答「ＯＫ」を返す（▲９▼）。ここで、ユーザが、カードリーダ１のテンキー１０を操作して電子マネーの処理を選択すると(10)、制御部２は、上位機器１３より「電子マネー選択？」の問い合わせがあった場合に(11)応答「ＹＥＳ」を返す(12)。
【００２２】
そして、上位機器１３とＩＣカード３との間で、カードリーダ１を介して認証系コマンドに関する通信（例えば、暗号文を使ったカード認証通信，暗証番号の通信など）が行われる(13)。その際、ユーザはテンキー１０を操作して暗証番号の入力を行なう。認証系コマンドの通信が適正に行なわれると、ＩＣカード３側のセキュリティが解除された状態となり、上位機器１３は、ＩＣカード３との間で電子マネー情報の読み出し（また、必要に応じて書き込み）を行なう(14)。
【００２３】
ここで、上位機器１５（Ｂ）がカードリーダ１の２３２Ｃインターフェイス４に接続され、恰も上位機器１３のように振る舞いＩＣカード３に対するデータの読み書きを試みたとする(15)。しかしながら、既にプロセス▲２▼において２３２Ｃインターフェイス４の使用は禁止された状態にあるので、上位機器１５によるアクセスはカードリーダ１の段階で阻止される。
【００２４】
最後に、上位機器１３は、カードリーダ１に対して“ＲＥＳＴ”などの通信処理を終了するためのコマンドを発行する(16)。すると、ＩＣカード３との間における一連の通信処理は終了する。
【００２５】
以上のように本実施例によれば、カードリーダ１に、上位機器と通信を行うために３つの通信用インターフェイス４〜６を備えたので、様々なアプリケーションに応じて上位機器との間で行なう通信のインターフェイスが異なる場合でも、インターフェイス４〜６を選択して使用することで１台で対応することができる。そして、異なるインターフェイスに対応してカードリーダを作り分ける必要がなくなるので、製品の開発や管理を一括して行なうことができ、それらに要する負担を軽減することが可能となる。
【００２６】
また、本実施例によれば、カードリーダ１制御部２は、ＵＳＢインターフェイス５を介して上位機器１３との通信が行われると、それ以降は他のインターフェイス４，６を介して行われる通信を禁止するようにした。従って、電子マネー以外のアプリケーションを実行するための上位機器１５などが、２３２Ｃインターフェイス４を介してＩＣカード３に不正なアクセスを行なうことを確実に防止することができる。
【００２７】
（第２実施例）
図４及び図５は本発明の第２実施例を示すものであり、第１実施例と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。第２実施例の構成は基本的に第１実施例と同様であり、制御部２におけるソフトウエアに基づく処理内容が異なっている。
【００２８】
図４に示すように、第２実施例では、電子マネーアプリケーションに対応する上位機器１３と、クレジットアプリケーションに対応する上位機器１５とが、夫々ＵＳＢインターフェイス５，２３２Ｃインターフェイス４を介して予めカードリーダ１に接続されている。そして、制御部２は、電子マネーアプリケーションとクレジットアプリケーションとを並行して実行するように構成されている。
【００２９】
次に、第２実施例の作用について図５を参照して説明する。先ず、上位機器１５が、カードリーダ１に対して「カードＩＮ？」の問い合わせを行ない、制御部２はその応答「ＹＥＳ」を返す（▲１▼）。続いて、上位機器１３が、第１実施例と同様にカードリーダ１に対して「カードＩＮ？」の問い合わせを行ない、応答  「ＹＥＳ」を受ける（▲２▼）。
【００３０】
次に、上位機器１５，１３が夫々クレジットファイル，電子マネーファイルを有しているか否かの照合を行い、カードリーダ１より応答「ＹＥＳ」を受ける  （▲３▼，▲４▼）。続いて、上位機器１５，１３が夫々クレジットメニュー，電子マネーメニューの表示要求をカードリーダ１に発行し、カードリーダ１より応答「ＯＫ」を受ける（▲５▼，▲６▼）。
【００３１】
ここで、ユーザが第１実施例と同様に、テンキー１０を操作して電子マネーのアプリケーションを選択したとする（▲７▼）。その場合、上位機器１５が「クレジット選択？」の問い合わせを行なうと、カードリーダ１より応答「ＮＯ」を受け（▲８▼）、上位機器１３が「電子マネー選択？」の問い合わせを行なうと、カードリーダ１より応答「ＹＥＳ」を受ける（▲９▼）。
【００３２】
すると、上位機器１３は、第１実施例と同様にＩＣカード３との間で、カードリーダ１を介して認証系コマンドの通信を行なう(10)。それから、カードリーダ１は、上位機器１５側の通信を一時的に禁止した上で（即ち、２３２Ｃインターフェイス４を介して行なう通信処理を禁止して）(11)ＩＣカード３との間で電子マネー情報の読み出し（また、必要に応じて書き込み）を行なう(12)。
尚、プロセス(11)では、同時にＬＡＮインターフェイス６を介して行なう通信も一時的に禁止する。
【００３３】
この場合、上位機器１５が、プロセス▲８▼において応答「ＮＯ」を受けたにもかかわらず、恰も上位機器１３のように振る舞いＩＣカード３に対するデータの読み書きを試みたとする(13)。しかしながら、この時、２３２Ｃインターフェイス４の使用は禁止された状態にあるので、上位機器１５によるアクセスはカードリーダ１の段階で阻止され、制御部２は現在ＩＣカード３と通信中であるため上位機器１５の要求には応じられない旨を示す応答「ＢＵＳＹ」を返す。
【００３４】
その後、上位機器１３は、カードリーダ１に対して通信処理終了のコマンドを発行することで、ＩＣカード３との間における一連の通信処理は終了する(14)。その後に、制御部２は、２３２Ｃインターフェイス４の使用を許可して上位機器１５側の通信禁止を解除する(15)。この時、同時にＬＡＮインターフェイス６を介して行なう通信の禁止も解除する。
【００３５】
尚、プロセス(11)における通信禁止処理及びプロセス(15)における通信禁止の解除処理は、カードリーダ１の設計時，又は製造ラインからの出荷時，或いは出荷後のフィールドにおけるユーザによる設定条件が一致することによって行なう。その設定は、例えばディップスイッチなどを用いて行い、制御部２が起動した場合にそのスイッチの設定を読み込むことで、通信禁止モードが設定されている場合に行なうようにする。
【００３６】
以上のように第２実施例によれば、制御部２は、ＵＳＢインターフェイス５を介して行なわれた上位機器１３との通信に基づいてＩＣカード３との間でデータの読み書きを行なう前に、他のインターフェイス４，６を介して行われる通信を一時的に禁止するようにした。
【００３７】
即ち、ＩＣカード３との間でデータの読み書きを行なう場合には、ＩＣカード３側のデータに対してかけられているセキュリティを解除することになるため、その時に不正なアクセスが行なわれ易い状態となる。従って、その前の段階で、その他のインターフェイス４，６を用いた通信を一時的に禁止することで、不正なアクセスが行なわれる可能性を排除することができる。そして、この場合、制御部２は、その他のインターフェイス４，６を用いて異なるアプリケーションを実行するための通信を並行して実行することが可能となる。
【００３８】
本発明は上記し且つ図面に記載した実施例にのみ限定されるものではなく、次のような変形または拡張が可能である。
第１実施例において、制御部２がフラグを設定するメモリは、揮発性，不揮発性の何れであっても良い。揮発性メモリの場合は、電源部１２を介した電源の供給を遮断することで、通信インターフェイス４〜６の使用状態を初期化して新たに設定をやり直すことができる。
第１実施例のように以降の通信を恒久的に禁止するモードと、第２実施例のように通信を一時的に禁止するモードとを、例えば上述したようなディップスイッチを用いて行なう設定によって切替え可能に構成しても良い。斯様に構成すれば、ユーザの用途に応じてモードを選択することができるので、利便性を高めることができる。
【００３９】
第２実施例において、プロセス(11)における通信禁止処理をプロセス(10)の実行前に行なっても良い。
通信用ポートの数は、２つ、或いは４つ以上あっても良い。また、同じ種類の通信用ポートが複数あっても良い。
通信用ポートの種類は、実施例に示したものに限らない。その他、例えばBluetooth などのプロトコルに対応した通信用ポートを備えても良い。
カードリーダは、ＩＣカードからデータの読み出しだけを行なうものであっても良い。
【図面の簡単な説明】
【図１】本発明の第１実施例であり、カードリーダの電気的構成を示す機能ブロック図
【図２】上位機器側を含むＩＣカードシステム全体の構成を概略的に示す図
【図３】上位機器，カードリーダ，ＩＣカードとの間で行われる通信処理のシーケンスを示す図
【図４】本発明の第２実施例を示す図２相当図
【図５】図３相当図
【符号の説明】
１はカードリーダ、２は制御部（通信制御手段）、３はＩＣカード、４は２３２Ｃインターフェイス（通信用ポート）、５はＵＳＢインターフェイス（通信用ポート）、６はＬＡＮインターフェイス（通信用ポート）、１３，１５は上位機器を示す。
【図１】
0003849036.tif 000002
【図２】
0003849036.tif 000003
【図３】
0003849036.tif 000004
【図４】
0003849036.tif 000005
【図５】
0003849036.tif 000006