JP2021099632A - Icカード及びicカードの制御プログラム - Google Patents

Icカード及びicカードの制御プログラム Download PDF

Info

Publication number
JP2021099632A
JP2021099632A JP2019230798A JP2019230798A JP2021099632A JP 2021099632 A JP2021099632 A JP 2021099632A JP 2019230798 A JP2019230798 A JP 2019230798A JP 2019230798 A JP2019230798 A JP 2019230798A JP 2021099632 A JP2021099632 A JP 2021099632A
Authority
JP
Japan
Prior art keywords
card
contact communication
historical
byte
ats
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.)
Granted
Application number
JP2019230798A
Other languages
English (en)
Other versions
JP7433886B2 (ja
Inventor
大輔 丹下
Daisuke Tange
大輔 丹下
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 JP2019230798A priority Critical patent/JP7433886B2/ja
Priority to EP20901817.5A priority patent/EP4053743A4/en
Priority to PCT/JP2020/044425 priority patent/WO2021124846A1/ja
Publication of JP2021099632A publication Critical patent/JP2021099632A/ja
Priority to US17/807,251 priority patent/US11868836B2/en
Application granted granted Critical
Publication of JP7433886B2 publication Critical patent/JP7433886B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/077Constructional details, e.g. mounting of circuits in the carrier
    • G06K19/07749Constructional details, e.g. mounting of circuits in the carrier the record carrier being capable of non-contact communication, e.g. constructional details of the antenna of a non-contact smart card
    • G06K19/07766Constructional details, e.g. mounting of circuits in the carrier the record carrier being capable of non-contact communication, e.g. constructional details of the antenna of a non-contact smart card comprising at least a second communication arrangement in addition to a first non-contact communication arrangement
    • G06K19/07769Constructional details, e.g. mounting of circuits in the carrier the record carrier being capable of non-contact communication, e.g. constructional details of the antenna of a non-contact smart card comprising at least a second communication arrangement in addition to a first non-contact communication arrangement the further communication means being a galvanic interface, e.g. hybrid or mixed smart cards having a contact and a non-contact interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0723Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory

Abstract

【課題】 利便性の高いICカード及びICカードの制御プログラムを提供する。【解決手段】 一実施形態に係るICカードは、接触通信インタフェースと、非接触通信インタフェースと、プロセッサと、を具備する。接触通信手段は、リーダライタと接触通信を行う。非接触通信手段は、前記リーダライタと非接触通信を行う。プロセッサは、ヒストリカルバイトを含む所定のコマンドに基づいて、前記接触通信におけるATR(Answer To Reset)と、前記非接触通信におけるATS(Answer To Select)とを設定する。【選択図】 図1

Description

本発明の実施形態は、ICカード及びICカードの制御プログラムに関する。
プロセッサ、不揮発性メモリ、及びRAM(Random Access Memory)を有するICチップと、通信インタフェースと、を備えるICカード(携帯可能電子装置)が実用化されている。また、接触通信を行う為の接触通信インタフェースと、非接触通信を行う為の非接触通信インタフェースとを有するICカードであるデュアルインタフェースカードが一般的に実用化されている。
ICカードは、メーカー、チップに関する情報、書き換え可能回数、拡張されたレングスを用いたフォーマット(拡張フォーマットと称する)のサポートの有無などの、カードの特徴を示す情報を上位装置に送信する。カードの特徴を示す情報は、例えば、ISO/IEC7816で規定されたヒストリカルバイト(Historical bytes)である。ICカードは、上位装置と接触通信を行う場合、ヒストリカルバイトを含むATR(Answer To Reset)を上位装置に送信する。また、ICカードは、上位装置と非接触通信を行う場合、ヒストリカルバイトを含むATS(Answer To Select)を上位装置に送信する。
ATRに含まれるヒストリカルバイトを書き換える為の方法は、例えば「globalplatform」の「GPSystem」で定められた「setATRHistBytes」など、種々の方法がある。しかし、上記の方法では、ATSに含まれるヒストリカルバイトを書き換えることができないという課題がある。
特開2003−288561号公報
本発明は、利便性の高いICカード及びICカードの制御プログラムを提供することを目的とする。
一実施形態に係るICカードは、接触通信インタフェースと、非接触通信インタフェースと、プロセッサと、を具備する。接触通信手段は、リーダライタと接触通信を行う。非接触通信手段は、前記リーダライタと非接触通信を行う。プロセッサは、ヒストリカルバイトを含む所定のコマンドに基づいて、前記接触通信におけるATR(Answer To Reset)と、前記非接触通信におけるATS(Answer To Select)とを設定する。
図1は、一実施形態に係るICカード処理システムの構成例について説明するための説明図である。 図2は、第1の実施形態に係るICカードの動作の例について説明する為の説明図である。 図3は、第1の実施形態に係るICカードの動作の例について説明する為の説明図である。 図4は、第2の実施形態に係るICカードの動作の例について説明する為の説明図である。 図5は、第2の実施形態に係るICカードの動作の例について説明する為の説明図である。
以下、実施形態について、図面を参照して説明する。
図1は、ICカード処理システム1の例について説明する為の説明図である。
ICカード処理システム1は、上位装置11及びICカード12(携帯可能電子装置)などを備える。上位装置11と、ICカード12とは、互いに接触または非接触で通信可能に構成されている。なお、ICカード処理システム1は、図1で示された構成の他に必要に応じた構成を具備したり、ICカード処理システム1から特定の構成が除外されたりしてもよい。
まず、上位装置11の構成について説明する。
上位装置11は、ICカード12を処理するICカード処理装置である。上位装置11は、ICカード処理システム1全体を制御する。上位装置11は、ICカード12に対して電力を供給することでICカード12を活性化させる。また、上位装置11は、ICカード12に種々のコマンドを送信することで、ICカード12に種々の動作を実行させる。
上位装置11は、コントローラ21、第1のカードリーダライタ22、第2のカードリーダライタ23、ディスプレイ24、及び操作インタフェース25などを備える。
コントローラ21は、上位装置11の種々の動作を制御する。コントローラ21は、プロセッサ26及びメモリ27を備える。
プロセッサ26は、演算処理を実行する演算素子(例えばCPU)を備える。プロセッサ26は、メモリ27に格納されているプログラムを実行することにより、種々の動作を実行する。
メモリ27は、プログラム及びプログラムで用いられるデータなどを記憶する。メモリ27は、例えば、第1のカードリーダライタ22のドライバ、第2のカードリーダライタ23のドライバ、ディスプレイ24に表示させる画像の生成を行う為のプログラム、及び操作インタフェース25による操作入力の解釈を行う為のプログラムを備える。また、メモリ27は、ICカード12との間でコマンドの送信、及びレスポンスの受信を行う為のプログラムを備える。即ち、メモリ27は、ICカード12を処理するICカード処理装置用の制御プログラムを記憶する。
第1のカードリーダライタ22は、ICカード12と接触通信を行う為のインタフェースである。第1のカードリーダライタ22は、ICカード12のコンタクトパターンと物理的且つ電気的に接続される複数の接触端子とICカード12が挿入されるスロットとを備える。第1のカードリーダライタ22は、接触端子及びコンタクトパターンを介して、ICカード12との間でデータの送受信を行う。また、第1のカードリーダライタ22は、接触端子及びコンタクトパターンを介して、ICカード12に電力及びクロックの供給を行う。
第2のカードリーダライタ23は、ICカード12と非接触通信を行う為のインタフェースである。第2のカードリーダライタ23は、アンテナ(コイル)と、変復調回路とを備える。第2のカードリーダライタ23は、送信するデータに応じた信号を変復調回路により変調し、アンテナに流すことにより、アンテナからデータに応じた電波を出力させる。また、第2のカードリーダライタ23は、ICカードからの電波をアンテナにより受信し、受信した信号を変復調回路により復調し、元のデータを取得する。また、第1のカードリーダライタ22は、アンテナからの電波によって、ICカード12に電力を供給する。
ディスプレイ24は、コントローラ21または図示されないグラフィックコントローラから供給される表示用のデータ(画面データ)に基づいて画面を表示する。
操作インタフェース25は、操作に基づき操作信号を生成する構成である。操作インタフェース25は、例えば、マウス、トラックボール、キーボード、トラックパッド、タッチセンサなどの操作部材の操作に基づく操作信号を受信または生成し、コントローラ21に供給する。
なお、図1の例では、上位装置11が第1のカードリーダライタ22及び第2のカードリーダライタ23の両方を備える構成として説明したが、上位装置11は、少なくとも第1のカードリーダライタ22と第2のカードリーダライタ23とのいずれかを備えていればよい。また、上位装置11は、第1のカードリーダライタ22または第2のカードリーダライタ23が接続される通信インタフェースを備える構成であってもよい。
次に、ICカード12の構成について説明する。
ICカード12は、上位装置11から供給された電力により活性化する。ICカード12は、上位装置11からコマンドを受信し、受信したコマンドに応じて種々の処理を実行する。また、ICカード12は、処理に応じてレスポンスを生成し、レスポンスを上位装置11に送信する。
ICカード12は、プラスチックなどで形成されたカード状の本体31を有する。ICカード12は、本体31内にICモジュール32を備える。ICモジュール32は、ICチップ33、接触通信インタフェース34、及び非接触通信インタフェース35を備える。即ち、ICカード12は、上位装置11と接触通信を行う為の接触通信インタフェース34と、非接触通信を行う為の非接触通信インタフェース35とを有するデュアルインタフェースカードである。また、ICチップ33は、プロセッサ36、不揮発性メモリ37、及びRAM38を備える。なお、ICカード12は、図1で示された構成の他に必要な追加されてもよいし、ICカード12は、図1で示された構成の一部が除外されてもよい。
プロセッサ36は、演算処理を実行する演算素子(例えばCPU)を備える。プロセッサ36は、不揮発性メモリ37に格納されているプログラムを実行することにより、種々の動作を実行する。
不揮発性メモリ37は、プログラム及びプログラムで用いられるデータなどを記憶する不揮発性のメモリ(Non−Volatile Memory)である。不揮発性メモリ37に記憶されているプログラムは、例えば、OS(オペレーティングシステム)、及び、ICカード12の運用形態に応じた種々の処理を行う為のアプリケーションなどである。アプリケーションは、例えば、カードissuer(カードの発行者)が管理するICカード用のアプリケーションである。OSは、プロセッサ36にICカード12内の各部の制御及び情報処理を実現させるためのICカードの制御プログラムである。不揮発性メモリ37のプログラム及び制御データは、予めICカード12の仕様などに応じて組み込まれる。なお、ICカード12は、OS及びアプリケーションなどのICカードの制御プログラムを記憶したROMを備える構成であってもよい。
不揮発性メモリ37内には、ISO/IEC7816により規定されているファイル構造が構成されている。例えば、不揮発性メモリ37内には、Master File(MF)、Dedicated File(DF)、及びElementary File(EF)などが記憶されている。
MFは、ファイル構造の根幹となるファイルである。
DFは、MFの下位に創成される。DFは、アプリケーション及びアプリケーションに用いられるデータなどをグループ化して格納するファイルである。
EFは、DFの下位に創成される。EFは、様々なデータを格納するためのファイルである。また、MFの直下にEFが置かれる場合もある。
RAM38は、データを一時的に格納する揮発性のメモリである。RAM38には、プロセッサ36が処理中のデータ、不揮発性メモリ37から読み出されたプログラムなどが一時的に格納される。例えば、RAM38は、計算用バッファ、受信用バッファ、及び送信用バッファとして機能する。計算用バッファは、プロセッサ36が実行する種々の演算処理の結果などを一時的に保持する為の領域である。受信用バッファは、上位装置11から受信したコマンド(コマンドデータ)などを一時的に保持する為の領域である。送信用バッファは、上位装置11に送信するレスポンス(レスポンスデータ)などを一時的に保持する為の領域である。
なお、プロセッサ36がプログラムを実行することにより実現する各種の機能のうちの一部は、ハードウエア回路としてICチップ33に組みこまれていてもよい。この場合、プロセッサ36は、ハードウエア回路により実行される機能を制御する。
接触通信インタフェース34は、上位装置11と接触通信を行う為の接触通信手段である。例えば、接触通信インタフェース34は、ICチップ33の端子と接続され、ICカード12の表面に露出したコンタクトパターンを備える。コンタクトパターンは、第1のカードリーダライタ22のスロットにICカード12が挿入された場合に、接触端子と物理的且つ電気的に接続されるように構成されている。接触通信インタフェース34は、上位装置11とICチップ33との間における電力供給、データの送受信を中継する。
非接触通信インタフェース35は、上位装置11と非接触通信を行う為の非接触通信手段である。例えば、非接触通信インタフェース35は、アンテナ(コイル)と、変復調回路と、電源回路とを備える。非接触通信インタフェース35は、送信するデータに応じた信号を変復調回路により変調し、アンテナに流すことにより、アンテナからデータに応じた電波を出力させる。また、非接触通信インタフェース35は、上位装置11の第2のカードリーダライタ23からの電波をアンテナにより受信し、受信した信号を変復調回路により復調し、元のデータを取得する。また、非接触通信インタフェース35は、上位装置11の第2のカードリーダライタ23からの電波によってアンテナに生じた誘起電流を電源回路により整流及び平滑し、所定の電源電圧をICチップ33に供給する。
(第1の実施形態)
次に、第1の実施形態におけるICカード12の活性化及び初期応答などの動作について説明する。
図2は、ICカード12からの初期応答について説明する為の説明図である。
ICカード12の不揮発性メモリ37は、ICカード12のカード操作方法を主体としたカードの特徴を示す情報(以下特徴情報と称する)を記憶する記憶領域を備える。特徴情報は、例えば、「メーカーの識別情報」、「ICチップの識別情報」、「書き換え可能回数」、及び「拡張フォーマットのサポートの有無」などを含むヒストリカルバイトとして構成される。即ち、不揮発性メモリ37は、ヒストリカルバイトが記憶された記憶領域を有する。
図2の例では、ヒストリカルバイトは、例えば、MFの下位の所定のEF41に予め格納されている。なお、ヒストリカルバイトは、例えば、DFの下位のEFに格納されていてもよい。ヒストリカルバイトは、EF以外の形態で不揮発性メモリ37に記憶されていてもよい。例えば、ヒストリカルバイトは、ヒストリカルバイトであることを示すタグが付加された状態で不揮発性メモリ37のいずれかの記憶領域に記憶されていればよい。
ICカード12は、活性化すると、初期応答を行う。初期応答では、ICカード12は、上位装置11とICカード12間の通信に関する設定を行う為の情報を上位装置11に送信する。
まず、接触通信について説明する。
接触通信では、ICカード12は、接触通信インタフェース34を介して上位装置11から供給された直流電源電圧により活性化する。ICカード12は、活性化すると、ISO/IEC7816の規定に基づき、初期応答を行う。具体的には、ICカード12は、不揮発性メモリ37から必要な情報を読み出し、例えばISO/IEC7816−3によりフレームフォーマットが規定されたATR(Answer−to−Reset)を上位装置11に送信する。
図2に示されるように、ATRは、「TS」、「T0」、「Interface byte(インターフェースバイト)」、「Historical Characters(ヒストリカルキャラクタ)」、及び「TSK」などを有する。なお、「インターフェースバイト」及び「ヒストリカルキャラクタ」は、オプションの情報である。
「TS(Initial Character TS)」は、信号の論理レベルとビット転送順を示す情報である。
「T0(Format byte T0)」は、「インターフェースバイト」の1セット目の「TA1」、「TB1」、「TC1」、及び「TD1」の存在の有無と、「ヒストリカルキャラクタ」の長さとを示す情報である。
「インターフェースバイト」は、データ転送プロトコル上の各種のパラメータを示す。「インターフェースバイト」は、例えば、データ転送速度などを示す情報である。
「ヒストリカルキャラクタ」は、ICカード12のカード操作方法を主体としたカードの特徴を示す情報(特徴情報)である。例えば、ICカード12のプロセッサ36は、不揮発性メモリ37のヒストリカルバイトが記憶されたEF41からヒストリカルバイトを読み出し、ヒストリカルバイトを「ヒストリカルキャラクタ」のフィールドにセットする。「ヒストリカルキャラクタ」は、最大で15bytesのデータであり、ISO/IEC7816−4で規定されている。
「TCK」は、「T0」から「TCK」までの各キャラクタの排他的論理和を示す情報である。「TCK」は、最大で32bytesのデータである。
ICカード12は、上記のATRを上位装置11に送信することにより、上位装置11との間で接触通信が可能な状態になる。
次に、非接触通信について説明する。
非接触通信では、上位装置11は、第2のカードリーダライタ23のアンテナからICカード12の活性化用の電波を出力しつつ、定期的にポーリング(初期応答要求コマンドの送信)を行う。
初期応答要求コマンドは、例えば、ISO/IEC14443で規定されたREQB(REQuest command typeB)、またはREQA(REQuest command typeA)などである。
ICカード12は、第2のカードリーダライタ23のアンテナからの電波によって、非接触通信インタフェース35のアンテナに生じた誘起電流を整流及び平滑し、直流電源電圧を得る。ICカード12は、直流電源電圧により活性化する。ICカード12は、活性化し、上位装置11から初期応答要求コマンドを受信すると、初期応答を上位装置11に送信する。
具体的には、ICカード12は、例えばISO/IEC14443で規定されたATQB(Answer To REQuest command typeB)、またはATQA(Answer To REQuest command typeA)などを初期応答として上位装置11に送信する。初期応答には、初期応答要求コマンドに対するレスポンス(初期応答)であることを示すパラメータ、擬似固有ICカード(PICC)識別子、応用データは、どのようなアプリケーションが書き込まれているかを示す応用データ、サポートしているプロトコルを示すプロトコル情報、及び巡回冗長検査符号などが含まれている。
上位装置11は、初期応答を受信すると、カードの特徴を示す情報(特徴情報)をICカード12に要求する為のコマンドをICカード12に送信する。具体的には、上位装置11は、ATS(Answer−to−Select)の送信をICカード12に要求するRATS(Request for Answer To Select)をICカード12に送信する。なお、ATS及びRATSは、ISO/IEC14443によりフレームフォーマットが規定されている。
ICカード12は、特徴情報の送信が要求されると、不揮発性メモリ37から必要な情報を読み出し、特徴情報を上位装置11に送信する。具体的には、ICカード12は、RATSを受信すると、不揮発性メモリ37のEF41からヒストリカルバイトを読み出し、ヒストリカルバイトが付加されたATSを上位装置11に送信する。
図2に示されるように、ATSは、「TL」、「T0」、「TA」、「TB」、「TC」、「ヒストリカルバイト」、及び「CRC(Cyclic Redundancy Check)」などを有する。
「TL」は、ATSの長さを示す情報(長さバイト)である。なお、「TL」が示す長さには、「CRC」のバイトは含まれない。
「T0」は、フォーマットバイトである。「T0」は、例えば、後続の「TA」、「TB」、「TC」、及び「ヒストリカルバイト」の有無、受信可能な最大フレーム長などの情報を示す。
「TA」、「TB」、及び「TC」は、インターフェースバイトである。「TA」は、通信速度に関する情報を示す。「TB」は、フレーム待ち時間、開始フレームガード時間などの情報を示す。「TC」は、「CID(Card IDentifier)」と「NAD(Node ADress)」のどちらをサポートしているかを示す。
「ヒストリカルバイト」は、ICカード12のカード操作方法を主体としたカードの特徴を示す情報(特徴情報)である。例えば、ICカード12のプロセッサ36は、不揮発性メモリ37のヒストリカルバイトが記憶されたEF41からヒストリカルバイトを読み出し、ATSの「ヒストリカルバイト」にセットする。
「CRC」は、誤り検出に用いられる符号である。
ICカード12がISO/IEC14443で規定されたtypeAである場合、ICカード12が上記のATSを上位装置11に送信することにより、上位装置11との間で非接触通信による通常のコマンドの処理が可能な状態になる。この場合、上位装置11は、SELECTコマンドをICカード12に送信することにより、DFに格納された任意のアプリケーションを実行させることができる。
また、ICカード12がISO/IEC14443で規定されたtypeBである場合、上位装置11は、ICカード12にATTRIBを送信する。ICカード12は、上位装置に対してATTRIBに対するレスポンスであるATA(Answer To ATTRIB)に、上記のATSまたはヒストリカルバイトを付加し、上位装置11に送信する。これにより、ICカード12と上位装置11との間で、非接触通信による通常のコマンドの処理が可能になる。
上記したように、ICカード12のプロセッサ36は、接触通信インタフェース34により上位装置11にATRを送信する場合、ヒストリカルバイトが記憶されたEF41からヒストリカルバイトを読み出し、ATRに付加し、送信する。
また、ICカード12のプロセッサ36は、非接触通信インタフェース35により上位装置11にATSを送信する場合、ヒストリカルバイトが記憶されたEF41からヒストリカルバイトを読み出し、ATSに付加し、送信する。
このように、ICカード12のプロセッサ36は、不揮発性メモリ37の所定の記憶領域(EF41)上のヒストリカルバイトを、接触通信におけるATRと、非接触通信におけるATSと、に付加する。即ち、ICカード12のプロセッサ36は、ATRを送信する場合もATSを送信する場合も、不揮発性メモリ37上で同じ記憶領域に記憶されているヒストリカルバイトを用いて、ATRの生成及びATSの生成を行う。
次に、第1の実施形態におけるヒストリカルバイトの書き換えについて説明する。
図3は、ICカード12の不揮発性メモリ37に記憶されているヒストリカルバイトの書き換えについて説明する為の説明図である。なお、図3では、ICカード12のプロセッサ36が実行したプログラム(OS及びアプリケーションなど)をブロック化して示している。
上位装置11は、第1のカードリーダライタ22または第2のカードリーダライタ23により、書換用のヒストリカルバイトが付加された所定のコマンドを、ICカード12に対して送信する。これにより、上位装置11は、ICカード12の不揮発性メモリ37のヒストリカルバイトを書き換えさせる。なお、書換用のヒストリカルバイトが付加されるコマンドは、任意でありどのようなコマンドであってもよい。
上位装置11からICカード12に送信されるコマンドは、ISO/IEC7816によりフォーマットが規定されており、「CLA」、「INS」、「P1」、「P2」、「Lc」、「Data」、及び「Le」などのフィールドを有する。
「CLA」は、コマンドの種別を示す情報である。「INS」は、コマンドの種別を示す情報である。「CLA」及び「INS」により、当該コマンドの種類が示される。
「P1」及び「P2」は、「INS」に応じたパラメータを示す情報である。「P1」及び「P2」は、例えばコマンドオプション指定を示す。例えば、「P1」及び「P2」は、処理対象のファイルのIDなどを示す。
「Lc」は、「Data」のデータの長さ(バイト数)を示す情報である。
「Data」は、当該コマンドのデータ本体を示す情報である。「Data」は、例えば、当該コマンドに基づくコマンド処理で使用されるデータなどを格納する。
「Le」は、当該コマンドに対するレスポンスのデータ長(最大長)を示す情報である。
上位装置11は、書換用のヒストリカルバイトを「Data」に付加する。即ち、上位装置11は、「Data」に書換用のヒストリカルバイトが付加されたコマンドを、ICカード12に送信する。
ICカード12のOSは、受信したコマンドの「CLA」及び「INS」の値を解析することにより、受信したコマンドの種類を認識する。ICカード12のOSは、受信したコマンドに応じた処理を実行する。例えば、ICカード12のOSは、書換用のヒストリカルバイトが付加されたコマンドを受信した場合、カードissuerが管理するアプリケーションに、受信したコマンドを渡す。
ICカード12のアプリケーションは、コマンドの「Data」に付加されていた書換用のヒストリカルバイトを例えばRAM38上のバッファ領域に設定する。また、アプリケーションは、不揮発性メモリ37上のヒストリカルバイトが記憶されている記憶領域のオフセット値、及び不揮発性メモリ37上のヒストリカルバイトの長さをそれぞれ算出する。即ち、アプリケーションは、不揮発性メモリ37上において、ATRの生成及びATSの生成に用いられるヒストリカルバイトが格納されているEF41の先頭までのオフセット値と、EF41内のヒストリカルバイトの長さ(またはEF41の長さ)とを算出する。
ICカード12のアプリケーションは、API(Application Programming Interface)により、コマンドに付加されていた書換用のヒストリカルバイトを不揮発性メモリ37に設定(上書き)する。APIは、オフセット値の算出結果と、ヒストリカルバイトの長さの算出結果とに基づいて、上書きを行う記憶領域を認識し、認識した記憶領域に、コマンドに付加されていた書換用のヒストリカルバイトを上書きする。アプリケーションは、処理結果に応じて、OSに処理結果を示す戻り値(応答)を送信する。なお、APIは、アプリケーションの一部として構成されているものであってもよいし、OSの一部として構成されているものであってもよい。
OSは、アプリケーションからの戻り値を確認し、結果に応じて上位装置11にレスポンスを送信する。ICカード12から上位装置11に送信されるレスポンスは、ISO/IEC7816によりフォーマットが規定されており、「SW1」及び「SW2」などのフィールドを有する。
「SW1」及び「SW2」は、ICカード12における処理結果を示す情報(ステータスバイト)である。上位装置11は、「SW1」及び「SW2」が正常終了を示す値である場合、ICカード12においてヒストリカルバイトの書き換えが正常に行われたことを認識する。
なお、ICカード12は、コマンドの「Data」に付加されていた書換用のヒストリカルバイトのバッファへの設定をOSが行う構成であってもよい。また、ICカード12は、不揮発性メモリ37上のヒストリカルバイトが記憶されている記憶領域のオフセット値の算出、及び不揮発性メモリ37上のヒストリカルバイトの長さの算出をOSが行う構成であってもよい。この場合、OSは、バッファ上のヒストリカルバイトを設定したアドレス、オフセット値の算出結果、ヒストリカルバイトの長さの算出結果をアプリケーションに渡す。
上記したように、ICカード12の不揮発性メモリ37上には、ヒストリカルバイトが記憶される記憶領域が設けられている。ICカード12のプロセッサ36は、不揮発性メモリ37上のヒストリカルバイトに基づいて、ATR及びATSを設定する。即ち、プロセッサ36は、不揮発性メモリ37上のヒストリカルバイトが記憶されている記憶領域からヒストリカルバイトを読み出し、ATR及びATSに付加する。また、ICカード12のプロセッサ36は、書換用のヒストリカルバイトが付加された所定のコマンドを受信した場合、不揮発性メモリ37上のヒストリカルバイトが記憶されている記憶領域に書換用のヒストリカルバイトを上書きする。
これにより、接触通信におけるATRに付加されるヒストリカルバイトと、非接触通信におけるATSに付加されるヒストリカルバイトとが、書換用のヒストリカルバイトを含む所定のコマンドに基づいて設定される。即ち、ATRに付加されるヒストリカルバイトと、ATSに付加されるヒストリカルバイトとの両方が、1つのコマンドによって変更される。これにより、ATRに付加されるヒストリカルバイトと、ATSに付加されるヒストリカルバイトとを個別に変更する必要がなくなる。この結果、ICカードの利便性を向上させることができる。
(第2の実施形態)
次に、第2の実施形態におけるICカード12の活性化及び初期応答などの動作について説明する。第1の実施形態は、不揮発性メモリ37上のヒストリカルバイトが記憶される記憶領域からヒストリカルバイトを読み出し、ATRの生成及びATSの生成の両方に用いる構成であると説明した。これに対し、第2の実施形態は、不揮発性メモリ37上にATR用のヒストリカルバイトが記憶される記憶領域と、ATS用のヒストリカルバイトが記憶される記憶領域と、が設けられている点が異なる。なお、第1の実施形態と同じ構成には、同じ参照符号を付し、重複する説明を省略する。
図4は、ICカード12からの初期応答について説明する為の説明図である。
図4に示されるように、第2の実施形態に係るICカード12の不揮発性メモリ37には、第1のEF42(第1の記憶領域)と第2のEF43(第2の記憶領域)とが設けられている。ATRの生成時に用いられるヒストリカルバイト(ATR用のヒストリカルバイト)は、例えば、DFの下位の第1のEF42に格納されている。また、ATSの生成時に用いられるヒストリカルバイト(ATS用のヒストリカルバイト)は、例えば、第1のEF42とは異なる第2のEF43に格納されている。なお、ATR用のヒストリカルバイトとATS用のヒストリカルバイトとは、内容が同じデータである。
また、MFの下位に第1のEF42と第2のEF43とが設けられていてもよい。またさらに、ヒストリカルバイトは、EF以外の形態で不揮発性メモリ37に記憶されていてもよい。例えば、ヒストリカルバイトは、ATR用のヒストリカルバイトまたはATS用のヒストリカルバイトであることを示すタグが付加された状態で、不揮発性メモリ37のいずれかの記憶領域に記憶されていればよい。
まず、接触通信について説明する。
例えば、接触通信では、ICカード12は、活性化すると、ISO/IEC7816の規定に基づき、初期応答を行う。具体的には、ICカード12は、不揮発性メモリ37の第1のEF42からATR用ヒストリカルバイトを読み出し、ATRにATR用ヒストリカルバイトを付加し、上位装置11に送信する。これにより、ICカード12は、上位装置11との間で接触通信が可能な状態になる。
次に、非接触通信について説明する。
例えば、非接触通信では、ICカード12は、活性化すると、ISO/IEC14443の規定に基づき初期応答を上位装置11に送信する。
上位装置11は、初期応答を受信すると、ICカード12に対して特徴情報を要求するコマンドを送信する。
ICカード12は、特徴情報を要求するコマンドを受信すると、不揮発性メモリ37の第2のEF43からATS用ヒストリカルバイトを読み出し、ATSにATS用ヒストリカルバイトを付加し、ATSを上位装置11に送信する。これにより、上位装置11とICカード12との間で非接触通信による通常のコマンドの処理が可能な状態になる。
特徴情報を要求するコマンドは、ICカード12がISO/IEC14443で規定されたtypeAである場合、RATSである。この場合、ICカード12は、RATSの受信に応じてATSを上位装置11に送信する。
また、特徴情報を要求するコマンドは、ICカード12がISO/IEC14443で規定されたtypeBである場合、ATTRIBである。この場合、ICカード12は、ATTRIBの受信に応じてATAを生成し、ATSをATAに付加し、上位装置11に送信する。
次に、第2の実施形態におけるヒストリカルバイトの書き換えについて説明する。
図5は、ICカード12の不揮発性メモリ37に記憶されているヒストリカルバイトの書き換えについて説明する為の説明図である。なお、図5では、ICカード12のプロセッサ36が実行したプログラム(OS及びアプリケーションなど)をブロック化して示している。
上位装置11は、第1のカードリーダライタ22または第2のカードリーダライタ23により、書換用のヒストリカルバイトが付加された所定のコマンドを、ICカード12に対して送信する。
ICカード12のOSは、受信したコマンドの「CLA」及び「INS」の値を解析することにより、受信したコマンドの種類を認識する。ICカード12のOSは、受信したコマンドに応じた処理を実行する。例えば、ICカード12のOSは、書換用のヒストリカルバイトが付加された所定のコマンドを受信した場合、カードissuerが管理するアプリケーションに、受信したコマンドを渡す。
ICカード12のアプリケーションは、コマンドの「Data」に付加されていた書換用のヒストリカルバイトを、例えばRAM38上のバッファ領域に設定する。また、アプリケーションは、不揮発性メモリ37上のATR用のヒストリカルバイトが記憶されている記憶領域のオフセット値、及び不揮発性メモリ37上のATR用のヒストリカルバイトの長さをそれぞれ算出する。また、アプリケーションは、不揮発性メモリ37上のATS用のヒストリカルバイトが記憶されている記憶領域のオフセット値、及び不揮発性メモリ37上のATS用のヒストリカルバイトの長さをそれぞれ算出する。即ち、アプリケーションは、不揮発性メモリ37上において、ATR用のヒストリカルバイト及びATS用のヒストリカルバイトが格納されている第1のEF42及び第2のEF43のそれぞれの先頭までのオフセット値と、ヒストリカルバイトの長さとを算出する。
ICカード12のアプリケーションは、コマンドの「Data」から書換用のヒストリカルバイトを取得し、取得した書換用のヒストリカルバイトを、第1のEF42のATR用のヒストリカルバイト及び第2のEF43のATS用のヒストリカルバイトに設定(上書き)する。アプリケーションは、処理結果に応じて、OSに処理結果を示す戻り値(応答)を送信する。
OSは、アプリケーションからの戻り値を確認し、結果に応じて上位装置11にレスポンスを送信する。
上記したように、第2の実施形態のICカード12の不揮発性メモリ37上には、ATR用のヒストリカルバイトを記憶する第1の記憶領域と、ATS用のヒストリカルバイトを記憶する第2の記憶領域と、が別に設けられている。ICカード12のプロセッサ36は、書換用のヒストリカルバイトを含む所定のコマンドに基づいて、第1の記憶領域と第2の記憶領域との両方を書き換える。即ち、プロセッサ36は、所定のコマンドに含まれている書換用のヒストリカルバイトを、第1の記憶領域上のATR用のヒストリカルバイトと、第2の記憶領域上のATS用のヒストリカルバイトとの両方に上書きする。プロセッサ36は、第1の記憶領域のATR用のヒストリカルバイトを、接触通信におけるATRに付加する。また、ICカード12のプロセッサ36は、第2の記憶領域のATS用のヒストリカルバイトを、非接触通信におけるATSに付加する。
上記の構成によっても、接触通信におけるATRに付加されるヒストリカルバイトと、非接触通信におけるATSに付加されるヒストリカルバイトとが、書換用のヒストリカルバイトを含む所定のコマンドに基づいて変更される。即ち、ATRに付加されるヒストリカルバイトと、ATSに付加されるヒストリカルバイトとの両方が、1つのコマンドによって変更される。これにより、ATRに付加されるヒストリカルバイトと、ATSに付加されるヒストリカルバイトとを個別に変更する必要がなくなる。この結果、ICカードの利便性を向上させることができる。
なお、上述の各実施の形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…ICカード処理システム、11…上位装置、12…ICカード、21…コントローラ、22…第1のカードリーダライタ、23…第2のカードリーダライタ、24…ディスプレイ、25…操作インタフェース、26…プロセッサ、27…メモリ、31…本体、32…ICモジュール、33…ICチップ、34…接触通信インタフェース、35…非接触通信インタフェース、36…プロセッサ、37…不揮発性メモリ、38…RAM。

Claims (5)

  1. リーダライタと接触通信を行う接触通信インタフェースと、
    前記リーダライタと非接触通信を行う非接触通信インタフェースと、
    所定のコマンドに含まれているヒストリカルバイトに基づいて、前記接触通信におけるATR(Answer To Reset)と、前記非接触通信におけるATS(Answer To Select)とを設定するプロセッサと、
    を具備するICカード。
  2. 前記ヒストリカルバイトが記憶された記憶領域を有する不揮発性メモリをさらに具備し、
    前記プロセッサは、前記不揮発性メモリの前記記憶領域上の前記ヒストリカルバイトを、前記ATRと、前記ATSと、に付加する請求項1に記載のICカード。
  3. 前記プロセッサは、前記ヒストリカルバイトを含む所定のコマンドに基づいて、前記不揮発性メモリの前記記憶領域上の前記ヒストリカルバイトを書き換える請求項2に記載のICカード。
  4. 第1の記憶領域と、第2の記憶領域と、を有する不揮発性メモリをさらに具備し、
    前記プロセッサは、
    所定のコマンドに含まれている前記ヒストリカルバイトを、前記第1の記憶領域と前記第2の記憶領域に上書きし、
    前記第1の記憶領域上の前記ヒストリカルバイトを、前記ATRに付加し、
    前記第2の記憶領域上の前記ヒストリカルバイトを、前記ATSに付加する、
    請求項1に記載のICカード。
  5. リーダライタと接触通信を行う接触通信インタフェースと、前記リーダライタと非接触通信を行う非接触通信インタフェースと、プロセッサと、を具備するICカードにおいて実行されるICカードの制御プログラムであって、
    前記制御プログラムは、前記プロセッサに、所定のコマンドに含まれているヒストリカルバイトに基づいて、前記接触通信におけるATR(Answer To Reset)と、前記非接触通信におけるATS(Answer To Select)とを設定させる、
    ICカードの制御プログラム。
JP2019230798A 2019-12-20 2019-12-20 Icカード及びicカードの制御プログラム Active JP7433886B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019230798A JP7433886B2 (ja) 2019-12-20 2019-12-20 Icカード及びicカードの制御プログラム
EP20901817.5A EP4053743A4 (en) 2019-12-20 2020-11-30 IC CARD AND CONTROL PROGRAM FOR IC CARD
PCT/JP2020/044425 WO2021124846A1 (ja) 2019-12-20 2020-11-30 Icカード及びicカードの制御プログラム
US17/807,251 US11868836B2 (en) 2019-12-20 2022-06-16 IC card and control program for IC card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019230798A JP7433886B2 (ja) 2019-12-20 2019-12-20 Icカード及びicカードの制御プログラム

Publications (2)

Publication Number Publication Date
JP2021099632A true JP2021099632A (ja) 2021-07-01
JP7433886B2 JP7433886B2 (ja) 2024-02-20

Family

ID=76478721

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019230798A Active JP7433886B2 (ja) 2019-12-20 2019-12-20 Icカード及びicカードの制御プログラム

Country Status (4)

Country Link
US (1) US11868836B2 (ja)
EP (1) EP4053743A4 (ja)
JP (1) JP7433886B2 (ja)
WO (1) WO2021124846A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231331A (ja) * 1995-12-22 1997-09-05 Dainippon Printing Co Ltd Icカード
JP2001101362A (ja) * 1999-09-30 2001-04-13 Dainippon Printing Co Ltd Icカードシステム
JP2003168092A (ja) * 2001-11-29 2003-06-13 Sharp Corp コンビネーション型icカード、及びその制御方法、並びにそのシステムプログラム
JP2003288561A (ja) * 2002-03-28 2003-10-10 Toppan Printing Co Ltd Icカード
US20060095598A1 (en) * 2004-10-30 2006-05-04 Axalto Inc. Method and apparatus of extending answer to reset and subsequent communications between a smart card and a chip card interface device
JP2011243027A (ja) * 2010-05-19 2011-12-01 Toppan Printing Co Ltd 処理装置の報知方法、icカード、及び処理装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4231148B2 (ja) 1998-12-04 2009-02-25 大日本印刷株式会社 携帯可能記憶媒体及びその発行方法
JP2002304605A (ja) 2001-04-03 2002-10-18 Dainippon Printing Co Ltd Icカード
JP4558259B2 (ja) * 2002-05-23 2010-10-06 シャープ株式会社 コンビネーション型icカード
US20060016868A1 (en) * 2004-07-01 2006-01-26 American Express Travel Related Services Company, Inc. Method and system for hand geometry recognition biometrics on a smartcard
JP4640451B2 (ja) * 2008-06-06 2011-03-02 ソニー株式会社 接触・非接触複合icカード、通信方法、プログラム及び通信システム
SG165220A1 (en) * 2009-03-25 2010-10-28 Toshiba Kk Processing apparatus of portable electronic devices, portable electronic device, and processing system of portable electronic devices
EP2395427A1 (en) * 2010-06-08 2011-12-14 Gemalto SA Method for connecting to a remote server from a browser enabled with a browser's extension on a host device
JP2013122690A (ja) * 2011-12-12 2013-06-20 Toshiba Corp Icカード、携帯可能電子装置、および、icカードの制御方法
JP5838103B2 (ja) * 2012-02-17 2015-12-24 株式会社日立製作所 電子装置、ソフトエラー耐性評価システム及び評価方法
US9449912B1 (en) * 2015-06-11 2016-09-20 Stmicroelectronics Pte Ltd Integrated circuit (IC) card having an IC module and reduced bond wire stress and method of forming
US10140197B2 (en) * 2015-10-23 2018-11-27 Oberthur Technologies Of America Corp Method performed by an electronic device capable of communicating with a reader with improved self-testing
WO2018136494A1 (en) * 2017-01-17 2018-07-26 Visa International Service Association Binding cryptogram with protocol characteristics

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231331A (ja) * 1995-12-22 1997-09-05 Dainippon Printing Co Ltd Icカード
JP2001101362A (ja) * 1999-09-30 2001-04-13 Dainippon Printing Co Ltd Icカードシステム
JP2003168092A (ja) * 2001-11-29 2003-06-13 Sharp Corp コンビネーション型icカード、及びその制御方法、並びにそのシステムプログラム
JP2003288561A (ja) * 2002-03-28 2003-10-10 Toppan Printing Co Ltd Icカード
US20060095598A1 (en) * 2004-10-30 2006-05-04 Axalto Inc. Method and apparatus of extending answer to reset and subsequent communications between a smart card and a chip card interface device
JP2011243027A (ja) * 2010-05-19 2011-12-01 Toppan Printing Co Ltd 処理装置の報知方法、icカード、及び処理装置

Also Published As

Publication number Publication date
US11868836B2 (en) 2024-01-09
US20220309312A1 (en) 2022-09-29
EP4053743A4 (en) 2023-12-13
EP4053743A1 (en) 2022-09-07
JP7433886B2 (ja) 2024-02-20
WO2021124846A1 (ja) 2021-06-24

Similar Documents

Publication Publication Date Title
US8931705B2 (en) IC card, mobile electronic device and data processing method in IC card
US20100240318A1 (en) Mobile electronic device and control method of mobile electronic device
US20120234926A1 (en) Portable electronic apparatus
WO2021124846A1 (ja) Icカード及びicカードの制御プログラム
JP5444138B2 (ja) 通信システム、通信方法及び携帯可能電子装置
US8665070B2 (en) Mobile electronic device
JP2007087168A (ja) 複合携帯可能電子装置および複合icカード
EP3379424B1 (en) Ic card, portable electronic device, program, processing apparatus, and processing system
JP7366765B2 (ja) Icカード、icカード処理システム、及びicカード処理装置の制御プログラム
CN112613872A (zh) 作为协议接口的类型4nfc标记
JP6092342B2 (ja) 非接触式携帯可能電子装置、及び非接触式携帯可能電子装置の発行方法
JP6325394B2 (ja) Icカード、携帯可能電子装置、及び、icカード処理装置
JP5957347B2 (ja) Icカード、および携帯可能電子装置
JP2017142655A (ja) 電子情報記憶媒体、情報処理方法、及び情報処理プログラム
JP5684059B2 (ja) Icカード、及びicカードの制御方法
JP2013164686A (ja) Icカードおよび携帯可能電子装置
JP5875772B2 (ja) 携帯可能電子装置、携帯可能電子装置の制御方法、及び携帯可能電子装置の処理システム
JP2024064165A (ja) 電子情報記憶媒体、icチップ、非接触型icカード、処理方法、及びプログラム
JP6071677B2 (ja) Icカード、icモジュールおよび携帯可能電子装置
JP2014063310A (ja) Icカード、携帯可能電子装置、及びicカード処理装置
JP2012018649A (ja) 非接触式icカード、非接触式携帯可能電子装置及び通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220713

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20230105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230906

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231130

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: 20240109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240207

R150 Certificate of patent or registration of utility model

Ref document number: 7433886

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150