説明

携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システム

【課題】より簡易な処理で論理チャネルのセキュリティ条件を設定する事ができる携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システムを提供する。
【解決手段】携帯可能電子装置は、セキュリティ条件を含む複数の論理チャネルを記憶する記憶部と、外部機器から送信されたセキュリティ条件継承コマンドを受信する受信部と、前記受信部により受信された前記セキュリティ条件継承コマンドを解析し前記記憶部により記憶されている複数の論理チャネルのうちの第1の論理チャネルと第2の論理チャネルとを特定する解析部と、暗証番号が一致した場合に前記解析部により特定された前記第1の論理チャネルの前記セキュリティ条件を前記第2の論理チャネルにコピーする継承処理部と、を具備する。

【発明の詳細な説明】
【技術分野】
【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カードは、種々の機能を実現することができる。ICカードは、処理装置と通信を行う場合、論理チャネルを確立する。ICカードは、論理チャネル毎にコマンドを実行することができる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−206895号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
また、ICカードは、論理チャネル毎にセキュリティ条件を設定することができる。ICカードは、設定されたセキュリティ条件に基づいて、受信したコマンドの実行の可否を判断することができる。
【0007】
通常、ICカードは、処理装置から受信するコマンドに応じて認証を行うことにより、論理チャネルのセキュリティ条件を設定する。セキュリティ条件は、例えば、書き込みコマンド、読み出しコマンド、追記コマンドなど、種々のコマンド毎に設定される。
【0008】
例えば、複数の論理チャネルが確立された場合、ICカードは、確立された各論理チャネルにおいて、上記のセキュリティ条件の設定を行う必要がある。この為、セキュリティ条件が設定されるコマンドの種類が多い場合、セキュリティ条件を設定する為の処理に要するコマンドレスポンスの回数が嵩むという課題がある。この結果、処理時間が長くなるという課題がある。
【0009】
そこで、より簡易な処理で論理チャネルのセキュリティ条件を設定する事ができる携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システムを提供することを目的とする。
【課題を解決するための手段】
【0010】
一実施形態に係る携帯可能電子装置は、セキュリティ条件を含む複数の論理チャネルを記憶する記憶部と、外部機器から送信されたセキュリティ条件継承コマンドを受信する受信部と、前記受信部により受信された前記セキュリティ条件継承コマンドを解析し、前記記憶部により記憶されている複数の論理チャネルのうちの第1の論理チャネルと、第2の論理チャネルとを特定する解析部と、前記解析部により特定された前記第1の論理チャネルの前記セキュリティ条件を前記第2のチャネルにコピーする継承処理部と、を具備する。
【図面の簡単な説明】
【0011】
【図1】図1は、一実施形態に係るICカード処理システムの構成例について説明するための図である。
【図2】図2は、一実施形態に係るICカードの構成例について説明するための図である。
【図3】図3は、一実施形態に係るICカードの構成例について説明するための図である。
【図4】図4は、一実施形態に係るICカードの構成例について説明するための図である。
【図5】図5は、一実施形態に係るICカードの構成例について説明するための図である。
【図6】図6は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図7】図7は、一実施形態に係るICカードの処理の例について説明するための図である。
【図8】図8は、一実施形態に係るICカードの処理の例について説明するための図である。
【図9】図9は、一実施形態に係るICカードの処理の例について説明するための図である。
【図10】図10は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図11】図11は、一実施形態に係るICカード処理システムの処理の例について説明するための図である。
【図12】図12は、一実施形態に係るICカードの処理の例について説明するための図である。
【発明を実施するための形態】
【0012】
以下、図面を参照しながら、一実施形態に係る携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システムについて詳細に説明する。
【0013】
本実施形態に係る携帯可能電子装置(ICカード)20及びICカード20を処理する処理装置(端末装置)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のカードリーダライタ15の接触端子と接触可能に形成されている。
【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は、データが格納されている種々のファイルを有する。不揮発性メモリ28は、例えば、ISO/IEC7816により規定されているファイル構造を有する。不揮発性メモリ28は、Master File(MF)281、Dedicated File(DF)282、及び複数のElementary File(EF)を有する。
【0047】
MFは、ファイル構造の根幹となるファイルである。DFは、MFの下位に創成される。DFは、アプリケーション及びアプリケーションに用いられるデータなどをグループ化して格納するファイルである。EFは、DFの下位に創成される。EFは、様々なデータを格納するためのファイルである。また、MFの直下にEFが置かれる場合もある。
【0048】
EFには、Working Elementary File(WEF)とInternal Elementary File(IEF)などの種類がある。WEFは、作業用EFであり、個人情報などを格納する。IEFは、内部EFであり、例えば、セキュリティのための暗号鍵(暗証番号)などのデータを記憶する。
【0049】
図3に示される例では、不揮発性メモリ28は、WEF283、WEF283に付随するFile Control Information(FCI)284、IEF(IEF#1)285、IEF(IEF#2)286、及びIEF(IEF#3)287を備える。
【0050】
WEF283は、上記したように、例えば個人情報などの情報を格納するファイルである。FCI284は、WEF283に対する例えば読み出し(READ)、または書き込み(WRITE)などのコマンド処理毎の認証の要否を示す情報である。例えば、FCI284は、上記のようなコマンド処理を実行するために、暗証番号を用いた認証が必要であるか否かを示す。
【0051】
図4により示されるように、FCI284は、例えばTag Length Value(TLV)形式でデータを格納する。本例では、FCI284は、READコマンド、及びWRITEコマンドに応じた処理を実行するために認証が必要であることを示しているとする。
【0052】
IEF285は、WEF283の情報を読み出す場合に行われる認証処理に用いられる暗証番号を記憶している。IEF286は、WEF283に対して情報を書き込む場合に行われる認証処理に用いられる暗証番号を記憶している。IEF287は、セキュリティ条件を継承する場合に行われる認証に用いられる暗証番号を記憶している。
【0053】
ICカード20のCPU25は、端末装置10との通信が確立された場合、論理チャネルを設定する。論理チャネルは、理論上の伝送路であり、ICカード20及び端末装置10がデータを区別するために用いられる。CPU25は、例えば、RAM27を用いて論理チャネルを確立する。
【0054】
図5は、RAM27に確立された論理チャネルの例を示す。
この例では、論理チャネル#1及び論理チャネル#2が確立されている。各論理チャネルは、論理チャネルを識別する為の識別子、暗証番号ごとの認証結果(セキュリティ条件)などを含む。なお、セキュリティ条件は、論理チャネルが確立された場合の初期状態において「0(NG)」に設定される。
【0055】
ICカード20は、端末装置10から受信する認証(VERIFY)コマンドに応じて認証処理を実行し、認証処理の結果に応じて、論理チャネル内のセキュリティ条件を更新する。即ち、ICカード20は、端末装置10から受信するVERIFYコマンドに応じて認証処理を実行し、認証処理の結果が正常(または一致)などである場合、論理チャネル内のセキュリティ条件を「1(OK)」を設定する。
【0056】
図6は、ICカード処理システム1の処理の例について示す。
端末装置10は、まずSELECTコマンドを生成する。このSELECTコマンドは、選択するファイルと、確立する論理チャネルとを指定するためのものである。本例では、端末装置10は、選択するDFを示す情報と、論理チャネル#1を示す情報とをSELECTコマンドに付加する。端末装置10は、生成したSELECTコマンドをICカード20に送信する(ステップS11)。
【0057】
ICカード20は、SELECTコマンドを受信した場合、受信したSELECTコマンドの解析を行い、コマンドにより指定されるファイル、及び論理チャネルを認識する。ICカード20は、認識した情報に基づいて、論理チャネルを確立し、ファイルを選択する(ステップS12)。本例では、ICカード20は、論理チャネル#1を確立し、Current DFを設定する。
【0058】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にSELECTコマンドに応じた処理を完了した場合、正常終了を示すレスポンスを生成する。ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS13)。
【0059】
さらに、データの読み出しをICカード20に実行させる場合、端末装置10は、VERIFYコマンドを生成する。このVERIFYコマンドは、処理対象のファイルを示す情報と、論理チャネルを示す情報と、暗証番号(暗号鍵)とを有する。本例では、端末装置10は、IEF285を示す情報と、論理チャネル#1を示す情報と、暗証番号とをVERIFYコマンドに付加する。端末装置10は、生成したVERIFYコマンドをICカード20に送信する(ステップS14)。
【0060】
ICカード20は、VERIFYコマンドを受信した場合、図7により示される暗証番号の認証処理を行う(ステップS15)。
図7に示されるように、ICカード20は、ステップS31でVERIFYコマンドを受信した場合、受信したVERIFYコマンドの解析を行う(ステップS32)。これにより、ICカード20は、コマンドにより指定される論理チャネル、ファイル、及び暗証番号を認識する。
【0061】
ICカード20は、認識した情報に基づいて、論理チャネルを選択し、コマンドにより指定されたファイルを読み出す。本例によると、ICカード20は、VERIFYコマンドにより指定されたIEF285に記憶されている情報を読み出す(ステップS33)。即ち、ICカード20は、IEF285から暗証番号を読み出す。
【0062】
ICカード20は、IEF285から読み出した暗証番号と、VERIFYコマンドの暗証番号とが一致するか否か比較する(ステップS34)。IEF285から読み出した暗証番号と、VERIFYコマンドの暗証番号とが一致する場合、ICカード20は、論理チャネル内のセキュリティ条件に「1(OK)」をセットする(ステップS35)。即ち、ICカード20は、IEF285から読み出した暗証番号と、VERIFYコマンドの暗証番号とが一致する場合、コマンドで指定された論理チャネルのIEF#1に認証がOKであることを示す情報を付加する。
【0063】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にVERIFYコマンドに応じた処理を完了した場合、正常終了を示すレスポンスを生成する(ステップS36)。
【0064】
また、IEF285から読み出した暗証番号と、VERIFYコマンドの暗証番号とが一致しない場合、ICカード20は、エラーを示すレスポンスを生成する(ステップS37)。図6に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS16)。
【0065】
さらに、端末装置10は、READコマンドを生成する。このREADコマンドは、処理対象のファイルを示す情報と、論理チャネルを示す情報とを有する。本例では、端末装置10は、WEF283を示す情報と、論理チャネル#1を示す情報とをREADコマンドに付加する。端末装置10は、生成したREADコマンドをICカード20に送信する(ステップS17)。
【0066】
ICカード20は、READコマンドを受信した場合、図8により示されるようにセキュリティ条件の確認を行う(ステップS18)。
図8に示されるように、ICカード20は、ステップS41でREADコマンドを受信した場合、受信したREADコマンドの解析を行う(ステップS42)。これにより、ICカード20は、コマンドにより指定される論理チャネル、及びファイルを認識する。
【0067】
ICカード20は、認識した情報に基づいて、コマンドにより指定されたファイルに不可されているFCI284を読み出す(ステップS43)。ICカード20は、認識したコマンドの種類と、FCI284とに基づいて、認証が必要か否か判断する(ステップS44)。
【0068】
認証が必要である場合、ICカード20は、認識したコマンドの種類に応じたセキュリティ条件をRAM27から読み出す(ステップS45)。本例によると、ICカード20は、READコマンドに対応するセキュリティ条件をRAM27から読み出す。ICカード20は、読み出したセキュリティ条件が、OKを示すものであるか否かを判断する(ステップS46)。
【0069】
ステップS46において、読み出したセキュリティ条件がOKを示すものである場合、または、ステップS44において、認証が必要ないと判断した場合、ICカード20は、受信したREADコマンドに応じた処理を実行する(ステップS47)。即ち、ICカード20は、コマンドにより指定されたWEF283のデータを読み出す。
【0070】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にREADコマンドに応じた処理を完了した場合、読み出したデータをデータ本体として正常終了を示すレスポンスを生成する(ステップS48)。
【0071】
また、ステップS46において、読み出したセキュリティ条件がOKを示すものではない場合、ICカード20は、エラーを示すレスポンスを生成する(ステップS49)。図6に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS19)。
【0072】
さらに、データの書き込みをICカード20に実行させる場合、端末装置10は、VERIFYコマンドを生成する。このVERIFYコマンドは、処理対象のファイルを示す情報と、論理チャネルを示す情報と、暗証番号(暗号鍵)とを有する。本例では、端末装置10は、IEF286を示す情報と、論理チャネル#1を示す情報と、暗証番号とをVERIFYコマンドに付加する。端末装置10は、生成したVERIFYコマンドをICカード20に送信する(ステップS20)。
【0073】
ICカード20は、VERIFYコマンドを受信した場合、図7により示される暗証番号の認証処理を行う(ステップS21)。ICカード20は、認証処理の結果に応じたレスポンスを生成する。図6に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS22)。
【0074】
さらに、端末装置10は、WRITEコマンドを生成する。このWRITEコマンドは、処理対象のファイルを示す情報と、論理チャネルを示す情報とを有する。本例では、端末装置10は、WEF283を示す情報と、論理チャネル#1を示す情報とをWRITEコマンドに付加する。端末装置10は、生成したWRITEコマンドをICカード20に送信する(ステップS23)。
【0075】
ICカード20は、WRITEコマンドを受信した場合、図9により示されるようにセキュリティ条件の確認を行う(ステップS24)。
図9に示されるように、ICカード20は、ステップS51でWRITEコマンドを受信した場合、受信したWRITEコマンドの解析を行う(ステップS52)。これにより、ICカード20は、コマンドにより指定される論理チャネル、及びファイルを認識する。
【0076】
ICカード20は、認識した情報に基づいて、コマンドにより指定されたファイルに不可されているFCI284を読み出す(ステップS53)。ICカード20は、認識したコマンドの種類と、FCI284とに基づいて、認証が必要か否か判断する(ステップS54)。
【0077】
認証が必要である場合、ICカード20は、認識したコマンドの種類に応じたセキュリティ条件をRAM27から読み出す(ステップS55)。本例によると、ICカード20は、WRITEコマンドに対応するセキュリティ条件をRAM27から読み出す。ICカード20は、読み出したセキュリティ条件が、OKを示すものであるか否かを判断する(ステップS56)。
【0078】
ステップS56において、読み出したセキュリティ条件がOKを示すものである場合、または、ステップS54において、認証が必要ないと判断した場合、ICカード20は、受信したWRITEコマンドに応じた処理を実行する(ステップS57)。即ち、ICカード20は、コマンドにより指定されたWEF283に対してデータを書き込む。
【0079】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にWRITEコマンドに応じた処理を完了した場合、データを正常に書き込んだことを示すレスポンスを生成する(ステップS58)。
【0080】
また、ステップS56において、読み出したセキュリティ条件がOKを示すものではない場合、ICカード20は、エラーを示すレスポンスを生成する(ステップS59)。図6に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS25)。
【0081】
上記したように、ICカード20は、RAM27に確立された論理チャネル内のセキュリティ条件に応じて、コマンドを実行するか否かを判断する。また、このようなセキュリティ条件を他の論理チャネルに引き継ぐ(継承する)例について説明する。
【0082】
図10は、セキュリティ条件継承コマンドの例を示す。
セキュリティ条件継承コマンドは、端末装置10からICカード20に送信されるコマンドである。セキュリティ条件継承コマンドは、「CLA」、「INS」、「P1」、「P2」、「Lc」、及び「Data」を有する。
【0083】
「CLA」は、コマンドの層別を示すclass byteである。「INS」は、コマンドの種別を示すinstruction byteである。「P1」及び「P2」は、「INS」に応じたパラメータを示すparameter byteである。
【0084】
「Lc」は、「Data」のデータの長さ(バイト数)を示すlength field for cording number Ncである。「Data」は、当該コマンドのデータ本体を示すcommand data fieldである。
【0085】
本例では、「CLA」は、新たに確立する論理チャネルを示す情報(新論理チャネル情報)を含む。また、例えば、「P2」は、セキュリティ条件を受け継ぐ論理チャネルを示す情報(旧論理チャネル情報)を含む。また、「DATA」は、暗証番号を有する。また、例えば、「P1」は、処理対象のファイルを示す情報を含む。本例では、セキュリティ条件継承コマンドは、「P1」としてIEF287を示す情報を含む。
【0086】
図11は、ICカード処理システム1の処理の例について示す。ここでは、論理チャネル#2を新たに確立する処理について示す。
端末装置10は、まずSELECTコマンドを生成する。このSELECTコマンドは、選択するファイルと、確立する論理チャネルとを指定するためのものである。本例では、端末装置10は、選択するDFを示す情報と、論理チャネル#2を示す情報とをSELECTコマンドに付加する。端末装置10は、生成したSELECTコマンドをICカード20に送信する(ステップS61)。
【0087】
ICカード20は、SELECTコマンドを受信した場合、受信したSELECTコマンドの解析を行い、コマンドにより指定されるファイル、及び論理チャネルを認識する。ICカード20は、認識した情報に基づいて、論理チャネルを確立し、ファイルを選択する(ステップS62)。本例では、ICカード20は、論理チャネル#2を確立し、Current DFを設定する。
【0088】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にSELECTコマンドに応じた処理を完了した場合、正常終了を示すレスポンスを生成する。ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS63)。
【0089】
さらに、論理チャネルのセキュリティ条件を他の論理チャネルから継承する場合、端末装置10は、セキュリティ条件継承コマンドを生成する。セキュリティ条件継承コマンドは、例えば図10に示されるコマンドであり、新論理チャネル情報と、旧論理チャネル情報と暗証番号(暗号鍵)とを有する。新論理チャネル情報は、例えば、上記のSELECTコマンドにより確立された論理チャネルを示す情報である。端末装置10は、生成したセキュリティ条件継承コマンドをICカード20に送信する(ステップS64)。
【0090】
ICカード20は、セキュリティ条件継承コマンドを受信した場合、図12により示される暗証番号の認証処理を行う(ステップS65)。
図12に示されるように、ICカード20は、ステップS71でセキュリティ条件継承コマンドを受信した場合、受信したセキュリティ条件継承コマンドの解析を行う(ステップS72)。これにより、ICカード20は、セキュリティ条件を継承する論理チャネル、ファイルを示す情報、及び暗証番号を認識する。
【0091】
ICカード20は、認識した情報に基づいて、論理チャネルを選択し、コマンドにより指定されたファイルを読み出す。本例によると、ICカード20は、セキュリティ条件継承コマンドにより指定されたIEF287に記憶されている情報を読み出す(ステップS73)。即ち、ICカード20は、IEF287から暗証番号を読み出す。
【0092】
ICカード20は、IEF287から読み出した暗証番号と、セキュリティ条件継承コマンドの暗証番号とが一致するか否か比較する(ステップS74)。IEF287から読み出した暗証番号と、セキュリティ条件継承コマンドの暗証番号とが一致する場合、ICカード20は、旧論理チャネル情報が示す論理チャネルのセキュリティ条件を、新論理チャネル情報が示す論理チャネルにコピーする(ステップS75)。
【0093】
さらに、ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にセキュリティ条件継承コマンドに応じた処理を完了した場合、正常終了を示すレスポンスを生成する(ステップS76)。
【0094】
また、IEF287から読み出した暗証番号と、セキュリティ条件継承コマンドの暗証番号とが一致しない場合、ICカード20は、エラーを示すレスポンスを生成する(ステップS77)。図11に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS66)。
【0095】
さらに、端末装置10は、READコマンドを生成する。このREADコマンドは、処理対象のファイルを示す情報と、論理チャネルを示す情報とを有する。本例では、端末装置10は、WEF283を示す情報と、論理チャネル#2を示す情報とをREADコマンドに付加する。端末装置10は、生成したREADコマンドをICカード20に送信する(ステップS67)。
【0096】
ICカード20は、READコマンドを受信した場合、図8により示されるようにセキュリティ条件の確認と同様の処理を行う(ステップS68)。この場合、論理チャネル#2には、論理チャネル#1と同様のセキュリティ条件が設定されている。この為、ICカード20は、論理チャネル#2に設定されているセキュリティ条件に応じてREADコマンドの実行の可否を判断することができる。
【0097】
ICカード20は、コマンド処理の結果に応じたレスポンスを生成する。例えば、ICカード20は、正常にREADコマンドに応じた処理を完了した場合、読み出したデータをデータ本体として正常終了を示すレスポンスを生成する。
【0098】
また、正常にREADコマンドに応じた処理を実行することができなかった場合、ICカード20は、エラーを示すレスポンスを生成する。図11に示すように、ICカード20は、生成したレスポンスを端末装置10に送信する(ステップS69)。
【0099】
この構成によると、ICカード20は、セキュリティ条件継承コマンドを受信した場合、受信したコマンドに含まれる暗証番号と自身が記憶する暗証番号とで認証を行う。認証結果が一致した場合、ICカード20は、論理チャネルのセキュリティ条件を、他の論理チャネルにコピーする。これにより、ICカード20は、セキュリティ条件を継承することができる。
【0100】
これにより、論理チャネル毎に複数のセキュリティ条件を設定する必要がなくなる。この為、コマンドの発行回数及び処理時間などを抑えることができる。この結果、より簡易な処理で論理チャネルのセキュリティ条件を設定する事ができる携帯可能電子装置、携帯可能電子装置の処理装置、及び携帯可能電子装置の処理システムを提供することができる。
【0101】
なお、上記の実施形態では、IEF285は、READコマンドの認証に用いられる暗証番号を記憶し、IEF286は、WRITEコマンドの認証に用いられる暗証番号を記憶し、IEF287は、セキュリティ条件継承コマンドの認証に用いられる暗証番号を記憶するとして説明したが、この構成に限定されない。ICカード20は、1つの暗証番号を複数の認証処理に用いる構成であってもよい。
【0102】
また、上記の実施形態では、ICカード20は、セキュリティ条件継承コマンドに基づく認証が一致であった場合に、論理チャネルのセキュリティ条件を他の論理チャネルにコピーすると説明したが、この構成に限定されない。例えば、論理チャネルの識別子を書き換える構成であってもよい。
【0103】
また、上記した実施形態では、論理チャネルは、セキュリティ条件としてREADコマンド及びWRITEコマンドの実行の可否を示す情報を保持する構成として説明したが、この構成に限定されない。セキュリティ条件は、如何なるコマンド、ファイル毎に設定されてもよい。
【0104】
また、上記の実施形態では、ICカード20は、セキュリティ条件継承コマンドに基づく認証が一致であった場合に、論理チャネルのセキュリティ条件を他の論理チャネルにコピーすると説明したが、この構成に限定されない。例えば、ある論理チャネルのセキュリティ条件の一部を他の論理チャネルにコピーする構成であってもよい。さらに、セキュリティ条件の継承を行う際の認証を分けても良い。
【0105】
即ち、ICカード20は、ある論理チャネルのセキュリティ条件を一括して継承する場合に認証を行う構成であってもよいし、ある論理チャネルのセキュリティ条件の一部を継承する場合に認証を行う構成であってもよい。ICカード20は、認証結果が一致である場合に、ある論理チャネルのセキュリティ条件の一部、あるいは全てを他の論理チャネルに継承することが出来る。
【0106】
なお、上述の各実施の形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【0107】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【0108】
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…不揮発性メモリ、31…電源部。

