説明

半導体メモリカード、プログラム

【課題】ECアプリがデータを書き込もうとする際、容量が不足することのない半導体メモリカードを提供する。
【解決手段】TRM内部のEEPROM(登録商標)3にあるECクライアントアプリの使用領域を拡張する。この拡張は、内部EEPROM(登録商標)3内にパーティションテーブルを配置しつつ、TRMフラッシュメモリ2にパーティションを生成してECアプリに割り当てるというものである。パーティションテーブルがTRM内にあるので、生成されたパーティションテーブルは、TRM内のCPUからしかアクセスできない。拡張領域に対するアクセスが、TRM内のCPUに限られるので、格納内容の守秘性が高まる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、格納内容のセキュリティを保証した半導体メモリカードに関し、その記憶容量を拡張する技術に関する。
【背景技術】
【0002】
半導体メモリカードの生産業は、放送・出版等のマスメディアから金融機関、国、自治体まで、様々な分野からの注目を浴びる近年の急成長産業である。
これらの分野から注目を集めているのは、格納内容の保護機能である。格納内容の保護機能をもった半導体メモリカードの代表格は、SDメモリカード、ICカードである。SDメモリカードは、接触型の半導体メモリカードであり、不揮発メモリと、ロジック回路と、コネクタとを備える、コネクタを介してホスト装置が接続した場合、SDメモリカードはチャレンジ・レスポンス型の相互認証を行い、互いの正当性を認識した上で、ホスト装置による不揮発メモリのアクセスを許可する。不正な機器によるアクセスを排斥することができ、また内蔵している不揮発メモリの規模は、64Mバイト〜1Gバイトという大規模なものなので、SDメモリカードは、著作権保護が必要なオーディオデータ、ビデオデータの格納に向いている。
【0003】
ICカードは、CPU、マスクROM、EEPROMを内蔵したICチップを板体に配してなる。板体には螺旋アンテナが埋設されており、ICカードがこの螺旋アンテナを介して、ホスト装置と非接触型のデータ入出力を行う。またこのICチップは耐タンパモジュールと呼ばれ、分解や解析等のリバース行為に耐性をもつ。
この耐性があるため、ICカードは金銭決済用途に向いており、多くのクレジット会社や金融機関がこのICカードの採用を検討している。その反面、耐タンパモジュールは、単位面積当たりの製造コストが高く、耐タンパモジュール内のEEPROMの規模は160Kバイト程度である。
【0004】
このようにSDメモリカード、ICカードには一長一短があり、どちらが優れているがは簡単には結論付けることはできない。
尚、SDメモリカードについての先行技術には、以下の特許文献1に開示されたものがある。
【特許文献1】特許3389186号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、クレジット会社のサーバ装置をホスト装置とした電子商取引(EC(Electronic Commerce))では、年間の取引明細をダウンロードして、ICカードに格納しておきたいことがある。年間の取引明細となると、データサイズが大きく、ICカードのメモリでは容量に不足が生じる。容量が不足するとはいえ、SDメモリカードのような耐タンパモジュールの無い半導体メモリカードに取引明細を格納しようというのは、クレジット会社にとって不安が残る。何故なら、かかる年間の取引明細は、金銭に至らないまでも、それに準ずる保護価値があるからである。
【0006】
半導体メモリカードを製造する生産業のメーカは、製造コストの高騰を承知で耐タンパモジュールを大規模化するか、或は、クレジット会社の要求を黙殺するかを選択せざるを得ない。現状では、半導体メモリカードのメーカは苦渋の決断を迫られているといえる。
本発明の目的は、金銭に準ずるデータであってサイズが膨大なものを、相応のセキュリティレベルで格納しておくことができる半導体メモリカードを提供することである。
【課題を解決するための手段】
【0007】
上記目的を達成するため本発明に係る半導体メモリカードは、耐タンパモジュールと、不揮発メモリとを備えていて、耐タンパモジュールは、内部メモリと、処理部とを含み、耐タンパモジュールの内部メモリには、耐タンパモジュール内に格納される一のプログラムにより利用される利用領域があり、前記処理部は、前記プログラムに不揮発メモリ上の領域に割り当て、当該割当領域についてのアクセス情報を耐タンパモジュールの内部メモリ上に生成することにより、利用領域と、割当領域とを合わせた領域全体を、前記プログラムの利用に供し、前記耐タンパモジュールの内部メモリには、第1の領域テーブルと、第2の領域テーブルとが格納されており、
第1の領域テーブルは、耐タンパモジュールにおける内部メモリ上の利用領域の所在及び大きさを示す領域テーブルであり、
第2の領域テーブルは、不揮発メモリ上の割当領域の所在及び大きさを示す領域テーブルであり、
前記アクセス情報とは、第2の領域テーブルであることを特徴としている。
【発明の効果】
【0008】
以上に説明したように、本発明に係る半導体メモリカードによれば、上述した構成を有しているので、プログラムの利用領域についてのアクセス情報を耐タンパモジュールに配置することにより、利用領域の全体構造がどうなっているかを秘匿することができる。
不揮発メモリのうち、何処から何処までが1つの利用領域であるか、どこからどこまでが別の利用領域であるかという領域のロケーション解読が困難であり、プログラムがどの領域をどのようにアクセスしているかが秘匿される。利用領域ロケーションの全体像の把握が困難であり、不正行為の糸口を与えない。
【0009】
ここで前記処理部は、前記割当領域についてのアクセス情報を生成する際、割当領域をアクセスするにあたって、プログラムが用いる暗号鍵を割り当てる割当部と、プログラムが前記不揮発メモリ上の割当領域にデータを書き込もうとする際、当該データを暗号化する暗号化部と、プログラムが前記不揮発メモリ上の割当領域からデータを読み出そうとする際、当該データを復号化する復号化部とを備えていてもよい。
【0010】
プログラムに固有の暗号鍵を割り当てた上で、領域の読み書きを行わせる。半導体メモリカードが複数プログラムによりアクセスされ、そのうち1つのプログラムが自身に割り当てられた暗号鍵を暴露したとしても、他のプログラムが半導体メモリカードに書き込んだデータは、その暗号鍵では復号化しえない。1つのプログラムにおける暗号鍵暴露の影響を、他のプログラムに波及させないので、プログラムが半導体メモリカードに書き込んだデータの守秘性を高めることができる。
【0011】
ここで前記処理部は、前記プログラムからセキュリティレベルを受け付ける受付部と、セキュリティレベルがとり得る複数の値と、それらの値に対応する暗号鍵のビット長、暗号方式を記憶する記憶部とを備え、前記割当部により割り当てられる暗号鍵は、受付部が受け付けたセキュリティレベルに対応するビット長に基づき生成され、前記暗号化部及び復号化部による暗号化及び復号化は、受付部が受け付けたセキュリティレベルに対応する暗号方式に基づきなされてもよい。
【0012】
プログラムはデータの読み書きにあたって、データの重要性と、そのデータの読み書きに費やする処理とからセキュリティレベルを設定して、そのセキュリティレベルに基づく、データ読み書きを半導体メモリカードの処理部に求めることができる。そのためデータサイズが大きく、重要度が低いデータは、セキュリティレベルを低く設定してデータ書き込みが短期間に終了するよう、ユーザに配慮することができる。
【発明を実施するための最良の形態】
【0013】
以降、本発明に係る半導体メモリカードの実施形態について説明する。本実施形態に係る半導体メモリカードは、ICカードの耐タンパモジュールを内蔵したSDeXメモリカードである。SDeXメモリカードは、SDメモリカード同様、SDポータブルデバイスの記録媒体に用いられながらも、ICカードの耐タンパモジュールを内蔵している。そしてSDeXメモリカードは、外部機器との通信方式として、接触型の通信方式と、非接触型の通信方式の両方式を備えている。
【0014】
先ず始めに、本発明に係る半導体メモリカード(SDeXメモリカード)の実施行為のうち、使用行為について説明する。SDeXメモリカードは、携帯電話などのSDポータブルデバイスと接続され、図1に示すような環境で、ユーザの利用に供される。図1は、SDeXメモリカード400の使用環境を示す図である。
図1における使用環境は、ECサーバ100、カードリーダライタ200、無線基地局210、SDポータブルデバイス300から構成される。
【0015】
ECサーバ100は、カードリーダライタ200及び無線基地局210、ネットワークを介して、ICカードにECサービスを提供する。ECサーバ100には複数のECアプリケーションプログラムが動作しており、これらのそれぞれは、固有のECサービスをSDeXメモリカード400に提供する。ECサーバ100上で動作するECアプリケーションは、ECサーバアプリケーションであり、ECサービスの種類毎にそれぞれ違うものが存在する。図1では、n種のECサービス毎のECアプリをS_APL1,2,3・・・・nと略記している。これらは、n種のECサーバアプリケーションである。ECサーバ100によるECサービス提供は、ネットワーク、カードリーダライタ200及び無線基地局210を介してECコマンドをSDeXメモリカード400に発行することによりなされる。
【0016】
カードリーダライタ200は、クレジット会社・金融機関のキャッシュデスペンサー、店舗のレジ機に備え付けの機器であり、SDeXメモリカード400への電力供給、SDeXメモリカード400との非接触型の入出力を行う。カードリーダライタ200は、ネットワークと接続されており、このカードリーダライタ200を介することで、SDeXメモリカード400はECサーバ100のECサービスを受けることができる。
【0017】
無線基地局210は、建造物や電柱の屋上に備え付けの機器であり、携帯電話型のSDポータブルデバイス300と無線によるデータの入出力を行う。無線基地局210は、ネットワークと接続されており、この無線基地局210を介することでも、SDポータブルデバイス300はECサーバ100のECサービスを受けることができる。
SDポータブルデバイス300は、SDeXメモリカード400を接続して、SDeXメモリカード400をアクセスする機器である。SDポータブルデバイス300には、ブラウザソフト等がインストールされており、ユーザはこのブラウザのユーザインターフェイスを介して、SDeXメモリカード400におけるファイルシステム(File System(以下、FSと略す場合がある))をアクセスすることができる。このファイルシステムアクセスは、SDメモリカードで規定されているSDコマンドをSDeXメモリカード400に発行し、そのレスポンスをSDeXメモリカード400から受信することでなされる。また、SDポータブルデバイス300がSDeXメモリカード400からブートストラップを行って起動する場合、SDポータブルデバイス300はSDeXメモリカード400と一体になってICカードとして機能する。SDポータブルデバイス300の背面には、螺旋アンテナが埋設されており、ICカードとしての機能時において、この螺旋アンテナが、カードリーダライタ200から発せられる電力をSDeXメモリカード400に供給する。またSDポータブルデバイス300は、SDeXメモリカード400に対するコマンド・レスポンスと、ECサーバ100とのコマンド・レスポンスとの相互変換を行う。SDポータブルデバイス300による相互変換とは、ECサーバ100からのECコマンドをカプセル化した拡張SDコマンドを生成してSDeXメモリカード400に出力し、SDeXメモリカード400からのSDレスポンスよりECレスポンスを取り出して、ECサーバ100に出力する処理である。SDポータブルデバイス300がSDeXメモリカード400にてブートストラップを行い、ICカードとして機能することを『ECモード』という。また、SDポータブルデバイス300がSDeXメモリカード400を記録媒体として用いることを『SDモード』という。
【0018】
SDモードでのSDeXメモリカード400の利用は、SDメモリカードとしての用途である。この用途においてSDeXメモリカード400のホスト装置となるのは、SDポータブルデバイス300であり、ホスト装置であるSDポータブルデバイス300が配信サーバからダウンロードしたオーディオデータ、ビデオデータの受け皿として、SDeXメモリカード400は用いられる。こうしてSDeXメモリカード400に記録されたオーディオデータ、ビデオデータをホスト装置は再生させることができる。
【0019】
ECモードでのSDeXメモリカード400の利用は、ICカードとしての用途である。このECモードにおいてもSDeXメモリカード400はSDポータブルデバイス300と接続される。しかしSDeXメモリカード400のホスト装置となるのはこのSDポータブルデバイス300ではなく、ネットワーク上のECサーバ100である。SDeXメモリカード400と接続されたSDポータブルデバイス300を、カードリーダライタ200、無線基地局210と用いることにより、SDeXメモリカード400はECサーバ100と通信を行う。この通信により、ECサーバ100と金銭決済を行うことができる。
【0020】
本実施形態のSDeXメモリカード400は、配信されたオーディオデータ、ビデオデータの受け皿としても用途に加え、ICカードとしても用途が存在するので、ユーザにとっての利便性が増している。
尚図1においてSDeXメモリカード400は、ECモードにおいてカードリーダライタ200を介して、ECサーバ100をアクセスしたが、無線基地局210を介してSDポータブルデバイス300がネットワークを介してECサーバ100をアクセスしてもよい。
【0021】
続いて本発明にかかる半導体メモリカードの生産行為の形態について説明する。本発明に係る半導体メモリカードは、図2、図3の内部構成に基づいて工業的に生産することができる。
図2に示すように、本発明にかかる半導体メモリカードの内部には、コネクタ、耐タンパ性を有する耐タンパモジュールチップ(Tamper Resist Module(TRM))1、256Mバイトもの容量をもつフラッシュメモリ2が実装されている。
【0022】
耐タンパ性には、諸説があるが、概して以下のことを意味するとされている。
1)チップを物理的に開梱しても、内部構成は判読不可能である。
2)電磁波を照射しても内部構成は判読不可能である。
3)入力データのデータ長と、処理時間との関係がノンリニアである。
4)入力データによりエラーが発生した際の処理結果により、出力データが逆算されない。
【0023】
これら1)〜4)の性質をもつため、TRM1は多くのリバース行為に耐性をもつ。以降、TRM1内のハードウェア要素について説明する。
図3は、TRM1内のハードウェア構成を示す図である。図3に示すようにTRM1には、内部EEPROM3、外部メモリ制御部4、HIM5、マスクROM6、CPU7が実装されており、マイコンシステムを形成している。
【0024】
内部EEPROM3は、読み出し/書き込みが可能なメモリである。TRM1として実装されたマイコンシステムは、単位面積当たりの製造コストが高く、TRM1内の内部EEPROM3の規模は、32Kバイトになっている。簡略化のため、このEEPROMを内部メモリと呼び、図2に示したフラッシュメモリ2を、以降外部メモリと呼ぶ場合がある。
外部メモリ制御部4は、フラッシュメモリ2のアクセスのために設けられた専用回路である。フラッシュメモリ2のアクセスは、SDポータブルデバイス300が発するSDコマンドに基づき行われる。
【0025】
HIM(Host Interface Module)5は、SDポータブルデバイス300から発行されるSDコマンドのコマンド番号を参照し、そのコマンド番号によりSDコマンドの振り分けを行う。SDコマンドの番号には、1〜mの数値と、m+1以上の拡張番号とがある。番号が1〜mなら外部メモリ制御部4にSDコマンドを出力し、m+1以上ならSDコマンドにカプセル化されたECコマンドを取り出して、CPU7側へと出力する。
【0026】
マスクROM6は、OS(Operation System)、Java(登録商標)仮想マシン、アプリケーションプログラムが予め格納されている読出専用メモリである。SDポータブルデバイス300は、このマスクROM6の固定番地からブートストラップを行うことにより、ECモードとして起動する。
CPU7は、マスクROM6に格納されているプログラムを実行する。
【0027】
図4は、図3のTRM1内のマスクROM6とCPU7とからなる部分を、ソフトウェア構成に置き換えて描いた図である。破線枠wk1内は、ICカードと互換性があるモジュールである。一方TRM1において破線枠外の部分は、SDメモリカードと互換性があるモジュールである。
SDメモリカードとの互換部分は、外部メモリ制御部4と、HIM5とからなる。この中でHIM5は、SDメモリカードにおける機能を踏襲しつつも、ICカード互換モジュールとの窓口としての機能を果たす。
【0028】
ICカード互換モジュールは、レイヤ構造をもつ。このレイヤ構造では、最下位層(物理層)に内部EEPROM3があり、この内部EEPROM3の上位層にOS10が、更に上位層にはJava(登録商標)仮想マシン9が、最上位層にはECクライアントアプリ8がある。SDメモリカードとの互換部分である外部メモリ制御部4は、内部EEPROM3と同じく物理層にあることは注意されたい。
【0029】
以降、図4に示したソフトウェア構成(ECクライアントアプリ8、Java(登録商標)仮想マシン9、OS10)について説明する。
ECクライアントアプリ8は、ECクライアントアプリ8はJava(登録商標)言語で記述されたECアプリの一種であり、ユーザの操作に基づきECサーバ100をアクセスする。ECサーバ100におけるECサーバアプリは、ECサービス毎の複数種類のものが存在するので、SDeXメモリカード400におけるECクライアントアプリも、ECサービス毎の複数のものが存在する。図中のC_APL1,2,3・・・・nは、ECサーバ100におけるECサーバアプリS_APL1,2,3・・・・nのそれぞれについて、ECクライアントアプリが存在することを示す。ECクライアントアプリ8がカードリーダライタ200、無線基地局210やネットワークを介して、ECサーバ100上のECサーバアプリとコマンドの送受信を行うことにより、ECにおける様々なECサービスを享受する。サーバ上のECサーバアプリから受信したECコマンドがデータの書き込みコマンドである場合、ECクライアントアプリは、そのECコマンドをJava(登録商標)仮想マシンを介してOS10に出力する。
【0030】
ECクライアントアプリ本来の役割の他に、ECクライアントアプリ8は、ユーザ操作に基づくフラッシュメモリ2及び内部EEPROM3のアクセスをECモードにおいて実行する。このアクセスにはファイルをクリエイトしたり、そのファイルを読み書きしたりするというファイルアクセスが含まれる。
Java(登録商標)仮想マシン9(図中のJava(登録商標)Card VM)は、Java(登録商標)言語で記述されたECクライアントアプリ8を、CPU7のネィティブコードに変換して、CPU7に実行させる。
【0031】
OS10は、ECクライアントアプリが発行したコマンドに基づくフラッシュメモリ2及び内部EEPROM3の読み書きを実行する。以上が、SDeXメモリカード400のソフトウェア構成である。
続いてフラッシュメモリ2及び内部EEPROM3における論理フォーマットについて説明する。図5は、フラッシュメモリ2及び内部EEPROM3の論理フォーマットを示す図である。本SDeXカードは、複数のアプリケーションC_APL1,2,3・・・・nに対応した半導体メモリカード、つまりマルチアプリケーション対応型の半導体メモリカードであり、本SDeXカードにおける論理フォーマットは、マルチアプリケーションにおけるアプリケーションのそれぞれに対応した複数のファイルシステムを備えている。
【0032】
一般に記録媒体におけるファイルシステムとは、記録媒体上の領域であって、そこに記録されているデータをファイルやディレクトリとして認識可能なものをいう。つまり、記録媒体をアクセスしようとするプログラムは、セクタや記録ブロックという記録媒体上の物理単位を意識することなく、ファイルやディレクトリを対象にして、記録媒体にデータを書き込んだり、読み出したりすることができる。このファイルやディレクトリを記録媒体上で実現するための情報体系をファイルシステム構造という。上述した論理フォーマットでは、かかるファイルシステムがECクライアントアプリ毎に存在している。
【0033】
フラッシュメモリ2及び内部EEPROM3は、2つのメモリ空間sm1,sm2を構成している。メモリ空間sm1は、TRM1内のCPU7からアクセス可能なメモリ空間であり、ECクライアントアプリの使用領域21、ECクライアントアプリの拡張領域22からなる。メモリ空間sm2は、TRM1内CPU7を介することなく、SDポータブルデバイス300がアクセスすることができるメモリ空間であり、認証領域23と、非認証領域24とがある。認証領域23、非認証領域24とは、SDメモリカードがもつメモリ領域であり、SDポータブルデバイス上のアプリケーション(SDアプリ)により使用されるSDアプリ使用領域である。これら認証領域23、非認証領域24の意味合いについては上述した特許文献1(特許3389186号公報)を参照されたい。
【0034】
図6は、ECクライアントアプリの拡張領域22、認証領域23、非認証領域24の内部構成を示す図である。ECクライアントアプリの拡張領域22、認証領域23、非認証領域24は、ISO/IEC 9293に準拠したファイルシステム構造を有する。ISO/IEC 9293は、説明の便宜のために選んだファイルシステム構造の一例に過ぎず、UDF(Universal Disk Format)等、他のファイルシステム構造を有していてもよい。認証領域23、非認証領域24は、TRM1の外部に存在するので、セキュアレベルは最も低い。セキュアレベルを高・中・低の3段階に分ければ、低のセキュアレベルにあたる。
【0035】
ECクライアントアプリの使用領域21は、複数のファイルシステムが配される領域である。個々のファイルシステムは、マルチアプリケーションにおけるそれぞれのアプリケーションに対応している。図6のECクライアントアプリ使用領域21における『Master Boot Record』,『PartitionTable』,『Partition』は、1つだけ描かれているが、実際『PartitionTable』,『Partition』は、複数アプリケーションのそれぞれに対応するものがECクライアントアプリ使用領域21上にある。ECクライアントアプリの使用領域21は、全体がTRM1内に収まっているので、セキュアレベルは最も高い。セキュアレベルを高・中・低の3段階に分ければ、高のセキュアレベルにあたる。
【0036】
ECクライアントアプリの拡張領域22は、TRM1内のECクライアントアプリの使用領域を拡張した拡張部分であり、内部EEPROM3上の領域22aと、フラッシュメモリ2上のセキュアフラッシュ領域22bとからなる。セキュアフラッシュ領域22bには、パーティション1,2,3・・・・nが存在する。これらパーティション1,2,3・・・・nは、TRM1が対応しているマルチアプリケーションのそれぞれに対応しているファイルシステム領域である。これらパーティション1,2,3・・・・nを、ファイルシステム領域として認識するには、このファイルシステム領域にアクセスするためのアクセス情報が必要になる。本実施形態においてこのアクセス情報は、パーティションテーブル1,2,3・・・・nにあたる。特徴的なのは、これらパーティションテーブル1,2,3・・・・nが内部EEPROM3内の領域22a上にある点である。
【0037】
SDモードにおいてSDポータブルデバイス300により認識されるのは、認証領域23、非認証領域24に限られる。何故なら、ECクライアントアプリの使用領域21やセキュアフラッシュ領域22bは、TRM1内部にマスタブートレコードやパーティションテーブルが存在するため、SDモードではアクセスすることはできないからである。
CPU7によるセキュアフラッシュ領域22bのアクセスは、CPU7からのアクセスでないとなし得ない。このことからセキュアフラッシュ領域22bのアクセスは、原則としてECクライアントアプリによるアクセス時に限られることがわかる。セキュアフラッシュ領域22bは、アクセス情報がTRM1内に収まっているので、セキュアレベルは中程度といえる。セキュアレベルを高・中・低の3段階に分ければ、中のセキュアレベルにあたる。尚、SDモード時に動作するアプリケーションが、特殊なコマンドを発行することにより、例外的にセキュアフラッシュ領域22bをアクセスしてもよい。
【0038】
図6において、ECクライアントアプリの使用領域21のファイルシステム領域(パーティション)及びアクセス情報(パーティションテーブル)は、セキュアフラッシュ領域22bのアクセス情報と別のものになっている。ECクライアントアプリの使用領域21は、セキュアフラッシュ領域22bとは別個独立の領域であるため、最悪のケースとして、フラッシュメモリ2上におけるファイルシステム領域の中身が悪意をもった者により暴露されたとしても、このセキュアフラッシュ領域22bの内容からECクライアントアプリの使用領域21が暴露されることはまず有り得ない。アクセス情報を別々にすることにより、ECクライアントアプリの使用領域21についてのファイアオール機能を実現することができ、ECクライアントアプリの使用領域21の機密性を維持することができる。
【0039】
セキュアフラッシュ領域22b内のパーティションや、認証領域23のパーティション、非認証領域24のパーティションは、共通の内部構成を有する。図7は、パーティションの共通構成を示す図である。
パーティションは、パーティションブートセクタ、『二重化ファイルアロケーションテーブル』、『ルートディレクトリエントリ』、『ユーザ領域』からなる。
【0040】
『パーティションブートセクタ』は、パーティションに関する情報が記述されたテーブルである。
『二重化ファイルアロケーションテーブル(File Allocation Table(FAT))』は、ISO/IEC 9293に準拠した2つのFATからなる。各FATは、各クラスタに対応づけられた複数のFATエントリーからなる。各FATエントリーは、対応するクラスタが使用中であるか、未使用であるかを示すものであり、対応するクラスタが未使用であれば、そのファイルエントリーには、"0"が設定され、対応するクラスタが使用中であれば、クラスタ番号が設定される。このクラスタ番号は、対応するクラスタが読み出された場合、次にどのクラスタを読み出せばよいかといったクラスタ間のリンク関係を示す。
【0041】
『ルートディレクトリエントリ』は、ルートディレクトリに存在する複数ファイルについてのファイルエントリーを複数含む。各ファイルエントリーは、存在するファイルの「ファイル名」と、そのファイルの「ファイル拡張子」と、ファイルの先頭部が格納されているクラスタの番号である「ファイル最初のクラスタ番号」と、そのファイルについての「ファイル属性」と、ファイルが記録された「記録時刻」と、ファイルの「記録日付」と、ファイルのデータ長である「ファイル長」とを含む。
【0042】
『ユーザ領域』は、ファイルが格納される領域である。このユーザ領域に属するセクタ、記録ブロックの集合であって、1つのファイルとして認識されるものがファイル実体にあたる。以上がパーティションの構成である。続いてパーティションテーブル及びパーティションブートセクタについて説明する。
セキュアフラッシュ領域22bのパーティションテーブルは、内部EEPROM3に存在する。一方認証領域23、非認証領域24についてのパーティションテーブルは、フラッシュメモリ2に存在する点に違いがある。しかし、セキュアフラッシュ領域22b、認証領域23、非認証領域24のパーティションテーブルは何れも図8(a)の内部を有する。図8(a)は、パーティションテーブルを示す図であり、図8(b)は、図7のパーティション内のパーティションブートセクタを示す図である。
【0043】
『パーティションテーブル』は、各パーティションの所在及び大きさが示されたテーブルであり、図8(a)の矢印ky2に示すように、"Boot Indicator"と、パーティションの開始ヘッダを特定する"Starting Head"と、パーティションの開始セクタを特定する"Starting Sector"と、ファイルシステム領域のタイプを示す"SystemID"と、"Ending Head"と、パーティションの終了セクタを特定する"Ending Sector"と、このパーティションの開始セクタまでの相対セクタ数を示す"Relative Sector"と、パーティションのセクタ数が設定される"Total Sector"とからなる。
【0044】
パーティションブートセクタは、図8(b)に示すような情報項目を有するExtend FDC記述子が設定される。図8(b)によれば、Extend FDC記述子は、Jump Command,Creating System Identifier,一セクタのサイズ(Sector Size), 一クラスタ当たりのセクタ数(Sector per Cluster),Reserved Sector Count,二重化FATに含まれるFAT数(Numbr of FATs),ルートディレクトリエントリのデータ長(Number of Root-directory Entries),Total Sectors,Medium Identifier,FAT1つ当たりのセクタ数(Sector Per FAT),Sector Per Track,Number of Sides,Number of Hidden Sectors,総セクタ数(Total Sectors),Physical Disk Number,Extended Boot Record Signature,Volume ID Number,ボリュームラベル(Volume Label),File System Type,Signature Word等の項目が設定される。
【0045】
以上が、TRM1の内部構成である。続いて、領域拡張部11について説明する。以下、この領域拡張部11を設けたことの技術的意義を説明する。
ICカード互換モジュールにおいて、ECサーバアプリから受信したデータは、内部EEPROM3に書き込まれる。ECサーバアプリから書き込みが要求されるデータは、金銭に係るものであり、大半がサイズが小さく内部EEPROM3でも充分収まる。ところが年間の取り引き明細に関するデータ書き込みがECサーバアプリから要求された場合、サイズが余りにも大きく内部EEPROM3の容量では不足が生ずる。だからといってかかるデータをフラッシュメモリ2にそのまま書き込むのは、セキュリティ上好ましくない。何故なら、かかる年間の取引明細は、金銭に至らないまでも、それに準ずる保護価値があるからである。
【0046】
そこで領域拡張部11は、TRM1に準ずるセキュリティを保証しつつ、ECクライアントアプリの使用領域を、内部EEPROM3からフラッシュメモリ2へと拡張する。
領域拡張部11は、ECクライアントアプリが使用領域の拡張を求めた際、ECクライアントアプリにフラッシュメモリ2内の1つのファイルシステム領域を割り当てる。ECクライアントアプリに割り当てられたファイルシステム領域は、そのECクライアントアプリ固有のものであり、他のECクライアントアプリはこのファイルシステム領域をアクセスすることはできない。1つのファイルシステム領域内部という閉じた空間にて、ECクライアントアプリは自由にファイルアクセスを行うことができる。領域拡張部11により割り当てられるファイルシステム領域とは、上述したセキュアフラッシュ領域22b内のパーティションである。領域拡張部11によるアタッチは、ECクライアントアプリがファイルシステムOPENを要求した際になされる。ファイルシステムOPENが要求された際、領域拡張部11はフラッシュメモリ2内に1つのパーティションを生成し、そのパーティションについてのパーティションテーブルを配置する。そしてECクライアントアプリには、ファイルシステム領域を利用するためのAPL-IDを付与する。このAPL-IDは、10桁以上のランダムな数値からなり、パスワードのように用いられる。
【0047】
領域拡張部11から付与されたこのAPL-IDを利用することで、ECクライアントアプリは自身に割り当てられたファイルシステム領域にデータを書き込んだり、データを読み出したりすることができる。ファイルシステム領域のOPENは、いわゆるファイルオープンとは異なる。従ってECクライアントアプリがセキュアフラッシュ領域22bのファイルをオープンするには、前もってファイルシステムをOPENし、その後、ファイルをOPENするという二段階のOPENを行わねばならない。
【0048】
ECクライアントアプリによるデータ読み書きが終われば、ファイルシステムのデタッチを行う。ファイルシステムのデタッチとは、ECクライアントアプリに割り当てられたパーティションを解放することである。領域拡張部11によるデタッチは、ECクライアントアプリがファイルシステムCLOSEを要求した際になされる。ファイルシステムCLOSEが要求された際、デタッチは、領域拡張部11によりなされる。ファイルシステムのCLOSEも、いわゆるファイルCLOSEとは異なる。ECクライアントアプリがセキュアフラッシュ領域22bのファイルをCLOSEした後に、その後、ファイルが存在するファイルシステムをCLOSEするという二段階のCLOSEを行わねばならない。以降、同じECクライアントアプリが、同じパーティションを利用するには、APL-IDにより自己の正当性を証明した上で、領域拡張部11にアタッチを行わせねばならない。
【0049】
図9は、ECサーバ100によるSDeXメモリカード400のアクセス、SDポータブルデバイス300によるSDeXメモリカード400のアクセスを示す図である。図中の実線の矢印jt1,jt2,jt3は、ECサーバ100によるSDeXメモリカード400のアクセスを模式的に示す。図中の破線の矢印hs1は、SDポータブルデバイス300によるSDeXメモリカード400のアクセスを模式的に示す。本図に示すように、ECアクセスは、内部EEPROM3、フラッシュメモリ2内のセキュアフラッシュ領域22bの何れかにアクセス可能であり、ECサーバ100内のECアプリは、書き込むべきデータの大きさや重要度に応じて、書込先を選ぶことができる。
【0050】
図10は、SDeXメモリカード400、SDポータブルデバイス300、ECサーバ100間におけるコマンド・レスポンスのシーケンス図である。本図において右向きの矢印はコマンドを示し、左向きの矢印は、レスポンスを示す。
SDモードでは、SDポータブルデバイス300がホスト装置であり、SDポータブルデバイス300はHIM5を介してSDeXメモリカード400の外部メモリ制御部4と、SDコマンド、SDレスポンスの送受信sc1,2,3,4を行う。
【0051】
ECモードにおけるシーケンスは、このSDモードにおけるシーケンスを踏襲しつつも、これを応用したものになっている。ECモードにおいても、SDモード同様HIM5を介した外部メモリ制御部4とのコマンド・レスポンスの送受信sc5,6が行われる。これらのコマンド・レスポンスは、ECコマンドをカプセル化したSDコマンド、ECレスポンスをカプセル化したSDレスポンスであり、SDポータブルデバイス300は、HIM5を介したコマンド・レスポンスの送受信に加え、カードリーダライタ200、無線基地局210、ネットワークを介したECサーバ100とのECコマンド、ECレスポンスの送受信sc7,8を行う。ECコマンド、ECレスポンスの送受信sc5,6を行う点が、第1の差違点である。ECサーバ100との送受信において、SDポータブルデバイス300はその内部で、ECコマンド・ECレスポンスと、SDコマンド、SDレスポンスとの相互変換を行う。
【0052】
SDモードとの第2の差違は、SDモードにおいてコマンド・レスポンスは外部メモリ制御部4−HIM5をダイレクトに行き来する。これに対し、ECモードではコマンド・レスポンスがICカード互換モジュールのECクライアントアプリ8、領域拡張部11を経由する点、つまりECクライアントアプリ8、領域拡張部11を通る。この迂回部分uc1,2,3,4,5,6,7が存在する点が第2の差違点である。
【0053】
迂回部分において、フラッシュメモリ2への書き込みに先立ち、ECクライアントアプリは、ファイルシステムのOPEN、ファイルOPENを順次行う。ファイルシステムのOPENが命じられれば領域拡張部11は、ファイルシステムのアタッチを行う。
一方フラッシュメモリ2の書き込み後、ECクライアントアプリは、ファイルのCLOSE、ファイルシステムのCLOSEを行う。ファイルのCLOSEが命じられれば領域拡張部11は、ファイルシステムのデタッチを行う。
【0054】
以上のように本実施形態によれば、TRM1の内部EEPROM3からフラッシュメモリ2へとECクライアントアプリの使用領域を拡張するにあたって、ECクライアントアプリの使用領域の拡張部にあたるパーティションをフラッシュメモリ2内に配置しつつも、パーティションテーブルをTRM1内部に置く。拡張部の根幹であるパーティションテーブルをTRM1内に秘匿するので、ECクライアントアプリの使用領域の拡張部がどこから始まるかを悪意をもったものに知られずに済む。これにより、ECクライアントアプリにより書き込まれたデータの守秘性を保つことができる。
【0055】
また、ECクライアントアプリのそれぞれにパーティションを割り当て、各パーティションの関係を排他的なものにするので、複数ECクライアントアプリのうち1つが、悪意をもったものにより操作されたとしても、他のECクライアントアプリに割り当てられたパーティションの格納内容が、そのECクライアントアプリに知られることはない。1つのECクライアントアプリによる不正アクセスを、他のECクライアントアプリに波及させないので、格納内容の守秘性を保つことができる。
【0056】
(第2実施形態)
第2実施形態は、第1実施形態より強固に、セキュアフラッシュ領域22bの格納内容を保護する改良に関する。SDeXメモリカード400の格納内容の保護は、一般に格納内容を暗号化することで実現される。
しかし不正なECクライアントアプリによりセキュアフラッシュ領域22bがアクセスされる場合、セキュアフラッシュ領域22bの格納内容を暗号化する暗号鍵が、そのECクライアントアプリを操作する者により暴露される恐れがある。そうした場合、セキュアフラッシュ領域22bをアクセスする他のECクライアントアプリの格納内容までも、暴露される恐れがあり、セキュアフラッシュ領域22bをアクセスする他のECクライアントアプリのECプロバイダに損害が波及する。
【0057】
セキュアフラッシュ領域22bの格納内容の全暴露を避けるべく、本実施形態ではパーティションを各ECクライアントアプリに割り当てる際、OS10は固有の暗号鍵をECクライアントアプリに割り当てる。そして各ECクライアントアプリが、自身のセキュアフラッシュ領域上のファイルシステムをアクセスする際、ファイルシステムに書き込まれるべきデータ、ファイルシステムから読み出されるべきデータを固有の暗号鍵で暗号化・復号化する。各ECクライアントアプリにパーティションを割り当てることに加え、固有の暗号鍵で暗号化・復号化を行うので、たとえ1つのECクライアントアプリを操作するユーザが自身に割り当てられた暗号鍵をつきとめたとしても、他のECクライアントアプリに対応する暗号鍵が暴露されることはない。
【0058】
以上の暗号化・復号化を行うため、OS10は、図11に示す構成をもつ。図11に示すようにOS10は、第1実施形態に示した領域拡張部11に加え、選択テーブル12、暗号化テーブル13、暗復号化部14を有する。
選択テーブル12は、複数のビット長と、複数の暗号方式とを対応付けたテーブルである。ビット長は、ECクライアントアプリに固有の暗号鍵を生成する際、暗号鍵をどれだけのビット長にするかを示す。暗号方式は、その暗号鍵をもって、どのような暗号化アルゴリズムで暗号化するかを示す。これら複数の暗号方式、ビット長は、1〜Lのレベル値があり、高いレベル値には、難易度が高いアルゴリズムの暗号方式と、長いビット長とが対応づけられている。低いレベル値には、難易度が低いアルゴリズムの暗号方式と、短いビット長とが対応づけられている。暗号方式の難易度が高い程、暗号鍵のビット長が長い程、パーティションの格納内容のセキュリティは高くなることを意味する。セキュリティレベルの高低は、暗号化の処理時間と比例関係になる。つまり暗号方式の難易度が高い程、暗号鍵のビット長が長い程、暗号化、復号化に費やされる時間は長くなる。逆に暗号方式の難易度が低い程、暗号鍵のビット長が短い程、パーティションの格納内容のセキュリティは甘くなり、暗号化、復号化に費やされる時間は短くなる。
【0059】
暗号化テーブル13は、APL-ID、暗号方式、ビット長の対応をとるテーブルである。
暗復号化部14は、領域拡張部11がパーティションをECクライアントアプリに割り当てる際、ECクライアントアプリ8からセキュリティレベルを受け取って、そのセキュリティレベルに対応する暗号方式と、ビット長とを選択テーブル12から検索して(図中のrf1,rf2)、検索したビット長の乱数を発生する。そうして発生した乱数を基に、検索した暗号方式に従って暗号鍵を生成し、それを固有の暗号鍵としてECクライアントアプリに割り当てる。この割り当て結果は、暗号化テーブル13に示される(図中のレコード追加)。以降このECクライアントアプリがデータを書き込む際、そのECクライアントアプリから受け取ったデータを(図中のWrite data)、割り当てられた暗号鍵を用いてデータを暗号化した上で外部メモリ制御部4に出力する(図中の暗号化Write data)。またECクライアントアプリがデータを読み出す際、暗復号化部14は外部メモリ制御部4から受け取ったデータを(図中の暗号化Read data)そのECクライアントアプリに割り当てられた暗号鍵を用いてデータを復号化した上で、ECクライアントアプリ8に引き渡す(Read data)。
【0060】
第2実施形態に係る領域拡張部11及び暗復号化部14は、図12(a)〜(c)のフローチャートの処理を行うプログラムをコンピュータ記述言語で記述して、CPU7に実行させることにより生産される。
図12(a)は、領域拡張部11及び暗復号化部14の処理手順を示すフローチャートである。
【0061】
図12(a)のフローチャートにおけるステップS1〜ステップS4は、領域拡張部11の処理手順を示す。ステップS1で、領域拡張の要求元のECクライアントアプリに未割当パーティション番号iをアサインし、ステップS2では、i番目パーティションについてのパーティションテーブルを内部EEPROM3に書き込み、フラッシュメモリ2にパーティションを生成する。ステップS3において、パスワードを生成し、ステップS4では、生成したパスワードをAPL-IDとして要求元アプリに通知する。
【0062】
また、図12(a)のフローチャートにおけるステップS5〜ステップS7は、暗復号化部14の処理手順を示す。ステップS5では、拡張要求時のセキュリティレベルに応じた暗号方式、ビット長を選択テーブルから取り出す。ステップS6では、取り出されたビット長の乱数を生成し、ステップS7では、取り出された暗号方式、ビット長、生成した乱数からなるレコードiを暗号化テーブルに追加する。
【0063】
図12(b)は、領域拡張部11及び暗復号化部14によるファイル書き込みの処理手順を示すフローチャートである。
ステップS11において、領域拡張部11は書込を行うアプリに割り当てられたAPL-IDを取得し、ステップS12では、APL-IDからパーティション番号iを特定し、アプリから、パラメータbuf,file,fpの設定を受け付ける。
【0064】
ここで受け付けられるパラメータには、以下のものがある。
buf:書き込むべきデータへのポインタ
file:書込先ファイルのファイル名
fp:書込先ファイル内部におけるポインタ
ステップS13において暗復号化部14、buf内のデータを、レコードにおける暗号鍵iを用いて暗号方式iで暗号化し、ステップS14において領域拡張部11はパーティションiのファイルにおいてファイルポインタ以降に、暗号化データを書き込む。
【0065】
図12(c)は、領域拡張部11及び暗復号化部14によるファイル読み出しの処理手順を示すフローチャートである。ステップS21において領域拡張部11は、読出を行うアプリに割り当てられたAPL-IDを取得し、ステップS22において領域拡張部11は、APL-IDからパーティション番号iを特定する。そしてステップS23において領域拡張部11は、ECクライアントアプリから、パラメータbuf,file,fp,sizeの設定を受け付ける。
【0066】
このステップS23で受け付けられるパラメータには、以下のものがある。
buf:読み出すべきデータへのポインタ
file:読出先ファイルのファイル名
fp:読出先ファイル内部におけるポインタ
size:読出データ長
ステップS24において領域拡張部11はパーティションiのファイルにおいてファイルポインタ以降の暗号化データをsizeだけ読み出し、ステップS25において暗復号化部14は、暗号鍵iを用いて読み出されたデータを、暗号方式iで復号化して、バッファに格納する。
【0067】
以上のように本実施形態によれば、ECクライアントアプリは、セキュリティレベルと処理時間との関係を考慮して、セキュリティレベルを引数に指定してファイルシステムの拡張をOS10に要求することができる。これにより、自身がどれだけのセキュリティレベルを要求しているかをOS10に伝えることができる。
尚、セキュリティレベルはECクライアントアプリから受け付けるとしたが、OS10側で自動的に設定するものとしてもよい。また、選択テーブル12における暗号方式やビット長は、バージョンアップできるようにしてもよい。これにより、セキュアフラッシュ領域の守秘性を高めることができる。
【0068】
また選択テーブル12、暗号化テーブル13は、OS外部であるが、TRM1内部の領域にあってもよい。
(第3実施形態)
Java(登録商標)仮想マシン9上で、複数ECクライアントアプリに対応するECクライアントアプリが動作している場合、OS10はこれら複数ECクライアントアプリを、1つのタスクとして認識してしまう。これでは、あるECクライアントアプリから他のECクライアントアプリへの切り換わり時に、そのECクライアントアプリについてのデタッチを行うことができず、その切換先ECクライアントアプリが、切換元ECクライアントアプリのパーティションをアクセスすることも有り得る。
【0069】
仮に、切換先ECクライアントアプリが悪意をもった者により操作されている場合、切換元ECクライアントアプリのパーティションの内容がその悪意をもったものに漏洩してしまう恐れがある。本実施形態では、かかる漏洩を避けるため、Java(登録商標)仮想マシン9が、ECクライアントアプリの切り換えがあれば、その切り換えがあった旨と、切換先APL-IDとを領域拡張部11に通知する。
【0070】
領域拡張部11は、Java(登録商標)仮想マシン9からECクライアントアプリの切り換えが通知されれば、ファイルシステムのデタッチを行う。
以上のように本実施形態によれば、Java(登録商標)仮想マシン9を介することにより複数タスクが1つのタスクとして認識される場合であっても、ECクライアントアプリの切り換えをJava(登録商標)仮想マシンがOS10に通知するので、ECクライアントアプリのデタッチを行うことができ、あるECクライアントアプリのパーティションの内容を、他のECクライアントアプリに漏洩することはない。
【0071】
(第4実施形態)
第1〜第3実施形態では、ファイルシステムとして認識可能な領域をフラッシュメモリ2上に配置し、ファイルシステムをアクセスするための領域テーブルを耐タンパモジュールに配置していた。これに対し本実施形態は、ファイルシステムとして認識可能な領域と、領域テーブルとの組みをフラッシュメモリ2上に配置することを特徴としている。
【0072】
かかる組みをフラッシュメモリ2に配置すると共に、ファイルシステム領域をアクセスするためのアクセス情報をTRM内におく。本実施形態では、領域テーブルをアクセスするための位置情報、領域テーブルを復号するための暗号鍵がこのアクセス情報にあたる。
図13は、第4実施形態におけるフラッシュメモリ2のアロケーションを示す図である。本図においてセキュアフラッシュ領域は、認証領域23、非認証領域24の後に設けられている。本実施形態においてメモリアクセスは、ページ単位(1ページ=512バイト)でなされ、セキュアフラッシュ領域は、0100hページ(hは16進数表示を示す)に配置されている。
【0073】
引き出し線hh1は、フラッシュメモリ2のうちセキュアフラッシュ領域のアロケーションをクローズアップするものである。本引き出し線に示すようにセキュアフラッシュ領域には、領域テーブルたる『SF(Secure Flash)領域テーブル』と、この『SF領域テーブルのバックアップ』と、最大16個の『ファイルシステム領域(1)〜(16)』とからなる。引き出し線hh2は、SF領域テーブルの内部構成をクローズアップして示す。この引き出し線に示すようにSF領域テーブルは、「セキュアフラッシュ領域サイズ」と、32個の「FS(File System)エントリー(1)〜(32)」からなる。ファイルシステム領域の数が16個であるのに対し、FSエントリーの数が32個であるのは、ファイルシステム領域間の空白も、1個の領域としてカウントしているためである。
【0074】
SF領域テーブルの大きさは388バイトなので、そのバックアップと合わせたサイズは、776バイトになる。1ページは512バイトなので、2個のSF領域テーブルは、2ページ分のサイズを占める。セキュアフラッシュ領域の先頭を100hページとすると、ファイルシステム領域(1)は、102hページから始まることになる。
引き出し線hh3は、16個のファイルシステムのうち、任意の1つであるファイルシステム[i]についてのFSエントリー[i]の内部構成をクローズアップして示す。
【0075】
FSエントリーは、ファイルシステム[i]が無効であるか(「0」の設定時)、ファイルシステム[i]が存在するか(「1」の設定時)、空きであるか(「2」の設定時)を示す1バイト長の『状態フラグ』、
ファイルシステム[i]の識別番号として1〜16の値の設定が可能である1バイト長の『FSID』、
ファイルシステム[i]を構成するセクタが1Kバイトであるか(「1」の設定時)、4Kバイトであるか(「4」の設定時)を示す1バイト長の『セクタ単位』、
FSエントリー[i]のサイズが2バイトであるか(「2」の設定時)、4バイトであるか(「4」の設定時)を示す1バイト長の『エントリ単位』、
ファイルシステム[i]の領域サイズを示す4バイト長の『領域サイズ』、
SF領域先頭ページからファイルシステム[i]までの相対ページ数を示す4バイト長の『先頭ページ』からなる。かかるFSエントリー[i]内の『先頭ページ』を参照することにより、ファイルシステム領域[i]のアクセスは可能になる。
【0076】
以上がセキュアフラッシュ領域のアロケーションである。続いて第4実施形態に係るTRM内メモリ3のアロケーションについて説明する。図14は、第4実施形態に係るTRM内メモリ3のアロケーションを示す図である。本図の特徴は、SF領域テーブルをアクセスするためのアクセス情報がTRM内メモリ3に存在する点にある。
引き出し線hh4は、アクセス情報の内部構成を示す。この引き出し線に示すように本アクセス情報は、『SF先頭ページアクセス情報』、『FSエントリーアクセス情報(1)〜(16)』からなる。図中の引き出し線hh5はSF先頭ページアクセス情報の構成をクローズアップしている。この引き出し線に示すようにSF先頭ページアクセス情報は、SF領域テーブルについての2バイト長の『CRC』と、SF領域テーブルがどのような暗号化方式で暗号化され、何ビットの暗号鍵で暗号化されているかを示す2バイト長の『暗号方式』と、SF領域テーブルの暗号化に用いた32バイト長の『暗号鍵』と、セキュアフラッシュ領域の先頭ページを示す4バイト長の『SF領域先頭ページ』とからなる。SF領域先頭ページがFFFF FFFFhであるなら、セキュアフラッシュ領域は存在せず、これ以外の値なら、この値に示されるページからセキュアフラッシュ領域は存在することを示す。引き出し線hh6は、SF先頭ページアクセス情報の具体的な設定値を示す。この具体例では、CRCは93h,02h,暗号方式はFEh,3Eh、暗号鍵は01h,02h,03h,04h〜CCh,DDh,EEh,FFh、SF領域先頭ページは00h,01h,00h,00hにそれぞれ設定されていることがわかる。
【0077】
続いて16個のFSエントリーアクセス情報のうち、任意の1つであるFSエントリーアクセス情報[i]の内部構成を説明する。図中の引き出し線hh7はFSエントリーアクセス情報の構成をクローズアップしている。本FSエントリーアクセス情報[i]は、2バイト長の『CRC』、2バイト長の『暗号方式』、32バイト長の『暗号鍵』、4バイト長の『未使用データ』からなる。引き出し線hh8は、FSエントリーアクセス情報の具体的な内容を示す。この具体例では、CRCは56h,12h、暗号方式はFFh,4Fh,暗号鍵は、FEh,E4h,ADh,2Ch〜00h,11h,22h,33hに設定されていることがわかる。
【0078】
図15は、第4実施形態に係るセキュアフラッシュ領域のアクセスの過程を示す図である。以上のSF先頭ページアクセス情報、FSエントリーアクセス情報がTRMのTRM内メモリ3に存在するため、TRM内のOSが、どれかセキュアフラッシュ領域をアクセスする場合は、SF先頭ページアクセス情報における先頭ページを参照することにより暗号化SF領域テーブルをアクセスし(図中のkj1)、またSF先頭ページアクセス情報における暗号方式、暗号鍵を取り出してこれに基づき暗号化SF領域テーブルを復号することにより、SF領域テーブルを得る。
【0079】
こうしてSF領域テーブルを復号すれば、これに含まれるFSエントリー[i]を参照することにより、ファイルシステム領域[i]の先頭ページにアクセスする(図中のkj2)。更にTRM内メモリ3のFSエントリーアクセス情報には、各ファイルシステム領域についての暗号鍵、暗号方式が示されているので、任意のファイルシステム領域から暗号化データを読み出し、これを暗号方式、暗号鍵を用いて復号することにより、セキュアフラッシュ領域の記録内容を知得することができる。
【0080】
図13、図14のアロケーションにおいて、SF領域テーブルはセキュアフラッシュ領域に置かれるが、SF先頭ページアクセス情報、FSエントリーアクセス情報はTRM内にある。そのためSDeXカードが機器に接続されたとしても、この機器はTRM内のSF先頭ページアクセス情報、FSエントリーアクセス情報を読み取ることができないので、当該機器から見てSF領域テーブルは、無意味なデータにしか写らない。SDeXカードに接続された機器はセキュアフラッシュ領域を認識することができず、セキュアフラッシュ領域の守秘性は保たれる。
【0081】
以上のように説明したセキュアフラッシュ領域に対するアクセスは、図16〜図19の処理手順を記述したプログラムを作成し、これをCPU7に実行することにより実現される。図16は、セキュアフラッシュ領域初期化時におけるOS10の処理手順を示すフローチャートである。本フローチャートでは、フラッシュメモリ2上の領域のセキュアフラッシュ領域の先頭ページを割り当てる(ステップS31)。そして、ECクライアントアプリのセキュリティレベル情報を取得する。セキュリティレベル情報とは、暗号方式と、ビット長とを用いてECクライアントアプリのセキュリティレベルを表す情報である。ここで暗号方式とは、第2実施形態同様、ECクライアントアプリについての暗号化にどのような暗号化アルゴリズムを用いるかを示す。またビット長は、第2実施形態同様、ECクライアントアプリについての暗号化に、何ビットの暗号鍵を用いるかを示す。
【0082】
そうして取得した、暗号方式及びビット長に基づき、暗号鍵を生成する(ステップS32)。生成後、暗号鍵、暗号方式、先頭ページを含んだSF先頭ページアクセス情報をTRM内メモリ3に書き込む(ステップS33)。そして、状態フラグが"空き"を示すFSエントリーを16個生成し、これにセキュアフラッシュ領域サイズを加えてSF領域テーブルを得て(ステップS34)、生成したSF領域テーブルを、生成した暗号鍵を用いて、暗号方式に基づき暗号化して、セキュアフラッシュメモリ2上の先頭ページ以降に書き込む(ステップS35)。これによりセキュアフラッシュ領域の初期化が完了する。
【0083】
図17は、ファイルシステム生成時におけるOS10の処理手順を示すフローチャートである。本フローチャートは、ステップS41においてTRM内メモリ3からSF先頭ページアクセス情報を読み出し、ステップS42の判定を行う。ステップS42は、SF先頭ページアクセス情報の先頭ページがFFFFFFFFであるかを判定するものであり、もしそうなら何の処理も行わずに、本フローチャートを終了する。もし有効なページであるなら、暗号化SF領域テーブルを読み出し、SF先頭ページアクセス情報の暗号鍵を用いて、暗号方式に基づき復号し(ステップS43)、ステップS44の判定を行う。ステップS44は、SF領域テーブルに空きのFSエントリーが存在するかどうかを判定する判定ステップであり、もし空きがなければ何の処理も行わずに、本フローチャートを終了する。
【0084】
空きがあれば、空きのファイルシステム領域をファイルシステム領域[i]として(ステップS45)、ECクライアントアプリのセキュリティレベル情報を取得し、取得したセキュリティレベル情報に含まれる暗号方式及びビット長に基づき、暗号鍵を生成する(ステップS46)。ファイルシステム領域[i]用のパーティションブートセクタ、FAT、ディレクトリエントリを暗号鍵を用いて、暗号方式に基づき暗号化してファイルシステム領域[i]に書き込む(ステップS47)。これにより1つのファイルシステム領域がセキュアフラッシュメモリ2上に得られることになる。
【0085】
図18は、OS10によるファイルシステムアクセスの処理手順を示すフローチャートである。TRM内メモリ3からSF先頭ページアクセス情報を読み出し(ステップS51)、SF先頭ページアクセス情報の先頭ページがFFFFFFFFであるか否かを判定する(ステップS52)。FFFFFFFFであるなら、何の処理も行わずに本フローチャートを終了する。もし有効な値であるなら、暗号化SF領域テーブルを読み出し、これをSF先頭ページアクセス情報の暗号鍵を用いて、暗号方式に基づき復号する(ステップS53)。復号されたSF領域テーブルから、ファイルシステム[j]の先頭ページを読み出し(ステップS54)、セキュアフラッシュ領域の先頭ページ+ファイルシステム[j]の先頭ページから、ファイルシステム領域[j]の暗号化パーティションブートセクタ、FAT、ディレクトリエントリを読み出す(ステップS55)。そしてFSエントリーアクセス情報の暗号方式、暗号鍵に基づきファイルシステム[j]から読み出されたデータを復号し(ステップS56)、復号結果に基づき、ファイルシステム領域[j]におけるディレクトリ、ファイルを認識して(ステップS57)、ファイルシステム領域[j]の暗号方式、暗号鍵に基づくファイルシステム[j]内のファイルアクセスを実行する(ステップS58)。
【0086】
図19は、OS10によるファイルシステム削除の処理手順を示すフローチャートである。先ず初めに、TRM内メモリ3からSF先頭ページアクセス情報を読み出し(ステップS61)、SF先頭ページアクセス情報の先頭ページがFFFFFFFFであるか否かを判定する(ステップS62)。FFFFFFFFであるなら、何の処理も行わずに本フローチャートを終了する。もし有効な値であるなら、セキュアフラッシュ領域の先頭ページから暗号化SF領域テーブルを読み出し、SF先頭ページアクセス情報の暗号鍵を用いて、暗号方式に基づき復号する(ステップS63)。そして復号されたSF領域テーブルから、ファイルシステム[j]の先頭ページを読み出し(ステップS64)、セキュアフラッシュ領域の先頭ページ+ファイルシステム[j]の先頭ページから、ファイルシステム領域[j]のサイズ分だけクリア処理を行う(ステップS65)。その後、SF領域テーブルにおけるファイルシステム領域[j]の状態フラグを空きに更新し(ステップS66)、更新されたSF領域テーブルをSF先頭ページアクセス情報内の暗号鍵を用いて、暗号方式に基づき暗号化した上でセキュアフラッシュ領域に書き戻す(ステップS67)。これによりファイルシステム[j]の削除は完了する。
【0087】
以上のように本実施形態によれば、SF領域テーブルの所在を示す情報や暗号鍵、暗号方式を含むSF先頭ページアクセス情報をTRM内部に配置した上で暗号化SF領域テーブルをセキュアフラッシュ上に配置するので、セキュアフラッシュ上のファイルシステム領域は、TRM内のOSのみが認識可能となる。TRM内のOSのみがアクセス可能なファイルシステム領域をセキュアフラッシュ領域に設けるので、格納内容の守秘性を保ちながら、ECクライアントアプリの領域拡張を実現することができる。
【0088】
(第5実施形態)
第1実施形態〜第4実施形態において耐タンパモジュールの内部メモリ3及び外部メモリ2は、それぞれEEPROM及びフラッシュメモリで構成していた。これに対し第5実施形態では、耐タンパモジュールの内部メモリ3及び外部メモリ2を、2つのメモリモジュールで構成する。図20は、第5実施形態に係るメモリモジュールの構成を示す図である。本図において、EEPROM3a、フラッシュメモリ2aは、主たるメモリモジュールであり、第1実施形態〜第4実施形態に示したものと同じである。第5実施形態では、このメモリモジュールに加え、予備のメモリモジュール2b,3bが内部メモリ3及び外部メモリ2に追加されている。この予備のメモリモジュール2b,3bは強誘電体メモリ(Ferro Electric Random Access Memory(FeRAM))で構成されており、その性能はフラッシュメモリと大きく異なる。図21は、フラッシュメモリ、FeRAMの性能比較を示す図である。本図を参照すると、フラッシュメモリは価格面では低廉であり、大容量化には向いているが(図中の○)、ブロック単位の書き込みしか行えない(※1)。このブロックのサイズは、フラッシュメモリが大容量になればそれにつれ大きくなるので、小サイズのデータを書き込む場合、ロスが大きくなる。また書き込み時間は長く(10000ns)、書き込み回数も少ない(1,000,000回)。そして書込時には、既に格納されているデータを一旦消去して書き込みを行うため、書き込み性能は不安定となる(※2)。
【0089】
一方、FeRAMは価格が高く大容量化には不向きであるが(△)、書き込み単位が1バイトであり、また書込時間は高速である(30〜100ns)。また書き換え回数も多い。
かかる性能差があることから、予備のメモリモジュールをFeRAMで構成し、ファイルエントリーやFAT等、更新頻度が高いデータをメモリモジュールに配せば、フラッシュメモリにおける書込性能を補うことができる。図22は、ファイルエントリーやFAT、クリア処理管理テーブルというような、更新頻度が高いデータが配されたFeRAMを示す図である。
【0090】
以上のように本実施形態によれば、FeRAMで構成された予備のメモリモジュールにファイルエントリー、FAT等サイズが小さく更新頻度が高いデータを格納するので、ファイルエントリーやFATの高速書き換えを実現することができる。
FeRAMには、他にワンスタイムリードという特性がある。これは、格納されているデータを一度読み出せば、その格納内容は破壊されるという特性である(図の※4)。これは守秘性を徹底する意味では好ましいが、データの読み出し時には、再度データを書き込む必要があり、結局書込回数が増えてしまう。この読出時のデータ破壊という特性を補うなら、磁気共鳴メモリ(Magnetoresitive RAM(MRAM))を採用することが望ましい。
【0091】
(第6実施形態)
第5実施形態では予備のメモリモジュールをFeRAMで構成していたが、第6実施形態は耐タンパモジュールの内部メモリ3をFeRAMで構成するという態様に関する。図23は、第6実施形態に係るTRM内メモリ3の内部構成を示す図である。耐タンパモジュールの内部メモリ3は小サイズなので、FeRAMで構成しても、大きなコストアップにならない。尚、第6実施形態ではTRM内メモリ3をFeRAMのみで構成するとしたが、MRAMのみで構成してもよい。
【0092】
(第7実施形態) 第1実施形態においてECクライアントアプリは、予めマスクROM6に格納されていたが、本実施形態はECサーバ100からダウンロードされたECクライアントアプリを、SDeXカードに記録する改良に関する。
第7実施形態に係るTRM内メモリ3には、ECアプリダウンロード用領域が新たに追加される。SDポータブルデバイス300がECサーバ100から新たなECクライアントアプリをダウンロードする際、このECアプリダウンロード用領域が、ダウンロード先になる。
【0093】
ダウンロードされた新たなECクライアントアプリには、予めECクライアントアプリの使用領域上に確保された複数領域のうち1つが、割り当てられる。また領域拡張部11は、ダウンロードによりECクライアントアプリが追加された際、ダウンロードされたECクライアントアプリにフラッシュメモリ2内の1つのファイルシステムを割り当てる。ダウンロードされたECクライアントアプリに割り当てられたファイルシステムは、そのECアプリ固有のものであり、他のECクライアントアプリはこのファイルシステムをアクセスすることはできない。1つのファイルシステム内部という閉じた空間にて、ECクライアントアプリは自由にファイルアクセスを行うことができる。
【0094】
以上のように本実施形態によれば、SDeXカードにECクライアントアプリが追加された際、領域拡張部11は、そのECクライアントアプリにファイルシステムを割り当てるので、ダウンロードされたECクライアントアプリは、過不足なく、SDeXカード上の領域を使用することができる。
尚、ダウンロードされたECクライアントアプリに、専用のファイルシステムを割り当てるには、将来ダウンロードされるであろうECクライアントアプリのための領域を、予めECクライアントアプリの使用領域に確保しておくのが望ましい。
【0095】
(第1実施形態〜第7実施形態の補足事項)
(A)尚、ECアプリをアプリケーションプログラムの一例として説明したが、他のアプリケーションプログラムでもよい。鉄道、航空、バス、高速道路等の交通機関が運営するサーバ装置上のサーバアプリケーション、これに対応するクライアントアプリであってもよい。これにより、改札業務や搭乗手続きといった用途でもSDeXメモリカード400を利用することができる。
【0096】
また、官公庁や地方公共団体が運営するサーバ装置上のサーバアプリケーション、これに対応するECクライアントアプリであってもよい。これにより、住民表や各種証明、登記等の用途にSDeXメモリカード400を利用することができる。
(B)図12に示したプログラムによる情報処理は、CPU、EEPROMといったハードウェア資源を用いて具体的に実現されている。つまり、プログラムと、ハードウェアとが協働した具体的手段が、使用目的に応じた情報処理を行うことにより、第1実施形態〜第7実施形態に示したSDeXメモリカード400は構築される。
【0097】
プログラムによる情報処理が、ハードウェア資源を用いて具体的に実現されていることから、上記フローチャートに処理手順を示したプログラムは、自然法則を利用した技術的思想の創作と捉えることができ、プログラム単体で発明として成立する。図12に示した処理手順は、本発明に係るプログラムの実施行為の形態を開示するものである。
尚、第1実施形態〜第7実施形態は、SDeXメモリカード400に組み込まれた態様で、本発明に係るプログラムの実施行為についての実施形態を示したが、SDeXメモリカード400から分離して、第1実施形態〜第7実施形態に示したプログラム単体を実施してもよい。プログラム単体の実施行為には、これらのプログラムを生産する行為(1)や、有償・無償によりプログラムを譲渡する行為(2)、貸与する行為(3)、輸入する行為(4)、双方向の電子通信回線を介して公衆に提供する行為(5)、店頭展示、カタログ勧誘、パンフレット配布により、プログラムの譲渡や貸渡を、一般ユーザに申し出る行為(6)がある。
【0098】
双方向の電子通信回線を介した提供行為(5)の類型には、提供者が、プログラムをユーザに送り、ユーザに使用させる行為や(プログラムダウンロードサービス)、プログラムを提供者の手元に残したまま、そのプログラムの機能のみを電子通信回線を通じて、ユーザに提供する行為(機能提供型ASPサービス)がある。
(C)図12のフロ−チャ−トにおいて時系列に実行される各ステップの「時」の要素を、発明を特定するための必須の事項と考える。そうすると、これらのフロ−チャ−トによる処理手順は、制御方法の使用形態を開示していることがわかる。これらのフロ−チャ−トこそ、本発明に係る制御方法の使用行為についての実施形態である。各ステップの処理を、時系列に行うことで、本発明の本来の目的を達成し、作用及び効果を奏するよう、これらのフロ−チャ−トの処理を行うのであれば、本発明に係る半導体メモリカードの制御方法の実施行為に該当することはいうまでもない。
【0099】
(D)第1実施形態〜第7実施形態において耐タンパモジュール内外の不揮発メモリをEEPROMとして説明したが、不揮発メモリであればFeRAM等他のものを採用してもよい。
(E)SDポータブルデバイス300は、携帯電話タイプのものを一例にして説明したが、民生用の携帯オーディオ機器やSTB(Set Top Box)や携帯電話であってもよい。
(F)金銭に準ずるセキュアな情報として、年間の取引明細を一例にしたが、機密性が求められる情報であれば、マイレージ、クーポン、個人情報、企業秘密情報等の他の情報であってもよい。
【0100】
(G)ECアプリ固有のファイルシステム領域として領域拡張部11は、パーティションを割り当てたが、他の論理領域をECアプリ固有のファイルシステム領域にしてもよい。例えば1つのディレクトリをECアプリ固有のファイルシステム領域にしてもよい。
【産業上の利用可能性】
【0101】
本発明に係る半導体メモリカードは、TRMの規模を増やすことなく、セキュアな領域を拡大することができるので、守秘が求められる様々なデータの格納に最適であり、民生機器業界を初め産業界の様々な分野で利用される可能性を有する。
【図面の簡単な説明】
【0102】
【図1】SDeXメモリカードの使用環境を示す図。
【図2】本発明にかかる半導体メモリカードの内部構成を示す図。
【図3】TRM1内のハードウェア構成を示す図。
【図4】図3のTRM1内のマスクROM6とCPU7とからなる部分を、ソフトウェア構成に置き換えて描いた図。
【図5】フラッシュメモリ2及び内部EEPROM3の論理フォーマットを示す図。
【図6】ECクライアントアプリの拡張領域22、認証領域23、非認証領域24の内部構成を示す図。
【図7】パーティションの共通構成を示す図。
【図8】(a)パーティションテーブルを示す図。(b)図7のパーティション内のパーティションブートセクタを示す図。
【図9】ECサーバ100によるSDeXメモリカードのアクセス、SDポータブルデバイス300によるSDeXメモリカードのアクセスを示す図。
【図10】SDeXメモリカード、SDポータブルデバイス300、ECサーバ100間におけるコマンド・レスポンスのシーケンス図。
【図11】第2実施形態に係るOS10の内部構成を示す図。
【図12】(a)領域拡張部11及び暗復号化部14の処理手順を示すフローチャート。(b)領域拡張部11及び暗復号化部14によるファイル書き込みの処理手順を示すフローチャート。(c)領域拡張部11及び暗復号化部14によるファイル読み出しの処理手順を示すフローチャート。
【図13】第4実施形態におけるフラッシュメモリ2のアロケーションを示す図。
【図14】第4実施形態に係るTRM内メモリ3のアロケーションを示す図。
【図15】第4実施形態に係るセキュアフラッシュ領域のアクセスの過程を示す図。
【図16】セキュアフラッシュ領域初期化時におけるOS10の処理手順を示すフローチャート。
【図17】ファイルシステム生成時におけるOS10の処理手順を示すフローチャート。
【図18】OS10によるファイルシステムアクセスの処理手順を示すフローチャート。
【図19】OS10によるファイルシステム削除の処理手順を示すフローチャート。
【図20】第5実施形態に係るメモリモジュールの構成を示す図。
【図21】フラッシュメモリ、FeRAMの性能比較を示す図。
【図22】ファイルエントリーやFAT、クリア処理管理テーブルというような、更新頻度が高いデータが配されたFeRAMを示す図。
【図23】第6実施形態に係るTRM内メモリ3の内部構成を示す図。

