JP2020027558A - Icカードおよびicカードの制御方法 - Google Patents

Icカードおよびicカードの制御方法 Download PDF

Info

Publication number
JP2020027558A
JP2020027558A JP2018153381A JP2018153381A JP2020027558A JP 2020027558 A JP2020027558 A JP 2020027558A JP 2018153381 A JP2018153381 A JP 2018153381A JP 2018153381 A JP2018153381 A JP 2018153381A JP 2020027558 A JP2020027558 A JP 2020027558A
Authority
JP
Japan
Prior art keywords
authentication
card
standby time
unit
processing 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.)
Pending
Application number
JP2018153381A
Other languages
English (en)
Inventor
智孝 奥野
Tomotaka Okuno
智孝 奥野
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 JP2018153381A priority Critical patent/JP2020027558A/ja
Priority to EP19191440.7A priority patent/EP3611648A1/en
Priority to US16/538,893 priority patent/US20200057732A1/en
Priority to SG10201907461RA priority patent/SG10201907461RA/en
Publication of JP2020027558A publication Critical patent/JP2020027558A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】利便性を向上させることができるICカードおよびICカードの制御方法を提供する。【解決手段】ICカード1は、通信部40と、認証情報記憶部83と、認証処理部53とを持つ。通信部40は、端末装置と通信を行う。認証情報記憶部は、使用者を認証する認証情報を記憶する。認証処理部は、通信部により端末装置から受信した入力情報と認証情報記憶部に記憶された認証情報とに基づいて、本人認証を行う。また、認証処理部は、本人認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長する。【選択図】図3

Description