【特許請求の範囲】
【請求項1】
セキュリティ条件を含む複数の論理チャネルを記憶する記憶部と、
外部機器から送信されたセキュリティ条件継承コマンドを受信する受信部と、
前記受信部により受信された前記セキュリティ条件継承コマンドを解析し、前記記憶部により記憶されている複数の論理チャネルのうちの第1の論理チャネルと、第2の論理チャネルとを特定する解析部と、
前記解析部により特定された前記第1の論理チャネルの前記セキュリティ条件を前記第2のチャネルにコピーする継承処理部と、
を具備する携帯可能電子装置。
【請求項2】
前記記憶部は、第1の暗証番号を記憶し、
前記解析部は、前記セキュリティ条件継承コマンドから第2の暗証番号を特定し、
前記継承処理部は、前記第1の暗証番号と前記第2の暗証番号とが一致した場合、前記第1の論理チャネルの前記セキュリティ条件を前記第2のチャネルにコピーする、
請求項1に記載の携帯可能電子装置。
【請求項3】
前記セキュリティ条件は、前記外部機器から送信されるコマンド毎の実行の可否を示す情報である、
請求項2に記載の携帯可能電子装置。
【請求項4】
前記継承処理部は、前記第1の論理チャネルの前記セキュリティ条件を部分的に前記第2のチャネルにコピーする、請求項2に記載の携帯可能電子装置。
【請求項5】
前記記憶部は、第3の暗証番号をさらに記憶し、
前記解析部は、前記セキュリティ条件継承コマンドから第4の暗証番号を特定し、
前記継承処理部は、前記第3の暗証番号と前記第4の暗証番号とが一致した場合、前記第1の論理チャネルの前記セキュリティ条件を部分的に前記第2のチャネルにコピーする、
請求項4に記載の携帯可能電子装置。
【請求項6】
前記各部を備えるICモジュールと、
前記ICモジュールが配設される本体と、
を具備する請求項1に記載の携帯可能電子装置。
【請求項7】
セキュリティ条件を含む第1の論理チャネルを示す情報と、第2の論理チャネルを示す情報とを含むセキュリティ条件継承コマンドを生成するコマンド生成部と、
前記コマンド生成部により生成された前記セキュリティ条件継承コマンドを携帯可能電子装置に送信する送信部と、
を具備する携帯可能電子装置の処理装置。
【請求項8】
携帯可能電子装置と、前記携帯可能電子装置を処理する処理装置とを有する携帯可能電子装置の処理システムであって、
前記処理装置は、
セキュリティ条件を含む第1の論理チャネルを示す情報と、第2の論理チャネルを示す情報とを含むセキュリティ条件継承コマンドを生成するコマンド生成部と、
前記コマンド生成部により生成された前記セキュリティ条件継承コマンドを携帯可能電子装置に送信する送信部と、
を具備し、
前記携帯可能電子装置は、
セキュリティ条件を含む複数の論理チャネルを記憶する記憶部と、
前記処理装置から送信された前記セキュリティ条件継承コマンドを受信する受信部と、
前記受信部により受信された前記セキュリティ条件継承コマンドを解析し、前記記憶部により記憶されている複数の論理チャネルのうちの前記第1の論理チャネルと、前記第2の論理チャネルとを特定する解析部と、
前記解析部により特定された前記第1の論理チャネルの前記セキュリティ条件を前記第2のチャネルにコピーする継承処理部と、
を具備する携帯可能電子装置の処理システム。

【図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


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