JP6325355B2 - 携帯可能電子装置 - Google Patents

携帯可能電子装置 Download PDF

Info

Publication number
JP6325355B2
JP6325355B2 JP2014115007A JP2014115007A JP6325355B2 JP 6325355 B2 JP6325355 B2 JP 6325355B2 JP 2014115007 A JP2014115007 A JP 2014115007A JP 2014115007 A JP2014115007 A JP 2014115007A JP 6325355 B2 JP6325355 B2 JP 6325355B2
Authority
JP
Japan
Prior art keywords
command
information
class information
unit
selection unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014115007A
Other languages
English (en)
Other versions
JP2015230505A (ja
Inventor
竹田 元
元 竹田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Infrastructure Systems and Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Infrastructure Systems and Solutions Corp filed Critical Toshiba Corp
Priority to JP2014115007A priority Critical patent/JP6325355B2/ja
Priority to KR1020150075983A priority patent/KR20150139444A/ko
Priority to US14/728,763 priority patent/US20150351113A1/en
Priority to EP15170303.0A priority patent/EP2953034A1/en
Priority to SG10201504317SA priority patent/SG10201504317SA/en
Publication of JP2015230505A publication Critical patent/JP2015230505A/ja
Application granted granted Critical
Publication of JP6325355B2 publication Critical patent/JP6325355B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/54Allocation or scheduling criteria for wireless resources based on quality criteria
    • H04W72/543Allocation or scheduling criteria for wireless resources based on quality criteria based on requested quality, e.g. QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/38Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
    • H04B1/3816Mechanical arrangements for accommodating identification devices, e.g. cards or chips; with connectors for programming identification devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/38Universal adapter
    • G06F2213/3854Control is performed at the peripheral side

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Credit Cards Or The Like (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Telephone Function (AREA)

Description

本発明の実施形態は、携帯可能電子装置に関する。
近年、IC(Integrated Circuit)カードなどの携帯可能電子装置が普及している。従来の携帯可能電子装置は、外部装置から受信したコマンド内のClass Byte(クラス情報、以下、CLAバイトという)を判定し、判定結果に応じて適切な論理チャネル上で動作しているアプリケーションにコマンドを引き渡し、コマンド処理を実行する。このCLAバイトは、標準化された仕様により規定されている。しかしながら、論理チャネルの上限数が拡張されるなど標準化された仕様が拡張されたことにより、従来の携帯可能電子装置は、一部のCLAバイトの値について下位互換性が失われる場合があった。
特開2012−198696号公報
本発明が解決しようとする課題は、複数のクラス情報の仕様に対して互換性を維持することができる携帯可能電子装置を提供することである。
実施形態の携帯可能電子装置は、通信部と、選択部と、処理部とを持つ。前記通信部は、複数のチャネルで外部装置と通信可能である。前記選択部は、コマンドの種別を示すクラス情報であって、前記チャネルの番号を示す情報を含むクラス情報の仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する。前記処理部は、複数の前記クラス情報の仕様に対応するコマンド処理を実行可能であって、前記通信部が前記クラス情報を有するコマンドを受信した場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する。前記所定の情報には、前記複数のチャネルのうち、現在開かれている前記チャネルの番号の最大値を示す情報が含まれ、前記選択部は、前記チャネルの番号の最大値を示す情報に基づいて、前記クラス情報の仕様を選択する。
第1の実施形態のICカードのハードウェア構成例を示す図。 第1の実施形態のICカードの機能構成例を示すブロック図。 第1の実施形態のCLAバイトの仕様例を示す図。 第1の実施形態の動作チャネル情報記憶部が記憶するデータ例を示す図。 第1の実施形態のAPデータ記憶部のファイル構成例を示す図。 第1の実施形態の管理情報記憶部が記憶するデータ例を示す図。 第1の実施形態のICカードの動作の一例を示すフローチャート。 第2の実施形態のICカードの動作の一例を示すフローチャート。 第2の実施形態のICカードの動作の別の一例を示すフローチャート。 第3の実施形態の動作チャネル情報記憶部が記憶するデータ例を示す図。 第3の実施形態のICカードの動作の一例を示すフローチャート。 第4の実施形態のコマンド情報記憶部の構成例を示す図。 第4の実施形態の共通コマンド情報記憶部が記憶するデータ例を示す図。 第4の実施形態の管理情報記憶部が記憶するAP対応情報のデータ例を示す図。 第4の実施形態のICカードの動作の一例を示すフローチャート。 第5の実施形態のICカードの機能構成例を示すブロック図。 第5の実施形態のICカードの動作の一例を示すフローチャート。
以下、実施形態の携帯可能電子装置を、図面を参照して説明する。
なお、以下の実施形態において、携帯可能電子装置の一例として、ICカードについて説明する。
(第1の実施形態)
図1は、第1の実施形態のICカード1のハードウェア構成例を示す図である。
この図に示すように、ICカード1は、コンタクト部3と、ICチップ100とを備えている。ICカード1は、コンタクト部3を介して、外部装置2と通信可能である。
コンタクト部3は、ICカード1が動作するために必要な各種信号の端子を有している。ここで、各種信号の端子は、電源電圧、クロック信号、リセット信号などを外部装置2から供給を受ける端子(電源端子、クロック端子、リセット端子)、及び、外部装置2と通信するための端子(シリアルデ―タ入出力端子(SIO端子))を有する。
ICチップ100は、例えば、1チップのマイクロプロセッサなどのLSI(Large Scale Integration)である。ICチップ100は、通信I/F部4と、リセット判定部5と、CPU(Central Processing Unit)6と、ROM(Read Only Memory)7と、RAM(Random Access Memory)8と、EEPROM(Electrically Erasable Programmable ROM)9とを備えている。
通信I/F(Interface)部4は、ICカード1と外部装置2との間の通信(コマンド/レスポンスの送受信)を行う。ここで、外部装置2から出力されるコマンド通信は、例えば、コマンドの種別を示すCLAバイト(クラス情報)、命令(Instruction)バイトであるINSバイト、パラメータバイト(P1、P2)を含む。また、受信したコマンドに応じて、ICカード1から出力されるレスポンス応答は、SW1バイト及びSW2バイトの状態バイト(ステータスバイト)を含む。
リセット判定部5は、電源電圧の供給が維持された状態で自装置にリセット信号が再供給されたか否かを判定する。リセット判定部5は、外部装置2から実行されたICカード1リセット処理が、コールドリセット(Cold Reset)と、ウォームリセット(Warm Reset)とのうちのいずれのリセットであるかを判定する。ここで、コールドリセットとは、電源電圧がコンタクト部3から最初に供給された場合のリセットのことである。また、ウォームリセットとは、コールドリセット後に、電源電圧の供給が維持された状態でICカード1(自装置)にリセット信号が再供給された場合のリセットのことである。
なお、リセット判定部5は、コールドリセットと、ウォームリセットとのうちのいずれのリセットであるかを判定した判定結果をリセット情報として保持しているものとする。
CPU6は、ROM7又はEEPROM9に記憶されているプログラムを実行して、ICカード1の各種処理を行う。CPU6は、例えば、コンタクト部3を介して、通信I/F(Interface)部4が受信したコマンドに応じたコマンド処理を実行する。
ROM7は、例えば、マスクROMなどの不揮発性メモリであり、ICカード1の各種処理を実行するためのプログラム、及びコマンドテーブルなどのデータを記憶する。
RAM8は、例えば、SRAM(Static RAM)などの揮発性メモリであり、ICカード1の各種処理を行う際に利用されるデータを一時記憶する。RAM8は、現在利用されている(開かれている)論理チャネル番号と、各論理チャネルで動作しているアプリケーションを示す情報とを関連付けて記憶する。ここで、論理チャネルとは、外部装置2とICカード1とのデータ通信を行う際に利用するチャネルのことであり、論理チャネルは、上述したCLAバイトにより指定される。本実施形態のICカード1では、複数の論理チャネルを同時に開くことが可能である。また、同時に開くことができる論理チャネルの数は、仕様により定められている。この論理チャネルに関する仕様の詳細については後述する。
また、RAM8は、論理チャネルを指定する情報を含むCLAバイトの複数の仕様のうちのいずれか1つ仕様が設定されているかを識別する識別フラグ情報を記憶する。ここで、識別フラグ情報は、CLAバイトの仕様を指定する指定情報である。なお、本実施形態では、後述する「仕様A(旧仕様)」と「仕様B(新仕様)」との2つの異なる仕様のうちのいずれか1つの仕様が指定される場合の一例について説明する。
EEPROM9は、例えば、電気的に書き換え可能な不揮発性メモリであり、ICカード1の各種処理において保存しておく必要のあるデータ(例えば、アプリケーションデータなど)を記憶する。EEPROM9は、例えば、コールドリセット、及びウォームリセットのそれぞれに対応して出力するATR(Answer to Reset)データを記憶する。ここで、ATRデータとは、ICカード1がリセットされた際に外部装置2に対して出力するデータであり、ICカード1の通信プロトコルデータやヒストリカルバイトなどを含んでいる。また、EEPROM9は、各アプリケーションを識別するアプリケーション識別子(AID)と、CLAバイトを上述した2つの仕様のうちのいずれかによって判定するかを示すCLA仕様情報とを関連付けて記憶する。
次に、図2を参照して、本実施形態によるICカード1の機能構成例について説明する。
図2は、本実施形態のICカード1の機能構成例を示すブロック図である。
この図に示すように、ICカード1は、識別フラグ情報記憶部11と、動作チャネル情報記憶部12と、APデータ(アプリケーションデータ)記憶部13と、管理情報記憶部14と、コマンド情報記憶部15と、リセット判定部5と、通信部21と、ATR処理部22と、仕様選択部23と、コマンド処理部24とを備えている。
ここで、図2に示される各部は、図1に示されるハードウェアを用いて実現される。
なお、本実施形態では、論理チャネルを指定する情報を含むCLAバイトの異なる仕様は、図3に示すように、「仕様A(旧仕様)」及び「仕様B(新仕様)」である。「仕様A(旧仕様)」は、論理チャネルの最大値が4つ以下(論理チャネル0〜論理チャネル3)である旧仕様である。また、「仕様B(新仕様)」は、論理チャネルの最大値が5つ以上である20個(論理チャネル0〜論理チャネル19)に拡張された新仕様である。
図3は、本実施形態のCLAバイトの仕様例を示す図である。
この図に示す仕様では、「仕様A(旧仕様)」は、論理チャネル0〜論理チャネル3までをCLAバイトの下位2ビットで指定する。また、「仕様B(新仕様)」は、CLAバイトの上位4ビットが“X0XX”である場合に論理チャネル0〜論理チャネル3までをCLAバイトの下位2ビットで指定する。ここで、“X”は、“0”と“1”とのうちのいずれかのビットを示す。また、「仕様B(新仕様)」は、CLAバイトの上位4ビットが“X1XX”である場合に論理チャネル4〜論理チャネル19までをCLAバイトの下位4ビットで指定する。
このように、CLAバイトは、論理チャネルを指定する情報(論理チャネルの番号を示す情報)を含んでいる。
図3に示す例では、「仕様A(旧仕様)」は、「CLA値」が、“00h”(ここで“h”は、16進数(ヘキサデシマル)データを示す)である場合に、“共通コマンド”、且つ、“論理チャネル0”に対するコマンドを示す。また、「仕様A(旧仕様)」は、「CLA値」が、“80h”である場合に、“独自コマンド”、且つ、“論理チャネル0”に対するコマンドを示す。また、「仕様A(旧仕様)」は、「CLA値」が、“C0h”である場合に、“独自コマンド”、且つ、“論理チャネル0”に対するコマンドを示す。
また、「仕様B(新仕様)」は、「CLA値」が、“00h”である場合に、“共通コマンド”、且つ、“論理チャネル0”に対するコマンドを示す。また、「仕様B(新仕様)」は、「CLA値」が、“40h”である場合に、“共通コマンド”、且つ、“論理チャネル4”に対するコマンドを示す。また、「仕様B(新仕様)」は、「CLA値」が、“80h”である場合に、“独自コマンド”、且つ、“論理チャネル0”に対するコマンドを示す。また、「仕様B(新仕様)」は、「CLA値」が、“C0h”である場合に、“独自コマンド”、且つ、“論理チャネル4”に対するコマンドを示す。
図2の説明に戻り、識別フラグ情報記憶部11は、識別フラグ情報を記憶する記憶部であり、例えば、RAM8により構成されている。識別フラグ情報は、例えば、2ビットの情報であり、「仕様A(旧仕様)」である場合に“01”を示し、「仕様B(新仕様)」である場合に“10”を示す。
動作チャネル情報記憶部12は、現在動作している(開かれている)論理チャネルと、アプリケーションを識別するAIDとを関連付けて記憶する記憶部である。動作チャネル情報記憶部12は、例えば、RAM8により構成されている。
図4は、本実施形態の動作チャネル情報記憶部12が記憶するデータ例を示す図である。
この図において、動作チャネル情報記憶部12は、「チャネル番号」と、「ステータス」と、「アプリケーション名(ADFのAID)」とを関連付けて記憶する。ここで、「チャネル番号」は、論理チャネルの番号を示し、「ステータス」は、論理チャネルの状態を示している。なお、論理チャネルの状態は、“オープン”(開いている)、及び“クローズ”(閉じている)のいずれかの状態を示している。また、「アプリケーション名(ADFのAID)」は、論理チャネルに対応するアプリケーションDF(ADF:Application Dedicated File)を識別する識別情報(例えば、AID)である。
なお、本実施形態では、論理チャネルは、アプリケーションごとに開かれ、論理チャネル上ではADFが選択され、当該ADFに対応したアプリケーションが動作するものとして説明する。
図4に示す例では、「チャネル番号」の“0”〜“2”の「ステータス」が“オープン”であり、これらの論理チャネルが動作していることを示している。また、「チャネル番号」の“0”に対応する「アプリケーション名(ADFのAID)」が“アプリケーション1”であることを示している。また、「チャネル番号」の“2”に対応する「アプリケーション名(ADFのAID)」が“アプリケーション2”であることを示している。なお、「チャネル番号」の“1”に対応する「アプリケーション名(ADFのAID)」が“なし”であり、全アプリケーション共通のファイル(例えば、ATRファイルのEF(Elementary File)など)であることを示している。
再び、図2の説明に戻り、APデータ記憶部13は、例えば、EEPROM9により構成され、各種アプリケーションデータをファイルとして記憶する。
図5は、本実施形態のAPデータ記憶部13のファイル構成例を示す図である。
この図において、APデータ記憶部13は、MF(Master File)F0の下に、“アプリケーション1”、“アプリケーション2”、・・・“アプリケーション4”、・・・の各アプリケーションに対応するADF(アプリケーションDF)“ADF1”(F1)、“ADF2”(F2)、・・・“ADF4”(F4)、・・・が存在する階層構成になっている。このように、APデータ記憶部13は、各アプリケーションで利用するアプリケーションデータを階層構造のファイルとして記憶する。
再び、図2の説明に戻り、管理情報記憶部14は、例えば、EEPROM9により構成され、EEPROM9に記憶される。管理情報記憶部14は、MF、DF、EF、アプリケーションDF(ADF)などのファイルを管理する情報、ファイルへのアクセス権を管理する属性情報、及び各アプリケーションを管理する情報などを記憶する。管理情報記憶部14は、例えば、図6に示すように、各アプリケーションを管理する情報として、各アプリケーションを識別する識別情報(AID)と、CLAバイトの仕様とを関連付けて記憶する。
図6は、本実施形態の管理情報記憶部14が記憶するデータ例を示す図である。
この図において、管理情報記憶部14は、アプリケーションを管理する情報として、「アプリケーション名(ADFのAID)」と、「CLA仕様」とを関連付けて記憶する。
図6に示す例では、例えば、“アプリケーション1”は、「CLA仕様」が“仕様A”であることを示している。また、“アプリケーション5”は、「CLA仕様」が“仕様B”であることを示している。
再び、図2の説明に戻り、コマンド情報記憶部15は、例えば、ROM7又はEEPROM9により構成され、各コマンド処理に対応するCLAバイト、INSバイトなどを示すコマンドテーブル情報を記憶する。
通信部21は、例えば、通信I/F部4、CPU6、及びROM7に記憶されているプログラムにより実現され、コンタクト部3を介して、外部装置2との間でコマンド及びレスポンスの送受信を行う。なお、通信部21は、複数の論理チャネルで外部装置2と通信可能である。
ATR処理部22は、通信部21にリセット応答を出力させる処理を実行する。ATR処理部22は、外部装置2からコンタクト部3のリセット端子に、リセット信号が供給された場合に、例えば、ATRデータを記憶するATRファイルのEFからATRデータを取得し、通信部21から出力させる。
仕様選択部23(選択部の一例)は、例えば、CPU6、及びROM7に記憶されているプログラムにより実現され、CLAバイトの仕様を選択する。仕様選択部23は、論理チャネルを指定する情報を含むCLAバイトの仕様(例えば、「仕様A(旧仕様)」又は「仕様B(新仕様)」)を、ICカード1(自装置)が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する。なお、本実施形態では、この所定の情報には、複数の論理チャネルのうち、現在開かれている論理チャネルの最大番号を示す情報が含まれる。すなわち、仕様選択部23は、現在開かれている論理チャネルの最大番号を示す情報に基づいて、CLAバイトの仕様を選択する。ここで、論理チャネルの最大番号とは、論理チャネルの番号の最大値のことである。
例えば、仕様選択部23は、動作チャネル情報記憶部12が記憶する現在開かれている論理チャネルの最大番号を示す情報を取得する。仕様選択部23は、取得した論理チャネルの最大番号を示す情報が、“3”以下である場合に、「仕様A(旧仕様)」を示す“01”(01h)を識別フラグ情報として識別フラグ情報記憶部11に記憶させる。また、仕様選択部23は、取得した論理チャネルの最大番号を示す情報が、“4”以上である(“3”より大きい)場合に、「仕様B(新仕様)」を示す“10”(02h)を識別フラグ情報として識別フラグ情報記憶部11に記憶させる。
具体的に、図4に示す例では、仕様選択部23は、論理チャネルの最大番号を示す情報として、“2”を取得する。この場合、論理チャネルの最大番号を示す情報が“3”以下であるので、仕様選択部23は、「仕様A(旧仕様)」を示す“01”(01h)を識別フラグ情報として識別フラグ情報記憶部11に記憶させる。
コマンド処理部24(処理部の一例)は、例えば、CPU6、及びROM7に記憶されているプログラムにより実現され、各種コマンド処理を実行する。コマンド処理部24は、通信部21がCLAバイトを有するコマンドを受信した場合に、仕様選択部23が選択したCLAバイトの仕様に対応するコマンド処理を実行する。ここで、「CLAバイトの仕様に対応するコマンド処理」とは、CLAバイトの仕様により定められている、CLAバイトにより示されるコマンドの種別と、CLAバイトにより指定される論理チャネルの番号とに対応するコマンド処理のことである。
コマンド処理部24は、例えば、「仕様A(旧仕様)」によるCLAバイトの判定機能と、「仕様B(新仕様)」によるCLAバイトの判定機能とを有している。コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“01”である場合に、「仕様A(旧仕様)」によるCLAバイトの判定を行う。そして、コマンド処理部24は、正常なCLAバイトであると判定した場合に、コマンド情報記憶部15が記憶するコマンドテーブル情報に基づいて、「仕様A(旧仕様)」に対応するコマンド処理を実行する。また、コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“02”である場合に、「仕様B(新仕様)」によるCLAバイトの判定を行う。そして、コマンド処理部24は、正常なCLAバイトであると判定した場合に、コマンド情報記憶部15が記憶するコマンドテーブル情報に基づいて、「仕様B(新仕様)」に対応するコマンド処理を実行する。
コマンド処理部24が実行するコマンド処理には、各種アプリケーション用のコマンド処理、管理用コマンド処理、論理チャネルを開く又は閉じるなどの制御を行うコマンド処理などが含まれ、各コマンド処理に応じて、動作チャネル情報記憶部12、APデータ記憶部13、管理情報記憶部14、及びコマンド情報記憶部15が記憶する情報の追加、変更及び削除など処理が実行される。
また、コマンド処理部24は、各コマンド処理を実行した後に、状態バイトであるSW1バイト及びSW2バイトを、レスポンス応答として、通信部21に出力させる。
次に、図7を参照して、本実施形態によるICカード1の動作について説明する。
図7は、本実施形態のICカード1の動作の一例を示すフローチャートである。
この図に示すように、ICカード1は、まず、コマンド受信したか否かを判定する(ステップS101)。すなわち、ICカード1の通信部21が、コンタクト部3及び通信I/F部4を介して、外部装置2からコマンドを受信したか否かを判定する。通信部21は、コマンドを受信した場合(ステップS101:YES)に、処理をステップS102に進め、コマンドを受信していない場合(ステップS101:NO)に、ステップS101の処理に戻し、処理を繰り返す。
ステップS102において、ICカード1の仕様選択部23は、動作チャネル情報記憶部12が記憶する現在開かれている論理チャネルの最大番号を示す情報(最大番号情報)を取得する。ここで、例えば、動作チャネル情報記憶部12が、“論理チャネル0”と“論理チャネル4”とが開かれていることを示す情報を記憶している場合、仕様選択部23は、最大番号情報として、“4”を取得する。
次に、仕様選択部23は、最大番号が3より大きい(最大番号>3)か否かを判定する(ステップS103)。すなわち、仕様選択部23は、取得した最大番号情報が“3”より大きいか否かを判定する。仕様選択部23は、最大番号情報が“3”より大きい場合(ステップS103:YES)に、識別フラグ情報記憶部11に“10”を記憶させて、処理をステップS104に進める。また、仕様選択部23は、最大番号情報が“3”以下である場合(ステップS103:NO)に、識別フラグ情報記憶部11に“01”を記憶させて、処理をステップS105に進める。
ステップS104において、コマンド処理部24は、「仕様B(新仕様)」にてコマンド処理を実行する。すなわち、コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“02”である場合に、「仕様B(新仕様)」に対応するコマンド処理を実行する。ステップS104の処理後に、コマンド処理部24は、レスポンス応答を通信部21に対して、外部装置2宛に出力させて、処理をステップS101に戻す。
また、ステップS105において、コマンド処理部24は、「仕様A(旧仕様)」にてコマンド処理を実行する。すなわち、コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“01”である場合に、「仕様A(旧仕様)」に対応するコマンド処理を実行する。ステップS105の処理後に、コマンド処理部24は、レスポンス応答を通信部21に対して、外部装置2宛に出力させて、処理をステップS101に戻す。
以上説明したように、本実施形態によるICカード1は、通信部21と、仕様選択部23と、コマンド処理部24とを備えている。通信部21は、複数の論理チャネルで外部装置2と通信可能である。仕様選択部23は、コマンドの種別を示すCLAバイト(クラス情報の一例)であって、論理チャネルの番号を示す情報を含むCLAバイトの仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報(例えば、現在開かれている論理チャネルの最大番号)に基づいて選択する。コマンド処理部24は、複数のCLAバイトの仕様に対応するコマンド処理を実行可能であって、通信部21がCLAバイトを有するコマンドを受信した場合に、仕様選択部23が選択したCLAバイトの仕様に対応するコマンド処理を実行する。
これにより、本実施形態によるICカード1は、複数のCLAバイトの仕様を動的に切り替えて使用することができるため、複数のCLAバイト(クラス情報)の仕様に対して互換性を維持することができる。
また、本実施形態では、上述した所定の情報には、複数の論理チャネルのうち、現在開かれている論理チャネルの番号の最大値を示す情報(論理チャネルの最大番号)が含まれる。仕様選択部23は、チャネルの番号の最大値を示す情報に基づいて、CLAバイトの仕様を選択する。例えば、仕様選択部23は、論理チャネルの最大番号が所定の番号(例えば、“3”)より大きい場合に、「仕様B(新仕様)」を選択し、論理チャネルの最大番号が所定の番号(例えば、“3”)以下である場合に、「仕様A(旧仕様)」を選択する。
これにより、例えば、図3に示す「仕様A(旧仕様)」に対応したICカードシステム(外部装置2)に本実施形態のICカード1が使用された場合であっても、ICカード1は、「仕様A(旧仕様)」に対応したコマンド処理を実行することができる。また、「仕様B(新仕様)」に対応したICカードシステム(外部装置2)に本実施形態のICカード1が使用された場合であっても、ICカード1は、「仕様B(旧仕様)」に対応したコマンド処理を実行することができる。
ところで、上述した図3に示す「仕様A(旧仕様)」と「仕様B(新仕様)」とが混在する場合に、次の問題が生じることが考えられる。例えば、「仕様A(旧仕様)」に対応したICカードシステムに、「仕様B(新仕様)」に対応したICカードを使用し、ICカードシステムが、CLAバイトが“C0h”のコマンドを送信した場合を考える。この場合、ICカードシステムは、「仕様A(旧仕様)」の“独自コマンド”、且つ、“論理チャネル0”のコマンドを送信しているのに対して、「仕様B(新仕様)」に対応したICカードは、CLAバイトが“C0h”を“独自コマンド”、且つ、“論理チャネル4”と誤判定する問題が生じることがある。
また、例えば、「仕様B(新仕様)」に対応したICカードシステムに、「仕様A(旧仕様)」に対応したICカードを使用し、ICカードシステムが、CLAバイトが“C0h”のコマンドを送信した場合を考える。この場合、ICカードシステムは、「仕様B(新仕様)」の“独自コマンド”、且つ、“論理チャネル4”のコマンドを送信しているのに対して、「仕様A(旧仕様)」に対応したICカードは、CLAバイトが“C0h”を“独自コマンド”、且つ、“論理チャネル0”と誤判定する問題が生じることがある。
これに対して、本実施形態のICカード1は、現在開かれている論理チャネルの最大番号に基づいて、「仕様A(旧仕様)」と「仕様B(新仕様)」とを切り替えて使用する。そのため、例えば、「仕様A(旧仕様)」に対応したICカードシステム(外部装置2)に、本実施形態のICカード1が使用された場合には、ICカード1は、「仕様A(旧仕様)」に対応したコマンド処理を実行する。つまり、ICカード1は、「仕様A(旧仕様)」に対応したICカードシステムから、CLAバイトが“C0h”のコマンドを受信した場合に、“論理チャネル0”として正常にコマンド処理を実行することができる。このように、本実施形態のICカード1は、一部のCLAバイトの値について下位互換性が失われることを防ぐことができる。
また、例えば、図3に示す「仕様B(新仕様)」に対応したICカードシステム(外部装置2)に本実施形態のICカード1が使用された場合には、ICカード1は、「仕様B(新仕様)」に対応したコマンド処理を実行する。つまり、ICカード1は、「仕様B(新仕様)」に対応したICカードシステムから、CLAバイトが“C0h”のコマンドを受信した場合に、“論理チャネル4”として正常にコマンド処理を実行することができる。
このように、本実施形態のICカード1は、「仕様A(旧仕様)」に対応したシステムと、「仕様B(新仕様)」に対応したシステムとの両方に対応させることができる。
(第2の実施形態)
次に、図面を参照して、第2の実施形態によるICカード1について説明する。
なお、本実施形態によるICカード1の構成は、図1及び図2に示す第1の実施形態と同様であるので、ここではその説明を省略する。
本実施形態では、仕様選択部23は、リセット判定部5が判定したウォームリセットであるか否かの判定結果に基づいて、CLAバイトの仕様を選択する場合の一例について説明する。
図8は、本実施形態のICカード1の動作の一例を示すフローチャートである。
この図に示すように、ICカード1は、まず、図7に示すステップS101の処理と同様に、コマンド受信したか否かを判定する(ステップS201)。通信部21は、コマンドを受信した場合(ステップS201:YES)に、処理をステップS202に進め、コマンドを受信していない場合(ステップS201:NO)に、ステップS201の処理に戻し、処理を繰り返す。
ステップS202において、仕様選択部23は、リセット判定部5からリセット情報を取得する。すなわち、仕様選択部23は、リセット判定部5から電源電圧の供給が維持された状態で自装置にリセット信号が再供給されたか否か(ウォームリセットであるか否か)の判定結果であるリセット情報を取得する。
次に、仕様選択部23は、ウォームリセット後であるか否かを判定する(ステップS203)。すなわち、仕様選択部23は、取得したリセット情報に基づいて、ウォームリセット後であるか否かを判定する。仕様選択部23は、ウォームリセット後である場合(ステップS203:YES)に、識別フラグ情報記憶部11に“01”を記憶させて、処理をステップS205に進める。また、仕様選択部23は、ウォームリセット後でない(コールドリセット後である)場合(ステップS203:NO)に、識別フラグ情報記憶部11に“10”を記憶させて、処理をステップS204に進める。
ステップS204において、コマンド処理部24は、「仕様B(新仕様)」にてコマンド処理を実行する。すなわち、コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“02”である場合に、「仕様B(新仕様)」に対応するコマンド処理を実行する。ステップS204の処理後に、コマンド処理部24は、レスポンス応答を通信部21に対して、外部装置2宛に出力させて、処理をステップS201に戻す。
また、ステップS205において、コマンド処理部24は、「仕様A(旧仕様)」にてコマンド処理を実行する。すなわち、コマンド処理部24は、識別フラグ情報記憶部11が記憶する識別フラグ情報が、“01”である場合に、「仕様A(旧仕様)」に対応するコマンド処理を実行する。ステップS205の処理後に、コマンド処理部24は、レスポンス応答を通信部21に対して、外部装置2宛に出力させて、処理をステップS201に戻す。
なお、図8に示す例では、仕様選択部23は、リセット判定部5からリセット情報を取得して、ウォームリセット後であるか否かを判定する例を説明したが、これに限定されるものではない。例えば、仕様選択部23は、識別フラグ情報記憶部11が記憶する識別フラグ情報に基づいて、ウォームリセット後であるか否かを判定してもよい。また、この場合には、ATR処理部22が、ATR処理において、ウォームリセット後であるか否かに応じて、識別フラグ情報を識別フラグ情報記憶部11に記憶させる。また、ATR処理部22は、論理チャネルの最大数を示す情報(最大論理チャネル数)を含むATRを出力させて、コールドリセットとウォームリセットとのいずれかであるかに応じて、この論理チャネルの最大数を示す情報を変更してもよい。
次に、図9を参照して、仕様選択部23は、識別フラグ情報記憶部11が記憶する識別フラグ情報に基づいて、ウォームリセット後であるか否かを判定する場合の一例について説明する。
図9は、本実施形態のICカード1の動作の別の一例を示すフローチャートである。
この図において、ICカード1は、リセット信号が供給されると、まず、リセット判定部5からリセット情報を取得する(ステップS301)。すなわち、ICカード1のATR処理部22は、リセット判定部5からリセット情報を取得する。
次に、ATR処理部22は、供給されたリセット信号がウォームリセットであるか否かを判定する(ステップS302)。ATR処理部22は、取得したリセット情報に基づいて、ウォームリセットであるか否かを判定し、ウォームリセットである場合(ステップS302:YES)に、処理をステップS303に進める。また、ATR処理部22は、ウォームリセットでない(コールドリセットである)場合(ステップS302:NO)に、処理をステップS305に進める。
ステップS303において、ATR処理部22は、最大論理チャネル数を4以下として、ATRを出力する。すなわち、ATR処理部22は、ATRのヒストリカルバイトに、最大論理チャネル数を4以下とする情報を付加し、ATRを通信部21に出力させる。
次に、ATR処理部22は、識別フラグ情報を“01”にする(ステップS304)。すなわち、ATR処理部22は、識別フラグ情報記憶部11に、「仕様A(旧仕様)」に対応する“01”を記憶させ、処理をステップS307に進める。
また、ステップS305において、ATR処理部22は、最大論理チャネル数を5以上として、ATRを出力する。すなわち、ATR処理部22は、ATRのヒストリカルバイトに、最大論理チャネル数を5以上とする情報を付加し、ATRを通信部21に出力させる。
次に、ATR処理部22は、識別フラグ情報を“10”にする(ステップS306)。すなわち、ATR処理部22は、識別フラグ情報記憶部11に、「仕様B(新仕様)」に対応する“10”を記憶させる。
ステップS307において、通信部21は、コマンド受信したか否かを判定する(。通信部21は、コマンドを受信した場合(ステップS307:YES)に、処理をステップS308に進め、コマンドを受信していない場合(ステップS307:NO)に、ステップS307の処理に戻し、処理を繰り返す。
ステップS308において、仕様選択部23は、識別フラグ情報記憶部11から識別フラグ情報を取得する。
次に、仕様選択部23は、取得した識別フラグ情報に基づいて、ウォームリセット後であるか否かを判定する(ステップS309)。すなわち、仕様選択部23は、取得した識別フラグ情報が“01”である場合に、ウォームリセット後であると判定し、取得した識別フラグ情報が“10”である場合に、ウォームリセット後でない(コールドリセット後である)と判定する。仕様選択部23は、ウォームリセット後である場合(ステップS309:YES)に、処理をステップS311に進める。また、仕様選択部23は、ウォームリセット後でない(コールドリセット後である)場合(ステップS309:NO)に、処理をステップS310に進める。
続く、ステップS310及びステップS311の処理は、図8に示すステップS204及びステップS205の処理と同様であるので、ここではその説明を省略する。ステップS310及びステップS311の処理後に、コマンド処理部24は、処理をステップS307に戻す。
以上説明したように、本実施形態によるICカード1は、電源電圧の供給が維持された状態で自装置にリセット信号が再供給されたか否かを判定するリセット判定部5を備えている。また、上述した所定の情報には、リセット判定部5が判定した判定結果を示す情報が含まれる。仕様選択部23は、リセット判定部5が判定した判定結果を示す情報に基づいて、CLAバイトの仕様を選択する。
これにより、本実施形態によるICカード1は、第1の実施形態と同様に、複数のCLAバイトの仕様を動的に切り替えて使用することができるため、複数のCLAバイト(クラス情報)の仕様に対して互換性を維持することができる。
また、本実施形態では、ATR処理部22が、論理チャネルを指定する情報を含むCLAバイトの複数の仕様のうちのいずれかを示す情報(例えば、最大論理チャネル数)を含むATRを外部装置2宛に出力させる。
これにより、外部装置2は、複数のCLAバイトの仕様のうちのいずれかに、現在設定されているのかを確認することができる。
なお、本実施形態では、仕様選択部23は、コールドリセット後に「仕様B(新仕様)」を選択し、ウォームリセット後に「仕様A(旧仕様)」を選択する例を説明したが、これに限定されるものではない。例えば、仕様選択部23は、コールドリセット後に「仕様A(旧仕様)」を選択し、ウォームリセット後に「仕様B(新仕様)」を選択してもよい。また、仕様選択部23は、ウォームリセットを繰り返し行うことにより、「仕様A(旧仕様)」と、「仕様B(新仕様)」とを交互に選択する(トグルに選択する)ように構成してもよい。
(第3の実施形態)
次に、図面を参照して、第3の実施形態によるICカード1について説明する。
なお、本実施形態によるICカード1の構成は、図1及び図2に示す第1の実施形態と同様であるので、ここではその説明を省略する。
本実施形態では、仕様選択部23が、論理チャネルが現在開かれているアプリケーションに対応するCLAバイトの仕様を示す仕様情報に基づいて、CLAバイトの仕様を選択する場合の一例について説明する。
図10は、第3の実施形態の動作チャネル情報記憶部12が記憶するデータ例を示す図である。
この図に示すように、本実施形態による動作チャネル情報記憶部12は、「チャネル番号」と、「ステータス」と、「アプリケーション名(ADFのAID)」と、「CLA仕様」とを関連付けて記憶する。ここで、「CLA仕様」は、上述した図6に示すような管理情報記憶部14が記憶する情報に基づいて、「アプリケーション名(ADFのAID)」関連付けて記憶されている。「CLA仕様」は、論理チャネルが現在開かれているアプリケーション(現在動作しているアプリケーション)に対応するCLAバイトの仕様を示す仕様情報である。
また、本実施形態の仕様選択部23は、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)に基づいて、CLAバイトの仕様を選択する。仕様選択部23は、例えば、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)が全て“仕様A”である場合に、「仕様A(旧仕様)」を選択する。また、仕様選択部23は、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)が全て“仕様A”でない場合(1つでも“仕様B”がある場合)に、「仕様B(新仕様)」を選択する。
図11は、本実施形態のICカード1の動作の一例を示すフローチャートである。
この図に示すように、ICカード1は、まず、図7に示すステップS101の処理と同様に、コマンド受信したか否かを判定する(ステップS401)。通信部21は、コマンドを受信した場合(ステップS401:YES)に、処理をステップS402に進め、コマンドを受信していない場合(ステップS401:NO)に、ステップS401の処理に戻し、処理を繰り返す。
ステップS402において、仕様選択部23は、論理チャネルが現在開かれているアプリケーション(現在動作しているアプリケーション)に対応する仕様情報を取得する。すなわち、仕様選択部23は、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)を取得する。
次に、仕様選択部23は、現在動作しているアプリケーションが全て「仕様A(旧仕様)」であるか否かを判定する(ステップS403)。すなわち、仕様選択部23は、取得した仕様情報に基づいて、現在動作しているアプリケーションが全て「仕様A(旧仕様)」であるか否かを判定する。仕様選択部23は、現在動作しているアプリケーションが全て「仕様A(旧仕様)」である場合(ステップS403:YES)に、識別フラグ情報記憶部11に“01”を記憶させて、処理をステップS405に進める。また、仕様選択部23は、ウォームリセット後でない(コールドリセット後である)場合(ステップS403:NO)に、識別フラグ情報記憶部11に“10”を記憶させて、処理をステップS404に進める。
続く、ステップS404及びステップS405の処理は、図8に示すステップS204及びステップS205の処理と同様であるので、ここではその説明を省略する。ステップS404及びステップS405の処理後に、コマンド処理部24は、処理をステップS401に戻す。
以上説明したように、本実施形態では、所定の情報には、チャネルが現在開かれているアプリケーションに対応するCLAバイトの仕様を示す仕様情報が含まれる。仕様選択部23は、この仕様情報に基づいて、CLAバイトの仕様を選択する。仕様選択部23は、例えば、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)が全て“仕様A”である場合に、「仕様A(旧仕様)」を選択する。また、仕様選択部23は、動作チャネル情報記憶部12が記憶する「CLA仕様」(仕様情報)が全て“仕様A”でない場合(1つでも“仕様B”がある場合)に、「仕様B(新仕様)」を選択する。
これにより、本実施形態によるICカード1は、第1及び第2の実施形態と同様に、複数のCLAバイトの仕様を動的に切り替えて使用することができるため、複数のCLAバイト(クラス情報)の仕様に対して互換性を維持することができる。
(第4の実施形態)
次に、図面を参照して、第4の実施形態によるICカード1について説明する。
なお、本実施形態によるICカード1の構成は、図1及び図2に示す第1の実施形態と同様であるので、ここではその説明を省略する。
本実施形態では、コマンド処理部24が、各アプリケーションにおけるコマンド処理の対応状態に基づいて、コマンド処理を実行する場合の一例について説明する。
図12は、第4の実施形態のコマンド情報記憶部15の構成例を示す図である。
この図に示すように、本実施形態のコマンド情報記憶部15は、AP1コマンド情報151、AP2コマンド情報152、・・・を記憶している。
AP1コマンド情報151は、“アプリケーション1”がサポートするコマンドテーブル情報であり、例えば、図13に示すような情報である。ここで、コマンド情報記憶部15は、AP1コマンド情報151として、図13に示すように、サポートする「CLA値」と、「INS値」とを関連付けて記憶する。
また、AP2コマンド情報152は、“アプリケーション2”がサポートするコマンドテーブル情報である。なお、AP2コマンド情報152は、AP1コマンド情報151と同様に、図13に示すような情報である。
このように、コマンド情報記憶部15は、各アプリケーションがサポートするコマンド情報を記憶する。なお、コマンド情報記憶部15は、各アプリケーションがICカード1に追加された際に、各アプリケーションがサポートするコマンドテーブル情報を追加して記憶する。
また、本実施形態の管理情報記憶部14は、図14に示すように、CLAバイトの仕様と、CLAバイトの値と、対象アプリケーションとを関連付けたAP対応情報を記憶している。
図14は、本実施形態の管理情報記憶部14が記憶するAP対応情報のデータ例を示す図である。
この図に示すように、管理情報記憶部14は、「CLA仕様」と、「CLA値」と、「アプリケーション名(ADFのAID)」とを関連付けたAP対応情報を記憶している。
また、本実施形態のコマンド処理部24は、管理情報記憶部14が記憶するAP対応情報に基づいて、「仕様A(旧仕様)」によるCLAバイトに判定を行い、対応する対象アプリケーションを取得する。また、コマンド処理部24は、管理情報記憶部14が記憶するAP対応情報に基づいて、「仕様B(新仕様)」によるCLAバイトに判定を行い、対応する対象アプリケーションを取得する。なお、コマンド処理部24は、対応する対象アプリケーションが複数ある場合には、動作チャネル情報記憶部12が記憶する情報に基づいて、複数の対象アプリケーションのうち、CLAバイトで指定された論理チャネルに対応する対象アプリケーションを取得する。また、コマンド処理部24は、対応する対象アプリケーションが存在しない場合には、対象アプリケーションを取得しない。
このように、コマンド処理部24は、「仕様A(旧仕様)」及び「仕様B(新仕様)」の両方の方式により、CLAバイトを判定して、各々のCLAバイトの仕様について、対象アプリケーションを取得する。
また、コマンド処理部24は、取得した対象アプリケーションが1つである場合に、対象アプリケーションにてコマンド処理を実行する。ここで、取得した対象アプリケーションが1つである場合には、「仕様A(旧仕様)」及び「仕様B(新仕様)」の両方において、コマンド処理部24が同一の対象アプリケーションを取得した場合と、「仕様A(旧仕様)」及び「仕様B(新仕様)」のうちのいずれか一方において、コマンド処理部24が対象アプリケーションを取得した場合が含まれる。
また、コマンド処理部24は、取得した対象アプリケーションが複数ある場合に、コマンド情報記憶部15が記憶する各対象アプリケーションのコマンドテーブル情報に基づいて、各対象アプリケーションにおいて、受信したコマンドがサポートされているか否かを判定する。ここで、取得した対象アプリケーションが複数ある場合とは、「仕様A(旧仕様)」及び「仕様B(新仕様)」のそれぞれにおいて、コマンド処理部24が異なる対象アプリケーションを取得された場合である。
また、コマンド処理部24は、複数の対象アプリケーションのうちの1つにおいて、受信したコマンドがサポートされている場合に、当該対象アプリケーションにてコマンド処理を実行する。また、コマンド処理部24は、複数の対象アプリケーションにおいて、受信したコマンドがサポートされている場合、又は、複数の対象アプリケーションのうちの全てにおいて受信したコマンドがサポートされていない場合に、上述した仕様選択部23が選択した仕様に対応するコマンド処理を実行する。この場合、コマンド処理部24は、例えば、上述した第1〜第3の実施形態による仕様選択部23の選択方法により選択されたCLAバイトの仕様に対応するコマンド処理を実行する。
次に、図15を参照して、本実施形態によるICカード1の動作について説明する。
図15は、本実施形態のICカード1の動作の一例を示すフローチャートである。
この図に示すように、ICカード1は、まず、図7に示すステップS101の処理と同様に、コマンド受信したか否かを判定する(ステップS501)。通信部21は、コマンドを受信した場合(ステップS501:YES)に、処理をステップS502に進め、コマンドを受信していない場合(ステップS501:NO)に、ステップS501の処理に戻し、処理を繰り返す。
ステップS502において、コマンド処理部24は、「仕様A(旧仕様)」にてCLAバイトを判定し、対象アプリケーションを取得する。すなわち、コマンド処理部24は、管理情報記憶部14が記憶するAP対応情報に基づいて、「仕様A(旧仕様)」によるCLAバイトに判定を行い、対応する対象アプリケーションを取得する。
次に、コマンド処理部24は、「仕様B(新仕様)」にてCLAバイトを判定し、対象アプリケーションを取得する(ステップS503)。すなわち、コマンド処理部24は、管理情報記憶部14が記憶するAP対応情報に基づいて、「仕様B(新仕様)」によるCLAバイトに判定を行い、対応する対象アプリケーションを取得する。
次に、コマンド処理部24は、取得した対象アプリケーションが1つであるか否かを判定する(ステップS504)。コマンド処理部24は、取得した対象アプリケーションが1つである場合(ステップS504:YES)に、処理をステップS505に進め、対象アプリケーションにてコマンド処理を実行する。
また、コマンド処理部24は、取得した対象アプリケーションが1つでない(「仕様A(旧仕様)」と「仕様B(新仕様)」とで異なる対象アプリケーションを取得した)場合(ステップS504:NO)に、処理をステップS506に進める。
ステップS506において、コマンド処理部24は、各対象アプリケーションのコマンドサポート状態を確認する。すなわち、コマンド処理部24は、コマンド情報記憶部15が記憶する対象アプリケーションがサポートするコマンド情報に、受信したコマンドに一致する「CLA値」と「INS値」との組があるか否かを確認する。
次に、コマンド処理部24は、コマンドのサポートが確認された対象アプリケーションが1つであるか否かを判定する(ステップS507)。すなわち、コマンド処理部24は、「仕様A(旧仕様)」に対応する対象アプリケーションと「仕様B(新仕様)」に対応する対象アプリケーションとのうちの一方で、受信したコマンドがサポートされているか否かを判定する。コマンド処理部24は、コマンドのサポートが確認された対象アプリケーションが1つである場合(ステップS507:YES)に、処理をステップS509に進め、対象アプリケーションにてコマンド処理を実行する。
また、コマンド処理部24は、コマンドのサポートが確認された対象アプリケーションが1つでない場合(ステップS507:NO)に、処理をステップS508に進める。ここで、コマンドのサポートが確認された対象アプリケーションが1つでない場合には、2つの対象アプリケーションでコマンドのサポートが確認された場合と、コマンドのサポートが確認された対象アプリケーションが1つもない(0(ゼロ)である)場合とが含まれる。
ステップS508において、コマンド処理部24は、仕様選択部23にCLAバイトの仕様を選択させ、仕様選択部23が選択したCLAバイトの仕様に対応するコマンド処理を実行する。なお、仕様選択部23によるCLAバイトの仕様の選択処理は、第1〜第3の実施形態における処理のうちの1つ又は複数の組合せが適用できる。
ステップS505、ステップS508、及びステップS509の処理後に、コマンド処理部24は、処理をステップS501に戻す。
以上説明したように、本実施形態では、CLAバイトの仕様には、「仕様A(旧仕様)」(第1の仕様の一例)と、「仕様A(旧仕様)」と異なる「仕様B(新仕様)」(第2の仕様の一例)とが含まれる。コマンド処理部24は、受信したコマンドが有するCLAバイトに対応するコマンド処理が、「仕様A(旧仕様)」に対応する対象アプリケーション及び「仕様B」に対応する対象アプリケーションの両方に存在する場合、又は、「仕様A(旧仕様)」に対応する対象アプリケーション及び「仕様B(新仕様)」に対応する対象アプリケーションのいずれにも存在しない場合に、仕様選択部23が選択したCLAバイトの仕様に対応するコマンド処理を実行する。また、コマンド処理部24は、コマンド処理が、「仕様A(旧仕様)」に対応する対象アプリケーション及び「仕様B(新仕様)」に対応する対象アプリケーションのいずれか1つに存在する場合、又は対象アプリケーションが1つである場合に、対象アプリケーションに対応するコマンド処理を実行する。
これにより、本実施形態によるICカード1は、対象アプリケーションにおいて、受信したコマンドのサポート状態を確認した上で、コマンド処理を実行するので、効率よくコマンド処理を実行することができる。例えば、本実施形態によるICカード1では、受信したコマンドが1つの対象アプリケーションにおいてサポートされている場合には、仕様選択部23を利用せずにCLAバイトの異なる仕様に対して互換性を維持して、コマンド処理を実行することができる。
(第5の実施形態)
次に、図面を参照して、第5の実施形態によるICカード1aについて説明する。
本実施形態では、上述した識別フラグ情報(指定情報の一例)を変更する仕様変更コマンド処理を設けて、仕様選択部23が、外部装置2によって変更された識別フラグ情報に基づいて、CLAバイトの仕様を選択する場合の一例について説明する。
なお、本実施形態によるICカード1aのハードウェア構成は、図1に示す第1の実施形態と同様であるので、ここではその説明を省略する。
図16は、第5の実施形態のICカード1aの機能構成例を示すブロック図である。
この図において、ICカード1aは、識別フラグ情報記憶部11と、動作チャネル情報記憶部12と、APデータ記憶部13と、管理情報記憶部14と、コマンド情報記憶部15と、リセット判定部5と、通信部21と、ATR処理部22と、仕様選択部23と、コマンド処理部24aとを備えている。
ここで、図16に示される各部は、図1に示されるハードウェアを用いて実現される。
また、図16において、図2に示す機能構成と同一の構成については同一の符号を付し、その説明を省略する。
本実施形態では、所定の情報には、CLAバイトの仕様を指定する指定情報であって、外部装置2から変更可能な識別フラグ情報が含まれる。
また、本実施形態の仕様選択部23は、識別フラグ情報記憶部11が記憶する識別フラグ情報に基づいて、CLAバイトの仕様を選択する。例えば、仕様選択部23は、識別フラグ情報が“01”である場合に、CLAバイトの仕様を「仕様A(旧仕様)」であると判定する。また、仕様選択部23は、識別フラグ情報が“10”である場合に、CLAバイトの仕様を「仕様B(新仕様)」であると判定する。また、仕様選択部23は、識別フラグ情報が“00”である場合に、CLAバイトの仕様が指定されていないと判定する。
また、コマンド処理部24aは、少なくとも仕様変更コマンド処理部241を備え、外部装置2から通信部21を介して受信した仕様変更コマンド(変更要求の一例)に応じて、識別フラグ情報を変更する。また、コマンド処理部24aは、仕様選択部23がCLAバイトの仕様を「仕様A(旧仕様)」であると判定した場合に、「仕様A(旧仕様)」に対応するコマンド処理を実行する。また、コマンド処理部24aは、仕様選択部23がCLAバイトの仕様を「仕様B(新仕様)」であると判定した場合に、「仕様B(新仕様)」に対応するコマンド処理を実行する。また、コマンド処理部24aは、仕様選択部23がCLAバイトの仕様が指定されていないと判定した場合に、ROM7又はEEPROM9が記憶するプログラムにより予め定められた仕様(「仕様A(旧仕様)」及び「仕様B(新仕様)」のうちのいずれか一方)に対応するコマンド処理を実行する。
仕様変更コマンド処理部241は、識別フラグ情報記憶部11が記憶する識別フラグ情報を変更する仕様変更コマンドのコマンド処理を実行する。ここで、仕様変更コマンドは、例えば、CLAバイトが“80h”、INSバイトが“02h”、パラメータバイト(P1)が“00h”、及びパラメータバイト(P2)が“01h”又は“02h”により構成される。なお、仕様変更コマンド処理部241は、パラメータバイト(P2)が“01h”である仕様変更コマンドをICカード1aが受信した場合に、識別フラグ情報記憶部11が記憶する識別フラグ情報に“01”を記憶させる。また、仕様変更コマンド処理部241は、パラメータバイト(P2)が“02h”である仕様変更コマンドをICカード1aが受信した場合に、識別フラグ情報記憶部11が記憶する識別フラグ情報に“10”を記憶させる。
次に、図17を参照して、本実施形態によるICカード1aの動作について説明する。
図17は、本実施形態のICカード1aの動作の一例を示すフローチャートである。
この図に示すように、ICカード1aは、まず、図7に示すステップS101の処理と同様に、コマンド受信したか否かを判定する(ステップS601)。通信部21は、コマンドを受信した場合(ステップS601:YES)に、処理をステップS602に進め、コマンドを受信していない場合(ステップS601:NO)に、ステップS601の処理に戻し、処理を繰り返す。
ステップS602において、コマンド処理部24aは、受信したコマンドが仕様変更コマンドであるか否かを判定する。コマンド処理部24aは、受信したコマンドが仕様変更コマンドである場合(ステップS602:YES)に、処理をステップS603に進める。また、コマンド処理部24aは、受信したコマンドが仕様変更コマンドでない場合(ステップS602:NO)に、処理をステップS606に進める。
ステップS603において、コマンド処理部24aの仕様変更コマンド処理部241は、パラメータバイト(P1、P2)を判定する。すなわち、仕様変更コマンド処理部241は、パラメータバイト(P1)が“00h”であり、パラメータバイト(P1)が“01h”又は“02h”であることを確認する。
次に、仕様変更コマンド処理部241は、識別フラグ情報を変更する(ステップS604)。すなわち、仕様変更コマンド処理部241は、パラメータバイト(P2)が“01h”である場合に、識別フラグ情報記憶部11が記憶する識別フラグ情報に“01”を記憶させる。また、仕様変更コマンド処理部241は、パラメータバイト(P2)が“02h”である場合に、識別フラグ情報記憶部11が記憶する識別フラグ情報に“10”を記憶させる。
次に、仕様変更コマンド処理部241は、仕様変更コマンドに対するレスポンス応答を外部装置2宛に送信する(ステップS605)。ここで、仕様変更コマンド処理部241は、受信した仕様変更コマンドに応じて、状態バイト(SW1バイト及びSW2バイト)を含むレスポンス応答を出力する。ステップS605の処理後に、仕様変更コマンド処理部241は、処理をステップS601に戻す。
また、ステップS606において、仕様選択部23は、識別フラグ情報が設定されているか否かを判定する。すなわち、仕様選択部23は、識別フラグ情報が“01”又は“10”である場合に、識別フラグ情報が設定されていると判定する。また、仕様選択部23は、識別フラグ情報が“00”である場合に、識別フラグ情報が設定されていないと判定する。仕様選択部23は、識別フラグ情報が設定されているかと判定した場合(ステップS606:YES)に、処理をステップS607に進める。また、仕様選択部23は、識別フラグ情報が設定されていないと判定した場合(ステップS606:NO)に、処理をステップS608に進める。
ステップS607において、コマンド処理部24aは、識別フラグ情報により指定される仕様にてCLAバイトを判定する。すなわち、仕様選択部23が、識別フラグ情報に基づいて、「仕様A(旧仕様)」及び「仕様B(新仕様)」のうちのいずれかであるかを選択し、コマンド処理部24aは、仕様選択部23が選択したCLAバイトの仕様により、受信したコマンドのCLAバイトを判定する。ステップS607の処理後に、コマンド処理部24aは、処理をステップS609に進める。
また、ステップS608において、コマンド処理部24aは、標準の方式にてCLAバイトを判定する。すなわち、コマンド処理部24aは、ROM7又はEEPROM9が記憶するプログラムにより予め定められた仕様により受信したコマンドのCLAバイトを判定する。
ステップS609において、コマンド処理部24aは、指定された論理チャネルで対象アプリケーションが選択されているか否かを判定する。コマンド処理部24aは、動作チャネル情報記憶部12が記憶する情報に基づいて、受信したコマンドが指定する論理チャネルに関連付けられている「ステータス」が“オープン”であるか否かを判定する。また、コマンド処理部24aは、動作チャネル情報記憶部12が記憶する情報に基づいて、受信したコマンドが指定する論理チャネルに関連付けられている対象アプリケーション(AID)が存在するか否かを判定する。コマンド処理部24aは、この論理チャネルに関連付けられている「ステータス」が“オープン”であるか否か及び対象アプリケーション(AID)が存在するか否かによって、指定された論理チャネルで対象アプリケーションが選択されているか否かを判定する。例えば、コマンド処理部24aは、論理チャネルに関連付けられている「ステータス」が“オープン”であり、対象アプリケーション(AID)が存在する場合に、指定された論理チャネルで対象アプリケーションが選択されていると判定する。また、コマンド処理部24aは、論理チャネルに関連付けられている「ステータス」が“オープン”でない、又は対象アプリケーション(AID)が存在しない場合に、指定された論理チャネルで対象アプリケーションが選択されていないと判定する。
コマンド処理部24aは、論理チャネルで対象アプリケーションが選択されている場合(ステップS609:YES)に、処理をステップS610に進め、対象アプリケーションによりコマンド処理を実行する。なお、コマンド処理部24aは、コマンド処理を実行した後、状態バイト(SW1バイト及びSW2バイト)を含むレスポンス応答を送信する処理を実行する。
また、コマンド処理部24aは、論理チャネルで対象アプリケーションが選択されていない場合(ステップS609:NO)に、処理をステップS611に進め、エラー応答の送信処理を実行する。
なお、ステップS610及びステップS611の処理後に、コマンド処理部24aは、処理をステップS601に戻す。
以上説明したように、本実施形態では、所定の情報には、CLAバイトの仕様を指定する識別フラグ情報(指定情報)であって、外部装置2から変更可能な識別フラグ情報が含まれる。仕様選択部23は、識別フラグ情報に基づいて、CLAバイトの仕様を選択する。そして、コマンド処理部24aは、外部装置2から通信部21を介して受信した変更要求(例えば、仕様変更コマンド)に応じて、識別フラグ情報を変更するとともに、通信部21がコマンドを受信した場合に、仕様選択部23が選択したCLAバイトの仕様に対応するコマンド処理を実行する。
これにより、本実施形態によるICカード1aは、外部装置2からの変更要求(例えば、仕様変更コマンド)によりCLAバイトの仕様を動的に変更することができる。よって、本実施形態によるICカード1aは、第1〜第3の実施形態と同様に、複数のCLAバイトの仕様を動的に切り替えて使用することができるため、複数のCLAバイト(クラス情報)の仕様に対して互換性を維持することができる。
また、専用のコマンドである仕様変更コマンドによって、CLAバイトの仕様を切り替えるので、本実施形態によるICカード1aは、任意のタイミングで異なるCLAバイトの仕様を動的に切り替えることができる。
なお、上述した実施形態では、変更要求の一例として、仕様変更コマンドによりCLAバイトの仕様を変更する例を説明したが、これに限定されるものではない。例えば、変更要求は、ATRの出力後に実行されるPPS(Protocol and Parameters Selection)交換を利用してもよい。
また、上記の各実施形態において、各実施形態を単独で実施する場合の例を説明したが、各実施形態を組み合わせて実施してもよい。
また、上記の各実施形態において、ICカード1(1a)は、アプリケーションごとに論理チャネルを開き、論理チャネル上ではADFが選択され、当該ADFに対応したアプリケーションが動作する形態としたが、これに限定されるものではない。例えば、論理チャネル上で選択されるファイルは、ADFに限定されず、MF、DF、及びEFなどであってもよい。また、この場合には、各ファイルに関連付けられた機能単位において動作するコマンド群(コマンドテーブル)が存在し、コマンド処理部24(24a)は、受信したコマンドがコマンド群の中に存在する場合にコマンド処理を実行し、存在しない場合にエラー終了をする。
また、上記の各実施形態において、携帯可能電子装置の一例として、ICカード1(1a)である場合の例を説明したが、携帯可能電子装置は、ICタグ、携帯電話などに使用されるSIM(Subscriber Identity Module)カードなどの他の携帯可能な電子装置であってもよい。
また、上記の各実施形態において、ICカード1(1a)は、EEPROM9を備える構成としたが、これに限定されるものではない。例えば、ICカード1(1a)は、EEPROM9の代わりに、フラッシュEEPROM、FeRAM(Ferroelectric Random Access Memory:強誘電体メモリ)などを備えてもよい。
また、上記の各実施形態において、ICチップ100は、1チップで構成される例を説明したが、これに限定されるものではなく、複数のLSIチップ(半導体装置)によって構成されてもよい。
また、上記の各実施形態において、CLAバイトの仕様は、「仕様A(旧仕様)」と「仕様B(新仕様)」との2つの仕様が共存する場合に適用する例を説明したが、2つ以上の仕様が共存する場合に適用してもよい。
以上説明した少なくともひとつの実施形態によれば、論理チャネルを指定する情報を含むCLAバイトの仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する仕様選択部23を持つことにより、複数のCLAバイト(クラス情報)の仕様に対して互換性を維持することができる。
なお、実施形態におけるICカード1(1a)が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述したICカード1(1a)が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、インターネットやWAN、LAN、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、CD−ROM等の非一過性の記録媒体であってもよい。
また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部又は外部に設けられた記録媒体も含まれる。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後にICカード1(1a)が備える各構成で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1,1a…ICカード、2…外部装置、3‥コンタクト部、4…通信I/F部、5…リセット判定部、6…CPU、7…ROM、8…RAM、9…EEPROM、11…識別フラグ情報記憶部、12…動作チャネル情報記憶部、13…APデータ記憶部、14…管理情報記憶部、15…コマンド情報記憶部、21…通信部、22…ATR処理部、23…仕様選択部、24,24a…コマンド処理部、100…ICチップ、241…仕様変更コマンド処理部

