JP2003140760A - データ処理装置およびその方法とプログラム - Google Patents

データ処理装置およびその方法とプログラム

Info

Publication number
JP2003140760A
JP2003140760A JP2001333468A JP2001333468A JP2003140760A JP 2003140760 A JP2003140760 A JP 2003140760A JP 2001333468 A JP2001333468 A JP 2001333468A JP 2001333468 A JP2001333468 A JP 2001333468A JP 2003140760 A JP2003140760 A JP 2003140760A
Authority
JP
Japan
Prior art keywords
data
module
version
data module
processing
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.)
Granted
Application number
JP2001333468A
Other languages
English (en)
Other versions
JP4055393B2 (ja
Inventor
Masahiro Sueyoshi
正弘 末吉
Fumio Kubono
文夫 久保野
Hiroshi Tateno
啓 舘野
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 JP2001333468A priority Critical patent/JP4055393B2/ja
Priority to SG200206450A priority patent/SG127686A1/en
Priority to US10/282,109 priority patent/US7478435B2/en
Priority to CNB021479399A priority patent/CN1282071C/zh
Publication of JP2003140760A publication Critical patent/JP2003140760A/ja
Priority to HK03107985.9A priority patent/HK1057793B/xx
Application granted granted Critical
Publication of JP4055393B2 publication Critical patent/JP4055393B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2153Using hardware token as a secondary aspect

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 サーバ装置が保持するアプリケーションプロ
グラムに対して設定を行うユーザを、セキィリティの観
点から適切に規制できるデータ処理装置を提供する。 【解決手段】 アプリケーションプログラムAPが複数
の第1のアプリケーションエレメントデータAPEから
構成され、第1のアプリケーションエレメントデータA
PEが複数のバージョンを有する場合に、複数のバージ
ョンにそれぞれ対応する複数の第2のアプリケーション
エレメントデータAPEと、第1と第2のアプリケーシ
ョンエレメントデータAPEとの対応関係を管理するバ
ージョン管理用データモジュールVMFと、第1のアプ
リケーションエレメントデータAPEとそれに対応する
バージョン管理用データモジュールVMFとの対応関係
を管理する管理データ303とを用いて、バージョン管
理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ICなどの集積回
路を用いたサービス提供に用いられるデータ処理装置お
よびその方法とプログラムに関する。
【0002】
【従来の技術】現在、ICカードを用いてインターネッ
トなどのネットワークを介した取り引きを行う通信シス
テムが開発されている。このような通信システムでは、
ICカードを用いたサービスを提供するサービス提供者
からの依頼を受けて当該サービス提供者が規定した手続
き処理を実行するアプリケーションプログラムをサーバ
装置が実行する。サーバ装置は、例えばICカードのリ
ーダ・ライタやPC(Personal Computer) から処理要求
に応じて、上記アプリケーションプログラムに基づい
て、ユーザ認証やデータの暗号化及び復号などの処理を
行う。
【0003】
【発明が解決しようとする課題】上述したサーバ装置上
で動作するアプリケーションプログラムは、サービス提
供者が設定した鍵データ、課金データおよび履歴データ
などのセキュリティの高いデータを取り扱うため、不正
な改竄や監視から保護したいという要請がある。また、
上述したサーバ装置によるサービスの運用を開始した後
に、アプリケーションプログラムを構成するデータモジ
ュールのバージョンがアップし、新旧のバージョンのデ
ータモジュールを混在させた状態で動作を行うための機
能を提供する必要がある。また、セキュリティ確保の観
点から、サーバ装置が保持するアプリケーションプログ
ラムに対して設定を行うユーザを規制する必要がある。
【0004】本発明は上述した従来技術の問題点に鑑み
てなされ、ICなどの集積回路を用いたサービスを提供
する際に、サーバ装置上で動作するアプリケーションプ
ログラムのセキュリティを高めることができるデータ処
理装置およびその方法とプログラムを提供することを目
的とする。また、本発明は、複数のバージョンのデータ
モジュールが混在した状態の動作を行うための機能を備
えたデータ処理装置およびその方法とプログラムを提供
することを目的とする。また、本発明は、サーバ装置が
保持するアプリケーションプログラムに対して設定を行
うユーザを、セキィリティの観点から適切に規制できる
データ処理装置およびその方法とプログラムを提供する
ことを目的とする。
【0005】
【課題を解決するための手段】上記の目的を達成するた
め、第1の発明は、アプリケーションプログラムを実行
し、所定の集積回路との間でデータ授受を行い、前記集
積回路と協動して所定のサービスを提供するデータ処理
装置であって、前記アプリケーションプログラムが複数
の第1のデータモジュールから構成され、前記第1のデ
ータモジュールが複数のバージョンを有する場合に、前
記複数のバージョンにそれぞれ対応する複数の第2のデ
ータモジュールと、前記第1のデータモジュールと前記
複数の第2のデータモジュールとの対応関係を管理する
バージョン管理用データモジュールと、前記第1のデー
タモジュールとそれに対応する前記バージョン管理用デ
ータモジュールとの対応関係を管理する管理データとを
記憶する記憶回路と、前記第1のデータモジュールに対
応する処理を行う場合に、前記管理データを参照して前
記バージョン管理用データモジュールを特定し、当該特
定したバージョン管理用データモジュールを用いて、前
記データ処理装置の内部あるいは外部から指定されたバ
ージョンに対応する前記第2のデータモジュールを用い
て処理を行う処理回路とを有する。
【0006】第1の発明のデータ処理装置は、好ましく
は、前記処理回路は、前記バージョン管理用データモジ
ュールに含まれるはバージョン指定データによって指定
されたバージョンに対応する前記第2のデータモジュー
ルを用いて処理を行う。また、第1の発明のデータ処理
装置は、好ましくは、前記処理回路は、前記データ処理
装置の内部あるいは外部から指定された値と、前記バー
ジョン指定データが示す値とを用いて得たバージョン値
に対応する前記第2のデータモジュールを用いて処理を
行う。また、第1の発明のデータ処理装置は、好ましく
は、前記バージョン管理用データモジュールは、前記バ
ージョンの識別データと、それに対応する前記第2のデ
ータモジュールとをレコード形式で保持し、前記処理回
路は、前記管理データを参照して前記バージョン管理用
データモジュールを特定し、当該特定したバージョン管
理用データモジュールから、指定されたバージョンの識
別データをキーとして、対応する前記第2のデータモジ
ュールを検索し、当該検索によって得た前記第2のデー
タモジュールを用いて処理を行う。
【0007】また、第1の発明のデータ処理装置は、好
ましくは、前記バージョン管理用データモジュールは、
前記バージョンの識別データと、当該バージョンに対応
する前記第2のデータモジュールの識別データとを対応
付けて示す表データを有し、前記処理回路は、前記管理
データを参照して前記バージョン管理用データモジュー
ルを特定し、当該特定したバージョン管理用データモジ
ュールの前記表データから、指定されたバージョンの識
別データをキーとして、対応する前記第2のデータモジ
ュールの識別データを検索し、当該検索によって得た識
別データを基に、対応する前記第2のデータモジュール
を得て処理を行う。
【0008】また、第2の発明のデータ処理方法は、デ
ータ処理装置がアプリケーションプログラムに基づい
て、所定の集積回路との間でデータ授受を行い、前記集
積回路と協動して所定のサービスを提供する場合のデー
タ処理方法であって、前記アプリケーションプログラム
が複数の第1のデータモジュールから構成され、前記第
1のデータモジュールが複数のバージョンを有する場合
に、前記複数のバージョンにそれぞれ対応する複数の第
2のデータモジュールと、前記第1のデータモジュール
と前記複数の第2のデータモジュールとの対応関係を管
理するバージョン管理用データモジュールと、前記第1
のデータモジュールとそれに対応する前記バージョン管
理用データモジュールとの対応関係を管理する管理デー
タとを用意し、前記データ処理装置が、前記第1のデー
タモジュールに対応する処理を行う場合に、前記管理デ
ータを参照して前記バージョン管理用データモジュール
を特定し、前記データ処理装置が、当該特定したバージ
ョン管理用データモジュールを用いて、前記データ処理
装置の内部あるいは外部から指定されたバージョンに対
応する前記第2のデータモジュールを取得し、前記デー
タ処理装置が、当該取得した第2のデータモジュールを
利用する。
【0009】また、第3の発明のプログラムは、アプリ
ケーションプログラムに基づいて、所定の集積回路との
間でデータ授受を行い、前記集積回路と協動して所定の
サービスを提供するデータ処理装置によって実行される
プログラムであって、前記アプリケーションプログラム
が複数の第1のデータモジュールから構成され、前記第
1のデータモジュールが複数のバージョンを有する場合
に、前記複数のバージョンにそれぞれ対応する複数の第
2のデータモジュールと、前記第1のデータモジュール
と前記複数の第2のデータモジュールとの対応関係を管
理するバージョン管理用データモジュールと、前記第1
のデータモジュールとそれに対応する前記バージョン管
理用データモジュールとの対応関係を管理する管理デー
タとを用いて処理を行い、前記第1のデータモジュール
に対応する処理を行う場合に、前記管理データを参照し
て前記バージョン管理用データモジュールを特定する手
順と、前記データ処理装置が、当該特定したバージョン
管理用データモジュールを用いて、前記データ処理装置
の内部あるいは外部から指定されたバージョンに対応す
る前記第2のデータモジュールを取得する手順と、前記
データ処理装置が、当該取得した第2のデータモジュー
ルを利用する手順とを有する。
【0010】また、第4の発明のデータ処理装置は、そ
れぞれ複数の第1のデータモジュールから構成された複
数の第2のデータモジュールを用いて、集積回路と通信
して処理を行うデータ処理装置であって、それぞれ対応
する第1のユーザによってアクセスされる前記第2のデ
ータモジュールを記憶する複数の第1の記憶領域と、前
記複数の第1のユーザによって共用される前記第2のデ
ータモジュールを記憶する第2の記憶領域と、特権ユー
ザによってのみアクセス許可される前記第2のデータモ
ジュールを記憶する第3の記憶領域とを有する記憶回路
と、前記第1のデータモジュールの識別データと、前記
第2のデータモジュールの識別データとを用いて、前記
第1の記憶領域、前記第2の記憶領域および前記第3の
記憶領域への階層的なアクセスの許否を規定したアクセ
ス管理データに基づいて、前記記憶回路の記憶領域への
アクセス許否を決定する処理回路とを有する。
【0011】また、第5の発明のデータ処理方法は、デ
ータ処理装置が、それぞれ複数の第1のデータモジュー
ルから構成された複数の第2のデータモジュールを用い
て集積回路と通信して処理を行うデータ処理方法であっ
て、それぞれ対応する第1のユーザによってアクセスさ
れる前記第2のデータモジュールを記憶する複数の第1
の記憶領域と、前記複数の第1のユーザによって共用さ
れる前記第2のデータモジュールを記憶する第2の記憶
領域と、特権ユーザによってのみアクセス許可される前
記第2のデータモジュールを記憶する第3の記憶領域と
を有する記憶回路へのアクセス許否を、前記第1のデー
タモジュールの識別データと、前記第2のデータモジュ
ールの識別データとを用いて、前記第1の記憶領域、前
記第2の記憶領域および前記第3の記憶領域への階層的
なアクセスの許否を規定したアクセス管理データに基づ
いて決定する。
【0012】また、第6の発明のプログラムは、データ
処理装置が、それぞれ複数の第1のデータモジュールか
ら構成された複数の第2のデータモジュールを用いて集
積回路と通信して処理を行うデータ処理装置で実行され
るプログラムであって、それぞれ対応する第1のユーザ
によってアクセスされる前記第2のデータモジュールを
記憶する複数の第1の記憶領域と、前記複数の第1のユ
ーザによって共用される前記第2のデータモジュールを
記憶する第2の記憶領域と、特権ユーザによってのみア
クセス許可される前記第2のデータモジュールを記憶す
る第3の記憶領域とを有する記憶回路へのアクセス許否
を、前記第1のデータモジュールの識別データと、前記
第2のデータモジュールの識別データとを用いて、前記
第1の記憶領域、前記第2の記憶領域および前記第3の
記憶領域への階層的なアクセスの許否を規定したアクセ
ス管理データに基づいて決定する手順を有する。
【0013】
【発明の実施の形態】以下、本発明の実施の形態を添付
図面を参照して説明する。図1は、本実施形態の通信シ
ステム1の全体構成図である。図1に示すように、通信
システム1は、店舗などに設置されたサーバ装置2、I
Cカード3、カードリーダ・ライタ4、パーソナルコン
ピュータ5、ASP(Application Service Provider)サ
ーバ装置19、SAM(Secure Application Module) ユ
ニット9、ICモジュール42(本発明の集積回路)が
内蔵された携帯通信装置41を用いて、インターネット
10を介して通信を行ってICカード3あるいは携帯通
信装置41を用いた決済処理などの手続き処理を行う。
SAMユニット9(本発明のデータ処理装置)は、外部
メモリ7(本発明の記憶回路)およびSAMモジュール
8(本発明の処理回路)を有する。
【0014】SAMモジュール8は、必要に応じて、図
示しない他のSAMモジュールとデータの授受を行う。
【0015】以下、図1に示す構成要素について説明す
る。 〔ICカード3および携帯通信装置41〕図2は、IC
カード3の機能ブロック図である。図2に示すように、
ICカード3は、メモリ50およびCPU51を備えた
IC(Integrated Circuit)モジュール3aを有する。メ
モリ50は、図3に示すように、クレジットカード会社
などのサービス事業者15_1が使用する記憶領域55
_1、サービス事業者15_2が使用する記憶領域55
_2、並びにサービス事業者15_3が使用する記憶領
域55_3を有する。また、メモリ50は、記憶領域5
5_1へのアクセス権限を判断するために用いられる鍵
データ、記憶領域55_2へのアクセス権限を判断する
ために用いられる鍵データ、並びに記憶領域55_3へ
のアクセス権限を判断するために用いられる鍵データを
記憶している。当該鍵データは、相互認証や、データの
暗号化および復号などに用いられる。また、メモリ50
は、ICカード3あるいはICカード3のユーザの識別
データを記憶している。
【0016】携帯通信装置41は、携帯電話網およびイ
ンターネット10を介してASPサーバ装置と通信を行
う図示しない通信機能部と、上記通信機能部との間でデ
ータ授受可能なICモジュール42とを有し、アンテナ
からインターネット10を介してSAMユニット9と通
信を行う。ICモジュール42は、携帯通信装置41の
通信機能部とデータ授受を行う点を除いて、前述したI
Cカード3のICモジュール3aと同じ機能を有してい
る。なお、携帯通信装置41を用いた処理は、ICカー
ド3を用いた処理と同様に行われ、ICモジュール42
を用いた処理はICモジュール3aを用いた処理と同様
に行われるため、以下の説明では、ICカード3および
ICモジュール3aを用いた処理について例示する。
【0017】以下、SAMユニット9について詳細に説
明する。SAMユニット9は、前述したように、外部メ
モリ7(本発明の記憶回路)とSAMモジュール8(本
発明の処理回路)とを有する。ここで、SAMモジュー
ル8は、半導体回路として実現してもよいし、筐体内に
複数の回路を収容した装置として実現してもよい。
【0018】〔SAMモジュール8のソフトウェア構
成〕SAMモジュール8は、図4に示すようなソフトウ
ェア構成を有している。図4に示すように、SAMモジ
ュール8は、下層から上層に向けて、ハードウェアHW
層、周辺HWに対応したRTOSカーネルなどを含めた
ドライバ層(OS層)、論理的にまとまった単位の処理
を行う下位ハンドラ層、アプリケーション固有のライブ
ラリなどをまとめた上位ハンドラ層およびAP層を順に
有している。ここで、AP層では、図1に示すクレジッ
トカード会社などのサービス事業者15_1,15_
2,15_3によるICカード3を用いた手続きを規定
したアプリケーションプログラムAP_1,AP_2,
AP_3(本発明のアプリケーションプログラム)が、
外部メモリ7から読み出されて動作している。各アプリ
ケーションプログラムには、1つ以上のマクロスクリプ
トが設定可能である。AP層では、アプリケーションプ
ログラムAP_1,AP_2,AP_3相互間、並びに
上位ハンドラ層との間にファイアウォールFWが設けら
れている。
【0019】〔外部メモリ207〕図5は、外部メモリ
7の記憶領域を説明するための図である。図5に示すよ
うに、外部メモリ207の記憶領域には、サービス事業
者15_1のアプリケーションプログラムAP_1が記
憶されるAP記憶領域220_1、サービス事業者15
_2のアプリケーションプログラムAP_2が記憶され
るAP記憶領域220_2、サービス事業者15_3の
アプリケーションプログラムAP_3が記憶されるAP
記憶領域220_3、並びにSAMモジュール208の
管理者が使用するAP管理用記憶領域221がある。
【0020】AP記憶領域220_1に記憶されている
アプリケーションプログラムAP_1(第1〜第3の発
明のアプリケーションプログラム、第4〜第6の発明の
第2のデータモジュール)は、後述する複数のアプリケ
ーションエレメントデータAPE(第1〜第6の発明の
第1のデータモジュール)によって構成されている。A
P記憶領域220_1へのアクセスは、ファイアウォー
ルFW_1によって制限されている。AP記憶領域22
0_2に記憶されているアプリケーションプログラムA
P_2は、複数のアプリケーションエレメントデータA
PEによって構成されている。AP記憶領域220_2
へのアクセスは、ファイアウォールFW_2によって制
限されている。AP記憶領域220_3に記憶されてい
るアプリケーションプログラムAP_3は、複数のアプ
リケーションエレメントデータAPEによって構成され
ている。AP記憶領域220_3へのアクセスは、ファ
イアウォールFW_3によって制限されている。本実施
形態では、上記アプリケーションエレメントデータAP
Eは、例えば、SAMユニット9の外部から外部メモリ
7にダウンロードされる最小単位である。各アプリケー
ションプログラムを構成するアプリケーションエレメン
トデータAPEの数は、対応するサービス事業者が任意
に決定できる。
【0021】また、外部メモリ7に記憶されたアプリケ
ーションプログラムAP_1,AP_2,AP_3は、
スクランブルされており、SAMモジュール8に読み込
まれたときに、デスクランブルされる。また、アプリケ
ーションプログラムAP_1,AP_2,AP_3は、
例えば、それぞれ図1に示すパーソナルコンピュータ1
6_1,16_2,16_3を用いて、サービス事業者
15_1,15_2,15_3によって作成され、SA
Mモジュール8を介して外部メモリ7にダウンロードさ
れる。
【0022】以下、アプリケーションプログラムAP_
1,AP_2,AP_3について詳細に説明する。アプ
リケーションプログラムは、サービス事業者毎に、SA
M内に単数または複数個存在する。アプリケーションプ
ログラムAP_1,AP_2,AP_3(以下、APと
も記す)は、図6に示すように、アプリケーションプロ
グラムAPを識別するための識別データAP_IDと、
当該アプリケーションプログラムのバージョン(世代情
報)を示すデータAPP_VER、当該アプリケーショ
ンプログラムに含まれるアプリケーションエレメントデ
ータAPEの数を示すデータAPE_NUMと、単数ま
たは複数のアプリケーションエレメントデータAPEと
によって構成される。識別データAP_IDは、サービ
ス事業者毎に異なるように決められている。
【0023】図6に示すように、アプリケーションエレ
メントデータAPEは、当該アプリケーションエレメン
トデータAPEのデータサイズを示すデータAPE_S
IZEと、当該アプリケーションエレメントデータAP
Eを識別するための識別データAPE_IDと、当該ア
プリケーションエレメントデータAPEのバージョンを
示すデータAPE_VER、サービス事業者が設定可能
な当該アプリケーションエレメントデータAPEの識別
データ(タグ)であるデータAPE_TAG、APPテ
ーブルデータを特定するデータAPPT、オプションを
設定するデータOPT、データ本体APE_PLとで構
成される。ここで、識別データAPE_IDは、アプリ
ケーションエレメントデータAPEの種別を示すデータ
APE_TYPEと、当該種別内でのアプリケーション
エレメントデータAPEの識別番号(インスタンス識別
番号)を示すデータINS_NUMとで構成される。デ
ータINS_NUMは、エンドユーザ(サービス事業
者)側で管理される。例えば、アプリケーションエレメ
ントデータAPEがファイルシステムコンフィグレーシ
ョンの場合には、データAPE_TYPEが「2」とな
り、データINS_NUMが「1」となる。これによ
り、同−のSAMであれば、識別データAPE_IDに
より一意にアプリケーションエレメントデータAPEを
特定できる。データAPE_VERは、サービス事業者
が任意に設定できる。また、データAPE_TAGは、
個々のアプリケーションプログラムAP内で一意に定義
される必要がある。
【0024】図5に示す外部メモリ7には、上述したア
プリケーションプログラムAP(AP_1,AP_2,
AP_3)が、SAMユニット9外でAPリソース鍵デ
ータK_APR(暗号化鍵データ)によって暗号化され
て、設定コマンドによって、外部メモリ7内にアプリケ
ーションプログラム・パッケージAPPとして記憶され
ている。APリソース鍵データK_APRとしては、ア
プリケーションプログラム毎で異なる暗号化鍵データが
用いられる。
【0025】以下、図6を用いて説明したアプリケーシ
ョンエレメントデータAPEの種別(APE_TYP
E)について説明する。図7は、1つのAP領域内に記
憶されたアプリケーションエレメントデータAPEの一
例を示す図である。図7は、データAPE_TYPEの
番号と、その内容とを対応付けて示している。図7に示
すように、AP領域内には、例えば、APリソース鍵デ
ータK_APR、カードアクセス鍵データ、ファイルシ
ステムコンフィグレーションデータ、SAM相互認証用
鍵データ、SAM間鍵パッケージ鍵データ、ICカード
操作用マクロコマンドスクリプトプログラム(本発明の
処理手順データ)、メモリ分割用鍵パッケージ、エリア
登録鍵パッケージ、エリア削除用鍵パッケージ、サービ
ス登録用鍵データ、サービス削除用鍵パッケージ、が、
アプリケーションエレメントデータAPEとして記憶さ
れている。
【0026】・APリソース鍵データK_APR APリソース鍵データK_APRは、アプリケーション
エレメントデータAPEを設定する際の暗号用鍵として
使用され、AP領域毎に、アプリケーションエレメント
データAPEを設定するために異なる鍵データK_AP
Rが割り当てられている。 ・カードアクセス鍵データ カードアクセス鍵データは、ICカード3およびICモ
ジュール42のメモリ50に対してのデータの読み書き
操作に用いられる鍵データである。カードアクセス鍵デ
ータには、例えば、ICカードシステム鍵データ、IC
カードエリア鍵データ、ICカードサービス鍵データお
よびICカード縮退鍵データなどがある。ここで、IC
カード縮退鍵データは、、ICカードシステム鍵データ
と、メモリ50の記憶領域管理用鍵データとを用いて暗
号化して生成され、相互認証に用いられる鍵データであ
る。また、ICカード操作用マクロコマンドスクリプト
プログラムで参照される鍵データも、カードアクセス鍵
データと同じ種別のアプリケーションエレメントデータ
APEに含まれる
【0027】・ファイルシステムコンフィグレーション
データ ファイルシステムコンフィグレーションデータとして
は、例えば、ログデータ、ネガデータ、ジャーナルデー
タがある。ログデータは例えばアプリケーションエレメ
ントデータAPEの利用履歴データであり、ネガデータ
は例えばICカードの失効情報であり、ジャーナルデー
タは例えばSAMでの実行履歴である。例えば、ファイ
ルシステムコンフィグレーションでは、ファイルアクセ
スの種別(レコードキー指定・ソート・リング)の選択
を行い、レコードキーの場合であれば、レコードサイ
ズ、レコード全体件数・レコード署名バージョン・レコ
ード署名メソッドタイプ、レコードデータサイズ、レコ
ード署名鍵を設定する。さらに、外部から本ファイルシ
ステムにデータを書き込む際に署名検証を実施するかの
有無の指定などを行う。ここでレコードとは、ファイル
データへの書き込み/読み出しの最小単位である。
【0028】・SAM相互認証用鍵データ 同一SAM内にあるAP間相互認証にも使用される。S
AM相互認証用鍵データとは、対応するアプリケーショ
ンエレメントデータAPEを同一SAM内の他のAPま
たは他のSAMからアクセスする際に用いられる鍵デー
タである。 ・SAM間鍵パッケージ鍵 SAM間鍵パッケージ鍵とは、SAM間での相互認証
後、カードアクセス鍵データなどのデータを交換する際
に用いられる暗号化用鍵データである。 ・ICカード操作用マクロコマンドスクリプトプログラ
ム ICカード操作用マクロコマンドスクリプトプログラム
は、サービス事業者自身によって生成され、ICカード
3に係わる処理の順番やASPサーバ装置19とのやり
取りを記述している。ICカード操作用マクロコマンド
スクリプトプログラムは、SAMユニット9に設定され
た後に、SAMモジュール8内で解釈され、対応するI
Cカードエンティティデータが生成される。
【0029】・メモリ分割用鍵パッケージ メモリ分割用鍵パッケージは、サービス事業者がICカ
ード3を用いたサービスの運用開始前に、外部メモリ7
やICカード3のメモリの記憶領域を分割するために使
用するデータである。 ・エリア登録鍵パッケージ エリア登録鍵パッケージは、サービス事業者がICカー
ド3を用いたサービスの運用開始前に、ICカード3の
メモリの記憶領域にエリア登録を行う場合に使用するデ
ータである。 ・エリア削除用鍵パッケージ(内部生成) エリア削除用鍵パッケージは、カードアクセス鍵データ
からSAM内部で自動生成が可能なパッケージである。
【0030】・サービス登録用鍵(内部生成) サービス登録用鍵パッケージは、サービス事業者がIC
カード3を用いたサービスの運用開始前に、外部メモリ
7のアプリケーションエレメントデータAPEを登録す
るために用いられる。サービス登録用鍵パッケージは、
カードアクセス鍵データからSAM内部で自動生成が可
能なパッケージである。 ・サービス削除用鍵パッケージ(内部生成) サービス削除用鍵パッケージは、外部メモリ7に登録さ
れているアプリケーションエレメントデータAPEを削
除するために用いられる。サービス削除用鍵パッケージ
は、カードアクセス鍵データからSAM内部で自動生成
が可能なパッケージである。
【0031】図8は、図7に示す各アプリケーションエ
レメントデータAPEの種別に応じたバージョンを説明
するための図である。図8に示すように、ICカードシ
ステム鍵データ、エリア鍵データおよびサービス鍵デー
タのバージョンは、各鍵データに規定されたバージョン
が用いられる。ICカード縮退鍵データのバージョン
は、例えば、SAMモジュール8が独自に規定できる。
製造用鍵パッケージのバージョンには、システム鍵デー
タのバージョンが用いられる。発行用鍵データのバージ
ョンには、IC3aおよびICモジュール42の最上の
記憶領域の管理鍵データのバージョンが用いられる。拡
張発行用鍵データのバージョンには、システム鍵データ
のバージョンが用いられる。
【0032】分割元パッケージおよび分割パッケージの
バージョンには、分割対象となるシステム鍵データが用
いられる。エリア登録用鍵パッケージおよびエリア削除
用鍵パッケージのバージョンには、各エリア鍵のバージ
ョンが用いられる。サービス登録用鍵パッケージおよび
サービス削除用鍵パッケージのバージョンには、各サー
ビス鍵のバージョンが用いられる。鍵変更用パッケージ
のバージョンには、変更後の新しい鍵データのバージョ
ンが用いられる。
【0033】以下、上述したアプリケーションエレメン
トデータAPEのバージョンの管理に用いられる、図5
に示すバージョン管理用データ303、並びにアプリケ
ーションエレメントデータAPEについて説明する。 〔バージョン管理の第1の例〕図9に示すように、アプ
リケーションエレメントデータAPEが複数のバージョ
ンを有する場合に、当該アプリケーションエレメントデ
ータAPEに対応するバージョン管理用データ303
(第1〜第3の発明の管理データ)は、当該アプリケー
ションエレメントデータAPEに対応するバージョン管
理ファイルVMF(第1〜第3の発明のバージョン管理
用データモジュール)の識別データAPE_IDと、現
在選択されているパージョン値と、バージョン管理ファ
イルVMFに格納されている最新のバージョン値とを対
応付けて示している。本実施形態では、バージョン管理
ファイルVMFは、アプリケーションエレメントデータ
APEとして実現される。
【0034】バージョン管理ファイルVMFは、図9に
示すように、バージョンの値(バージョンの識別デー
タ:Version #** )と、当該バージョンのアプリケーシ
ョンエレメントデータAPEの実体(Element Instance
Body #**) (第1〜3の発明の第2のデータモジュー
ル)とをレコード形式で格納している。SAMモジュー
ル8のCPUは、複数のバージョンを有するアプリケー
ションエレメントデータAPEを用いる場合に、当該ア
プリケーションエレメントデータAPEのデータAP_
IDを基にバージョン管理用データ303にアクセス
し、バージョン管理用データ303に格納されたAPE
_IDを基にバージョン管理ファイルVMFにアクセス
する。そして、バージョン管理ファイルVMFに、指定
されたバージョン値をキーとして、バージョン管理ファ
イルVMF内で、指定されたバージョンのアプリケーシ
ョンエレメントデータAPEの実体を検索して利用す
る。
【0035】〔バージョン管理の第2の例〕図10に示
すように、バージョン管理用データ303は図9の場合
と同様に、当該アプリケーションエレメントデータAP
Eに対応するバージョン管理ファイルVMFの識別デー
タAPE_IDと、現在選択されているパージョン値
と、バージョン管理ファイルVMFに格納されている最
新のバージョン値とを対応付けて示している。本実施形
態でも、バージョン管理ファイルVMFは、アプリケー
ションエレメントデータAPEとして実現される。
【0036】バージョン管理ファイルVMFは、図10
に示すように、バージョンの値(バージョンの識別デー
タ:Version #** )と、当該バージョンのアプリケーシ
ョンエレメントデータAPEの実体(Element Instance
Body #**) (第1〜3の発明の第2のデータモジュー
ル)の識別データAPE_IDとを対応付けて示す表デ
ータ305を格納している。SAMモジュール8のCP
Uは、複数のバージョンを有するアプリケーションエレ
メントデータAPEを用いる場合に、当該アプリケーシ
ョンエレメントデータAPEのデータAP_IDを基に
バージョン管理用データ303にアクセスし、バージョ
ン管理用データ303に格納されたAPE_IDを基に
バージョン管理ファイルVMFにアクセスする。そし
て、当該CPUは、バージョン管理ファイルVMFか
ら、指定されたバージョン値をキーとして、識別データ
APE_IDを取得し、当該識別データAPE_IDを
用いて、対応するバージョンのアプリケーションエレメ
ントデータAPEの実体にアクセスして利用する。
【0037】なお、上述した第1および第2の例におい
て、バージョンの指定は、SAMモジュール8の外部か
らコマンドによって、あるいはSAMモジュール8の内
部の処理によって、設定および変更される。また、SA
Mモジュール8のCPUは、バージョンが明示して指定
されていない場合に、バージョン管理用データ303に
格納されたバージョン管理ファイルVMF内の最新バー
ジョンを自動的に選択して指定してもよい。SAMモジ
ュール8のCPUは、SAMモジュール8の内部あるい
は外部から指定された値を、バージョン指定データが示
す値に反映させてバージョン値を算出し、当該算出した
バージョン値をキーとしてバージョン管理ファイルVM
F内を検索してもよい。
【0038】〔バージョン管理の適用例〕図11は、バ
ージョン管理の手法をカードアクセス鍵データに適用し
た場合を説明する。図11に示すように、カードアクセ
ス鍵データを管理するファイルから鍵パッケージK_P
を、SAMモジュール8の汎用レジスタ内で内部生成す
る。異なるバージョンのカードアクセス鍵データを格納
した鍵パッケージK_P1〜KP3が生成される。そし
て、SAMモジュール8のCPUは、ソート型のファイ
ルシステムを用いて、鍵パッケージK_P1〜K_P3
を、それぞれパッケージバージョンP_VER1〜P_
VER3と関連付けて外部メモリ7に格納する。
【0039】〔異なるバージョンの署名鍵データを用い
て署名された署名(ログ)データを作成および検証する
場合〕例えば、SAMモジュール8は、例えば、ICカ
ード3およびICモジュール42の運用開始後に、カー
ド処理に伴う署名データに用いる署名鍵データが変更に
なり、新旧の署名鍵データを混在して運用する場合があ
る。このとき、署名鍵データは、バージョン別に管理さ
れている。SAMモジュール8のCPUは、署名ファイ
ルの各レコードに含まれる署名鍵バージョンデータを読
み出し、当該署名鍵バージョンデータをキーとして、署
名鍵ファイルから、対応する署名鍵データを検索して取
得し、当該取得した署名鍵データを用いて署名作成また
は署名検証処理を行う。
【0040】すなわち、SAMモジュール8のCPU
は、例えば、ファイルコンフィグレーション時に、ログ
ファイル内の該当する署名鍵バージョンを特定し、バー
ジョン管理ファイルVMFを用いて、当該署名鍵バージ
ョンに対応する署名鍵ファイルにアクセスし、当該署名
鍵ファイルに格納された署名鍵データを用いて、署名作
成または署名検証を行う。
【0041】なお、上述したログファイルには、署名鍵
バージョンに対応して、レコード形式で、署名付加の対
象となるデータ、並びに署名データが格納されている。
署名データは、上記署名付加の対象となるデータの全部
または一部に対して付けられる。また、SAMモジュー
ル8のCPUは、フグファイル内のデータの一部または
全体に対して、署名鍵データと所定の暗号アルゴリズム
に基づいた署名データを生成し、当該署名データを前記
レコードに付加して外部メモリ7に書き込み、前記ログ
ファイルからデータを読み出す場合に、前記書き込み時
に用いた署名鍵データと前記暗号アルゴリズムに基づい
て署名データを生成し、当該生成した署名データと、当
該レコードに付加された署名データとを比較して、当該
レコードの正当性、すなわちデータが改竄および欠損し
ていないかを判断する。
【0042】以下、上述したICカード操作用マクロコ
マンドスクリプトプログラム(以下、スクリプトプログ
ラムとも記す)について詳細に説明する。スクリプトプ
ログラムは、SAMモジュール8上で動作するサービス
事業者15_1,15_2,15_3のアプリケーショ
ンプログラムAP_1,AP_2,AP_3、並びに当
該アプリケーションプログラムの実行時にICカード3
のICモジュール3aおよび携帯通信装置41のICモ
ジュール42が行う処理の手続きを規定するためのプロ
グラムである。本実施形態では、後述するように、図1
3に示すように、SAMモジュール8内で、スクリプト
ダウンロードタスク69およびスクリプト解釈タスク7
0に基づいて処理を行い、AP管理テーブルデータおよ
びスクリプトプログラムから、サービス事業者15_
1,15_2,15_3に関する手続きに用いられるI
Cカードエンティティテンプレートデータ30_1、入
力用データブロック31_x1、出力用データブロック
32_x2、ログ用データブロック33_x3および演
算定義用データブロック34_x4を生成する。
【0043】以下、図5に示す外部メモリ7のAP管理
用記憶領域221に記憶されたデータについて説明す
る。AP管理用記憶領域221へのアクセスは、ファイ
アウォールFW_4によって制限されている。なお、フ
ァイアウォールFW_4は、図4に示すファイアウォー
ルFWに対応している。図14は、AP管理用記憶領域
221に記憶されているデータの詳細を説明するための
図である。AP管理用記憶領域221には、図14に示
すように、AP管理用テーブルデータ300_1,30
0_2,300_3(300)と、APPテーブルデー
タ301_1,301_2,301_3(301)と、
AP選択用データ302_1,302_2,302_3
(302)、バージョン管理用データ303_1,30
3_2,303_3(303)、並びに内部リソース割
当管理用データ304(第4〜第6の発明のアクセス管
理データ)が記憶されている。ここで、AP管理用テー
ブルデータ300_1,300_2,300_3と、A
PPテーブルデータ310_1,310_2,310_
3は、例えば、SAMモジュール8のセットアップ時に
予め登録されている。また、AP管理用テーブルデータ
300_1,300_2,300_3と、APPテーブ
ルデータ310_1,310_2,310_の書き換え
は、SAMモジュール8の管理者のみが行える。
【0044】AP管理用テーブルデータ300_1,3
00_2,300_3は、アプリケーションプログラム
AP毎に規定されている。また、APPテーブルデータ
310_1,310_2,310_3は、SAM相互認
証鍵データ毎に規定されている。
【0045】図15は、AP管理用テーブルデータ30
0_1を説明するための図である。AP管理用テーブル
データ300_2,300_3も、AP管理用テーブル
データ300_1と同じフォーマットを有している。図
15に示すように、ICカード操作用マクロコマンドス
クリプトプログラム内で用いられる参照されるアプリケ
ーションエレメントデータAPEの名前APE_Nのそ
れぞれについて、識別データAPE_ID、内部/外部
指定データIEI、識別データSAM_ID、識別デー
タAP_ID、鍵データK_CARDA、鍵データK_
SAM、データSET_APP、データFLAG_IP
およびデータFLAG_STRを対応付けて示してい
る。アプリケーションエレメントデータAPEの名前A
PE_Nは、サービス事業者15_1,15_2,15
_3のアプリケーションプログラムによって提供される
サービス(アプリケーションエレメントデータAPE)
に付けられた名前である。名前APE_Nは、各サービ
ス事業者のアプリケーションプログラムが使用できるサ
ービスのサービス番号の替わりに参照される識別子であ
る。
【0046】ここで、識別データAPE_IDは、アプ
リケーションエレメントデータAPEの識別データであ
る。内部/外部指定データIEIは、APEが実体とし
て存在するのか(内部指定)、あるいは他のSAMから
参照するのか(外部指定)を区別するフラグである。識
別データSAM_IDは、SAMモジュール8が当該ア
プリケーションエレメントデータAPEに係わる処理を
行う際にデータ授受を行う相手側のSAMの識別データ
である。図16は、SAM_IDを説明するための図で
ある。SAM_IDは、4バイトのデータであり、TC
P/IPに類似したネットマスクの概念を有している。
ネットマスクはビット単位での設定が可能である。例え
ば、当該ネットマスクは、図16に示すように、Aクラ
ス、BクラスおよびCクラスの3種類に分類される。そ
して、同一のネットマスクが割り当てられたSAM相互
間では、相互認証に使用する鍵データは1種類でよい。
本実施形態では、例えば、同一のサービス事業者に同一
のネットマスクが割り当てられる。図16において、A
クラスのネットマスクは、「255.XX.XX.X
X」で示され、上位1バイトに当該クラスを特定するた
めの所定の値が割り当てられ、下位3バイトに、当該ク
ラスに属する個々のSAMを特定するための値が割り当
てられる。ここで、「XX」には任意の値を設定でき
る。すなわち、Aクラスのネットマスクによって、当該
Aクラスに属する16777215個のSAM_IDを
規定できる。また、Bクラスのネットマスクは、「25
5.255.XX.XX」で示され、上位2バイトに当
該クラスを特定するための所定の値が割り当てられ、下
位2バイトに、当該クラスに属する個々のSAMを特定
するための値が割り当てられる。すなわち、Bクラスの
ネットマスクによって、当該Bクラスに属する6553
5個のSAM_IDを規定できる。また、Cクラスのネ
ットマスクは、「255.255.255.XX」で示
され、上位3バイトに当該クラスを特定するための所定
の値が割り当てられ、下位1バイトに、当該クラスに属
する個々のSAMを特定するための値が割り当てられ
る。すなわち、Cクラスのネットマスクによって、当該
Cクラスに属す255個のSAM_IDを規定できる。
【0047】識別データAP_IDは、SAMモジュー
ル8が当該アプリケーションエレメントデータAPEに
係わる処理を行う際にデータ授受を行う相手側のSAM
で実行されるアプリケーションプログラムの識別データ
である。鍵データK_CARDAは、SAMモジュール
8が当該アプリケーションエレメントデータAPEに係
わる処理を行う際にICカード3のメモリ50とデータ
授受を行うために用いられる鍵データである。
【0048】鍵データK_SAMは、SAMモジュール
8が当該アプリケーションエレメントデータAPEに係
わる処理を行う際に、他のSAMとデータ授受を行うた
めに用いられる鍵データである。データSET_APP
は、SAMモジュール8が当該アプリケーションエレメ
ントデータAPEに係わる処理を行う際に用いられる
(参照される)APPテーブルデータ310_1,31
0_2,310_3を特定するためのデータである。
【0049】図15において、APE_N「Servi
ceA」は、該当SAM8内のアプリケーションプログ
ラムで定義されたICカード3のアクセス鍵である。
「ServiceA」の鍵データは非公開に設定してい
るため、他のSAM上のアプリケーションプログラムや
本SAM上の他のアプリケーションプログラムは、参照
することができない。また、「ServiceC」は、
本アプリケーションプログラムで定義されたICカード
3のアクセス鍵である。本SAMに後述するCクラスの
ネットマスクが割り当てられている場合には、「Ser
viceC」の鍵データは「43.17.19.XX」
のSAM_IDを持つSAM上のアプリケーションプロ
グラムに公開される。この際SAM相互認証用鍵は「T
T1….TTn」、また他のSAMが「Service
C」の鍵データを次回利用時まで保持可能かの可否を決
定する。可の場合には、他のSAMがカード上の「Se
rviceC」を次回利用するときに、本SAMから再
度カードアクセス鍵を入手する必要は無い。Servi
ceBのアクセス鍵は本SAMではなく、「43.1
3.137.XX」のSAM_IDを持つSAMから入
手する。SAM間の相互認証用鍵として「SS1…SS
n」を使用する。「ServiceB」のアクセス鍵を
次回利用時まで保持可能の有無は先方のSAMが指定す
る可否フラグにより決定する。「ServiceB L
og」は、「43.13.137.XX」のSAM_I
Dが割り当てられたログデータが格納されたファイルを
指す。「ServiceB Log」は、「Servi
ceB」と同一SAMネットマスクであるため、相互認
証用鍵は「SS1…SSn」を使用する。ここで、相互
認証鍵毎にAPPテーブルデータが設けられている。本
例では、「ServiceB log」および「Ser
viceB」へのアクセス許可は他のSAM上のAP管
理用テーブルデータが参照する他のSAMのAPPテー
ブルデータ310で規定されている。
【0050】図17は、APPテーブルデータ310_
1を説明するための図である。APPテーブルデータ3
10_2,310_3、310は、APPテーブルデー
タ310_1と同じフォーマットを有している。図17
に示すように、APPテーブルデータ310_1は、各
アプリケーションエレメントデータAPEについて、そ
の識別データAPE_IDと、当該アプリケーションエ
レメントデータAPEに対して他のアプリケーションプ
ログラム(他のアプリケーションエレメントデータAP
E)から読み出し(READ)、書き込み(WRIT
E)および実行(EXCUTE)が可能であるか否かを
示している。
【0051】例えば、図17に示すAPPテーブルデー
タ310_1は、「ServiceB log」につい
ては読取りが可、書込みが可、実行(削除)が不可を示
している。
【0052】また、図5に示す外部メモリ7のAP管理
用記憶領域221は、例えば、ICカード種別データと
AP_IDとを対応付けて示すAP選択用データを記憶
している。ICカード種別データは、図1に示すICカ
ード3の種別を示し、例えば、ICカード3を用いた取
り引きの決済を行うクレジットカード会社の識別データ
である。
【0053】本実施形態では、ICカード操作用マクロ
コマンドスクリプトプログラム内に複数のアプリケーシ
ョンエレメントデータAPEの名前APE_Nを組み合
せたサービス内容を規定(記述)し、これを後述するI
Cカードエンティティデータ(ジョブ管理用データ)に
反映させることで、複数のアプリケーションエレメント
データAPEに対応するサービスを組み合わせたをサー
ビスを提供できる。例えば、ICカード3からデータ読
出しを行うサービスと、サーバ装置2にデータ書込みを
行うサービスとを組み合わせたサービスを、ICカード
エンティティデータ内に定義できる。
【0054】また、APE_Nあるいはそのサービス番
号は、サービス事業者15_1,15_2,15_3に
よって提供されるサービスを行う際に、ICカード3に
発行するICカード3が解釈可能な操作コマンドであ
る。
【0055】アプリケーションプログラムAP_1は、
外部メモリ7に記憶されたAP管理用テーブルデータ3
00_1および所定のICカード操作用マクロコマンド
スクリプトプログラムによって規定される。アプリケー
ションプログラムAP_2は、外部メモリ7に記憶され
たAP管理用テーブルデータ300_2および所定のI
Cカード操作用マクロコマンドスクリプトプログラムに
よって規定される。アプリケーションプログラムAP_
3は、外部メモリ7に記憶されたAP管理用テーブルデ
ータ300_3および所定のICカード操作用マクロコ
マンドスクリプトプログラムによって規定される。
【0056】また、図5に示す外部メモリ7のAP管理
用記憶領域221は、例えば、外部メモリ7に格納され
たリソースへのアクセス管理をユーザの特権別あるいは
使用目的別に行うために用いられる内部リソース割当管
理用データ304を記憶している。
【0057】図18は、内部リソース割当管理用データ
304を説明するための図である。SAMモジュール8
のCPUは、図18に示す内部リソース割当管理用デー
タ304に基づいて、外部メモリ7の記憶領域、並びに
当該領域に記憶されたデータに対してのアクセスを、ユ
ーザの特権別あるいは使用目的別に管理する。外部メモ
リ7の記憶領域は、システム領域とユーザ領域とに分け
て管理される。システム領域は、SAMモジュール8が
内部動作で使用する領域である。システム領域は、例え
ば、SAMモジュール8の出荷担当者によって、SAM
モジュール8の固有機器番号、アプリケーションプログ
ラムAPの出荷用鍵が初期設定される。
【0058】ユーザ領域は、SAMモジュール8の使用
者がアプリケーションプログラムなどのリソースを設定
可能な領域である。ユーザ領域は、特権ユーザ領域(本
発明の第3の記憶領域)、一般ユーザ領域(本発明の第
1の記憶領域)、並びに共通ユーザ領域(本発明の第2
の記憶領域)に大別される。特権ユーザ領域は、SAM
モジュール8の識別データIDなどのSAMモジュール
8を運用するための基本データを格納するための領域で
ある。一般ユーザ領域は、ICカード3や携帯通信装置
41を使用したサービスを実現するための鍵データや鍵
パッケージなどのリソースを格納するための領域であ
る。共通ユーザ領域は、一般ユーザが共通して使用する
SAMモジュール8本体のIPアドレスなどのネットワ
ーク情報を格納するための領域である。
【0059】すなわち、特権ユーザ領域は、SAMモジ
ュール8の運用上、特定のユーザによる設定が必要とさ
れる領域であり、共通ユーザ領域は、SAMモジュール
8全体として共有可能であり、かつ複数のユーザによる
設定が可能な領域である。
【0060】図19は、外部メモリ7の記憶領域を用い
た各ユーザによる設定可能項目の一例を説明するための
図である。図19に示すように、出荷担当者は、例え
ば、識別データAP_IDが「0x0000〜0x00
0F」の記憶領域に対してアクセス可能であり、一般ユ
ーザ用のAPリソース鍵データK_APRの出荷鍵の設
定、並びにSAMモジュール8の固有機器番号の設定が
可能である。
【0061】また、特権ユーザは、識別データAP_I
Dが「0xFFFF」の記憶領域にアクセス可能であ
り、SAMモジュール8のSAM_IDの設定、並び
に、特権ユーザ用AP領域運用鍵の設定が可能である。
【0062】また、一般ユーザは、ユーザ共通領域とし
て識別データAP_IDが「0xFFFE」の領域にア
クセス可能であり、一般ユーザ領域として識別データA
P_IDが「0x0000〜0x000F」の領域にア
クセス可能である。一般ユーザは、当該領域に対して、
SAMモジュール8のSAM_IDのネットマスク、S
AMモジュール8のIPアドレスなどのネットワーク情
報、APリソース鍵データK_APR、その他のアプリ
ケーションエレメントデータAPEなどの設定が可能で
ある。ユーザは、当該ユーザに公開された記憶領域のA
Pリソース鍵データK_APRを受け、それを自分のみ
が知る値に変更することで、アプリケーションプログラ
ムAP内部のリソースの変更を他からできないようにす
る。また、ユーザ共通領域は、各ユーザが自らの一般ユ
ーザ領域に設定を行う際に使用するAPリソース鍵デー
タK_APRを用いてアクセスできるようにする。すな
わち、共通の鍵データを用いる。
【0063】上述した外部メモリ7の記憶領域の管理
は、例えば、図18に示す内部リソース割当管理用デー
タ304を用いて、識別データAP_IDおよびAPE
_IDを用いて行われる。すなわち、外部メモリ7を、
識別データAP_IDおよびAPE_IDを用いて規定
されるマトリクス状の領域に分割して管理する。図18
に示す場合は、外部メモリ7の記憶領域のうち、APE
_IDが「0x7F06」〜「0xFFFF」までの領
域をシステム領域とし、APE_IDが「0x000
0」〜「0x7F00」までの領域を一般ユーザ領域と
して使用する。また、AP_IDが「0xfffd」の
アプリケーションプログラムの記憶領域を、一般ユーザ
共通領域として使用する。
【0064】アプリケーションエレメントデータAPE
は、暗号化されたパッケージを各領域別に設定すること
で、外部メモリ7に格納される。この際、必要なリソー
スエレメントのみを選択して暗号化することが可能であ
る。
【0065】以下、SAMモジュール8のCPUが、上
述した内部リソース割当管理用データ304を用いて、
外部メモリ7の記憶領域(リソース)を管理する手順を
説明する。図20は、当該手順を説明するための図であ
る。 ステップST61:例えば、図1に示すサービス事業者
15_1〜15_4などの一般ユーザあるいは特権ユー
ザなどが、インターネット10に接続されたパーソナル
コンピュータを操作して、外部メモリ7内のアクセスを
行うアプリケーションプログラムAPを指定し、自らの
所有するAPリソース鍵データK_APRを用いて、A
SPサーバ装置19を介してSAMモジュール8にアク
セスを行う。
【0066】ステップST62:SAMモジュール8の
CPUは、ステップST61のアクセス元が、指定され
たしたアプリケーションプログラムAPに適合したAP
リソース鍵データK_APRを有しているか否かを判断
し、有していると判断した場合にはステップST64の
処理に進み、有していないと判断した場合にはステップ
ST63の処理に進む。
【0067】ステップST63:SAMモジュール8の
CPUは、当該指定されたアプリケーションプログラム
APへの、当該ユーザによるアプリケーションエレメン
トデータAPEの設定を許可しない。
【0068】ステップST64:SAMモジュール8の
CPUは、当該指定されたアプリケーションプログラム
APへの、当該ユーザによるアプリケーションエレメン
トデータAPEの設定を許可する。
【0069】ステップST65:SAMモジュール8の
CPUは、当該ユーザが特権ユーザであるか否かを判断
し、特権ユーザであると判断した場合にはステップST
66の処理に進み、特権ユーザではないと判断した場合
にステップST67の処理に進む。
【0070】ステップST66:SAMモジュール8の
CPUは、当該ユーザに対して、指定されたアプリケー
ションプログラムAP内の特権ユーザ用のアプリケーシ
ョンエレメントデータAPEの設定を許可する。
【0071】ステップST67:SAMモジュール8の
CPUは、当該ユーザが一般ユーザであるか否かを判断
し、一般ユーザであると判断した場合にはステップST
68の処理に進み、一般ユーザではないと判断した場合
にステップST69の処理に進む。
【0072】ステップST68:SAMモジュール8の
CPUは、当該ユーザに対して、指定されたアプリケー
ションプログラムAP内の一般ユーザ用および一般ユー
ザ共通用のアプリケーションエレメントデータAPEの
設定を許可する。
【0073】ステップST69:SAMモジュール8の
CPUは、当該ユーザに対して、システム領域内のアプ
リケーションエレメントデータAPEの設定を許可す
る。
【0074】〔SAMモジュール8〕SAMモジュール
8は、SCSIまたはEthernetなどを介してA
SPサーバ装置19に接続される。ASPサーバ装置1
9は、インターネット10を介して、エンドユーザのパ
ーソナルコンピュータ5、サービス事業者15_1,1
5_2,15_3のパーソナルコンピュータ16_1,
16_2,16_3を含む複数の端末装置に接続され
る。パーソナルコンピュータ5は、例えば、シリアルま
たはUSBを介してDumb型のカードリーダ・ライタ
4に接続されている。カードリーダ・ライタ4が、IC
カード3との間で物理レベルに相当する例えば無線通信
を実現する。ICカード3への操作コマンドおよびIC
カード3からのリスポンスパケットは、SAMユニット
9側で生成および解読される。よって、その中間に介在
するカードリーダ・ライタ4、パーソナルコンピュータ
5およびASPサーバ装置19は、コマンドやリスポン
ス内容をデータペイロード部分に格納して中継する役割
を果たすのみで、ICカード3内のデータの暗号化や復
号および認証などの実操作には関与しない。
【0075】パーソナルコンピュータ16_1,16_
2,16_3は、後述するスクリプトプログラムをSA
Mモジュール8にダウンロードすることで、それぞれア
プリケーションプログラムAP_1,AP_2,AP_
3をカスタマイズできる。
【0076】図21は、図1に示すSAMモジュール8
の機能ブロック図である。図21に示すように、SAM
モジュール8は、ASPS通信インタフェース部60、
外部メモリ通信インタフェース部61、バススクランブ
ル部62、乱数発生部63、暗号・復号部64、メモリ
65およびCPU66を有する。SAMモジュール8
は、耐タンパ性のモジュールである。
【0077】ASPS通信インタフェース部60は、図
1に示すASPサーバ装置19との間のデータ入出力に
用いられるインタフェースである。外部メモリ通信イン
タフェース部61は、外部メモリ7との間のデータ入出
力に用いられるインタフェースである。バススクランブ
ル部62は、外部メモリ通信インタフェース部61を介
してデータを入出力する際に、出力するデータをスクラ
ンブルし、入力したデータをデスクランブルする。乱数
発生部63は、認証処理を行う際に用いられる乱数を発
生する。暗号・復号部64は、データの暗号化、並びに
暗号化されたデータの復号を行う。メモリ65は、後述
するように、CPU66によって用いられるタスク、プ
ログラム、並びにデータを記憶する。CPU66は、後
述するスクリプトダウンロードタスク、スクリプト解釈
タスク、エンティティ生成タスク(ジョブ管理用データ
作成タスク)およびICカード手続管理タスク(ジョブ
管理用データ管理タスク)などのタスクを実行する。C
PU66は、前述したアプリケーションエレメントデー
タAPEのバージョン管理処理、並びに、一般ユーザ領
域、ユーザ共通領域、特権ユーザ領域の管理処理を行
う。CPU66は、SAMユニット9内での操作コマン
ドに基づいてSAMユニット9内で規定された処理を行
い、ICカード3のICモジュール3aおよび携帯通信
装置41のICモジュール42の操作コマンドとに基づ
いて、ICモジュール3aおよびICモジュール42の
処理を制御する。
【0078】以下、メモリ65に記憶されるタスク、プ
ログラムおよびデータについて説明する。図22は、メ
モリ65に記憶されるタスク、プログラムおよびデータ
を説明するための図である。図22に示すように、スク
リプトダウンロードタスク69、スクリプト解釈タスク
70、エンティティ生成タスク71、ICカード手続管
理用タスク72、ICカード操作用マクロコマンドスク
リプトプログラム21_1〜21_3、AP管理用テー
ブルデータ300_1〜300_3、APPテーブルデ
ータ310_1〜310_3、ICカードエンティティ
テンプレートデータ30_1〜30_3、ICカードエ
ンティティデータ73_x、入力用データブロック31
_x1、出力用データブロック32_x2、ログ用デー
タブロック33_x3、並びに演算定義用データブロッ
ク34_x4を記憶している。
【0079】スクリプトダウンロードタスク69は、図
13に示すように、AP管理用テーブルデータ300_
1〜300_3(必要に応じてAPPテーブルデータ3
10_1〜310_3)を、例えば、各サービス事業者
のコンピュータからダウンロードし、これをSAMモジ
ュール8に取り込む。
【0080】スクリプト解釈タスク70は、各サービス
事業者毎に、サービス定義テーブルデータ(必要に応じ
てAPPテーブルデータ310_1〜310_3)およ
びスクリプトプログラムを用いて、ICカードエンティ
ティテンプレートデータ、入力用データブロック、出力
用データブロック、ログ用データブロックおよび演算定
義用データブロックを生成する。各サービス事業者毎に
生成されるデータブロックの数は特に限定されない。
【0081】エンティティ生成タスク71は、例えば、
ASPサーバ装置19からエンティティ作成要求を受け
ると、ICカード3との間でポーリングを行った後に、
当該ICカード3とサービス事業者との間の手続き処理
に用いるICカードエンティティデータを、当該サービ
ス事業者に対応するICカードエンティティテンプレー
トデータを用いて生成する。このとき、ICカードエン
ティティテンプレートデータがクラスとなり、当該クラ
スのインスタンスとして、ICカードエンティティデー
タが生成される。エンティティ生成タスク71によるI
Cカードエンティティデータの生成処理について後に詳
細に説明する。
【0082】ICカード手続管理用タスク72は、メモ
リ65内に存在する単数または複数のICカードエンテ
ィティデータ73_xを用いて、ICカード3とサービ
ス事業者15_1〜15_3との間の手続き処理を実行
する。本実施形態では、複数のICカード3とサービス
事業者15_1〜15_3との間で行われる複数の手続
き処理が同時に進行する。ICカード手続管理用タスク
72は、これら複数の手続き処理を並行して実行する。
ICカード手続管理用タスク72は、一連の手続きを終
了したICカードエンティティデータ73_xを消去す
る。ICカード手続管理用タスク72の処理については
後に詳細に説明する。
【0083】スクリプトプログラム21_1〜21_2
は、スクリプトダウンロードタスク69によって、例え
ば、外部メモリ7から入力され、メモリ65に記憶され
る。AP管理用テーブルデータ300_1〜300_3
は、スクリプトダウンロードタスク69によって、例え
ば、外部メモリ7から入力され、メモリ65に記憶され
る。APPテーブルデータ310_1〜310_3は、
スクリプトダウンロードタスク69によって、例えば、
外部メモリ7から入力され、メモリ65に記憶される。
【0084】ICカードエンティティテンプレートデー
タ30_1〜30_3は、スクリプト解釈タスク70に
よって生成され、それぞれのサービス事業者に関する手
続きのICカードエンティティデータ73_xを生成す
る際のテンプレート(クラス)として用いられる。IC
カードエンティティデータ73_xは、エンティティ生
成タスク71によって、ICカードエンティティテンプ
レートデータ30_1〜30_3を例えばクラスとして
用い、当該クラスのインスタンスとして生成される。
【0085】入力用データブロック31_x1、出力用
データブロック32_x2、ログ用データブロック33
_x3および演算定義用データブロック34_x4は、
スクリプト解釈タスク70によって生成される。
【0086】以下、ICカードエンティティデータ73
_xについて説明する。ICカードエンティティデータ
73_xは、例えば、ASPサーバ装置19からICカ
ード3と所定のサービス事業者のアプリケーションプロ
グラムを用いた処理の処理要求をSAMモジュール8が
受けたときに、SAMモジュール8内のエンティティ生
成タスク71が、既に生成されている対応するサービス
事業者のICカードエンティティプレートデータを用い
て生成する。
【0087】図23は、ICカードエンティティデータ
73_xのフォーマットを説明するための図である。図
23に示すように、ICカードエンティティデータ73
_xは、管理用ポインタデータ80、エンティティID
データ81、エンティティステータスデータ(ステータ
スデータ)82、ICカード種別データ83、APE_
N指定データ84、処理順番データ85、処理前データ
86および処理後データ87を有する。
【0088】管理用ポインタデータ80には、メモリ6
5内でICカードエンティティデータ73_xを管理す
るための双方向ポインタである。エンティティIDデー
タ81は、ICカードエンティティデータ73_xの生
成要求、進行状況の確認、削除などのICカードエンテ
ィティデータ73_xを用いた一連の処理に用いられ
る。エンティティIDデータ81は、エンドユーザに渡
される返り値ともなる。エンティティIDデータ81は
一般的なファイルシステム上のファイルオープン時のデ
ィスクリプタに相当する。
【0089】エンティティステータスデータ82は、I
Cカード3に関する手続きの進行状態を示す。ICカー
ドエンティティデータ73_xが持つ基本的な状態に
は、図24に示すように、ICカード3が利用できるサ
ービスを調べる処理の状態(RS)、SAMモジュール
8がICカード3を認証する処理の状態(A1)、IC
カード3がSAMモジュール8を認証する処理の状態
(A2)、ICカード3からデータ読み出す処理の状態
(R)、ICカード3にデータ書き込む処理の状態
(W)がある。本実施形態では、サービス事業者を調べ
る処理、SAMモジュール8がICカード3を認証する
処理、ICカード3がSAMモジュール8を認証する処
理、ICカード3からデータ読み出す処理、並びにIC
カード3にデータ書き込む処理のそれぞれがジョブに対
応している。当該ジョブは、後述するように、ICカー
ド手続管理用タスク72によって、実行順番が決定され
る処理の単位になる。なお、A1,A2によって、IC
カード3とSAMモジュール8との間の相互認証処理が
構成される。
【0090】また、本実施形態では、インターネット1
0での通信時間を考慮して、前述した各基本的な状態を
図24の状態遷移図に示されるように、起動後(コマン
ド発行後)の状態と完了(応答受け取り後)状態とに分
けて管理する。具体的には、インスタンス生成(ICカ
ードエンティティデータ生成)状態、RS起動後状態、
RS完了状態、A1起動後状態、A1完了状態、A2起
動後状態、A2完了状態、R起動状態、R完了状態、W
起動状態、W完了状態、並びにインスタン(ICカード
エンティティデータ)消去状態によって、ICカードエ
ンティティデータ73_xを用いた処理状態が管理され
る。
【0091】ICカード種別データ83は、当該ICカ
ード3を発行したサービス事業者を特定するデータであ
る。ICカード種別データ83には、ICカードエンテ
ィティデータ73_xの生成時に、前述したスクリプト
プログラム内のCIコマンドによって規定されたデータ
が設定される。
【0092】サービスタイプエレメントデータ84は、
ICカードエンティティデータ73_xを用いた処理で
利用する、AP管理用テーブルデータ300_1〜30
0_3およびAPPテーブルデータ310_1〜310
_3内で定義されたアプリケーションエレメントデータ
APEを示す。サービスタイプエレメントデータ84に
は、ICカードエンティティデータ73_xの生成時
に、前述したスクリプトプログラム内のCSコマンドで
指定された単数または複数のアプリケーションエレメン
トデータAPEが設定される。
【0093】処理順番データ85は、ICカードエンテ
ィティデータ73_xを用いた処理で利用するサービス
(ジョブ)を実行する順番、すなわち、図24に示す遷
移状態を示す。すなわち、処理順番データ85は、アプ
リケーションエレメントデータAPEの名前APE_N
を用いて、ICカード3の基本的な操作に対応するジョ
ブの実行順番を示す。ここで、ジョブは、前述したよう
に、図24に示すRS,A1,A2,R,Wに相当す
る。ICカード3への具体的操作は、ジョブを用いて指
定された処理順番により実現される。例えば、相互認証
無しの読み込みのみのICカード3を用いた処理につい
ては、処理順番データ85には「RS→R」が設定され
る。また、相互認証有りの読み込みおよび書き込みの場
合には、処理順番データ85には、「RS→A1→A2
→R→W」が設定される。処理順番データ85には、I
Cカードエンティティデータ73_xの生成時に、前述
したスクリプトプログラム内のコマンド内で指定された
サービスエレメントの順番に対応するジョブの順番が設
定される。
【0094】処理前データ86には、ASPサーバ装置
19側から、ICカードエンティティデータ73_xを
用いた処理を行うための管理用データが設定される。。
例えば、処理前データ86には、SFデータブロック内
に指定されたサービス(アプリケーションエレメントデ
ータAPE)の演算式のポイントが設定される。また、
サービス間演算機能が定義されていない場合には、処理
前データ86には、要求処理金額が設定される。例え
ば、決済の場合であれば、課金額や付与ポイント数など
に関する状態が設定される。
【0095】処理後データ87は、ASPサーバ装置1
9側で必要な、ICカードエンティティデータ73_x
の処理結果のデータが設定される。例えば決済の場合で
あれば、決済の正常終了の有無などを示すデータが設定
される。
【0096】以下、通信システム1が行う動作例を説明
するが、当該動作例において、アプリケーションエレメ
ントデータAPEを用いた処理は、データAPEに複数
のバージョンがある場合に、図9〜図12などを用いて
説明したバージョン管理機能により、指定されたバージ
ョンに基づいた処理が行われる。
【0097】以下、図22に示すICカード手続管理用
タスク72による、複数のICカードエンティティデー
タ73_xを用いて、複数のICカード3に係わる処理
を行う手順を説明する。ICカード手続管理用タスク7
2は、例えば、図21に示すSAMモジュール8のCP
U66上で常に起動されている。図25は、ICカード
手続管理用タスク72が行う処理のフローチャートであ
る。 ステップST1:ICカード手続管理用タスク72は、
メモリ65内に存在する複数のICカードエンティティ
データ73_xのうち、次に処理を実行する一つのIC
カードエンティティデータ73_xを選択する。当該I
Cカードエンティティデータ73_xの選択方法は、メ
モリ65内に存在するICカードエンティティデータ7
3_xを順番に選択してもよいし、優先順位を付けて高
い優先順位のものを優先的に選択してもよい。
【0098】ステップST2:ICカード手続管理用タ
スク72は、ステップST1で選択したICカードエン
ティティデータ73_xのジョブが既に起動されている
か否かを判断し、起動されていると判断した場合にはス
テップST5の処理に進み、起動されていないと判断し
た場合にはステップST3の処理に進む。
【0099】ステップST3:ICカード手続管理用タ
スク72は、ステップST1で選択したICカードエン
ティティデータ73_xの図23に示すエンティティス
テータスデータ82から、当該エンティティデータに関
する処理が図24に示す状態遷移図の何れの状態にある
かを判断し、処理順番データ85から、次に実行するジ
ョブを決定する。このとき処理順番データ85には、前
述したように、AP管理用テーブルデータ300_1〜
300_3に設定されたサービスエレメントを用いてジ
ョブの実行順番が規定されている。
【0100】ステップST4:ICカード手続管理用タ
スク72は、ステップST3で選択したジョブを起動す
る。ICカード手続管理用タスク72は、図13を用い
て前述した入力用データブロック31_x1、出力用デ
ータブロック32_x2、ログ用データブロック33_
x3および演算定義用データブロック34_x4のう
ち、当該ジョブに関係するデータブロックを用いて当該
ジョブを実行する。
【0101】このとき、ICカード手続管理用タスク7
2は、ジョブの実行に当たってICカード3にコマンド
を発行する場合に、当該ジョブに対応するサービスエレ
メントをキーとしてAP管理用テーブルデータ300_
1〜300_3を検索し、当該サービスエレメントに対
応するサービス番号(ICカード3が解釈可能なICカ
ード3の操作コマンド)を得る。そして、ICカード手
続管理用タスク72は、当該得られたサービス番号を用
いてICカード3にコマンドを発行する。また、ICカ
ード手続管理用タスク72は、ICカード3のICモジ
ュール3aの記憶領域へのアクセスに鍵データが必要な
場合には、当該ジョブに対応するサービスエレメントを
キーとしてAP管理用テーブルデータ300_1〜30
0_3を検索し、当該サービスエレメントに対応する鍵
データを得る。そして、ICカード手続管理用タスク7
2は、当該鍵データを用いて、ICカード3との間で相
互認証、データの暗号化および復号などの処理を行い、
ICカード3の所定の記憶領域にアクセスを行う権限を
得る。
【0102】ステップST5:ステップST5が行われ
るのは、ICカード手続管理用タスク72が、ICカー
ド3にコマンドを発行し、ICカード3の処理結果を待
っているときである。ICカード手続管理用タスク72
は、ICカード3から処理結果を受け取ると、これをI
Cカードエンティティデータ73_xに設定する。
【0103】ステップST6:ICカード手続管理用タ
スク72は、図23に示すICカードエンティティデー
タ73_xのエンティティステータスデータ82を更新
する。
【0104】このように、本実施形態では、ICカード
手続管理用タスク72によって、SAMモジュール8内
に存在する複数のICカード3についてのICカードエ
ンティティデータ73_xを順に選択しながら、複数の
ICカード3についての処理を並行して行う。そのた
め、SAMモジュール8は、複数のICカード3を用い
た手続きの処理要求を受けた場合でも、これらの処理を
同時に進行することができる。
【0105】図26および図27は、上述した図25の
ステップST4におけるジョブの実行時に、前述したS
AMモジュール8がアプリケーションエレメントデータ
APEに規定された手順に従って、他のアプリケーショ
ンエレメントデータAPEによって規定された処理また
はデータにアクセスを行う場合の処理を説明するための
図である。 ステップST41:SAMモジュール8が、所定のアプ
リケーションエレメントデータAPEに応じた処理を実
行中に、利用(アクセス)を行うアプリケーションプロ
グラムと、当該アプリケーションプログラム内のアプリ
ケーションエレメントデータAPEとを特定する。ま
た、当該利用が、当該アプリケーションエレメントデー
タAPEの読み出し、書き込みおよび実行の何れである
かも特定する。
【0106】ステップST42:SAMモジュール8
が、ステップST41で特定したアプリケーションエレ
メントデータAPEが、当該SAMモジュール8内に存
在するか否かを判断し、存在しないと判断した場合には
ステップST43の処理に進み、存在すると判断した場
合にはステップST45の処理に進む。
【0107】ステップST43:SAMモジュール8
が、実行中のアプリケーションプログラムに対応するA
P管理用テーブルデータ300_1〜300_3を参照
して、対応するサービス(アプリケーションエレメント
データAPE)に対応する鍵データK_SAMを取得
し、当該鍵データK_SAMを用いて、利用先のアプリ
ケーションエレメントデータAPEを有するSAMモジ
ュール8aと相互認証を行う。
【0108】ステップST44:ステップST43の相
互認証でSAMモジュール8と8aとが互いの正当性を
認証すると、SAMモジュール8はステップST45の
処理に進み、そうでない場合にはステップST50に進
む。
【0109】ステップST45:SAMモジュール8
が、実行中のアプリケーションプログラムに対応するA
P管理用テーブルデータ300_1〜300_3を参照
して、対応するサービス(アプリケーションエレメント
データAPE)に対応する鍵データK_SAMを取得す
る。また、SAMモジュール8が、ステップST41で
特定した利用先のプリケーションエレメントデータAP
Eについても、同様に、当該アプリケーションエレメン
トデータAPEに対応するAP管理用テーブルデータ3
00_1〜300_3を参照して、対応するサービス
(アプリケーションエレメントデータAPE)に対応す
る鍵データK_SAMを取得する。そして、SAMモジ
ュール8が、上記取得した2つの鍵データK_SAMを
比較する。
【0110】スクランブル46:SAMモジュール8
は、ステップST45の処理で、2つの鍵データK_S
AMが一致していると判断した場合にはステップST4
7の処理に進み、そうでない場合にはステップST50
に進む。
【0111】ステップST47:SAMモジュール8あ
るいは8aは、ステップST41で特定されたアプリケ
ーションプログラムに対応するAP管理用テーブルデー
タ300_1〜300_3を参照し、利用されるアプリ
ケーションエレメントデータAPEに対応するAPPテ
ーブルデータ310_1〜310_3を特定する。
【0112】ステップST48:SAMモジュール8あ
るいは8aは、ステップST47で特定したAPPテー
ブルデータ310_1〜310_3を基に、利用(アク
セス)されるアプリケーションエレメントデータAPE
のアクセス権限を判断する。具体的には、当該利用され
るアプリケーションエレメントデータAPEの読み出
し、書き込みおよび実行の権限を判断する。
【0113】ステップST49:SAMモジュール8あ
るいは8aは、ステップST48でアクセス権限がある
と判断した場合にはステップST50の処理に進み、そ
うでない場合にはステップST51の処理に進む。
【0114】ステップST50:SAMモジュール8あ
るいは8aは、ステップST41で特定されたアプリケ
ーションエレメントデータAPEについて、ステップS
T41で特定された利用を行う。
【0115】ステップST51:SAMモジュール8あ
るいは8aは、ステップST41で特定されたアプリケ
ーションエレメントデータAPEについて、ステップS
T41で特定された利用を行う。
【0116】また、SAMモジュール8は、上述した図
25のステップST4におけるジョブの実行時に、前述
したSAMモジュール8がアプリケーションエレメント
データAPEに規定された手順に従って、ICカード3
との間でデータ授受を行う場合には、図17に示すAP
管理用テーブルデータ300_1〜300_3を参照し
て、当該アプリケーションエレメントデータAPEに対
応する鍵データK_CADRを取得し、当該鍵データK
_CARDを用いて、ICカード3のメモリ50にアク
セスを行う。
【0117】以下、図1に示す通信システム1の全体動
作について説明する。図28および図29は、図1に示
す通信システム1の全体動作を説明するための図であ
る。
【0118】ステップST21:サービス事業者15_
1〜15_3あるいはこれらサービス事業者の依頼を受
けた者が、当該サービス事業者がICカード3を用いて
行う取り引きについての処理を記述したスクリプトプロ
グラム21_1,21_2,21_3を、例えば、図1
に示すパーソナルコンピュータ16_1,16_2,1
6_3上で作成する。また、SAMモジュール8の管理
者が、サービス事業者15_1〜15_3のそれぞれに
対応するAP管理用テーブルデータ300_1〜300
_3を作成する。
【0119】ステップST22:ステップST21で作
成されたAP管理用テーブルデータ300_1〜300
_3が外部メモリ7に記憶される。また、ステップST
21で作成されたスクリプトプログラム21_1,21
_2,21_3が、パーソナルコンピュータ16_1,
16_2,16_3から、インターネット10、ASP
サーバ装置19およびSAMモジュール8を介して、外
部メモリ7にダウンロードされる。当該ダウンロードの
処理は、図13に示すように、SAMモジュール8内の
スクリプトダウンロードタスク69によって管理され
る。
【0120】ステップST23:図13に示すSAMモ
ジュール8内のスクリプト解釈タスク70によって、各
サービス事業者毎に、AP管理用テーブルデータ300
_1〜300_3およびスクリプトプログラムを用い
て、ICカードエンティティテンプレートデータ、入力
用データブロック、出力用データブロック、ログ用デー
タブロックおよび演算定義用データブロックが生成され
る。これら生成されたデータは、図21に示すSAMモ
ジュール8のメモリ65に格納される。
【0121】ステップST24:ユーザにICカード3
が発行される。図5に示すICカード3のICモジュー
ル3aには、ユーザが契約を行ったサービス事業者との
取り引きに用いられる鍵データが記憶されている。な
お、ユーザとサービス事業者との間の契約は、ICカー
ド3の発行後に、インターネット10などを介して行っ
てもよい。
【0122】ステップST25:例えば、ユーザがパー
ソナルコンピュータ5を用いてインターネット10を介
してサーバ装置2にアクセスを行い、商品を購入しよう
とした場合に、サーバ装置2がインターネット10を介
してASPサーバ装置19に処理要求を出す。ASPサ
ーバ装置19は、サーバ装置2から処理要求を受ける
と、インターネット10を介してパーソナルコンピュー
タ5にアクセスを行う。そして、カードリーダ・ライタ
4が出したICカード3についての処理要求が、パーソ
ナルコンピュータ5、インターネット10およびASP
サーバ装置19を介してSAMモジュール8に送信され
る。
【0123】ステップST26:ASPサーバ装置19
からSAMモジュール8にエンティティ作成要求が出さ
れる。当該エンティティ作成要求には、ICカード3の
発行元を示すデータが格納されている。
【0124】ステップST27:SAMモジュール8
は、エンティティ作成要求を受けると、ICカード3と
の間でポーリングを行う。
【0125】ステップST28:SAMモジュール8の
エンティティ生成タスク71は、ポーリング終了後に、
SAMモジュール8内に存在するICカードエンティテ
ィデータ73_xの数が、スクリプトプログラムのSC
コマンドによって規定された最大数以内であるか否かを
判断し、最大数以内であればステップST29の処理に
進み、そうでない場合には処理を終了する。
【0126】ステップST29:エンティティ生成タス
ク71が、例えば、エンティティ作成要求に格納された
ICカード3の発行元を示すデータに基づいて、何れの
サービス事業者のICカードエンティティテンプレート
データを用いるかを特定し、当該特定したICカードエ
ンティティテンプレートデータ用いて、ICカードエン
ティティデータ73_xを生成する。これは、図24に
示すインスタンス生成に対応している。
【0127】ステップST30:SAMモジュール8か
らASPサーバ装置19に、ステップST29で生成し
たICカードエンティティデータ73_xのエンティテ
ィIDが出力される。
【0128】ステップST31:SAMモジュール8の
ICカード手続管理用タスク72によって、ICカード
3で利用可能なサービスが調べられる。これは、図24
に示すジョブRSに対応した処理である。
【0129】ステップST32:SAMモジュール8の
ICカード手続管理用タスク72がICカード3の正当
性を認証する。これは、図24に示すジョブA1に対応
した処理である。
【0130】ステップST33:ICカード3がSAM
モジュール8の正当性を認証する。これは、図24に示
すジョブA2に対応した処理である。ステップST3
2,ST33によって、ICカード3とSAMモジュー
ル8との間の相互認証が行われる。このとき、前述した
ように、SAMモジュール8で実行されているアプリケ
ーションエレメントデータAPEに応じて、図15に示
すAP管理用テーブルデータ300_1〜300_3が
参照されて、鍵データK_CARDが取得され、当該鍵
データK_CARDを用いてSAMモジュール8とIC
カード3のCPU51との間で相互認証が行われる。
【0131】ステップST34:SAMモジュール8の
ICカード手続管理用タスク72が、ICカード3との
間で、手続きに必要なデータの読み書きを行う。これ
は、図24に示すジョブR,Wに対応した処理である。
また、ICカード手続管理用タスク72は、ICカード
エンティティデータ73_xの処理前データ86に基づ
いて特定した演算式を用いて、ICカード3から読み出
したデータを用いて所定の演算処理を行う。
【0132】ステップST35:SAMモジュール8の
ICカード手続管理用タスク72が、ステップST34
の処理結果をASPサーバ装置19に出力する。
【0133】ステップST36:例えば、ICカード手
続管理用タスク72が、ICカードエンティティデータ
73_xを消去する。
【0134】以上説明したように、通信システム1およ
びSAMユニット9によれば、アプリケーションエレメ
ントデータAPEにバージョンの概念を導入することに
より、カード操作用鍵・発行用鍵パッケージのバージョ
ン管理が可能となる。これにより、SAMモジュール8
を使用するサービス事業者がバージョン毎に鍵のAPE
_IDをAPリソースとして個別に定義する作業が不要
となるため、管理の負担が軽減される。例えば、異なる
SAMモジュール8間でカードの分割用パッケージを授
受する場合が想定される。
【0135】また、通信システム1およびSAMユニッ
ト9によれば、アプリケーションエレメントデータAP
Eにタグの概念を導入することにより、バージョンの管
理になじまないアプリケーションエレメントデータAP
Eの参照が可能となる。例えば、サービス事業者が、A
PE_IDとAPE_TAGをアプリケーションプログ
ラムに定義すれば、タグにより参照することが可能とな
る。よって、アプリケーションプログラムの管理法やア
クセス法に精通していないサービス事業者への敷居を下
げる効果が期待できる。また、カードを論理的に分割す
る鍵パッケージは、分割後の情報を一意に特定する情報
をすべて含んでいない。よって、SAMモジュール8間
で鍵パッケージを含めた分割情報を特定するためには、
サービス事業者間で合意された情報をタグに反映するこ
とが不可欠となる。
【0136】また、通信システム1およびSAMユニッ
ト9によれば、AP_IDとAPE_IDの組み合わせ
により、システム領域、特権ユーザ領域、一般ユーザ領
域に分割することが可能となる。さらに、暗号モジュー
ルの出荷時作業(機器番号等の設定)、第1次運用オペ
レータ(特権ユーザ)での作業(暗号モジュールのID
等の設定)、第2次運用オペレータ(一般ユーザ)での
作業(実現したいカードを用いたサービス等の設定)と
オペレータの責任範囲に応じた管理が可能な機構を提供
することが可能となる。これにより、暗号モジュールが
階層性を持つ複数のユーザを前提として運用することが
可能となる。
【0137】また、通信システム1およびSAMユニッ
ト9によれば、一般ユーザ領域を共通領域とユーザ固有
領域に分割することにより、暗号モジュールにネットワ
ーク設定情報等の共通のデータを全APリソース所属す
る全事業者間で一元的に管理することが可能となる。。
これにより、個々のユーザが暗号モジュールに関する共
通の項目を管理することが可能となる。また、共通領域
に設定するAPリソース鍵は、ユーザ固有の鍵と兼用に
することができるため、サービス事業者の鍵管理を簡素
化することができる。
【0138】また、通信システム1およびSAMユニッ
ト9によれば、アプリケーションプログラムAPを複数
のアプリケーションエレメントデータAPEを用いて構
成し、AP管理用テーブルデータおよびAPPテーブル
データを用いて、各アプリケーションエレメントデータ
APEの処理内容を規定することで、ICカード3を用
いた多様なサービスを提供できる。また、通信システム
1によれば、AP管理用テーブルデータおよびAPPテ
ーブルデータを用いて、同一SAM内でのアプリケーシ
ョンエレメントデータAPEの利用、並びに異なるSA
M間でのアプリケーションエレメントデータAPEの利
用を高いセキュリティを保ちながら柔軟に実現できる。
また、通信システム1によれば、異なるSAM間でアプ
リケーションエレメントデータAPEを利用する場合
に、SAM間で相互認証を行うため、アプリケーション
プログラムのセキュリティを高めることができる。ま
た、通信システム1によれば、同一のサービス事業者の
アプリケーションプログラムに、同じクラスのSAM_
IDを割り当てることで、同じ事業者のアプリケーショ
ンプログラムのアプリケーションエレメントデータAP
E間では、煩雑な相互認証処理を行わないようにするこ
とができ、鍵情報の管理、並びにSAMモジュールの処
理負担を軽減できる。
【0139】以下、図30〜33を参照して、実施形態
のうち、本発明の特徴に係わる部分について、簡単にま
とめる。図30に示すように、ファイルシステム500
内において各ファイルに世代情報を付加する。世代情報
は、ある開始値を持ち、以降世代が増える毎にある増分
あるいは減分を加算する方法や、世代が追加された時点
の日付等を利用する方法等がある。また、これらを併用
してもよい。アプリケーション501からは、世代によ
らず同一のファイル名でアクセスされる。選択部502
は、いずれかの世代のファイルを選択し、アプリケーシ
ョン501からアクセス可能とする。ファイル名を選択
するとき、世代を指定する必要があるが、アクセスのた
び世代を指定する方法と、カレントの世代を保持してお
き、その世代をアクセスする方法である。図30におい
て、世代指定情報504は、カレントの世代を保持する
手段である。カレントの世代に対して、他の世代を指定
する方法として、カレント世代を基準として、目的のフ
ァイルの世代との差分で指定するように出来る。
【0140】また、図31に示すように、ファイル改竄
検出を行う場合に、各世代のファイル毎に署名を付加す
る。選択部502によってファイルを書き込む際に、署
名鍵510に基づき、署名生成検証部511内の特定の
アルゴリズムで署名を生成して、ファイルに挿入する。
読み出す際には、署名鍵510に基づき、署名生成検証
部511内の特定のアルゴリズムで署名を検証し、署名
が正しくない場合には、そのメッセージをアプリケーシ
ョン501へ渡す。署名検証により、ファイルの改竄を
検証できるほか、ファイルが機器の何らかの異常により
一部が欠損した場合であっても、それを検出することが
出来る。
【0141】また、図32に示すように、ファイルシス
テム500を含む機器がネットワーク520に接続さ
れ、上位機器521によりファイルシステム500がア
クセスされる場合を示す。署名を付加することにより、
ネットワーク520上でのデータの改竄、欠損を検出す
ることが出来る。例えば、図33に示すように、各ファ
イル内にレコードが複数存在する場合には、各レコード
に署名を付加することが出来る。これにより、レコード
毎に署名の検証を行うことが出来るため、特にネットワ
ーク環境でファイルをアクセスする場合等で、ネットワ
ークの状況が不安定な状況においても、上位機器側で受
け取ったレコードまでで処理を行うことが可能となる。
【0142】
【発明の効果】以上説明したように、本発明によれば、
ICなどの集積回路を用いたサービスを提供する際に、
サーバ装置上で動作するアプリケーションプログラムの
セキュリティを高めることができるデータ処理装置およ
びその方法とプログラムを提供することができる。ま
た、本発明によれば、複数のバージョンのデータモジュ
ールが混在した状態で適切に動作できるデータ処理装置
およびその方法とプログラムを提供することができる。
また、本発明によれば、アプリケーションプログラムに
対して設定を行うユーザを、セキィリティの観点から適
切に規制できるデータ処理装置およびその方法とプログ
ラムを提供することができる。
【図面の簡単な説明】
【図1】図1は、本実施形態の通信システムの全体構成
図である。
【図2】図2は、図1に示すICカードの機能ブロック
図である。
【図3】図3は、図2に示すメモリを説明するための図
である。
【図4】図4は、図1に示すSAMモジュールのソフト
ウェア構造を説明するための図である。
【図5】図5は、図1に示す外部メモリの記憶領域を説
明するための図である。
【図6】図6は、図5に示すアプリケーションプログラ
ムAPを説明するための図である。
【図7】図7は、図6に示すアプリケーションエレメン
トデータAPEの種別を説明するための図である。
【図8】図8は、図7に示す種別に対応したバージョン
を説明するための図である。
【図9】図9は、図1に示すSAMモジュールにおける
アプリケーションエレメントデータのバージョン管理の
第1の例を説明するための図である。
【図10】図10は、図1に示すSAMモジュールにお
けるアプリケーションエレメントデータのバージョン管
理の第2の例を説明するための図である。
【図11】図11は、図9に示すバージョン管理の適用
例を説明するための図である。
【図12】図12は、ログデータのバージョン管理を説
明するための図である。
【図13】図13は、示すICカード操作用マクロコマ
ンドスクリプトプログラムで使用されるコマンドを説明
するための図である。
【図14】図14は、図5に示すAP管理用記憶領域を
説明するための図である。
【図15】図15は、図14に示すAP管理用テーブル
データを説明するための図である。
【図16】図16は、SAM_IDを説明するための図
である。
【図17】図17は、図14に示すAPPテーブルデー
タを説明するための図である。
【図18】図18は、図14に示す内部リソース割当管
理用データを説明するための図である。
【図19】図19は、ユーザと、当該ユーザが設定可能
な項目との対応関係を説明するための図である。
【図20】図20は、図18に示す内部リソース割当管
理用データを用いたユーザ管理を説明するためのフロー
チャートである。
【図21】図21は、図1に示すSAMモジュールの機
能ブロック図である。
【図22】図22は、図21に示すメモリに記憶される
タスク、プログラムおよびデータを説明するための図で
ある。
【図23】図23は、ICカードエンティティデータ7
3_xのフォーマットを説明するための図である。
【図24】図24は、図23に示すエンティティステー
タスデータの状態遷移を説明するための図である。
【図25】図25は、ICカード手続管理用タスクが行
う処理のフローチャートである。
【図26】図26は、図25のステップST4における
ジョブの実行時に、SAMモジュールがアプリケーショ
ンエレメントデータAPEに規定された手順に従って、
他のアプリケーションエレメントデータAPEによって
規定された処理またはデータにアクセスを行う場合の処
理を説明するための図である。
【図27】図27は、図25のステップST4における
ジョブの実行時に、SAMモジュールがアプリケーショ
ンエレメントデータAPEに規定された手順に従って、
他のアプリケーションエレメントデータAPEによって
規定された処理またはデータにアクセスを行う場合の処
理を説明するための図である。
【図28】図28は、図1に示す通信システムの全体動
作を説明するための図である。
【図29】図29は、図1に示す通信システムの全体動
作を説明するための図である。
【図30】図30は、図1に示す実施形態におけるバー
ジョン管理の概要を説明するための図である。
【図31】図31は、図1に示す実施形態における署名
処理の概要を説明するための図である。
【図32】図32は、図1に示す実施形態における上記
機器との間の署名処理の概要を説明するための図であ
る。
【図33】図33は、図1に示す実施形態における上記
機器との間の署名処理の概要を説明するための図であ
る。
【符号の説明】
1…通信システム、2…サーバ装置、3…ICカード、
3a…ICモジュール、4…カードリーダ・ライタ、5
…パーソナルコンピュータ、7,7a…外部メモリ、8
…SAMモジュール、9,9a…SAMユニット、15
_1〜15_3…サービス事業者、19…ASPサーバ
装置、41…携帯通信装置、42…ICモジュール
───────────────────────────────────────────────────── フロントページの続き (72)発明者 舘野 啓 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 Fターム(参考) 5B076 AB17 AC07 FB05 FB11 FC10

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】アプリケーションプログラムを実行し、所
    定の集積回路との間でデータ授受を行い、前記集積回路
    と協動して所定のサービスを提供するデータ処理装置で
    あって、 前記アプリケーションプログラムが複数の第1のデータ
    モジュールから構成され、前記第1のデータモジュール
    が複数のバージョンを有する場合に、前記複数のバージ
    ョンにそれぞれ対応する複数の第2のデータモジュール
    と、前記第1のデータモジュールと前記複数の第2のデ
    ータモジュールとの対応関係を管理するバージョン管理
    用データモジュールと、前記第1のデータモジュールと
    それに対応する前記バージョン管理用データモジュール
    との対応関係を管理する管理データとを記憶する記憶回
    路と、 前記第1のデータモジュールに対応する処理を行う場合
    に、前記管理データを参照して前記バージョン管理用デ
    ータモジュールを特定し、当該特定したバージョン管理
    用データモジュールを用いて、前記データ処理装置の内
    部あるいは外部から指定されたバージョンに対応する前
    記第2のデータモジュールを用いて処理を行う処理回路
    とを有するデータ処理装置。
  2. 【請求項2】前記処理回路は、前記バージョン管理用デ
    ータモジュールに含まれるバージョン指定データによっ
    て指定されたバージョンに対応する前記第2のデータモ
    ジュールを用いて処理を行う請求項1に記載のデータ処
    理装置。
  3. 【請求項3】前記処理回路は、前記データ処理装置の内
    部あるいは外部から指定された値と、前記バージョン指
    定データが示す値とを用いて得たバージョン値に対応す
    る前記第2のデータモジュールを用いて処理を行う請求
    項2に記載のデータ処理装置。
  4. 【請求項4】前記バージョン管理用データモジュール
    は、前記バージョンの識別データと、それに対応する前
    記第2のデータモジュールとをレコード形式で保持し、 前記処理回路は、 前記管理データを参照して前記バージョン管理用データ
    モジュールを特定し、当該特定したバージョン管理用デ
    ータモジュールから、指定されたバージョンの識別デー
    タをキーとして、対応する前記第2のデータモジュール
    を検索し、当該検索によって得た前記第2のデータモジ
    ュールを用いて処理を行う請求項1に記載のデータ処理
    装置。
  5. 【請求項5】前記バージョン管理用データモジュール
    は、前記バージョンの識別データと、当該バージョンに
    対応する前記第2のデータモジュールの識別データとを
    対応付けて示す表データを有し、 前記処理回路は、 前記管理データを参照して前記バージョン管理用データ
    モジュールを特定し、当該特定したバージョン管理用デ
    ータモジュールの前記表データから、指定されたバージ
    ョンの識別データをキーとして、対応する前記第2のデ
    ータモジュールの識別データを検索し、当該検索によっ
    て得た識別データを基に、対応する前記第2のデータモ
    ジュールを得て処理を行う請求項1に記載のデータ処理
    装置。
  6. 【請求項6】前記第2のデータモジュールの識別データ
    は、当該第2のデータモジュールに対応する前記第1の
    データモジュールの識別データと、前記バージョンの識
    別データとから構成される請求項5に記載のデータ処理
    装置。
  7. 【請求項7】前記処理回路は、前記データ処理装置の外
    部からコマンドを受けて、前記第1のデータモジュール
    の識別データを設定する請求項5に記載のデータ処理装
    置。
  8. 【請求項8】前記処理回路は、前記データ処理装置の外
    部からコマンドを受けて、前記バージョンの識別データ
    を設定する請求項5に記載のデータ処理装置。
  9. 【請求項9】前記第1のデータモジュールは、鍵データ
    であり、 前記バージョンの識別データは、前記鍵データの識別デ
    ータと関連付けられている請求項5に記載のデータ処理
    装置。
  10. 【請求項10】前記第1のデータモジュールは、署名鍵
    データであり、 前記処理回路は、前記管理データを参照して、当該第1
    のデータモジュールに対応する前記バージョン管理用デ
    ータモジュールを特定し、当該特定したバージョン管理
    用データモジュールを用いて、前記データ処理装置の内
    部あるいは外部から指定されたバージョンに対応する第
    2のデータモジュールにアクセスし、当第2のデータモ
    ジュールに格納されたバージョンの署名鍵データを用い
    て、署名作成処理または署名検証処理を行う請求項1に
    記載のデータ処理装置。
  11. 【請求項11】前記処理回路は、前記第1のデータモジ
    ュールの全体あるいは一部に対して、その正当性の有無
    を検証するために、前記署名鍵データを用いた署名作成
    処理または署名検証処理を行う請求項10に記載のデー
    タ処理装置。
  12. 【請求項12】前記第1のデータモジュール内のデータ
    が単数または複数のレコードから構成されている場合
    に、 前記処理回路は、 前記レコードのそれぞれに、前記レコード内のデータの
    一部または全体に対して、前記署名鍵データと所定の暗
    号アルゴリズムに基づいた署名データを生成し、当該署
    名データを前記レコードに付加して前記記憶回路に書き
    込み、 前記第1のデータモジュールのレコードを前記記憶回路
    から読み出す場合に、前記書き込み時に用いた署名鍵デ
    ータと前記暗号アルゴリズムに基づいて署名データを生
    成し、当該生成した署名データと、当該レコードに付加
    された署名データとの比較して、当該レコードの正当性
    を判断する請求項11に記載のデータ処理装置。
  13. 【請求項13】前記第1のデータモジュールは、前記デ
    ータモジュールを用いて行われた処理の履歴データ、前
    記記憶領域に対して前記データモジュールを登録する手
    順を示したプログラムデータ、前記記憶領域から前記デ
    ータモジュールの登録を削除する手順を示したプログラ
    ムデータ、並びに前記アプリケーションプログラムを記
    憶する前記記憶領域を規定するための手順を示したプロ
    グラムデータのうち少なくとも一つである請求項1に記
    載のデータ処理装置。
  14. 【請求項14】データ処理装置がアプリケーションプロ
    グラムに基づいて、所定の集積回路との間でデータ授受
    を行い、前記集積回路と協動して所定のサービスを提供
    する場合のデータ処理方法であって、 前記アプリケーションプログラムが複数の第1のデータ
    モジュールから構成され、前記第1のデータモジュール
    が複数のバージョンを有する場合に、 前記複数のバージョンにそれぞれ対応する複数の第2の
    データモジュールと、前記第1のデータモジュールと前
    記複数の第2のデータモジュールとの対応関係を管理す
    るバージョン管理用データモジュールと、前記第1のデ
    ータモジュールとそれに対応する前記バージョン管理用
    データモジュールとの対応関係を管理する管理データと
    を用意し、 前記データ処理装置が、前記第1のデータモジュールに
    対応する処理を行う場合に、前記管理データを参照して
    前記バージョン管理用データモジュールを特定し、 前記データ処理装置が、当該特定したバージョン管理用
    データモジュールを用いて、前記データ処理装置の内部
    あるいは外部から指定されたバージョンに対応する前記
    第2のデータモジュールを取得し、 前記データ処理装置が、当該取得した第2のデータモジ
    ュールを利用するデータ処理方法。
  15. 【請求項15】前記バージョン管理用データモジュール
    は、前記バージョンの識別データと、それに対応する前
    記第2のデータモジュールとをレコード形式で保持し、 前記データ処理装置が、前記管理データを参照して前記
    バージョン管理用データモジュールを特定し、 前記データ処理装置が、当該特定したバージョン管理用
    データモジュールから、指定されたバージョンの識別デ
    ータをキーとして、対応する前記第2のデータモジュー
    ルを検索して取得し、 前記データ処理装置が、当該取得した第2のデータモジ
    ュールを用いて処理を行う請求項14に記載のデータ処
    理方法。
  16. 【請求項16】前記バージョン管理用データモジュール
    は、前記バージョンの識別データと、当該バージョンに
    対応する前記第2のデータモジュールの識別データとを
    対応付けて示す表データを有し、 前記データ処理装置が、前記管理データを参照して前記
    バージョン管理用データモジュールを特定し、 前記データ処理装置が、当該特定したバージョン管理用
    データモジュールの前記表データから、指定されたバー
    ジョンの識別データをキーとして、対応する前記第2の
    データモジュールの識別データを検索し、 前記データ処理装置が、当該検索によって得た識別デー
    タを基に、対応する前記第2のデータモジュールを得て
    処理を行う請求項14に記載のデータ処理方法。
  17. 【請求項17】アプリケーションプログラムに基づい
    て、所定の集積回路との間でデータ授受を行い、前記集
    積回路と協動して所定のサービスを提供するデータ処理
    装置によって実行されるプログラムであって、 前記アプリケーションプログラムが複数の第1のデータ
    モジュールから構成され、前記第1のデータモジュール
    が複数のバージョンを有する場合に、 前記複数のバージョンにそれぞれ対応する複数の第2の
    データモジュールと、前記第1のデータモジュールと前
    記複数の第2のデータモジュールとの対応関係を管理す
    るバージョン管理用データモジュールと、前記第1のデ
    ータモジュールとそれに対応する前記バージョン管理用
    データモジュールとの対応関係を管理する管理データと
    を用いて処理を行い、 前記第1のデータモジュールに対応する処理を行う場合
    に、前記管理データを参照して前記バージョン管理用デ
    ータモジュールを特定する手順と、 前記データ処理装置が、当該特定したバージョン管理用
    データモジュールを用いて、前記データ処理装置の内部
    あるいは外部から指定されたバージョンに対応する前記
    第2のデータモジュールを取得する手順と、 前記データ処理装置が、当該取得した第2のデータモジ
    ュールを利用する手順とを有するプログラム。
  18. 【請求項18】前記バージョン管理用データモジュール
    が、前記バージョンの識別データと、それに対応する前
    記第2のデータモジュールとをレコード形式で保持する
    場合に、 前記特定したバージョン管理用データモジュールから、
    指定されたバージョンの識別データをキーとして、対応
    する前記第2のデータモジュールを検索して取得する手
    順を有する請求項17に記載のプログラム。
  19. 【請求項19】前記バージョン管理用データモジュール
    が、前記バージョンの識別データと、当該バージョンに
    対応する前記第2のデータモジュールの識別データとを
    対応付けて示す表データを有する場合に、 前記特定したバージョン管理用データモジュールの前記
    表データから、指定されたバージョンの識別データをキ
    ーとして、対応する前記第2のデータモジュールの識別
    データを検索する手順と、 当該検索によって得た識別データを基に、対応する前記
    第2のデータモジュールを得て処理を行う手順とを有す
    る請求項17に記載のプログラム。
  20. 【請求項20】それぞれ複数の第1のデータモジュール
    から構成された複数の第2のデータモジュールを用い
    て、集積回路と通信して処理を行うデータ処理装置であ
    って、 それぞれ対応する第1のユーザによってアクセスされる
    前記第2のデータモジュールを記憶する複数の第1の記
    憶領域と、前記複数の第1のユーザによって共用される
    前記第2のデータモジュールを記憶する第2の記憶領域
    と、特権ユーザによってのみアクセス許可される前記第
    2のデータモジュールを記憶する第3の記憶領域とを有
    する記憶回路と、 前記第1のデータモジュールの識別データと、前記第2
    のデータモジュールの識別データとを用いて、前記第1
    の記憶領域、前記第2の記憶領域および前記第3の記憶
    領域への階層的なアクセスの許否を規定したアクセス管
    理データに基づいて、前記記憶回路の記憶領域へのアク
    セス許否を決定する処理回路とを有するデータ処理装
    置。
  21. 【請求項21】前記第1の記憶領域に記憶された第2の
    データモジュールは、当該第2のデータモジュールに対
    応する前記第1のユーザによって所定の鍵データを用い
    て暗号化されている請求項20に記載のデータ処理装
    置。
  22. 【請求項22】前記処理回路は、前記第1の記憶領域に
    記憶された前記第2のデータモジュールの設定を行う鍵
    データを用いて前記第2の記憶領域に記憶された前記第
    2のデータモジュールの設定を行うことを許可する請求
    項20に記載のデータ処理装置。
  23. 【請求項23】データ処理装置が、それぞれ複数の第1
    のデータモジュールから構成された複数の第2のデータ
    モジュールを用いて集積回路と通信して処理を行うデー
    タ処理方法であって、 それぞれ対応する第1のユーザによってアクセスされる
    前記第2のデータモジュールを記憶する複数の第1の記
    憶領域と、前記複数の第1のユーザによって共用される
    前記第2のデータモジュールを記憶する第2の記憶領域
    と、特権ユーザによってのみアクセス許可される前記第
    2のデータモジュールを記憶する第3の記憶領域とを有
    する記憶回路へのアクセス許否を、 前記第1のデータモジュールの識別データと、前記第2
    のデータモジュールの識別データとを用いて、前記第1
    の記憶領域、前記第2の記憶領域および前記第3の記憶
    領域への階層的なアクセスの許否を規定したアクセス管
    理データに基づいて決定するデータ処理方法。
  24. 【請求項24】前記第1の記憶領域に記憶された第2の
    データモジュールは、当該第2のデータモジュールに対
    応する前記第1のユーザによって所定の鍵データを用い
    て暗号化されている請求項23に記載のデータ処理方
    法。
  25. 【請求項25】前記第1の記憶領域に記憶された前記第
    2のデータモジュールの設定を行う鍵データを用いて前
    記第2の記憶領域に記憶された前記第2のデータモジュ
    ールの設定を行うことを許可する請求項23に記載のデ
    ータ処理方法。
  26. 【請求項26】データ処理装置が、それぞれ複数の第1
    のデータモジュールから構成された複数の第2のデータ
    モジュールを用いて集積回路と通信して処理を行うデー
    タ処理装置で実行されるプログラムであって、 それぞれ対応する第1のユーザによってアクセスされる
    前記第2のデータモジュールを記憶する複数の第1の記
    憶領域と、前記複数の第1のユーザによって共用される
    前記第2のデータモジュールを記憶する第2の記憶領域
    と、特権ユーザによってのみアクセス許可される前記第
    2のデータモジュールを記憶する第3の記憶領域とを有
    する記憶回路へのアクセス許否を、 前記第1のデータモジュールの識別データと、前記第2
    のデータモジュールの識別データとを用いて、前記第1
    の記憶領域、前記第2の記憶領域および前記第3の記憶
    領域への階層的なアクセスの許否を規定したアクセス管
    理データに基づいて決定する手順を有するプログラム。
JP2001333468A 2001-10-30 2001-10-30 データ処理装置およびその方法とプログラム Expired - Fee Related JP4055393B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2001333468A JP4055393B2 (ja) 2001-10-30 2001-10-30 データ処理装置およびその方法とプログラム
SG200206450A SG127686A1 (en) 2001-10-30 2002-10-24 Data-processing apparatus, data-processing method and program
US10/282,109 US7478435B2 (en) 2001-10-30 2002-10-29 Version management system for multiple application elements
CNB021479399A CN1282071C (zh) 2001-10-30 2002-10-30 数据处理装置、数据处理方法和程序
HK03107985.9A HK1057793B (en) 2001-10-30 2003-11-05 Data-processing apparatus, data-processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001333468A JP4055393B2 (ja) 2001-10-30 2001-10-30 データ処理装置およびその方法とプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007281032A Division JP2008102943A (ja) 2007-10-29 2007-10-29 データ処理装置およびその方法とプログラム

Publications (2)

Publication Number Publication Date
JP2003140760A true JP2003140760A (ja) 2003-05-16
JP4055393B2 JP4055393B2 (ja) 2008-03-05

Family

ID=19148719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001333468A Expired - Fee Related JP4055393B2 (ja) 2001-10-30 2001-10-30 データ処理装置およびその方法とプログラム

Country Status (4)

Country Link
US (1) US7478435B2 (ja)
JP (1) JP4055393B2 (ja)
CN (1) CN1282071C (ja)
SG (1) SG127686A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006098830A (ja) * 2004-09-30 2006-04-13 Felica Networks Inc 情報管理装置および方法、並びにプログラム
JP2013546107A (ja) * 2010-12-17 2013-12-26 グーグル・インコーポレーテッド セキュアエレメントへのアプリケーションデータの書き込み
JP2020535693A (ja) * 2017-09-26 2020-12-03 シー−スカイ マイクロシステムズ カンパニー,リミテッド 記憶データ暗号化/復号化装置及び方法

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3818269B2 (ja) * 2003-03-28 2006-09-06 ブラザー工業株式会社 情報処理装置、及び、プログラム
US7793227B2 (en) * 2003-08-12 2010-09-07 Yahoo! Inc. Method and system of providing customizable buttons
US7421488B2 (en) * 2003-08-14 2008-09-02 International Business Machines Corporation System, method, and computer program product for centralized management of an infiniband distributed system area network
CN100463534C (zh) * 2003-12-08 2009-02-18 中兴通讯股份有限公司 一种单板版本的即插即用的管理方法
US7707642B1 (en) * 2004-08-31 2010-04-27 Adobe Systems Incorporated Document access auditing
CN100565575C (zh) * 2004-11-08 2009-12-02 索尼株式会社 信息处理系统和信息处理设备
US20060277596A1 (en) * 2005-06-06 2006-12-07 Calvert Peter S Method and system for multi-instance session support in a load-balanced environment
JP2008059304A (ja) * 2006-08-31 2008-03-13 Sony Corp 通信装置および方法、並びにプログラム
JP5814526B2 (ja) * 2010-08-26 2015-11-17 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、およびプログラム
US8745634B2 (en) * 2010-10-15 2014-06-03 Invensys Systems, Inc. System and method for integrated workflow scaling
JP5967603B2 (ja) * 2011-12-21 2016-08-10 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 複数の変更履歴データのうちからソースコード中の変更内容を探索するための方法、並びに、そのコンピュータ及びコンピュータ・プログラム
US9531808B2 (en) * 2013-08-22 2016-12-27 Avaya Inc. Providing data resource services within enterprise systems for resource level sharing among multiple applications, and related methods, systems, and computer-readable media
US12124586B2 (en) * 2013-09-13 2024-10-22 Omnissa, Llc Risk assessment for managed client devices
US9519468B2 (en) * 2015-02-13 2016-12-13 Oracle International Corporation Modular co-versioning in a dynamically linked runtime environment
US10853057B1 (en) * 2017-03-29 2020-12-01 Amazon Technologies, Inc. Software library versioning with caching
CN108694185B (zh) * 2017-04-07 2021-06-04 成都阜特科技股份有限公司 一种数据存储与提取的方法
CN108153888B (zh) * 2017-12-28 2022-01-04 广州美诚汇信息科技有限公司 产品质量追溯档案构建平台及方法
EP3920039B1 (en) * 2019-01-29 2024-10-16 Nippon Telegraph And Telephone Corporation Information processing device, method, and program

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5278979A (en) * 1990-12-20 1994-01-11 International Business Machines Corp. Version management system using pointers shared by a plurality of versions for indicating active lines of a version
DE69521413T2 (de) * 1994-01-13 2002-05-29 Certco Inc., New York Verschlüsselungseinrichtung und verfahren mit möglichkeit zur gesicherten zentralen schlüsselablage
EP0818761A1 (en) * 1996-07-12 1998-01-14 Koninklijke KPN N.V. Integrated circuit card, secure application module, system comprising a secure application module and a terminal and a method for controlling service actions to be carried out by the secure application module on the integrated circuit card
ES2184066T3 (es) * 1996-10-25 2003-04-01 Schlumberger Systems & Service Uso de un lenguaje de programacion de alto nivel con microcontrolador.
US6381698B1 (en) * 1997-05-21 2002-04-30 At&T Corp System and method for providing assurance to a host that a piece of software possesses a particular property
US6574661B1 (en) * 1997-09-26 2003-06-03 Mci Communications Corporation Integrated proxy interface for web based telecommunication toll-free network management using a network manager for downloading a call routing tree to client
JP4427693B2 (ja) * 1998-10-02 2010-03-10 ソニー株式会社 データ処理装置および方法、並びにデータ復号処理装置および方法
TW449991B (en) * 1999-01-12 2001-08-11 Ibm Method and system for securely handling information between two information processing devices
US6922835B1 (en) * 1999-01-22 2005-07-26 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
US6370573B1 (en) * 1999-08-31 2002-04-09 Accenture Llp System, method and article of manufacture for managing an environment of a development architecture framework
US6757893B1 (en) * 1999-12-17 2004-06-29 Canon Kabushiki Kaisha Version control system for software code
US6584476B1 (en) * 2000-04-22 2003-06-24 Oracle Corp. System and method for enforcing referential constraints between versioned database tables
JP4608749B2 (ja) * 2000-07-24 2011-01-12 ソニー株式会社 データ処理装置、データ処理方法、およびライセンスシステム、並びにプログラム提供媒体
JP4366845B2 (ja) * 2000-07-24 2009-11-18 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラム提供媒体
US7050589B2 (en) * 2001-08-17 2006-05-23 Sun Microsystems, Inc. Client controlled data recovery management

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006098830A (ja) * 2004-09-30 2006-04-13 Felica Networks Inc 情報管理装置および方法、並びにプログラム
JP2013546107A (ja) * 2010-12-17 2013-12-26 グーグル・インコーポレーテッド セキュアエレメントへのアプリケーションデータの書き込み
JP2020535693A (ja) * 2017-09-26 2020-12-03 シー−スカイ マイクロシステムズ カンパニー,リミテッド 記憶データ暗号化/復号化装置及び方法
JP7225220B2 (ja) 2017-09-26 2023-02-20 シー-スカイ マイクロシステムズ カンパニー,リミテッド 記憶データ暗号化/復号化装置及び方法

Also Published As

Publication number Publication date
CN1416054A (zh) 2003-05-07
US20030167398A1 (en) 2003-09-04
CN1282071C (zh) 2006-10-25
SG127686A1 (en) 2006-12-29
JP4055393B2 (ja) 2008-03-05
US7478435B2 (en) 2009-01-13
HK1057793A1 (en) 2004-04-16

Similar Documents

Publication Publication Date Title
JP4055393B2 (ja) データ処理装置およびその方法とプログラム
JP4818542B2 (ja) コンピューティングプラットフォームにおけるサービスの実行
US8447889B2 (en) Portable mass storage device with virtual machine activation
US7240345B2 (en) Data processing apparatus and associated method
JP3783608B2 (ja) 通信方法、通信システム、データ処理装置、サーバ装置およびプログラム
US7610488B2 (en) Data processing device and method and program of same
US7716477B2 (en) Data processing method, program of the same, and device of the same
WO2024036832A1 (zh) 基于tpm的智能密码钥匙密码应用接口的实现方法
US7664953B2 (en) Data processing device, method of same, and program of same
JP5118700B2 (ja) 仮想マシンのアクティブ化を伴う携帯可能な大容量記憶装置
JP2003141460A (ja) 通信方法、データ処理装置およびプログラム
JP2004112510A (ja) データ処理方法、そのプログラムおよびその装置
JP4207409B2 (ja) データ処理装置およびその方法
CN100481103C (zh) 数据处理方法及其设备
EP1542392A1 (en) Data processing method, program thereof, and device thereof
JP2008102943A (ja) データ処理装置およびその方法とプログラム
JP2002244865A (ja) データ処理方法および半導体回路
JP2002245414A (ja) データ処理方法および半導体回路
JP2003140974A (ja) データ処理装置およびその方法とプログラム
CN120045238A (zh) 一种指纹仪sdk的调用方法及终端
JPH086785A (ja) ソフトウエア使用許諾方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070806

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071029

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071203

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees