(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024134405
(43)【公開日】2024-10-03
(54)【発明の名称】携帯可能電子装置及び携帯可能電子装置の制御方法
(51)【国際特許分類】
G06K 19/073 20060101AFI20240926BHJP
G06K 19/07 20060101ALI20240926BHJP
G06K 19/077 20060101ALI20240926BHJP
【FI】
G06K19/073 045
G06K19/07 230
G06K19/077 164
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023044691
(22)【出願日】2023-03-20
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】598076591
【氏名又は名称】東芝インフラシステムズ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】丹下 大輔
(57)【要約】
【課題】運用中であっても人為的手段を必要とすることなく携帯可能電子装置の特定の機能を無効化することができる携帯可能電子装置を提供すること。
【解決手段】実施形態に係る携帯可能電子装置は、外部装置から受信したコマンドに従って第1の処理を実行するプロセッサを備える。プロセッサは、コマンドを受信したことをトリガとして無効化条件を満たすか否かを判定し、無効化条件を満たす場合には、第1の処理とは異なる第2の処理の所定の機能を無効化する無効化処理を実行した後第1の処理を実行し、第1の日付データが前記第2の日付データを越えない場合には、無効化処理を実行せずに前記第1の処理を実行する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
外部装置から受信したコマンドに従って第1の処理を実行するプロセッサを備え、
前記プロセッサは、
前記コマンドに含まれる第1の日付データが基準とする第2の日付データを超えるか否かを判定し、
前記第1の日付データが前記第2の日付データを越える場合には、前記第1の処理とは異なる第2の処理の所定の機能を無効化する無効化処理を実行した後前記第1の処理を実行し、
前記第1の日付データが前記第2の日付データを越えない場合には、前記無効化処理を実行せずに前記第1の処理を実行する、
携帯可能電子装置。
【請求項2】
前記第2の処理は暗号化処理であり、
前記所定の機能はアクセス制御に関する機能である、
請求項1に記載の携帯可能電子装置。
【請求項3】
外部装置から受信したコマンドに従って所定の処理を実行するプロセッサを備え、
前記プロセッサは、
前記コマンドに含まれるアクセス制御が所定のアクセス制御であるか否かを判定し、
前記コマンドに含まれるアクセス制御が所定のアクセス制御であると判定した場合には、前記所定のアクセス制御に関する機能を無効化する無効化処理を実行した後、前記所定の処理を実行し、
前記コマンドに含まれるアクセス制御が所定のアクセス制御でないと判定した場合には、前記無効化処理を実行せずに前記所定の処理を実行する、
携帯可能電子装置。
【請求項4】
外部装置から受信したコマンドに従って所定の処理の実行するプロセッサを備え、
前記プロセッサは、
前記コマンドに含まれるアクセス制御が所定のアクセス制御であるか否かを判定し、
前記コマンドに含まれるアクセス制御が所定のアクセス制御であると判定した場合には、当該所定のアクセス制御の実行カウント数が基準回数を超えるか否かを判定し、
前記所定のアクセス制御の実行カウント数が基準回数を超えると判定した場合には、前記所定のアクセス制御を無効化する無効化処理を実行した後前記所定の処理を実行せずに終了し、
前記所定のアクセス制御の実行カウント数が基準回数を超えないと判定した場合には、実行カウント数を追加して前記所定のアクセス制御を含む前記所定の処理を実行し、
前記コマンドに含まれるアクセス制御が所定のアクセス制御でないと判定した場合には、前記所定の処理を実行する、
携帯可能電子装置。
【請求項5】
前記プロセッサは、データを削除又は初期化することで前記無効化処理を実行する、
請求項1乃至4のうちいずれか一項に記載の携帯可能電子装置。
【請求項6】
前記プロセッサは、無効化フラグを有効にすることで前記無効化処理を実行する、
請求項1乃至4のうちいずれか一項に記載の携帯可能電子装置。
【請求項7】
外部装置から受信したコマンドに含まれる第1の日付データが基準とする第2の日付データを超えるか否かを判定し、
前記第1の日付データが前記第2の日付データを越えた場合には、コマンドに従って実行される第1の処理とは異なる第2の処理の所定の機能を無効化する無効化処理を実行した後前記第1の処理を実行し、
前記第1の日付データが前記第2の日付データを越えない場合には、前記無効化処理を実行せずに前記第1の処理を実行すること、
を備えた携帯可能電子装置の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、携帯可能電子装置及び携帯可能電子装置の制御方法に関する。
【背景技術】
【0002】
ICカード等の携帯可能電子装置に搭載している機能を無効化する場合、一般的には、無効化する命令を明示的にICカードに送信する。また、ICカードの発行時に機能無効化するのであれば、イシュア(ICカードの発行元)の意向で特殊な管理コマンド(命令)を処理することで機能を無効化できる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
すなわち、従来技術においては、ICカードの特定の機能を無効化する場合、運用中に取引以外の無効化命令をICカードへ送らなければならない。そのため、利用者又は管理者の管理負担は大きい。
【0005】
運用中であっても人為的手段を必要とすることなく携帯可能電子装置の特定の機能を無効化することができる携帯可能電子装置及び携帯可能電子装置の制御方法を提供することである。
【課題を解決するための手段】
【0006】
実施形態に係る携帯可能電子装置は、外部装置から受信したコマンドに従って第1の処理を実行するプロセッサを備える。前記プロセッサは、前記コマンドを受信したことをトリガとして無効化条件を満たすか否かを判定し、前記無効化条件を満たす場合には、前記第1の処理とは異なる第2の処理の所定の機能を無効化する無効化処理を実行した後前記第1の処理を実行し、前記第1の日付データが前記第2の日付データを越えない場合には、前記無効化処理を実行せずに前記第1の処理を実行する。
【図面の簡単な説明】
【0007】
【
図1】第1の実施形態に係るICカード処理システムの概略の一例を説明するための構成図である。
【
図2】ICカードの記憶部に記憶される管理テーブルの一例を示した図である。
【
図3】第1の実施形態に係る無効化処理の流れの一例を示したフローチャートである。
【
図4】第1の実施形態に係る無効化処理後のコマンド処理の流れの一例を示したフローチャートである。
【
図5】第2の実施形態に係る無効化処理の流れの一例を示したフローチャートである。
【
図6】第3の実施形態に係る無効化処理の流れの一例を示したフローチャートである。
【発明を実施するための形態】
【0008】
以下、図面を参照して、実施形態に係る携帯可能電子装置及び携帯可能電子装置の制御方法について説明する。なお、同一の参照符号を付した部分は同様の動作をおこなうものとして、重複する説明を適宜省略する。以下の実施形態は開示の技術を限定するものではない。そして、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0009】
図1は、実施形態に係るICカード処理システムSの概略の一例を説明するための構成図である。実施形態に係るICカード処理システムSは、ICカード1、及びICカード処理装置2を備える。
【0010】
ICカード1は、例えば85.6mm×54mm×0.76mmのサイズのカードであり、ICカード1は、ICカード処理装置2に装填され通信する接触型のカード、又はICカード処理装置2に翳されて通信する非接触型のカードである。或いは、ICカード1は、接触型及び非接触型をサポートするコンビ型のカードである。
【0011】
ICカード処理装置2は、店舗又は駅などの施設の入出場口に設置され、コンビ型又は非接触型のICカード1に対応するICカード処理装置2は、ユーザによって翳されるICカード1と通信し、ICカード1へ情報を送信し、ICカード1からの情報を受信する。また、ICカード処理装置2は、差し込まれるICカード1と通信し、ICカード1へ情報を送信し、ICカード1からの情報を受信する。多くのICカード1が市場で流通し、各所に設置されたICカード処理装置2が、ユーザにより翳されるICカード1、又は差し込まれるICカード1と通信する。
【0012】
図1に示すように、ICカード1は、プロセッサ11、記憶部12(メモリ)、及びインタフェース13を備える。
プロセッサ11は、CPU(central processing unit)等であり、記憶部12のROM(Read Only Memory)等のプログラムメモリに記憶されたプログラムに基づいて、演算及び制御などの各種処理を実行する。
【0013】
また、プロセッサ11は、取得部111、判定部112、制御部113、出力部114、及びカウント部115を備える。プロセッサ11は、プログラムメモリに記憶されるプログラムに基づき動作し、これら各部の機能を実現する。
【0014】
特に、プロセッサ11は、取得部111、判定部112、制御部113、出力部114の各機能を実現し、ICカード1の特定機能の自動無効化処理(以下、単に「自動無効化処理」とも言う)を実行する。
【0015】
ここで、自動無効化処理とは、人為的操作やICカード処理装置2等の外部装置からの無効化指示を必要としないで、ICカード1の運用中であってもICカード1の脆弱な特定の機能を自動的に無効化するものである。以下においては、説明を具体的にするため、自動無効化処理の対象とする特定の機能は、暗号化処理において利用される機能であるとする。しかしながら、無効化する脆弱な特定の機能としては、他の機能を採用することもできる。自動無効化処理の具体的内容については、後で詳しく説明する。なお、運用コマンドは第1の処理の一例であり、暗号化処理は第2の処理の一例である。
【0016】
取得部111は、インタフェース13を介して、ICカード処理装置2等の外部装置から送信される外部信号を取得する。例えば、取得部111は、ICカード処理装置2等の外部装置から送信されるコマンドを取得する。また、取得部111は、記憶部12に記憶される各種情報を取得する。
【0017】
判定部112は、自動無効化処理において、取得部111が取得したコマンドを解析する。また、判定部112は、取得部111が特定のコマンドを取得したことをトリガとして、解析結果を利用して無効化条件を満たすか否かを判定する。
【0018】
ここで、無効化条件とは、暗号化処理の特定の機能の無効化を実行するか否かを判定するための条件である。なお、第1の実施形態においては、無効化条件が運用取引中に受信する日付データが基準とする日付を超えている場合を例とする。基準とする日付は事前に外部から指定できてもよいし、予め決定された日付としてプログラム実装してもよい。
【0019】
制御部113は、自動無効化処理において、判定部112が無効化条件を満たすと判定した場合には、暗号化処理の特定の機能を無効化する。具体的には、制御部113は、運用取引中に受信したコマンドに含まれる日付データが基準とする日付を超えていたと判定部112が判定した場合には、暗号化処理に関連する特定の機能を無効化する。なお、特定の機能の無効化とは、当該機能に関するデータをリセットすること、当該機能に関するデータを削除すること、無効化フラグをONにすることの少なくともいずれかを含む。
【0020】
出力部114は、インタフェース13を介して、外部装置に対して所定の応答信号を出力する。例えば、出力部114は、自動無効化処理によって無効化された機能を用いるコマンドを受信した場合には、インタフェース13を介して、外部装置に対してエラー応答信号を出力する。
【0021】
カウント部115は、制御部113による運用コマンドの実行に応答して、運用コマンド毎の実行回数を記憶部12へ書き込む。
【0022】
記憶部12は、ROM、RAM(Randam Access Memory)、及び不揮発性メモリ等を含み、非一時的なコンピュータ可読媒体であるROM及び不揮発性メモリは、プロセッサ11を動作させるためのオペレーティングシステム又はアプリケーションソフトウェアなどのプログラムを記憶する。また、ROM及び不揮発性メモリは、プロセッサ11が各種処理を行う上で使用するデータなどを記憶する。RAMは、プロセッサ11が各種処理を行う上で一時的に使用するデータを記憶する。
【0023】
特に、記憶部12は、自動無効化処理において用いられる管理テーブルを記憶する。
【0024】
図2は、ICカードの記憶部に記憶される管理テーブルの一例を示した図である。
図2において、「データA」、「データB」は、暗号化処理において用いられるデータであり、例えば対称暗号でのアクセス制御(Basic Access Control:BAC)において用いられる情報の一部等である。また、
図2において、「アドレス」は、「データA」、「データB」が格納されている記憶部12の場所(アドレス)を示す。「データ長」は、「データA」、「データB」のそれぞれのデータの長さを示す。
【0025】
図2に示した管理テーブルより、データAは、アドレス0x100000から0x50バイト長のデータとして格納されていることがわかる。すなわち、データAはアドレス0x100000~0x10004Fに記憶されている。
【0026】
図1に戻り、インタフェース13は、ICカード処理装置2と通信し、ICカード処理装置2からの情報を受信し、ICカード処理装置2に対して情報を送信する。例えば、インタフェース13は、ICカード処理装置2からコマンド及びリセット要求信号等の外部信号を受信する。また、インタフェース13は、ICカード処理装置2に対して、出力部114からのエラー応答信号を出力する。
【0027】
図1に示すように、ICカード処理装置2は、プロセッサ21、記憶部22、カードリーダライタ23、操作部24、ディスプレイ25等を備える。
【0028】
プロセッサ21は、CPU等であり、記憶部22のROM等のプログラムメモリに記憶されたプログラムに基づいて、演算及び制御などの各種処理を実行する。プロセッサ11は、プログラムメモリに記憶されるプログラムに基づき動作する。
【0029】
プロセッサ21は、カードリーダライタ23を介して、ICカード1に対して、コマンド及びリセット要求信号を送信する。プロセッサ21は、ICカード1へのコマンドに対する応答信号に基づき各種処理を実行する。また、プロセッサ21は、カードリーダライタ23を介してICカード1へコマンドを出力し、ICカード1にデータを書き込んだり、ICカード1のデータを書き換えたりする。
【0030】
例えば、プロセッサ21は、信号生成部211、及び出力部212を備える。プロセッサ21は、プログラムメモリに記憶されるプログラムに基づき動作し、これら各部の機能を実現する。
【0031】
信号生成部211は、運用コマンドに関する信号を生成する。出力部212は、カードリーダライタ23を介して、各種信号を出力する。
【0032】
記憶部22は、ROM、RAM、及び不揮発性メモリ等を含み、非一時的なコンピュータ可読媒体であるROM及び不揮発性メモリは、プロセッサ21を動作させるためのオペレーティングシステム又はアプリケーションソフトウェアなどのプログラムを記憶する。また、ROM及び不揮発性メモリは、プロセッサ21が各種処理を行う上で使用するデータなどを記憶する。RAMは、プロセッサ21が各種処理を行う上で一時的に使用するデータを記憶する。
【0033】
カードリーダライタ23は、ICカード1との間でデータを送受信するためのインタフェースである。カードリーダライタ23は、アンテナ、接触端子、及び通信制御部等を備え、アンテナを介してコンビ型又は非接触型のICカード1と非接触で通信し、接触端子を介してコンビ型又は接触型のICカード1と物理的且つ電気的に接続して通信する。
【0034】
操作部24は、ICカード処理装置2の操作者からの入力指示を受付ける。操作部24は、受付けた入力指示に対応する入力データをプロセッサ21へ送信する。操作部24は、例えば、キーボード、テンキー、及び、タッチパネルなどである。
【0035】
ディスプレイ25は、プロセッサ21の制御により種々の情報を表示する表示デバイスであり、ICカード1から受信したエラー応答に関するメッセージを表示する。ディスプレイ25は、例えば、液晶モニタである。ディスプレイ25は、例えば、操作部24と一体的に形成されてもよい。
【0036】
(自動無効化処理)
次に、ICカード1が実行する自動無効化処理について説明する。
【0037】
図3は、第1の実施形態に係る無効化処理の流れの一例を示したフローチャートである。なお、
図3の処理では、例えば、対称暗号で実現しているアクセス制御(Basic Access Control、以下「BAC」とも言う)から、よりセキュリティレベルの高い非対称暗号を用いたセッションキーを提供しているアクセス制御(Password Authenticated Connection Establishment、以下「PACE」とも言う)へ移行したい場合に、BACのアクセス制御を自動的に無効化するケースを想定している。
【0038】
図3に示した様に、ICカード1の取得部111は、データ部に日付を含む所定の運用コマンドを受信する(ステップS1)。これにより、自動無効化処理が開始される。
【0039】
判定部112は、取得部111が取得したコマンドを解析する(ステップS2)。
【0040】
以下においては説明を具体的にするため、取得部111取得した運用コマンドはPERFORM SECURITY OPERATIONコマンドであり、そのデータ部に署名の日付データであるCertificate Effective Date(Tag‘5F25’)等が含まれている場合を想定する。
【0041】
判定部112は、解析の結果、コマンドのデータにTag‘5F25’が含まれているか否か判定する(ステップS3)。
【0042】
判定部112がコマンドのデータにTag‘5F25’が含まれていないと判定した場合(ステップS3のNo)、制御部113は、コマンドに従う処理(コマンド処理)を実行し(ステップS4)、その後処理を終了する。
【0043】
一方、コマンドのデータにTag‘5F25’が含まれていると判定した場合(ステップS3のYes)、判定部112は、Tag‘5F25’の日付が基準とする日付(例えば「2025/1/1」)を超えているか判定する(ステップS5)。
【0044】
制御部113は、判定部112がTag‘5F25’の日付が基準とする日付「2025/1/1」を超えていないと判定した場合には(ステップS5のNo)、コマンド処理を実行し(ステップS4)、その後処理を終了する。
【0045】
一方、判定部112がTag‘5F25’の日付が基準とする日付「2025/1/1」を超えていると判定した場合には(ステップS5のYes)、制御部113は、記憶部12の管理テーブルにアクセスし、削除するデータのアドレスとそのデータ長を取得する(ステップS6)。
【0046】
制御部113は、取得したアドレスとデータ長に基づいて記憶部12にアクセスし、削除するデータがそのデータ長分初期値(0xFF)となっているか否かを判定する(ステップS7)。
【0047】
制御部113は、削除するデータがアドレスからそのデータ長分初期値(0xFF)となっていると判定した場合には(ステップS7のYes)、コマンド処理を実行し(ステップS4)、その後処理を終了する。
【0048】
一方、制御部113は、削除するデータがアドレスからそのデータ長分初期値(0xFF)となっていないと判定した場合には(ステップS7のNo)、アドレスからそのデータ長分初期値(0xFF)で上書きし(ステップS8)する。その後、制御部113は、コマンド処理を実行し(ステップS4)、処理を終了する。
【0049】
(自動無効化処理後のコマンド実行処理)
次に、自動無効化処理後のコマンド処理実行の一例について説明する。
【0050】
図4は、自動無効化処理後のコマンド処理実行の流れの一例を示したフローチャートである。なお、
図4においては、無効化フラグを用いない自動無効化処理によって無効化された機能が利用される場合の例である。
【0051】
図4に示した様に、ICカード1の取得部111は、所定の運用コマンドを受信する(ステップS10)。これにより、自動無効化処理後のコマンド処理が開始される。
【0052】
判定部112は、取得部111が取得したコマンドを解析し、INS部がGET CHALLENGEコマンドか否かを判定する(ステップS11)。
【0053】
INS部がGET CHALLENGEコマンドでないと判定部112が判定した場合(ステップS11のNo)、制御部113は、コマンド処理を実行し(ステップS12)、その後処理を終了する。
【0054】
一方、INS部がGET CHALLENGEコマンドであると判定部112が判定した場合(ステップS11のYes)、制御部113は、記憶部12の管理テーブルにアクセスし、無効化する機能に関連する各データのアドレスとアドレス長を取得する(ステップS13)。
【0055】
制御部113は、取得した各データのアドレスとアドレス長に基づいて記憶部12にアクセスし、無効化する機能に関連する各データが初期値であるか否かを判定する(ステップS14)。
【0056】
制御部113は、無効化する機能に関連する各データが初期値でないと判定した場合には(ステップS14のNo)、コマンド処理を実行し(ステップS12)、その後処理を終了する。
【0057】
一方、制御部113は、無効化する機能に関連する各データが初期値であると判定した場合には(ステップS14のYes)、機能は削除されていると判定し処理を中断し、出力部114を制御してエラー応答する(ステップS15)。
【0058】
出力部114は、インタフェース13を介して、外部装置に対してエラー応答信号を出力する。その結果、例えばICカード処理装置2のディスプレイ25においてエラーメッセージが表示される。
【0059】
なお、無効化フラグを用いる自動無効化処理の場合には、ステップS13、ステップS14の替わりに「BACの削除(無効化)フラグはONか?」という判別処理が実行されることになる。
【0060】
実施形態に係る携帯可能電子装置としてのICカード1は、外部装置であるICカード処理装置2から受信したコマンドに従って第1の処理を実行するプロセッサ11を備える。プロセッサ11によって実現される判定部112は、コマンドに含まれる第1の日付データが基準とする第2の日付データを超えるか否かを判定する。プロセッサ11によって実現される制御部113は、第1の日付データが第2の日付データを越えた場合には、第1の処理とは異なる第2の処理(例えば暗号化処理)の所定の機能(例えばアクセス制御)を無効化する無効化処理を実行した後第1の処理を実行する。制御部113は、第1の日付データが第2の日付データを越えない場合には、無効化処理を実行せずに第1の処理を実行する。
【0061】
すなわち、ICカード1は、例えば、コマンド受信をトリガとして、コマンドに含まれる署名の第1の日付データが基準とする第2の日付データを超えた場合には、暗号化において用いられる脆弱なアクセス制御について、自動的に無効化することができる。従って、ICカード1は、外部装置であるICカード処理装置2等から無効化のための特殊なコマンドを改めて受信することなく、自動的にソフトウェアの更新(脆弱な機能の無効化処理)を実行することができる。また、ユーザはICカード1を所定の場所に持って行きソフトウェアの更新を受ける等の人為的手段も必要もない。その結果、ICカード1のソフトウェア更新において、ユーザや管理会社等への作業負担を軽減することができる。
【0062】
(第2の実施形態)
次に第2の実施形態に係るICカード1について説明する。第2の実施形態では、BACからPACEへ移行したい場合に、外部装置から受信したコマンドに含まれるアクセス制御がBACであるときには、無効化フラグを利用してBACのアクセス制御を自動的に無効化するケースを想定している。
【0063】
図5は、第2の実施形態に係る無効化処理の流れの一例を示したフローチャートである。
図5に示した様に、ICカード1の取得部111は、所定の運用コマンドを受信する(ステップS21)。これにより、自動無効化処理が開始される。
【0064】
判定部112は、取得部111が取得したコマンドを解析し、コマンドヘッダ部に含まれるINS部がGENERAL AUTHENTICATIONコマンド(汎用認証コマンド)であるか否かを判定する(ステップS22)。
【0065】
INS部がGENERAL AUTHENTICATIONコマンドでない(すなわち、アクセス制御がBACではない)と判定部112が判定した場合(ステップS22のNo)、制御部113は、コマンド処理を実行し(ステップS23)、その後処理を終了する。
【0066】
一方、INS部がGENERAL AUTHENTICATIONコマンドである(すなわち、アクセス制御がBACである)と判定部112が判定した場合(ステップS22のYes)、制御部113は、BACの削除(無効化)フラグをONにする(ステップS24)。
【0067】
制御部113は、BACの削除フラグをONにした後、コマンド処理を実行し(ステップS23)、その後処理を終了する。
【0068】
以上述べた第2の実施形態に係るICカード1は、ICカード処理装置2から受信したコマンドに従って所定の処理の実行するプロセッサ11を備える。プロセッサ11によって実現される判定部112は、コマンドに含まれるアクセス制御が所定のアクセス制御(例えばBAC)であるか否かを判定する。プロセッサ11によって実現される制御部113は、コマンドに含まれるアクセス制御がBACであると判定した場合には、BACに関する機能を無効化する無効化処理を実行した後、コマンドに従う所定の処理を実行する。コマンドに含まれるアクセス制御がBACでないと判定した場合には、無効化処理を実行せずにコマンドに従う所定の処理を実行する。
【0069】
従って、第2の実施形態に係るICカード1によっても、第1の実施形態に係るICカード1と同様の効果を実現することができる。
【0070】
(第3の実施形態)
次に第3の実施形態に係るICカード1について説明する。第3の実施形態では、BACからPACEへ移行したい場合に、外部装置から受信したコマンドに含まれるアクセス制御がBACであるときにBACの実行回数が基準回数を超えたときには、無効化フラグを利用してBACのアクセス制御を自動的に無効化するケースを想定している。
【0071】
図6は、第2の実施形態に係る無効化処理の流れの一例を示したフローチャートである。
図6に示した様に、ICカード1の取得部111は、所定の運用コマンドを受信する(ステップS31)。これにより、自動無効化処理が開始される。
【0072】
判定部112は、取得部111が取得したコマンドを解析し、コマンドヘッダ部に含まれるINS部がMUTUAL AUTHENTICATEコマンド(相互認証コマンド)であるか否かを判定する(ステップS32)。
【0073】
INS部がMUTUAL AUTHENTICATEコマンドでないと判定部112が判定した場合(ステップS32のNo)、制御部113は、コマンド処理を実行する(ステップS33)。
【0074】
制御部113は、コマンド処理を実行した後、BACの実行回数を+1として処理を終了する(ステップS35)。
【0075】
一方、INS部がMUTUAL AUTHENTICATEコマンドであると判定部112が判定した場合(ステップS32のYes)、当該判定部112は、BACの実行回数が基準回数(ここでは10000回)を越えたか否かを判定する(ステップS34)。
【0076】
BACの実行回数が10000回を越えていないと判定部112が判定した場合には(ステップS34のNo)、制御部113は、コマンド処理を実行し(ステップS33)、ACの実行回数を+1として処理を終了する(ステップS35)。
【0077】
一方、BACの実行回数が10000回を越えていると判定部112が判定した場合には(ステップS34のYes)、制御部113は、BACの削除フラグをONにし(ステップS36)、エラー応答を出力部114から出力してコマンド処理を実行せずに動作を終了する(ステップS37)。出力部114が出力するエラー応答は、例えばインタフェース13を介してICカード処理装置2に送信され、ディスプレイ25にエラーメッセージとして表示される。
【0078】
以上述べた第2の実施形態に係るICカード1は、ICカード処理装置2から受信したコマンドに従って所定の処理の実行するプロセッサ11を備える。プロセッサ11によって実現される判定部112は、コマンドに含まれるアクセス制御が所定のアクセス制御(例えばBAC)であるか否かを判定する。判定部112は、コマンドに含まれるアクセス制御がBACであると判定した場合には、BACの実行カウント数が基準回数を超えるか否かを判定する。プロセッサ11によって実現される制御部113は、判定部112がBACの実行カウント数は基準回数を超えると判定した場合には、BACを無効化する無効化処理を実行した後、コマンドに従う所定の処理を実行せずに終了する。制御部113は、判定部112がBACの実行カウント数が基準回数を超えないと判定した場合には、実行カウント数を追加してBACを含む所定の処理を実行する。制御部113は、判定部112がコマンドに含まれるアクセス制御がBACでないと判定した場合には、コマンドに従う所定の処理を実行する。
【0079】
従って、第3の実施形態に係るICカード1によっても、第1の実施形態に係るICカード1と同様の効果を実現することができる。
【0080】
上記実施形態では、説明を具体的にするため、携帯可能電子装置がICカードである場合を例とした。これに限定されず、携帯可能電子装置は、ICカードに限定されず、例えば同様の機能を備えたスマートフォン等のモバイル端末であっても良い。
【0081】
なお、上記各実施形態において説明した伝送方法は、コンピュータによって実行可能なプログラムによっても実現することができる。すなわち、上記各実施形態において説明した伝送方法を実現するプログラムをメモリに格納し、コンピュータの処理回路により当該プログラムをメモリから読み出し、ソフトウェアとハードウェア資源とが協働することによって、上記各実施形態において説明した伝送システム又は伝送方法を構築することも可能である。
【0082】
以上、本発明のいくつかの実施形態(及び変形例)を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組み合わせを行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0083】
1 ICカード
2 ICカード処理装置
11、21 プロセッサ
12、22 記憶部
13 インタフェース
23 カードリーダライタ
24 操作部
25 ディスプレイ
111 取得部
112 判定部
113 制御部
114、212 出力部
115 カウント部
211 信号生成部