Claims (6)

  1. 複数のチャネルで外部装置と通信可能な通信部と、
    コマンドの種別を示すクラス情報であって、前記チャネルの番号を示す情報を含むクラス情報の仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する選択部と、
    複数の前記クラス情報の仕様に対応するコマンド処理を実行可能であって、前記通信部が前記クラス情報を有するコマンドを受信した場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する処理部と、
    を備え
    前記所定の情報には、前記複数のチャネルのうち、現在開かれている前記チャネルの番号の最大値を示す情報が含まれ、
    前記選択部は、前記チャネルの番号の最大値を示す情報に基づいて、前記クラス情報の仕様を選択する
    帯可能電子装置。
  2. 複数のチャネルで外部装置と通信可能な通信部と、
    コマンドの種別を示すクラス情報であって、前記チャネルの番号を示す情報を含むクラス情報の仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する選択部と、
    複数の前記クラス情報の仕様に対応するコマンド処理を実行可能であって、前記通信部が前記クラス情報を有するコマンドを受信した場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する処理部と、
    電源電圧の供給が維持された状態で自装置にリセット信号が再供給されたか否かを判定するリセット判定部
    を備え、
    前記所定の情報には、前記リセット判定部が判定した判定結果を示す情報が含まれ、
    前記選択部は、前記判定結果を示す情報に基づいて、前記クラス情報の仕様を選択する
    帯可能電子装置。
  3. 前記クラス情報の仕様には、第1の仕様と、前記第1の仕様と異なる第2の仕様とが含まれ、
    前記処理部は、
    受信した前記コマンドが有する前記クラス情報に対応するコマンド処理が、前記第1の仕様に対応するアプリケーション及び前記第2の仕様に対応するアプリケーションの両方に存在する場合、又は、前記第1の仕様に対応するアプリケーション及び前記第2の仕様に対応するアプリケーションのいずれにも存在しない場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する
    請求項1又は請求項に記載の携帯可能電子装置。
  4. 複数のチャネルで外部装置と通信可能な通信部と、
    コマンドの種別を示すクラス情報であって、前記チャネルの番号を示す情報を含むクラス情報の仕様を、自装置が保持する所定の情報であって、電源が供給された後に変更可能な所定の情報に基づいて選択する選択部と、
    複数の前記クラス情報の仕様に対応するコマンド処理を実行可能であって、前記通信部が前記クラス情報を有するコマンドを受信した場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する処理部と、
    を備え、
    前記クラス情報の仕様には、第1の仕様と、前記第1の仕様と異なる第2の仕様とが含まれ、
    前記処理部は、
    受信した前記コマンドが有する前記クラス情報に対応するコマンド処理が、前記第1の仕様に対応するアプリケーション及び前記第2の仕様に対応するアプリケーションの両方に存在する場合、又は、前記第1の仕様に対応するアプリケーション及び前記第2の仕様に対応するアプリケーションのいずれにも存在しない場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する
    携帯可能電子装置。
  5. 前記所定の情報には、前記チャネルが現在開かれているアプリケーションに対応する前記クラス情報の仕様を示す仕様情報が含まれ、
    前記選択部は、前記仕様情報に基づいて、前記クラス情報の仕様を選択する
    請求項に記載の携帯可能電子装置。
  6. 前記所定の情報には、前記クラス情報の仕様を指定する指定情報であって、前記外部装置から変更可能な指定情報が含まれ、
    前記選択部は、前記指定情報に基づいて、前記クラス情報の仕様を選択し、
    前記処理部は、
    前記外部装置から前記通信部を介して受信した変更要求に応じて、前記指定情報を変更するとともに、前記通信部が前記コマンドを受信した場合に、前記選択部が選択した前記クラス情報の仕様に対応するコマンド処理を実行する
    請求項1から請求項5のいずれか一項に記載の携帯可能電子装置。