【特許請求の範囲】
【請求項1】
耐タンパモジュールと、不揮発メモリとを備える半導体メモリカードであって、
耐タンパモジュールは、内部メモリと、処理部とを含み、
耐タンパモジュールの内部メモリには、耐タンパモジュール内に格納される一のプログラムにより利用される利用領域があり、
前記処理部は、
前記プログラムに不揮発メモリ上の領域に割り当て、当該割当領域についてのアクセス情報を耐タンパモジュールの内部メモリ上に生成することにより、利用領域と、割当領域とを合わせた領域全体を、前記プログラムの利用に供し、
前記耐タンパモジュールの内部メモリには、第1の領域テーブルと、第2の領域テーブルとが格納されており、
第1の領域テーブルは、耐タンパモジュールにおける内部メモリ上の利用領域の所在及び大きさを示す領域テーブルであり、
第2の領域テーブルは、不揮発メモリ上の割当領域の所在及び大きさを示す領域テーブルであり、
前記アクセス情報とは、第2の領域テーブルである
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項2】
前記処理部は、
前記割当領域についてのアクセス情報を生成する際、割当領域をアクセスするにあたって、プログラムが用いる暗号鍵を割り当てる割当部と、
プログラムが前記不揮発メモリ上の割当領域にデータを書き込もうとする際、当該データを暗号化する暗号化部と、
プログラムが前記不揮発メモリ上の割当領域からデータを読み出そうとする際、当該データを復号化する復号化部と
を備えることを特徴とする請求項1記載の半導体メモリカード。
【請求項3】
前記処理部は、前記プログラムからセキュリティレベルを受け付ける受付部と、
セキュリティレベルがとり得る複数の値と、それらの値に対応する暗号鍵のビット長、暗号方式を記憶する記憶部とを備え、
前記割当部により割り当てられる暗号鍵は、
受付部が受け付けたセキュリティレベルに対応するビット長に基づき生成され、
前記暗号化部及び復号化部による暗号化及び復号化は、
受付部が受け付けたセキュリティレベルに対応する暗号方式に基づきなされる
ことを特徴とする請求項2記載の半導体メモリカード。
【請求項4】
前記半導体メモリカードは、マルチアプリケーションプログラム対応型の半導体メモリカードであり、
前記プログラムとは、半導体メモリカードが対応しているマルチアプリケーションプログラムのうち、1つのアプリケーションプログラムであり、
前記利用領域は複数であり、個々の利用領域は、マルチアプリケーションプログラムにおける個々のアプリケーションプログラムと1対1に対応している
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項5】
半導体メモリカードに、1つのアプリケーションプログラムが追加された際、前記処理部は、このアプリケーションプログラムに対する領域割り当てを行う
ことを特徴とする請求項4記載の半導体メモリカード。
【請求項6】
前記不揮発メモリ上の割り当て領域は、ファイルシステムであり、ファイルが記録されている
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項7】
前記耐タンパモジュールはCPUを内蔵しており、前記一のプログラムは、当該CPUにより実行される
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項8】
前記半導体メモリカードは、接続された機器とのインターフェイスであるホストインターフェイスを備え、
ホストインターフェイスは、機器から発せられるコマンドが、拡張コマンドか否かの判定を行い、
前記一のプログラムは、ホストインターフェイスが拡張コマンドであると判定した場合に起動される
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項9】
前記半導体メモリカードは、高・中・低の3つのセキュアレベルを有する複数ファイルシステムを備えており、
セキュアレベルが高の第1ファイルシステムは、耐タンパモジュール内に存在し、
セキュアレベルが低の第2ファイルシステムは、タンパ非耐性メモリ上に存在し、
前記耐タンパモジュール内の利用領域と、タンパ非耐性メモリ内の割当領域とを合わせた領域全体は、セキュアレベルが中の第3ファイルシステムを構成する
ことを特徴とする請求項1記載の半導体メモリカード。
【請求項10】
耐タンパモジュールと、不揮発メモリとを備える半導体メモリカードにおいて、耐タンパモジュール内のCPUにより実行される制御プログラムであって、
耐タンパモジュールは、内部メモリを含み、
耐タンパモジュールの内部メモリには、一のアプリケーションプログラムにより利用される領域があり、
制御プログラムは、
前記アプリケーションプログラムに不揮発メモリ上の領域に割り当て、当該割当領域についてのアクセス情報を耐タンパモジュールの内部メモリ上に生成することにより、利用領域と、割当領域とを合わせた領域全体を、前記アプリケーションプログラムの利用に供し、
前記耐タンパモジュールの内部メモリには、第1の領域テーブルと、第2の領域テーブルとが格納されており、
第1の領域テーブルは、耐タンパモジュールにおける内部メモリ上の利用領域の所在及び大きさを示す領域テーブルであり、
第2の領域テーブルは、不揮発メモリ上の割当領域の所在及び大きさを示す領域テーブルであり、
前記アクセス情報とは、第2の領域テーブルである
ことを特徴とする制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate


【公開番号】特開2009−176306(P2009−176306A)
【公開日】平成21年8月6日(2009.8.6)
【国際特許分類】
【出願番号】特願2009−15298(P2009−15298)
【出願日】平成21年1月27日(2009.1.27)
【分割の表示】特願2004−23798(P2004−23798)の分割
【原出願日】平成16年1月30日(2004.1.30)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.EEPROM
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】