(57)【要約】【課題】セキュリティ攻撃が行われて取引が中断すると、携帯記録担体のライフサイクル管理に用いる取引カウンタが通常よりも多く進む携帯記録担体を提供する。【解決手段】本発明にかかる携帯記録担体１は、取引が開始されると、携帯記録担体１のライフサイクル管理に用いる取引カウンタ１１を確認し、取引カウンタ１１が上限値に達していない場合、予め設定された加算値だけ取引カウンタ１１を進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナル３から受信すると、取引コマンドにかかる処理を実施した後、実施した取引コマンドに割り振られた値だけ取引カウンタ１１を戻す処理を行うカード管理手段１０を備える。【選択図】図２
2014085769.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理が実施される取引で使用される携帯記録担体であって、前記取引が開始されると、前記携帯記録担体のライフサイクル管理に用いる取引カウンタを確認し、前記取引カウンタが上限値に達していない場合、予め設定された加算値だけ前記取引カウンタを進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナルから受信すると、前記取引コマンドにかかる処理を実施した後、実施した前記取引コマンドに割り振られた値だけ前記取引カウンタを戻す処理を行うカード管理手段を備えたことを特徴とする携帯記録担体。
【請求項２】
前記カード管理手段は、前記取引が開始された時に、前記取引カウンタが上限値に達している場合、前記携帯記録担体のライフサイクルにかかる状態を終了状態に設定することを特徴とする、請求項１に記載した携帯記録担体。
【請求項３】
複数の処理が実施される取引で使用される携帯記録担体のＩＣチップに実装されるコンピュータプログラムであって、前記取引が開始されると、前記携帯記録担体のライフサイクル管理に用いる取引カウンタを確認し、前記取引カウンタが上限値に達していない場合、予め設定された加算値だけ前記取引カウンタを進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナルから受信すると、前記取引コマンドにかかる処理を実施した後、実施した前記取引コマンドに割り振られた値だけ前記取引カウンタを戻す処理を行うカード管理手段として、前記ＩＣチップを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードに代表される携帯記録担体に関し、更に詳しくは、携帯記録担体の使用状況に応じて適切に製品寿命を管理し、セキュリティ攻撃に対する耐タンパ性を向上させるための発明である。
【背景技術】
【０００２】
金融取引などで使用される携帯記録担体のライフサイクル管理では、製品寿命に達した携帯記録担体を、いかなる処理も受け付けない、または、特定の処理（例えば、ＧＥＴＤＡＴＡコマンド）のみを受け付ける終了状態（ターミネート状態）に設定することが求められている。
【０００３】
携帯記録担体に製品寿命を設定する一つの手法として、携帯記録担体に有効期限を設けることが一般的に行われている。特許文献１に記述があるように、携帯記録担体の内部に記憶された有効期限に日時が達すると、携帯記録担体は終了状態に設定される。
【０００４】
また、キャッシュカードやクレジットカードなどの金融系の携帯記録担体では、携帯記録担体に製品寿命を設定する一つの手法として、取引回数をカウントする取引カウンタが利用されている。携帯記録担体が金融取引で使用される毎に取引カウンタを一つ進め、取引カウンタが予め設定された上限値に達すると、携帯記録担体は終了状態に設定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平９−１３９９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上記のような携帯記録担体は正当に利用されるばかりでなく、携帯記録担体に記憶された情報資源を不正に読み出すために、悪意ある攻撃者がセキュリティ攻撃を携帯記録担体に仕掛けることも想定される。
【０００７】
攻撃者が携帯記録担体にセキュリティ攻撃を仕掛ける際、攻撃者は、セキュリティ攻撃を何度も携帯記録担体に仕掛け、その結果を蓄積することで最終的に情報資源の内容を割り出すため、携帯記録担体が利用される毎に取引カウンタを一つだけ進める仕様にすると、取引カウンタの上限値に達するまでの間、攻撃者に対してセキュリティ攻撃を許してしまうことになる。
【０００８】
そこで、本発明は、複数の処理が実施される取引で携帯記録担体が使用されている際、セキュリティ攻撃が行われて取引が中断すると、携帯記録担体のライフサイクル管理に用いる取引カウンタが通常よりも多く進む携帯記録担体等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決する第1の発明は、複数の処理が実施される取引で使用される携帯記録担体であって、前記取引が開始されると、前記携帯記録担体のライフサイクル管理に用いる取引カウンタを確認し、前記取引カウンタが上限値に達していない場合、予め設定された加算値だけ前記取引カウンタを進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナルから受信すると、前記取引コマンドにかかる処理を実施した後、実施した前記取引コマンドに割り振られた値だけ前記取引カウンタを戻す処理を行うカード管理手段を備える。
【００１０】
更に、第２の発明は、第１の発明に記載の携帯記録担体において、前記取引カウンタが上限値に達している場合、前記携帯記録担体を終了状態に設定できるように、前記カード管理手段は、前記取引が開始された時に、前記取引カウンタが上限値に達している場合、前記携帯記録担体のライフサイクルにかかる状態を終了状態に設定することを特徴とする。
【００１１】
上述した課題を解決する第３の発明は、複数の処理が実施される取引で使用される携帯記録担体のＩＣチップに実装されるコンピュータプログラムであって、前記取引が開始されると、前記携帯記録担体のライフサイクル管理に用いる取引カウンタを確認し、前記取引カウンタが上限値に達していない場合、予め設定された加算値だけ前記取引カウンタを進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナルから受信すると、前記取引コマンドにかかる処理を実施した後、実施した前記取引コマンドに割り振られた値だけ前記取引カウンタを戻す処理を行うカード管理手段として、前記ＩＣチップを機能させるためのコンピュータプログラムである。
【発明の効果】
【００１２】
このように、本発明によれば、複数の処理が実施される取引で携帯記録担体が使用されている際に、携帯記録担体に対してセキュリティ攻撃が行われて取引が中断すると、携帯記録担体のライフサイクル管理に用いる取引カウンタが通常よりも多く進む携帯記録担体等を提供できる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態にかかる携帯記録担体を説明する図。
【図２】携帯記録担体に実装されるＩＣチップを説明する図。
【図３】本実施形態にかかる携帯記録担体に備えられた機能を説明する図。
【図４】本実施形態にかかる携帯記録担体のカード管理手段の動作を説明する図。
【図５】取引カウンタの遷移を説明する第１図。
【図６】取引カウンタの遷移を説明する第２図。
【発明を実施するための形態】
【００１４】
ここから、本発明の好適な実施形態について、図面を参照しながら詳細に説明する。図１は、本実施形態にかかる携帯記録担体１を説明する図で、図２は、携帯記録担体１に実装されるＩＣチップ２を説明する図、図３は、本実施形態にかかる携帯記録担体１に備えられた機能を説明する図である。
【００１５】
携帯記録担体１とは、ターミナル３と接続し、複数の処理が実施される取引をユーザが実施するときに使用する記録担体を意味する。図１では、携帯記録担体１をクレジット取引に使用されるクレジットカードとして図示しているが、携帯記録担体１の形態はＩＣカードに限らず、移動体通信端末に装着するＳＩＭカードや、本出願人が既に販売している「ＴｉｎｙＳｍaｒｔ（登録商標）」のように、ＩＣカード用のオペレーティングシステムを記憶したＩＣチップが実装されたＳＤカードも携帯記録担体１に含まれる。
【００１６】
図２に図示したように、携帯記録担体１にはＩＣカード用のＩＣチップ２が実装され、このＩＣチップ２は、マイクロプロセッサであるＣＰＵ２ａ（Central Processing Unit）と、ＣＰＵ２ａの作業に用いられるＲＡＭ２ｂ（Random Access Memory）と、データの保持に利用される不揮発性メモリ２ｄ（Non-volatile memory）と、プログラムコードの記憶に利用されるＲＯＭ２ｃ（ReadOnly Memory）と、ターミナル３とデータ通信するためのＩ／Ｏポート２ｅを備えている。
【００１７】
なお、図２において、不揮発性メモリ２ｄとは、ＥＥＰＲＯＭ（登録商標）に代表されるような電気的に書き換え可能な不揮発性メモリを意味し、また、ＩＣチップ２は、図２で図示していないハードウェアモジュール（例えば、暗号演算に特化したコプロセッサ）を備えるのが一般的である。
【００１８】
ＩＣチップ２のＲＯＭ２ｃには、オペレーティングシステムのコンピュータプログラムが実装され、図３に図示したように、本実施形態にかかる携帯記録担体１は、該コンピュータプログラムにより実現される機能として、携帯記録担体１のライフサイクルを少なくとも管理するカード管理手段１０を備える。
【００１９】
また、ＩＣチップ２の不揮発性メモリ２ｄには、オペレーティングシステムが使用するデータやアプリケーションが記憶され、本実施形態にかかる携帯記録担体１では、カード管理手段１０が使用するデータとして、携帯記録担体１のライフサイクル管理に用いる取引カウンタ１１と、携帯記録担体１のライフサイクル状態を示す状態情報１２が不揮発性メモリ２ｄに記憶されている。
【００２０】
本実施形態において、携帯記録担体１のカード管理手段１０は、携帯記録担体１のライフサイクルの管理として、携帯記録担体１のライフサイクル管理に用いる取引カウンタ１１が上限値に達すると、状態情報１２を終了状態（ターミネート状態）に設定する機能を有している。
【００２１】
従来、取引カウンタ１１は、携帯記録担体１を使用する取引が開始されると一つだけ進むようになっており、セキュリティ攻撃を携帯記録担体１が受けると、セキュリティ攻撃が開始された時の取引カウンタ１１の値と上限値の差分回数だけ、携帯記録担体１に対するセキュリティ攻撃が実施可能になっていた。
【００２２】
これに対し、本実施形態にかかる携帯記録担体１のカード管理手段１０は、取引が開始されると取引カウンタ１１を確認し、取引カウンタ１１が上限値に達していない場合、予め設定された加算値だけ取引カウンタ１１を進め、加算値から一つ差し引いた値に設定される減算値が割り振られた取引コマンドをターミナル３から受信すると、取引コマンドにかかる処理を実施した後、実施した取引コマンドに割り振られた値だけ取引カウンタ１１を戻す処理を行う。
【００２３】
携帯記録担体１のカード管理手段１０がこのように取引カウンタ１１を操作することで、減算値が割り振られた取引コマンドにかかる処理が全て終了した場合には、加算値と減算値の差分、すなわち、一つだけ取引カウンタ１１が進むことになるが、減算値が割り振られた取引コマンドにかかる処理が一つでも終了していない場合には、処理が終了していない取引コマンドに割り振られた値だけ取引カウンタ１１は戻らないため、取引カウンタ１１は通常よりも多く進むことになる。
【００２４】
すなわち、本実施形態の携帯記録担体１によれば、携帯記録担体１を使用する取引が開始された後に、セキュリティ攻撃を携帯記録担体１が受けると、取引カウンタ１１は通常よりも多く進むため、携帯記録担体１に対してセキュリティ攻撃を実施できる回数を減らすことができる。
【００２５】
図４は、本実施形態にかかる携帯記録担体１のカード管理手段１０の動作を説明する図である。複数の処理が実行される取引の開始を示すコマンドをターミナル３から受信すると（Ｓ１）、まず、携帯記録担体１のカード管理手段１０は、不揮発性メモリ２ｄに記憶されている状態情報１２を確認する（Ｓ２）。
【００２６】
携帯記録担体１のカード管理手段１０は、不揮発性メモリ２ｄに記憶されている状態情報１２により示される状態が通常利用状態でなければ、状態情報１２により示される状態に合わせたレスポンスを送信して（Ｓ１１）、この手順は終了する。
【００２７】
携帯記録担体１のカード管理手段１０は、不揮発性メモリ２ｄに記憶されている状態情報１２により示される状態が通常利用状態であれば、取引カウンタ１１が上限値に達しているか確認し（Ｓ３）、取引カウンタ１１が上限値に達している場合、不揮発性メモリ２ｄに記憶されている状態情報１２を終了状態に設定した後（Ｓ１０）、状態情報１２により示される状態に合わせたレスポンスを送信して（Ｓ１１）、この手順は終了する。
【００２８】
携帯記録担体１のカード管理手段１０は、取引カウンタ１１が上限値に達していない場合、予め設定された加算値だけ取引カウンタ１１を進めた後（Ｓ４）、ターミナル３からの取引コマンド待ちの状態になる（Ｓ５）。
【００２９】
なお、セキュリティ攻撃を受けるなどして携帯記録担体１を利用する取引が中断した際に、取引カウンタ１１が通常よりも多く進むためには、加算値を「１」より大きく設定する必要がある。
【００３０】
携帯記録担体１のカード管理手段１０は、ターミナル３から取引コマンドを受信すると、ターミナル３から受信した取引コマンドに対応するコンピュータプログラムを呼び出すことで、取引コマンドに対応する処理を実行する（Ｓ６）。
【００３１】
携帯記録担体１のカード管理手段１０は、ターミナル３から受信した取引コマンドに対応する処理が終了すると、ターミナル３から受信した取引コマンドが、減算値が割り振られた取引コマンドであるか確認する（Ｓ７）。
【００３２】
携帯記録担体１のカード管理手段１０は、ターミナル３から受信した取引コマンドが、減算値が割り振られた取引コマンドでなければ、取引コマンドの処理結果を示すレスポンスを送信し（Ｓ９）、図４のＳ５に戻り、ターミナル３からの取引コマンド待ちの状態になる。
【００３３】
また、携帯記録担体１のカード管理手段１０は、ターミナル３から受信した取引コマンドが、減算値が割り振られた取引コマンドであれば、ターミナル３から受信した取引コマンドに設定されている減算値だけ取引カウンタ１１を戻した後（Ｓ８）、取引コマンドの処理結果を示すレスポンスを送信し（Ｓ９）、図４のＳ５に戻り、ターミナル３からの取引コマンド待ちの状態になる。
【００３４】
なお、取引にかかる全ての処理が終了すると、ターミナル３が取引の終了処理を実施して（Ｓ１２）、図４の手順は終了する。
【００３５】
図４において、減算値が割り振られた取引コマンドは、携帯記録担体１に記憶された情報資源を扱う処理に対応する取引コマンドになり、減算値が割り振られた取引コマンドにかかる全ての処理が終了した時に取引カウンタ１１が一つだけ進むようにするためには、減算値を「加算値−１」に設定する必要がある。
【００３６】
図５は、取引カウンタ１１の遷移を説明する第１図である。図５では、取引カウンタ１１を進めるための加算値を「１０」とし、減算値を「加算値−１」である「９」としている。
【００３７】
図５では、減算値を設定する取引コマンドを取引コマンドＡのみとし、減算値「９」を一つの取引コマンドＡに割り振っている。すなわち、取引コマンドＡに設定されている値は「９」になる。
【００３８】
図５（ａ）は取引開始前の取引カウンタ１１を示し、図４のＳ３において、図５（ａ）の取引カウンタ１１が上限値に達している場合、携帯記録担体１の状態情報１２は終了状態に設定される。
【００３９】
また、図５（ａ）の取引カウンタ１１が上限値に達していない場合、図４のＳ４において、取引カウンタ１１は、加算値（ここでは、「１０」）だけ進められ、取引開始後の取引カウンタ１１を示す図５（ｂ）の状態になる。
【００４０】
図４のＳ５において、携帯記録担体１が、ターミナル３から取引コマンドＡを受信し、取引コマンドＡに対応する処理を実行すると、取引カウンタ１１は、取引コマンドＡに設定された値（ここでは、「９」）だけ戻され、取引コマンドＡを処理した後の取引カウンタ１１を示す図５（ｃ）の状態になる。
【００４１】
取引コマンドＡに割り振った値は、減算値、すなわち「加算値−１」になるため、取引コマンドＡにかかる処理が終了すると取引カウンタ１１は一つだけ進むことになる。また、携帯記録担体１を使用する取引が開始されてから、セキュリティ攻撃を携帯記録担体１が受けて取引が中断し、取引コマンドＡが実施されない場合、取引コマンドＡに設定されている値（ここでは、「９」）だけ取引カウンタ１１が戻されないことになるため、取引カウンタ１１は通常よりも急激に進む（ここでは、「１０」進む）ことになる。
【００４２】
また、本実施形態において、減算値が割り振られた取引コマンドは一つでなくともよく、取引コマンドの重要度に応じて、複数の取引コマンドに減算値を割り振ることもできる。
【００４３】
図６は、取引カウンタ１１の遷移を説明する第２図である。図６では、取引カウンタ１１を進めるための加算値を「１０」とし、減算値を「加算値−１」である「９」にしている。
【００４４】
図６では、減算値を割り振る取引コマンドを取引コマンドＢ１と取引コマンドＢ２の２つとしている。ここでは、取引コマンドＢ１に割り振った値を「６」に、取引コマンドＢ２に割り振った値を「３」にし、取引コマンドＢ１と取引コマンドＢ２に割り振られた値の総和は減算値（ここでは、「９」）になる。
【００４５】
図６（ａ）は取引開始前の取引カウンタ１１を示し、図４のＳ３において、図６（ａ）の取引カウンタ１１が上限値に達している場合、携帯記録担体１の状態情報１２は終了状態に設定される。
【００４６】
また、図６（ａ）の取引カウンタ１１が上限値に達していない場合、図４のＳ４において、取引カウンタ１１は、加算値（ここでは、「１０」）だけ進められ、取引開始後の取引カウンタ１１を示す図６（ｂ）の状態になる。
【００４７】
図４のＳ５において、携帯記録担体１が、ターミナル３から取引コマンドＢ１を受信し、取引コマンドＢ１にかかる処理が携帯記録担体１で実行されると、取引カウンタ１１は、取引コマンドＢ１に割り振った値（ここでは、「６」）だけ戻され、取引コマンドＢ１を処理した後の取引カウンタ１１を示す図６（ｃ）の状態になる。
【００４８】
また、取引コマンドＢ１を処理した後、図４のＳ５において、携帯記録担体１が、ターミナル３から取引コマンドＢ２を受信し、取引コマンドＢ２にかかる処理が携帯記録担体１で実行されると、取引カウンタ１１は、取引コマンドＢ２に割り振った値（ここでは、「３」）だけ戻され、取引コマンドＢ２を処理した後の取引カウンタ１１を示す図６（ｄ）の状態になる。
【００４９】
取引コマンドＢ１と取引コマンドＢ２にそれぞれに割り振った値の総和は減算値で、減算値は「加算値−１」になるため、図６（ｄ）に図示したように、取引にかかる全ての処理が終了した時に取引カウンタ１１は一つだけ進むことになる。
【００５０】
また、携帯記録担体１を使用する取引が開始されてから、セキュリティ攻撃を携帯記録担体１が受けて取引が中断し、減算値を割り振った取引コマンド（ここでは、取引コマンドＢ１、Ｂ２）が実施されない場合、実施されなかった取引コマンドに割り振った値の総和（ここでは、「９」）だけ取引カウンタ１１が戻されないことになるため、取引カウンタ１１は通常よりも急激に進む（ここでは、「１０」進む）ことになる。
【００５１】
また、減算値が割り振られている取引コマンドＢ１を実施した後、セキュリティ攻撃を携帯記録担体１が受けて取引が中断し、減算値が割り振られている取引コマンドＢ２が実施されない場合、取引カウンタ１１は、図６（ｃ）の状態のままになり、取引カウンタ１１は「４」だけ進んだ状態になる。
【００５２】
このように、本実施形態にかかる携帯記録担体１によれば、複数の処理が実施される取引が正常終了した場合には取引カウンタ１１が一つ進み、本来の製品寿命まで携帯記録担体１を使用することができる。また、取引中にセキュリティ攻撃などを受けて中断された場合には、取引カウンタ１１が通常よりも多く進むため、早急に携帯記録担体１を使用できない終了状態にすることができる。
【００５３】
また、複数の取引コマンドに減算値を割り振ることで、取引コマンドの重要度に応じて、取引コマンドが実施されなかった時に取引カウンタ１１が進む量を調節できる。例えば、正しいパスワードが入力された場合のみ携帯端末内に保存された個人情報(重要情報)を読み出せるという処理があった場合、パスワードを照合する処理に対応する取引コマンドに割り振る値を大きくし、個人情報(重要情報)を読み出す取引コマンドに割り振る値を小さくすれば、パスワードを照合する前に取引が中断した場合は、取引カウンタ１１が急激に進み、パスワードを照合した後に取引が中断した場合は、取引カウンタ１１を緩やかに進ませることができる。
【符号の説明】
【００５４】
１    携帯記録担体
１０  カード管理手段
１１  取引カウンタ
１２  状態情報
２    ＩＣチップ
２ｃ  ＲＯＭ
２ｄ  不揮発性メモリ（ＮＶＭ）
３    ターミナル
【図１】
2014085769.tif 000003
【図２】
2014085769.tif 000004
【図３】
2014085769.tif 000005
【図４】
2014085769.tif 000006
【図５】
2014085769.tif 000007
【図６】
2014085769.tif 000008