説明

ICカード管理システム

【課題】 管理側システムにおいて、ICカードの使用履歴の特定を基本的に不能として蓄積管理されるデータ自体を無意味化する一方、ユーザが希望した場合等必要に応じて使用履歴の特定が可能な仕組みを実現すること。
【解決手段】 管理側システム90は、改札システム50から受信したカード使用情報に設定されているカードIDによって定まる乱数ID列に従った新たな乱数IDを発行させ、カードIDを発行させた乱数IDと置き換えたカード使用履歴データを生成してカード使用履歴ファイルとして管理する。ユーザ操作によってカードIDが入力されたならば、入力されたカードIDによって定まる乱数ID列を発生させ、カード使用履歴ファイルから、使用順に並べたときの乱数IDの順番が発生させた乱数ID列の順番通りになるカード使用履歴データを抽出することで当該カードIDが割り当てられたIC乗車券30の使用履歴を特定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、固有の識別IDが割り当てられたICカードの使用位置に設置されるカード使用装置と、当該カード使用装置で使用されるICカードの使用履歴を管理する管理側システムとが通信接続されて構成されるICカード管理システムに関する。
【背景技術】
【0002】
従来から、データ管理やデータ通信等においては、データの漏洩等を防止してセキュリティ上の信頼性を向上させるため、様々な方式による暗号化の技術が用いられている。
例えば、証票に印字される識別番号の偽造によるコンピュータシステムへの不正アクセスを防止するため、暗号化パターンを複数用意し、識別番号を、乱数により決定されたパターンで暗号化する技術が知られている(特許文献1参照。)。
【0003】
一方従来から、ICカードと、所定位置に設置されたリーダ(ICカード通信機)との間で近距離無線通信を行う、非接触式のデータキャリアを利用した様々な技術が知られている。例えば鉄道施設では、利用者が所持するSuica(Super urban intelligent card:登録商標)等のプリペイド式のIC乗車券に記憶されている残高の情報を読み取ることにより、当該利用者による鉄道施設内への入場や鉄道施設内からの出場を自動的に管理する技術が知られている。
【特許文献1】特開平8−96049号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
ところで、上記したIC乗車券のようなプリペイド式のICカードの発行を管理する管理側システムにあっては、例えば利用者が当該ICカードを紛失した際に残額を返金する場合等に備えて、残高を含む使用履歴を管理する場合がある。具体的には、使用時にICカードが残高を含むデータを発信するように構成し、発信したデータを管理側システムで蓄積して管理する。
【0005】
しかしながらこの使用履歴によれば、当該ICカードを購入した利用者が、いつどこに位置したかを識別できてしまう。この問題を解決するため、当該ICカードの使用履歴を特定するためにICカードから発信されるデータを暗号化する等の方法が考えられるが、管理側システムから使用履歴が不正に参照されたり、人的に不正に持ち出される事態は避けられない。
【0006】
そこで本発明は、管理側システムにおいて、ICカードの使用履歴の特定を基本的に不能として蓄積管理されるデータ自体を無意味化する一方、ユーザが希望した場合等必要に応じて使用履歴の特定が可能な仕組みを実現することを目的とする。
【課題を解決するための手段】
【0007】
以上の課題を解決するための第1の発明のICカード管理システムは、
固有の識別IDが割り当てられたICカードの使用位置に設置され、前記ICカードとの間で近距離無線通信を行って前記ICカード内のデータを書き換えるとともに、前記ICカードから識別IDを含むカード情報を取得するカード使用装置と、当該カード使用装置から送信されるカード情報をカード情報記憶手段(例えば、図8に示すカード使用履歴ファイル940)に蓄積記憶して前記ICカードの使用履歴を管理する管理側システムとが通信接続されて構成されるICカード管理システムであって、
前記カード使用装置は、前記ICカードから取得したカード情報に時刻情報及び所定の発信データを含めて前記管理側システムに送信するカード情報送信手段(例えば、図4に示す処理装置510)を備え、
前記管理側システムは、
前記カード使用装置から受信したカード情報に含まれる識別IDに基づき、当該識別IDによって定まる乱数ID列に従った新たな乱数IDを発行する乱数ID発行手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
前記受信したカード情報に含まれる識別IDを前記乱数ID発行手段により発行された乱数IDと置き換えて前記カード情報記憶手段に書き込むカード情報書込手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
ユーザ操作に従って前記ICカードの識別IDを入力する識別ID入力手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
前記識別ID入力手段により入力された識別IDに基づいて、前記乱数ID発行手段によって発行される乱数ID列と同じ乱数ID列を発生するID列発生手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
前記ID列発生手段により発生された乱数ID列の各乱数IDと同一の乱数IDを含むカード情報であって、時刻情報に従った乱数IDの羅列が前記発生された乱数ID列と一致するカード情報を、前記カード情報記憶手段に記憶されているカード情報の中から抽出する抽出手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
前記抽出手段により抽出されたカード情報に基づき、前記識別ID入力手段により入力された識別IDが割り当てられたICカードの使用履歴を特定する特定手段(例えば、図8に示すカード使用履歴管理サーバ930)と、
を備えるものである。
【0008】
この第1の発明によれば、カード使用装置は、使用されたICカードから取得した当該ICカードの識別IDを含むカード情報に、時刻情報及び所定の発信データを含めて管理側システムに送信することができる。一方管理側システムでは、カード使用装置から受信したカード情報に含まれる識別IDによって定まる乱数ID列に従った新たな乱数IDを乱数ID発行手段により発行させ、当該受信したカード情報に含まれる識別IDを発行させた乱数IDと置き換えてカード情報記憶手段に書き込むことによって、カード使用装置から送信されるカード情報を蓄積記憶しておく。そして、ユーザ操作に従って識別IDが入力された場合には、入力された識別IDに基づいて前記乱数ID発行手段によって発行される乱数ID列と同じ乱数ID列を発生させ、カード情報記憶手段に蓄積記憶されているカード情報の中から、時刻情報に従った乱数IDの羅列が発生させた乱数ID列と一致するカード情報を抽出することによって、入力された識別IDが割り当てられたICカードの使用履歴を特定することができる。
これによれば、管理側システムにおいて、カード情報記憶手段に蓄積記憶されるデータを無意味化してICカードの使用履歴の特定を不能とする一方、ユーザ操作によって発行パスワードの入力が行われた場合には当該ICカードの使用履歴の特定が可能な仕組みを実現することができる。
【0009】
第2の発明は、第1の発明のICカード管理システムであって、
前記管理側システムは、
前記カード使用装置から受信したカード情報に含まれる識別IDにそれぞれ固有の暗号鍵を割り当てて、復号鍵とともに管理する鍵管理手段(例えば、図8に示す暗号キー発生サーバ970,キーテーブル973)と、
前記カード使用装置から受信したカード情報に含まれる発信データを、当該カード情報に含まれる識別IDと対応付けられて前記鍵管理手段に管理されている暗号鍵で暗号化する暗号化手段(例えば、図8に示す窓口サーバ910)と、
を更に備え、
前記カード情報書込手段が、前記暗号化手段により発信データが暗号化されたカード情報を、受信順とは異なる順番で前記カード情報記憶手段に書き込む書込順制御手段(例えば、図8に示すカード使用履歴管理サーバ930)を有するものである。
【0010】
この第2の発明によれば、管理側システムでは、ICカードの識別ID毎に固有の暗号鍵を復号鍵とともに管理し、カード使用装置から受信したカード情報に含まれる発信データを、当該カード情報に含まれる識別IDの暗号鍵で暗号化することができる。そして、発信データが暗号化されたカード情報を、カード使用装置からの受信順とは異なる順番でカード情報記憶手段に書き込むことによって、データの書き込まれている順番を無意味化することができる。
【0011】
第3の発明は、第2の発明のICカード管理システムであって、
前記抽出手段が、カード情報に含まれる発信データを、前記識別ID入力手段により入力された識別IDと対応付けられて前記鍵管理手段に管理されている復号鍵で復号し、当該復号の良否に基づいて抽出するカード情報の絞り込みを行う絞り込み手段(例えば、図8に示すカード使用履歴管理サーバ930)を有するものである。
【0012】
この第3の発明によれば、ユーザ操作に従って入力された識別IDが割り当てられたICカードの使用履歴を特定する際に、当該入力された識別IDの復号鍵による発信データの復号の良否に基づいて、抽出するカード情報を絞り込むことができる。
【0013】
第4の発明は、第1〜第3の何れかの発明のICカード管理システムであって、
前記ICカードは、前記カード使用装置における使用によって減額される残高の情報を記憶する残高記憶手段(例えば、図3に示す残高393)を更に備え、
前記カード使用装置は、
前記ICカードとの間で近距離無線通信を行う当該ICカードの使用時に、当該ICカードの残高記憶手段に記憶されている残高を所定額減額して更新させる残高更新手段(例えば、図4に示す処理装置510)を更に備え、
前記カード情報送信手段が、前記残高更新手段による更新後の残高を前記発信データに含めて前記管理側システムに送信する手段であり、
前記管理側システムは、
前記特定手段が、前記抽出手段により抽出されたカード情報のうち、時刻情報が最新のカード情報の発信データに含まれる残高によって、当該ICカードの使用残高を特定する残高特定手段(例えば、図8に示すカード使用履歴管理サーバ930)を有するものである。
【0014】
この第4の発明によれば、カード使用装置では、当該カード使用装置での使用によって減額されるICカードの残高を発信データに含めて管理側システムに送信することができる。一方管理側システムでは、ユーザ操作に従って入力された識別IDが割り当てられたICカードの使用履歴を特定する際に抽出したカード情報のうち、時刻情報が最新のカード情報に含まれる残高によって、当該ICカードの残高を特定することができる。
【0015】
第5の発明は、第4の発明のICカード管理システムであって、
前記管理側システムは、
残高情報として、ランダムに決定した第1の数値、及び、第1の数値と前記カード使用装置から受信したカード情報の発信データに含まれる残高との差である第2の数値を決定する残高情報決定手段(例えば、図8に示す窓口サーバ910)を更に備え、
前記暗号化手段が、前記残高情報決定手段により決定された残高情報を暗号化する残高暗号化手段(例えば、図8に示す窓口サーバ910)を有するものである。
【0016】
この第5の発明によれば、管理側システムでは、カード使用装置から受信したカード情報の発信データに含まれる残高をもとにランダムに決定した第1の数値、及び第1の数値と当該残高との差である第2の数値を残高情報として決定した後、暗号化することができる。これによれば、第1の数値及び第2の数値の桁数がランダムになる。したがって、カード情報記憶手段に蓄積記憶されているカード情報が、残高が高いICカードから発信されたカード情報なのか残高が低いICカードから発信されたカード情報なのか判別できず、データを無意味化できる。
【0017】
第6の発明は、第4又は第5の発明のICカード管理システムであって、
積み増し額を入金する入金手段(例えば、図6に示す入金装置710)と、
前記ICカードとの間で無線通信を行い、当該ICカードの残高記憶手段に記憶されている残高を、前記入金手段により入金された積み増し額分増額して更新する積み増し時書込手段(例えば、図6に示す処理装置730)と、
前記ICカードから識別IDを取得し、当該取得した識別IDと前記積み増し時書込手段が書き込んだ結果増額された残高とを入金情報として、前記管理側システムに送信する入金情報送信手段(例えば、図6に示す処理装置730)と、
を備えて前記管理側システムと通信接続された入金装置を更に具備し、
前記管理側システムは、
前記入金装置から入金情報を受信した際に新たな入金IDを発行し、前記受信した入金情報に含まれる識別IDと対応付けて管理する入金ID管理手段(例えば、図8に示す入金ID管理サーバ950,入金IDテーブル953)と、
前記受信した入金情報に含まれる識別IDを、当該識別IDと対応付けられて前記入金ID管理手段に管理されている入金IDと置き換えて入金情報を記憶する入金情報記憶手段(例えば、図8に示す入金履歴ファイル920)と、
前記カード使用装置からカード情報を受信した際に、当該カード情報に含まれる識別IDと対応付けられて前記入金ID管理手段に管理されている入金IDを特定する入金ID特定手段(例えば、図8に示す窓口サーバ910)と、
前記入金情報記憶手段の中から前記入金ID特定手段により特定された入金IDと対応付けられて記憶されている残高を読み出し、前記カード使用装置から受信したカード情報の発信データに含まれる残高と比較することによって、前記ICカードの不正使用を検出する不正使用検出手段(例えば、図8に示す窓口サーバ910)と、
を更に備えるものである。
【0018】
この第6の発明によれば、入金装置は、積み増し額が入金されて残高が増額されたICカードの識別IDを取得し、取得した識別IDと増額後の残高とを入金情報として管理側システムに送信する。一方管理側システムでは、入金装置から入金情報を受信した際に、新たな入金IDを発行して当該受信した入金情報に含まれる識別IDと対応付けて管理するとともに、当該受信した入金情報に含まれる識別IDを、当該識別IDの入金IDと置き換えて入金情報記憶手段に記憶しておく。そして、カード使用装置からカード情報を受信した場合には、当該カード情報に含まれる識別IDの入金IDを特定し、入金情報記憶手段に記憶されている特定した入金IDの残高を、受信したカード情報の発信データに含まれる残高と比較することによって、ICカードの不正使用を検出することができる。
【発明の効果】
【0019】
本発明によれば、カード使用装置は、使用されたICカードから取得した当該ICカードの識別IDを含むカード情報に、時刻情報及び所定の発信データを含めて管理側システムに送信することができる。一方管理側システムでは、カード使用装置から受信したカード情報に含まれる識別IDによって定まる乱数ID列に従った新たな乱数IDを乱数ID発行手段により発行させ、当該受信したカード情報に含まれる識別IDを発行させた乱数IDと置き換えてカード情報記憶手段に書き込むことによって、カード使用装置から送信されるカード情報を蓄積記憶しておく。そして、ユーザ操作に従って識別IDが入力された場合には、入力された識別IDに基づいて前記乱数ID発行手段によって発行される乱数ID列と同じ乱数ID列を発生させ、カード情報記憶手段に蓄積記憶されているカード情報の中から、時刻情報に従った乱数IDの羅列が発生させた乱数ID列と一致するカード情報を抽出することによって、入力された識別IDが割り当てられたICカードの使用履歴を特定することができる。
これによれば、管理側システムにおいて、カード情報記憶手段に蓄積記憶されるデータを無意味化してICカードの使用履歴の特定を不能とする一方、ユーザ操作によって発行パスワードの入力が行われた場合には当該ICカードの使用履歴の特定が可能な仕組みを実現することができる。
【発明を実施するための最良の形態】
【0020】
以下、図面を参照し、本発明の好適な実施形態について詳細に説明する。尚、本実施形態は、本発明のICカード管理システムを鉄道施設に利用されるシステムに適用した場合の実施形態である。
【0021】
[全体構成]
図1は、ICカード管理システム1の全体構成の一例を示す図である。本実施形態では、駅構内10(10−1,10−2,・・・)に、カード使用装置としての改札システム50及び入金装置としてのチャージシステム70が設置され、これらが通信回線Nを介して管理側システム90と接続されてICカード管理システム1を構成している。ここで、通信回線Nとは、データ授受が可能な通信路を意味する。すなわち、通信回線Nとは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
【0022】
改札システム50は、各駅の改札に設置されて改札業務を実現する改札装置に具備されるものであり、改札装置が備えるゲート扉の開閉を制御して利用者の通行を規制し、利用者の鉄道施設内への入場や鉄道施設内からの出場をコンピュータ制御によって管理する。
【0023】
具体的には、改札システム50は、利用者が所持する例えばSuica(登録商標)等の非接触型のICチップを内蔵したプリペイド式のICカード(以下、「IC乗車券」という。)30に記憶されている残高を読み出すことによって精算処理を行い、処理結果に基づいて当該利用者の通行を規制する。
【0024】
チャージシステム70は、例えば各駅の券売機等に設置されるものであり、利用者からの現金払いやクレジットカード払い等によるチャージ金の入金に応じて、当該IC乗車券30に対して積み増し額をチャージする公知のチャージシステムである。このチャージシステム70によって、利用者は、その残高を増額することによりIC乗車券30を繰り返し使用することができる。
【0025】
管理側システム90は、例えば鉄道会社の管理側に設置されてICカード管理システム1を統括的に制御する。また、管理側システム90は、改札システム50から送信されるカード使用情報に基づくカード使用履歴を管理するとともに、チャージシステム70から送信される入金情報に基づく入金履歴を管理する。
【0026】
また本実施形態では、後述するようにIC乗車券30の発行時において当該IC乗車券30に固有に割り当てられるID情報(識別ID:以下、「カードID」という。)が利用者に提示されるが、管理側システム90は、ユーザ操作によって前述のカードIDが入力された場合に、管理しているカード使用履歴をもとに、当該利用者が所持するIC乗車券30(すなわち、入力されたカードIDが割り当てられたIC乗車券30)の使用履歴を特定する。
【0027】
図2は、このICカード管理システム1におけるデータの流れを説明するための図である。図2に示すように、利用者が駅改札を通過する際、当該利用者が所持するIC乗車券30と改札システム50との間で近距離無線通信が行われ、A)当該IC乗車券30に記憶されているカードID及び残高が改札システム50に発信される。これに応じて、改札システム50では精算処理が実行され、B)精算処理後の残高がIC乗車券30に書き込まれて残高が精算額分減額された額に更新される。
【0028】
そして、改札システム50により、当該IC乗車券30のカードIDと、発信データとしての精算処理後の残高、使用日時、及び当該改札システム50の設置位置に係る情報とが対応付けられたカード使用情報が生成され、C)管理側システム90に送信される。
【0029】
一方管理側システム90では、改札システム50から送信されたカード使用情報に基づいて、後述するIC乗車券30の不正使用を検出する処理(不正使用検出処理)が実行される。そして、当該不正使用検出処理の結果、残高が不正に積み増されていると判断された場合には、H)当該カード使用情報に設定されているカードIDが、不正カードIDとして管理側システム90に接続されている全ての改札システム50に配信される。各改札システム50では、この不正カードIDの一覧が管理され、不正カードIDが割り当てられたIC乗車券の使用を禁止するようになっている。
【0030】
また、利用者が券売機等でチャージ金を入金した際には、IC乗車券30とチャージシステム70との間で近距離無線通信が行われ、D)当該IC乗車券30に記憶されているカードID及び残高がチャージシステム70に発信される。これに応じて、チャージシステム70ではチャージ処理が実行され、E)チャージ処理後の残高がIC乗車券30に書き込まれて残高が積み増し額分増額された額に更新される。
【0031】
そして、チャージシステム70により、当該IC乗車券30のカードID及びチャージ処理後の残高(以下、「入金時残高」という。)に入金日時が対応付けられた入金情報が生成され、F)管理側システム90に送信される。
【0032】
[内部構成]
次に、図3〜図13を参照して、IC乗車券30、改札システム50、チャージシステム70、及び管理側システム90の内部構成について順に説明する。
【0033】
1.IC乗車券
図3は、IC乗車券30の主要内部構成の一例を示すブロック図である。IC乗車券30は、アンテナ310、電源回路330、送受信回路350、制御回路370、メモリ390等を備えて構成されている。
【0034】
アンテナ310は、改札システム50が備えるICカード通信機570(図4参照)やチャージシステム70が備えるICカード通信機790(図6参照)との間で近距離無線通信を行うためのものであり、ICカード通信機570やICカード通信機790との間で電波信号を送受信する。
【0035】
電源回路330は、アンテナ310において生じた電磁誘導による電流によってIC乗車券30の各部に電力を供給する回路である。
【0036】
送受信回路350は、アンテナ310を介してICカード通信機570,790から発信された信号を復調して制御回路370に出力する。また、送受信回路350は、制御回路370から入力される制御信号を変調増幅し、アンテナ310を介してICカード通信機570,790に発信する。
【0037】
制御回路370は、改札システム50やチャージシステム70との近距離無線通信を制御し、ICカード通信機570,790からの指示に基づくデータの発信動作、ICカード通信機570,790から送信されたデータのメモリ390への書き込み動作等を行う。
【0038】
メモリ390は、不揮発性の半導体メモリ等であり、カードID391及び残高393が格納される。
カードID391は、当該IC乗車券30に固有に割り当てられたID情報であり、例えばカード発行時において当該IC乗車券30に書き換え不能に書き込まれるとともに、利用者に提示される。
残高393は、当該IC乗車券30の残額であり、駅改札において使用される度に改札システム50によってその額が減額されて更新される。また、券売機等で積み増し額がチャージされる度にチャージシステム70によってその額が増額されて更新される。
【0039】
2.改札システム
図4は、改札システム50の主要内部構成の一例を示すブロック図である。改札システム50は、処理装置510、通信装置530、記憶装置550、ICカード通信機570、利用者の通行を規制するゲート扉590等を備えて構成されている。尚、入力装置や表示装置等を適宜備えた構成としても構わない。
【0040】
処理装置510は、CPU等で構成され、改札システム50を構成する各機能部への指示やデータの転送等を行って改札システム50を統括的に制御する。具体的には、ICカード通信機570から入力されるデータ等に応じた処理プログラムを記憶装置550から読み出して実行し、処理結果を記憶装置550に格納する。この処理装置510は、当該改札システム50が設置された駅改札でIC乗車券30が使用された際に、当該IC乗車券30の残高393(図3参照)を取得して精算処理を実行し、処理結果に基づいて当該IC乗車券30の残高393を精算額分減額して更新させる。
【0041】
通信装置530は、装置内部で利用される情報を通信回線を介して外部とやりとりするための装置であり、他の装置(例えば管理側システム90)との通信を行うための制御を行う。この通信装置530の機能は、無線通信モジュール、モデム、TA、有線用の通信ケーブルのジャックや制御回路等によって実現される。
【0042】
記憶装置550は、更新記憶可能なフラッシュメモリ等のROMやRAMといった各種ICメモリ、或いはハードディスクドライブ等で構成され、改札システム50の動作に係る各種処理プログラムや当該処理プログラムによる処理結果等のデータを記憶する。特に、カード使用情報送信プログラム551と、不正使用カード管理プログラム553と、不正カードID一覧555と、当該改札システム50の設置位置を特定する改札機ID557とを含む。
【0043】
カード使用情報送信プログラム551は、IC乗車券30が使用された際に実行される精算処理の後、当該IC乗車券30から取得したカードID及び残高をカード情報とし、使用日時及び当該改札システム50の改札機IDと対応付けたカード使用情報を生成して管理側システム90に送信するためのプログラムである。
【0044】
図5は、管理側システム90に送信されるカード使用情報のデータ構成例を示す図であり、カード使用情報は、カードID及び残高であるカード情報と、使用日時と、改札機IDとが対応付けられたものである。処理装置510は、精算処理の後、当該IC乗車券30から取得したカードID及び精算処理後の残高に、当該使用時(精算時)の時刻情報である使用日時、及び改札機ID557を対応付けたカード使用情報を生成して、通信装置530及び通信回線Nを介して管理側システム90に送信する。
【0045】
不正使用カード管理プログラム553は、管理側システム90から通知される不正カードIDを管理するためのプログラムである。この不正使用カード管理プログラム553に従って、処理装置510は、管理側システム90から通知された不正カードIDを不正カードID一覧555に登録して管理し、不正カードID一覧555に含まれるカードIDのIC乗車券30が使用された場合には、ゲート扉590を閉鎖させて利用者の通行を禁止する。
【0046】
不正カードID一覧555は、管理側システム90から通知された不正カードIDの一覧を記憶する。
【0047】
ICカード通信機570は、図示しないアンテナ、制御回路、メモリ等で構成される。このICカード通信機570は、近接されたIC乗車券30との間で近距離無線通信を行い、IC乗車券30から取得したデータを処理装置510に出力するとともに、処理装置510から入力されたデータをIC乗車券30に書き込むための制御を行う。
【0048】
3.チャージシステム
図6は、チャージシステム70の主要内部構成の一例を示すブロック図である。チャージシステム70は、入金装置710、処理装置730、通信装置750、記憶装置770、ICカード通信機790等を備えて構成されている。尚、入力装置や表示装置等を適宜備えた構成としても構わない。
【0049】
入金装置710は、チャージ金を入金するための装置であり、入金されたチャージ金の額を積み増し額として処理装置730に出力する。
【0050】
処理装置730は、CPU等で構成され、チャージシステム70を構成する各機能部への指示やデータの転送等を行ってチャージシステム70を統括的に制御する。具体的には、入金装置710から入力される積み増し額や、ICカード通信機790から入力されるデータ等に応じた処理プログラムを記憶装置770から読み出して実行し、処理結果を記憶装置770に格納する。この処理装置730は、当該チャージシステム70が設置された券売機等で積み増し額がチャージされた際に、当該IC乗車券30から残高393(図3参照)を取得してチャージ処理を実行し、当該IC乗車券30の残高393を積み増し額分増額して更新させる。
【0051】
通信装置750は、装置内部で利用される情報を通信回線を介して外部とやりとりするための装置であり、他の装置(例えば管理側システム90)との通信を行うための制御を行う。この通信装置750の機能は、無線通信モジュール、モデム、TA、有線用の通信ケーブルのジャックや制御回路等によって実現される。
【0052】
記憶装置770は、更新記憶可能なフラッシュメモリ等のROMやRAMといった各種ICメモリ、或いはハードディスクドライブ等で構成され、チャージシステム70の動作に係る各種処理プログラムや当該処理プログラムによる処理結果等のデータを記憶する。特に、入金情報送信プログラム771を含む。
【0053】
入金情報送信プログラム771は、積み増し額がチャージされた際に実行されるチャージ処理の後、入金情報を生成して管理側システム90に送信するためのプログラムである。
【0054】
図7は、管理側システム90に送信される入金情報のデータ構成例を示す図であり、入金情報は、カードIDと、入金時残高と、入金日時とが対応付けられたものである。処理装置730は、チャージ処理の後、当該IC乗車券30から取得したカードID及びチャージ処理後の入金時残高に、当該チャージ時の時刻情報である入金日時を対応付けた入金情報を生成して、通信装置750及び通信回線Nを介して管理側システム90に送信する。
【0055】
ICカード通信機790は、図示しないアンテナ、制御回路、メモリ等で構成される。このICカード通信機790は、IC乗車券30との間で無線通信を行い、IC乗車券30から取得したデータを処理装置730に出力するとともに、処理装置730から入力されたデータをIC乗車券30に書き込むための制御を行う。
【0056】
4.管理側システム
図8は、管理側システム90の主要内部構成の一例を示すブロック図である。図8に示すように、管理側システム90は、窓口サーバ910、カード使用履歴管理サーバ930、入金ID管理サーバ950、暗号キー発生サーバ970、及び乱数ID管理サーバ990の各部が接続されたサーバシステムにより実現されるものであり、それぞれCPU等の処理装置、ハードディスク等の記憶装置、通信回線Nに接続するための通信装置、入力装置や表示装置等を備えた公知の汎用サーバ装置によって構成されている。
【0057】
(窓口サーバ)
窓口サーバ910は、管理側システム90を構成する各部への指示やデータの転送等を行って、管理側システム90全体を統括的に制御する。また、窓口サーバ910は、IC乗車券30に対するチャージ金の入金履歴を管理するとともに、残高が不正に積み増されたIC乗車券30の検出を行う。
【0058】
この窓口サーバ910の記憶装置には、入金管理プログラム911と、不正使用検出プログラム913と、暗号化プログラム915とが格納されている。
【0059】
入金管理プログラム911は、チャージシステム70から受信した入金情報に基づいて入金履歴データを生成し、入金履歴ファイル920として管理するためのプログラムであり、窓口サーバ910は、この入金管理プログラム911に従って入金管理処理を実行する。
【0060】
具体的には、窓口サーバ910は、チャージシステム70から入金情報を受信したならば、当該入金情報に設定されているカードIDとともに入金ID発行要求を入金ID管理サーバ950に通知し、当該カードIDに対する新たな入金IDを入金ID管理サーバ950に発行させて取得する。そして、窓口サーバ910は、当該入金情報のカードIDを取得した入金IDと置き換えた入金履歴データを生成して、入金履歴ファイル920として管理する。
【0061】
図9は、入金履歴ファイル920のデータ構成例を示す図である。図9に示すように、入金履歴ファイル920は、入金IDと、入金時残高と、入金日時とが対応付けられたデータテーブルであり、前述の入金管理処理の結果生成された入金履歴データが格納される。また、詳細は後述するが、前述の入金ID発行要求に応じて、入金ID管理サーバ950からは、新たな入金IDとともに前回のチャージの際に当該カードIDに対して発行された旧入金IDが返信されるようになっており、返信された旧入金IDが設定された入金履歴データは、入金履歴ファイル920から削除される。
【0062】
不正使用検出プログラム913は、改札システム50から受信したカード使用情報に設定されている残高が不正に積み増されたものかを検出するためのプログラムであり、窓口サーバ910は、この不正使用検出プログラム913に従って不正使用検出処理を実行する。
【0063】
具体的には、窓口サーバ910は、受信したカード使用情報に設定されているカードIDを処理対象として以下の処理を実行する。
すなわち、処理対象のカードIDとともに入金ID問合せ要求を入金ID管理サーバ950に通知し、当該カードIDに対する入金IDを取得する。次いで、入金履歴ファイル920を参照して取得した入金IDに対応する入金時残高を読み出す。そして、受信したカード使用情報に設定されている残高が読み出した入金時残高より増額されている場合には、残高が不正に積み増されたと判断して処理対象のカードIDを不正カードIDとし、管理側システム90と接続されている全ての改札システム50に配信する。
【0064】
暗号化プログラム915は、改札システム50から受信したカード使用情報に設定されている残高、使用日時、及び改札機IDを暗号化するためのプログラムであり、窓口サーバ910は、この暗号化プログラム915に従って暗号化処理を実行する。
【0065】
具体的には、窓口サーバ910は、受信したカード使用情報に設定されているカードIDを処理対象として以下の処理を実行する。
すなわち、処理対象のカードIDとともに暗号化キー問合せ要求を暗号キー発生サーバ970に通知し、当該カードIDに対する暗号化キーを取得する。そして、取得した暗号キーを用いて各データを所定の暗号方式によって暗号化する。このとき、残高の暗号化は次のようにする。すなわち、先ず残高情報として、ランダムに決定した第1の数値としての数値A、及び数値Aと残高との差である第2の数値としての数値Bを決定する。そして、決定した数値A及び数値Bである残高情報を前述のように取得した暗号キーを用いて暗号化する。この暗号化処理の結果、残高、使用日時、及び改札機IDが暗号化されたカード使用情報は、履歴書込要求とともにカード使用履歴管理サーバ930に転送される。
【0066】
(カード使用履歴管理サーバ)
カード使用履歴管理サーバ930は、IC乗車券30のカード使用履歴を管理するとともに、所定のユーザ操作によってカードIDの入力を受け付け、入力されたカードIDが割り当てられたIC乗車券30の使用履歴を特定する。カードIDの入力は、例えばカード使用履歴管理サーバ930の入力装置から入力されることとしてもよいし、当該カード使用履歴管理サーバ930と通信接続される端末装置で入力されたものであってもよい。
【0067】
このカード使用履歴管理サーバ930の記憶装置には、履歴書込制御プログラム933と、使用履歴特定プログラム935と、使用履歴特定用テーブル937とが格納される。
【0068】
履歴書込制御プログラム933は、窓口サーバ910から転送されるカード使用情報に基づいてカード使用履歴データを生成し、カード使用履歴ファイル940として管理するためのプログラムであり、カード使用履歴管理サーバ930は、窓口サーバ910から当該カードIDが設定されたカード使用情報が転送されたタイミングで、履歴書込制御プログラム933に従って履歴書込制御処理を実行する。
【0069】
具体的には、カード使用履歴管理サーバ930は、先ず、当該転送されたカード使用情報に設定されているカードIDとともに、乱数ID発行要求を乱数ID管理サーバ990に通知し、新たな乱数IDを取得する。次いで、カード使用履歴管理サーバ930は、当該カード使用情報のカードIDを取得させた乱数IDと置き換えたカード使用履歴データを生成する。これにより、同一のカードIDが設定されたカード使用情報をもとに生成したカード使用履歴データを転送されてきた順に並べれば、その乱数IDの順番は、当該カードIDによって定まる乱数ID列と同一の順番となる。
【0070】
続いて、カード使用履歴管理サーバ930は、生成したカード使用履歴データを一時的に記憶装置内に保持しておく。そして、所定のタイミングで、例えば使用日時に設定されている時刻(年月日時分)別にカード使用履歴データを分類する。そして、分類毎にカード使用履歴データを生成された順番(窓口サーバ910からの転送順)とは異なる順番にランダムに並び替えて、各カード使用履歴データをカード使用履歴ファイル940に書き込んでいく。このとき、カード使用履歴管理サーバ930は、書込順に従って各カード使用履歴データを、カード使用履歴ファイル940に書き込んでいく。
【0071】
図10は、カード使用履歴ファイル940のデータ構成例を示す図である。図10に示すように、カード使用履歴ファイル940は、通し番号と、乱数IDと、暗号化残高情報と、使用日時と、暗号化改札機IDとが対応付けられたデータテーブルであり、前述の履歴書込制御処理の結果書き込まれたカード使用履歴データが、書込順を示す通し番号と対応付けられて格納される。すなわち、カード使用履歴ファイル940の1レコード分が1つのカード使用情報に対応しており、1つのレコードは通し番号で特定される。尚、通し番号は、レコードを特定するための識別情報であるため、通し番号の代わりにレコードID等の別の識別情報を用いてもよい。
【0072】
使用履歴特定プログラム935は、ユーザ操作によってカードIDが入力された際に、当該カードIDが割り当てられたIC乗車券30の使用履歴を特定するためのプログラムであり、カード使用履歴管理サーバ930は、この使用履歴特定プログラム935に従って使用履歴特定処理を実行する。この使用履歴特定処理によれば、カード使用履歴ファイル940の中から、入力されたカードIDが割り当てられたIC乗車券30から発信されたデータを含むカード使用情報をもとに生成されたカード使用履歴データが抽出されて、当該IC乗車券30の使用履歴が特定される。
【0073】
具体的には、カード使用履歴管理サーバ930は、先ず入力されたカードIDとともに復号キー問合せ要求を暗号キー発生サーバ970に通知し、当該カードIDに対する復号キーを取得する。次いで、カード使用履歴管理サーバ930は、入力されたカードIDとともに乱数ID列発生要求を乱数ID管理サーバ990に通知し、当該カードIDによって定まる乱数ID列を取得する。
【0074】
そして、カード使用履歴管理サーバ930は、カード使用履歴ファイル940に設定されている各カード使用履歴データを使用日時順に並べたときの乱数IDの順番が、入力されたカードIDによって定まる乱数ID列の順番通りになるカード使用履歴データを抽出して当該IC乗車券30の使用履歴の候補(使用履歴候補)とする。そして、カード使用履歴管理サーバ930は、取得した復号キーで暗号化残高情報、及び暗号化改札機IDの復号が全て成功したか否かによって使用履歴候補を絞り込む。次いで、カード使用履歴管理サーバ930は、使用履歴候補をユーザ操作によって入力される絞り込み条件をもとに絞り込んでいくことで、最終的に特定する。
【0075】
使用履歴特定用テーブル937は、使用履歴特定処理によってユーザ操作により入力されたカードIDが割り当てられたIC乗車券30の使用履歴が特定されるまでの間適宜参照されて更新されるデータテーブルである。図11は、使用履歴特定用テーブル937のデータ構成例を示す図である。この使用履歴特定用テーブル937は、ユーザ操作によってカードIDが入力された際に生成される。
【0076】
すなわち、この使用履歴特定用テーブル937には、ユーザ操作によってカードIDが入力された際に、前述のように乱数ID管理サーバ990から取得した乱数ID列が設定されるとともに、選出されたカード使用履歴データを組み合わせた使用履歴候補が設定される。詳細には、使用履歴候補は、当該使用履歴候補を構成するカード使用履歴データに割り振られた通し番号の順番によって定義される。
【0077】
(入金ID管理サーバ)
入金ID管理サーバ950は、IC乗車券30に対するチャージ(入金)に係る固有の入金IDを発行して管理する。この入金ID管理サーバ950の記憶装置には、入金ID発行プログラム951と、入金IDテーブル953とが格納されている。
【0078】
入金ID発行プログラム951は、入金IDを発行させるためのプログラムである。発行させた入金IDは、入金IDテーブル953に登録されるようになっている。図12は、入金IDテーブル953のデータ構成例を示す図である。図12に示すように、入金IDテーブル953は、カードIDと、入金IDとが対応付けられたデータテーブルである。
【0079】
入金ID管理サーバ950は、窓口サーバ910から入金ID発行要求が通知されたならば、当該入金ID発行要求とともに通知されるカードIDを処理対象として以下の処理を実行する。
すなわち、先ず、入金ID発行プログラム951に従って処理対象のカードIDに対する新たな入金IDを発行させる。次いで、処理対象のカードIDに対する入金IDとして発行させた新たな入金IDを登録し、入金IDテーブル953を更新する。そして、発行させた入金IDを、更新前に当該処理対象のカードIDと対応付けられて設定されていた入金ID(旧入金ID)とともに窓口サーバ910に返信する。このとき、処理対象のカードIDに対する入金IDが入金IDテーブル953に登録されていない場合には、当該カードIDと発行した入金IDとを対応付けたレコードを追加して登録し、発行させた入金IDを窓口サーバ910に返信する。
【0080】
また、入金ID管理サーバ950は、窓口サーバ910から入金ID問合せ要求が通知された際には、当該入金ID問合せ要求とともに通知されるカードIDに対する入金IDを入金IDテーブル953から読み出して窓口サーバ910に返信する。
【0081】
(暗号キー発生サーバ)
暗号キー発生サーバ970は、カード使用情報の暗号化に係るキーデータを管理する。この暗号キー発生サーバ970の記憶装置には、キーデータ発生プログラム971と、キーテーブル973が格納されている。
【0082】
キーデータ発生プログラム971は、暗号化キー及び復号キーを発生させるためのプログラムである。発行させた暗号化キー及び復号キーは、キーテーブル973に登録されるようになっている。図13は、キーテーブル973のデータ構成例を示す図である。図13に示すように、キーテーブル973は、カードIDと、暗号化キー及び復号キーであるキーデータとが対応付けられたデータテーブルである。
【0083】
暗号キー発生サーバ970は、窓口サーバ910から暗号化キー問合せ要求が通知されたならば、当該暗号化キー問合せ要求とともに通知されるカードIDを処理対象として以下の処理を実行する。
すなわち、処理対象のカードIDに対する暗号化キーをキーテーブル973から読み出して窓口サーバ910に返信する。このとき、処理対象のカードIDに対するキーデータがキーテーブル973に登録されていない場合には、キーデータ発生プログラム971に従って当該カードIDに固有の暗号化キー及び復号キーを発生させてキーテーブル973に登録し、発生させた暗号化キーを窓口サーバ910に返信する。尚、復号キーはユニークであってもよいが、復号キーを重複して割り当てることとしてもよい。何故ならば、カード使用履歴ファイル940が不正に持ち出された場合、復号キーが特定できれば、該当するカードIDが割り当てられたIC乗車券30の使用履歴が特定されてしまうからである。
【0084】
また、暗号キー発生サーバ970は、カード使用履歴管理サーバ930から復号キー問合せ要求が通知された際には、当該復号キー問合せ要求とともに通知されるカードIDに対する復号キーをキーテーブル973から読み出してカード使用履歴管理サーバ930に返信する。
【0085】
(乱数ID管理サーバ)
乱数ID管理サーバ990は、カードIDによって定まる乱数IDを管理する。この乱数ID管理サーバ990の記憶装置には、乱数ID列発生プログラム991が格納されている。
【0086】
乱数ID列発生プログラム991は、カードIDによって定まる乱数ID列を発生させるためのプログラムである。乱数ID管理サーバ990は、カード使用履歴管理サーバ930から乱数ID発行要求が通知されたならば、乱数ID列発生プログラム991に従って、当該乱数ID発行要求とともに通知されるカードIDを処理対象として以下の処理を実行する。
すなわち、処理対象のカードIDによって定まる固有の乱数ID列に従った新たな乱数IDを、乱数ID発行要求が通知されたタイミングで順次発行していく。また発行した乱数IDをカード使用履歴管理サーバ930に返信する。
【0087】
また、乱数ID管理サーバ990は、カード使用履歴管理サーバ930から乱数ID列発生要求が通知されたならば、乱数ID列発生プログラム991に従って、当該乱数ID列発生要求とともに通知されるカードIDによって定まる乱数ID列を発生させる。また発生させた乱数ID列をカード使用履歴管理サーバ930に返信する。
【0088】
[処理の流れ]
次に、図14〜図21を参照して、ICカード管理システム1における処理の流れについて説明する。
【0089】
先ず、改札システム50が設置された駅改札でIC乗車券30が使用された際のICカード管理システム1における処理の流れについて、図14を参照して説明する。
【0090】
図14に示すように、改札システム50において利用者の入出場を検知した場合には(ステップb10:YES)、処理装置510は、IC乗車券30との近距離無線通信を制御し、当該IC乗車券30にカードID391及び残高393を発信させて取得する(ステップa10)。続いて処理装置510は、取得したカードIDが不正カードID一覧555において管理されている不正カードIDと一致するか否かを判定し、一致した場合には(ステップb20:YES)、通行させないと判定してゲート扉590を閉鎖させ(ステップb30)、処理を終了する。
【0091】
一方、一致しなかった場合には(ステップb20:NO)、処理装置510は、ステップa10の結果取得した残高に基づいて精算処理を実行し(ステップb40)、当該利用者の通行許否を判定する。このとき、処理装置510は、残高が不足している場合には通行させないと判定し(ステップb50:NO)、ゲート扉590を閉鎖させる(ステップb60)。
【0092】
当該利用者を通行させる場合には(ステップb50:YES)、処理装置510は、当該IC乗車券30の残高393を精算額分減額して更新させる制御を行う(ステップb70)。この改札システム50の制御により、IC乗車券30では、残高393が更新される(ステップa20)。そして、処理装置510は、ステップa10の結果取得したカードID及び精算処理後の残高をカード情報とし、当該使用時(精算時)の時刻情報である使用日時及び改札機ID557と対応付けたカード使用情報を生成して(ステップb80)、管理側システム90に送信する(ステップb90)。
【0093】
そして、管理側システム90では、改札システム50からカード使用情報を受信したならば(ステップc10:YES)、カード使用時処理を実行する(ステップc20)。
【0094】
ここで、管理側システム90において実行されるカード使用時処理について、図15〜図17を参照して説明する。
【0095】
図15は、カード使用時処理の流れを説明するためのフローチャートである。図15に示すように、カード使用時処理では、窓口サーバ910が不正使用検出処理を実行し(ステップd10)、続いて暗号化処理を実行する(ステップe10)。そして、カード使用履歴管理サーバ930が履歴書込制御処理を実行する(ステップf10)。以下、順に説明する。
【0096】
(不正使用検出処理)
図16は、不正使用検出処理の流れを説明するための図である。
窓口サーバ910は、d11)改札システム50からカード使用情報が送信されると、不正使用検出処理を実行する。すなわち、窓口サーバ910は、d13)受信したカード使用情報に設定されているカードIDとともに入金ID問合せ要求を入金ID管理サーバ950に通知する。
【0097】
これに応答して、入金ID管理サーバ950は、d15)通知されたカードIDに対する入金IDを入金IDテーブル953から読み出して窓口サーバ910に返信する。
【0098】
入金ID管理サーバ950から入金IDを取得したならば、窓口サーバ910は、d17)入金履歴ファイル920を参照し、取得した入金IDに対応する入金時残高を読み出す。そして、窓口サーバ910は、d19)受信したカード使用情報に設定されている残高が読み出した入金時残高よりも増額されているか否かを判定する。
【0099】
このとき、窓口サーバ910は、増額されているならば(d19:YES)、残高が不正に積み増されたと判断して当該カードIDを不正カードIDとする。この場合には、窓口サーバ910は、d21)不正カードIDを管理側システム90と接続されている全ての改札システム50に配信する。これに応答して、各改札システム50では、d23)当該不正カードIDを不正カードID一覧555に登録する。
【0100】
一方、受信したカード使用情報に設定されている残高が読み出した入金時残高以下であれば(d19:NO)、次に説明する暗号化処理に移行する。
【0101】
(暗号化処理)
図17は、暗号化処理及び後述する履歴書込制御処理の流れを説明するための図である。
窓口サーバ910は、e11)受信したカード使用情報に設定されているカードIDとともに暗号化キー問合せ要求を暗号キー発生サーバ970に通知する。
【0102】
これに応答して、暗号キー発生サーバ970は、e13)通知されたカードIDに対する暗号化キーをキーテーブル973から読み出して窓口サーバ910に返信する。
【0103】
暗号キー発生サーバ970から暗号化キーを取得したならば、窓口サーバ910は、e15)受信したカード使用情報に設定されている残高、使用日時、及び改札機IDを、取得した暗号キーを用いて暗号化する。そして、窓口サーバ910は、e17)残高、使用日時、及び改札機IDが暗号化されたカード使用情報をカード使用履歴管理サーバ930に転送して、履歴書込要求を通知する。これに応答して、カード使用履歴管理サーバ930は、履歴書込制御処理を実行する。
【0104】
(履歴書込制御処理)
履歴書込制御処理では、カード使用履歴管理サーバ930は、履歴書込要求とともに窓口サーバ910から転送されたカード使用情報に設定されているカードIDを読み出し、f11)乱数ID発行要求を読み出したカードIDとともに乱数ID管理サーバ990に通知する。
【0105】
これに応答して、乱数ID管理サーバ990は、乱数ID列発生プログラム991に従い、通知されたカードIDをもとに新たな乱数IDを発行させて、f12)発行させた乱数IDをカード使用履歴管理サーバ930に返信する。
【0106】
乱数ID管理サーバ990から乱数IDを取得したならば、カード使用履歴管理サーバ930は、f13)カードIDを取得した乱数IDと置き換えたカード使用履歴データを生成し、生成したカード使用履歴データをカード使用履歴ファイル940に書き込む。このとき、カード使用履歴管理サーバ930は、生成したカード使用履歴データを一時的に記憶装置内に保持しておく。そして、所定のタイミングで、例えば使用日時に設定されている時刻(年月日時分)が同一のカード使用履歴データ毎に分類し、分類毎にカード使用履歴データを生成された順番(窓口サーバ910からの転送順)とは異なる順番にランダムに並び替えることにより、書込順を制御してカード使用履歴ファイル940に書き込む。
【0107】
次に、チャージシステム70が設置された券売機等で積み増し額がチャージされた際のICカード管理システム1における処理の流れについて、図18を参照して説明する。
【0108】
図18に示すように、チャージシステム70においてチャージ金の入金を検知した場合には(ステップl10:YES)、処理装置730は、IC乗車券30との近距離無線通信を制御し、当該IC乗車券30にカードID391及び残高393を発信させて取得する(ステップk10)。
【0109】
続いて処理装置730は、取得した残高に基づいてチャージ処理を実行する(ステップl20)。そして、処理装置730は、チャージ処理の結果に基づいて、当該IC乗車券30の残高393を積み増し額分増額して更新させる制御を行う(ステップl30)。このチャージシステム70の制御により、IC乗車券30では、残高393が更新される(ステップk20)。そして、処理装置730は、ステップk10の結果取得したカードID及びチャージ処理後の残高を、当該入金時の時刻情報である入金日時と対応付けた入金情報を生成して(ステップl40)、管理側システム90に送信する(ステップl50)。
【0110】
そして、管理側システム90では、チャージシステム70から入金情報を受信したならば(ステップm10:YES)、入金時処理を実行する(ステップm20)。
【0111】
ここで、管理側システム90で実行される入金時処理について、図19及び図20を参照して説明する。
【0112】
図19は、入金時処理の流れを説明するためのフローチャートであり、チャージ処理として、窓口サーバ910が入金管理処理を実行する(ステップn10)。
【0113】
(入金管処理)
図20は、入金管理処理の流れを説明するための図である。
窓口サーバ910は、n11)チャージシステム70から入金情報が送信されると、入金管理処理を実行する。すなわち、窓口サーバ910は、n13)受信した入金情報に設定されているカードIDとともに入金ID発行要求を入金ID管理サーバ950に通知する。
【0114】
これに応答して、入金ID管理サーバ950は、n15)入金ID発行プログラム951に従って通知されたカードIDに対する新たな入金IDを発行させ、当該カードIDに対する入金IDとして発行させた入金IDを登録して入金IDテーブル953を更新する。そして、入金ID管理サーバ950は、n17)発行させた入金IDを、旧入金IDとともに窓口サーバ910に返信する。
【0115】
入金ID管理サーバ950から入金ID及び旧入金IDを取得したならば、窓口サーバ910は、n19)受信した入金情報のカードIDを取得した入金IDと置き換えた入金履歴データを生成し、入金履歴ファイル920に書き込む。またこのとき、窓口サーバ910は、入金IDとともに取得した旧入金IDが設定された入金履歴データを入金履歴ファイル920から削除する。
【0116】
次に、カード使用履歴管理サーバ930において実行される使用履歴特定処理の流れについて、図21を参照して説明する。尚、ここで説明する処理は、カード使用履歴管理サーバ930の処理装置が使用履歴特定プログラム935を読み出して実行することにより実現される。
【0117】
図21に示すように、カード使用履歴管理サーバ930は、先ず、ユーザ操作に従ってカードIDを入力する(ステップo10)。次いで、カード使用履歴管理サーバ930は、入力されたカードIDとともに復号キー問合せ要求を暗号キー発生サーバ970に通知する(ステップo20)。これに応答して、暗号キー発生サーバ970は、通知されたカードIDに対する復号キーをキーテーブル973から読み出し(ステップp10)、カード使用履歴管理サーバ930に返信する(ステップp20)。
【0118】
暗号キー発生サーバ970から復号キーを取得したならば(ステップo30:YES)、カード使用履歴管理サーバ930は、続いて前記入力されたカードIDとともに乱数ID列発生要求を乱数ID管理サーバ990に通知する(ステップo35)。これに応答し、乱数ID管理サーバ990は、通知されたカードIDによって定まる乱数IDを乱数ID列発生プログラム991に従って発生させて(ステップq10)、カード使用履歴管理サーバ930に返信する(ステップq20)。尚このとき、カード使用履歴管理サーバ930において、乱数ID管理サーバ990から取得された乱数ID列が使用履歴特定用テーブル937に保持される。
【0119】
乱数ID管理サーバ990から乱数ID列を取得したならば(ステップo40:YES)、カード使用履歴管理サーバ930は、続いてカード使用履歴ファイル940を参照し、発生させた乱数ID列に基づいて使用履歴候補を生成する(ステップo60)。具体的には、先ず、使用日時に従った乱数IDの順番がステップo40で取得した乱数ID列の順番通りになるカード使用履歴データの組合せを全て作成して、使用履歴候補とする。生成した使用履歴候補は、使用履歴特定用テーブル937に格納される。
【0120】
尚このときに、カード使用履歴管理サーバ930は、連続するカード使用履歴データに含まれる使用日時及び改札機IDによって当該駅間の移動が可能かどうかを判断し、当該IC乗車券30の使用履歴候補を絞り込むこととしてもよい。
【0121】
次に、カード使用履歴管理サーバ930は、使用履歴特定用テーブル937に設定されている各使用履歴候補それぞれを処理対象として以下の処理を実行する。すなわち、処理対象の使用履歴候補を構成するカード使用履歴データそれぞれの暗号化残高情報、及び暗号化改札機IDをステップo30で取得した復号キーで復号し、復号が全て成功したカード使用履歴データを選出する(ステップo65)。ここで、暗号化残高情報の復号が成功したか否かは、復号して得られた数値A及び数値Bの値が数値であるか、数値Aから数値Bを差し引いた値が正の値であるか等によって判断される。
【0122】
そして、カード使用履歴管理サーバ930は、使用履歴候補が1つに絞り込まれるまで、以下の処理を繰り返し実行する。
すなわち、カード使用履歴管理サーバ930は、ユーザ操作に従って絞り込み条件を入力し(ステップo80)、入力された絞り込み条件に従って、使用履歴候補を絞り込む(ステップo90)。
【0123】
例えば、カード使用履歴管理サーバ930は、過去に当該IC乗車券30を使用した駅や当該駅改札の通過時間帯の指定を受け付ける。そして、使用履歴特定用テーブル937に設定されている各使用履歴候補それぞれを処理対象とし、処理対象の使用履歴候補を構成するカード使用履歴データの何れかが、指定された駅に設置された改札システム50を識別するための改札機IDや、指定された通過時間帯となる使用日時を含むか否かを判定して絞り込む。この際、絞り込まれた使用履歴候補以外の使用履歴候補を削除して使用履歴特定用テーブル937を更新する。
【0124】
使用履歴候補が1つに絞られた場合には、カード使用履歴管理サーバ930は確定と判断し(ステップo70:YES)、当該使用履歴候補を構成するカード使用履歴データの使用日時の順番に従って、その使用履歴を特定する(ステップo100)。そして、カード使用履歴管理サーバ930は、使用日時が最新のカード使用履歴データに含まれる残高情報を読み出し、ステップo10で入力されたカードIDが割り当てられたIC乗車券30の残高を特定する(ステップo110)。
【0125】
以上説明したように、本実施形態によれば、駅改札でIC乗車券30が使用された際に、当該駅改札に設置された改札システム50は、IC乗車券30から取得したカードID及び精算処理後の残高に、使用日時及び改札機IDを対応付けたカード使用情報を生成して管理側システム90に送信することができる。一方管理側システム90では、カード使用情報を受信したならば、先ず窓口サーバ910が、当該受信したカード使用情報に設定されている残高、及び改札機IDを暗号化する。続いてカード使用履歴管理サーバ930が、当該カード使用情報に設定されているカードIDによって定まる固有の乱数ID列に従った新たな乱数IDを発行させて、カードIDを発行させた乱数IDと置き換えたカード使用履歴データを生成し、カード使用履歴ファイル940として管理する。このとき、生成したカード使用履歴データをカード使用履歴ファイル940に書き込む順番を、生成された順番とは異なる順番で書き込むことができる。
【0126】
これによれば、カード使用履歴データに含まれるIDは乱数IDであるため、カード使用履歴ファイル940を参照するだけでは当該IC乗車券30の識別を不能とすることができ、当該カード使用履歴ファイル940を意味のないものとすることができる。また、カード使用履歴ファイル940に書き込まれている順番をも無意味化することができる。
【0127】
また、カード使用履歴管理サーバ930では、ユーザ操作によってカードIDが入力された場合に、入力されたカードIDによって定まる乱数ID列を発生させる。そして、発生させた乱数ID列に基づいて、カード使用履歴ファイル940の中から、入力されたカードIDが割り当てられたIC乗車券30から発信されたカード情報を含むカード使用情報をもとに生成されたカード使用履歴データを抽出することによって、その使用履歴を特定することができる。
【0128】
このように、管理側システム90(カード使用履歴管理サーバ930)では、ユーザ操作によってカードIDが入力された場合を除いて、利用者によるIC乗車券30の使用履歴の特定を不能とすることができる。そして、ユーザ操作によってカードIDが入力された場合には、特定された使用履歴によって、当該IC乗車券30の残高を特定することができるので、例えば利用者が当該IC乗車券を紛失した際に残額を返金することが可能となる。
【0129】
また、チャージシステム70は、当該チャージシステム70が設置された券売機等で積み増し額がチャージされた際に、IC乗車券30から取得したカードID及びチャージ処理後の入金時残高に、入金日時を対応付けた入金情報を生成して管理側システム90に送信することができる。一方管理側システム90では、窓口サーバ910が、入金情報の受信の度に入金ID管理サーバ950に入金IDを発行させ、当該入金情報に設定されているカードIDを発行させた入金IDと置き換えた入金履歴データを入金履歴ファイル920として管理する。そして、チャージ後にIC乗車券30が使用された場合には、窓口サーバ910は、その残高が、入金履歴ファイル920として管理されている入金時残高よりも増額されているか否かを判定することによって、IC乗車券30への不正なチャージを検出することができる。これによれば、不正使用が検出されたならば当該IC乗車券30の使用を禁止することが可能である。
【0130】
尚、上記した実施形態では、管理側システム90を構成する各部をそれぞれ専用のサーバ装置によって実現することとしたが、必ずしも別個独立の装置とする必要はなく、1台又は複数台の装置で実現することとして構わない。
【図面の簡単な説明】
【0131】
【図1】ICカード管理システムの全体構成の一例を示す図。
【図2】ICカード管理システムにおけるデータの流れを説明するための図。
【図3】IC乗車券の主要内部構成の一例を示すブロック図。
【図4】改札システムの主要内部構成の一例を示すブロック図。
【図5】カード使用情報のデータ構成例を示す図。
【図6】チャージシステムの主要内部構成の一例を示すブロック図。
【図7】入金情報のデータ構成例を示す図。
【図8】管理側システムの主要内部構成の一例を示すブロック図。
【図9】入金履歴ファイルのデータ構成例を示す図。
【図10】カード使用履歴ファイルのデータ構成例を示す図。
【図11】使用履歴特定用テーブルのデータ構成例を示す図。
【図12】入金IDテーブルのデータ構成例を示す図。
【図13】キーテーブルのデータ構成例を示す図。
【図14】IC乗車券が使用された際のICカード管理システムにおける処理の流れを説明するためのフローチャート。
【図15】カード使用時処理の流れを説明するためのフローチャート。
【図16】不正使用検出処理の流れを説明するための図。
【図17】暗号化処理及び履歴書込制御処理の流れを説明するための図。
【図18】IC乗車券に積み増し額がチャージされた際のICカード管理システムにおける処理の流れを説明するためのフローチャート。
【図19】入金時処理の流れを説明するためのフローチャート。
【図20】入金管理処理の流れを説明するための図。
【図21】使用履歴特定処理の流れを説明するためのフローチャート。
【符号の説明】
【0132】
30 IC乗車券
310 アンテナ
330 電源回路
350 送受信回路
370 制御回路
390 メモリ
391 カードID
393 残高
【0133】
1 ICカード管理システム
50 改札システム
510 処理装置
530 通信装置
550 記憶装置
551 カード使用情報送信プログラム
553 不正使用カード管理プログラム
555 不正カードID一覧
557 改札機ID
570 ICカード通信機
590 ゲート扉
70 チャージシステム
710 入金装置
730 処理装置
750 通信装置
770 記憶装置
771 入金情報送信プログラム
790 ICカード通信機
90 管理側システム
910 窓口サーバ
911 入金管理プログラム
913 不正使用検出プログラム
915 暗号化プログラム
920 入金履歴ファイル
930 カード使用履歴管理サーバ
933 履歴書込制御プログラム
935 使用履歴特定プログラム
937 使用履歴特定用テーブル
940 カード使用履歴ファイル
950 入金ID管理サーバ
951 入金ID発行プログラム
953 入金IDテーブル
970 暗号キー発生サーバ
71 キーデータ発生プログラム
971 キーテーブル
990 暗号キー発生サーバ
991 乱数ID列発生プログラム
N 通信回線

【特許請求の範囲】
【請求項1】
固有の識別IDが割り当てられたICカードの使用位置に設置され、前記ICカードとの間で近距離無線通信を行って前記ICカード内のデータを書き換えるとともに、前記ICカードから識別IDを含むカード情報を取得するカード使用装置と、当該カード使用装置から送信されるカード情報をカード情報記憶手段に蓄積記憶して前記ICカードの使用履歴を管理する管理側システムとが通信接続されて構成されるICカード管理システムであって、
前記カード使用装置は、前記ICカードから取得したカード情報に時刻情報及び所定の発信データを含めて前記管理側システムに送信するカード情報送信手段を備え、
前記管理側システムは、
前記カード使用装置から受信したカード情報に含まれる識別IDに基づき、当該識別IDによって定まる乱数ID列に従った新たな乱数IDを発行する乱数ID発行手段と、
前記受信したカード情報に含まれる識別IDを前記乱数ID発行手段により発行された乱数IDと置き換えて前記カード情報記憶手段に書き込むカード情報書込手段と、
ユーザ操作に従って前記ICカードの識別IDを入力する識別ID入力手段と、
前記識別ID入力手段により入力された識別IDに基づいて、前記乱数ID発行手段によって発行される乱数ID列と同じ乱数ID列を発生するID列発生手段と、
前記ID列発生手段により発生された乱数ID列の各乱数IDと同一の乱数IDを含むカード情報であって、時刻情報に従った乱数IDの羅列が前記発生された乱数ID列と一致するカード情報を、前記カード情報記憶手段に記憶されているカード情報の中から抽出する抽出手段と、
前記抽出手段により抽出されたカード情報に基づき、前記識別ID入力手段により入力された識別IDが割り当てられたICカードの使用履歴を特定する特定手段と、
を備えることを特徴とするICカード管理システム。
【請求項2】
前記管理側システムは、
前記カード使用装置から受信したカード情報に含まれる識別IDにそれぞれ固有の暗号鍵を割り当てて、復号鍵とともに管理する鍵管理手段と、
前記カード使用装置から受信したカード情報に含まれる発信データを、当該カード情報に含まれる識別IDと対応付けられて前記鍵管理手段に管理されている暗号鍵で暗号化する暗号化手段と、
を更に備え、
前記カード情報書込手段が、前記暗号化手段により発信データが暗号化されたカード情報を、受信順とは異なる順番で前記カード情報記憶手段に書き込む書込順制御手段を有する、
ことを特徴とする請求項1に記載のICカード管理システム。
【請求項3】
前記抽出手段が、カード情報に含まれる発信データを、前記識別ID入力手段により入力された識別IDと対応付けられて前記鍵管理手段に管理されている復号鍵で復号し、当該復号の良否に基づいて抽出するカード情報の絞り込みを行う絞り込み手段を有する、
ことを特徴とする請求項2に記載のICカード管理システム。
【請求項4】
前記ICカードは、前記カード使用装置における使用によって減額される残高の情報を記憶する残高記憶手段を更に備え、
前記カード使用装置は、
前記ICカードとの間で近距離無線通信を行う当該ICカードの使用時に、当該ICカードの残高記憶手段に記憶されている残高を所定額減額して更新させる残高更新手段を更に備え、
前記カード情報送信手段が、前記残高更新手段による更新後の残高を前記発信データに含めて前記管理側システムに送信する手段であり、
前記管理側システムは、
前記特定手段が、前記抽出手段により抽出されたカード情報のうち、時刻情報が最新のカード情報の発信データに含まれる残高によって、当該ICカードの使用残高を特定する残高特定手段を有する、
ことを特徴とする請求項1〜3の何れか一項に記載のICカード管理システム。
【請求項5】
前記管理側システムは、
残高情報として、ランダムに決定した第1の数値、及び、第1の数値と前記カード使用装置から受信したカード情報の発信データに含まれる残高との差である第2の数値を決定する残高情報決定手段を更に備え、
前記暗号化手段が、前記残高情報決定手段により決定された残高情報を暗号化する残高暗号化手段を有する、
ことを特徴とする請求項4に記載のICカード管理システム。
【請求項6】
積み増し額を入金する入金手段と、
前記ICカードとの間で無線通信を行い、当該ICカードの残高記憶手段に記憶されている残高を、前記入金手段により入金された積み増し額分増額して更新する積み増し時書込手段と、
前記ICカードから識別IDを取得し、当該取得した識別IDと前記積み増し時書込手段が書き込んだ結果増額された残高とを入金情報として、前記管理側システムに送信する入金情報送信手段と、
を備えて前記管理側システムと通信接続された入金装置を更に具備し、
前記管理側システムは、
前記入金装置から入金情報を受信した際に新たな入金IDを発行し、前記受信した入金情報に含まれる識別IDと対応付けて管理する入金ID管理手段と、
前記受信した入金情報に含まれる識別IDを、当該識別IDと対応付けられて前記入金ID管理手段に管理されている入金IDと置き換えて入金情報を記憶する入金情報記憶手段と、
前記カード使用装置からカード情報を受信した際に、当該カード情報に含まれる識別IDと対応付けられて前記入金ID管理手段に管理されている入金IDを特定する入金ID特定手段と、
前記入金情報記憶手段の中から前記入金ID特定手段により特定された入金IDと対応付けられて記憶されている残高を読み出し、前記カード使用装置から受信したカード情報の発信データに含まれる残高と比較することによって、前記ICカードの不正使用を検出する不正使用検出手段と、
を更に備えることを特徴とする請求項4又は5に記載のICカード管理システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2007−41863(P2007−41863A)
【公開日】平成19年2月15日(2007.2.15)
【国際特許分類】
【出願番号】特願2005−225511(P2005−225511)
【出願日】平成17年8月3日(2005.8.3)
【出願人】(000173784)財団法人鉄道総合技術研究所 (1,666)
【Fターム(参考)】