JP6280371B2 - 携帯可能電子装置、電子回路および端末 - Google Patents

携帯可能電子装置、電子回路および端末 Download PDF

Info

Publication number
JP6280371B2
JP6280371B2 JP2014008051A JP2014008051A JP6280371B2 JP 6280371 B2 JP6280371 B2 JP 6280371B2 JP 2014008051 A JP2014008051 A JP 2014008051A JP 2014008051 A JP2014008051 A JP 2014008051A JP 6280371 B2 JP6280371 B2 JP 6280371B2
Authority
JP
Japan
Prior art keywords
command
executions
combination
execution
commands
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
JP2014008051A
Other languages
English (en)
Other versions
JP2015138294A (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 JP2014008051A priority Critical patent/JP6280371B2/ja
Publication of JP2015138294A publication Critical patent/JP2015138294A/ja
Application granted granted Critical
Publication of JP6280371B2 publication Critical patent/JP6280371B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明の実施形態は、携帯可能電子装置、電子回路および端末に関する。
IC(Integrated Circuit)カードは、クレジットカード、定期券、その他の商取引の決済のカードとして使用されており、さらに、社員証、会員証、保険証などのID(Identification)カードとしても様々な分野で使用されている。この要因は、従来の磁気カードに比べ、ICとしてCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、EEPROM(Electrically Erasable Programmable ROM)などを持つため様々な機能の処理を実行できるようになったことばかりでなく、偽造が難しいためセキュリティの面でも大きく向上したことである(例えば、特許文献1参照。)。
ICカードへの攻撃のひとつとして電力解析攻撃というものがある。電力解析攻撃は、ICカードの内部で暗号処理を始めとする重要な処理を行っているタイミングにおける消費電力波形を複数取得し、その消費電力波形の中に漏れ出している情報を統計的に解析することで、秘密情報を抜き出すものである。電力解析攻撃を回避するために、ICカードの内部では様々な対策が施されている。
特開平9−83677号公報
本発明が解決しようとする課題は、電力解析攻撃を効率的に回避することができる携帯可能電子装置、電子回路および端末を提供することである。
実施形態の携帯可能電子装置は、実行回数計数部と、制限部を有する。前記実行回数計数部は、コマンドの組み合わせごとに実行回数を計数する。前記制限部は、前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したまたは超えた場合に使用を制限する。前記制限部は、前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したか否かまたは超えたか否かを判定する場合に、最後の1回については、前記コマンドの組み合わせのうちの最初から所定の一部の数のコマンドまでの処理が実行されたときに、前記実行回数が前記実行上限回数に一致したまたは超えたと判定する。
実施形態1の通信システムの構成を示すブロック図である。 実施形態1のICチップの内部の構成を示すブロック図である。 実施形態1のコマンドの例を示す図である。 実施形態1のコマンドの組み合わせと実行上限回数との対応の一例を示す図である。 実施形態1のICカードの機能ブロックの構成を示す図である。 実施形態1のICカードにおいて行われる処理の手順の一例を示すフローチャート図である。 実施形態2の端末の機能ブロックの構成を示す図である。 実施形態2の端末において行われる処理の手順の一例を示すフローチャート図である。
(実施形態1)
以下、実施形態1の通信システム21を図面を参照して説明する。
図1は、実施形態1の通信システム21の構成を示すブロック図である。
実施形態1の通信システム21は、ICチップ11(電子回路の一例)を内部に搭載したICカード1と、端末2を備える。実施形態1では、端末2は、ICカード1に記憶された情報を読み取ることなどを行うリーダライタの端末である。
ICカード1と端末2とは、接触方式または非接触方式で通信する。実施形態1では、接触方式または非接触方式のいずれが用いられてもよい。
接触方式では、ICカード1と端末2のそれぞれに金属の接触点が備えられて、ICカード1の接触点と端末2の接触点とが接触させられた状態で、ICカード1と端末2とが通信する。
非接触方式では、ICカード1と端末2のそれぞれにループアンテナなどのアンテナが備えられて、ICカード1のアンテナと端末2のアンテナとの間での電磁誘導により、ICカード1と端末2とが通信する。
また、ICカード1が電源を備える構成が用いられてもよく、または、ICカード1が電源を備えずに、端末2からICカード1へ接触方式または非接触方式で電力を供給する構成が用いられてもよい。
本実施形態1では、一例として、ISO/IEC 7816−1 part1、2に規定された規格のICカード1が用いられるが、この規格以外の構成が用いられてもよい。ICカード1は、外部からの指示(コマンド)を解釈して当該コマンドの処理を実行し、その結果を応答する。
図2は、実施形態1のICチップ11の内部の構成を示すブロック図である。
ICチップ11は、CPU51と、RAM52と、ROM53と、EEPROM54と、I/Oポート55と、コプロセッサ56と、これらを通信可能に接続するデータバス61を備える。
実施形態1では、CPU51により実行するコマンドの処理のプログラムをROM53に記憶しており、コマンドの処理に使用されるパラメータなどのデータをRAM52やEEPROM54に記憶している。コマンドの処理のプログラムは、例えば、当該コマンドに応じたアプリケーションの処理のプログラムである。
また、個人を認証するためのIDの情報をEEPROM54に記憶している。
CPU51は、ROM53に記憶されたコマンドの処理のプログラムを読み出して実行する。
I/Oポート55は、外部の端末2との間で通信される情報を入力および出力する。I/Oポート55は、外部の端末2からICカード1により受信されたコマンドの情報を入力して受け取る。また、I/Oポート55は、受け取ったコマンドの処理をCPU51により実行した結果の情報をレスポンスの情報として出力し、これにより、当該情報がICカード1から外部の端末2へ送信される。
実施形態1では、I/Oポート55により入力されたコマンドの情報が、RAM52に設けられた専用領域にいったん記憶された後に、当該専用領域を監視するCPU51により読み出される。
コプロセッサ56は、暗号処理や復号処理を高速に行うための補助的な回路であり、例えば、CPU51により指示されて、暗号処理や復号処理に関するコマンドの処理を実行する。さらに、コプロセッサ56は、例えば、ピン照合処理を行う機能を有してもよい。なお、コプロセッサ56がICチップ11に搭載されない構成が用いられてもよい。
データバス61は、当該データバス61に接続された各装置51〜56の間におけるデータ転送を行うバスである。
図3は、実施形態1のコマンドの例を示す図である。
実施形態1では、説明を簡易化するために、4個の異なるコマンドであるコマンドA、コマンドB、コマンドC、コマンドDが実装されているとする。
ここで、暗号処理や復号処理やピン照合処理などのように、個人認証情報を扱う処理を行うコマンドが電力解析攻撃の対象となり得るとする。コマンドA〜Dの中で、このような電力解析攻撃の対象となり得るコマンドは、コマンドCとコマンドDであるとする。実施形態1では、コマンドCとコマンドDは、それぞれ、コプロセッサ56を呼び出して、コプロセッサ56に暗号処理などを行わせる。
また、コマンドA〜Dの中で、単独で行うことができるコマンドはコマンドAだけであるとする。
図4は、実施形態1のコマンドの組み合わせと実行上限回数との対応の一例を示す図である。なお、説明の便宜上、1個の単独のコマンドについても、コマンドの組み合わせと呼ぶ。
コマンドの組み合わせと実行上限回数との対応の情報は、例えば、EEPROM54に記憶されている。他の構成例として、この情報は、ROM53またはRAM52に記憶されてもよい。
コマンドAと、実行上限回数はないことと、が対応付けられている。
コマンドAの後にコマンドBを行うコマンドの組み合わせと、実行上限回数はないことと、が対応付けられている。
コマンドA、コマンドB、コマンドCの順に行うコマンドの組み合わせと、実行上限回数が5回であること、とが対応付けられている。
コマンドA、コマンドB、コマンドC、コマンドDの順に行うコマンドの組み合わせと、実行上限回数が3回であること、とが対応付けられている。
コマンドAの後にコマンドDを行うコマンドの組み合わせと、実行上限回数が5回であること、とが対応付けられている。
なお、電力解析攻撃の対象となり得るコマンドC、Dが含まれる数がより多いコマンドの組み合わせには、より少ない実行上限回数を設定してある。
ここで、実施形態1では、実行上限回数としては、定められた期間に該当するコマンドの処理が実行される累積の回数が用いられる。実施形態1では、定められた期間としては、ICカード1と端末2とが通信していない状態から通信する状態へ移行して、一連の通信を実行して、再び通信していない状態へ移行するまでの期間、つまりICカード1と端末2とが1回の一連の通信を開始してから終了するまでの期間が用いられる。
一例として、実施形態1では、CPU51が、それぞれのコマンドの組み合わせを実行した回数をICカード1のRAM52に記憶してカウントする。この場合、ICカード1と端末2とが1回の一連の通信を開始すると、それぞれのコマンドの組み合わせを実行した回数がカウントされ始め、そして、当該1回の一連の通信が終了するときに、RAM52の記憶内容がリセットにより消去されて、当該カウントの値が初期値(例えば、0)に戻る。
なお、ICカード1と端末2との接触方式の通信では、端末2が電源ラインの電源をオフにしたとき、または、リセットラインの電源をリセット状態にしたときに、ICカード1のRAM52の記憶内容がリセットされる。ICカード1と端末2との非接触方式の通信では、端末2がICカード1に供給する磁界を停止したときに、ICカード1の電源やクロックが停止して、ICカード1のRAM52の記憶内容がリセットされる。つまり、本実施形態1では、ICカード1のRAM52の記憶内容がリセットされてから次にリセットされるまでの期間が、実行回数をカウントする期間となる。
実施形態1では、所定のコマンドの組み合わせの処理を行った後に、他のコマンドの組み合わせの処理を行い、その後、前記所定のコマンドの組み合わせの処理を行った場合、この中で、前記所定のコマンドの組み合わせの処理は2回実行されたとカウントする。
他の構成例として、コマンドの組み合わせの実行回数として、同一のコマンドの組み合わせが連続して実行される回数が用いられてもよい。この構成では、所定のコマンドの組み合わせの処理を行った後に、他のコマンドの組み合わせの処理を行い、その後、前記所定のコマンドの組み合わせの処理を行った場合、この中で、前記所定のコマンドの組み合わせの処理は1回(後の方の1回のみ)実行されたとカウントする。
また、第1のコマンドの組み合わせが第2のコマンドの組み合わせを含む場合には、一例として、第1のコマンドの組み合わせの処理が実行されたときには、第1のコマンドの組み合わせの実行回数を増加させるが、第2のコマンドの組み合わせの実行回数は増加させない構成が用いられてもよく、他の例として、第1のコマンドの組み合わせの処理が実行されたときには、第1のコマンドの組み合わせの実行回数および第2のコマンドの組み合わせの実行回数を共に増加させる構成が用いられてもよい。具体例としては、第1のコマンドの組み合わせが、コマンドA、コマンドB、コマンドC、コマンドDの順に行うコマンドの組み合わせであるとき、第2のコマンドの組み合わせは、コマンドAのみや、コマンドAの後にコマンドBを行うコマンドの組み合わせや、コマンドA、コマンドB、コマンドCの順に行うコマンドの組み合わせがある。
CPU51は、それぞれのコマンドの組み合わせごとに、実行した回数をRAM52に記憶してカウントする。また、CPU51は、それぞれのコマンドの組み合わせごとに、RAM52に記憶された実行回数が、そのコマンドの組み合わせに対応する実行上限回数に一致するか否かを判定する。この判定は、一例として、該当する実行回数が更新されるたびに行われてもよく、または、他の例として、定められた周期ごとに行われてもよい。
ここで、通常のICカード1の利用状況では、ICカード1と端末2との1回の一連の通信において、同一のコマンドの組み合わせの処理が複数回実行されることはない。または、ICカード1と端末2との1回の一連の通信において、同一のコマンドの組み合わせの処理が複数回実行されることがあったとしても、実施形態1では、その回数を考慮して、その回数を超える値を実行上限回数として設定しておく。これにより、それぞれのコマンドの組み合わせごとに、実行した回数が実行上限回数に一致した場合には、電力解析攻撃を受けている可能性があると推定することができる。
CPU51は、いずれかのコマンドの組み合わせについて、RAM52に記憶された実行回数が、そのコマンドの組み合わせに対応する実行上限回数に一致したことを判定した場合には、当該CPU51が設けられたICカード1を永久にまたは一時的に使用不可能な状態にする。
一例として、CPU51は、当該CPU51が設けられたICカード1をターミネートすることで、当該ICカード1を永久に、完全に使用不可能な状態にする。
他の例として、CPU51は、当該CPU51が設けられたICカード1を外部の端末2に対して一時的な無応答状態に設定することで、当該CPU51が設けられたICカード1を一時的に使用不可能な状態にする。
ここで、ICカード1の一時的な無応答状態としては、一例として、CPU51が、定められた時間(例えば、5分など)だけ、外部からの信号に対して何も応答しないように、物理的な機構またはソフトウェアにより設定する。さらに、CPU51は、この定められた時間をソフトウェアによりカウントしている間に外部からリセットボタンが押下されて当該カウントが途中で停止させられた場合には、再び0から当該カウントを開始するように制御してもよい。CPU51は、この定められた時間のカウントが完了したときに、ICカード1を外部からの信号に対して応答するように復旧させる。CPU51は、例えば、外部からの信号に対して応答するか否かを示すフラグの情報をEEPROM54などに記憶してもよい。
また、ICカード1の一時的な無応答状態としては、他の例として、EEPROM54の記憶内容をリセットして消去してもよい。
また、2個以上のコマンドの組み合わせについて実行回数が実行上限回数に一致したことを判定する場合、最後の1回については、一例として、2個以上のコマンドの組み合わせの全ての処理が実行されたときに実行回数が実行上限回数に一致したと判定する構成が用いられてもよく、他の例として、2個以上のコマンドの組み合わせのうちの最初から所定の一部の個数のコマンドの並びの処理が実行されたときに実行回数が実行上限回数に一致したと判定する構成が用いられてもよい。
具体例として、コマンドA、コマンドB、コマンドC、コマンドDの順に行うコマンドの組み合わせについて実行上限回数が3回である場合、これら4個のコマンドの組み合わせの処理の実行が2回検出された後に、3回目については、一例として、コマンドA、コマンドB、コマンドC、コマンドDの順に行うコマンドの組み合わせの全ての処理が実行されたときに、実行回数が実行上限回数に一致したと判定する構成が用いられてもよく、他の例として、コマンドAのみの処理、あるいは、コマンドAおよびコマンドBの並びのみの処理、あるいは、コマンドA、コマンドB、コマンドCの並びのみの処理、が実行されたときに、実行回数が実行上限回数に一致したと判定する構成が用いられてもよい。
上記のように、最後の1回について、2個以上のコマンドの組み合わせのうちの最初から所定の一部の個数のコマンドの並びの処理が実行されたときに実行回数が実行上限回数に一致したと判定する構成では、最後の1回について、2個以上のコマンドの組み合わせの全ての処理が実行されることを回避することができる。
一例として、最後の1回について、2個以上のコマンドの組み合わせのうちで最初に出現する電力解析攻撃の対象となるコマンドの手前のコマンドまでの並びの処理が実行されたときに実行回数が実行上限回数に一致したと判定する構成が用いられてもよい。この構成では、最後の1回について、2個以上のコマンドの組み合わせのうちで最初に出現する電力解析攻撃の対象となるコマンドの処理が実行されることを回避することができる。
図5は、実施形態1のICカード1の機能ブロックの構成を示す図である。
実施形態1のICカード1は、通信部101と、コマンド実行部102と、コマンドの組み合わせに関する実行上限回数記憶部103と、コマンドの組み合わせに関する実行回数計数部104と、コマンドの組み合わせに関する実行回数記憶部105と、制限部106を備える。
ここで、図5に示される各処理部は、図2に示されるハードウェアを用いて実現される。
通信部101は、CPU51の制御によりI/Oポート55を介して外部の端末2と通信する機能を有する。
コマンド実行部102は、CPU51の制御により、コマンドの処理を実行する機能を有する。なお、暗号処理や復号処理などの所定の処理については、コマンド実行部102は、CPU51の制御により、コプロセッサ56がコマンドの処理を実行する機能を有する。
実行回数計数部104と、制限部106は、それぞれ、CPU51の制御によりそれぞれの処理を実行する機能を有する。
実行上限回数記憶部103は、例えば、EEPROM54を用いて実現される。
実行回数記憶部105は、実施形態1では、RAM52を用いて実現される。
図6は、実施形態1のICカード1において行われる処理の手順の一例を示すフローチャート図である。
ICカード1では、あらかじめ、それぞれのコマンドの組み合わせごとに、実行上限回数の情報が実行上限回数記憶部103に記憶されている。また、実施形態1では、それぞれのコマンドの組み合わせごとに、実行回数が、実行回数記憶部105に記憶される。
まず、通信部101が、外部の端末2から送信されるコマンドの情報を受信する(ステップS1)。ここで、コマンドの情報の受信は、1個のコマンドごとに(例えば、それぞれのコマンドごとに別個な処理として)行われてもよく、あるいは、2個以上のコマンド(例えば、2個以上のコマンドの組み合わせ)についてまとめて(例えば、連続な処理として)行われてもよい。
次に、コマンド実行部102が、受信されたコマンドの処理を実行する(ステップS2)。
次に、実行回数計数部104が、それぞれのコマンドの組み合わせについて、実行回数を計数する(例えば、実行回数を1だけ増加させる)コマンドの組み合わせがあるか否かを判定する(ステップS3)。実行回数を計数するものがある場合には、実行回数計数部104は、該当する実行回数を計数するように、実行回数記憶部105に記憶された該当する実行回数を更新する(ステップS4)。一方、この判定において(ステップS3)、実行回数を計数するものがない場合には、実行回数計数部104は、本処理を終了する。
ステップS4の処理の後に、制限部106が、それぞれのコマンドの組み合わせについて、実行回数が実行上限回数記憶部103に記憶された実行上限回数に一致するか否か(達したか否か)を判定する(ステップS5)。実行回数と実行上限回数とが一致する場合には、制限部106は、ICカード1の使用を制限して、永久にまたは一時的に使用不可能な状態にする(ステップS6)。一方、この判定において(ステップS5)、実行回数と実行上限回数とが一致しない場合には、制限部106は、本処理を終了する。
以上のように、実施形態1の通信システム21におけるICカード1では、実行回数が実行上限回数に一致したコマンドの組み合わせが発生したときにICカード1の使用を制限することにより、電力解析攻撃を効率的に回避することができる。実施形態1のICカード1では、例えば、処理時間の遅延や、余計なコードサイズの増加を抑制しつつ、簡易な方法で効率的に電力解析攻撃を回避することが可能である。
電力解析攻撃では、ターゲットとなるコマンドの処理中の消費電力波形を多く(測定環境やその他の電力解析攻撃対策の有無にもよるが、一般に、数十〜数十万波形)取得する必要があるため、実施形態1の対策により、コマンドの組み合わせごとの実行回数に上限を設けることで、電力解析攻撃に十分な消費電力波形を取得することを難しくすることができる。なお、例えば、消費電流内に漏洩する秘密情報を極力減らすような一般的な電力解析攻撃対策と実施形態1の電力解析攻撃対策とを組み合わせることで、非常に効率的な電力解析攻撃対策を実現することができる。
ここで、電力解析攻撃では、外部からの入力を暗号処理もしくは復号処理するコマンドがターゲットになりやすい。ICカードの製品出荷後の状態である運用フェーズでは、暗号処理や復号処理などを単独で実行できるコマンドはない場合が多く、一連のコマンド群で実現されるトランザクション処理の中でしか暗号処理や復号処理などが使用されないことが多い。実施形態1では、一例として、トランザクション処理の全体ではなく、コマンド処理の一部(コマンドの組み合わせ)に対して実行上限回数を設定して判定している。例えば、実施者は、実運用上でよく発生するコマンドの組み合わせに対しては実行上限回数を大きく設定し、実運用上ではほとんど発生しないコマンドの組み合わせに対しては実行上限回数を小さく設定するなどのように、臨機応変な対応が可能である。また、コマンドの組み合わせが用いられることから、仕様に関わらず、様々な分野で利用することができる。
ここで、実施形態1では、コマンドの組み合わせの実行回数の情報をRAM52に記憶してカウントする構成を示した。他の構成例として、コマンドの組み合わせの実行回数の情報をEEPROM54に記憶してカウントする構成が用いられてもよく、この構成では、例えば、CPU51が、定められた期間において、それぞれのコマンドの組み合わせごとに実行回数をカウントし、当該期間が経過したときに、カウントの値を0に初期化する。
また、ICカード1では、例えば、電力解析攻撃を受けたと推測される場合には、その電力解析攻撃に関する情報をEEPROM54に記憶する構成とすると、その後において、EEPROM54に記憶されて残った情報に基づいてその電力解析攻撃について分析を行うことが可能である。
また、実施形態1では、携帯可能電子装置の一例として、ICカード1が用いられた。他の構成例として、ICタグ、ICを内蔵したパスポート、ICを内蔵した免許証、ICを内蔵したマイナンバーカード(個人番号カード)など、携帯することが可能な電子装置である様々なものに、実施形態1と同様な構成が適用されてもよい。
以上のように、実施形態1のICカード1では、コマンドの組み合わせごとに実行回数を計数する実行回数計数部104と、実行回数計数部104により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数に一致した場合に使用を制限する制限部106と、を有する。
実施形態1のICカード1では、端末2から送信されるコマンドを受信する通信部101と、通信部101により受信されたコマンドの処理を実行するコマンド実行部102と、コマンドの組み合わせごとに実行上限回数を記憶する実行上限回数記憶部103と、コマンドの組み合わせごとに実行回数を記憶する実行回数記憶部105と、を有する。
実施形態1のICカード1では、コマンドの組み合わせごとの実行回数は、実行回数記憶部105がリセットされたときから次にリセットされるまでに計数される回数である。
実施形態1のICカード1では、実行上限回数が設定されるコマンドの組み合わせのうちの少なくとも1つの組み合わせは、電力解析攻撃の対象となり得るコマンドを含む組み合わせである。
実施形態1のICカード1では、制限部106は、実行回数計数部104により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数に一致したか否かを判定する場合に、最後の1回については、コマンドの組み合わせのうちの最初から所定の一部の数のコマンドまでの処理が実行されたときに、実行回数が実行上限回数に一致したと判定する。
実施形態1のICチップ11では、コマンドの組み合わせごとに実行回数を計数する実行回数計数部104と、実行回数計数部104により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数に一致した場合に使用を制限する制限部106と、を有する。
なお、他の構成例として、制限部106が、実行回数計数部104により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数を超えた場合に使用を制限する構成が用いられてもよい。また、他の構成例として、制限部106が、実行回数計数部104により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数以上である場合に使用を制限する構成が用いられてもよい。
(実施形態2)
以下、実施形態2を図面を参照して説明する。
実施形態2では、ICカード1a、端末2a、通信システム21aと記して説明する。実施形態2では、ICカード1a、端末2a、通信システム21aの使用状況は実施形態1に係る図1に示されるものと同様なものであるが、実施形態1のICカード1に備えた図5および図6に関する機能を、端末2aに備えた点で異なっている。
図7は、実施形態2の端末2aの機能ブロックの構成を示す図である。
実施形態2の端末2aは、通信部201と、コマンド生成部202と、コマンドの組み合わせに関する実行上限回数記憶部203と、コマンドの組み合わせに関する実行回数計数部204と、コマンドの組み合わせに関する実行回数記憶部205と、制限部206を備える。
ここで、図7に示される各処理部は、所定のハードウェアが用いられて実現される。
通信部201と、コマンド生成部202と、実行回数計数部204と、制限部206は、それぞれ、例えば、端末2aに備えられたCPUなどの制御により、それぞれの処理を実行する機能を有する。
実行上限回数記憶部203と、実行回数記憶部205は、それぞれ、例えば、端末2aに備えられた任意の記憶部(例えば、RAM、EEPROM、ROMなど)が用いられて実現される。
図8は、実施形態2の端末2aにおいて行われる処理の手順の一例を示すフローチャート図である。
端末2aでは、あらかじめ、それぞれのコマンドの組み合わせごとに、実行上限回数の情報が実行上限回数記憶部203に記憶されている。また、実施形態2では、それぞれのコマンドの組み合わせごとに、実行回数が、実行回数記憶部205に記憶される。
まず、コマンド生成部202が、ICカード1aに対するコマンドを生成し、そして、通信部201が、生成されたコマンドの情報をICカード1aに対して送信する(ステップS51)。ここで、コマンドの生成および送信は、それぞれ、1個のコマンドごとに(例えば、それぞれのコマンドごとに別個な処理として)行われてもよく、あるいは、2個以上のコマンド(例えば、2個以上のコマンドの組み合わせ)についてまとめて(例えば、連続な処理として)行われてもよい。
次に、実行回数計数部204が、それぞれのコマンドの組み合わせについて、実行回数を計数する(例えば、実行回数を1だけ増加させる)コマンドの組み合わせがあるか否かを判定する(ステップS52)。実行回数を計数するものがある場合には、実行回数計数部204は、該当する実行回数を計数するように、実行回数記憶部205に記憶された該当する実行回数を更新する(ステップS53)。一方、この判定において(ステップS52)、実行回数を計数するものがない場合には、実行回数計数部204は、本処理を終了する。
ステップS53の処理の後に、制限部206が、それぞれのコマンドの組み合わせについて、実行回数が実行上限回数記憶部203に記憶された実行上限回数に一致するか否か(達したか否か)を判定する(ステップS54)。実行回数と実行上限回数とが一致する場合には、制限部206は、ICカード1aの使用を制限して、永久にまたは一時的に使用不可能な状態にする(ステップS55)。一方、この判定において(ステップS54)、実行回数と実行上限回数とが一致しない場合には、制限部206は、本処理を終了する。
ここで、端末2aがICカード1aの使用を制限する方法としては、一例として、ICカード1aに対してあらかじめ定められた指示の信号(コマンドでもよい。)を送信して、当該ICカード1a自体によって使用を制限させる方法が用いられてもよい。この場合、ICカード1aには、あらかじめ、この指示の信号を受信した場合に自己の使用を制限するように、設定されている。
また、端末2aがICカード1aの使用を制限する方法としては、他の例として、端末2aがICカード1aの識別情報(ID)を記憶しておいて、そのICカード1aとの通信を永久にまたは一時的に停止する方法が用いられてもよい。
以上のように、実施形態2の通信システム21aにおける端末2aでは、実行回数が実行上限回数に一致したコマンドの組み合わせが発生したときにICカード1の使用を制限することにより、ICカード1に対する電力解析攻撃を効率的に回避することができる。
以上のように、実施形態2の端末2aでは、コマンドの組み合わせごとに実行回数を計数する実行回数計数部204と、実行回数計数部204により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数に一致した場合にICカード1aの使用を制限する制限部206と、を有する。
実施形態2の端末2aでは、コマンドを生成するコマンド生成部202と、コマンド生成部202により生成されたコマンドをICカード1aに対して送信する通信部201と、コマンドの組み合わせごとに実行上限回数を記憶する実行上限回数記憶部203と、通信部201により送信されたコマンドの組み合わせごとに実行回数を記憶する実行回数記憶部205と、を有する。
なお、他の構成例として、制限部206が、実行回数計数部204により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数を超えた場合にICカード1aの使用を制限する構成が用いられてもよい。また、他の構成例として、制限部206が、実行回数計数部204により計数された実行回数がコマンドの組み合わせごとに定められた実行上限回数以上である場合にICカード1aの使用を制限する構成が用いられてもよい。
以上述べた少なくともひとつの実施形態の通信システム(通信システム21、21a)によれば、実行回数が実行上限回数に一致したまたは超えたコマンドの組み合わせが発生したときにICカード(ICカード1、1a)の使用を制限することにより、ICカード(ICカード1、1a)に対する電力解析攻撃を効率的に回避することができる。
以上に示した実施形態では、各装置(例えば、ICカード1、1a、端末2、2a)の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、処理を行うことができる。
なお、ここでいう「コンピュータシステム」とは、オペレーティング・システム(OS:Operating System)や周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disk)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
以上、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
1、1a…ICカード、2、2a…端末、11…ICチップ、21、21a…通信システム、51…CPU、52…RAM、53…ROM、54…EEPROM、55…I/Oポート、56…コプロセッサ、101、201…通信部、102…コマンド実行部、103、203…実行上限回数記憶部、104、204…実行回数計数部、105、205…実行回数記憶部、106、206…制限部、202…コマンド生成部

