(57)【要約】【課題】より効率的にメモリを活用することが出来る携帯可能電子装置、及び、携帯可能電子装置の制御方法を提供する。【解決手段】携帯可能電子装置２は、外部機器１０３とデータの送受信を行なう送受信手段２０５を具備し、公開鍵を含む公開鍵証明書をＷＥＦに記憶し、前記公開鍵証明書を記憶したＷＥＦにアクセスするためのリンク情報をＩＥＦに記憶し、前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスし、前記アクセスしたＩＥＦに前記リンク情報が記憶されている場合、前記リンク情報により指定されている前記ＷＥＦにアクセスし、公開鍵を取得する。【選択図】      図２
2010072929.tif 000002
【特許請求の範囲】
【請求項１】
外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置であって、
前記外部機器とデータの送受信を行なう送受信手段と、
公開鍵を含む公開鍵証明書をＷＥＦに記憶する第１の記憶手段と、
前記第１の記憶手段により公開鍵証明書を記憶したＷＥＦにアクセスするためのリンク情報をＩＥＦに記憶する第２の記憶手段と、
前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスする第１のアクセス手段と、
前記第１のアクセス手段によりアクセスしたＩＥＦに前記リンク情報が記憶されている場合、前記リンク情報により指定されている前記ＷＥＦにアクセスし、公開鍵を取得する第２のアクセス手段と、
を具備することを特徴とする携帯可能電子装置。
【請求項２】
外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置であって、
前記外部機器とデータの送受信を行なう送受信手段と、
暗号鍵により暗号化された公開鍵を含む公開鍵証明書をＷＥＦに記憶する第１の記憶手段と、
前記暗号鍵を第１のＩＥＦに記憶する第２の記憶手段と、
前記第１の記憶手段により公開鍵証明書を記憶したＷＥＦにアクセスするための第１のリンク情報と、前記第１のＩＥＦにアクセスするための第２のリンク情報を第２のＩＥＦに記憶する第３の記憶手段と、
前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスする第１のアクセス手段と、
前記第１のアクセス手段によりアクセスしたＩＥＦに前記第２のリンク情報が記憶されている場合、前記第２のリンク情報により指定されている前記第１のＩＥＦにアクセスして暗号鍵を取得する第２のアクセス手段と、
前記第１のアクセス手段によりアクセスしたＩＥＦに前記第１のリンク情報が記憶されている場合、前記第１のリンク情報により指定されている前記ＷＥＦにアクセスし、暗号化された前記公開鍵証明書を前記第２のアクセス手段により取得した前記暗号鍵により復号し、公開鍵を取得する第３のアクセス手段と、
を具備することを特徴とする携帯可能電子装置。
【請求項３】
外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置であって、
前記外部機器とデータの送受信を行なう送受信手段と、
暗号鍵により暗号化された公開鍵を含む公開鍵証明書を第１のＷＥＦに記憶する第１の記憶手段と、
前記暗号鍵を第２のＷＥＦに記憶する第２の記憶手段と、
前記第２のＷＥＦにアクセスするための第１のリンク情報を第１のＩＥＦに記憶する第３の記憶手段と、
前記第１の記憶手段により公開鍵証明書を記憶した前記第１のＷＥＦにアクセスするための第２のリンク情報と、前記第１のＩＥＦにアクセスするための第３のリンク情報を第２のＩＥＦに記憶する第４の記憶手段と、
前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスする第１のアクセス手段と、
前記第１のアクセス手段によりアクセスしたＩＥＦに前記第３のリンク情報が記憶されている場合、前記第３のリンク情報により指定されている前記第１のＩＥＦにアクセスする第２のアクセス手段と、
前記第１のＩＥＦに前記第１のリンク情報が記憶されている場合、前記第１のリンク情報により指定されている前記第２のＷＥＦにアクセスして暗号鍵を取得する第３のアクセス手段と、
前記第１のアクセス手段によりアクセスしたＩＥＦに前記第２のリンク情報が記憶されている場合、前記第２のリンク情報により指定されている前記第１のＷＥＦにアクセスし、暗号化された前記公開鍵証明書を前記第３のアクセス手段により取得した前記暗号鍵により復号し、公開鍵を取得する第４のアクセス手段と、
を具備することを特徴とする携帯可能電子装置。
【請求項４】
外部機器とデータの送受信を行なう送受信手段を具備し、前記外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置に用いられる携帯可能電子装置の制御方法であって、
公開鍵を含む公開鍵証明書をＷＥＦに記憶し、
前記公開鍵証明書を記憶したＷＥＦにアクセスするためのリンク情報をＩＥＦに記憶し、
前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスし、
前記アクセスしたＩＥＦに前記リンク情報が記憶されている場合、前記リンク情報により指定されている前記ＷＥＦにアクセスし、公開鍵を取得する、
ことを特徴とする携帯可能電子装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、外部装置からのコマンドに応じて処理を行う携帯可能電子装置、及び、携帯可能電子装置の制御方法に関する。
【背景技術】
【０００２】
一般的に、携帯可能電子装置として用いられるＩＣカードは、プラスチックなどで形成されたカード状の本体と本体に埋め込まれたＩＣモジュールとを備えている。ＩＣモジュールは、ＩＣチップを有している。ＩＣチップは、電源が無い状態でもデータを保持することができるＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）またはフラッシュＲＯＭなどの不揮発性メモリと、種々の演算を実行するＣＰＵとを有している。
【０００３】
ＩＣカードは、例えば、ＩＳＯ／ＩＥＣ７８１６−４に準拠したＩＣカードである。ＩＣカードは、一次発行と二次発行により発行される。まず、一次発行により、アプリケーション、及びデータなどを書き込むためのファイルがＩＣカードの不揮発性メモリに創生される。さらに、二次発行により、アプリケーション、データ、及び公開鍵などが一次発行において定義されたファイルに格納される。
【０００４】
一次発行によりファイルが創生されたＩＣカードは、ファイル構造の根幹となるＭａｓｔｅｒ  Ｆｉｌｅ（ＭＦ）を有している。ＭＦの下位には、アプリケーションなどをグループ化するＤｅｄｉｃａｔｅｄ  Ｆｉｌｅ（ＤＦ）が置かれている。ＤＦの下位には、様々なデータを格納するためのＥｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＥＦ）が置かれている。また、ＭＦの直下にも、ＥＦが置かれている。
【０００５】
ＥＦには、Ｗｏｒｋｉｎｇ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＷＥＦ）とＩｎｔｅｒｎａｌ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＩＥＦ）とがある。ＷＥＦは、外部の装置により読み出されるデータを格納するＥＦである。ＷＥＦは、例えば、個人情報、公開鍵証明書などを格納する。ＩＥＦは、内部で行う処理に用いるデータを格納するＥＦである。ＩＥＦは、例えば、セキュリティのためのデータ、公開鍵（暗号鍵）などを格納する。ここで、ＩＥＦに格納される公開鍵は、ＷＥＦに格納された公開鍵証明書内の公開鍵である。
【０００６】
ＩＣカードは、二次発行において、外部からのコマンドを処理するためのアプリケーション、及びアプリケーションで用いられるデータなどを一次発行により創生したファイルに書き込む。これにより、ＩＣカードが外部装置からのコマンドに応じて処理を行うことが可能な状態になる。この手順は、一般にＩＣカードの発行処理と呼ばれている。
【０００７】
例えば、外部機器により発行処理により発行されたＩＣカードの認証を行なう場合、外部機器は、ＷＥＦに格納されている公開鍵証明書を読み出す。外部機器は、読み出した公開鍵証明書に格納されている公開鍵を用いて署名検証を行い、ＩＣカードの認証を行なう。
【０００８】
また、例えば、ＩＣカードにより外部機器の認証を行なう場合、ＩＣカードは、外部機器から暗号化データを受信する。ＩＣカードは、ＩＥＦに格納されている公開鍵を用いて受信した暗号化データを復号し、元のデータを取得する。
【０００９】
上記したように、外部機器側とＩＣカード側との両方から相互に認証を行なうＩＣカードが提供されている（たとえば、特許文献１参照）。
【特許文献１】特開２００７−０４９３９１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、暗号鍵のデータ量は、ＩＣカードの不揮発性メモリの容量に対して比率が大きい場合が多い。例えば、一般的に暗号鍵のデータ量が１０２４ｂであるのに対し、一般的なＩＣカードの不揮発性メモリの容量は８ｋｂ程度である。
【００１１】
従来のＩＣカードによると、ＩＣカードと外部装置とで相互に認証を行なう場合、公開鍵、または公開鍵証明書をＷＥＦとＩＥＦとの両方に記憶する必要がある。この為、ＩＣカードの不揮発性メモリの容量を圧迫するという問題がある。
【００１２】
本発明の一形態は、上記した問題点を解決するものであり、より効率的にメモリを活用することが出来る携帯可能電子装置、及び、携帯可能電子装置の制御方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明の一実施形態としての携帯可能電子装置は、外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置であって、前記外部機器とデータの送受信を行なう送受信手段と、公開鍵を含む公開鍵証明書をＷＥＦに記憶する第１の記憶手段と、前記第１の記憶手段により公開鍵証明書を記憶したＷＥＦにアクセスするためのリンク情報をＩＥＦに記憶する第２の記憶手段と、前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスする第１のアクセス手段と、前記第１のアクセス手段によりアクセスしたＩＥＦに前記リンク情報が記憶されている場合、前記リンク情報により指定されている前記ＷＥＦにアクセスし、公開鍵を取得する第２のアクセス手段と、を具備する。
【００１４】
また、本発明の一実施形態としての携帯可能電子装置の制御方法は、外部機器とデータの送受信を行なう送受信手段を具備し、前記外部機器から受信したコマンドに応じた処理を行なう携帯可能電子装置に用いられる携帯可能電子装置の制御方法であって、公開鍵を含む公開鍵証明書をＷＥＦに記憶し、前記公開鍵証明書を記憶したＷＥＦにアクセスするためのリンク情報をＩＥＦに記憶し、前記送受信手段により前記外部機器からコマンドを受信した場合、コマンドで指定されているＩＥＦにアクセスし、前記アクセスしたＩＥＦに前記リンク情報が記憶されている場合、前記リンク情報により指定されている前記ＷＥＦにアクセスし、公開鍵を取得する。
【発明の効果】
【００１５】
この発明の一形態によれば、より効率的にメモリを活用することが出来る携帯可能電子装置、及び、携帯可能電子装置の制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照しながら、本発明の実施形態に係る携帯可能電子装置、及び、携帯可能電子装置の制御方法について詳細に説明する。
【００１７】
図１は、本発明の実施形態に係るＩＣカードが用いられるシステムの構成例を概略的に示すブロック図である。  
ＩＣカードシステム１は、カードリーダライタ１０２、端末装置１０３、キーボード１０４、表示部１０５、及び、プリンタ１０６などを備えている。
【００１８】
カードリーダライタ１０２は、ＩＣカード２との通信を行うためのインターフェース装置である。カードリーダライタ１０２は、携帯可能電子装置としてのＩＣカード２を処理する。カードリーダライタ１０２は、ＩＣカード２に対して、無線通信あるいは接触通信により種々のデータの送受信を行なう。また、カードリーダライタ１０２は、ＩＣカード２に対する電源供給、クロック供給、及びリセット制御を行う。このような機能によってカードリーダライタ１０２は、端末装置１０３による制御に基づいて、ＩＣカード２の活性化（起動）、種々のコマンドの送信、及び送信したコマンドに対する応答の受信などを行なう。
【００１９】
端末装置１０３は、ＣＰＵ、ＲＯＭ、ＲＡＭ、及び不揮発性メモリなどの種々のメモリを備えている。また、端末装置１０３は、各種のインターフェースなどを備えている。端末装置１０３のＲＯＭ、または不揮発性メモリには、カードリーダライタ１０２によりＩＣカード２とデータの送受信を行なう為のプログラム、ＩＣカード２から受信したデータに基づいて種々の処理を行うプログラムなどが記憶されている。端末装置１０３のＣＰＵは、これらのプログラムを実行することにより、種々の処理手段として機能する。
【００２０】
例えば、、端末装置１０３は、カードリーダライタ１０２を介して、ＩＣカード２に書き込みコマンド及び書き込みデータを送信する。ＩＣカード２は、書き込みコマンド及び書き込みデータを受信した場合、内蔵しているＩＣチップの不揮発性メモリに書き込みデータを書き込む。
【００２１】
また、例えば、端末装置１０３は、ＩＣカード２に読み取りコマンドを送信する。ＩＣカード２は、読み取りコマンドを受信した場合、読み取りコマンドで指定されているアドレスに格納されているデータをカードリーダライタ１０２に送信する。これにより、端末装置１０３は、ＩＣカード２のＩＣチップの不揮発性メモリからデータを読み出すことができる。
【００２２】
キーボード１０４は、端末装置１０３の操作者による操作を受け付ける操作手段である。キーボード１０４により入力された操作信号は、端末装置１０３に入力される。表示部１０５は、端末装置１０３の制御により種々の情報を表示する。プリンタ１０６は、端末装置１０３による制御に基づき、情報を印字して出力する。
【００２３】
図２は、ＩＣカード２の構成例を概略的に示すブロック図である。  
ＩＣカード２は、カードリーダライタ１０２などの上位機器（外部機器）から電力などの供給を受けた際、活性化される（動作可能な状態になる）ようになっている。例えば、ＩＣカード２が接触通信によりカードリーダライタ１０２と接続される場合、つまり、ＩＣカード２が接触端子を表面に備えている場合、ＩＣカード２は、通信インターフェースとしての接触端子を介してカードリーダライタ１０２からの動作電源及び動作クロックの供給を受けて活性化される。
【００２４】
また、ＩＣカード２は、図示しない電源回路を有し、ＩＣカード２が非接触式の通信方式によりカードリーダライタ１０２と接続される場合、つまり、ＩＣカード２がアンテナによりカードリーダライタ１０２と無線通信を行なう場合、ＩＣカード２は、アンテナなどの通信インターフェースを介してカードリーダライタ１０２からの電波を受信し、その電波から電源回路により動作電源及び動作クロックを生成して活性化するようになっている。
【００２５】
ＩＣカード２は、ＩＣカード２の本体を構成する矩形カ−ド状の筐体内にＩＣモジュール２０を有している。ＩＣモジュール２０は、１つまたは複数のＩＣチップ２００と、このＩＣチップ２００に接続された通信部２０５とを備えている。通信部２０５は、外部装置と通信を行なう為の通信手段である。通信部２０５は、外部装置とデータの送受信を行なう送受信手段としても機能する。通信部２０５は、例えば、アンテナ、または接触端子などにより構成される。
【００２６】
ＩＣチップ２００は、ＩＣカード２のＩＣモジュール２０は、ＣＰＵ２０１、不揮発性メモリ２０２、ＲＡＭ２０３、ＲＯＭ２０４、及び、タイマ２０６などを具備している。また、
ＣＰＵ２０１は、当該ＩＣカード２全体の制御を司る。ＣＰＵ２０１は、ＲＯＭ２０４あるいは不揮発性メモリ２０２に記憶されている制御プログラムや制御データに基づいて動作することにより、種々の処理手段として機能する。
【００２７】
不揮発性メモリ２０２は、記憶手段として機能する。不揮発性メモリ２０２は、例えば、ＥＥＰＲＯＭあるいはフラッシュＲＯＭなどの、データの書き込み及び書換えが可能な不揮発性のメモリにより構成される。不揮発性メモリ２０２には、当該ＩＣカード２の運用用途に応じて制御プログラムや種々のデータが書込まれる。たとえば、不揮発性メモリ２０２では、プログラムファイルやデータファイルなどが定義され、それらのファイルに制御プログラムや種々のデータが書き込まれる。
【００２８】
不揮発性メモリ２０２は、ファイル構造の根幹となるＭａｓｔｅｒ  Ｆｉｌｅ（ＭＦ）を有している。ＭＦの下位には、アプリケーションなどをグループ化するＤｅｄｉｃａｔｅｄ  Ｆｉｌｅ（ＤＦ）が置かれている。ＤＦの下位には、様々なデータを格納するためのＥｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＥＦ）が置かれている。また、ＭＦの直下にも、ＥＦが置かれている。
【００２９】
ＥＦには、Ｗｏｒｋｉｎｇ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＷＥＦ）とＩｎｔｅｒｎａｌ  Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ（ＩＥＦ）とがある。ＷＥＦは、外部の装置により読み出されるデータを格納するＥＦである。ＩＥＦは、内部で行う処理に用いるデータを格納するＥＦである。ＷＥＦ及びＩＥＦは、不揮発性メモリ２０２内に複数定義されてもよい。ＷＥＦ及びＩＥＦは、ファイルガ創生される場合にファイルを識別する為の識別情報（ＥＦ−ＩＤ）が付与される。
【００３０】
ＲＡＭ２０３は、ＣＰＵ２０１のワーキングメモリとして機能する揮発性のメモリである。即ち、ＲＡＭ２０３は、ＣＰＵ２０１が処理中のデータなどを一時保管する。また、ＲＡＭ２０３は、端末装置１０３から受信したデータを一時保管するように構成されている。
【００３１】
ＲＯＭ２０４は、予め制御用のプログラムや制御データなどが記憶されている不揮発性のメモリである。ＲＯＭ２０４は、例えば、マスクＲＯＭにより構成される。即ち、ＲＯＭ２０４は、製造段階で制御プログラムや制御データなどが記憶された状態でＩＣカード２内に組み込まれる。つまり、ＲＯＭ２０４に記憶されている制御プログラムや制御データは、予め当該ＩＣカード２の仕様に応じて組み込まれる。
【００３２】
タイマ２０６は、一定の時間をカウントする。ＩＣチップ２００は、少なくともロジカルチャネルと同じ数だけのタイマを有する。これらのタイマは、各ロジカルチャネルに対応付けられている。
【００３３】
本実施形態に係るＩＣカード２の不揮発性メモリ２０２は、ＷＥＦに公開鍵証明書を記憶する。公開鍵証明書は、人名、若しくは企業名などのＩＤと公開鍵とを結びつける証明書である。公開鍵は、バイナリーデータである。この為、公開鍵が正規の発行者により発行されたものであることを確認する為の証明書である。公開鍵証明書は、署名された公開鍵、人名若しくは企業名などのＩＤ、有効期限、及び失効センタのＵＲＬなどの情報を含んでいる。
【００３４】
本実施形態に係るＩＣカード２の不揮発性メモリ２０２は、ＷＥＦに記憶されている公開鍵証明書の中の公開鍵にアクセスするためのリンク情報をＩＥＦに記憶する。
【００３５】
ＩＣカード２は、公開鍵を読み出す場合、ＩＥＦに記憶されているリンク情報に基づいて公開鍵証明書が記憶されているＷＥＦを参照する。これにより、ＩＣカード２は、ＩＥＦに公開鍵を記憶することなく、公開鍵を用いて処理を行うことができる。
【００３６】
図３は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。ＩＣカード２の不揮発性メモリ２０２に、ＩＥＦ１及びＷＥＦ１が定義されているとする。また、ＷＥＦ１に公開鍵ｋｐを含む公開鍵証明書が格納されており、ＷＥＦ１に格納されている公開鍵証明書の公開鍵ｋｐへのリンク情報がＩＥＦ１に格納されていると仮定する。
【００３７】
カードリーダライタ１０２から認証コマンドを受信した場合、ＩＣカード２のＣＰＵ２０１は、受信した認証コマンドに含まれている暗号化データを復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００３８】
この為に、ＣＰＵ２０１は、図３に示すように、認証コマンドで指定されているＩＥＦ１を参照し、リンク情報を読み取る。ＣＰＵ２０１は、読み取ったリンク情報により指定されているアドレス、即ち、ＷＥＦ１の公開鍵ｋｐが格納されているアドレスにアクセスし、公開鍵ｋｐを読み出す。ＣＰＵ２０１は、アクセス手段として機能する。ＣＰＵ２０１は、受信した暗号化データを、読み出した公開鍵ｋｐにより復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００３９】
図４は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。ＩＣカード２の不揮発性メモリ２０２に、ＩＥＦ１、ＩＥＦ２、及びＷＥＦ１が定義されているとする。また、ＷＥＦ１に公開鍵ｋｐを含む暗号化された公開鍵証明書が格納されており、ＷＥＦ１に格納されている公開鍵証明書の公開鍵ｋｐへのリンク情報がＩＥＦ１に格納されており、ＷＥＦ１に格納されている暗号化された公開鍵証明書を復号するための公開鍵ｋｄがＩＥＦ２に格納されていると仮定する。
【００４０】
カードリーダライタ１０２から認証コマンドを受信した場合、ＩＣカード２のＣＰＵ２０１は、受信した認証コマンドに含まれている暗号化データを復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００４１】
この為に、ＣＰＵ２０１は、図４に示すように、認証コマンドで指定されているＩＥＦ１を参照し、リンク情報を読み取る。ＣＰＵ２０１は、読み取ったリンク情報により指定されているアドレス、即ち、ＷＥＦ１を参照する。
【００４２】
ＷＥＦ１に格納されている公開鍵証明書は暗号化されている為、ＣＰＵ２０１は、認証コマンドで指定されているＩＥＦ２を参照し、公開鍵証明書を復号するための公開鍵ｋｄを読み出す。
【００４３】
ＣＰＵ２０１は、読み出した公開鍵ｋｄにより公開鍵証明書を復号し、公開鍵証明書に含まれている公開鍵ｋｐを読み出す。ＣＰＵ２０１は、受信した暗号化データを、読み出した公開鍵ｋｐにより復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００４４】
図５は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。ＩＣカード２の不揮発性メモリ２０２に、ＩＥＦ１、ＩＥＦ２、ＷＥＦ１、及びＷＥＦ２が定義されているとする。また、ＷＥＦ１に公開鍵ｋｐを含む暗号化された公開鍵証明書が格納されており、ＷＥＦ１に格納されている暗号化された公開鍵証明書を復号するための公開鍵ｋｄがＷＥＦ２に格納されており、ＷＥＦ１に格納されている公開鍵証明書の公開鍵ｋｐへのリンク情報がＩＥＦ１に格納されており、ＷＥＦ２に格納されている公開鍵ｋｄへのリンク情報がＩＥＦ２に格納されていると仮定する。
【００４５】
カードリーダライタ１０２から認証コマンドを受信した場合、ＩＣカード２のＣＰＵ２０１は、受信した認証コマンドに含まれている暗号化データを復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００４６】
この為に、ＣＰＵ２０１は、図５に示すように、認証コマンドで指定されているＩＥＦ１を参照し、リンク情報を読み取る。ＣＰＵ２０１は、読み取ったリンク情報により指定されているアドレス、即ち、ＷＥＦ１を参照する。
【００４７】
ＷＥＦ１に格納されている公開鍵証明書は暗号化されている為、ＣＰＵ２０１は、認証コマンドで指定されているＩＥＦ２を参照し、リンク情報を読み取る。ＣＰＵ２０１は、読み取ったリンク情報により指定されているアドレス、即ち、ＷＥＦ２を参照し、公開鍵証明書を復号するための公開鍵ｋｄを読み出す。
【００４８】
ＣＰＵ２０１は、読み出した公開鍵ｋｄにより公開鍵証明書を復号し、公開鍵証明書に含まれている公開鍵ｋｐを読み出す。ＣＰＵ２０１は、受信した暗号化データを、読み出した公開鍵ｋｐにより復号し、カードリーダライタ１０２にレスポンスとして送信する。
【００４９】
なお、ＩＣカード２は、受信した暗号化データを、読み出した公開鍵ｋｐにより復号し、カードリーダライタ１０２にレスポンスとして送信し、認証を行なう構成として説明したがこれに限定されない。例えば、カードリーダライタ１０２から認証コマンドを受信した場合、ＩＣカード２は、乱数を生成し、生成した乱数を上記した処理により読み出した公開鍵ｋｐを用いて暗号化し、カードリーダライタ１０２に送信する。端末装置１０３は、公開鍵に対応する秘密鍵を用いて、カードリーダライタ１０２から受信した暗号化された乱数を復号することにより、認証を行なう構成であってもよい。
【００５０】
図６は、ファイル創生コマンドの例を示す説明図である。ファイル創生コマンドは、「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｃ」、及び「Ｄａｔａ」を含んでいる。「ＣＬＡ」は、命令クラスであり、処理コマンドの種類を指定するための１バイトのデータである。「ＩＮＳ」は、命令コードであり、動作を指示するための１バイトのデータである。この場合、ファイルを創生することを指示するためのデータが「ＩＮＳ」に格納されている。
【００５１】
「Ｐ１」および「Ｐ２」は、命令パラメータであり、動作を実行させる際の設定値を示すそれぞれ１バイトのデータである。「Ｌｃ」は、「Ｄａｔａ」部の長さを示す３バイトのデータである。「Ｄａｔａ」は、当該コマンドに基づく動作に用いられるデータである。
【００５２】
このファイル創生コマンドにより創生されたファイルは、それぞれ参照子が付与される。参照子は、ＥＦ固有の番号である。ＣＰＵ２０１は、外部装置から通知される参照子の情報に基づき、特定のＥＦにアクセスする。
【００５３】
図７は、認証コマンドの例を示す説明図である。認証コマンドは、「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｃ」、及び「Ｄａｔａ」を含んでいる。「ＣＬＡ」は、命令クラスであり、処理コマンドの種類を指定するための１バイトのデータである。「ＩＮＳ」は、命令コードであり、動作を指示するための１バイトのデータである。この場合、認証処理を実行することを指示するためのデータが「ＩＮＳ」に格納されている。
【００５４】
「Ｐ１」および「Ｐ２」は、命令パラメータであり、動作を実行させる際の設定値を示すそれぞれ１バイトのデータである。「Ｐ２」には、参照すべきＥＦを特定する為の参照子が格納されている。
【００５５】
「Ｌｃ」は、「Ｄａｔａ」部の長さを示す３バイトのデータである。「Ｄａｔａ」は、当該コマンドに基づく動作に用いられるデータである。「Ｄａｔａ」は、公開鍵ｋｐにより認証するためのデータが格納されている。
【００５６】
図８は、図６に示すファイル創生コマンドの「Ｄａｔａ」に含まれるデータについて説明する為の説明図である。「Ｄａｔａ」には、「自身の参照子」、「自身のＥＦ−ＩＤ」、「リンク情報」、及び「復号用リンク情報」などが含まれている。
【００５７】
図９は、不揮発性メモリ２０２に格納されたファイルについて説明する為の説明図である。図８に示すようなファイル創生コマンドによりファイルが創生される場合、不揮発性メモリ２０２には、まず各ＥＦの定義情報が書き込まれる。ＥＦの定義情報は、例えば、ＴＬＶ形式により書き込まれる。即ち、参照子及びＥＦ−ＩＤが先頭に置かれ、データの長さを指定する為の情報と、データとが連結されて記憶される。
【００５８】
本例では、図９に示すように、不揮発性メモリ２０２に、ＷＥＦ１の定義情報、ＷＥＦ２の定義情報、ＩＥＦ１の定義情報、ＩＥＦ２の定義情報、ＷＥＦ１のデータ、及びＷＥＦ２のデータなどが格納される。
【００５９】
図１０は、ＩＣカード２のＣＰＵ２０１による処理について説明する為のフローチャートである。なお、ＩＣカード２の不揮発性メモリ２０２は、ＩＥＦ１に公開鍵が格納されている状態、または図３乃至図５により説明した状態のうちの１つであると仮定して説明する。
【００６０】
まず、端末装置１０３は、カードリーダライタ１０２を介してＩＣカード２に信号を送信し。ＩＣカード２を活性化させる。ＩＣカードを活性化させると、端末装置１０３は、ＩＣカード２に対して認証コマンドを送信する。
【００６１】
ＩＣカード２のＣＰＵ２０１は、カードリーダライタ１０２から受信したコマンドのフォーマットのチェックを行なう（ステップＳ１１）。
【００６２】
コマンドのフォーマットが正しい場合（ステップＳ１１、ＹＥＳ）、ＩＣカード２のＣＰＵ２０１は、コマンドに記載されている参照子に基づき、ＩＥＦ１を検索する（ステップＳ１２）。
【００６３】
ＩＥＦ１が検索された場合、ＣＰＵ２０１は、受信したコマンドの実行条件をチェックする（ステップＳ１３）。
【００６４】
コマンドの実行条件がＯＫである場合、ＣＰＵ２０１は、検索したＩＥＦ１のデータを参照し、ＷＥＦ１にリンクされているか否か判定する（ステップＳ１４）。
【００６５】
ＷＥＦ１にリンクされていると判定した場合（ステップＳ１４、ＹＥＳ）、ＣＰＵ２０１は、ＷＥＦ１を参照し、公開鍵証明書を復号する必要があるか否か判定する。即ち、ＣＰＵ２０１は、ＷＥＦ１に格納されている公開鍵証明書が暗号化されているか否か判定する。
【００６６】
公開鍵証明書を復号する必要がある場合（ステップＳ１５、ＹＥＳ）、ＣＰＵ２０１は、復号用リンク情報に基づき、ＩＥＦ２を検索する（ステップＳ１６）。
【００６７】
ＩＥＦ２が検索された場合、ＣＰＵ２０１は、検索したＩＥＦ２のデータを参照し、ＷＥＦ２にリンクされているか否か判定する（ステップＳ１７）。
【００６８】
ＷＥＦ２にリンクされていると判定した場合（ステップＳ１７、ＹＥＳ）、ＣＰＵ２０１は、ＷＥＦ２を参照し、公開鍵証明書を復号するための公開鍵ｋｄを取得する（ステップＳ１８）。
【００６９】
ＣＰＵ２０１は、取得した公開鍵ｋｄを用いて、ＷＥＦ１に格納されている公開鍵証明書を復号する（ステップＳ１９）。これにより、ＣＰＵ２０１は、公開鍵ｋｐを取得する。
【００７０】
ＣＰＵ２０１は、取得した公開鍵ｋｐを用いて、認証コマンドにより指示された認証処理を実行する（ステップＳ２０）。ＣＰＵ２０１は、処理が正常に終了したと判断しシャットダウンする（ステップＳ２１）。
【００７１】
また、ステップＳ１４において、ＩＥＦ１からＷＥＦ１にリンクされていない場合、即ち、公開鍵ｋｐがＩＥＦ１に格納されている場合（ステップＳ１４、ＮＯ）、ＣＰＵ２０１は、ＩＥＦ１から公開鍵ｋｐを取得し（ステップＳ２２）、ステップＳ２０に移行する。
【００７２】
また、ステップＳ１５において、ＷＥＦ１に格納されている公開鍵証明書を復号する必要がない場合（ステップＳ１５、ＮＯ）、ＣＰＵ２０１は、ＷＥＦ１から公開鍵ｋｐを取得し（ステップＳ２３）、ステップＳ２０に以降する。
【００７３】
また、ステップＳ１７において、ＩＥＦ２がＷＥＦ２にリンクされていない場合、即ち、ＩＥＦ２に復号用の公開鍵ｋｄが格納されている場合（ステップＳ１７、ＮＯ）、ＣＰＵ２０１は、ＩＥＦ２から復号用の公開鍵ｋｄを取得し（ステップＳ２４）、ステップｓ１９に移行する。
【００７４】
また、ステップＳ１１において、コマンドのフォーマットが正しくないと判定した場合（ステップＳ１１、ＮＯ）、ステップＳ１２においてＩＥＦ１が検索された場合、ステップＳ１３においてコマンドの実行条件がＮＧである場合、若しくは、ステップＳ１６において、ＩＥＦ２が検索されなかった場合、ＣＰＵ２０１は、処理が正常に行われなかったと判断し、エラーを通知する（ステップＳ２５）。
【００７５】
上述したように、本発明の一実施形態によると、ファイル創生の際に、公開鍵証明書が格納されているＷＥＦをＩＥＦから参照することが出来るように、ＩＥＦにＷＥＦにアクセスするためのリンク情報を格納する。これにより、ＩＣカード内で公開鍵を使った処理を行う場合でも、ＩＥＦに公開鍵を格納する必要がなくなる。即ち、ＩＣカードのメモリを節約することが出来る。
【００７６】
この結果として、より効率的にメモリを活用することが出来る携帯可能電子装置、及び、携帯可能電子装置の制御方法を提供することができる。
【００７７】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７８】
【図１】図１は、本発明の実施形態に係るＩＣカードが用いられるシステムの構成例を概略的に示すブロック図である。
【図２】図２は、ＩＣカードの構成例を概略的に示すブロック図である
【図３】図３は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。
【図４】図４は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。
【図５】図５は、ＩＥＦからＷＥＦに格納されている公開鍵証明書を参照する例について説明する為の説明図である。
【図６】図６は、ファイル創生コマンドの例を示す説明図である。
【図７】図７は、認証コマンドの例を示す説明図である。
【図８】図８は、図６に示すファイル創生コマンドに含まれるデータについて説明する為の説明図である。
【図９】図９は、不揮発性メモリに格納されたファイルについて説明する為の説明図である。
【図１０】図１０は、ＩＣカードのＣＰＵによる処理について説明する為のフローチャートである。
【符号の説明】
【００７９】
１…ＩＣカードシステム、２…ＩＣカード、２０…ＩＣモジュール、１０２…カードリーダライタ、１０３…端末装置、１０４…キーボード、１０５…表示部、１０６…プリンタ、２００…ＩＣチップ、２０１…ＣＰＵ、２０２…不揮発性メモリ、２０３…ＲＡＭ、２０４…ＲＯＭ、２０５…通信部、２０６…タイマ。
【図１】
2010072929.tif 000003
【図２】
2010072929.tif 000004
【図３】
2010072929.tif 000005
【図４】
2010072929.tif 000006
【図５】
2010072929.tif 000007
【図６】
2010072929.tif 000008
【図７】
2010072929.tif 000009
【図８】
2010072929.tif 000010
【図９】
2010072929.tif 000011
【図１０】
2010072929.tif 000012