本発明の実施形態は、ICカードおよびICカードの制御方法に関する。
近年、カード使用者の認証機能を持つIC(Integrated Circuit)チップを内蔵したICカードが知られている。このようなICカードでは、PIN(Personal Identification Number)や暗号鍵の総当り攻撃を防ぐための機能が搭載されている。総当たり攻撃を防ぐための機能としては、認証の試行回数の上限を設定し、その上限に達した場合に使用を禁止する機能や、認証が失敗した場合に次回の認証完了までの時間を延長させる機能がある。しかしながら、何れの機能も使用者の利便性が損なわれる場合があった。
特開2005−190348号公報 特開2011−82727号公報 特開2005−242852号公報
本発明が解決しようとする課題は、利便性を向上させることができるICカードおよびICカードの制御方法を提供することである。
実施形態のICカードは、通信部と、記憶部と、認証処理部とを持つ。通信部は、端末装置と通信を行う。記憶部は、使用者を認証する認証情報を記憶する。認証処理部は、前記通信部により前記端末装置から受信した入力情報と前記記憶部に記憶された認証情報とに基づいて、本人認証を行う。また、認証処理部は、前記本人認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長する。
実施形態のICカード1の一例を示す外観図。 実施形態のICカード1のハードウェア構成例を示す図。 実施形態のICカード1の機能構成例を示すブロック図。 実施形態の認証結果記憶部84が記憶する認証結果の一例を示す図。 実施形態の待機時間情報記憶部85が記憶する待機時間情報の一例を示す図。 ICカード1が実行する認証処理の第1実施例を示すフローチャート。 ICカード1が実行する認証処理の第2実施例を示すフローチャート。 ICカード1が実行する認証処理の第3実施例を示すフローチャート。
以下、実施形態のICカードおよびICカードの制御方法を、図面を参照して説明する。
図1は、実施形態のICカード1の一例を示す外観図である。図1に示すように、ICカード1は、ICモジュール10を備える。ICモジュール10は、コンタクト部3と、内部にICチップ100とを備える。
ICカード1は、例えば、プラスチックのカード基材PT(カード本体の一例)に、ICモジュール10を実装して形成されている。すなわち、ICカード1は、ICモジュール10と、ICモジュール10が埋め込まれたカード基材PTとを備える。また、ICカード1は、コンタクト部3を介して外部装置2と通信可能である。
ICカード1は、例えば、外部装置2が送信したコマンド(処理要求)を、コンタクト部3を介して受信し、受信したコマンドに応じた処理(コマンド処理)を実行する。そして、ICカード1は、コマンド処理の実行結果であるレスポンス(処理応答)を外部装置2にコンタクト部3を介して送信する。
外部装置2は、ICカード1と通信する装置であり、例えば、リーダ/ライタ装置を含む端末装置等である。外部装置2は、カード使用者等によって入力されたコマンドやその他の入力情報(例えば、PINや暗号鍵)をICカード1に送信し、受信したレスポンスに基づいて、ICカード内に記憶されるデータの読み出しや書き込み、更新等の処理を実行する。
ICモジュール10は、コンタクト部3と、ICチップ100とを備え、例えば、テープ上にICモジュール10が複数配置されたCOT(Chip On Tape)等の形態で取引されるモジュールである。なお、テープから個片抜きして切り離した単体のICモジュール10をCOTという場合がある。
コンタクト部3は、ICカード1が動作するために必要な各種信号の端子を有している。ここで、各種信号の端子は、電源電圧、クロック信号、リセット信号等を外部装置2から供給を受ける端子、及び、外部装置2と通信するためのシリアルデ―タ入出力端子(SIO端子)を有する。ICチップ100は、例えば、1チップのマイクロプロセッサ等のLSI(Large Scale Integration)である。
次に、図2を参照して、実施形態のICカード1のハードウェア構成について説明する。図2は、実施形態のICカード1のハードウェア構成例を示す図である。図2に示すように、ICカード1は、コンタクト部3と、ICチップ100とを備えたICモジュール10を備えている。そして、ICチップ100は、UART(Universal Asynchronous Receiver Transmitter)4と、CPU5と、ROM(Read Only Memory)6と、RAM(Random Access Memory)7と、EEPROM(Electrically Erasable Programmable ROM)8とを備えている。また、各構成(4から8)は、内部バスBS1を介して接続されている。
UART4は、上述したSIO端子を介して、外部装置2とシリアルデータ通信を行う。UART4は、SIO端子を介して受信したシリアルデータ信号をパラレル変換したデータ(例えば、1バイトのデータ)を内部バスBS1に出力する。また、UART4は、内部バスBS1を介して取得したデータをシリアル変換して、SIO端子を介して外部装置2に出力する。UART4は、例えば、SIO端子を介してコマンドを外部装置2から受信する。また、UART4は、SIO端子を介してレスポンスを外部装置2に送信する。
CPU5は、ROM6又はEEPROM8に記憶されているプログラムを実行して、ICカード1の各種処理を行う。CPU5は、例えば、コンタクト部3を介して、UART4が受信したコマンドに応じたコマンド処理を実行する。
ROM6は、例えば、マスクROM等の不揮発性メモリであり、ICカード1の各種処理を実行するためのプログラム、及びコマンドテーブル等のデータを記憶する。RAM7は、例えば、SRAM(Static RAM)等の揮発性メモリであり、ICカード1の各種処理を行う際に利用されるデータを一時記憶する。EEPROM8は、例えば、電気的に書き換え可能な不揮発性メモリである。EEPROM8は、ICカード1が利用する各種データを記憶する。EEPROM8は、例えば、ICカード1を利用した各種サービス(アプリケーション)に使用される情報を記憶する。
次に、図3を参照して、実施形態によるICカード1の機能構成例について説明する。図3は、実施形態のICカード1の機能構成例を示すブロック図である。図3に示すように、ICカード1は、例えば、通信部40と、制御部50と、APデータ記憶部81と、ファイル管理情報記憶部82と、認証情報記憶部83と、認証結果記憶部84と、待機時間情報記憶部85と、を備える。また、制御部50は、例えば、CPU5と、RAM7と、ROM6又はEEPROM8とにより実現され、ICカード1を統括的に制御する。制御部50は、例えば、コマンド処理部51と、ファイル管理部52と、認証処理部53と、待機時間制御部54とを備える。ここで、図3に示されるICカード1の各部は、図2に示されるICカード1のハードウェアを用いて実現される。
通信部40は、例えば、UART4と、CPU5と、ROM6に記憶されているプログラムとにより実現され、コンタクト部3を介して、例えば、外部装置2との間でコマンド及びレスポンスの送受信を行う。すなわち、通信部40は、所定の処理を要求するコマンド(処理要求)を外部装置2から受信するとともに、コマンドに対するレスポンス(処理応答)を外部装置2に送信する。
AP(アプリケーション)データ記憶部81は、例えば、EEPROM8により構成された記憶部であり、アプリケーションで使用される各種データを記憶する。APデータ記憶部81は、所定のデータ領域に、MF(Master File)、DF(Dedicated File)、EF(Elementary File)等のファイルが階層構造になって記憶されている。なお、EFは、識別情報(以下、EFID)によって識別可能に管理され、それぞれのEFには、例えば、TLV形式(Tag-Length-value形式)のデータ(特定のデータ)が格納される。すなわち、APデータ記憶部81は、TLV形式のデータを含むファイルを記憶する。特定のデータには、例えば、例えば、使用者の「氏名」、「住所」、「生年月日」、「年齢」「電話番号」等の個人情報や、特定の権限者(例えば、本人認証が成功したカード使用者)でなければアクセスできない情報、その他情報が含まれる。また、これらの情報は、復号鍵情報に基づいて復号可能に暗号化されて記憶されてもよい。
ファイル管理情報記憶部82は、例えば、EEPROM8により構成された記憶部であり、上述した各種ファイルを管理する管理情報(例えば、ディレクトリ情報)を記憶する。ファイル管理情報記憶部82は、例えば、ファイル名、ファイルID等のファイル識別情報と、ファイルの先頭のアドレス(以下、ファイルの先頭アドレスという)とを対応付けて記憶する。ここで、ファイルの先頭アドレスは、例えば、EEPROM8の物理アドレスである。ICカード1において、各ファイルの選択、又は、各ファイルにアクセス処理を実行する場合には、ファイル管理情報記憶部82が記憶するファイル管理情報に基づいて、各ファイルの選択、又は、各ファイルにアクセス処理を実行する。ここで、アクセス処理とは、データの読み出し、書き込み、更新等の処理のことである。
認証情報記憶部83は、例えば、EEPROM8により構成された記憶部であり、カード使用者を認証するパスワードであるPIN(以下、認証PINと称する)を記憶する。認証PINは、認証情報の一例である。また、認証情報記憶部83は、暗号化処理及び復号処理を実行させるためのセキュリティ情報を記憶してもよい。セキュリティ情報には、例えば、暗号化処理及び復号処理を実行させるためのプログラムと、暗号化処理及び復号処理を実行させるための鍵情報(例えば、共通鍵などの暗号鍵)とが含まれる。
認証結果記憶部84は、例えば、EEPROM8により構成された記憶部であり、認証処理部53による使用者の認証結果を記憶する。図4は、実施形態の認証結果記憶部84が記憶する認証結果の一例を示す図である。認証結果記憶部84は、図4に示すように、認証処理部53により認証が連続して失敗した回数をカウントした値(以下、連続失敗回数カウンタ値と称する)を記憶する。連続失敗回数カウンタ値は、認証が成功した場合に、認証処理部53によりリセットされる。なお、認証結果記憶部84は、例えば、RAM7により構成された記憶部であってもよい。その場合、認証結果記憶部84は、ICカード1に電源が供給されている間での連続失敗回数を記憶する。
待機時間情報記憶部85は、例えば、EEPROM8により構成された記憶部であり、認証が失敗した後に、再度の認証完了が可能になるまでの待機時間情報を記憶する。図5は、実施形態の待機時間情報記憶部85が記憶する待機時間情報の一例を示す図である。図5に示すように、待機時間情報記憶部85は、待機時間情報として、認証失敗回数と、待機時間とを対応付けたテーブルを記憶する。待機時間制御部54は、認証失敗回数を特定すると、その認証回数に対応する待機時間をテーブルから取得する。テーブルは、認証失敗回数が多くなるほど待機時間が長くなるように設定されている。例えば、認証失敗回数に比例して待機時間の長さが設定されてもよく、認証失敗回数に比例して待機時間の変化量が大きくなるように待機時間の長さが設定されてもよい。ただし、待機時間が上限に達した場合は、上限値で固定されてもよい。
なお、待機時間の最小値は、例えば、攻撃者(第三者)による認証PINや暗号鍵の総当り攻撃の成功にかかる時間の期待値が、攻撃者にとって魅力のないものとなる値に設定する。また、待機時間は、例えば、総当たり攻撃によって認証PINや暗号鍵が特定できるまでのコストが、特定できた後に利用できる情報の価値よりも高くなる境界値付近に設定する。また、待機時間の最大値は、ICカード1の使用頻度等に応じて設定する。例えば、毎日使用する必要があると推定されるICカード1の待機時間の最大値は、24時間(一日)未満になるように設定する。
コマンド処理部51は、外部装置2からICカード1に送信されたコマンド(処理要求)に応じて、各種コマンドの処理(コマンド処理)を実行する。コマンド処理部51は、例えば、通信部40を介して外部装置2から受信したコマンドに応じて、コマンド処理を実行する。また、コマンド処理部51は、コマンド処理の結果であるレスポンスを、通信部40を介して外部装置2に送信する。
例えば、コマンド処理部51は、外部装置2から受信したコマンドが、本人確認等の認証処理を行うコマンド(例えば、VERIFYコマンド)である場合に、認証処理部53により認証処理を実行させる。また、コマンド処理部51は、外部装置2から受信したコマンドが、データをアクセスするアクセス処理コマンドである場合に、ファイル管理部52によりファイルへのアクセス管理を実行させる。アクセス処理コマンドとは、例えば、データの書き込み、読み出し、更新等のアクセス処理を実行するコマンドである。
ファイル管理部52は、コマンド処理部51の制御により、入力されたアクセス処理コマンドに対し、ファイル管理情報記憶部82が記憶する管理情報(例えば、ディレクトリ情報)に基づいて、APデータ記憶部81内のファイルを管理する。ファイル管理部52は、例えば、ファイルへのアクセス処理を実行する際に、コマンドのパラメータに基づいてファイル管理情報記憶部82が記憶する管理情報を検索して、ファイルの記憶場所を特定する。また、ファイル管理部52は、特定されたファイルに対するコマンドに対応する書き込み、読み出し、および更新等のアクセス処理を実行する。なお、記憶された情報が暗号化されている場合、ファイル管理部52は、コマンドに含まれる復号鍵に基づいて復号処理を行い復号した情報を読み出す。また、記憶する情報に暗号化が必要な場合には、認証情報記憶部83に記憶された暗号鍵を用いて暗号化を行う。
認証処理部53は、コマンド処理部51の制御により、通信部40により受信した認証用のコマンドに含まれるPIN(以下、入力PINと称する)と、認証情報記憶部83に記憶された認証PINとを照合し、合致しているか否かに応じてカード使用者の本人認証を行う。合致するとは、例えば、完全一致することである。認証処理部53は、入力PINと認証PINとが合致する場合に、カード使用者の認証が成功したと判断し、合致していない場合に認証が失敗したと判断する。また、認証処理部53は、前回の認証処理において、本人認証に失敗している場合に、再度の認証完了が可能となるまでの認証処理時間を延長する。
例えば、認証処理部53は、外部装置2から入力PINを受信した場合に、認証結果記憶部84により記憶された連続失敗回数カウンタ値を取得し、取得した連続失敗回数カウンタ値を待機時間制御部54に出力して待機時間の問い合わせを行う。待機時間制御部54は、認証処理部53により待機時間の問い合わせがあった場合に、連続失敗回数カウンタ値に基づいて、待機時間情報記憶部85が記憶した待機時間情報を参照し、連続失敗回数カウンタ値に合致する認証失敗回数に対応付けられた待機時間を取得する。図5の例において、待機時間制御部54は、連続失敗回数カウンタ値が1の場合には、待機時間1分を取得し、連続して失敗した回数が2回の場合は、待機時間10分を取得する。待機時間制御部54は、取得した待機時間を認証処理部53に出力する。認証処理部53は、待機時間制御部54により得られる待機時間に基づいて、入力PINを受信した時間を基準に、認証処理時間を延長する。認証処理部53の機能の詳細については、後述する。
認証処理部53は、カード使用者の認証が成功すると、APデータ記憶部81におけるセキュアな領域へのアクセスを許可し、所定の処理を実行可能な状態とする。また、認証処理部53は、認証結果のデータを、通信部40を介して外部装置2に送信する。また、認証処理部53は、認証に失敗したと判断した場合に、連続失敗回数カウンタ値をインクリメントする。また、認証処理部53は、認証に成功したと判断した場合に、連続失敗回数カウンタ値をクリアする。
次に、図面を参照して、実施形態のICカード1の動作について説明する。なお、以下の処理では、主に、認証処理部53の機能(認証処理)を中心に説明する。なお、以下に示す認証処理では、例えば、外部装置2とICカード1とがコンタクト部3を介して接続され、ICカード1がアクティブ(電源供給時)な状態であるものとする。
図6は、ICカード1が実行する認証処理の第1実施例を示すフローチャートである。図6の例において、コマンド処理部51は、ICカード1がVERIFYコマンドを受信し(ステップS100)、受信したVERIFYに含まれる入力PINを取得する(ステップS102)。次に、認証処理部53は、認証結果記憶部84に記憶された連続失敗回数カウンタ値を取得し、待機時間制御部54に待機時間を問い合わせる(ステップS104)。
待機時間制御部54は、連続失敗回数カウンタ値に対応付けられた待機時間を取得し、取得した待機時間を認証処理部53に出力する(ステップS106)。認証処理部53は、待機時間のカウントを開始し(ステップS108)、待機時間が経過したか否かを判定する(ステップS110)。待機時間が経過していない場合、待機時間が経過するまで待機し、待機時間が経過した場合、認証処理部53は、認証情報記憶部83により記憶された入力PINを取得する(ステップS112)。次に、認証処理部53は、入力PINと認証PINとを照合し(ステップS114)、合致するか否かを判定する(ステップS116)。
入力PINと認証PINとが合致した場合、認証処理部53は、APデータ記憶部81に記憶されたデータのアクセスを許可し(ステップS118)、認証結果記憶部84に記憶された連続失敗回数カウンタ値をゼロ(0)にリセットする(ステップS120)。また、入力PINと認証PINとが合致していない場合、認証処理部53は、認証処理部53は、APデータ記憶部81に記憶されたデータのアクセスを拒否し(ステップS122)、認証結果記憶部84に記憶された連続失敗回数カウンタ値をインクリメントする(ステップS124)。ステップS120またはステップS124の処理後、認証処理部53は、通信部40を介して認証結果を外部装置2に出力させる(ステップS126)。これにより、本フローチャートの処理は、終了する。なお、認証結果を受信した外部装置2は、認証が成功した場合には、データの読み出しや書き込み、更新等の各種コマンドを実行し、認証が失敗した場合には、再度の認証処理が実行される。
上述した認証処理の第1実施例によれば、認証で利用されるコマンドをICカード1が受信した時に、前回認証が失敗している場合は、認証失敗回数に応じた待機時間が経過した後に、入力PINと認証PINとによる認証処理が行われるため、再度の認証完了が可能となるまでの認証処理時間を延長することができる。
図7は、ICカード1が実行する認証処理の第2実施例を示すフローチャートである。図7に示す認証処理の第2実施例は、上述した図6に示す第1実施例と比較すると、ステップS108およびステップS110の処理が、図6のようにステップS112の処理の直前ではなく、図7のようにステップS124の処理の直後に設けられている点で異なる。つまり、第2実施例では、VERIFYコマンドを受信した後に入力RINと認証PINとの照合を行い、その結果の送信時に、待機時間のカウントを開始し、待機時間経過後に認証結果を出力する。また、第2実施例では、上記ステップS108およびステップS110の処理を、ステップS116の処理において、入力PINと認証PINの照合との照合の結果、合致しないときにのみ待機する。
上述した認証処理の第2実施例によれば、前回認証が失敗している場合は、認証失敗回数に応じた待機時間が経過した後に認証結果が出力されるため、再度の認証完了が可能となるまでの認証処理時間を延長することができる。また、上述した認証処理の第1実施例および第2実施例によれば、前回失敗している場合に、認証処理時間を延長することができるため、攻撃者による入力PINや暗号鍵の総当たり攻撃を抑制することができる。また、正当なカード使用者は、もし認証が失敗したとしても待機時間経過後には、認証処理を実行することができる。そのため、セキュリティを強化しつつ、利便性を向上させることができる。
図8は、ICカード1が実行する認証処理の第3実施例を示すフローチャートである。認証処理の第3実施例では、前回の認証失敗から所定の待機時間が経過したのをICカード1が確認するまで、認証処理を行わないものである。また、図8に示す認証処理の第3実施例は、上述した図6に示す第1実施例と比較すると、ステップS100、S102、S112〜S126の処理の他に、ステップS130〜S138の処理が設けられている。したがって、以下では、主にステップS130〜S138の処理を中心に説明する。
ステップS102の処理後、認証処理部53は、前回認証失敗した時点から待機時間が経過したか否かを判定する(ステップS130)。前回認証失敗した時点から待機時間が経過した場合、認証処理部53は、ステップS112〜S116の処理を実行する。また、ステップS116の処理において、入力PINと認証PINとが合致する場合、認証処理部53は、ステップS118およびステップS120の処理を実行する。また、ステップS116の処理において、入力PINと認証PINとが合致しない場合、ステップS122およびステップS124の処理を実行する。次に、認証処理部53は、認証結果記憶部84に記憶された連続失敗回数カウンタ値を取得し、待機時間制御部54に待機時間を問い合わせる(ステップS132)。
待機時間制御部54は、連続失敗回数カウンタ値に対応付けられた待機時間を取得し、取得した待機時間を認証処理部53に出力する(ステップS134)。認証処理部53は、待機時間のカウントを開始する(ステップS136)。ステップS136の処理による待機時間のカウントは、上述したS130の処理による待機時間の経過の判断に用いられる。また、ステップS120またはステップS136の処理が終了後、認証処理部53は、通信部40を介して認証結果を外部装置2に出力させる(ステップS126)。
また、ステップS130の処理において、VERIFYコマンドの受信時に、前回認証失敗した時点から待機時間が経過していない場合、待機中であることを示す情報(例えば、レスポンスデータまたはステータスワード)を外部装置2に出力する(ステップS138)。待機中であることを示す情報には、例えば、待機時間に関する情報が含まれる。これにより、本フローチャートの処理は、終了する。
上述した認証処理の第3実施例によれば、上述した第1実施例および第2実施例と同様の効果を奏する他、ICカード1が所定時間だけ待機している間にVERIFYコマンドを受信した場合に、待機時間が経過するまでは認証処理を行わず、待機中であることを示す情報を外部装置2に出力することができる。これにより、外部装置2は、待機中であることを示す情報に含まれる待機時間が経過した後に、コマンドを再送することができる。なお、ICカード1は、電源供給されていない間は時間をカウントできない。そのため、外部装置2は、ICカード1が通電されている状態であるか否かを判定し、通電されている状態であると判定された場合の時間をカウントし、待機時間を経過した時点でコマンドを再送する。これにより、認証が実行可能なタイミングでコマンドを再送することができる。
ここで、上述した待機時間制御部54は、認証処理部53により実行される本人認証の認証方法、暗号鍵や認証PINの強度のうち、少なくとも一つに基づいて、図5に示すテーブルの待機時間を自動で変更してもよい。本人認証の認証方法には、例えば、上述した認証PINを用いた第1の認証方法や、認証PINだけでなく生年月日等の他の情報も含めた照合を行うことで本人認証を行う第2の認証方法、図示しない指紋センサ等により読み取られた指紋情報から本人認証を行う第3の認証方法等が含まれる。この場合、第1の認証方法よりも第2の認証方法の方が、認証強度が高く、第2の認証方法よりも第3の認証方法の方が、認証強度が高いものとする。また、暗号鍵や認証PINの強度とは、例えば、鍵の長さや認証PINの長さ(桁数)に対応する度合であり、長さが短いほど強度は低く、長さが長いほど強度は高くなる。したがって、待機時間制御部54は、例えば、第1の認証方法を用いる場合よりも第2の認証方法を用いる場合の方が、図5に示す各認証失敗回数(1回以上)に応じた待機時間が短くなるように変更する。また、待機時間制御部54は、例えば、認証PINが10桁の場合よりも4桁の場合の方が、図5に示す各認証失敗回数(1回以上)に応じた待機時間が長くなるように変更する。
また、待機時間制御部54は、通信部40により取得した待機時間の変更要求(変更コマンド)に基づいて、図5に示すテーブルの待機時間を変更してもよい。この場合、待機時間制御部54は、待機時間の変更要求を、カード管理会社の端末やカード発行者、その他の特定の権限者が利用する端末等の特定端末のみから受け付ける。また、待機時間制御部54は、通信部40により取得した暗号鍵や認証PINの変更要求に基づいて、暗号鍵や認証PINを変更してもよい。
また、待機時間制御部54は、ICカード1に記憶されているデータのセキュア度合やログ情報から取得される使用頻度に応じてテーブル内の待機時間を変更してもよい。また、待機時間制御部54は、図5に示すテーブルを用いて認証失敗回数に対応する待機時間を取得するのに代えて、予め決められた関数やロジックに基づいて待機時間を取得できるようにしてもよい。また、待機時間情報記憶部85は、テーブル内の待機時間を変更するのに代えて、認証失敗回数と待機時間との関係が異なるテーブルを複数記憶し、待機時間制御部54は、上述した本人認証時の条件に応じて、テーブルを選択してもよい。この場合、待機時間制御部54は、例えば、APデータ記憶部81に記憶されたデータのセキュア度合が低いほど、待機時間の上昇率が大きいテーブルを選択する。
このように、待機時間を、認証方法、暗号鍵や認証PINの強度に応じて変更したり、外部装置2からの変更要求に基づいて変更することで、さらに利便性を向上させることができる。
また、待機時間制御部54は、外部装置2により解除用コマンドを受信した場合に、待機時間をリセットさせる制御を行ってもよい。これにより、本人がICカード1を緊急で使用したいにも拘わらず、待機時間により本人認証が実行されない場合に、待機時間をリセットすることで、即座に本人認証を実行させることができる。なお、解除用コマンドは、例えば、管理会社等の特定の端末のみから実行可能とすることで、攻撃者による待機時間のリセットを抑制することができる。
また、上記の実施形態において、ICカード1は、コンタクト部3を介して外部装置2と通信する例を説明したが、コイル等を用いたコンタクトレスインターフェースを介して外部装置2と通信するように構成してもよい。
また、上記の各実施形態において、ICカード1は、書き換え可能な不揮発性メモリとして、EEPROM8を備える構成としたが、これに限定されるものではない。例えば、ICカード1は、EEPROM8の代わりに、フラッシュメモリ、FeRAM(Ferroelectric Random Access Memory:強誘電体メモリ)等を備えてもよい。
また、上記の実施形態では、ICカード1を用いる例を説明したが、これに限定されるものではなく、カード形状ではないICタグ等の携帯可能電子装置であってもよい。
以上説明した少なくとも一つの実施形態によれば、ICカード1において、外部装置2と通信を行う通信部40と、使用者を認証する認証情報を記憶する認証情報記憶部83と、通信部40により外部装置2から受信した入力情報と認証情報記憶部83に記憶された認証情報とに基づいて、本人認証を行う認証処理部53と、を持ち、認証処理部53は、認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長することで、利便性を向上させることができる。
具体的には、非接触通信を行うICカードにおいて、攻撃者が非接触リーダライタをカード所有者のICカードが入っている場所に翳し、所有者に気づかれないようにICカードとの通信を行う場合がある。その結果、所有者が気付かないうちに鍵情報やPINの総当たり攻撃により情報が盗まれる可能性がある。これに対し、実施形態によれば、認証が完了するための時間が延長させるため、利便性とセキュリティのバランスを考慮した認証処理を実現させることができる。
上記実施形態は、以下のように表現することができる。
端末装置と通信を行う通信部と、
使用者を認証する認証情報を記憶する記憶部と、
本人認証を行う認証処理部と、
前記記憶部に記憶されたプログラムを実行するハードウェアプロセッサと、を備え、
前記記憶部には、前記ハードウェアプロセッサに、
前記通信部により前記端末装置から受信した入力情報と前記記憶部に記憶された認証情報とに基づいて、前記本人認証を行い、
前記本人認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長する、
ICカード。
なお、実施形態におけるICカード1が備える各構成の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述したICカード1が備える各構成における処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1…ICカード、2…外部装置、3…コンタクト部、4…UART、5…CPU、6…ROM、7…RAM、8…EEPROM、10‥ICモジュール、40…通信部、50…制御部、51…コマンド処理部、52…ファイル管理部、53…認証処理部、54…待機時間制御部、81…APデータ記憶部、82…ファイル管理情報記憶部、83…認証情報記憶部、84…認証結果記憶部、85…待機時間情報記憶部、100…ICチップ、BS1…内部バス、PT…カード基材

