説明

携帯可能電子装置、及び携帯可能電子装置の制御方法

【課題】より簡易な処理でコマンドの正当性を判断することができる携帯可能電子装置、及び携帯可能電子装置の制御方法を提供する。
【解決手段】携帯可能電子装置20は、第1の日付情報を記憶するメモリ28aと、外部機器から送信されたコマンドを受信する受信部と、前記受信部により受信された前記コマンドを解析し第2の日付情報を取得する解析部と、前記解析部により取得された前記第2の日付情報と前記メモリ28aにより記憶されている前記第1の日付情報とを比較する比較部と、前記比較部による比較の結果に基づいて前記コマンドに基づくコマンド処理を実行するか否か判定する判定部と、前記判定部の判定結果に基づいて前記コマンド処理を実行し前記コマンドに対するレスポンスを生成するコマンド処理部と、前記コマンド処理部により生成された前記レスポンスを前記外部機器に送信する送信部と、を具備する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、携帯可能電子装置、及び携帯可能電子装置の制御方法に関する。
【背景技術】
【0002】
一般的に、携帯可能電子装置として用いられるICカードは、プラスチックなどで形成されたカード状の本体と本体に埋め込まれたICモジュールとを備えている。ICモジュールは、ICチップを有している。ICチップは、電源が無い状態でもデータを保持することができるEEPROM(Electrically Erasable Programmable Read−Only Memory)またはフラッシュROMなどの不揮発性メモリと、種々の演算を実行するCPUとを有している。
【0003】
ICカードは、例えば、国際標準規格ISO/IEC7816に準拠したICカードである。ICカードは、携帯性に優れ、且つ、外部装置との通信及び複雑な演算処理を行う事ができる。また、偽造が難しい為、ICカードは、機密性の高い情報などを格納してセキュリティシステム、電子商取引などに用いられることが想定される。
【0004】
ICカードは、ICカードを処理する処理装置からコマンドを受信した場合、受信したコマンドに応じてアプリケーションを実行する。これにより、ICカードは、種々の機能を実現することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−27774号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ICカードにデータを追記する場合、従来のコマンドでは、ICカードは、受け取ったコマンドに基づく書込みの可否を「ライフサイクル」、または「EFの属性情報」などを用いて判断する。
【0007】
例えば、ICカードに既に記録されているデータに付随する日付情報より古い日付情報がタイムスタンプとしてICカードに書き込まれる場合、ICカードは、書き込みを不可とすることが望ましい。しかし、ICカードは、「ライフサイクル」及び「EFの属性情報」からこのようなデータの正当性をICカード側で判断できない。このような場合、書き込みの可否を端末で判断する必要がある。
【0008】
端末装置でコマンドの正当性を確認するために、端末装置は、全てのデータを読出し、ICカードに送信するコマンドの日付情報と、読み出したデータの日付情報とを比較する必要がある。この為、コマンドの発行回数及び処理時間などが増加し、処理端末による処理が複雑化するという課題がある。
【0009】
そこで、より簡易な処理でコマンドの正当性を判断することができる携帯可能電子装置、及び携帯可能電子装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
一実施形態に係る携帯可能電子装置は、第1の日付情報を記憶するメモリと、外部機器から送信されたコマンドを受信する受信部と、前記受信部により受信された前記コマンドを解析し、第2の日付情報を取得する解析部と、前記解析部により取得された前記第2の日付情報と、前記メモリにより記憶されている前記第1の日付情報とを比較する比較部と、前記比較部による比較の結果に基づいて、前記コマンドに基づくコマンド処理を実行するか否か判定する判定部と、前記判定部の判定結果に基づいて、前記コマンド処理を実行し、前記コマンドに対するレスポンスを生成するコマンド処理部と、前記コマンド処理部により生成された前記レスポンスを前記外部機器に送信する送信部と、を具備する。
【図面の簡単な説明】
【0011】
【図1】図1は、一実施形態に係るICカード処理システムの構成例について説明するための図である。
【図2】図2は、一実施形態に係るICカードの構成例について説明するための図である。
【図3】図3は、一実施形態に係るレコードデータの例について説明するための図である。
【図4】図4は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図5】図5は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図6】図6は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図7】図7は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図8】図8は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、一実施形態に係る携帯可能電子装置、及び携帯可能電子装置の制御方法について詳細に説明する。
【0013】
本実施形態に係る携帯可能電子装置(ICカード)20及びICカードを処理する処理装置(端末装置)10は、例えば、接触通信、及び/または非接触通信の機能を備える。これにより、ICカード20及び端末装置10は、互いにデータの送受信を行うことができる。
【0014】
図1は、一実施形態に係るICカード処理システム1の構成例を示す。
ICカード処理システム1は、ICカード20を処理する端末装置10と、ICカード20と、を備える。
【0015】
端末装置10は、CPU11、ROM12、RAM13、不揮発性メモリ14、カードリーダライタ15、操作部17、ディスプレイ18、及び電源部19を備える。CPU11、ROM12、RAM13、不揮発性メモリ14、カードリーダライタ15、操作部17、及びディスプレイ18は、それぞれバスを介して互いに接続されている。
【0016】
CPU11は、端末装置10全体の制御を司る制御部として機能する。CPU11は、ROM12又は不揮発性メモリ14に記憶されている制御プログラム及び制御データに基づいて種々の処理を行う。例えば、CPU11は、カードリーダライタ15を介してICカード20とコマンド及びレスポンスの送受信を行う。
【0017】
ROM12は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。RAM13は、ワーキングメモリとして機能する揮発性のメモリである。RAM13は、CPU11の処理中のデータなどを一時的に格納する。例えば、RAM13は、カードリーダライタ15を介して外部の機器と送受信するデータを一時的に格納する。また、RAM13は、CPU11が実行するプログラムを一時的に格納する。
【0018】
不揮発性メモリ14は、例えばEEPROM、FRAMなどを備える。不揮発性メモリ14は、例えば、制御用のプログラム、制御データ、アプリケーション、及びアプリケーションに用いられるデータなどを記憶する。
【0019】
カードリーダライタ15は、ICカード20と通信を行うためのインターフェース装置である。カードリーダライタ15は、接触通信、または非接触通信によりICカード20とデータの送受信を行う。
【0020】
接触通信のインターフェースとして用いられる場合、カードリーダライタ15は、ICカード20が装着されるスロットと、ICカード20が備えるコンタクトパターンと接続される複数の接触端子を備える。
【0021】
スロットにICカード20が装着される場合、カードリーダライタ15の複数の接触端子は、ICカード20のコンタクトパターンに接続される。これにより、端末装置10とICカード20とは電気的に接続される。カードリーダライタ15は、スロットに装着されるICカード20に対して、電力の供給、クロックの供給、リセット信号の入力、及びデータの送受信などを行う。
【0022】
また、非接触通信のインターフェースとして用いられる場合、カードリーダライタ15は、送受信するデータに対して信号処理を施す信号処理部と、所定の共振周波数を有するアンテナとを備える。
【0023】
カードリーダライタ15は、例えば、信号処理部により、送受信するデータに対して符号化、復号、変調、及び復調などの信号処理を行なう。また、カードリーダライタ15は、符号化及び変調を施したデータをアンテナに供給する。アンテナは、供給されたデータに応じて磁界を発生させる。これにより、端末装置10は、通信可能範囲に存在するICカード20に対してデータを非接触で送信することができる。
【0024】
さらに、カードリーダライタ15のアンテナは、磁界を検知し、検知した磁界に応じて信号を生成する。これにより、カードリーダライタ15は、信号を非接触で受信することができる。信号処理部は、アンテナにより受信された信号に対して復調及び復号を行う。これにより、端末装置10は、ICカード20から送信された元のデータを取得することができる。
【0025】
操作部17は、例えば操作キーなどを備え、操作者により入力される操作に基づいて、操作信号を生成する。操作部17は、生成した操作信号をCPUに入力する。これにより、CPU11は、操作者により入力された操作に基づいて処理を事項することができる。
【0026】
ディスプレイ18は、CPU11、または図示されないグラフィックコントローラなどの表示処理モジュールから入力される映像を表示するための信号に基づいて種々の情報を表示する。
【0027】
電源部19は、端末装置10の各部に電力を供給する。電源部19は、例えば、商用電源より電力を受け取り、所定の電圧に変換し、端末装置10の各部に供給する。
【0028】
図2は、一実施形態に係るICカード20の構成例を示す。
図2に示すように、ICカード20は、例えば、矩形状の本体21と、本体21内に内蔵されたICモジュール22とを備える。ICモジュール22は、ICチップ23と、通信部24とを備える。ICチップ23と通信部24とは、互いに接続された状態でICモジュール22内に形成されている。
【0029】
なお、本体21は、少なくとも通信部24が配設されるICモジュール22を設置可能な形状であれば、矩形状に限らず如何なる形状であっても良い。
【0030】
ICチップ23は、通信部24、CPU25、ROM26、RAM27、不揮発性メモリ28、電源部31、及びロジック部32などを備える。通信部24、CPU25、ROM26、RAM27、不揮発性メモリ28、電源部31、及びロジック部32は、バスを介して互いに接続されている。
【0031】
通信部24は、端末装置(外部機器)10のカードリーダライタ15と通信を行うためのインターフェースである。通信部24は、接触通信、または非接触通信により、端末装置10とデータの送受信を行う。
【0032】
接触通信のインターフェースとして用いられる場合、通信部24は、カードリーダライタ15の接触端子と接続されるコンタクトパターンを備える。コンタクトパターンは、導電性を有する金属などによりICモジュール22の表面に形成される接触端子である。即ち、コンタクトパターンは、端末装置10と接触可能に形成されている。
【0033】
コンタクトパターンは、金属により形成される面が複数のエリアに区切られて形成される。区切られた各エリアは、それぞれ端子として機能する。通信部24は、コンタクトパターンを介してカードリーダライタ15とデータの送受信を行うことができる。
【0034】
また、非接触通信のインターフェースとして用いられる場合、通信部24は、信号処理部とアンテナとを備える。
【0035】
信号処理部は、端末装置10に送信するデータに対して符号化、負荷変調などの信号処理を行う。例えば、信号処理部は、端末装置10に送信するデータの変調(増幅)を行う。信号処理部は、信号処理を施したデータをアンテナに供給する。
【0036】
アンテナは、例えば、ICモジュール22内に所定の形状で配設される金属線により構成される。ICカード20は、端末装置10に送信するデータに応じてアンテナにより磁界を発生させる。これにより、ICカード20は、端末装置10に対してデータを送信することができる。また、ICカード20は、電磁誘導によりアンテナに発生する誘導電流に基づいて端末装置10から送信されるデータを認識する。
【0037】
例えば、信号処理部は、アンテナに発生する誘導電流に対して復調、及び復号を行う。例えば、信号処理部は、アンテナにより受信する信号の解析を行う。これにより、通信部24は、2値の論理データを取得する。通信部24は、解析したデータをバスを介してCPU25に送信する。
【0038】
CPU25は、ICカード20全体の制御を司る制御部として機能する。CPU25は、ROM26あるいは不揮発性メモリ28に記憶されている制御プログラム及び制御データに基づいて種々の処理を行う。例えば、端末装置10から受信したコマンドに応じて種々の処理を行い、処理結果としてのレスポンスなどのデータの生成を行なう。
【0039】
ROM26は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。ROM26は、製造段階で制御プログラム及び制御データなどを記憶した状態でICカード20内に組み込まれる。即ち、ROM26に記憶される制御プログラム及び制御データは、予めICカード20の仕様に応じて組み込まれる。
【0040】
RAM27は、ワーキングメモリとして機能する揮発性のメモリである。RAM27は、CPU25の処理中のデータなどを一時的に格納する。例えば、RAM27は、通信部24を介して端末装置10から受信したデータを一時的に格納する。またRAM27は、通信部24を介して端末装置10に送信するデータを一時的に格納する。またさらに、RAM27は、CPU25が実行するプログラムを一時的に格納する。
【0041】
不揮発性メモリ28は、例えば、EEPROMあるいはフラッシュROMなどのデータの書き込み及び書換えが可能な不揮発性のメモリを備える。不揮発性メモリ28は、ICカード20の運用用途に応じて制御プログラム及び種々のデータを格納する。
【0042】
たとえば、不揮発性メモリ28では、プログラムファイル及びデータファイルなどが創成される。創成された各ファイルには、制御プログラム及び種々のデータなどが書き込まれる。CPU25は、不揮発性メモリ28、または、ROM26に記憶されているプログラムを実行することにより、種々の処理を実現することができる。
【0043】
電源部31は、端末装置10の各部に電力を供給する。ICカード20が接触通信を行う構成を備える場合、電源部31は、通信部24のコンタクトパターンを介してカードリーダライタ15から供給される電力をICカード20の各部に供給する。
【0044】
また、ICカード20が非接触通信を行う構成を備える場合、カードリーダライタ15のアンテナから送信される電波、特にキャリア波に基づいて電力を生成する。さらに、電源部31は、動作クロックを生成する。電源部31は、発生させた電力及び動作クロックをICカード20の各部に電力を供給する。ICカード20の各部は、電力の供給を受けた場合、動作可能な状態になる。
【0045】
ロジック部32は、演算処理をハードウエアにより行う演算部である。例えば、ロジック部32は、端末装置10からのコマンドに基づいて、暗号化、復号、及び乱数の生成などの処理を行う。例えば、端末装置10から相互認証コマンドを受信する場合、ロジック部32は、乱数を生成し、生成した乱数をCPU25に伝送する。
【0046】
また、不揮発性メモリ28は、レコード構造でデータを記憶する記憶部28aを備えている。記憶部28aは、例えば、図3により示されるデータを記憶する。例えば、ICカード20がIC旅券として用いられる場合、図3により示されるように、記憶部28aは、レコード構造で出入国情報を記憶する。
【0047】
レコード構造には、固定長順編成構造、可変長順編成構造、または固定長循環順編成構造などの種類が存在する。レコード構造で記憶されるデータは、少なくとも、レコード番号(レコード識別子)と、データの本体(レコードデータ)とを有する。
【0048】
図3に示される例では、記憶部28aは、Tag Length Value(TLV)構造のデータをレコードデータとして記憶している。即ち、記憶部28aは、レコード番号、データ種別(Tag)、データの長さ(Length)、及びデータ値(Value)を記憶する。
【0049】
TLVデータオブジェクトのTagは、ICカード20のCPU25にTLVデータオブジェクトを識別させる為の情報である。Lengthは、TLVデータオブジェクトのValueのデータ長を示す情報である。Valueは、TLVデータオブジェクトのデータ本体である。
【0050】
出入国情報を記憶する場合、記憶部28aは、Valueとして、入出を示す情報(入出情報)、国コード(国記号)、場所コード、及び登録日付(日付情報)を記憶する。
【0051】
入出情報は、1byteのデータである。例えば、入出情報の論理値が「0」である場合、入出情報は、入国を示す。また、入出情報の論理値が「1」である場合、入出情報は、出国を示す。
【0052】
国記号は、3byteのデータである。国記号は、例えば、国際標準規格ISO/IEC3166−2により規定される国コードを示す。
【0053】
場所コードは、3byteのデータである。場所コードは、例えば、「成田」、「羽田」などの場所を示す情報が各国毎にコード化されたものである。なお、本実施形態では、場所コードについて具体的な値を示さない。
【0054】
日付情報は、8byteのデータである。日付情報は、当該出入国情報がICカード20の不揮発性メモリ28に書き込まれた時刻を示すタイムスタンプである。日付情報は、例えば「yyyymmdd」の形式で書き込まれる。即ち、日付情報は、4バイトの西暦を示す情報、2バイトの月を示す情報、2バイトの日を示す情報を含む。
【0055】
図3に示される例によると、レコード番号が「01」であるレコードには、入出情報として「1」=出国、国記号として「392」=日本、場所コードとして「xxx」、日付情報として「20091222」が記録されている。
【0056】
また、端末装置10は、入出情報の値と、「入国」及び「出国」とが対応付けられたテーブルを予め備える。また、端末装置10は、国記号の値と、国名を示す情報とが対応付けられたテーブルを予め備える。また、端末装置10は、場所コードの値と、場所を示す情報とが対応付けられたテーブルを予め備える。またさらに、端末装置10は、日付情報の値に基づいて、出入国情報が記録された時刻を特定する為の手法(またはテーブル)を予め備える。
【0057】
端末装置10は、ICカード20からレコードを読み出した場合、読み出した各情報の値に基づいて、予め記憶している各テーブルを参照することにより、入出情報、国名、場所名、及び日付情報を特定することができる。
【0058】
また、不揮発性メモリ28は、CVCA証明書を記憶する記憶部28bを備えている。Card Verifiable Certification Authorities(CVCA)証明書は、ICカード20がIC旅券として用いられる為に必要な情報を含むものである。CVCA証明書は、少なくとも、CVCA証明書の発行日付を示す情報を含む。
【0059】
またさらに、不揮発性メモリ28は、ICカード20の最新の処理日付を記憶する記憶部28cを備える。記憶部28cは、ICカード20がコマンドを端末装置10から受信した場合、受信したコマンドに含まれる日付情報を記憶する。これにより、記憶部28cは、ICカード20が処理された最新(直近)の日付を示す情報(最終処理日付)を記憶することができる。なお、受信するコマンドは、日付情報を含むものであれば如何なるものであってもよい。
【0060】
図4は、端末装置10からICカード20に送信されるコマンドの例を示す。図4に示されるコマンドは、「CLA」301、「INS」302、「P1」303、「P2」304、「Lc」305、「Data」306、及び「Le」307を有する。
【0061】
「CLA」301は、コマンドの層別を示すclass byteである。「INS」302は、コマンドの種別を示すinstruction byteである。「P1」303及び「P2」304は、「INS」302に応じたパラメータを示すparameter byteである。
【0062】
「Lc」305は、「Data」306のデータの長さ(バイト数)を示すlength field for cording number Ncである。「Data」306は、当該コマンドのデータ本体を示すcommand data fieldである。「Le」307は、当該コマンドに対するレスポンスのデータ長を示すlength field for cording number Neである。
【0063】
さらに、「Data」306は、図5に示されるように、複数のTLVデータオブジェクトを含む。
【0064】
図5は、「Data」306に含まれるデータを示す。図5に示されるように、「Data」306は、Tag401、Len402、比較対象403、Tag404、Len405、オフセット406、Tag407、Len408、日付情報409、Tag410、Len411、及び追記データ412を含む。なお、以下、ICカード20に既に記憶されているデータに付随する日付情報を第1の日付情報とし、端末装置10から送信されるコマンドに含まれる日付情報を第2の日付情報として説明する。
【0065】
即ち、「Data」306は、比較対象403を含むTLVデータオブジェクト、抽出オフセット406を含むTLVデータオブジェクト、第2の日付情報409を含むTLVデータオブジェクト、及び追記データ412を含むTLVデータオブジェクトを有する。なお、比較対象403、オフセット406、日付情報409、及び追記データ412がそれぞれ固定長である場合、「Data」306は、TLVデータオブジェクトのValueのみを含む構成であってもよい。
【0066】
比較対象403は、ICカード20により記憶されている第1の日付情報の種類を示す情報である。例えば、本実施形態のICカード処理システム1では、例えば、記憶部28aにより記憶されている複数のレコードデータのうちの最新のレコードデータに含まれる日付情報、記憶部28bにより記憶されているCVCA証明書の発行日付、または記憶部28cにより記憶されているICカード20の最終処理日付が、第1の日付情報として用いられる。
【0067】
オフセット406は、このコマンドの日付情報(第2の日付情報)409比較するデータの位置を示す情報である。オフセット406は、比較対象において、最新のレコードデータに含まれる日付情報が第1の日付情報として指定された場合にコマンドに付加される情報である。オフセット406は、レコードの先頭からのバイト数、または、レコードのValueの先頭からのバイト数などを示す。
【0068】
日付情報409は、ICカード20により記憶されている第1の日付情報と比較される第2の日付情報である。
【0069】
追記データ412は、当該コマンドによりICカード20に追記されるデータ本体である。
【0070】
なお、端末装置10及びICカード20は、図6に示されるテーブルに基づいて、比較対象403の生成及び解析を行う。
【0071】
例えば、比較対象として、CVCA証明書の発行日付を指定する場合、端末装置10は、比較対象403として「0」をセットする。ICカード20は、受信したコマンドの「Data」306の比較対象403が「0」である場合、比較対象としてCVCA証明書の発行日付が指定されていることを認識する。この場合、ICカード20は、記憶部28bにより記憶されているCVCA証明書の発行日付(第1の日付情報)を読み出し、受信したコマンドの日付情報(第2の日付情報)409と比較する。
【0072】
また、例えば、比較対象として、最新のレコードデータに含まれる日付情報を指定する場合、端末装置10は、比較対象403として「1」をセットする。ICカード20は、受信したコマンドの「Data」306の比較対象403が「1」である場合、比較対象として最新のレコードデータに含まれる日付情報が指定されていることを認識する。この場合、ICカード20は、記憶部28aにより記憶されているレコードデータのうちの最新のレコードデータの日付情報(第1の日付情報)を読み出し、受信したコマンドの日付情報(第2の日付情報)409と比較する。
【0073】
なお、この場合、ICカード20は、最新のレコードデータのオフセット406により示される位置から所定長の長さのデータを第1の日付情報として読み出す。
【0074】
また、例えば、比較対象として、最終処理日付を指定する場合、端末装置10は、比較対象403として「2」をセットする。ICカード20は、受信したコマンドの「Data」306の比較対象403が「2」である場合、比較対象として最終処理日付が指定されていることを認識する。この場合、ICカード20は、記憶部28cにより記憶されている最終処理日付(第1の日付情報)を読み出し、受信したコマンドの日付情報(第2の日付情報)409と比較する。
【0075】
ICカード20は、第2の日付情報が、第1の日付情報より新しい日付である場合、受信したコマンドが正当なコマンドであると判断する。この場合、ICカード20は、受信したコマンドに応じてコマンド処理を行い、正常終了を示すレスポンスを端末装置10に送信する。
【0076】
また、ICカード20は、第2の日付情報が、第1の日付情報より古い日付である場合、受信したコマンドが不当なコマンドであると判断する。この場合、ICカード20は、受信したコマンドに応じてコマンド処理を行わずに、エラー終了を示すレスポンスを端末装置10に送信する。
【0077】
図7は、ICカード20が受信するコマンドの例を示す。
例えば、図7に示されるコマンドは、「CLA」、「INS」、「P1」、「P2」、「Lc」、「Data」、及び「Le」を有する。また、この「Data」は、比較対象701、オフセット702、日付情報703、及び追記データ704を含む。図7に示される例では、比較対象701が「1」であり、オフセット702が「8」であり、日付情報703が「20100503」である。
【0078】
図7に示されるコマンドを受信する場合、ICカード20は、比較対象が最新レコードデータに含まれる日付であることを認識する。さらに、ICカード20は、記憶部28aにより記憶されている複数のレコードデータのうちの最新のレコードデータを参照し、参照したレコードデータのオフセット702により示される位置のデータを第1の日付情報として読み出す。
【0079】
さらに、ICカード20は、受信したコマンドの日付情報(第2の日付情報)703と、読み出した第1の日付情報とを比較する。ICカード20は、第2の日付情報が、第1の日付情報より新しい日付である場合、受信したコマンドが正当なコマンドであると判断し、コマンド処理を実行し、正常終了を示すレスポンスを端末装置10に送信する。また、ICカード20は、第2の日付情報が、第1の日付情報より古い日付である場合、受信したコマンドが不当なコマンドであると判断し、エラー終了を示すレスポンスを端末装置10に送信する。
【0080】
図8は、ICカード20の処理の例を示す。
まず、端末装置10は、比較対象データを決定し、図4及び図5に示されるようなコマンドを生成する。端末装置10は、生成したコマンドをICカード20に送信する。
【0081】
ICカード20は、端末装置10から送信されたコマンドを受信する(ステップS11)。次に、ICカード20は、受信したコマンドの解析を行う(ステップS12)。これにより、ICカード20は、コマンドにより指定される比較対象、オフセット、及び追記データを認識する。さらに、ICカード20は、第2の日付情報を特定する(ステップS13)。
【0082】
次に、ICカード20は、認識された比較対象を確認する(ステップS14)。比較対象がCVCA証明書の発行日付である場合、ICカード20は、記憶部28bにより記憶されているCVCA証明書の発行日付(第1の日付情報)を読み出す(ステップS15)。
【0083】
また、比較対象が最新のレコードデータに含まれる日付情報である場合、ICカード20は、記憶部28aにより記憶されているレコードデータのうちの最新のレコードデータの日付情報(第1の日付情報)を読み出す(ステップS16)。
【0084】
さらに、比較対象が最終処理日付である場合、ICカード20は、記憶部28cにより記憶されている最終処理日付(第1の日付情報)を読み出す(ステップS17)。
【0085】
ICカード20は、読み出した第1の日付情報と、受信したコマンドから認識した第2の日付情報とを比較する(ステップS18)。これにより、ICカード20は、第2の日付情報が第1の日付情報より新しいか否かを判断する(ステップS19)。
【0086】
第2の日付情報が第1の日付情報より新しい場合、ICカード20は、受信したコマンドに応じたコマンド処理を実行する(ステップS20)。例えば、受信したコマンドが、図7に示されるようにデータの追記を指示するコマンドである場合、ICカード20は、受信したコマンドの追記データを不揮発性メモリ28の記憶部28aなどに追記する。
【0087】
さらに、ICカード20は、受信したコマンドに含まれる日付情報に基づいて、最終処理日付を更新する(ステップS21)。即ち、ICカード20は、不揮発性メモリ28の記憶部28cにより記憶されている最終処理日付に、受信したコマンドに含まれている日付情報を上書きする。
【0088】
ICカード20は、実行したコマンド処理の処理結果に基づいて正常終了を示すレスポンスを生成し(ステップS22)、生成されたレスポンスを端末装置10に送信し(ステップS23)、処理を終了する。
【0089】
また、第2の日付情報が第1の日付情報より古い場合、ICカード20は、コマンド処理を行わずに、エラー終了を示すレスポンスを生成し(ステップS24)、生成されたレスポンスを端末装置10に送信し(ステップS23)、処理を終了する。
【0090】
この構成によると、ICカード20は、受信したコマンドに含まれる第2の日付情報と、自身が保持する第1の日付情報とに基づいて、受信したコマンドの正当性を判断することができる。ICカード20は、受信したコマンドの正当性が確認された場合にコマンド処理を実行する。これにより、端末装置10における処理を簡易化し、且つコマンドの正当性の確認を行うことができる。この為、コマンドの発行回数及び処理時間などを抑えることができる。
【0091】
この結果、より簡易な処理でコマンドの正当性を判断することができる携帯可能電子装置、及び携帯可能電子装置の制御方法を提供することができる。
【0092】
なお、上記の実施形態では、出入国情報は、入出情報、国記号、場所コード、及び日付情報を有する構成として説明したが、この構成に限定されない。出入国情報は、如何なる情報であってもよい。さらに、レコード構造で記憶されているレコードデータは、出入国情報に限られるものではなく、如何なるものであっても、上記の実施形態を実施することができる。
【0093】
また、上記の実施形態では、端末装置10からICカード20に送信されるコマンドは、比較対象、オフセット、日付情報、及び追記データを備える構成として説明したが、この構成に限定されない。比較対象及びオフセットがICカード20に予め設定されている場合、端末装置10は、少なくとも日付情報を含むコマンドをICカード20に送信すればよい。この場合、ICカード20は、受信したコマンドの日付情報(第2の日付情報)と、自身が記憶する第1の日付情報とに基づいて、コマンドの正当性を確認することができる。また、コマンドの種類も、追記コマンドに限定されるものではなく、少なくとも日付情報を含むコマンドであれば如何なるコマンドであってもよい。
【0094】
また、上記の実施形態では、ICカード20は、第2の日付情報が第1の日付情報より新しいか否かに基づいて、受信したコマンドの正当性を確認する構成として説明したが、この構成に限定されない。ICカード20は、第2の日付情報により示される日付が、第1の日付情報により示される日付から所定時間経過しているか否かに基づいて、受信したコマンドの正当性を確認する構成であってもよい。これにより、ICカード20は、書き込み後、一定期間次の書き込みを制限することができる。
【0095】
またさらに、ICカード20は、コマンドを受信する場合に、過去のレコードデータを参照することにより、所定期間内に当該ICカード20により実行された書き込み処理の回数をカウントする構成であってもよい。この場合、ICカード20は、受信したコマンドの日付情報から過去の所定期間の間に記憶されたレコードデータの件数を確認し、確認した件数が予め設定される所定値以上である場合に、受信したコマンドが不正であると判断する。これにより、ICカード20は、所定期間内に所定値回数以上の書き込みが行われることを制限することができる。
【0096】
なお、上述の各実施の形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【0097】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【0098】
1…ICカード処理システム、10…端末装置、11…CPU、12…ROM、13…RAM、14…不揮発性メモリ、15…カードリーダライタ、17…操作部、18…ディスプレイ、19…電源部、20…ICカード、21…本体、22…ICモジュール、23…ICチップ、24…通信部、25…CPU、26…ROM、27…RAM、28…不揮発性メモリ、28a乃至28c…記憶部、31…電源部。