Claims (4)

  1. コマンドの組み合わせごとに実行回数を計数する実行回数計数部と、
    前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したまたは超えた場合に使用を制限する制限部と、を有し、
    前記制限部は、前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したか否かまたは超えたか否かを判定する場合に、最後の1回については、前記コマンドの組み合わせのうちの最初から所定の一部の数のコマンドまでの処理が実行されたときに、前記実行回数が前記実行上限回数に一致したまたは超えたと判定する、
    携帯可能電子装置。
  2. 前記実行上限回数が設定される前記コマンドの組み合わせのうちの少なくとも1つの組み合わせは、電力解析攻撃の対象となり得るコマンドを含む組み合わせである、
    請求項1に記載の携帯可能電子装置。
  3. コマンドの組み合わせごとに実行回数を計数する実行回数計数部と、
    前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したまたは超えた場合に使用を制限する制限部と、を有し、
    前記制限部は、前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したか否かまたは超えたか否かを判定する場合に、最後の1回については、前記コマンドの組み合わせのうちの最初から所定の一部の数のコマンドまでの処理が実行されたときに、前記実行回数が前記実行上限回数に一致したまたは超えたと判定する、
    電子回路。
  4. コマンドの組み合わせごとに実行回数を計数する実行回数計数部と、
    前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したまたは超えた場合に携帯可能電子装置の使用を制限する制限部と、を有し、
    前記制限部は、前記実行回数計数部により計数された実行回数が前記コマンドの組み合わせごとに定められた実行上限回数に一致したか否かまたは超えたか否かを判定する場合に、最後の1回については、前記コマンドの組み合わせのうちの最初から所定の一部の数のコマンドまでの処理が実行されたときに、前記実行回数が前記実行上限回数に一致したまたは超えたと判定する、
    端末。
JP2014008051A 2014-01-20 2014-01-20 携帯可能電子装置、電子回路および端末 Active JP6280371B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014008051A JP6280371B2 (ja) 2014-01-20 2014-01-20 携帯可能電子装置、電子回路および端末

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014008051A JP6280371B2 (ja) 2014-01-20 2014-01-20 携帯可能電子装置、電子回路および端末

Publications (2)

Publication Number Publication Date
JP2015138294A JP2015138294A (ja) 2015-07-30
JP6280371B2 true JP6280371B2 (ja) 2018-02-14

Family

ID=53769280

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014008051A Active JP6280371B2 (ja) 2014-01-20 2014-01-20 携帯可能電子装置、電子回路および端末

Country Status (1)

Country Link
JP (1) JP6280371B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60159950A (ja) * 1984-01-30 1985-08-21 Toshiba Corp 記憶内容管理方式
CA2885956C (en) * 1998-05-18 2016-07-12 Giesecke & Devrient Gmbh Access-protected data carrier
JP4188571B2 (ja) * 2001-03-30 2008-11-26 株式会社日立製作所 情報処理装置の演算方法および耐タンパ演算攪乱実装方式
JPWO2006006387A1 (ja) * 2004-07-08 2008-04-24 松下電器産業株式会社 ホスト機器、記憶装置、及び記憶装置へのアクセス方法
JP2007257542A (ja) * 2006-03-24 2007-10-04 Toshiba Corp 複合携帯可能電子装置および複合icカード

