(57)【要約】【課題】複数のインターフェースを有するＩＣチップにおいて、インターフェースを介した外部からの不正なアクセスによる機密情報の漏洩を効率よく防止するＩＣチップ、ＩＣチップにおける処理方法、ＩＣチップ用処理プログラム、及び携帯端末等を提供する。【解決手段】ＵＩＭ１３は、所定のトランザクションに関する処理が開始されたか否かを示す開始条件が検出された場合に、実行されているトランザクションと対応付けて記憶された不揮発性メモリの所定領域のアクセスを制限するアクセス制限を開始する。【選択図】図１
2012141754.tif 000002
【特許請求の範囲】
【請求項１】
複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップであって、
各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段と、
所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段と、
前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段と、
を備えることを特徴とするＩＣチップ。
【請求項２】
請求項１に記載のＩＣチップであって、
前記アクセス制限手段は、当該実行されているトランザクションの処理を中断する処理であることを特徴とするＩＣチップ。
【請求項３】
請求項１又は２に記載のＩＣチップであって、
前記アクセス制限手段は、検知された不正なアクセスを遮断する処理であることを特徴とするＩＣチップ。
【請求項４】
請求項１乃至３の何れか一項に記載のＩＣチップであって、
前記管理テーブルには、更に、トランザクションの実行に用いられるアプリケーションの種類が、トランザクション毎に対応付けて記憶されており、
前記不正な攻撃と判定されるコマンドは、  前記検出した開始条件に示されるトランザクションと対応付けて記憶されたアプリケーション以外のアプリケーションの制御に基づいて、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域にアクセスするコマンドであることを特徴とするＩＣチップ。
【請求項５】
請求項１乃至４の何れか一項に記載のＩＣチップであって、
前記インターフェースを介して受信したコマンドに基づいて、前記所定のトランザクションに関する処理が実行され、前記開始条件が検出された場合に、前記コマンドが受信されたインターフェースの種類を記憶するアクセス制御情報記憶手段と、を更に備え、
前記アクセス制限手段は、前記コマンドが受信されたインターフェースと異なるインターフェースから不正な攻撃と判定されるコマンドが入力された場合には、前記アクセス制限を開始することを特徴とするＩＣチップ。
【請求項６】
請求項１乃至５の何れか一項に記載のＩＣチップであって、前記ＩＣチップは、ＵＩＭ（User Identity Module）に搭載されていることを特徴とするＩＣチップ。
【請求項７】
請求項６に記載のＩＣチップであって、前記ＵＩＭは、携帯端末に装着されていることを特徴とするＩＣチップ。
【請求項８】
複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップにおける処理方法であって、
各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶工程と、
所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限工程と、
前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了工程と、
を有することを特徴とするＩＣチップにおける処理方法。
【請求項９】
複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップに含まれるコンピュータを、
各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段、
所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段、
前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段、
として機能させることを特徴とするＩＣチップ用処理プログラム。
【請求項１０】
複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行される接触型ＩＣチップと、当該ＩＣチップと第一の前記インターフェースを介して通信可能なコントローラとを備える携帯端末において、
前記接触型ＩＣチップは、
各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段と、
所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段と、
前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段と、
を備えることを特徴とする携帯端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のインターフェースを備えるＩＣチップにおける処理技術に関する。
【背景技術】
【０００２】
ＩＣカードは、接触型ＩＣ(Integrated Circuit)チップが適用されるタイプと、非接触型ＩＣチップが適用されるタイプとに大別される。そして、接触型ＩＣチップが適用されるＩＣカードは、ＵＩＭ（User Identity Module）、クレジットカードやキャッシュカードに用いられ、ＩＣカードリーダライタ装置等の接触インターフェースを介して（当該装置にＩＣカードが挿入され）、ＩＣチップに対してデータの読取り及び書込みが行われている。また、非接触型ＩＣカードは、一部のＩＤカード（例えば、入退出管理カード等）や交通系カード（例えば、ＳＵＩＣＡ（登録商標）等）に用いられ、非接触ＩＣカード用のリーダライタ装置を介して、ＩＣチップに対してデータの読取り及び書込みが行われている。
【０００３】
近年、日本においては、ＵＩＭが搭載された携帯電話に、非接触ＩＣチップ用リーダライタ装置等との間で通信を行うための非接触通信用コイル（アンテナ）と非接触通信用のプロトコルや非接触アプリケーションを処理するマイコンを内蔵することで、接触インターフェースのＵＩＭ（携帯電話サービス）に加えて、非接触インターフェースを用いた様々なサービスが提供されている。この携帯電話には接触アプリケーションを実行する専用のマイコンと、非接触アプリケーションを実行する専用のマイコンがそれぞれ搭載されている。従って、当該携帯電話は、接触アプリケーションと非接触アプリケーションを同時に実行（機能）することが可能である。具体的には、例えば、当該携帯電話では、接触アプリケーションの実行により実現される携帯電話への着信処理と、非接触アプリケーションの実行により実現される決済処理や、ゲートの通過処理（入退室管理処理）を同時に実行することが可能である。
【０００４】
一方、欧州を中心に、ＵＩＭが搭載された携帯端末に備えられた非接触通信用コイルと非接触通信用のプロトコル処理を主に担当するマイコンを、ＵＩＭが備える既存の接触インターフェースとは別のインターフェースに接続することにより、ＵＩＭ内で接触アプリケーションに加え、非接触アプリケーションを管理する方法が検討され、関連技術の標準化が進められている。この方式の実施形態の1つとして、接触用アプリケーションと非接触用アプリケーションは共にＵＩＭに格納されＵＩＭのハードウェアリソース（ＣＰＵ、記憶装置、各種周辺回路）を共有することになるが、これらのアプリケーションがリムーバブル（Removable）であるＵＩＭに統合して格納されるため、アプリケーションの管理や移行が容易であるなどのメリットが存在する（以下、ＮＦＣ(Near Field Communication)方式と呼ぶ）。
【０００５】
先に述べたように、接触用、非接触用のアプリケーションがＵＩＭへ格納されることで、コスト低減効果があること、アプリケーションの管理・移行がし易いことなどＮＦＣ方式には利点もあるが、ユーザの利用状況等により、接触・非接触からそれぞれ非同期にアプリケーション処理依頼を受け付け、当該アプリケーションが機能するため、セキュリティ上の問題が発生する。
【０００６】
ここで、非接触インターフェースを用いたサービスの中で普及が進みつつある決済アプリケーションについて、上記のＮＦＣ方式で実現した場合に、起こりえるセキュリティ上の問題について、図８を用いて説明する。
【０００７】
図８は、決済アプリケーションによる決済処理が実行された場合に起こりえるセキュリティ上の問題を示す概念図である。
【０００８】
決済処理を実行する過程では、決済用の端末（非接触リーダを含む）と非接触ＩＣカード間で、認証処理などを目的とした機密情報の交換が行われる。この時、先に述べた２つの機器間では、実行中の決済処理内のみ有効なセッション情報（セッション鍵、チャレンジ、暗号演算結果など）を機器間で共有する秘密情報を使って生成し、ＩＣカードのメモリ上に記憶される。
【０００９】
具体的には図８に示すように、決済処理では、決済処理を実行するアプリケーションの実行コマンドとしてApplicationの選択が決済用の端末のＣＰＵ（ＵＩＭ）へ送信されると（ステップＳ１０１）、当該コマンドを受信したことを示すレスポンスが非接触インターフェースに送信される（ステップＳ１０２）。そして、決済処理に関する認証依頼が非接触インターフェースを介して入力されると（ステップＳ１０３）、ＣＰＵは、セッション情報を生成し（ステップＳ１０４）、当該セッション情報が生成されたことを示すレスポンス信号を送信する（ステップＳ１０５）。
【００１０】
このセッション情報には、上述したセッション鍵等のほか、決算処理の各段階に伴って生成される情報（例えば、決算処理で決定される取引金額に関する情報や暗証番号等）も順次記憶され（ステップＳ１０６〜ステップＳ１０８）、決算処理の終了によって消去される（ステップＳ１０９）。
【００１１】
上述したようにＮＦＣ方式は、携帯端末からＵＩＭへ常に起電力が供給され２つのインターフェースが同時に機能することがあるため、非接触インターフェースを介したトランザクション中（即ち、上記決済処理中）に、接触インターフェースからの処理、例えば、不正にセッション情報を読み出すコマンド（ステップＳ１２１）等により、セッション情報にアクセスされ漏洩する恐れがある（ステップＳ１２２）。そして、これらのセッション情報を収集し、暗号アルゴリズムが内包する脆弱性を利用することでセッション情報を生成するために必要な秘密情報を推定することができ、コマンド処理結果のレスポンスとして出力することができる。
【００１２】
そこで、特許文献１では、実行中のインターフェース以外のインターフェースからの不正なアクセスを防止すべく、インターフェースごとにアクセス可能なＩＣカードの記憶領域（リソース領域）を分割する方法が開示されている。
【００１３】
また、特許文献２では、接触用アプリケーション及び非接触用アプリケーションの実行状態（導入状況）に応じて、ＩＣカードの記憶領域を物理的に又は論理的に分離（即ち、アプリケーションの発行とその他の処理（例えば決済処理）でインターフェースを使い分ける）技術が開示されている。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特許第４２０９５１２号公報
【特許文献２】特許第４２３１１４８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら特許文献１に記載される方法では、接触用のアプリケーション用と非接触用のアプリケーション用にそれぞれ記憶領域を分割するため、リソース量の制限が厳しいＩＣカードの記憶領域において、リソース利用効率が落ちてしまうことが容易に考えられる。
【００１６】
また、特許文献２に記載される技術では、ＩＣカードの記憶領域の分割をアプリケーションの導入状況に応じて実行させるとしても、接触インターフェースと非接触インターフェースの両方を利用するアプリケーションが実現できない。
【００１７】
そこで、本発明は上記各問題点に鑑みてなされたものであり、複数のインターフェースを有するＩＣチップにおいて、インターフェースを介した外部からの不正なアクセスによる機密情報の漏洩を効率よく防止するＩＣチップ、ＩＣチップにおける処理方法、ＩＣチップ用処理プログラム、及び携帯端末等を提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記の問題を解決するために、請求項１に記載の発明は、複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップであって、各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段と、所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段と、前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段と、を備えることを特徴とする。
【００１９】
この発明によれば、複数のインターフェースを有するＩＣチップにおいて、インターフェースを介した外部からの不正なアクセスによる機密情報の漏洩をＩＣチップの記憶領域の設定を変更することなく効率よく防止する。
【００２０】
請求項２に記載の発明は、請求項１に記載のＩＣチップであって、前記アクセス制限手段は、当該実行されているトランザクションの処理を中断する処理であることを特徴とする。
【００２１】
請求項３に記載の発明は、請求項１又は２に記載のＩＣチップであって、前記アクセス制限手段は、検知された不正なアクセスを遮断する処理であることを特徴とする。
【００２２】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載のＩＣチップであって、前記管理テーブルには、更に、トランザクションの実行に用いられるアプリケーションの種類が、トランザクション毎に対応付けて記憶されており、前記不正な攻撃と判定されるコマンドは、前記検出した開始条件に示されるトランザクションと対応付けて記憶されたアプリケーション以外のアプリケーションの制御に基づいて、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域にアクセスするコマンドであることを特徴とする。
【００２３】
請求項５に記載の発明は、請求項１乃至４の何れか一項に記載のＩＣチップであって、前記インターフェースを介して受信したコマンドに基づいて、前記所定のトランザクションに関する処理が実行され、前記開始条件が検出された場合に、前記コマンドが受信されたインターフェースの種類を記憶するアクセス制御情報記憶手段と、を更に備え、前記アクセス制限手段は、前記コマンドが受信されたインターフェースと異なるインターフェースから不正な攻撃と判定されるコマンドが入力された場合には、前記アクセス制限を開始することを特徴とする。
【００２４】
請求項６に記載の発明は、請求項１乃至５の何れか一項に記載のＩＣチップであって、前記ＩＣチップは、ＵＩＭ（User Identity Module）に搭載されていることを特徴とする。
【００２５】
請求項７に記載の発明は、請求項６に記載のＩＣチップであって、前記ＵＩＭは、携帯端末に装着されていることを特徴とする。
【００２６】
請求項８に記載の発明は、複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップにおける処理方法であって、各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶工程と、所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限工程と、前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了工程と、を有することを特徴とする。
【００２７】
請求項９に記載の発明は、複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行されるＩＣチップに含まれるコンピュータを、各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段、所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段、前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段、として機能させることを特徴とする。
【００２８】
請求項１０に記載の発明は、複数のインターフェースを有し、前記インターフェースを介して受信したコマンドに基づいて複数のトランザクションが実行される接触型ＩＣチップと、当該ＩＣチップと第一の前記インターフェースを介して通信可能なコントローラとを備える携帯端末において、前記接触型ＩＣチップは、各トランザクションの実行の際に用いられるデータが記憶される記憶部の所定領域を示す情報が、当該トランザクション毎に対応付けて管理テーブルに記憶する管理情報記憶手段と、所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセス制限を開始するアクセス制限手段と、前記アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するアクセス制限終了手段と、を備えることを特徴とする。
【発明の効果】
【００２９】
以上のように、本発明によれば、複数のインターフェースを有するＩＣチップにおいて、インターフェースを介した外部からの不正なアクセスによる機密情報の漏洩を効率よく防止することができる。
【図面の簡単な説明】
【００３０】
【図１】本実施形態に係る携帯端末の概要構成例を示すブロック図である。
【図２】管理テーブル及びその他の関連情報を示す概念図である。
【図３】管理テーブル及びＵＩＭ１３の不揮発性メモリの領域をバイナリ表現で示す概念図である。
【図４】開始条件テーブル、アクセス制限用テーブル、及び終了条件テーブルを示す図である。
【図５】本実施携帯に係る携帯端末１の動作を示すフローチャートである。
【図６】コマンド実行処理におけるＵＩＭ１３の動作を示すフローチャートである。
【図７】コマンドプログラムコードの実行処理におけるＵＩＭ１３の動作を示すフローチャートである。
【図８】決済アプリケーションによる決済処理が実行された場合に起こりえるセキュリティ上の問題を示す概念図である。
【発明を実施するための形態】
【００３１】
［１．携帯端末の構成及び機能概要］
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、携帯端末に対して本発明を適用した場合の実施の形態である。
【００３２】
先ず、図１を参照して、本実施形態に係る携帯端末の構成及び機能概要について説明する。
【００３３】
図１は、本実施形態に係る携帯端末の概要構成例を示すブロック図である。
【００３４】
図１に示すように、携帯端末１は、携帯端末１の機能を担うコントローラ１１、ＣＬＦ１２、及びＵＩＭ１３等を備えて構成されている。なお、携帯端末１には、例えば操作キー、ディスプレイ、スピーカ、及び移動体通信部（Ｗ−ＣＤＭＡ又はＣＤＭＡ２０００の通信方式による一般的な通信制御機能、ＵＲＬを指定することで所定のサーバにアクセスして所定の情報を受けるブラウザ機能、及びメーラ機能等の通信処理を行う。）等を備える携帯電話機やＰＤＡ等を適用できる。なお、携帯端末１におけるこれらの機能は公知であるため詳しい説明を省略する。
【００３５】
コントローラ１１は、図示しないが、ＣＰＵ（Central Processing Unit）、各種プログラム及びデータを記憶する不揮発性メモリ（例えばフラッシュメモリ等）、データを一時記憶するＲＡＭ、ＵＩＭ１３との間のインターフェースを担うＩ／Ｏポート等を備えている。コントローラ１１は、ＵＩＭ１３との間でインターフェースを介して通信可能になっている。そして、コントローラ１１は、携帯端末１の通信処理（移動体通信網やインターネットを介して行われる通信）や携帯端末１のユーザからの操作キーを介した操作指示に応じて各種処理を実行する。このような処理の過程で、コントローラ１１は、例えば、基地局３との間で行われる通話処理（着信処理を含む）、Ｗｅｂアクセス、メール送受信等の通信処理に関するサービス、その他暗号化処理や認証処理等のサービス（本願のトランザクションを含む）を実行するためのコマンド（信号）を、インターフェース（後述する接触Ｉ／Ｏポートを含む）を介してＵＩＭ１３へ送信する。
【００３６】
本実施形態において、コントローラ１１とＵＩＭ１３との間におけるコマンドの送受信に基づいて実行されるサービス（上記通信処理に関するサービス等）を、接触サービスと称する。また、接触サービスを実行するためのコマンド（例えば、データの読み出し命令等）を、接触コマンドと称する（図１イ参照）。なお、上記接触サービスを実行するために必要な接触コマンドの送受信は、１回だけでなく複数回行われる場合もある。
【００３７】
また、本実施形態において、携帯電話１に所定の機能（例えば上記サービスの一部分）や上記サービス全体を実行させるための一又は複数のコマンドの集合によって実行される処理を、トランザクションとする。即ちトランザクションは、一又は複数のコマンドの処理によって実行される所定の機能やサービスを、一つの処理として管理するために用いられる。従って、トランザクションには、上記サービス全体を示す場合も含まれるし、上記サービスの一部分を示す場合も含まれる。以下、所定のトランザクションとした場合には、上記所定のサービスの一部分や全体を実行させるための一又は複数のコマンドの集合によって実行される処理を示すものとする。この所定のトランザクションの一例として、例えば、セッション情報が生成されてから消去されるまでの期間を所定のトランザクションと想定することができる。以下に事例に沿った具体例について説明する。
【００３８】
携帯電話１がサービスを実行する際には、セッション情報（当該サービスに関する情報）が生成され、記憶されるようになっている。具体的には、例えば、決済処理を実行する決済処理アプリ（後述する非接触アプリの一例）では、入力されたコマンドに示される当該決算処理を実行する際に、実行された処理の各段階に伴って生成される決算処理で決定される取引金額に関する情報や、暗証番号等の機密情報がセッション情報として生成され記憶されるようになっている。そして、当該サービスの終了に伴って、このセッション情報は消去される。
【００３９】
即ち、このセッション情報が生成されてから消去されるまでの間には、携帯電話１は一又は複数のコマンドを受信して、所定の処理を実行するようになっている。このセッション情報が生成されてから消去されるまでの期間を、トランザクションと考えることができる。トランザクションとは、通常、携帯電話１に所定の機能（例えば、上記サービスの一部分）や上記サービス全体を実行させるための一又は複数のコマンドによって実行される処理を示すからである。
【００４０】
ＣＬＦ（Contactless Front End）１２は、ＮＦＣの規格で規定される非接触通信を行う非接触型ＩＣチップであり（即ち、ＮＦＣ方式を採用）、図示しないが、ＣＰＵ、各種プログラム及びデータを記憶する不揮発性メモリ、データを一時記憶する揮発性メモリ（例えば、ＲＡＭ等）、ＵＩＭ１３との間のインターフェースを担うＩ／Ｏポート（ＳＷＩＯ）等を備えている。このＮＦＣ規格で規定されるＣＬＦ１２では、Ｔｙｐｅ−Ａ、Ｔｙｐｅ−Ｂの通信方式に加えて、ＦｅｌｉＣａ（登録商標）の通信方式もＴｙｐｅ−Ｆとしてサポートしている。このようなＣＬＦ１２は、非接触のフィールド内で非接触リーダ２との間で上記通信方式に準じた各種信号の送受信を行うためのアンテナ１２ａに接続されている。そして、ユーザが携帯端末１を非接触リーダ２に翳すと、ＣＬＦ１２は、非接触リーダ２から送信されたサービス（本願のトランザクションを含む）を実行するためのコマンドを、インターフェース（後述する非接触Ｉ／Ｏポートを含む）を介してＵＩＭ１３へ送信するようになっている。
【００４１】
上記サービスとしては、例えば、クレジットカードや電子マネー等の決済処理（サービス）、鉄道及びバス等の交通機関のプリペイドカード及び定期券、施設の入退出管理等が該当する。
【００４２】
本実施形態において、ＣＬＦ１２と非接触リーダ２との間のコマンドの送受信に基づいて実行されるサービス（上記決済処理等）を、非接触サービスと称する。また、非接触サービスを実行するためのコマンドを、非接触コマンドと称する（図１ロ参照）。なお、上記非接触サービスを実行するために必要な非接触コマンドの送受信は、１回だけでなく複数回行われる場合もある。
【００４３】
ＵＩＭ１３は、ＵＩＣＣ(Universal Integrated Circuit Card)の一つであり、従来のＳＩＭ（Subscriber Identity Module）をベースに機能が拡張された接触型ＩＣチップを搭載する。そして、ＵＩＭ１３は、ＣＰＵ（本実施形態における管理情報記憶手段、アクセス制限手段、アクセス制限終了手段、及びアクセス制御情報記憶手段の一例）、各種プログラム及びデータを記憶する不揮発性メモリ（本実施形態における記憶部の一例）、データを一時記憶する揮発性メモリ（例えば、ＲＡＭ等）、コントローラ１１との間のインターフェースを担う接触Ｉ／Ｏポート（本願の複数のインターフェースの一例）、及びＣＬＦ１２との間のインターフェースを担う非接触Ｉ／Ｏポート（本願の複数のインターフェースの一例）等を備えている。なお、ＣＬＦ１２とＵＩＭ１３間のインターフェースには、ＳＷＰ（Single Wire Protocol）が適用される。また、以下単にＵＩＭ１３を記す場合には、ＵＩＭ１３のＣＰＵを含むものとする。従って、ＵＩＭ１３の動作と記す場合には、ＵＩＭ１３のＣＰＵの動作を含むものとする。
【００４４】
また、ＵＩＭ１３の不揮発性メモリに記憶されるプログラムには、ＵＩＭ１３全体の動作を統括的に制御するオペレーティングシステム（以下、「ＯＳ」とする）の他、ＣＬＦ１２から受信した非接触コマンドの処理を制御する非接触インターフェースアプリケーションプログラム（以下、「非接触アプリ」という）と、コントローラ１１から受信した接触コマンドの処理を制御する接触インターフェースアプリケーションプログラム（以下、「接触アプリ」という）が実装されている。また、「非接触アプリ」と「接触アプリ」を、「アプリ」と総称する。本実施形態における携帯端末１では、非接触アプリの制御によって非接触サービス（上述したトランザクションを含む）が実行され、また、接触アプリの制御によって接触サービス（上述したトランザクションを含む）が実行されるようになっている。なお、上述したトランザクションは、このアプリの制御に基づいて実行されることとなる。
【００４５】
さらに、ＵＩＭ１３の不揮発性メモリには、管理テーブルが記憶されている。
【００４６】
ここで、管理テーブルについて、図２及び図３を用いて説明する。図２は管理テーブルの概要を示す概念図である。
【００４７】
一般的に、上記アプリが実行される場合には、ＵＩＭ１３は、非接触Ｉ／Ｏポート又は接触Ｉ／Ｏポート等のインターフェースから入力されたコマンドに示す処理を実行する際に、ＵＩＭ１３の揮発性メモリ等（ＵＩＭ１３の不揮発性メモリでもよい。）の所定の領域を作業領域として利用する。
【００４８】
具体的には、決済処理を実行する決済処理アプリ（非接触アプリの一例）では、上述したように、入力されたコマンドに示される当該決算処理を実行する際に、実行された処理の各段階に伴って生成される情報（例えば、決算処理で決定される取引金額に関する情報や暗証番号等の機密情報を含むセッション情報等）が、ＵＩＭ１３の揮発性メモリの所定の領域に、一時的に記憶される。そして、セッション情報にあっては、決算処理の終了に伴って、揮発性メモリから消去される。
【００４９】
本実施形態における管理テーブルには、所定のトランザクションを実行するために用いられるアプリと、当該アプリの実行（即ち、トランザクションの実行）の際に用いられるデータが記憶される（例えば、上記作業領域として利用される）ＵＩＭ１３の揮発性メモリのアドレス（本願の記憶部の所定領域を示す情報の一例）とが、トランザクション毎に対応付けて記憶されている。
【００５０】
なお、アプリの実行の際に用いられるデータとしては、種々のデータを設定することができ、上述した実行された処理の各段階に伴って生成される情報の全てを設定する他、個人情報や機密情報など特に秘匿性の高いデータを選択して設定するようにしてもよい。そして、このように設定されたアプリの実行の際に用いられるデータと、当該データが記憶されるＵＩＭ１３の揮発性メモリのアドレスと、当該データを取り扱うトランザクションとを対応付けて記憶する。
【００５１】
具体的に、図２（Ａ）に示すように、管理テーブルには、所定のトランザクションを実行するために用いられるアプリを示すトランザクション識別子と、当該アプリの実行の際に用いられるデータが記憶されるＵＩＭ１３の揮発性メモリのラベルと、が対応付けて記憶されている。
【００５２】
具体的には、上記アプリの一例としてＡｐｐｌｉｃａｔｉｏｎ  ＡとラベルＡＢＣが、Ａｐｐｌｉｃａｔｉｏｎ  ＢとラベルＤＥＦが、Ａｐｐｌｉｃａｔｉｏｎ  ＣとラベルＧＨＩが、それぞれ対応付けて記憶されている。なお、上記ラベルは、ＵＩＭ１３の揮発性メモリの一又は複数のアドレスにつける仮の名称を示している。
【００５３】
そしてラベルの詳細として、図２（Ｂ）に示すように、ＵＩＭ１３の揮発性メモリのアドレスが０ｘ１０００〜０ｘ１１００を示すものにはラベルＡＢＣが、ＵＩＭ１３の揮発性メモリのアドレスが０ｘ１５００〜０ｘ１８００を示すものにはラベルＤＥＦ、ＵＩＭ１３の揮発性メモリのアドレスが０ｘ１Ａ００〜０ｘ１Ｃ００を示すものにはＧＨＩが夫々付けられている。
【００５４】
すなわち、図２（Ａ）及び（Ｂ）によって、上記アプリの一例としてＡｐｐｌｉｃａｔｉｏｎ  Ａと上記アドレスの０ｘ１０００〜０ｘ１１００が、Ａｐｐｌｉｃａｔｉｏｎ  Ｂと０ｘ１５００〜０ｘ１８００が、Ａｐｐｌｉｃａｔｉｏｎ  Ｂと０ｘ１Ａ００〜０ｘ１Ｃ００がそれぞれ対応付けて記憶されていることとなる。
【００５５】
図２（Ｃ）には、上述した図２（Ａ）及び（Ｂ）によって示された上記アプリと、当該アプリの実行の際に用いられるデータが記憶されるアドレスが対応付けて記憶されたＵＩＭ１３の不揮発性メモリの領域を概念的に示す概念図が示されている。また、図３は管理テーブル及びＵＩＭ１３の不揮発性メモリの領域を中間言語が扱うデータをバイナリ表現で示す概念図である。図３に示す各情報は、上述した図２に示す管理テーブルの情報と表現形式が異なるが、同一の内容を示すものである。
【００５６】
バイナリ表現形式では、起動されるアプリごとにフレーム（図３（Ｂ））が読み出される。フレームには、所定のトランザクションを実行するために用いられるアプリと、当該アプリの実行の際に用いられるデータが記憶されるＵＩＭ１３の揮発性メモリのアドレスが対応付けて記憶されたテーブル（図３（Ａ））と、コマンドの受信に用いられるインターフェースの種類（図３（Ａ））が記憶されている。
【００５７】
なお、図３（Ａ）は、例えばＪａｖａ（登録商標）言語におけるオブジェクト参照値であり、Ｊａｖａのバイトコードはこのオブジェクト参照値によりオブジェクトを識別する。従って、図２に示すアクセス制限対象領域はアドレスで領域を指定することができるが、図３に示す例では、オブジェクトのＢｏｄｙがアクセス制限対象領域となる。
【００５８】
［２. 開始条件、アクセス制限、及び終了条件におけるＵＩＭ１３の動作］
次に、図４を用いて、本実施形態に係る開始条件、アクセス制限、及び終了条件におけるＵＩＭ１３の動作について説明する。
【００５９】
本実施形態に係るＵＩＭ１３は、所定のトランザクションに関する処理を開始条件として検出した場合であって、不正な攻撃と判定されるコマンドが入力された場合には、前記管理テーブルを参照して、前記検出した開始条件に示されるトランザクションと対応付けて記憶された前記記憶部の所定領域のアクセスを制限するアクセス制限を開始する。そして、アクセス制限を終了する終了条件を検出した場合には、前記アクセス制限を終了するようになっている。
【００６０】
以下、開始条件、アクセス制限、及び終了条件について詳細に説明する。
【００６１】
まず、開始条件について説明する。
【００６２】
上述したように本実施形態における携帯端末１は、携帯端末１からＵＩＭ１３へ常に起電力が供給され２つのインターフェースが同時に機能するため、非接触インターフェースを介したトランザクション中（例えば、決済処理中）に、接触インターフェースからの処理、例えば、不正にセッション情報を読み出すコマンド等により、セッション情報にアクセスされ漏洩する恐れがある。そして、これらのセッション情報を収集し、暗号アルゴリズムが内包する脆弱性を利用することでセッション情報を生成するために必要な秘密情報を推定することができる（不正な攻撃をうける）。
【００６３】
本実施形態におけるＵＩＭ１３は、このような不正な攻撃からの防御策として上記アクセス制限を開始する。そして、上述した開始条件とは、上記アクセス制限を開始する条件を示し、本実施形態では、開始条件として予め記憶された所定のトランザクションに関する処理が開始されたことを検出した場合に上記アクセス制限を開始するようになっている。この所定のトランザクションに関する処理は、例えば、ＵＩＭ１３の不揮発性メモリに記憶されるようにしてもよい。
【００６４】
ここで、図４（Ａ）を用いて、本願の所定のトランザクションに関する処理の一例について詳細に説明する。
【００６５】
図４（Ａ）は、ＵＩＭ１３の不揮発性メモリに記憶された所定のトランザクションに関する処理を示す条件を示す開始条件テーブルである。
【００６６】
図４（Ａ）に示すように、所定のトランザクションに関する処理の一例として、例えば、
ａ）予め定められたアプリケーションの選択処理が実行された場合、
ｂ）所定のインターフェースからコマンドを受信した場合、  
ｃ）予め定められた特定のトランザクション（処理）を実行させるコマンドを受信した場合、
等が設定される。
【００６７】
ここで、予め定められたアプリケーションとは、例えば、携帯端末１に搭載される非接触アプリ全てや、特定の非接触アプリ（例えば、上記決済処理を行う決済処理アプリ等）を任意に設定することができる。
【００６８】
また、所定のインターフェースからコマンドを受信した場合とは、例えば、非接触Ｉ／Ｏポートからコマンドを受信した場合等を設定することができる。
【００６９】
また、特定のアプリケーション処理を実行させるコマンドとは、アプリケーションが実行するトランザクションのうち特定のトランザクションを実行させるコマンドを受信した場合が該当し、例えば、アプリケーションの種類が決済処理を実行するアプリケーションであった場合には、認証処理を開始するコマンド等を任意に設定することができる。
【００７０】
所定のトランザクションに関する処理としては、上述した例に限られず、任意の条件を設定することができる。
【００７１】
そして、ＵＩＭ１３は、この所定のトランザクションに関する処理（即ち、開始条件）が検出されている間、不正な攻撃と判定されるコマンドが入力された場合には、アクセス制限を開始する。ここで、所定のトランザクションに関する処理が検出されている間とは、上記開始条件が検出されて、後述する終了条件が検出されるまでの期間を示す。
【００７２】
このアクセス制限は、上述した不正な攻撃から防御しつつ、実行すべきトランザクションを処理することを目的とする。かかる目的を達成するために、本実施形態におけるＵＩＭ１３は、上記不正な攻撃と判定されるコマンドに対しては、上記防御の一例として、アクセス制限を開始する。
【００７３】
アクセス制限は種々の処理を適用することが可能であるが、本実施形態においては、一例として、当該実行されているトランザクションの処理を中断する処理、あるいは検知された不正なアクセスを遮断する処理を開始する。
【００７４】
以下に、上記アクセス制限におけるＵＩＭ１３の動作について説明する。
【００７５】
まず、ＵＩＭ１３は、上述した開始条件を検出すると、アクセス制限用テーブルを、例えばＵＩＭ１３のＲＡＭ等に生成する。アクセス制限用テーブルには、開始されるアクセス制限の情報が記憶されるようになっている。
【００７６】
ここで、アクセス制限用テーブルについて、図４（Ｂ）を用いて説明する。
【００７７】
図４（Ｂ）は、アクセス制限テーブルを示す図である。
【００７８】
図４（Ｂ）に示すように、アクセス制限用テーブルには、開始条件を検出していることを示すアクセス制限実施フラグ（当該フラグをＯＮとしたもの）、アクセス制限の対象となるトランザクションを実行するアプリを示すトランザクション識別子、上記所定のトランザクションに関する処理が実行されるきっかけとなるコマンドが入力されたインターフェース（Ｉ／Ｏポート）の他、終了条件を検出しアクセス制限を終了したことを示すアクセス制限実施フラグ（当該フラグをＯＦＦとしたもの）等が記憶される。
【００７９】
具体的な動作として、ＵＩＭ１３は、上述した開始条件を検出すると、アクセス制限実施フラグをＯＮとする。そして、ＵＩＭ１３は、管理テーブル（図２（Ａ））を参照して、当該開始条件に対応付けて記憶された上記トランザクション識別子等を、アクセス制限用テーブルに記憶する。
【００８０】
例えば、開始条件がａ）予め定められたアプリケーションの選択処理が実行された場合では、ＵＩＭ１３は、管理テーブルを参照して、当該管理テーブルに示される当該アプリケーションに対応付けて記憶されたトランザクション識別子と、上記アプリケーションの選択処理を示すコマンドが入力されたインターフェースを、アクセス制限用テーブルに記憶する。
【００８１】
また、開始条件がｂ）所定のインターフェースからコマンドを受信した場合では、ＵＩＭ１３は、管理テーブルを参照して、当該管理テーブルに記憶されたトランザクション識別子と、前記コマンドが受信されたインターフェースとともにアクセス制限用テーブルに記憶する。
【００８２】
また、開始条件がｃ）予め定められた特定のトランザクションを実行させるコマンドを受信した場合では、ＵＩＭ１３は、管理テーブルを参照して、当該管理テーブルに示される上記特定のトランザクション識別子と、上記アプリケーションの選択処理を示すコマンドが入力されたインターフェースを、アクセス制限用テーブルに記憶する。
【００８３】
そして、あるＩ／Ｏポート（インターフェース）からＵＩＭ１３の揮発性メモリ等の所定領域にアクセスするコマンド（以下、単に「アクセス命令」とする。）を受信し、例えば、アプリケーション実行環境がアプリケーションコードを実行する過程で、ＵＩＭ１３は、ＵＩＭ１３の揮発性メモリ等の所定領域（例えば、セッション情報が記憶される所定の領域）へのアクセス命令を実行する前に、当該コマンドが、不正な攻撃と判定されるコマンドであるか否かを判定する。具体的には、以下に示すイ）〜二）に該当する場合には、不正な攻撃と判定しアクセス制限を開始する。
【００８４】
このイ）及びロ）について、具体的には、
イ）アクセス制限用テーブルに記憶されたアクセス制限実施フラグがＯＮであること。
【００８５】
即ち、ＵＩＭ１３は、新たにコマンドを受信した場合に、既に開始条件に該当し上記アクセス制限が開始されている場合が該当する。
【００８６】
ロ）アクセス命令によってアクセスするＵＩＭ１３の揮発性メモリ等の所定領域が、トランザクション識別子（即ち、アクセス制限の対象となるトランザクションを実行するアプリ）と対応付けて記憶された領域である場合。
【００８７】
即ち、受信したアクセス命令によってアクセスされようとするＵＩＭ１３の揮発性メモリ等の所定領域のアドレスが、管理テーブル（図２（Ａ））でアプリ（トランザクション識別子）と対応づけて記憶されたＵＩＭ１３の揮発性メモリのラベル（所定領域）と一致する場合が該当する。
【００８８】
ハ）アクセス命令に基づいてアクセスを試みたアプリ（トランザクションを実行するためのアクセス命令を実行するトランザクション識別子）と、現在実行中のトランザクション識別子（現在実行されているトランザクションを実行するためのアプリ）が一致しない場合。
【００８９】
即ち、上記開始条件に示されるトランザクションと対応付けて記憶されたトランザクション識別子（アプリの種類）以外のアプリケーションの制御に基づいて、コマンドが入力された場合が該当する。
【００９０】
また、ニ）上記ハ）に該当しない場合（即ち、アクセス命令によってアクセスを試みたアプリと、現在実行中のトランザクション識別子が一致）する場合であっても、上記アクセス制限用テーブルに記憶されたインターフェース以外のインターフェースからコマンドが受信された場合であって、認証処理が正しく実施されていない場合は、例外的に、アクセス制限を開始する。
【００９１】
ここで、認証処理について説明する。
【００９２】
決済アプリケーションによる決済処理が実行される場合を例に説明する。決済処理の詳細については、図８を用いて既に説明したが、ＵＩＭ１３は、認証依頼を示すコマンドの送受信により決済用の端末との間で認証処理を行い、当該決済用の端末が正当な通信相手であるか否かを判別する。
【００９３】
そして、認証処理の結果、上記決済用の端末が正当な通信相手であると判定した場合（認証処理が正常終了した場合）には、セッション情報の生成により決済処理の各段階に伴って生成される情報を送受信され、上記決済処理が行われる。
【００９４】
本実施形態では、ＵＩＭ１３と外部の機器等との間で上記認証処理が正常終了した場合には、ＵＩＭ１３は、当該外部の機器等から送信されるコマンドを正常なアクセスであると擬制して、アクセス制限を行わず、以後の処理を実行するようになっている。
【００９５】
具体的には、上記決済処理の場合では、ＵＩＭ１３に記憶される決済処理用のアプリと、上記外部の機器等に記憶されるアプリの制御のもと、ＵＩＭ１３と外部機器との間で認証コマンド、又はＰＩＮ照合等が行われることにより、上記認証処理が行われるようになっている。
【００９６】
そして、上記認証処理が行われた場合には、受信したコマンドが、アクセス制限の対象となるトランザクションの実行に用いられるインターフェース以外のインターフェースから受信されたものであっても、正当な領域にアクセスするトランザクションである場合には、ＵＩＭ１３は、当該コマンドは、通常処理を継続するようになっている。
【００９７】
一方、上記認証処理が行われていない場合には、ＵＩＭ１３は、受信したコマンドを、不正にセッション情報を読み出すコマンドであると判定し、上記アクセス制限を開始する。
【００９８】
なお、上記アクセス制限実施フラグがＯＦＦである場合には、上記（ロ）及び（ハ）がいかなる状態であっても、アクセス制限は開始されない（上記（ロ）及び（ハ）の項目のチェックは行わない）。
【００９９】
そして、ＵＩＭ１３は、終了条件を検出するまでアクセス制限を実行するようになっている。
【０１００】
ここで、終了条件について、図４（Ｃ）を用いて説明する。
【０１０１】
終了条件とは、実行中のアクセス制限を終了する条件を示し、以下に示すように任意に設定することができる。
【０１０２】
図４（Ｃ）に示すように、終了条件の一例として、例えば、
ａ）所定のコマンドシークエンスを正常終了した場合（予め定められた数のコマンドを処理した場合（上記トランザクションの終了に係らず））、
ｂ）所定のコマンド数の正常終了した場合（上記トランザクションが終了するために必要なコマンドを全て処理した場合）、
ｃ）トランザクションを構成するコマンド応答が異常終了した場合（ＵＩＭ１３がトランザクションを実行するためのコマンドを処理中に、何らかの以上が発生し終了した場合）、
ｄ）上記トランザクションが開始されてから一定の時間が経過した場合（ＵＩＭ１３が、開始条件に該当するトランザクションが実行されてから、所定の時間が経過した場合）等を設定することができる。
【０１０３】
この終了条件は、例えば、ＵＩＭ１３の不揮発性メモリに記憶されるようにしてもよいし、その他のメモリ（ＲＯＭ等）に記憶するようにしてもよい。なお、終了条件は上記に限られず、任意に設定することができる。
【０１０４】
そしてＵＩＭ１３は、終了条件に該当したことを検出した場合にはアクセス制限を終了する。
【０１０５】
具体的には、ＵＩＭ１３は、アクセス制限用テーブルを消去（記憶された内容を削除。初期化。）する。例えば、アクセス制限用テーブルに記憶されたアクセス制限実施フラグをＯＦＦとし、記憶したインターフェース情報をクリア、トランザクション識別子をクリア、他ＩＦ上での認証済みフラグをＯＦＦとする。また、ＵＩＭの引き抜き、電力供給の停止等が発生し、再度ＵＩＭが活性化された場合は、活性化時に同様な値を設定する処理を実行する。
【０１０６】
これらの処理により、リソースの利用効率を落とすことなく、非接触Ｉ／Ｏポート（非接触インターフェース）経由でトランザクションを処理中のアプリケーションが生成した機密情報を他のインターフェース（Ｉ／Ｏポート）を経由してカード外部へ不正に取り出す行為を検出し、防止することが可能になる。
【０１０７】
［３.コマンドを受信してからレスポンスを送信するまでのＵＩＭ１３の動作］
次に、本実施形態におけるコマンドを受信してからレスポンスを送信するまでのＵＩＭ１３の動作について、図５〜７を用いて説明する。
【０１０８】
図５は、コマンドを受信してからレスポンスを送信するまでの携帯端末１の動作を示すフローチャートである。
【０１０９】
図５に示すように、ＵＩＭ１３は、外部から送信されたコマンドを受信すると（ステップＳ１）、コマンド情報（ＡＰＤＵ）の解釈等を含むコマンド受信処理を行う。
【０１１０】
そして、ＵＩＭ１３１は、コマンド情報（ＡＰＤＵ）に含まれるコマンドの実行処理を開始する（ステップＳ２）。
【０１１１】
図６は、コマンド実行処理におけるＵＩＭ１３の動作を示すフローチャートである。
【０１１２】
ここでは、ＵＩＭ１３は、主として上述した開始条件の検出を行う。
【０１１３】
具体的には、図６に示すように、ＵＩＭ１３は、アクセス制限用テーブル（図４（Ｂ））を参照して、アクセス制限実施フラグが、ＯＮかＯＦＦかを判定する（ステップＳ１１）。
【０１１４】
アクセス制限実施フラグがＯＮであった場合には（ステップＳ１１：ＹＥＳ）、コマンドの実行処理を行うべく、コマンドプログラムコードの実行（ステップＳ１４）へ処理を移行する。
【０１１５】
一方、アクセス制限実施フラグがＯＦＦであった場合には（ステップＳ１１：ＮＯ）、ＵＩＭ１３は、開始条件テーブル（図４（Ａ））を参照して、開始条件に該当するか否か（即ち、開始条件を検出するか）を判定する（ステップＳ１２）。
【０１１６】
開始条件を検出した場合には（ステップＳ１２：ＹＥＳ）、ＵＩＭ１３は、アクセス制限フラグをＯＮにセットする（ステップＳ１３）。
【０１１７】
一方、開始条件を検出しなかった場合には（ステップＳ１２：ＮＯ）、ＵＩＭ１３は、コマンドの実行処理を行うべく、コマンドプログラムコードの実行（ステップＳ１４）へ処理を移行する。
【０１１８】
そして、ＵＩＭ１３は、コマンドプログラムコードの実行処理を行う。
【０１１９】
図７は、コマンドプログラムコードの実行処理におけるＵＩＭ１３の動作を示すフローチャートである。
【０１２０】
図７に示すように、ＵＩＭ１３は、例えばＲＯＭ等のメモリを参照して、コマンド情報（ＡＰＤＵ）に含まれるコマンドに対応するプログラムコード（コマンドが示す具体的な処理内容）が存在するか否かを判定する（ステップＳ２１）。
【０１２１】
プログラムコードが存在したと判定した場合には（ステップＳ２１：ＹＥＳ）、ＵＩＭ１３は、メモリからプログラムコードを読出す（ステップＳ２２）。一方、プログラムコードが存在しないと判定した場合には（ステップＳ２１：ＮＯ）、ＵＩＭ１３は、アクセス制限関連情報の消去（例えば、アクセス制限用テーブルに記憶された情報を消去等）等の初期化を行い（ステップＳ３３）、コマンドプログラムコードの実行を終了し、コマンドに対するレスポンスを送信する。
【０１２２】
次に、ＵＩＭ１３は、読出したプログラムコード（命令）が、例えば、ＵＩＭ１３の揮発性メモリ等の所定の領域に対するアクセス命令（例えば、ＵＩＭ１３の揮発性メモリ等の所定の領域を作業領域として利用するため等の目的）であるか否かを判定する（ステップＳ２３）。以下、不揮発性メモリ１３の所定の領域に対するアクセス命令を、単に「領域アクセス命令」と称する。
【０１２３】
領域アクセス命令でなかった場合には（ステップＳ２３：ＮＯ）、ＵＩＭ１３は、読み出した命令を処理した後にＰＣ（Program Counter）を更新して（ステップＳ２４）、ステップＳ２１の処理へ移行する。
【０１２４】
一方、領域アクセス命令であった場合には（ステップＳ２３：ＹＥＳ）、ＵＩＭ１３は、アクセス制限を開始するか否かを判定すべく、ステップＳ２５〜３０の判定を行う。
【０１２５】
具体的には、まず、ＵＩＭ１３は、アクセス制限実施フラグがＯＮかＯＦＦか（上記イ）に該当するか否か）を判定する（ステップＳ２５）。
【０１２６】
アクセス制限実施フラグがＯＦＦと判定された場合には（ステップＳ２５：ＮＯ）、領域アクセス命令を実行した後にＰＣ（Program Counter）を更新して（ステップＳ２６）、ステップＳ２１の処理へ移行する。
【０１２７】
一方、アクセス制限実施フラグがＯＮと判定された場合には（ステップＳ２５：ＹＥＳ）、ＵＩＭ１３は、領域アクセス命令によってアクセスするＵＩＭ１３の揮発性メモリ等の所定領域が、トランザクション識別子と対応付けて記憶された領域であるか否か（上記ロ）に該当するか否か）を判定する（ステップＳ２７）。
【０１２８】
そして、領域アクセス命令によってアクセスするＵＩＭ１３の揮発性メモリ等の所定領域が、トランザクション識別子と対応付けて記憶された領域でないと判定された場合には（ステップＳ２７：ＮＯ）、領域アクセス命令を実行した後にＰＣ（Program Counter）を更新して（ステップＳ２６）、ステップＳ２１の処理へ移行する。
【０１２９】
一方、領域アクセス命令によってアクセスするＵＩＭ１３の揮発性メモリ等の所定領域が、トランザクション識別子と対応付けて記憶された領域であると判定された場合には（ステップＳ２７：ＹＥＳ）、領域アクセス命令に基づいてアクセスを試みたアプリと、現在実行中のトランザクション識別子が一致するか（上記ハ）に該当するか）を判定する（ステップＳ２８）。
【０１３０】
そして、領域アクセス命令に基づいてアクセスを試みたアプリと、現在実行中のトランザクション識別子が一致しない場合には（ステップＳ２８：ＮＯ）、アクセス制限を開始する（ステップＳ３１）。そして、ＵＩＭ１３は、アクセス制限実施フラグがＯＮであり、終了条件に該当するか否かを判定する（ステップＳ３２）。
【０１３１】
そして、ＵＩＭ１３は、アクセス制限実施フラグがＯＮであり、終了条件に該当した場合には（ステップＳ３２：ＹＥＳ）、アクセス制限関連情報を消去し、初期化（例えば、アクセス制限テーブルに記憶される情報をリセット等）を行う（ステップＳ３３）。
【０１３２】
そして、ＵＩＭ１３は、コマンドプログラムコードの実行を終了し、コマンドに対するレスポンスを送信する（ステップＳ３）。
【０１３３】
一方、領域アクセス命令に基づいてアクセスを試みたアプリと、現在実行中のトランザクション識別子が一致した場合には（ステップＳ２８：ＹＥＳ）、アクセス制御用テーブルに記憶されたインターフェースと一致するか（上記二）に該当するか）否かを判定する（ステップＳ２９）。
【０１３４】
ここでは、ＵＩＭ１３は、上述したように、アクセス制限用テーブルに記憶されたインターフェース以外のインターフェースからコマンドが受信されたか否かを判定する。
【０１３５】
そして、アクセス制御用テーブルに記憶されたインターフェースと一致した場合には、（ステップＳ２９：ＹＥＳ）、領域アクセス命令を実行した後にＰＣ（Program Counter）を更新して（ステップＳ２６）、ステップＳ２１の処理へ移行する。
【０１３６】
一方、アクセス制御用テーブルに記憶されたインターフェースと一致しないと判定された場合には、（ステップＳ２９：ＮＯ）、ＵＩＭ１３は、認証処理が完了しているか否か（上記二）に該当するか否か）を判定する（ステップＳ３０）。
【０１３７】
認証処理が完了していると判定された場合には（ステップＳ３０：ＹＥＳ）、領域アクセス命令を実行した後にＰＣ（Program Counter）を更新して（ステップＳ２６）、ステップＳ２１の処理へ移行する。
【０１３８】
一方、認証処理が完了していないと判定された場合には（ステップＳ３０：ＮＯ）、アクセス制限を開始する（ステップＳ３１）。そして、ＵＩＭ１３は、アクセス制限実施フラグがＯＮであり、終了条件に該当するか否かを判定する（ステップＳ３２）。
【０１３９】
そして、ＵＩＭ１３は、アクセス制限実施フラグがＯＮであり、終了条件に該当した場合には（ステップＳ３２：ＹＥＳ）、アクセス制限関連情報を消去し、初期化（例えば、アクセス制限テーブルに記憶される情報をリセット等）を行う（ステップＳ３３）。
【０１４０】
そして、ＵＩＭ１３は、コマンドプログラムコードの実行を終了し、コマンドに対するレスポンスを送信する（ステップＳ３）。
【０１４１】
なお、以上説明した実施形態は特許請求の範囲に係る発明を限定するものではない。そして、上記実施形態の中で説明されている構成の組み合わせ全てが発明の課題解決に必須の手段であるとは限らない。
【０１４２】
以上説明したように、本実施形態によれば、ＵＩＭ１３は、開始条件を検出すると、不正な攻撃と判定されるコマンドが入力された場合には、上記管理テーブルを参照して、上記検出した開始条件に示されるトランザクションと対応付けて記憶された揮発性メモリ等の所定領域のアクセスを制限するアクセス制限を開始し、終了条件を検出した場合には、上記アクセス制限を終了するように構成したため、複数のインターフェースを有するＩＣチップにおいて、インターフェースを介した外部からの不正なアクセスによる機密情報の漏洩をＩＣチップの記憶領域の設定を変更することなく効率よく防止することができる。
【０１４３】
なお、上記実施形態においては、本願を携帯端末１に搭載されたＵＩＭに対して適用した場合を例に説明したが、インターフェースを介して複数のプロトコル（例えば、ＵＳＢ等）によって他の携帯端末と通信を行うことが可能なその他の携帯端末に対しても適用することができる。
【符号の説明】
【０１４４】
１      携帯端末
２      非接触リーダ
３      基地局
１１    コントローラ
１２    ＣＬＦ
１３    ＵＩＭ
【図１】
2012141754.tif 000003
【図２】
2012141754.tif 000004
【図３】
2012141754.tif 000005
【図４】
2012141754.tif 000006
【図５】
2012141754.tif 000007
【図６】
2012141754.tif 000008
【図７】
2012141754.tif 000009
【図８】
2012141754.tif 000010