【特許請求の範囲】
【請求項1】
第1の日付情報を記憶するメモリと、
外部機器から送信されたコマンドを受信する受信部と、
前記受信部により受信された前記コマンドを解析し、第2の日付情報を取得する解析部と、
前記解析部により取得された前記第2の日付情報と、前記メモリにより記憶されている前記第1の日付情報とを比較する比較部と、
前記比較部による比較の結果に基づいて、前記コマンドに基づくコマンド処理を実行するか否か判定する判定部と、
前記判定部の判定結果に基づいて、前記コマンド処理を実行し、前記コマンドに対するレスポンスを生成するコマンド処理部と、
前記コマンド処理部により生成された前記レスポンスを前記外部機器に送信する送信部と、
を具備する携帯可能電子装置。
【請求項2】
前記メモリは、複数の第1の日付情報を記憶し、
前記解析部は、受信したコマンドを解析し、前記複数の第1の日付情報のうちの何れかを示す比較対象情報を取得し、
前記比較部は、前記比較対象情報が示す第1の日付情報と、前記第2の日付情報とを比較する、
請求項1に記載の携帯可能電子装置。
【請求項3】
前記メモリは、
CVCA証明書を記憶する第1の記憶部と、
複数のレコードデータを記憶する第2の記憶部と、
当該携帯可能電子装置の最新の処理日付である最終処理日付を記憶する第3の記憶部と、
を具備し、
前記比較部は、前記比較対象情報に基づいて、前記第1の記憶部により記憶されている前記CVCA証明書の発行日付と、前記第2の記憶部により記憶されている複数のレコードデータのうちの最新のレコードデータに含まれる日付と、前記第3の記憶部により記憶されている最終処理日付とのうちのいずれかを第1の日付情報として前記第2の日付情報と比較する、
請求項2に記載の携帯可能電子装置。
【請求項4】
前記判定部は、前記第2の日付情報が前記第1の日付情報より新しい場合にコマンド処理を実行すると判定する、請求項2に記載の携帯可能電子装置。
【請求項5】
前記判定部は、前記第2の日付情報が前記第1の日付情報から所定期間経過している場合にコマンド処理を実行すると判定する、請求項2に記載の携帯可能電子装置。
【請求項6】
前記判定部は、前記第2の記憶部により記憶されている複数の前記レコードデータのうち、前記第2の日付情報から所定期間以内に記憶されたレコードデータの件数が予め設定される所定数未満である場合にコマンド処理を実行すると判定する、請求項3に記載の携帯可能電子装置。
【請求項7】
前記判定部は、前記第2の日付情報が前記第1の日付情報より古い場合にコマンド処理を実行しないと判定し、
前記コマンド処理部は、前記判定部によりコマンド処理を実行しないと判定された場合、エラーを示す情報を含むレスポンスを生成する、
請求項2に記載の携帯可能電子装置。
【請求項8】
前記各部を備えるICモジュールと、
前記ICモジュールが配設される本体と、
を具備する請求項1に記載の携帯可能電子装置。
【請求項9】
携帯可能電子装置に用いられる前記携帯可能電子装置の制御方法であって、
第1の日付情報を予め記憶し、
外部機器から送信されたコマンドを受信し、
受信した前記コマンドを解析し、第2の日付情報を取得し、
取得した前記第2の日付情報と、前記第1の日付情報とを比較し、
比較の結果に基づいて、前記コマンドに基づくコマンド処理を実行するか否か判定し、
判定結果に基づいて、前記コマンド処理を実行し、前記コマンドに対するレスポンスを生成し、
生成した前記レスポンスを前記外部機器に送信する、
携帯可能電子装置の制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−190421(P2012−190421A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−55804(P2011−55804)
【出願日】平成23年3月14日(2011.3.14)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】