JP2007206959A - Icカード,情報処理システム,集積回路チップ,およびデータ処理装置 - Google Patents

Icカード,情報処理システム,集積回路チップ,およびデータ処理装置 Download PDF

Info

Publication number
JP2007206959A
JP2007206959A JP2006024673A JP2006024673A JP2007206959A JP 2007206959 A JP2007206959 A JP 2007206959A JP 2006024673 A JP2006024673 A JP 2006024673A JP 2006024673 A JP2006024673 A JP 2006024673A JP 2007206959 A JP2007206959 A JP 2007206959A
Authority
JP
Japan
Prior art keywords
file systems
data
command
packet
memory
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.)
Pending
Application number
JP2006024673A
Other languages
English (en)
Other versions
JP2007206959A5 (ja
Inventor
Katsuyuki Teruyama
勝幸 照山
Sunao Morita
直 森田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2006024673A priority Critical patent/JP2007206959A/ja
Publication of JP2007206959A publication Critical patent/JP2007206959A/ja
Publication of JP2007206959A5 publication Critical patent/JP2007206959A5/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 1つのコマンドにより複数のシステム内メモリを書き換える場合に,電源断などで一部のシステム内メモリが書き換えられないような状況が発生したときであっても,リーダライタまたはホストコントローラの処理を複雑にすることなく,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持することの可能なICカード,情報処理システム,集積回路チップ,およびデータ処理装置を提供する。
【解決手段】 リーダライタは,複数のファイルシステムに対して複数のコマンドパケットが連結された1つのコマンドパケットを送信し,ICカードは,1つのコマンドパケットを受信して分解し,分解されたコマンドパケットを対応するファイルシステムに渡すとともに,複数のファイルシステムからの複数のレスポンスパケットを連結し,1つのレスポンスパケットとしてリーダライタに送信する。
【選択図】 図3

Description

本発明はICカード,情報処理システム,集積回路チップ,およびデータ処理装置にかかり,特に,ICカード内に複数のファイルシステムが存在する状況で,1つのコマンドにより複数のファイルシステム内のメモリ(システム内メモリ)を書き換える場合に,電源断などで一部のシステム内メモリが書き換えられないような状況が発生したとき,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持する技術に関する。
ICカードを用いた情報処理システムとして,ICカードの単一のメモリ領域上にサービス提供元事業者ごとのファイルシステムを割り当て,単一のICカードを複数の事業者で共有する情報処理システムが実現されている(例えば,特許文献1参照。)。このような情報処理システムにおけるICカードの構成例を,図12を参照しながら説明する。図12に示したように,ICカード700においてそれぞれのファイルシステム710,720は,内部からのアクセスはメモリ管理システムで隔離されており,また,外部からの通信パケットによるアクセスは暗号通信機能で離隔されている。ICカード700の読み取りおよび書き込みを行う装置(リーダライタ)は,個別に暗号化されたそれぞれのファイルシステム710,720に対応するコマンドをコマンドパケットとしてICカード700に送り,ICカード700ではそのコマンドを各ファイルシステム710,720内で処理する。
特開2005−196411号公報
ところで,ICカード内に複数のファイルシステムが存在する状況で,1つのコマンドにより複数のシステム内メモリを書き換える場合に,電源断などで一部のシステム内メモリが書き換えられないような状況が発生したとき,ICカード内の1つのファイルシステムにおけるロールバックは保証されていたが,複数システム間でのロールバックは保証されていなかった。このため,ICカード内の処理が複数に分かれてしまい,どこまでロールバックすればよいかアプリケーションによって異なり,リーダライタまたはホストコントローラの処理が複雑になっていた。
本発明は,上記背景技術が有する問題点に鑑みてなされたものであり,本発明の目的は,1つのコマンドにより複数のシステム内メモリを書き換える場合に,電源断などで一部のシステム内メモリが書き換えられないような状況が発生したときであっても,リーダライタまたはホストコントローラの処理を複雑にすることなく,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持することの可能な,新規かつ改良されたICカード,情報処理システム,集積回路チップ,およびデータ処理装置を提供することである。
上記課題を解決するため,本発明の第1の観点によれば,複数のファイルシステムを記憶するICカードが提供される。本発明のICカードは,前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御するカード制御部と,を含む。そして,前記カード制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする。
かかるICカードによれば,例えばリーダライタなど外部から送信される1つのコマンドパケットが複数のファイルシステムに対するものである場合に,そのコマンドパケットを分解し,分解されたコマンドパケットを対応するファイルシステムに渡すとともに,複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとして外部に送信することが可能である。このようにして,それぞれのファイルシステムにおける処理が確実に終了したことを確認した後に,システム全体の管理データを更新することが可能である。従来技術では,これらの処理がファイルシステムごとに別々に実行されるため,途中で電源断などの異常が発生すると,どの時点までロールバックすればよいか判断が難しいという問題が生じていた。この点,本発明によれば,ICカード内の処理や外部のリーダライタやホストコントローラの処理を複雑にすることなく,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持することが可能である。
本発明のICカードにおいて,各ファイルシステムおよびカード制御部は具体的には例えば以下のように構成されて,メモリアクセス処理およびメモリアクセスコミット処理を行うことが可能である。
前記各ファイルシステムの一構成例としては,前記各ファイルシステムは,前記各ファイルシステム内のデータを記憶するシステム内メモリと,前記システム内メモリを管理するメモリ管理部と,前記メモリ管理部を通じて前記システム内メモリにアクセスし(メモリアクセス処理),レスポンスパケットにレスポンスデータをセットするコマンド処理部と,前記コマンドパケットおよびレスポンスパケットの暗号処理(暗号化処理・復号処理)を行う暗号処理部と,を含む構成を採用することができる。
また,前記カード制御部は,例えば,前記複数のファイルシステムからの複数のレスポンスパケットに応じて,前記システム連携データ領域内のシステム全体の管理データを更新する(メモリアクセスコミット処理)ことが可能である。
また,前記複数のファイルシステムは,相互にアクセスを禁止されているものとすることが可能である。かかる構成によれば,このICカードを利用したサービス提供者が個別にシステムを構築し,サービスを開始したそれぞれのサービスを1枚のICカードに入れることができ,各サービスを連携させて安全な決済サービスを構築することが可能である。
上記課題を解決するため,本発明の第2の観点によれば,複数のファイルシステムを記憶するICカードと,前記ICカードとの間で通信を行い情報を処理する情報処理装置とを含む情報処理システムが提供される。本発明の情報処理システムにおいて,前記情報処理装置は,複数のファイルシステムに対して複数のコマンドパケットが連結された1つのコマンドパケットを送信する。そして,前記ICカードは,前記1つのコマンドパケットを受信して分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し,1つのレスポンスパケットとして前記情報処理装置に送信することを特徴とする。
かかるシステムによれば,情報処理装置(例えば,リーダライタ)から送信される1つのコマンドパケットが複数のファイルシステムに対するものである場合に,そのコマンドパケットを分解し,分解されたコマンドパケットを対応するファイルシステムに渡すとともに,複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとして外部に送信することが可能である。このようにして,それぞれのファイルシステムにおける処理が確実に終了したことを確認した後に,システム全体の管理データを更新することが可能である。従来技術では,これらの処理がファイルシステムごとに別々に実行されるため,途中で電源断などの異常が発生すると,どの時点までロールバックすればよいか判断が難しいという問題が生じていた。この点,本発明によれば,ICカード内の処理や情報処理装置(例えば,リーダライタ)やホストコントローラの処理を複雑にすることなく,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持することが可能である。
本発明の情報処理システムにおいて,ICカードは,具体的には例えば以下のように構成されて,メモリアクセス処理およびメモリアクセスコミット処理を行うことが可能である。
ICカードの各ファイルシステムの一構成例としては,前記各ファイルシステムは,前記各ファイルシステム内のデータを記憶するシステム内メモリと,前記システム内メモリを管理するメモリ管理部と,前記メモリ管理部を通じて前記システム内メモリにアクセスし(メモリアクセス処理),レスポンスパケットにレスポンスデータをセットするコマンド処理部と,前記コマンドパケットおよびレスポンスパケットの暗号処理(暗号化処理・復号処理)を行う暗号処理部と,を含む構成を採用することができる。
また,前記ICカードは,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとするとともに,システム全体の管理データを更新する(メモリアクセスコミット処理)ことが可能である。
また,前記複数のファイルシステムは,相互にアクセスを禁止されているものとすることが可能である。かかる構成によれば,このICカードを利用したサービス提供者が個別にシステムを構築し,サービスを開始したそれぞれのサービスを1枚のICカードに入れることができ,各サービスを連携させて安全な決済サービスを構築することが可能である。
上記課題を解決するため,本発明の第3の観点によれば,複数のファイルシステムを記憶するメモリを備えた集積回路チップが提供される。本発明の集積回路チップは,前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御する制御部と,を含む。そして,前記制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする。
上記課題を解決するため,本発明の第4の観点によれば,複数のファイルシステムを記憶するメモリを備えた集積回路チップを搭載したデータ処理装置が提供される。本発明のデータ処理装置において,前記集積回路チップは,前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御する制御部と,を含む。そして,前記制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする。
以上のように,本発明によれば,情報処理装置(例えば,リーダライタ)から送信される1つのコマンドパケットが複数のファイルシステムに対するものである場合に,それぞれのファイルシステムにおける処理が確実に終了したことを確認した後に,システム全体の管理データを更新し,処理結果を返信することが可能である。このようにして,ICカード内の処理や情報処理装置(例えば,リーダライタ)の処理を複雑にすることなく,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持することが可能である。
以下に添付図面を参照しながら,本発明にかかるICカード,情報処理システム,集積回路チップ,およびデータ処理装置の好適な実施形態について詳細に説明する。なお,本明細書および図面において,実質的に同一の機能構成を有する構成要素については,同一の符号を付することにより重複説明を省略する。
(1)システム構成(図1)
図1は,本実施形態にかかる情報処理システムの構成を示す説明図である。
本実施形態にかかる情報処理システムは,図1に示したように,ICカード100と,コントローラA200と,コントローラB300と,リーダライタ450を備えたコントローラC400と,を含んで構成されている。以下,各システム構成要素について説明する。
ICカード100は,カード型のデータ通信装置であってもよく,また,ICカード機能を有する集積回路チップを携帯電話機等の情報通信端末機器(データ処理装置)に内蔵したものであってもよい。ICカードが機器に内蔵される場合であっても,機器に着脱可能に構成される場合であっても,本明細書では便宜上「ICカード」と称する場合がある。また,ICカード機能を有する集積回路チップは,例えば携帯電話機やPDAなどの携帯端末,あるいはパーソナルコンピュータ(PC)などの情報処理端末に搭載されて外部機器とデータ通信を行う。この場合,リーダライタ装置と有線あるいは無線で接続するためのインタフェース以外に,外部機器接続用のインタフェースを備えている。
ICカード100には,1つ以上のファイルシステムが格納されている。本実施形態では,一例として,ICカード内のファイルシステムが2つであり,上位コントローラが2つの場合を想定して説明する。ICカード100の構成については,図2を参照しながらさらに後述する。
コントローラA200,コントローラB300は上位コントローラであり,コントローラC400を介してICカード100と通信する。コントローラA200,コントローラB300には,ICカード100内のファイルシステムに対応したアプリケーションが含まれている。コントローラA200,コントローラB300は,ICカード100内のファイルシステムと暗号鍵を共有する。
コントローラC400は下位コントローラであり,上位コントローラであるコントローラA200,コントローラB300とリーダライタ450との間でパケットの受け渡しを行う。コントローラC400は,コントローラA200,コントローラB300それぞれからの2つのコマンドパケットを連結して1つのコマンドパケットとする。また,コントローラC400は,コントローラA200およびコントローラB300に対する1つのレスポンスパケットをそれぞれに対するレスポンスパケットに分解する。また,コントローラC400は,ICカード100と通信するリーダライタ450を直接制御する。
リーダライタ450は,ICカード100と直接通信を行い,ICカード100に記録されたデータの読み出しおよび書き込みを行う機能を有する。ICカード100とリーダライタ450との間のデータ通信は,例えば電磁誘導の原理に基づく無線通信により実現される。リーダライタ450はコントローラC400に接続されている。リーダライタ450とホスト400とは一体の構成であってもよく,また,ケーブル等を介して空間的に離隔された構成であってもよい。
(2)ICカード100の構成(図2)
図2は,ICカード100に記憶されるデータの構成を示す説明図である。
ICカード100のメモリには,図2に示したように,ファイルシステム110,120と,1つのシステム連携データ領域140とが含まれている。なお,ファイルシステムの数は1つ以上の任意数であるが,本実施形態では一例として,2つのファイルシステムを記憶する場合について説明する。ファイルシステム110,120には内部データと管理データが登録されている。システム連携データ領域140にはシステム全体の管理データが含まれる。
ICカード100には,アクセス制御を行うためにメモリ管理機能(後述のメモリ管理部130)と暗号通信機能(後述の暗号処理部118,128)が含まれている。メモリ管理機能は,ICカード内部のメモリアクセス制御を行う。あるシステムから別システムへのメモリアクセスは禁止し,すべてのシステムからシステム連携データ領域へのメモリアクセスは許可する。また,暗号通信機能は,外部からの通信パケットにおけるメモリアクセス制御を行う。あるシステム内のデータへのアクセスには,そのデータに対応する事前に生成された鍵を必要とする。
(3)機能ブロック図(図3)
図3は,ICカード100を機能面から見た構成を示す説明図である。
ICカード100内部には,図3に示したように,ファイルシステム110,120と,メモリ管理部130と,システム連携データ領域140と,カード制御部150と,コマンド受信部160と,レスポンス送信部170と,が含まれている。ファイルシステム110,120と,システム連携データ領域140は,図1に対応するものである。
ファイルシステム110は,システムAの管理データ112と,システムA用の機能部として,メモリ管理部114と,コマンド処理部116と,暗号処理部118とを含む。また,ファイルシステム120は,システムBの管理データ122と,システムB用の機能部として,メモリ管理部124と,コマンド処理部126と,暗号処理部128とを含む。
暗号処理部118,128は,外部からの通信パケットにおけるメモリアクセス制御を行う。ファイルシステム110,120内のデータへのアクセスには,そのデータに対応する事前に生成された鍵を必要とする。そして,暗号処理部118,128でレスポンスパケットの暗号化処理を行い,その結果をカード制御部150へ渡す。カード制御部150は,結果を見て,システム連携データ領域140内のシステム全体の管理データを更新する(メモリアクセスコミット処理)。その後,レスポンスパケットを連結し,レスポンス送信部170でレスポンスパケットを送信する。
カード制御部150は,システム連携データ140に基づいて,ファイルシステム110,120のデータを制御する。カード制御部130は,ファイルシステム110,120に対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応するファイルシステム110,120に渡すとともに,ファイルシステム110,120からの複数のレスポンスパケットを連結し1つのレスポンスパケットとする。具体的な処理シーケンスについては,図7〜図11を参照しながらさらに後述する。
メモリ管理部130は,ICカード100内部のメモリアクセス制御を行う。メモリ管理部130は,ファイルシステム110からファイルシステム120へ,またはその逆のメモリアクセスは禁止し,ファイルシステム110,120からシステム連携データ領域140へのメモリアクセスは許可する。
コマンド受信部160は,コマンドを受信するとそのコマンドパケットをカード制御部150へ渡す。カード制御部150では,連結されたコマンドパケットを分解し,そのパケットの先頭を解釈して,対応するシステムの暗号処理部118,128へ渡す。暗号処理部では,コマンドパケットの復号処理を行い,その結果をコマンド処理部116,126へ渡す。コマンド処理部116,126は,メモリ管理部114,124を通じてデータおよびシステム内の管理データ112,122へアクセスし(メモリアクセス処理),レスポンスパケットにレスポンスデータをセットする。
(4)パケット構造(図4〜図6)
本実施形態におけるメモリアクセス用のパケットは,2つの暗号化されたパケットで構成される。アクセス対象のシステムに対して相互認証処理などを行うことで鍵を事前に生成し,上位コントローラであるコントローラA200,コントローラB300と,ICカード100で共有する。図4はコマンドパケットを示し,図5はレスポンスパケットを示す。また,図6は,図4のコマンドパケット500と図5のレスポンスパケットにおける各フィールドの名称および説明をまとめたものである。
コマンドパケット500は,図4に示したように,パケット全体の長さを表すLENフィールド502と,パケット連結コマンドを表すPLUSCMDフィールド504と,システムA用のフィールド506〜514と,システムB用のフィールド516〜524を含んで構成される。
システムA用のフィールドとしては,システムAのコマンドパケット長を表すLEN_Aフィールド506と,メモリアクセスコマンド(WRITE/READ)を表すMEMCMDフィールド508と,システムAの識別子を表すSYS_Aフィールド510と,システムA内の対象データのアドレスを表すDEST_Aフィールド512と,WRITE時のデータを表すWRITEDATA_Aフィールド514と,を含む。
システムB用のフィールドとしては,システムBのコマンドパケット長を表すLEN_Bフィールド516と,メモリアクセスコマンド(WRITE/READ)を表すMEMCMDフィールド518と,システムBの識別子を表すSYS_Bフィールド520と,システムB内の対象データのアドレスを表すDEST_Bフィールド522と,WRITE時のデータを表すWRITEDATA_Bフィールド524と,を含む。
なお図4に示した一例では,複数のファイルシステムが同じ構造を持っている場合について示したが,本発明はこれに限定されない。例えば,異なる方式の共通鍵暗号を利用することも可能である。この場合例えば,一方のファイルシステムでは64ビット鍵のブロック暗号を使用するのに対し,もう一方のファイルシステムでは128ビット鍵のブロック暗号を使用することが可能である。以下の図についても同様である。
レスポンスパケット600は,図5に示したように,パケット全体の長さを表すLENフィールド602と,パケット連結レスポンスを表すPLUSRESフィールド604と,システムA用のフィールド606〜614と,システムB用のフィールド616〜624を含んで構成される。
システムA用のフィールドとしては,システムAのレスポンスパケット長を表すLEN_Aフィールド606と,メモリアクセスレスポンス(WRITE/READ)を表すMEMRESフィールド608と,システムAの識別子を表すSYS_Aフィールド610と,コマンド処理結果を表すST_Aフィールド612と,READ時のデータを表すREADDATA_Aフィールド614と,を含む。
システムB用のフィールドとしては,システムBのレスポンスパケット長を表すLEN_Bフィールド616と,メモリアクセスレスポンス(WRITE/READ)を表すMEMRESフィールド618と,システムBの識別子を表すSYS_Bフィールド620と,コマンド処理結果を表すST_Bフィールド622と,READ時のデータを表すREADDATA_Bフィールド624と,を含む。
(5)シーケンス(図7)
図7は,処理シーケンスを示す流れ図である。
コントローラC400がシーケンスを開始する。コントローラC400は,上位コントローラのA200に相互認証コマンドを要求する(ステップS102)。コントローラA200は相互認証コマンドAをコントローラC400に送信する(ステップS104)。コントローラC400は相互認証コマンドAをリーダライタ経由でICカード100へ送信する(ステップS106)。ICカード100は,システムA110で相互認証処理を行い,その結果を相互認証レスポンスAとして返送する(ステップS108)。コントローラC400は,その相互認証レスポンスAを上位コントローラAへ渡し(ステップS110),相互認証処理結果をもらう(ステップS114)。
上位コントローラBに対しても同様の処理を行う(ステップS116〜S126)。すなわち,コントローラC400は,上位コントローラのB300に相互認証コマンドを要求する(ステップS116)。コントローラB300は相互認証コマンドBをコントローラC400に送信する(ステップS118)。コントローラC400は相互認証コマンドBをリーダライタ経由でICカード100へ送信する(ステップS118)。ICカード100は,システムB120で相互認証処理を行い,その結果を相互認証レスポンスBとして返送する(ステップS120)。コントローラC400は,その相互認証レスポンスBを上位コントローラBへ渡し(ステップS124),相互認証処理結果をもらう(ステップS126)。
この時点で,上位コントローラA200およびコントローラB300と,ICカード100内の対応するシステムとは,それぞれ同一の鍵を共有している。
次に,コントローラC400は,上位のコントローラA200,コントローラBからメモリアクセスコマンドをそれぞれ取得し,それらを連結して,1つのパケットとしてICカード100へ送信する。
まず,コントローラC400は,上位コントローラのA200にメモリアクセスコマンドを要求する(ステップS128)。コントローラA200はメモリアクセスコマンドAをコントローラC400に送信する(ステップS128)。同様に,コントローラC400は,上位コントローラのB300にメモリアクセスコマンドを要求する(ステップS130)。コントローラB300はメモリアクセスコマンドBをコントローラC400に送信する(ステップS132)。
そして,コントローラC400は,メモリアクセスコマンドAとメモリアクセスコマンドBを連結して(ステップS134)。1つのパケットとしてICカード100へ送信する(ステップS136)。
ICカード100では受信したパケットを分離し,それぞれのシステムで保持する鍵によりパケットを復号し,メモリアクセス処理を行う(ステップS138)。さらに,2つのレスポンスを受け取り(ステップS140),これらを連結して1つのパケットとして,コントローラC400へ返送する(ステップS142)。なお,ICカード内部の処理については,図8を参照しながらさらに後述する。
そして,コントローラC400はそのレスポンスを分離し,上位のコントローラへレスポンス処理を要求し,そのレスポンス処理結果をもらう。
まず,コントローラC400は,上位コントローラのA200にメモリアクセスレスポンス処理を要求する(ステップS146)。コントローラA200はメモリアクセスレスポンス処理結果AをコントローラC400に送信する(ステップS148)。同様に,コントローラC400は,上位コントローラのB300にメモリアクセスレスポンス処理を要求する(ステップS150)。コントローラB300はメモリアクセスレスポンス処理結果BをコントローラC400に送信する(ステップS152)。
以上,処理シーケンスについて説明した。次いで,上記のICカード内部の処理(ステップS138,S140)について詳述する。
(6)メモリアクセスコマンドの処理シーケンス(図8)
図8は,メモリアクセスコマンドの処理シーケンスを示す説明図である。
メモリアクセスコマンドにおいてメモリ管理部130が行う処理は,各システム内でのメモリアクセス処理とメモリアクセスコミット処理に分かれている。
(メモリリードの場合)
メモリアクセス処理でシステム内の管理データから内部データを取り出し,コミット処理では何も行わない。
(メモリライトの場合)
メモリアクセス処理でシステム内の管理データと内部データを更新し,コミット処理でシステム全体の管理データを更新する。以下,図8を参照しながら説明する。
カード制御部150は,コマンドパケットを受信すると(ステップS202),最初のコマンドパケットについて対応するシステムにパケットを渡す(ステップS204)。本実施形態では,まずシステムAにパケットを渡し,次にシステムBにパケットを渡すものとして説明する。
カード制御部150から暗号処理部118に対して,暗号化されたコマンドパケットAが送られる(ステップS206)。暗号処理部118は,パケットを復号して(ステップS208),コマンドパケットAをコマンド処理部116に渡す(ステップS210)。コマンド処理部116では,以下のコマンド処理が行われる。まず,コマンド処理部116は,メモリ管理部114に対して,メモリアクセス要求を行う(ステップS212)。メモリ管理部114はメモリアクセス処理を行い(ステップS214),アクセス結果Aをコマンド処理部116に返送する(ステップS216)。コマンド処理部116は,暗号処理部118に対してレスポンスパケットAを送信する(ステップS218)。暗号処理部118はパケットを暗号化し(ステップS220),その暗号化されたレスポンスパケットAをカード制御部150に送る(ステップS222)。
次のコマンドパケットについて,対応するシステム(システムB)へパケットを渡し(ステップS224),システムBに対しても同様の処理を行う(ステップS226〜S242)。すなわち,カード制御部150から暗号処理部128に対して,暗号化されたコマンドパケットBが送られる(ステップS226)。暗号処理部128は,パケットを復号して(ステップS228),コマンドパケットBをコマンド処理部126に渡す(ステップS230)。コマンド処理部126では,以下のコマンド処理が行われる。まず,コマンド処理部126は,メモリ管理部124に対して,メモリアクセス要求を行う(ステップS232)。メモリ管理部124はメモリアクセス処理を行い(ステップS234),アクセス結果Bをコマンド処理部126に返送する(ステップS236)。コマンド処理部126は,暗号処理部128に対してレスポンスパケットBを送信する(ステップS238)。暗号処理部128はパケットを暗号化し(ステップS240),その暗号化されたレスポンスパケットBをカード制御部150に送る(ステップS242)。
暗号化されたレスポンスパケットA,Bが送られた後,カード制御部150は,メモリ管理部114,124に対して,メモリアクセスコミット要求を出す(ステップS244)。メモリ管理部114,124はメモリアクセスコミット処理を行い(ステップS246),コミット結果をカード制御部150に送る(ステップS248)。
コミット結果を受け取ったカード制御部150は,2つレスポンスパケットA,Bをマージして(ステップS250),レスポンスパケットを送信する(ステップS252)。
(7)メモリ管理部(図9)
図9は,メモリアクセス処理およびメモリアクセスコミット処理を示す説明図である。
メモリ管理部130では,電源断に対応するため,不揮発性メモリ上で管理データを二重に保持している。これらを有効面,無効面と呼ぶ。システムA110ではTBL_A1,TBL_A2を,システムB120ではTBL_B1,TBL_B2を保持し,システム連携データ領域140内の管理データSWで上記管理データの有効面を指し示す。
メモリライトにおけるメモリアクセス処理では,それぞれのシステムの管理データの無効面を更新する(ステップS302,S304)。無効面を更新することで,電源断が発生しても外部から見えるデータには変化がない。次のメモリアクセスコミット処理では,全システムの有効面を指し示す管理データSWを更新する(ステップS306)。以上の処理で,システム全体の管理テーブルが更新されたものとして扱う。
(8)電源断後の復旧処理(図10,図11)
図10,図11は,電源断後の復旧処理を示す説明図である。
電源断後の復旧処理は,起動時のメモリ管理部130の初期化処理に含まれている。
図9において有効面と無効面を持つ管理データ(TBL_A1,TBL_A2,TBL_B1,TBL_B2)には,それぞれカウンターとチェックブロックが含まれている。カウンターは管理データが更新されるたびに加算される。チェックブロックは管理データのエラーを検出し,管理データが更新されるたびに再計算される。また,SWにはエラー検出のためチェックブロックが含まれている。
メモリ管理部130の初期化は,SW,TBL_A,TBL_Bの順番でエラーチェックを行い,TBL_AとTBL_Bの管理データの有効面を選択する処理である。エラーが発生した場合,TBL_AまたはTBL_Bのエラーとカウンターの内容にしたがって,TBL_AまたはTBL_Bの有効面が選択される。2面ともエラーが発生している場合は異常終了とし,ICカードを正常起動させないようにする。
具体的には図10に示したように,まずSWのエラーチェックを行う(ステップS402)。SWにエラーがある場合には,TBL_A選択処理(ステップS404),TBL_B選択処理(ステップS406)を順に行い,SWを更新する(S408)。
SWのエラーチェック(ステップS402)でエラーがない場合には,TBL_A(SW)のエラーチェックを行う(ステップS410)。そして,TBL_A(SW)にエラーがある場合には,TBL_A選択処理(ステップS412)を行い,SWを更新する(S414)。
TBL_A(SW)のエラーチェック(ステップS410)でエラーがない場合には,TBL_B(SW)のエラーチェックを行う(ステップS416)。そして,TBL_B(SW)にエラーがある場合には,TBL_B選択処理(ステップS418)を行い,SWを更新する(S420)。また,TBL_B(SW)にエラーがない場合には,正常終了する。
図10に示した処理において,TBL_AまたはTBL_Bの選択処理が行われた場合,選択された有効面をSWへ反映させ,次回起動時は正常処理が行われるようにする。
具体的には図11に示したように,TBL_1とTBL_2のエラーチェックを行う(ステップS502)。そして,TBL_1とTBL_2がともにエラーのときには異常終了する。
また,TBL_1とTBL_2のエラーチェック(ステップS502)により,TBL_1とTBL_2にともにエラーがない場合には,TBL_1とTBL_2のカウンター比較を行う(ステップS504)。TBL_1≧TBL_2の場合にはTBL_1を選択し(ステップS506),TBL_1<TBL_2の場合にはTBL_2を選択する(ステップS508)。
また,TBL_1とTBL_2のエラーチェック(ステップS502)により,TBL_1またはTBL_2のいずれかがエラーのときは,TBL_1とTBL_2のいずれがエラーかを判定する(ステップS510)。TBL_2がエラーの場合にはTBL_1を選択し(ステップS512),TBL_1がエラーの場合にはTBL_2を選択する(ステップS514)。
(本実施形態の効果)
1つのコマンドパケットが複数のファイルシステムに対するものである場合,例えば,ICカード内で,一方のシステムには電子マネーサービスが,もう一方のシステムにはチケットサービスが登録されている状態で,電子マネーでチケットを購入するような場合,電子マネーからチケットの代金を引き,チケットサービスにバリューを書き込む。従来技術では,これらの処理が別々に実行されるため,途中で電源断などの異常が発生すると,チケットがうまく購入できなかったのか,購入できて使われた状態なのか判断するために,リーダライタやホストコントローラの処理が複雑になる。この点,本実施形態によれば,このような中途半端な状態を避けることができる。
さらに,個別にファイルシステムを構築しサービスを開始したそれぞれのサービスを1枚のICカードに入れ,連携させて安全な決済サービスが構築できる。
以上,添付図面を参照しながら本発明にかかるICカード,情報処理システム,集積回路チップ,およびデータ処理装置の好適な実施形態について説明したが,本発明はかかる例に限定されない。当業者であれば,特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり,それらについても当然に本発明の技術的範囲に属するものと了解される。
(産業上の利用可能性)
本発明はICカード,情報処理システム,集積回路チップ,およびデータ処理装置に利用可能であり,特に,ICカード内に複数のファイルシステムが存在する状況で,1つのコマンドにより複数のファイルシステム内のメモリ(システム内メモリ)を書き換える場合に,電源断などで一部のシステム内メモリが書き換えられないような状況が発生したとき,すでに書き換えたシステム内メモリを元に戻し,以前の状態を保持する技術に利用可能である。
本発明の一実施形態にかかる情報処理システムを示す説明図である。 本発明の一実施形態にかかるICカードを示す説明図である。 本発明の一実施形態にかかるICカードの制御方法を示す説明図である。 コマンドパケットを示す説明図である。 レスポンスパケットを示す説明図である。 パケット要素を示す説明図である。 ICカードの制御シーケンスを示す説明図である。 メモリアクセスコマンドの処理シーケンスを示す説明図である。 メモリアクセス処理およびメモリアクセスコミット処理を示す説明図である。 電源断後の復旧処理を示す説明図である。 電源断後の復旧処理を示す説明図である。 従来のICカードを示す説明図である。
符号の説明
100 ICカード
110 システムA
112 管理データ
114 メモリ管理部
116 コマンド処理部
118 暗号処理部
120 システムB
122 管理データ
124 メモリ管理部
126 コマンド処理部
128 暗号処理部
130 メモリ管理部
140 システム連携データ領域
150 カード制御部
160 コマンド受信部
170 レスポンス送信部
200 コントローラA
300 コントローラB
400 コントローラC
450 リーダライタ
500 コマンドパケット
600 レスポンスパケット

Claims (16)

  1. 複数のファイルシステムを記憶するICカードであって,
    前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,
    前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御するカード制御部と,
    を含み,
    前記カード制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする,ICカード。
  2. 前記各ファイルシステムは,
    前記各ファイルシステム内のデータを記憶するシステム内メモリと,
    前記システム内メモリを管理するメモリ管理部と,
    前記メモリ管理部を通じて前記システム内メモリにアクセスし,レスポンスパケットにレスポンスデータをセットするコマンド処理部と,
    前記コマンドパケットおよびレスポンスパケットの暗号処理を行う暗号処理部と,
    を含むことを特徴とする,請求項1に記載のICカード。
  3. 前記カード制御部は,
    前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとするとともに,前記システム連携データ領域内のシステム全体の管理データを更新することを特徴とする,請求項1に記載のICカード。
  4. 前記複数のファイルシステムは,相互にアクセスを禁止されていることを特徴とする,請求項1に記載のICカード。
  5. 複数のファイルシステムを記憶するICカードと,前記ICカードとの間で通信を行い情報を処理する情報処理装置とを含む情報処理システムであって,
    前記情報処理装置は,複数のファイルシステムに対して複数のコマンドパケットが連結された1つのコマンドパケットを送信し,
    前記ICカードは,前記1つのコマンドパケットを受信して分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し,1つのレスポンスパケットとして前記情報処理装置に送信することを特徴とする,情報処理システム。
  6. 前記各ファイルシステムは,
    前記各ファイルシステム内のデータを記憶するシステム内メモリと,
    前記システム内メモリを管理するメモリ管理部と,
    前記メモリ管理部を通じて前記システム内メモリにアクセスし,レスポンスパケットにレスポンスデータをセットするコマンド処理部と,
    前記コマンドパケットおよびレスポンスパケットの暗号処理を行う暗号処理部と,
    を含むことを特徴とする,請求項5に記載の情報処理システム。
  7. 前記ICカードは,
    前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとするとともに,システム全体の管理データを更新することを特徴とする,請求項5に記載の情報処理システム。
  8. 前記複数のファイルシステムは,相互にアクセスを禁止されていることを特徴とする,請求項5に記載の情報処理システム。
  9. 複数のファイルシステムを記憶するメモリを備えた集積回路チップであって,
    前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,
    前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御する制御部と,
    を含み,
    前記制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする,集積回路チップ。
  10. 前記各ファイルシステムは,
    前記各ファイルシステム内のデータを記憶するシステム内メモリと,
    前記システム内メモリを管理するメモリ管理部と,
    前記メモリ管理部を通じて前記システム内メモリにアクセスし,レスポンスパケットにレスポンスデータをセットするコマンド処理部と,
    前記コマンドパケットおよびレスポンスパケットの暗号処理を行う暗号処理部と,
    を含むことを特徴とする,請求項9に記載の集積回路チップ。
  11. 前記制御部は,
    前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとするとともに,前記システム連携データ領域内のシステム全体の管理データを更新することを特徴とする,請求項9に記載の集積回路チップ。
  12. 前記複数のファイルシステムは,相互にアクセスを禁止されていることを特徴とする,請求項9に記載の集積回路チップ。
  13. 複数のファイルシステムを記憶するメモリを備えた集積回路チップを搭載したデータ処理装置であって,
    前記集積回路チップは,
    前記複数のファイルシステムが記憶される複数のシステム領域と,ファイルシステム全体の管理データが記憶されるシステム連携データ領域とを含むメモリと,
    前記システム連携データに基づいて,前記複数のファイルシステムのデータを制御する制御部と,
    を含み,
    前記制御部は,前記複数のファイルシステムに対する複数のコマンドパケットが連結された1つのコマンドパケットを分解し,分解されたコマンドパケットを対応する前記ファイルシステムに渡すとともに,前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとすることを特徴とする,データ処理装置。
  14. 前記各ファイルシステムは,
    前記各ファイルシステム内のデータを記憶するシステム内メモリと,
    前記システム内メモリを管理するメモリ管理部と,
    前記メモリ管理部を通じて前記システム内メモリにアクセスし,レスポンスパケットにレスポンスデータをセットするコマンド処理部と,
    前記コマンドパケットおよびレスポンスパケットの暗号処理を行う暗号処理部と,
    を含むことを特徴とする,請求項13に記載のデータ処理装置。
  15. 前記制御部は,
    前記複数のファイルシステムからの複数のレスポンスパケットを連結し1つのレスポンスパケットとするとともに,前記システム連携データ領域内のシステム全体の管理データを更新することを特徴とする,請求項13に記載のデータ処理装置。
  16. 前記複数のファイルシステムは,相互にアクセスを禁止されていることを特徴とする,請求項13に記載のデータ処理装置。
JP2006024673A 2006-02-01 2006-02-01 Icカード,情報処理システム,集積回路チップ,およびデータ処理装置 Pending JP2007206959A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006024673A JP2007206959A (ja) 2006-02-01 2006-02-01 Icカード,情報処理システム,集積回路チップ,およびデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006024673A JP2007206959A (ja) 2006-02-01 2006-02-01 Icカード,情報処理システム,集積回路チップ,およびデータ処理装置

Publications (2)

Publication Number Publication Date
JP2007206959A true JP2007206959A (ja) 2007-08-16
JP2007206959A5 JP2007206959A5 (ja) 2009-03-12

Family

ID=38486377

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006024673A Pending JP2007206959A (ja) 2006-02-01 2006-02-01 Icカード,情報処理システム,集積回路チップ,およびデータ処理装置

Country Status (1)

Country Link
JP (1) JP2007206959A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010171721A (ja) * 2009-01-22 2010-08-05 Fuji Electric Holdings Co Ltd Icカードシステム、その上位機器、プログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11161562A (ja) * 1997-12-01 1999-06-18 Ntt Data Corp Icカード及びicカードのメモリ管理方法
JP2001142396A (ja) * 1999-11-16 2001-05-25 Dainippon Printing Co Ltd 暗号化装置とその方法、暗号復号化装置とその方法および通信システム
JP2002251524A (ja) * 2001-02-23 2002-09-06 Sony Corp 通信システム,カード,管理サーバ,通信方法,プログラム,および,プログラムを記録した記録媒体
JP2005352961A (ja) * 2004-06-14 2005-12-22 Sony Corp 情報管理装置及び情報管理方法
JP2005352962A (ja) * 2004-06-14 2005-12-22 Sony Corp 情報管理装置及び情報管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11161562A (ja) * 1997-12-01 1999-06-18 Ntt Data Corp Icカード及びicカードのメモリ管理方法
JP2001142396A (ja) * 1999-11-16 2001-05-25 Dainippon Printing Co Ltd 暗号化装置とその方法、暗号復号化装置とその方法および通信システム
JP2002251524A (ja) * 2001-02-23 2002-09-06 Sony Corp 通信システム,カード,管理サーバ,通信方法,プログラム,および,プログラムを記録した記録媒体
JP2005352961A (ja) * 2004-06-14 2005-12-22 Sony Corp 情報管理装置及び情報管理方法
JP2005352962A (ja) * 2004-06-14 2005-12-22 Sony Corp 情報管理装置及び情報管理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010171721A (ja) * 2009-01-22 2010-08-05 Fuji Electric Holdings Co Ltd Icカードシステム、その上位機器、プログラム

Similar Documents

Publication Publication Date Title
KR101778768B1 (ko) IoT 기기 제어 방법 및 시스템
CN101103628B (zh) 主机装置、便携式存储装置以及用于更新元信息的方法
CN101010656B (zh) 操作系统无关的代理
JP4175386B2 (ja) 情報処理システム、情報処理装置、および集積回路チップ
US8811619B2 (en) Encryption key management system and methods thereof
US8909900B2 (en) Storage device and method for updating data in a partition of the storage device
US11171774B2 (en) System for synchronizing a cryptographic key state through a blockchain
US8156331B2 (en) Information transfer
JP4681314B2 (ja) 無線通信システム,リーダ/ライタ装置,鍵管理方法,およびコンピュータプログラム
CN104735021A (zh) 一种帐号登录方法、装置和系统
CN102870093A (zh) 利用虚拟化和证明来远程维护电子网络中多个客户端的系统和方法
CN102222049A (zh) 自加密存储设备的可扩展管理
CN101278299A (zh) 计算系统功能部件激活机制
KR20110068899A (ko) 분산형 메시 네트워크
JP2008287335A (ja) 認証情報管理システム、認証情報管理サーバ、認証情報管理方法及びプログラム
CN103119889B (zh) 使用硬件超级密钥验证和保护正版软件安装的装置、系统、方法和控制器
US20080201762A1 (en) Method and system for securely extending a path of a mobile agent within a network system
US20180218140A1 (en) Encryption authorization dongle having volatile memory
JP2010212805A (ja) 決済処理セキュリティ情報配信方法、決済処理セキュリティ情報配信システム、そのセンタ装置、サーバ装置、決済端末、及びプログラム
JP2007206959A (ja) Icカード,情報処理システム,集積回路チップ,およびデータ処理装置
CN102822840B (zh) 使用管理系统和使用管理方法
CN115037492A (zh) 基于在存储器装置中实施的安全特征的在线安全服务
CN114491682A (zh) 虚拟订户识别模块和虚拟智能卡
WO2020090418A1 (ja) 電子制御装置、電子制御装置のリプログラミング方法
JP6613916B2 (ja) 処理方式判定装置、携帯型情報処理装置、icカード、処理方式判定方法、及び処理方式判定プログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090122

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111115

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120704

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20121204