JP2016206975A - Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム - Google Patents

Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム Download PDF

Info

Publication number
JP2016206975A
JP2016206975A JP2015088407A JP2015088407A JP2016206975A JP 2016206975 A JP2016206975 A JP 2016206975A JP 2015088407 A JP2015088407 A JP 2015088407A JP 2015088407 A JP2015088407 A JP 2015088407A JP 2016206975 A JP2016206975 A JP 2016206975A
Authority
JP
Japan
Prior art keywords
card
command
proactive
divided
proactive command
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.)
Pending
Application number
JP2015088407A
Other languages
English (en)
Inventor
充史 松尾
Mitsufumi Matsuo
充史 松尾
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
Original Assignee
Toshiba 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 filed Critical Toshiba Corp
Priority to JP2015088407A priority Critical patent/JP2016206975A/ja
Publication of JP2016206975A publication Critical patent/JP2016206975A/ja
Pending legal-status Critical Current

Links

Abstract

【課題】効果的にデータを送受信することができるICカード、携帯可能電子装置、ICカード処理装置、及び、ICカード処理システムを提供する。
【解決手段】実施形態によれば、外部装置からのコマンドを実行するICカードは、通信部と、生成部と、分割処理部と、送信処理部と、を備える。通信部は、前記外部装置とデータを送受信する。生成部は、プロアクティブコマンドを生成する。分割処理部は、前記生成部が生成した前記プロアクティブコマンドを前記ICカードが一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する。送信処理部は、前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記外部装置へ送信する。
【選択図】図1

Description