Claims (9)

  1. 端末装置と通信を行う通信部と、
    使用者を認証する認証情報を記憶する記憶部と、
    前記通信部により前記端末装置から受信した入力情報と前記記憶部に記憶された認証情報とに基づいて、本人認証を行う認証処理部と、を備え、
    前記認証処理部は、前記本人認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長する、
    ICカード。
  2. 前記認証処理部は、連続して認証に失敗した回数に対応付けた待機時間に基づいて、前記認証処理時間を延長する、
    請求項1に記載のICカード。
  3. 前記認証処理部は、連続して認証に失敗した回数が多いほど待機時間を長くする、
    請求項2に記載のICカード。
  4. 前記認証処理部は、認証方法、暗号鍵の強度、または認証情報の強度のうち少なくとも一つに基づいて、前記連続して認証に失敗した回数に対応付ける待機時間を変更する、
    請求項2または3に記載のICカード。
  5. 前記通信部により取得した待機時間の変更要求に基づいて、前記連続して認証に失敗した回数に対応付ける待機時間を変更する待機時間制御部を更に備える、
    請求項2から4のうち何れか1項に記載のICカード。
  6. 前記認証処理部は、前記通信部により前記入力情報を受信した後の処理の実行を、前記待機時間が経過するまで待機する
    請求項2から5のうち何れか1項に記載のICカード。
  7. 前記認証処理部は、前記入力情報と前記認証情報とに基づく本人認証の結果を、前記通信部により前記端末装置に送信させる前に、前記待機時間が経過するまで待機する、
    請求項2から6のうち何れか1項に記載のICカード。
  8. 前記認証処理部は、前記通信部により前記入力情報を受信したときに待機中である場合に、待機中であることを示す情報を前記端末装置に送信する、
    請求項2から7のうち何れか1項に記載のICカード。
  9. 端末装置と通信を行う通信部と、使用者を認証する認証情報を記憶する記憶部と、本人認証を行う認証処理部と、を備えるICカードが、
    前記通信部により前記端末装置から受信した入力情報と前記記憶部に記憶された認証情報とに基づいて、前記本人認証を行い、
    前記本人認証に失敗した回数に基づいて再度の認証完了が可能となるまでの認証処理時間を延長する、
    ICカードの制御方法。