JP2014115007A 2014-06-03 2014-06-03 携帯可能電子装置 Active JP6325355B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2014115007A JP6325355B2 (ja) 2014-06-03 2014-06-03 携帯可能電子装置
KR1020150075983A KR20150139444A (ko) 2014-06-03 2015-05-29 휴대 가능 전자 장치
US14/728,763 US20150351113A1 (en) 2014-06-03 2015-06-02 Portable electronic device
EP15170303.0A EP2953034A1 (en) 2014-06-03 2015-06-02 Portable electronic device
SG10201504317SA SG10201504317SA (en) 2014-06-03 2015-06-03 Portable electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014115007A JP6325355B2 (ja) 2014-06-03 2014-06-03 携帯可能電子装置

Publications (2)

Publication Number Publication Date
JP2015230505A JP2015230505A (ja) 2015-12-21
JP6325355B2 true JP6325355B2 (ja) 2018-05-16

Family

ID=53483665

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014115007A Active JP6325355B2 (ja) 2014-06-03 2014-06-03 携帯可能電子装置

Country Status (5)

Country Link
US (1) US20150351113A1 (ja)
EP (1) EP2953034A1 (ja)
JP (1) JP6325355B2 (ja)
KR (1) KR20150139444A (ja)
SG (1) SG10201504317SA (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12073280B2 (en) 2020-01-20 2024-08-27 Kabushiki Kaisha Toshiba IC card, IC card processing system, and computer-readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021035668A1 (en) * 2019-08-30 2021-03-04 Qualcomm Incorporated Universal integrated circuit card (uicc) logical channel utilization

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4523196B2 (ja) * 2001-04-27 2010-08-11 日本電信電話株式会社 Icカードとデータの授受を行う管理サーバ及び管理サーバが実行する方法
JP4587021B2 (ja) * 2004-01-09 2010-11-24 ソニー株式会社 情報処理装置および方法、記録媒体、並びにプログラム
JP2006172271A (ja) * 2004-12-17 2006-06-29 Dainippon Printing Co Ltd マルチアプリケーションicカード及びicカード用プログラム
JP4874065B2 (ja) * 2006-11-22 2012-02-08 ルネサスエレクトロニクス株式会社 バス中継装置及びシステム
JP2009134545A (ja) * 2007-11-30 2009-06-18 Toshiba Corp 携帯可能電子装置およびicカード
JP2011150661A (ja) * 2010-01-25 2011-08-04 Toshiba Corp 携帯可能電子装置、及び携帯可能電子装置の制御方法
JP5932588B2 (ja) * 2012-09-20 2016-06-08 株式会社東芝 Icカード、携帯可能電子装置、及びicカード処理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12073280B2 (en) 2020-01-20 2024-08-27 Kabushiki Kaisha Toshiba IC card, IC card processing system, and computer-readable storage medium

Also Published As

Publication number Publication date
SG10201504317SA (en) 2016-01-28
JP2015230505A (ja) 2015-12-21
KR20150139444A (ko) 2015-12-11
US20150351113A1 (en) 2015-12-03
EP2953034A1 (en) 2015-12-09

Similar Documents

Publication Publication Date Title
JP4888742B2 (ja) 情報処理装置および方法、並びにプログラム
US10803373B2 (en) Information processing apparatus and information processing method
US20120209939A1 (en) Memory system capable of adding time information to data obtained via network
KR20130132780A (ko) 근거리 무선 통신 환경에서 개인 건강 데이터를 통신하는 방법 및 시스템
JP6325355B2 (ja) 携帯可能電子装置
JP2018005561A (ja) Icカード、携帯可能電子装置、および、icカード処理装置
WO2015113319A1 (zh) 具有存储功能的器件
CN105022590B (zh) 共享存储器数据存取方法及装置
CN112560121B (zh) 单调计数器及其根密钥处理方法
JP5516314B2 (ja) セッションバッファを動的に変更できるicカード及びicカードシステム
KR20120003932A (ko) 통신 디바이스에서 전력 협상
JP2016212779A (ja) 携帯可能電子装置、及びicカード
JP7501808B2 (ja) Icチップ
US10346630B2 (en) Method of managing several profiles in a secure element
TWI779437B (zh) 檔案讀取方法以及非暫態電腦可讀取紀錄媒體
JP6948021B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP7439847B2 (ja) 電子情報記憶媒体、鍵データ設定方法、及びプログラム
JP6917835B2 (ja) 非接触通信システム、及び非接触通信方法
JP6866622B2 (ja) 記憶媒体装置及びプログラム
JP2024003385A (ja) 電子情報記憶媒体、暗号演算方式選択方法、及びプログラム
JP2017504894A (ja) データカードの応用方法及びデータカード
JP6933446B2 (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP2016081117A (ja) Icカード、携帯可能電子装置、及び、icカード製造方法
JP4654711B2 (ja) Ipネットワーク通信装置およびブートプログラム更新方法
JP2014063310A (ja) Icカード、携帯可能電子装置、及びicカード処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170317

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170911

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180131

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180412

R150 Certificate of patent or registration of utility model

Ref document number: 6325355

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150