本発明の実施形態は、ICカード、携帯可能電子装置、ICカード処理装置、及び、ICカード処理システムに関する。
ICカードなどの携帯可能電子装置は、外部装置からのコマンドに応じて外部装置にプロアクティブコマンドを送信するものがある。ICカードは、所定のバイト数(たとえば256バイト)以下のプロアクティブコマンドを送信する。従来、ICカードは、所定のバイト数より大きいプロアクティブコマンドを送信することができないという課題がある。
特開2014−041552号公報
上記の課題を解決するために、効果的にデータを送受信することができるICカード、携帯可能電子装置、ICカード処理装置、及び、ICカード処理システムを提供する。
実施形態によれば、外部装置からのコマンドを実行するICカードは、通信部と、生成部と、分割処理部と、送信処理部と、を備える。通信部は、前記外部装置とデータを送受信する。生成部は、プロアクティブコマンドを生成する。分割処理部は、前記生成部が生成した前記プロアクティブコマンドを前記ICカードが一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する。送信処理部は、前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記外部装置へ送信する。
図1は、実施形態に係るICカードとICカード処理装置とを有するICカード処理システムの構成例を示す図である。 図2は、実施形態に係るICカードの構成例を示すブロック図である。 図3は、実施形態に係るICカードが送信するプロアクティブコマンドの構成例を示す図である。 図4は、実施形態に係るICカードが最初に送信する分割プロアクティブコマンドの構成例を示す図である。 図5は、実施形態に係るICカードが2回目以降に送信する分割プロアクティブコマンドの構成例を示す図である。 図6は、実施形態に係るICカード処理システムの動作例を示すシーケンシャル図である。 図7は、実施形態に係るICカード処理装置の動作例を示すフローチャートである。 図8は、実施形態に係るICカードの動作例を示すフローチャートである。 図9は、実施形態に係るICカードの動作例を示すフローチャートである。
以下、実施形態について、図面を参照して説明する。
図1は、実施形態に係る携帯可能電子装置としてのICカード2と、ICカード2と通信を行う外部装置としてのICカード処理装置1とを備えるICカード処理システム10の構成例について説明するためのブロック図である。
図1が示す構成例において、ICカード処理装置1(外部装置)は、基本的な構成として、CPU11、ROM12、RAM13、NVM14、カードリーダライタ15、操作部16、及び、ディスプレイ17などを有する。これらの各部は、データバスを介して互いに接続されている。なお、ICカード処理装置1は、図1が示すような構成の他に、必要に応じた構成を具備したり特定の構成を除外したりしてもよい。
CPU11は、ICカード処理装置1全体の動作を制御する機能を有する。CPU11は、内部キャッシュおよび各種のインターフェースなどを備えても良い。CPU11は、内部メモリ、ROM12あるいはNVM14に予め記憶したプログラムを実行することにより種々の処理を実現する。
CPU11は、カードリーダライタ15によりICカード2へコマンドを送信する機能、ICカード2から受信するレスポンスなどのデータを基に種々の処理を行う機能などを有する。たとえば、CPU11は、カードリーダライタ15を介して、操作部16などに入力されたデータ又は所定のデータなどを含む書き込みコマンドをICカード2に送信することにより、ICカード2に当該データの書き込み処理を要求する制御を行う。
なお、CPU11がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路により実現されるものであっても良い。この場合、CPU11は、ハードウエア回路により実行される機能を制御する。
ROM12は、予め制御用のプログラム及び制御データなどが記憶された不揮発性のメモリである。ROM12に記憶される制御プログラム及び制御データは、予めICカード処理装置1の仕様に応じて組み込まれる。ROM12は、たとえば、ICカード処理装置1の回路基板を制御するプログラム(例えば、BIOS)などを格納している。
RAM13は、揮発性のメモリである。RAM13は、CPU11の処理中のデータなどを一時的に格納する。RAM13は、CPU11からの命令に基づき種々のアプリケーションプログラムを格納している。また、RAM13は、アプリケーションプログラムの実行に必要なデータ及びアプリケーションプログラムの実行結果などを格納してもよい。
NVM14は、データの書き込み及び書き換えが可能な不揮発性のメモリである。NVM14は、例えば、ハードディスク、SSD、EEPROM(登録商標)又はフラッシュメモリなどにより構成される。NVM14は、ICカード処理装置1の運用用途に応じて制御プログラム、アプリケーション、及び種々のデータを格納する。
カードリーダライタ15(通信部)は、ICカード2とデータを送受信するためのインターフェース装置である。カードリーダライタ15は、ICカード2の通信方式に応じたインターフェースにより構成される。たとえば、ICカード2が接触型のICカードである場合、カードリーダライタ15は、ICカード2のコンタクト部と物理的かつ電気的に接続するための接触部などにより構成される。
また、ICカード2が非接触型のICカードである場合、カードリーダライタ15は、ICカード2との無線通信を行うためのアンテナおよび通信制御部などにより構成される。カードリーダライタ15では、ICカード2に対する電源供給、クロック供給、リセット制御、データの送受信が行われるようになっている。
このような機能によってカードリーダライタ15は、CPU11による制御に基づいてICカード2に対する電源供給、ICカード2の活性化(起動)、クロック供給、リセット制御、種々のコマンドの送信、及び送信したコマンドに対する応答(レスポンス)の受信などを行なう。
操作部16は、ICカード処理装置1の操作者によって、種々の操作指示が入力される。操作部16は、操作者に入力された操作指示のデータをCPU11へ送信する。操作部16は、たとえば、キーボード、テンキー、及び、タッチパネルなどである。
ディスプレイ17は、CPU11の制御により種々の情報を表示する表示装置である。ディスプレイ17は、たとえば、液晶モニタなどである。なお、ディスプレイ17は、操作部16と一体的に形成されてもよい。
次に、ICカード2について説明する。
ICカード2は、ICカード処理装置1などの上位装置から電力などの供給を受けて活性化される(動作可能な状態になる)ようになっている。例えば、ICカード2が接触型の通信によりICカード処理装置1と接続される場合、つまり、ICカード2が接触型のICカードで構成される場合、ICカード2は、通信インターフェースとしてのコンタクト部を介してICカード処理装置1からの動作電源及び動作クロックの供給を受けて活性化される。
また、ICカード2が非接触型の通信方式によりICカード処理装置1と接続される場合、つまり、ICカード2が非接触式のICカードで構成される場合、ICカード2は、通信インターフェースとしてのアンテナ及び変復調回路などを介してICカード処理装置1からの電波を受信し、その電波から図示しない電源部により動作電源及び動作クロックを生成して活性化するようになっている。
たとえば、ICカード2は、USAT(Universal Subscriber identity module Application Toolkit)をサポートする。たとえば、ICカード2は、携帯端末などで利用されるSIM等である。
次に、ICカード2の構成例について説明する。
図2は、実施形態に係るICカード2の構成例を概略的に示すブロック図である。
ICカード2は、プラスチックなどで形成されたカード状の本体Cを有する。ICカード2は、本体C内にモジュールMが内蔵されている。モジュールMは、1つまたは複数のICチップCaと通信部としての外部インターフェース(通信インターフェース)とが接続された状態で一体的に形成され、ICカード2の本体C内に埋設されている。
図2に示す構成例において、ICカード2は、CPU21、ROM22、RAM23、NVM24、及び、通信部25などを備えている。これらの各部は、データバスを介して互いに接続されている。また、CPU21、ROM22、RAM23、およびNVM24は、1つ又は複数のICチップCaにより構成され、通信部25に接続された状態でモジュールMを構成している。
CPU21は、ICカード2全体の制御を司る制御部として機能する。CPU21は、ROM22あるいはNVM24に記憶されている制御プログラム及び制御データに基づいて種々の処理を行う。たとえば、CPU21は、ROM22に記憶されているプログラムを実行することにより、ICカード2の動作制御あるいはICカード2の運用形態に応じた種々の処理を行う。
なお、各種の機能のうちの一部は、ハードウエア回路により実現されるものであっても良い。この場合、CPU21は、ハードウエア回路により実行される機能を制御する。
ROM22は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。ROM22は、製造段階で制御プログラム及び制御データなどを記憶した状態でICカード2に組み込まれる。即ち、ROM22に記憶される制御プログラム及び制御データは、予めICカード2の仕様に応じて組み込まれる。
RAM23は、揮発性のメモリである。RAM23は、CPU21の処理中のデータなどを一時的に格納する。たとえば、RAM23は、計算用バッファ、受信用バッファ、送信用バッファ及びコマンドバッファとして機能する。計算用バッファは、CPU21が実行する種々の演算処理の結果などを一時的に保持する。受信用バッファは、通信部25を介してICカード処理装置1から受信するコマンドデータなどを保持する。送信用バッファは、通信部25を介してICカード処理装置1へ送信するメッセージ(レスポンスデータ)などを保持する。コマンドバッファは、プロアクティブコマンドなどを保持する。プロアクティブコマンドについては後術する。また、RAM23は、動作状態を示すフラグを記憶する。
NVM24は、例えば、EEPROMあるいはフラッシュROMなどのデータの書き込み及び書換えが可能な不揮発性のメモリにより構成される。NVM24は、ICカード2の運用用途に応じて制御プログラム、アプリケーション、及び種々のデータを格納する。例えば、NVM24では、プログラムファイル及びデータファイルなどが作成される。作成された各ファイルは、制御プログラム及び種々のデータなどが書き込まれる。
通信部25は、ICカード処理装置1とデータを送受信するためのインターフェースである。即ち、通信部25は、ICカード処理装置1のカードリーダライタ15との通信を行うためのインターフェースである。非接触型のICカードとしてのICカード2においては、通信部25は、ICカード処理装置1のカードリーダライタ15との無線通信を行うための変復調回路などの通信制御部とアンテナとにより構成される。
ICカード2が接触型のICカードとして実現される場合、通信部25は、ICカード処理装置1のカードリーダライタ15と物理的かつ電気的に接触して信号の送受信を行うための通信制御部とコンタクト部とにより構成される。
次に、ICカード処理装置1のCPU11が実現する機能について説明する。
CPU11は、ICカード2からプロアクティブコマンドを分割して受信すること(分割受信)をサポートすることをICカード2に通知する機能を有する(送信処理部)。即ち、CPU11は、カードリーダライタ15を通じて、分割受信をサポートすることをICカードに通知する。
たとえば、CPU11は、ターミナルプロファイル(Terminal Profile)に分割受信をサポートすることを示すフラグをセットして、ICカード2に送信する。たとえば、CPU11は、ターミナルプロファイルの32バイト以降に分割受信をサポートすることを示すフラグをセットして、ICカード2に送信する。この場合、ターミナルプロファイルは、分割受信をサポートすることを示す。
また、CPU11は、プロアクティブコマンドを生成させる生成コマンドをICカード2に送信する機能を有する。即ち、CPU11は、カードリーダライタ15を通じて生成コマンドをICカード2へ送信する。生成コマンドが生成させるプロアクティブコマンドは、特定の構成に限定されるものではない。
また、CPU11は、ICカード2から分割されたプロアクティブコマンド(分割プロアクティブコマンド)を受信するために取出コマンドを送信する機能を有する(送信処理部)。即ち、CPU11は、カードリーダライタ15を通じて、取出コマンドをICカード2へ送信する。たとえば、CPU11は、取出コマンドとしてFETCHコマンドをICカード2へ送信する。ここでは、CPU11は、FETCHコマンドをICカード2へ送信するものとする。
CPU11は、分割プロアクティブコマンドを受信するためにFETCHコマンドをICカード2に送信する。CPU11は、要求レスポンス(たとえば、SW=91XX)を受信した場合に、最初の分割プロアクティブコマンドを受信するため最初のFETCHコマンドをICカード2へ送信する。
また、CPU11は、後続する分割プロアクティブコマンド(ICカード2が未送信である分割プロアクティブコマンド)がある場合に、さらにFETCHコマンドをICカード2に送信する。たとえば、CPU11は、プロアクティブコマンドのレングス(Length)が示すデータ長に基づいて、後続する分割プロアクティブコマンドがあると判定する。たとえば、CPU11は、最初に受信した分割プロアクティブコマンドのレングスからプロアクティブコマンドのデータ長を取得する。CPU11は、レングスが示すデータ長分のデータを受信していない場合に、後続する分割プロアクティブコマンドがあると判定する。なお、CPU11は、分割プロアクティブコマンドに設定されたフラグなどに基づいて後続する分割プロアクティブコマンドがあるか判定してもよい。
また、CPU11は、カードリーダライタ15を通じて、分割プロアクティブコマンドをICカード2から受信する機能を有する(受信処理部)。たとえば、CPU11は、FETCHコマンドに対するレスポンスとして分割プロアクティブコマンドを受信する。
次に、ICカード2のCPU21が実現する機能について説明する。
CPU21は、ICカード処理装置1からの生成コマンドに応じてプロアクティブコマンドを生成する機能を有する(生成部)。プロアクティブコマンドは、CPU21がICカード処理装置1へ送信するコマンドである。たとえば、プロアクティブコマンドは、ICカード処理装置1に所定の動作を行わせる。
たとえば、プロアクティブコマンドは、ETSI TS 102.223又はETSI
TS 102.241に規定される。プロアクティブコマンドは、たとえば、ディスプレイに文字を表示させるディスプレイテキスト、音を再生させるプレイトーン、入力を受け付けさせるゲットイン、又は、選択を受け付させるメニューIDなどである。プロアクティブコマンドは、特定の構成に限定されるものではない。
次に、プロアクティブコマンドの構成例について説明する。
図3は、プロアクティブコマンドの構成例を示す図である。
図3が示すように、プロアクティブコマンドは、プロアクティブUICCタグ(Proactive UICC Tag)、レングス(Length)、コマンドディテール(Comand datails)、デバイスID(Devide ID)、アルファID(Alpha ID)及びアイテムデータ(Item data)などを備える。ここでは、プロアクティブコマンドの長さは、ICカード2が一度に送信することができるデータ長(最大データ長)よりも長いものとする。
プロアクティブUICCタグは、プロアクティブコマンドを分割して送信することを示すフラグを格納する。たとえば、「E0」は、プロアクティブコマンドを分割して送信することを示すフラグである。また、たとえば、「D0」は、プロアクティブコマンドを通常通り送信することを示すフラグである。
レングス(データ長情報)は、後続するデータのデータ長を示す。
コマンドディテールは、SET UP MENUであることを示す。
デバイスIDは、ソースデバイス及びデスティネーションデバイスを示す。
アルファIDは、短縮ダイヤル番号などを含むデータである。
アイテムデータは、プロアクティブコマンドを実行するために必要なデータである。たとえば、アイテムデータは、文字列などを示す。
プロアクティブコマンドは、適宜他の構成を備えてもよいし、不要な構成を備えなくともよい。プロアクティブコマンドの構成は、特定の構成に限定されるものではない。
なお、CPU21は、生成コマンドに応じてプロアクティブUICCタグ以外の要素を生成し、データ長に応じてプロアクティブUICCタグを生成してもよい。また、CPU21は、生成コマンドに応じてプロアクティブコマンドを生成して、データ長に応じてプロアクティブUICCタグを更新してもよい。
また、CPU21は、生成されたプロアクティブコマンドを最大データ長以下の分割プロアクティブコマンドに分割する機能を有する(分割処理部)。たとえば、CPU21は、生成されたプロアクティブコマンドが最大データ長(たとえば、256バイト)より大きい場合、プロアクティブコマンドを分割する。たとえば、CPU21は、プロアクティブコマンドを最大データ長に分割する。たとえば、CPU21は、256バイト(最大データ長)ずつにプロアクティブコマンドを分割する。
図4は、分割されたプロアクティブコマンド(分割プロアクティブコマンド)の例を示す。図4が示す分割プロアクティブコマンドは、先頭の分割プロアクティブコマンドの例である。即ち、図4が示す分割プロアクティブコマンドは、最初に送信される分割プロアクティブコマンドである。
図4が示すように、分割プロアクティブコマンドは、プロアクティブUICCタグ(、レングス、コマンドディテール、デバイスID、アルファID及びアイテムデータなどを備える。
分割プロアクティブコマンドの長さは、最大データ長である。そのため、当該分割プロアクティブコマンドのアイテムデータは、プロアクティブコマンドのアイテムデータの一部である。
図5は、後続の分割プロアクティブコマンドの構成例を示す。即ち、図5が示す分割プロアクティブコマンドは、2回目以降に送信される分割プロアクティブコマンドである。
図5が示すように、分割プロアクティブコマンドは、アイテムデータを備える。分割プロアクティブコマンドの長さは、最大データ長である。即ち、分割プロアクティブコマンドは、最大データ長分のアイテムデータである。
なお、CPU21は、2回目以降に送信される分割プロアクティブコマンドに、後続する分割プロアクティブコマンドがあることを示すフラグをセットしてもよい。この場合、たとえば、分割プロアクティブコマンドは、最大データ長からフラグのデータ長を引いた長さのアイテムデータを備えてもよい。
また、2回目以降に送信される分割プロアクティブコマンドは、タグ又はレングスの少なくとも一部を備えなくともよい。たとえば、2回目以降に送信される分割プロアクティブコマンドは、タグ及びアイテムデータを備えてもよい。この場合、タグは、後続する分割プロアクティブコマンドがあることを示すフラグを格納してもよい。また、2回目以降に送信される分割プロアクティブコマンドは、レングス及びアイテムデータを備えてもよい。また、2回目以降に送信される分割プロアクティブコマンドは、コマンドディテール、デバイスID又はアルファIDを備えなくともよい。また、2回目以降に送信される分割プロアクティブコマンドは、当該分割プロアクティブコマンドのデータ長のアイテムデータを備えてもよい。
また、CPU21は、通信部25を通じて、取出コマンド(たとえば、FETCHコマンド)を要求する要求レスポンスを送信する機能を有する(送信処理部)。たとえば、CPU21は、要求レスポンスとしてレスポンス(SW=91XX)を送信する。
また、CPU21は、通信部25を通じて、順に分割プロアクティブコマンドをICカード処理装置1へ送信する機能を有する(送信処理部)。たとえば、CPU21は、通信部25を通じて取出コマンドを受信した場合に、通信部25を通じて当該取出コマンドのレスポンスとして分割プロアクティブコマンドをICカード処理装置1へ送信する。
次に、ICカード処理システム10の動作例について説明する。
図6は、ICカード処理システム10の動作例を説明するためのシーケンス図である。
ここでは、ICカード処理装置1とICカード2との通信が確立しているものとする。
まず、ICカード処理装置1のCPU11は、カードリーダライタ15を通じて、分割受信をサポートすることを示すフラグをセットしたターミナルプロファイルをICカード2へ送信する(S11)。
ICカード2のCPU21は、通信部25を通じてターミナルプロファイルを受信する。ターミナルプロファイルを受信すると、CPU21は、通信部25を通じて、ターミナルプロファイルに対するレスポンスをICカード処理装置1へ送信する(S12)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じて当該レスポンスを受信する。当該レスポンスを受信すると、CPU11は、カードリーダライタ15を通じて、プロアクティブコマンドを生成させる生成コマンドをICカード2へ送信する(S13)。
ICカード2のCPU21は、通信部25を通じて、生成コマンドを受信する。生成コマンドを受信すると、CPU21は、プロアクティブコマンドを生成する(S14)。ここでは、プロアクティブコマンドの長さは、最大データ長よりも長いものとする。また、プロアクティブコマンドは、プロアクティブUICCタグとして「E0」を格納するものとする。また、プロアクティブコマンドは、3つに分割されるものとする。即ち、プロアクティブコマンドの長さは、ICカード処理装置1が3回取出コマンドをICカード2に送信すればプロアクティブコマンドを取り出せる長さである。
プロアクティブコマンドを生成すると、CPU21は、通信部25を通じて生成コマンドのレスポンスとしてレスポンス(SW=91XX)を送信する(S15)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じてレスポンス(SW=91XX)を受信する。レスポンス(SW=91XX)を受信すると、CPU11は、カードリーダライタ15を通じてFETCHコマンドをICカード2へ送信する(S16)。
ICカード2のCPU21は、通信部25を通じてFETCHコマンドを受信する。FETCHコマンドを受信すると、CPU21は、通信部25を通じて最初の分割プロアクティブコマンドを送信する(S17)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じて分割プロアクティブコマンドを受信する。分割プロアクティブコマンドを受信すると、CPU11は、カードリーダライタ15を通じてFETCHコマンドをICカード2へ送信する(S18)。
ICカード2のCPU21は、通信部25を通じてFETCHコマンドを受信する。FETCHコマンドを受信すると、CPU21は、通信部25を通じて次の分割プロアクティブコマンドを送信する(S19)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じて分割プロアクティブコマンドを受信する。分割プロアクティブコマンドを受信すると、CPU11は、カードリーダライタ15を通じてFETCHコマンドをICカード2へ送信する(S20)。
ICカード2のCPU21は、通信部25を通じてFETCHコマンドを受信する。FETCHコマンドを受信すると、CPU21は、通信部25を通じて次の分割プロアクティブコマンドを送信する(S21)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じて分割プロアクティブコマンドを受信する。分割プロアクティブコマンドを受信すると、CPU11は、カードリーダライタ15を通じてターミナルレスポンスをICカード2へ送信する(S22)。
ICカード2のCPU21は、通信部25を通じてターミナルレスポンスを受信する。ターミナルレスポンスを受信すると、CPU21は、通信部25を通じてターミナルレスポンスに対するレスポンスを送信する(S22)。
ICカード処理装置1のCPU11は、カードリーダライタ15を通じてターミナルレスポンスに対するレスポンスを受信する。CPU11が当該レスポンスを受信すると、ICカード処理システム10は、動作を終了する。
なお、ICカード処理装置1は、さらに他のコマンドをICカード2へ送信してもよい。
次に、ICカード処理装置1の動作例について説明する。
図7は、ICカード処理装置1の動作例について説明するためのフローチャートである。ここでは、ICカード処理装置1とICカード2との通信が確立し、ICカード処理装置1は、ターミナルプロファイルを送信したものとする。
まず、ICカード処理装置1のCPU11は、カードリーダライタ15を通じて生成コマンドをICカード2へ送信する(S31)。生成コマンドを送信すると、CPU11は、カードリーダライタ15を通じてICカード2からレスポンスを受信したか判定する(S32)。
レスポンスを受信していないと判定すると(S32、NO)、CPU11は、S32へ戻る。レスポンスを受信したと判定すると(S32、YES)、CPU11は、レスポンスのSWが91XXであるか判定する(S33)。
レスポンスのSWが91XXであると判定すると(S33、YES)、CPU11は、カードリーダライタ15を通じてFETCHコマンドをICカード2へ送信する(S34)。FETCHコマンドを送信すると、CPU11は、カードリーダライタ15を通じてICカード2から分割プロアクティブコマンドを受信したか判定する(S35)。分割プロアクティブコマンドを受信していないと判定すると(S35、NO)、CPU11は、S35に戻る。
分割プロアクティブコマンドを受信したと判定すると(S35、YES)、CPU11は、後続する分割プロアクティブコマンドがあるか判定する(S36)。後続する分割プロアクティブコマンドがあると判定すると(S36、YES)、CPU11は、S34に戻る。
後続する分割プロアクティブコマンドがないと判定すると(S37)、CPU11は、カードリーダライタ15を通じて、受信された分割プロアクティブコマンドを結合したプロアクティブコマンドに対応するターミナルレスポンスをICカード2に送信する(S37)。ターミナルレスポンスに送信すると、CPU11は、カードリーダライタ15を通じてレスポンスを受信したか判定する(S38)。レスポンスを受信していないと判定すると(S38、NO)、CPU11は、S38に戻る。
レスポンスのSWが91XXでないと判定した場合(S33、NO)、又は、レスポンスを受信したと判定した場合(S38、YES)、CPU11は、動作を終了する。
次に、ICカード2の動作例について説明する。
図8及び図9は、ICカード2の動作例について説明するためのフローチャートである。ここでは、ICカード処理装置1とICカード2との通信が確立しているものとする。また、ICカード2は、ICカード処理装置1からターミナルプロファイルを受信し、ターミナルプロファイルへのレスポンスを送信したものとする。
ICカード2のCPU21は、通信部25を通じてICカード処理装置1から生成コマンドを受信したか判定する(S41)。生成コマンドを受信していないと判定すると(S41、NO)、CPU21は、S41へ戻る。
生成コマンドを受信したと判定すると(S41、YES)、CPU21は、生成コマンドに従ってプロアクティブコマンドを生成する(S42)。プロアクティブコマンドを生成すると、CPU21は、生成されたプロアクティブコマンドをRAM23のコマンドバッファに格納する(S43)。
プロアクティブコマンドをコマンドバッファに格納すると、CPU21は、プロアクティブコマンドの長さが最大データ長(たとえば、256バイト)以下であるか判定する(S44)。
プロアクティブコマンドの長さが最大データ長以下でないと判定すると(S44、NO)、CPU21は、ICカード処理装置1が分割受信をサポートしているか判定する(S45)。たとえば、CPU21は、ターミナルプロファイルを参照してICカード処理装置1が分割受信をサポートしているか判定する。
ICカード処理装置1が分割受信をサポートしていると判定すると(S45、YES)、CPU21は、プロアクティブコマンドを分割して送信することを示すフラグをプロアクティブコマンドに設定する(S46)。
フラグをプロアクティブコマンドに設定すると、CPU21は、通信部25を通じて、FETCHコマンドを要求する要求レスポンス(SW=91XX)をICカード処理装置1へ送信する(S47)。
要求レスポンスを送信すると、未送信のプロアクティブコマンドが最大データ長以下であるか判定する(S48)。未送信のプロアクティブコマンドが最大データ長以下でないと判定すると(S48、NO)、CPU21は、最大データ長分のプロアクティブコマンド(分割プロアクティブコマンド)を送信用バッファに格納する(S49)。
分割プロアクティブコマンドを送信バッファに格納すると、CPU21は、コマンドバッファから当該分割プロアクティブコマンド分のデータを削除する(S50)。なお、CPU21は、コマンドバッファ内において送信済みのデータを示すポインタを最大データ長分移動させてもよい。
当該分割プロアクティブコマンド分のデータを削除すると、CPU21は、通信部25を通じてFETCHコマンドをICカード処理装置1から受信したか判定する(S51)。FETCHコマンドを受信していないと判定すると(S51、NO)、CPU21は、S51に戻る。
FETCHコマンドを受信したと判定すると(S51、YES)、CPU21は、通信部25を通じて送信用バッファのデータをICカード処理装置1へ送信する(S52)。送信用バッファのデータをICカード処理装置1へ送信すると、CPU21は、未送信のデータ(コマンドバッファのデータ)が0バイトであるか判定する(S53)。未送信のデータが0バイトでないと判定すると(S53、NO)、CPU21は、S48へ戻る。
未送信のプロアクティブコマンドが最大データ長以下であると判定すると(S48、YES)、CPU21は、未送信のプロアクティブコマンド(最後の分割プロアクティブコマンド)を送信用バッファに格納する(S54)。未送信のプロアクティブコマンドを送信用バッファに格納すると、CPU21は、S51へ進む。
未送信のデータが0バイトであると判定すると(S53、YES)、CPU21は、通信部25を通じてICカード処理装置1からターミナルレスポンスを受信したか判定する(S55)。ターミナルレスポンスを受信していないと判定する(S55、NO)、CPU21は、S55へ戻る。
ターミナルレスポンスを受信したと判定する(S55、YES)、CPU21は、通信部25を通じてICカード処理装置1へターミナルレスポンスに対するレスポンスを送信する(S56)。
プロアクティブコマンドの長さが最大データ長以下であると判定すると(S44、YES)、CPU21は、FETCHコマンドを要求する要求レスポンス(SW=91XX)をICカード処理装置1へ送信する(S57)。FETCHコマンドを要求する要求レスポンス(SW=91XX)をICカード処理装置1へ送信すると、CPU21は、S54に進む。
ICカード処理装置1が分割受信をサポートしていないと判定すると(S45、NO)、CPU21は、通信部25を通じてICカード処理装置1にエラーメッセージを送信する(S58)。
ターミナルレスポンスに対するレスポンスを送信した場合(S56)、又は、エラーメッセージを送信した場合(S58)、CPU21は、動作を終了する。
なお、CPU21は、分割プロアクティブコマンドを送信用バッファに格納した後にレスポンス(SW=91XX)を送信してもよい。
以上のように構成されたICカード処理システムは、最大データ長よりも長いプロアクティブコマンドを分割してICカード2からICカード処理装置へ送信することができる。その結果、ICカードは、容量の大きなプロアクティブコマンドを複数回に分割してICカード処理装置へ送信することができる。したがって、ICカード処理システムは、効果的にデータを送受信することができる。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…ICカード処理装置、2…ICカード、10…ICカード処理システム、11…CPU、14…NVM、15…カードリーダライタ、21…CPU、24…NVM、25…通信部、M…モジュール、C…本体。

Claims (15)

  1. 外部装置からのコマンドを実行するICカードであって、
    前記外部装置とデータを送受信する通信部と、
    プロアクティブコマンドを生成する生成部と、
    前記生成部が生成した前記プロアクティブコマンドを前記ICカードが一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する分割処理部と、
    前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記外部装置へ送信する送信処理部と、
    を備えるICカード。
  2. 前記送信処理部が最初に送信する分割プロアクティブコマンドは、前記プロアクティブコマンドのデータ長を示すデータ長情報を備える、
    前記請求項1に記載のICカード。
  3. 前記送信処理部が最初に送信する分割プロアクティブコマンドは、前記外部装置に前記プロアクティブコマンドを分割して送信することを示すフラグを備える、
    前記請求項1又は2に記載のICカード。
  4. 前記送信処理部が2回目以降に送信する分割プロアクティブコマンドは、前記分割プロアクティブコマンドのデータ長のアイテムデータを備える、
    前記請求項1乃至3の何れか1項に記載のICカード。
  5. 前記分割処理部は、前記プロアクティブコマンドを前記最大データ長の分割プロアクティブコマンドに分割する、
    前記請求項1乃至4の何れか1項に記載のICカード。
  6. 前記送信処理部は、前記通信部を通じて前記外部装置から分割プロアクティブコマンドを取り出す取出コマンドを受信した場合に、前記通信部を通じて前記取出コマンドに対するレスポンスとして前記外部装置へ順に分割プロアクティブコマンドを送信する、
    前記請求項1又は5の何れか1項に記載のICカード。
  7. 前記取出コマンドは、FETCHコマンドである、
    前記請求項6に記載のICカード。
  8. 前記分割処理部は、前記外部装置が送信するターミナルプロファイルが前記外部装置がプロアクティブコマンドを分割して受信することをサポートすることを示す場合に、前記生成部が生成した前記プロアクティブコマンドを前記分割プロアクティブコマンドに分割する、
    前記請求項1乃至7の何れか1項に記載のICカード。
  9. 外部装置からのコマンドを実行するICカードであって、
    前記外部装置とデータを送受信する通信部と、プロアクティブコマンドを生成する生成部と、前記生成部が生成した前記プロアクティブコマンドを前記ICカードが一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する分割処理部と、前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記外部装置へ送信する送信処理部と、を備えるモジュールと、
    前記モジュールを内蔵した本体と、
    を備えるICカード。
  10. 外部装置からのコマンドを実行する携帯可能電子装置であって、
    前記外部装置とデータを送受信する通信部と、
    プロアクティブコマンドを生成する生成部と、
    前記生成部が生成した前記プロアクティブコマンドを前記携帯可能電子装置が一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する分割処理部と、
    前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記外部装置へ送信する送信処理部と、
    を備える携帯可能電子装置。
  11. ICカードに対してコマンドを供給するICカード処理装置であって、
    ICカードとデータを送受信する通信部と、
    前記通信部を通じて、プロアクティブコマンドを分割した分割プロアクティブコマンドを取り出す取出コマンドを前記ICカードへ送信する第1送信処理部と、
    前記通信部を通じて、前記ICカードから前記取出コマンドに対するレスポンスとして前記分割プロアクティブコマンドを受信する受信処理部と、
    を備えるICカード処理装置。
  12. 前記受信処理部が最初に受信する分割プロアクティブコマンドは、前記プロアクティブコマンドのデータ長を示すデータ長情報を備え、
    前記第1送信処理部は、前記データ長情報に基づいて、前記取出コマンドを前記ICカードへ送信する、
    前記請求項11に記載のICカード処理装置。
  13. 前記取出コマンドは、FETCHコマンドである、
    前記請求項11又は12に記載のICカード処理装置。
  14. 前記通信部を通じて、前記ICカード処理装置がプロアクティブコマンドを分割して受信することをサポートすることを示すターミナルプロファイルを前記ICカードへ送信する第2送信処理部を備える、
    前記請求項11乃至13の何れか1項に記載のICカード処理装置。
  15. ICカードとICカード処理装置とを有するICカード処理システムにおいて、
    前記ICカードは、
    前記ICカード処理装置とデータを送受信する通信部と、
    プロアクティブコマンドを生成する生成部と、
    前記生成部が生成した前記プロアクティブコマンドを前記ICカードが一度に送信することができる最大データ長以下の分割プロアクティブコマンドに分割する分割処理部と、
    前記通信部を通じて、前記分割処理部が分割した前記分割プロアクティブコマンドを前記ICカード処理装置へ送信する送信処理部と、
    を備え、
    前記ICカード処理装置は、
    前記ICカードとデータを送受信する第2通信部と、
    前記第2通信部を通じて、前記ICカードから前記分割プロアクティブコマンドを受信する受信処理部と、
    を備える、
    ICカード処理システム。
JP2015088407A 2015-04-23 2015-04-23 Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム Pending JP2016206975A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015088407A JP2016206975A (ja) 2015-04-23 2015-04-23 Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015088407A JP2016206975A (ja) 2015-04-23 2015-04-23 Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム

Publications (1)

Publication Number Publication Date
JP2016206975A true JP2016206975A (ja) 2016-12-08

Family

ID=57489977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015088407A Pending JP2016206975A (ja) 2015-04-23 2015-04-23 Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム

Country Status (1)

Country Link
JP (1) JP2016206975A (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004036440A1 (ja) * 2002-10-16 2004-04-29 Matsushita Electric Industrial Co., Ltd. Icカード、データ転送装置、データ転送方法及びデータ転送方法のプログラム
US20050259673A1 (en) * 2004-05-18 2005-11-24 Axalto Inc. Method and system for end-to-end communication between a universal integrated circuit card and a remote entity over an IP-based wireless wide area network and the internet
JP2013070140A (ja) * 2011-09-21 2013-04-18 Toshiba Corp Icカード
JP2014041552A (ja) * 2012-08-23 2014-03-06 Toshiba Corp Icカード、及び、携帯可能電子装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004036440A1 (ja) * 2002-10-16 2004-04-29 Matsushita Electric Industrial Co., Ltd. Icカード、データ転送装置、データ転送方法及びデータ転送方法のプログラム
US20050259673A1 (en) * 2004-05-18 2005-11-24 Axalto Inc. Method and system for end-to-end communication between a universal integrated circuit card and a remote entity over an IP-based wireless wide area network and the internet
JP2013070140A (ja) * 2011-09-21 2013-04-18 Toshiba Corp Icカード
JP2014041552A (ja) * 2012-08-23 2014-03-06 Toshiba Corp Icカード、及び、携帯可能電子装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ETSI TS 102 223 V4.0.0(2001−07), JPN7019001896, 2001, FR, pages 17 - 20, ISSN: 0004172713 *

Similar Documents

Publication Publication Date Title
US10657522B2 (en) Apparatus and method for processing card application in electronic device
JP6279217B2 (ja) Icカード、電子装置、及び携帯可能電子装置
JP5259540B2 (ja) 携帯可能電子装置、icカード、携帯可能電子装置の処理システムおよび携帯可能電子装置の制御方法
EP2500845A2 (en) Portable electronic apparatus
JP2016206975A (ja) Icカード、携帯可能電子装置、icカード処理装置、及び、icカード処理システム
JP2020013212A (ja) 携帯可能電子装置、icカード、及び発行装置
JP2016057868A (ja) Icカード、携帯可能電子装置、及び、プログラムコード
JP6370669B2 (ja) Icカード、携帯可能電子装置、及び、icカード処理装置
JP2010211516A (ja) 携帯可能電子装置および携帯可能電子装置におけるアクセス制御方法
KR101530479B1 (ko) Ic 카드 및 휴대 가능 전자 장치
JP2016081117A (ja) Icカード、携帯可能電子装置、及び、icカード製造方法
JP6120551B2 (ja) 通信プログラム、情報処理装置、通信システム、通信方法、および記憶媒体
JP2018152142A (ja) Icカード、携帯可能電子装置、及び、icカード処理装置
JP2012133656A (ja) 携帯可能電子装置及びicカード
JP2019191804A (ja) セキュアエレメント発行システム,セキュアエレメント,発行データ生成装置および発行装置
US10732955B2 (en) Electronic apparatus and information processing system
JP7439847B2 (ja) 電子情報記憶媒体、鍵データ設定方法、及びプログラム
JP5742976B2 (ja) 通信装置、通信方法、及び、無線タグ
JP2014059806A (ja) Icカード、携帯可能電子装置、及びicカード処理装置
JP2018156387A (ja) Icカード、携帯可能電子装置、プログラム、処理装置及び処理システム
JP2011215833A (ja) 携帯可能電子装置及びicカード
JP6915338B2 (ja) Icカード
JP5038918B2 (ja) 携帯可能電子装置および携帯可能電子装置の制御方法
JP2017142655A (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP2017021443A (ja) 電子情報記憶媒体、情報処理方法及び代表アプリケーション

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170904

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170905

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190809

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191217