JP2018153381A 2018-08-17 2018-08-17 Icカードおよびicカードの制御方法 Pending JP2020027558A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018153381A JP2020027558A (ja) 2018-08-17 2018-08-17 Icカードおよびicカードの制御方法
EP19191440.7A EP3611648A1 (en) 2018-08-17 2019-08-13 Ic card and method of controlling ic card
US16/538,893 US20200057732A1 (en) 2018-08-17 2019-08-13 Ic card and method of controlling ic card
SG10201907461RA SG10201907461RA (en) 2018-08-17 2019-08-14 Ic card and method of controlling ic card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018153381A JP2020027558A (ja) 2018-08-17 2018-08-17 Icカードおよびicカードの制御方法

Publications (1)

Publication Number Publication Date
JP2020027558A true JP2020027558A (ja) 2020-02-20

Family

ID=67620306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018153381A Pending JP2020027558A (ja) 2018-08-17 2018-08-17 Icカードおよびicカードの制御方法

Country Status (4)

Country Link
US (1) US20200057732A1 (ja)
EP (1) EP3611648A1 (ja)
JP (1) JP2020027558A (ja)
SG (1) SG10201907461RA (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594227A (en) * 1995-03-28 1997-01-14 Microsoft Corporation System and method for protecting unauthorized access to data contents
EP1413980A1 (en) * 2002-10-24 2004-04-28 SCHLUMBERGER Systèmes Protection of a portable object against denial of service type attacks
US8806219B2 (en) * 2006-08-23 2014-08-12 Red Hat, Inc. Time-based function back-off
JP4845057B2 (ja) * 2008-04-14 2011-12-28 京セラ株式会社 携帯電子機器及びプログラム

Also Published As

Publication number Publication date
SG10201907461RA (en) 2020-03-30
EP3611648A1 (en) 2020-02-19
US20200057732A1 (en) 2020-02-20

Similar Documents

Publication Publication Date Title
US8811959B2 (en) Bluetooth enabled credit card with a large data storage volume
US9529734B2 (en) Smart storage device
US20080178009A1 (en) Electronic apparatus and information processing method
US20080209547A1 (en) Electronic device and information processing method
US11159314B2 (en) IC card system and information registering method
KR101824249B1 (ko) 인증용 개인키를 내부적으로 생성하는 집적 회로 유형의 전자 소자 제어 방법
CN101714216B (zh) 半导体元件、生物体认证方法和系统、便携式终端
EP3067813B1 (en) Portable electronic device and system
US10872137B2 (en) IC card and method for controlling IC card
JP7105540B2 (ja) Icカード、およびicカードの制御方法
WO2018047949A1 (ja) 携帯可能電子装置
JP2012094146A (ja) 特に資源の利用に関する利用者の認証によって保護された関数の実行を制御する方法及びシステム
JP4993114B2 (ja) 携帯型ストレージデバイスの共有管理方法、および、携帯型ストレージデバイス
US20170374066A1 (en) Server, ic card processing apparatus, and ic card processing system
JP7020969B2 (ja) 携帯可能電子装置、及びicカード
JP5148098B2 (ja) 携帯可能電子装置、icカード、データ処理装置及びデータ処理システム
US20230214474A1 (en) Portable electronic device and ic card
JP2020027558A (ja) Icカードおよびicカードの制御方法
JP2007141113A (ja) バイオメトリクス認証機能を備えたicカード、および、icカードプログラム
JP6499052B2 (ja) Icカード、icモジュール、及びプログラム
JP6305284B2 (ja) 携帯可能電子装置
JP6505893B2 (ja) 携帯可能電子装置
JP2005049957A (ja) Icカード及びicカードシステム
JP7380667B2 (ja) 電子情報記憶媒体、処理方法、及びプログラム
JP4876449B2 (ja) Icカード、および、icカードプログラム