(57)【要約】【課題】耐タンパー性のある処理モジュール（ＩＣカードチップ等）がそれとは別体となるメモリ部の情報について処理できるようにした情報カードを提供するものである。【解決手段】メモリ部（３０）と、情報処理機能を有する耐タンパー処理モジュール（２０）と、外部機器（２００）から命令を受けたときに前記メモリ部に対するアクセスの制御を行なう制御部（１０）とを備え、前記制御部（１０）は、前記外部機器（２００）から前記耐タンパー処理モジュール（２０）に宛てた命令を前記耐タンパー処理モジュールに伝えるコマンド伝達手段（▲３▼）と、前記コマンドに基づいた前記耐タンパー処理モジュール（２０）の前記メモリ部（３０）へのアクセスを制御する内部アクセス制御手段（▲５▼〜▲７▼）とを有する構成となる。【選択図】  図４
2004334471.tif 000002
【特許請求の範囲】
【請求項１】
メモリ部と、情報処理機能を有する耐タンパー処理モジュールと、外部機器から命令を受けたとき前記メモリ部に対するアクセスの制御を行なう制御部とを備え、
前記制御部は、前記外部機器から前記耐タンパー処理モジュールに宛てた命令を前記耐タンパー処理モジュールに伝えるコマンド伝達手段と、
前記コマンド伝達手段にて伝えられた命令に基づいた前記耐タンパー処理モジュールの前記メモリ部へのアクセスを制御する内部アクセス制御手段とを有することを特徴とする情報カード。
【請求項２】
前記制御部は、前記メモリ部の所定領域を前記耐タンパー処理モジュールが利用可能な領域として管理するメモリ管理手段を有し、
前記内部アクセス制御手段は、前記メモリ管理手段により管理される所定領域に対する前記耐タンパー処理モジュールによるアクセスを制御することを特徴とする請求項１記載の情報カード。
【請求項３】
前記メモリ管理手段は、前記メモリ部の前記所定領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として管理することを特徴とする請求項２記載の情報カード。
【請求項４】
メモリ部と、情報処理機能を有する耐タンパー処理モジュールと、外部機器から命令を受けたときに前記メモリ部に対するアクセスの制御を行なう制御部とを備え、
前記制御部は、前記外部機器から前記耐タンパー処理モジュールに宛てた命令を前記耐タンパー処理モジュールに伝えるコマンド伝達手段と、
前記コマンド伝達手段にて伝えられた前記命令に基づいた前記耐タンパー処理モジュールによる前記メモリ部に対するアクセスを制御する内部アクセス制御手段と、
前記外部機器からの命令に基づいて前記外部機器による前記メモリ部に対するアクセスを制御する外部アクセス制御手段とを有することを特徴とする情報カード。
【請求項５】
前記制御部は、前記メモリ部の第一の領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として、前記メモリ部の第二の領域を外部機器が専用的に利用可能な領域としてそれぞれ管理するメモリ管理手段を有し、
前記内部アクセス制御手段は、前記メモリ管理手段にて管理される前記第一の領域に対する前記耐タンパー処理モジュールによるアクセスを制御し、前記外部アクセス制御手段は、前記メモリ管理手段にて管理される前記第二の領域に対する前記外部機器によるアクセスを制御することを特徴とする請求項４記載の情報カード。
【請求項６】
前記制御部は、前記メモリ部の第一の領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として、前記メモリ部の第二の領域を外部機器が専用的に利用可能な領域として、前記メモリ部の第三の領域を前記耐タンパー処理モジュール及び前記外部機器の双方が利用可能な領域としてそれぞれ管理するメモリ管理手段を有し、
前記内部アクセス制御手段は、前記メモリ管理手段にて管理される前記第一の領域及び第三の領域のいずれかに対する前記耐タンパー処理モジュールによるアクセスを制御し、前記外部アクセス制御手段は、前記メモリ管理手段にて管理される前記第二の領域及び第三の領域のいずれかに対する前記外部機器によるアクセスを制御することを特徴とする請求項４記載の情報カード。
【請求項７】
前記耐タンパー処理モジュールでの処理に必要なデータが前記メモリ部の前記第一の領域に格納されていることを特徴とする請求項５または６記載の情報カード。
【請求項８】
前記耐タンパー処理モジュールが実行すべき処理プログラムが前記メモリ部の前記第一の領域に格納されていることを特徴とする請求項５乃至７のいずれかに記載の情報カード。
【請求項９】
前記耐タンパー処理モジュールは、暗号鍵と、前記メモリ部の前記第一の領域に格納すべきデータまたは処理プログラムを前記暗号鍵を用いて暗号化する手段を有し、
前記データまたは処理プログラムが暗号化されて前記メモリ部の前記第一のメモリ部に格納されていることを特徴とする請求項７または８記載の情報カード。
【請求項１０】
前記コマンド伝達手段は、前記外部機器からの命令から前記耐タンパー処理モジュール宛の命令を抽出するコマンド抽出手段を有し、前記コマンド抽出手段にて抽出された命令を前記耐タンパー処理モジュールに伝えるようにしたことを特徴とする請求項４乃至９のいずれかに記載の情報カード。
【請求項１１】
前記コマンド抽出手段は、前記外部機器からの命令に先立って所定の制御命令が前記外部機器から送られてきたときに、前記外部機器からの命令から前記耐タンパー処理モジュール宛の命令を抽出することを特徴とする請求項１０記載の情報カード。
【請求項１２】
前記耐タンパー処理モジュールは、ＩＣカードチップであることを特徴とする請求項１乃至１１のいずれかに記載の情報カード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報カードに係り、詳しくは、外部機器からの制御のもとに情報の書込み及び読み出しがなされる情報カードに関する。
【０００２】
【従来の技術】
従来、メモリカード、ＩＣカード等の情報カードが種々提案されている。ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）カード、コンパクトフラッシュ（登録商標）カード等のメモリカードは、フラッシュメモリ等の大容量メモリを搭載し、携帯情報端末（ＰＤＡ：Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ、パソコン等のホスト機器の外部メモリとして用いられている。このようなメモリカードでは、ホスト機器からのアクセスに応じて画像、音楽、テキスト等の情報の書込み及び読み出しがなされる。また、ＩＣカードは、ＣＰＵ及びメモリを含むＩＣチップを埋め込んだカードであり、演算機能を備えたセキュリティの高い情報カードとして利用されている。このＩＣカードでは、外部機器からの要求に基づいたＣＰＵの動作により、所定の演算処理がなされ、その演算処理により得られた情報のメモリへの保存やその保存された情報の外部機器への送信等がなされる。
【０００３】
更に、耐タンパー性のあるＩＣカードチップとＥＥＰＲＯＭ等のメモリ素子とを搭載した情報カードが提案されている（例えば、特許文献１）。この情報カードは、ＩＣカードチップ内のメモリとメモリ素子とにそれぞれ別々の情報を格納し、外部機器にていずれの情報の利用をも可能としている。
【０００４】
【特許文献１】
特開平９−２３７２９８号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、ＩＣカードチップとメモリ素子とを別々に搭載した前記従来の情報カードでは、ＩＣカードチップのＣＰＵがメモリ素子の情報を処理の対象にすることができない。このため、前記メモリ素子の情報について耐タンパー性のあるＩＣカードチップ（ＣＰＵ）にて処理することができない。
【０００６】
本発明は、このような欠点を解決するためになされたもので、耐タンパー性のある処理モジュール（ＩＣカードチップ等）がそれとは別体となるメモリ部の情報について処理できるようにした情報カードを提供するものである。
【０００７】
【課題を解決するための手段】
本発明に係る情報カードは、メモリ部と、情報処理機能を有する耐タンパー処理モジュールと、外部機器から命令を受けたときに前記メモリ部に対するアクセスの制御を行なう制御部とを備え、前記制御部は、前記外部機器から前記耐タンパー処理モジュールに宛てた命令を前記耐タンパー処理モジュールに伝えるコマンド伝達手段と、前記コマンド伝達手段にて伝えられた命令に基づいた前記耐タンパー処理モジュールの前記メモリ部へのアクセスを制御する内部アクセス制御手段とを有する構成となる。
【０００８】
このような構成により、外部機器からの命令に基づいた耐タンパー処理モジュールによるメモリ部へのアクセスが可能となる。
【０００９】
また、本発明に係る情報カードは、前記制御部が、前記メモリ部の所定領域を前記耐タンパー処理モジュールが利用可能な領域として管理するメモリ管理手段を有し、前記内部アクセス制御手段は、前記メモリ管理手段により管理される所定領域に対する前記耐タンパー処理モジュールによるアクセスを制御する構成とすることができる。
【００１０】
このような構成により、メモリ部における耐タンパー処理モジュールによりアクセス可能な領域が所定領域に限定されることとなる。
【００１１】
更に、本発明に係る情報カードは、前記メモリ管理手段が、前記メモリ部の前記所定領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として管理する構成とすることができる。
【００１２】
このような構成により、メモリ部の所定領域を耐タンパー処理モジュールのみによりアクセス可能とすることができることとなる。
【００１３】
本発明に係る情報カードは、メモリ部と、情報処理機能を有する耐タンパー処理モジュールと、外部機器から命令を受けたときに前記メモリ部に対するアクセスの制御を行なう制御部とを備え、前記制御部が、前記外部機器から前記耐タンパー処理モジュールに宛てた命令を前記耐タンパー処理モジュールに伝えるコマンド伝達手段と、前記コマンド伝達手段にて伝えられた前記命令に基づいた前記耐タンパー処理モジュールによる前記メモリ部に対するアクセスを制御する内部アクセス制御手段と、前記外部機器からの命令に基づいて前記外部機器による前記メモリ部に対するアクセスを制御する外部アクセス制御手段とを有する構成となる。
【００１４】
このような構成により、外部機器からの命令に基づいた耐タンパー処理モジュールによるメモリ部へのアクセス及び外部機器によるメモリ部へのアクセスの双方が可能となる。
【００１５】
また、本発明に係る情報カードは、前記制御部が、前記メモリ部の第一の領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として、前記メモリ部の第二の領域を外部機器が専用的に利用可能な領域としてそれぞれ管理するメモリ管理手段を有し、前記内部アクセス制御手段が、前記メモリ管理手段にて管理される前記第一の領域に対する前記耐タンパー処理モジュールによるアクセスを制御し、前記外部アクセス制御手段が、前記メモリ管理手段にて管理される前記第二の領域に対する前記外部機器によるアクセスを制御する構成とすることができる。
【００１６】
このような構成により、メモリ部の第一の領域に対して耐タンパー処理モジュールのみがアクセス可能となるとともに、メモリ部の第二の領域に対して外部機器のみがアクセス可能となる。その結果、情報を秘匿性の要否に基づいて区別してメモリ部に保存することが可能となる。
【００１７】
更に、本発明に係る情報カードは、前記制御部が、前記メモリ部の第一の領域を前記耐タンパー処理モジュールが専用的に利用可能な領域として、前記メモリ部の第二の領域を外部機器が専用的に利用可能な領域として、前記メモリ部の第三の領域を前記耐タンパー処理モジュール及び前記外部機器の双方が利用可能な領域としてそれぞれ管理するメモリ管理手段を有し、前記内部アクセス制御手段が、前記メモリ管理手段にて管理される前記第一の領域及び第三の領域のいずれかに対する前記耐タンパー処理モジュールによるアクセスを制御し、前記外部アクセス制御手段が、前記メモリ管理手段にて管理される前記第二の領域及び第三の領域のいずれかに対する前記外部機器によるアクセスを制御する構成とすることができる。
【００１８】
このような構成により、メモリ部の第一の領域に対して耐タンパー処理モジュールのみがアクセス可能となるとともに、メモリ部の第二の領域に対して外部機器のみがアクセス可能となり、更に、メモリ部の第三の領域に対して耐タンパー処理モジュール及び外部機器の双方がアクセス可能となる。その結果、情報を秘匿性の要否に基づいて区別してメモリ部に保存することが可能となるとともに、外部機器と耐タンパー処理モジュールの双方にて処理可能な情報をメモリ部に保存することが可能となる。
【００１９】
本発明に係る情報カードは、前記耐タンパー処理モジュールでの処理に必要なデータが前記メモリ部の前記第一の領域に格納されている構成とすることができる。
【００２０】
このような構成により、耐タンパー処理モジュールでの処理に必要なより多くのデータを情報カード内に保存することができることとなる。その結果、耐タンパー処理モジュールの多機能化を図ることが可能となる。
【００２１】
また、本発明に係る情報カードは、前記耐タンパー処理モジュールが実行すべき処理プログラムが前記メモリ部の前記第一の領域に格納されている構成とすることができる。
【００２２】
このような構成により、メモリ部の容量に応じて耐タンパー処理モジュールが実行すべきより多くの処理プログラムを情報カード内に保存することができることとなる。その結果、耐タンパー処理モジュールの多機能化を図ることができる。
【００２３】
更に、本発明に係る情報カードは、前記耐タンパー処理モジュールは、暗号鍵と、前記メモリ部の前記第一の領域に格納すべきデータまたは処理プログラムを前記暗号鍵を用いて暗号化する手段を有し、前記データまたは処理プログラムが暗号化されて前記メモリ部の前記第一のメモリ部に格納されている構成とすることができる。
【００２４】
このような構成により、メモリ部が耐タンパー性を有しないものであっても、耐タンパー処理モジュールで利用可能なデータまたは処理プログラムをより高い安全性を確保した状態でメモリ部に保存することができる。
【００２５】
本発明に係る情報カードは、前記コマンド伝達手段が、前記外部機器からの命令から前記耐タンパー処理モジュール宛の命令を抽出するコマンド抽出手段を有し、前記コマンド抽出手段にて抽出された命令を前記耐タンパー処理モジュールに伝える構成とすることができる。
【００２６】
このような構成により、耐タンパー処理モジュールが独自の命令体系に従って処理を行うものであっても、耐タンパー処理モジュールが解することのできる命令を外部機器から容易に当該耐タンパー処理モジュールに与えることができることとなる。
【００２７】
また、本発明に係る情報カードは、前記コマンド抽出手段が、前記外部機器からの命令に先立って所定の制御命令が前記外部機器から送られてきたときに、前記外部機器からの命令から前記耐タンパー処理モジュール宛の命令を抽出する構成とすることができる。
【００２８】
このような構成により、所定の制御命令が前記外部機器から送られてきたことを契機として、前記外部機器からその後に送られてくる命令から耐タンパー処理モジュール宛の命令の抽出がなされるので、外部機器からの命令から耐タンパー処理モジュール宛の命令を抽出するための処理を確実に行うことができることとなる。
【００２９】
前記耐タンパー処理モジュールは、外部からの攻撃（ハード的またはソフト的）に対して内部の情報を保護する何らかの仕組み（耐タンパー性）を有する処理モジュールであれば特に限定されない。そして、本発明に係る情報カードは、前記耐タンパー処理モジュールが、ＩＣカードチップである構成とすることができる。
【００３０】
【実施の形態】
以下、本発明の実施の形態について、図面を用いて説明する。
【００３１】
本発明の実施の一形態にかかる情報カードは、図１に示すように構成される。
【００３２】
図１において、情報カード１００は、携帯情報端末（ＰＤＡ）、携帯電話機、デジタルカメラ、パソコン等のホスト機器２００（外部機器）に接続される。情報カード１００のホスト機器２００に対するインタフェースは、例えば、公知のメモリーカード（例えば、ＳＤカード）と同等のものとすることができる。情報カード１００は、コントローラ１０、耐タンパー処理モジュール（Ｔａｍｐｅｒ  Ｒｅｓｉｓｔａｎｔ  Ｍｏｄｕｌｅ、以下、ＴＲＭという）２０及びメモリユニット３０を備えている。情報カード１００がホスト機器２００に接続された状態で、前記インタフェースを介してホスト機器２００とコントローラ１０との間の情報交換が可能となる。
【００３３】
ＴＲＭ２０は、例えば、情報処理機能を有するＣＰＵと内部メモリ（例えば、Ｅ２ＲＯＭ）とを備えたＩＣカードチップにて構成され、プロービングによるデータ漏洩を困難にする仕組み、破壊されると内部の情報を消去する仕組み、内部の情報を暗号化する仕組みなど、外部からのハード的またはソフト的な攻撃に対して内部の情報を保護する仕組み（耐タンパー性）を備えている。メモリユニット３０は大容量のフラッシュメモリで構成されている。コントローラ１０は、ホスト機器２００とＴＲＭ２０との間の情報交換に係る制御及びメモリユニット３０に対するアクセスの制御を行なう。
【００３４】
コントローラ１０は、メモリ管理テーブル１１を有し、メモリ管理テーブル１１によりメモリユニット３０の領域管理を行なう。情報カード１００の初期化に際して、コントローラ１０は、例えば、メモリユニット３０の領域Ｅ１をＴＲＭ２０が専用的に利用可能な領域（セキュリティ保護領域）としてメモリ管理テーブル１１上に定義する。また、メモリユニット３０の他の領域について、コントローラ１０は、領域Ｅ２をホスト機器２００が専用的に利用可能な領域（外部機器用一般メモリ領域）として、更に、領域Ｅ３をＴＲＭ２０及びホスト機器３０の双方が利用可能な領域（外部機器／ＴＲＭ共通領域）としてそれぞれメモリ管理テーブル１１上に定義する。コントローラ１０は、ホスト機器２００のメモリユニット３０に対するアクセスについてのインタフェース（公知のメモリカード（例えば、ＳＤカード）におけるインタフェースと同等のインタフェース）とＴＲＭ２０のメモリユニット３０に対するアクセスについてのインタフェースとを備え、メモリ管理テーブル１１を用いてホスト機器２００及びＴＲＭ２０によるメモリユニット３０に対するアクセスを制御する。
【００３５】
以下、情報カード１００の動作について説明する。
【００３６】
ホスト機器２００は、例えば、公知のメモリカード（例えば、ＳＤカード）に対するコマンド体系に従ったコマンドを情報カード１００に送る。コントローラ１０は、ホスト機器２００からメモリユニット３０に対するアクセス要求コマンド（リード・ライトコマンド）を入力すると、メモリ管理テーブル１１を参照して、アクセス要求に係る領域がホスト機器２００にて利用可能な領域であるか否かを判定する。コントローラ１０は、そのアクセス要求に係る領域がホスト機器２００にて利用可能な外部機器用一般メモリ領域Ｅ２及び外部機器／ＴＲＭ共通領域Ｅ３のいずれかであれば、そのアクセス要求に係る領域に対するアクセス制御（リード・ライト制御）を行なう。これにより、ホスト機器２００は、メモリユニット３０の外部機器用一般メモリ領域Ｅ２及び外部機器／ＴＲＭ共通領域Ｅ３のいずれかの領域に対する情報の読み出し及び書込みができる（図２に示す○印の付された実線矢印参照）。
【００３７】
一方、前記アクセス要求に係る領域がホスト機器２００にて利用できないセキュリティ保護領域Ｅ１であるとの判定がなされると、コントローラ１０は、ホスト機器２００からのアクセス要求を拒否し、エラー応答をホスト機器２００に送る。これにより、ホスト機器２００は、メモリユニット３０のセキュリティ保護領域Ｅ１に対する情報の読み出し及び書込みを行うことができない（図２に示す×印の付された実線矢印参照）。即ち、セキュリティ保護領域Ｅ１に格納された情報の秘匿性を確保することができる。
【００３８】
ホスト機器２００は、ＴＲＭ２０に対して処理要求に係るコマンドを送る場合、ＴＲＭ２０に適用されるコマンド体系のコマンドをカプセル化した形式のコマンドを情報カード１００に送る。具体的には、公知のメモリカード（例えば、ＳＤカード）に対するコマンドにＴＲＭ２０（ＩＣカードチップ）に適用されるＩＳＯ７８１６で規定されたＩＣカードコマンド（以下、ＡＰＤＵ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ）コマンドという）をカプセル化した拡張形式のコマンドがホスト機器２００から情報カード１００に送られる。
【００３９】
コントローラ１０は、処理要求に係るＡＰＤＵコマンドがカプセル化された前記拡張形式のコマンドをホスト機器２００から入力すると、その拡張形式のコマンドから処理要求に係るＡＰＤＵコマンドを抽出し、その抽出したＡＰＤＵコマンドをＴＲＭ２０に送る。ＴＲＭ２０は、コントローラ１０からの処理要求に係るＡＰＤＵコマンドに基づいて内部メモリ内の処理プログラムに従ってなされる処理においてメモリユニット３０に対するアクセスが必要であると、所定の形式のアクセス要求コマンドをコントローラ１０に送る。コントローラ１０は、メモリ管理テーブル１１を参照して、アクセス要求に係る領域がＴＲＭ２０にて利用可能な領域であるか否かを判定する。コントローラ１０は、そのアクセスに係る領域がＴＲＭ２０にて利用可能なセキュリティ保護領域Ｅ１及び外部機器／ＴＲＭ共通領域Ｅ３のいずれかであれば、アクセス要求に係る領域に対するアクセス制御（リード・ライト制御）を行なう。これにより、ＴＲＭ２０は、メモリユニット３０のセキュリティ保護領域Ｅ１及び外部機器／ＴＲＭ共通領域Ｅ３のいずれかに対する情報の読み出し及び書込みができる（図２に示す○印の付された破線矢印参照）。
【００４０】
一方、前記アクセス要求に係る領域がＴＲＭ２０にて利用できない外部機器用一般メモリ領域Ｅ２であるとの判定がなされると、コントローラ１０は、ＴＲＭ２０からのアクセス要求を拒否し、エラー応答をＴＲＭ２０に送る。これにより、ＴＲＭ２０は、メモリユニット３０の外部機器用一般メモリ領域Ｅ２に対する情報の読み出し及び書込みを行うことができない（図２に示す×印の付された破線矢印参照）。
【００４１】
図３及び図４を参照して、更に、具体的な処理手順について説明する。この例では、メモリユニット３０に対する参照要求（データ読み出し）に係る処理手順が示される。
【００４２】
図３に示す処理手順（１）において、ホスト機器２００からメモリユニット２０の外部機器用一般メモリ領域Ｅ２の参照要求のためのコマンドがコントローラ１００に送られると（▲１▼）、コントローラ１０は、メモリ管理テーブル１１を参照して、その参照要求に係る外部機器用一般メモリ領域Ｅ２がホスト機器２００にて利用可能な領域であると判定する。その判定結果に応じて、コントローラ１０は、メモリユニット３０の外部機器用一般メモリ領域Ｅ２を参照して（▲２▼）、外部機器用一般メモリ領域Ｅ２からデータ（参照結果データ）を読み出す（▲３▼）。そして、コントローラ１０は、その読み出したデータをホスト機器２００に送る（▲４▼）。これにより、ホスト機器２００は、参照要求に係るデータを情報カード１００から得ることができる。
【００４３】
また、図３に示す処理手順（２）において、ホスト機器２００からメモリユニット２０のセキュリティ保護領域Ｅ１の参照要求に係るコマンドがコントローラ１０に送られると（▲１▼）、コントローラ１０は、メモリ管理テーブル１１を参照して、その参照要求に係るセキュリティ保護領域Ｅ１がホスト機器２００にて利用可能でない領域であると判定する。この判定結果に応じて、コントローラ１０は、前記参照要求を拒否し、エラー応答をホスト機器２００に送る（▲２▼）。即ち、メモリユニット３０のセキュリティ保護領域Ｅ１内の情報は、外部の機器（ホスト機器２００）にて参照することができないこととなる。
【００４４】
更に、図４に示す処理手順（３）において、ホスト機器２００は、参照要求に係るＡＰＤＵコマンドをカプセル化した拡張形式のコマンド（カプセル化ＳＤコマンド）を送る前に、その拡張形式のコマンドと区別される制御コマンドとなるスイッチコマンドをコントローラ１０に送る（▲１▼）。その後、ホスト機器２００は、前記拡張形式のコマンドをコントローラ１０に送る（▲２▼）。コントローラ１０は、スイッチコマンドを受信すると、次に受信される拡張形式のコマンドをメモリユニット３０に対する処理要求のコマンドであるとは認識せずに、その拡張形式のコマンドからＡＰＤＵコマンドを抽出する。そして、コントローラ１０はその抽出された参照要求に係るＡＰＤＵコマンドをＴＲＭ２０に送る（▲３▼）。
【００４５】
ＴＲＭ２０は、その参照要求に係るＡＰＤＵコマンドに基づいてコントローラ１０に対してセキュリティ保護領域Ｅ１の参照要求のためのコマンドを送る（▲４▼）。すると、コントローラ１０は、メモリ管理テーブル１１を参照して、その参照要求に係るセキュリティ保護領域Ｅ１がＴＲＭ２０にて利用可能な領域であると判定する。その判定結果に応じて、コントローラ１０は、メモリユニット３０のセキュリティ保護領域Ｅ１を参照して（▲５▼）、セキュリティ保護領域Ｅ１からデータ（参照結果データ）を読み出す（▲６▼）。そして、コントローラ１０は、その読み出したデータをＴＲＭ２０に送る（▲７▼）。このようにして参照要求に係るデータ（参照結果データ）を取得したＴＲＭ２０は、そのデータに対する必要な処理を行った後に、その参照結果を表すＡＰＤＵコマンドをコントローラ１０に送る（▲８▼）。コントローラ１０は、このＡＰＤＵコマンド応答を公知のメモリカード（例えば、ＳＤカード）に対するコマンドにカプセル化して拡張形式のコマンドを作成し、その拡張形式のコマンドを参照要求の応答としてホスト機器２００に送る。
【００４６】
このような処理により、ホスト機器２００にて処理することのできないメモリユニット３０のセキュリティ保護領域Ｅ１内の情報をＴＲＭ２０にて処理することができるようになる。
【００４７】
上述したような情報カード１００によれば、ホスト機器２００及びＴＲＭ２０（ＩＣカードチップ）の双方にてメモリユニット３０に対するアクセスが可能になることから、通常のメモリカードとしての利用、及び通常のＩＣカードとしての利用が可能となる。また、ＴＲＭ２０のアクセス可能なメモリユニット３０の領域を自由に設定できるので、より多くの情報についてＴＲＭ２０による秘匿性の高い処理を行うことができるようになる。
【００４８】
上述したような情報カード１００では、メモリユニット３０のセキュリティ保護領域Ｅ１には、ＴＲＭ２０の処理に必要なデータ、例えば、暗号鍵、各種サービスで用いられる個人認証データ、暗証番号、プリペイド金額データ、電子マネー情報、各種カード情報、個人情報等の高い秘匿性を要するデータを格納することが好ましい。これにより、通常のＩＣカードチップ内のメモリより多くの情報を高い秘匿性をもって保存することができるので、ＴＲＭ２０（ＩＣカードチップ）でより多くの処理（機能）を実現することができるようになる。
【００４９】
また、セキュリティ保護領域Ｅ１には、ＴＲＭ２０が実行すべき処理プログラム（ＪＡＶＡ（登録商標）アプレット等）を格納することができる。これにより、通常のＩＣカードチップ内のメモリより多くのプログラムを高い秘匿性をもって保存することができるので、ＴＲＭ２０（ＩＣカードチップ）でより多くの処理（機能）を実現することができるようになる。
【００５０】
なお、ＴＲＭ２０は、外部からの攻撃（ハード的またはソフト的）に対して内部の情報を保護する仕組みを備えているが、メモリユニット３０は一般的にはそのような耐タンパー性を備えていない。このため、メモリユニット３０のセキュリティ保護領域Ｅ１に格納されるデータや処理プログラムは、外部機器（ホスト機器２００）からのアクセスからは保護されているが、情報カード１００を分解してプロービングを行なうことにより外部に漏洩する危険性からは免れ得ない。このような危険性を最小限にするために、セキュリティ保護領域Ｅ１に格納すべき情報（データ、処理プログラム）を更に暗号化するができる。この暗号化の処理は、ＴＲＭ２０が内部メモリ内に格納された暗号鍵を用いて行うことができる。メモリユニット３０のセキュリティ保護領域Ｅ１に格納されるデータや処理プログラムを所望の安全性レベルに応じた強度にて暗号化することによりそのデータや処理プログラムを更に安全に情報カード１００内に保存することができる。
【００５１】
また、メモリユニット３０のセキュリティ保護領域Ｅ１についての耐タンパー性を向上させるために、コントローラ１０内におけるＴＲＭ２０とメモリユニット３０との間のインタフェースにアドレススクランブルなどのデータ保護のための措置を施すことが好ましい。
【００５２】
なお、前述した例では、メモリユニット３０は、セキュリティ保護領域Ｅ１、外部機器用一般メモリ領域Ｅ２、外部機器／ＴＲＭ共通領域Ｅ３の３つの領域に分けられていたが、メモリユニット３０全体がセキュリティ保護領域Ｅ１あるいは、外部機器／ＴＲＭ共通領域Ｅ３であってもよい。また、メモリユニット３０は、セキュリティ保護領域Ｅ１と外部機器用一般メモリ領域Ｅ２の２つの領域に分けられたものでも、更に、外部機器／ＴＲＭ共通領域Ｅ３と外部機器用一般メモリ領域Ｅ２の２つの領域に分けられたものであってもよい。また更に、メモリユニット３０は、セキュリティ保護領域Ｅ１と外部機器／ＴＲＭ共通領域Ｅ３の２つに分けられたものであってもよい。コントローラは、前述したそれぞれの分け方に応じてメモリユニット３０の領域管理を行なう。
【００５３】
前記情報カード１００の構成において、コントローラ１０が制御部（請求項１、請求項４）に、ＴＲＭ２０が耐タンパー処理モジュール（請求項１、請求項４）に、メモリユニット３０がメモリ部（請求項１、請求項４）にそれぞれ相当し、コントローラ１０におけるホスト機器２００とＴＲＭ２０との間の情報交換に係る制御機能（図４に示す▲３▼参照）がコマンド伝達手段（請求項１、請求項４）に相当し、コントローラ１０におけるＴＲＭ２０のメモリユニット３０に対するアクセスについてのインタフェース（図２における丸印が付された破線矢印、図４に示す▲５▼〜▲７▼参照）が内部アクセス制御手段（請求項１、請求項４）に相当する。また、メモリ管理テーブル１１を用いたコントローラ１０のメモリユニット３０の領域管理機能がメモリ管理手段（請求項２、請求項５、請求項６）に相当する。また、コントローラ１０におけるホスト機器２００のメモリユニット３０に対するアクセスについてのインタフェース（図２における丸印が付された実線矢印、図３に示す▲２▼〜▲４▼参照）が外部アクセス制御手段（請求項４）に相当し、図４に示す手順▲２▼後にＳＤコマンドからＡＰＤＵコマンドを抽出するコントローラ１０の機能がコマンド抽出手段（請求項１０）に相当する。
【００５４】
【発明の効果】
以上、説明したように、本願発明によれば、外部機器からの命令に基づいた耐タンパー処理モジュールによるメモリ部へのアクセスが可能となるので、耐タンパー性のある処理モジュール（ＩＣカードチップ等）がそれとは別体となるメモリ部の情報について処理できるようにした情報カードを提供することができるようになる。
【図面の簡単な説明】
【図１】本発明の実施の一形態に係る情報カードの構成を示す図
【図２】図１に示す情報カードにおけるメモリユニットに対するアクセス制御の状態を示す図
【図３】図１に示す情報カードでの処理手順を示すシーケンス図（その１）
【図４】図１に示す情報カードでの処理手順を示すシーケンス図（その２）
【符号の説明】
１０  コントローラ
１１  メモリ管理テーブル
２０  耐タンパーモジュール（ＴＲＭ）
３０  メモリ部
１００  情報カード
２００  ホスト機器
【図１】
2004334471.tif 000003
【図２】
2004334471.tif 000004
【図３】
2004334471.tif 000005
【図４】
2004334471.tif 000006