Also Published As

Publication number Publication date
JP2015138294A (ja) 2015-07-30

Similar Documents

Publication Publication Date Title
US10255603B1 (en) Processor power supply glitch mitigation
US10474846B1 (en) Processor power supply glitch detection
JP5978351B2 (ja) セキュアエレメントの設定方法、鍵導出プログラム、コンピュータプログラムプロダクト及び設定可能なセキュアエレメント
JP2011521599A (ja) プライバシーを保護し追跡を防止しながらトランスポンダの固定の識別番号を与えるシステム
KR20210028686A (ko) 반복적인 사이드 채널 공격 대응책
Leng Smart card applications and security
JP6280371B2 (ja) 携帯可能電子装置、電子回路および端末
CN102160062B (zh) 针对通信系统的安全初始化过程
KR20180125550A (ko) 휴대용 위조 방지 디바이스에서 실시간 클록을 관리하기 위한 방법
US11151338B2 (en) Securing a transaction by means of a smart card and smart card
US9912471B2 (en) Method for operating a portable data carrier, and such a portable data carrier
US7730115B2 (en) System, microcontroller and methods thereof
US20140289874A1 (en) Integrated circuit (ic) chip and method of verifying data thereof
US10140197B2 (en) Method performed by an electronic device capable of communicating with a reader with improved self-testing
JP6396119B2 (ja) Icモジュール、icカード、及びicカードの製造方法
US8430323B2 (en) Electronic device and associated method
JP2009015651A (ja) 情報記憶媒体
Melià‐Seguí et al. On the similarity of commercial EPC Gen2 pseudorandom number generators
EP3876155B1 (en) Rfid device and method of operating an rfid device
JP2009015375A (ja) データを暗号化する機能を備えたicカード、方法およびicカード用プログラム
JP2013118473A (ja) Icカード、携帯可能電子装置、及びicカードの制御プログラム
JP6969114B2 (ja) Icカード、icカードの起動処理方法、およびicカードの起動処理プログラム
ElMahgoub An Encryption Algorithm for Secured Communication with Passive UHF RFID Systems
JP2018101218A (ja) 携帯可能電子装置、プログラム、処理システム、端末およびicカード
US8521935B2 (en) Portable electronic apparatus, control method for portable electronic apparatus, and IC card

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160912

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170606

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170725

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

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180119

R150 Certificate of patent or registration of utility model

Ref document number: 6280371

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150