JP2003076663A - Data processor, and data processing method - Google Patents

Data processor, and data processing method

Info

Publication number
JP2003076663A
JP2003076663A JP2001262288A JP2001262288A JP2003076663A JP 2003076663 A JP2003076663 A JP 2003076663A JP 2001262288 A JP2001262288 A JP 2001262288A JP 2001262288 A JP2001262288 A JP 2001262288A JP 2003076663 A JP2003076663 A JP 2003076663A
Authority
JP
Japan
Prior art keywords
data
processing
module
semiconductor circuit
key
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
JP2001262288A
Other languages
Japanese (ja)
Other versions
JP4207409B2 (en
Inventor
Masahiro Sueyoshi
正弘 末吉
Fumio Kubono
文夫 久保野
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
Priority to JP2001262288A priority Critical patent/JP4207409B2/en
Application filed by Sony Corp filed Critical Sony Corp
Priority to SG200505142-0A priority patent/SG154320A1/en
Priority to SG200505136-2A priority patent/SG143064A1/en
Priority to SG200505137-0A priority patent/SG140467A1/en
Priority to SG200505141-2A priority patent/SG143065A1/en
Priority to SG200505139-6A priority patent/SG160187A1/en
Priority to PCT/JP2002/001324 priority patent/WO2002065287A1/en
Priority to SG200505138-8A priority patent/SG143976A1/en
Priority to US10/257,472 priority patent/US7240345B2/en
Priority to EP02700588A priority patent/EP1361511A4/en
Priority to CN200910004389.6A priority patent/CN101526982B/en
Priority to CN02801052.3A priority patent/CN1261870C/en
Priority to SG200505135-4A priority patent/SG132507A1/en
Publication of JP2003076663A publication Critical patent/JP2003076663A/en
Priority to HK04104630A priority patent/HK1062722A1/en
Priority to US11/688,439 priority patent/US8141057B2/en
Priority to HK07105179.5A priority patent/HK1098849A1/en
Application granted granted Critical
Publication of JP4207409B2 publication Critical patent/JP4207409B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Credit Cards Or The Like (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a data processor which can improve the security of application programs operated on a server device when providing services using an integrated circuit such as ICs. SOLUTION: An external memory 7 stores a plurality of application programs respectively constituted by a plurality of sets of application element data APE and table data for AP control. A SAM chip 8 performs the processing related to services based on the application element data APE. In the processing, key data for performing communication with other SAM chips 8a and an IC card 3 is obtained by referring to the table data for AP control in the processing.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、ICなどの集積回
路を用いたサービス提供に用いられるデータ処理装置お
よびその方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device used for service provision using an integrated circuit such as an IC and a method thereof.

【0002】[0002]

【従来の技術】現在、ICカードを用いてインターネッ
トなどのネットワークを介した取り引きを行う通信シス
テムが開発されている。このような通信システムでは、
ICカードを用いたサービスを提供するサービス提供者
からの依頼を受けて当該サービス提供者が規定した手続
き処理を実行するアプリケーションプログラムをサーバ
装置が実行する。サーバ装置は、例えばICカードのリ
ーダ・ライタやPC(Personal Computer) から処理要求
に応じて、上記アプリケーションプログラムに基づい
て、ユーザ認証やデータの暗号化及び復号などの処理を
行う。
2. Description of the Related Art Currently, a communication system has been developed which uses an IC card to carry out transactions via a network such as the Internet. In such a communication system,
In response to a request from a service provider who provides a service using an IC card, the server device executes an application program that executes a procedure process defined by the service provider. The server device performs processing such as user authentication and data encryption / decryption based on the application program in response to a processing request from an IC card reader / writer or a PC (Personal Computer).

【0003】[0003]

【発明が解決しようとする課題】上述したサーバ装置上
で動作するアプリケーションプログラムは、サービス提
供者が設定した鍵データ、課金データおよび履歴データ
などのセキュリティの高いデータを取り扱うため、不正
な改竄や監視から保護したいという要請がある。
Since the application program operating on the above-mentioned server device handles high-security data such as key data, billing data and history data set by the service provider, it is illegally tampered with or monitored. There is a request to protect from

【0004】本発明は上述した従来技術の問題点に鑑み
てなされ、ICなどの集積回路を用いたサービスを提供
する際に、サーバ装置上で動作するアプリケーションプ
ログラムのセキュリティを高めることができるデータ処
理装置およびその方法を提供することを目的とする。
The present invention has been made in view of the above-described problems of the prior art, and when providing a service using an integrated circuit such as an IC, data processing capable of enhancing the security of an application program operating on a server device. An object is to provide an apparatus and a method thereof.

【0005】[0005]

【課題を解決するための手段】上述した従来技術の問題
点を解決し、上述した目的を達成するために、第1の発
明のデータ処理装置は、集積回路との間で通信を行って
サービスを提供するための処理手順を記述した処理手順
データを含む複数のデータモジュールによってそれぞれ
構成される複数のアプリケーションプログラムをそれぞ
れ予め決められた記憶領域に記憶し、前記データモジュ
ールと、当該データモジュールに応じた処理において他
の前記データモジュールを利用するために用いられる第
1の鍵データと、当該データモジュールに応じた処理に
おいて前記集積回路とデータ授受を行うために用いられ
る第2の鍵データとを対応付けて示す管理データを記憶
する記憶回路と、前記データモジュールに基づいて前記
サービスに係わる処理を行い、当該処理において、前記
管理データを参照して、当該データモジュールに対応し
た前記第1の鍵データを用いて前記他のデータモジュー
ルを利用し、当該データモジュールに対応した前記第2
の鍵データを用いて前記集積回路とデータの授受を行う
半導体回路とを有する。
In order to solve the above-mentioned problems of the prior art and achieve the above-mentioned object, the data processing device of the first invention communicates with an integrated circuit to provide a service. A plurality of application programs each configured by a plurality of data modules including processing procedure data describing a processing procedure for providing the data are stored in a predetermined storage area, and according to the data module and the data module, Corresponding first key data used to use another data module in the processing described above and second key data used to exchange data with the integrated circuit in the processing corresponding to the data module. A storage circuit that stores management data additionally shown, and relates to the service based on the data module Performs management, in the process, by referring to the management data, the data module using the first key data corresponding to utilize the other data module, the second corresponding to the data module
The integrated circuit and a semiconductor circuit for exchanging data by using the key data.

【0006】本発明の第1のデータ処理装置の作用は以
下のようになる。半導体回路が、記憶回路から読み出し
たデータモジュールに基づいて前記サービスに係わる処
理を行う。半導体回路は、当該処理において、前記管理
データを参照して、当該データモジュールに対応した前
記第1の鍵データを用いて前記他のデータモジュールを
利用する。また、半導体回路は、当該処理において、当
該データモジュールに対応した前記第2の鍵データを用
いて前記集積回路とデータの授受を行う。
The operation of the first data processing device of the present invention is as follows. The semiconductor circuit performs processing related to the service based on the data module read from the storage circuit. In the processing, the semiconductor circuit refers to the management data and uses the other data module by using the first key data corresponding to the data module. In the processing, the semiconductor circuit exchanges data with the integrated circuit using the second key data corresponding to the data module.

【0007】また、第1の発明のデータ処理装置は、好
ましくは、前記記憶回路は、前記データモジュールを用
いて行われた処理の履歴データ、前記記憶領域に対して
前記データモジュールを登録する手順を示したプログラ
ムデータ、前記記憶領域から前記データモジュールの登
録を削除する手順を示したプログラムデータ、並びに前
記アプリケーションプログラムを記憶する前記記憶領域
を規定するための手順を示したプログラムデータのうち
少なくも一つを前記データモジュールとして記憶する。
In the data processor of the first invention, preferably, the memory circuit registers history data of processing performed using the data module, and a procedure for registering the data module in the memory area. At least the program data showing the procedure, the program data showing the procedure for deleting the registration of the data module from the storage area, and the program data showing the procedure for defining the storage area for storing the application program. One is stored as the data module.

【0008】また、第1の発明のデータ処理装置は、好
ましくは、前記半導体回路は、前記他のデータモジュー
ルに応じた処理が当該半導体回路で実行される場合に、
前記管理データを用いて、前記所定のデータモジュール
に対応する前記第1の鍵データと、前記他のデータモジ
ュールに対応する前記第1の鍵データとを得て、当該得
た2つの第1の鍵データが一致していることを条件に、
前記実行中の所定のデータモジュールから前記他のデー
タモジュールを利用する。この場合に、第1の発明のデ
ータ処理装置は、好ましくは、前記記憶回路は、前記デ
ータモジュールのそれぞれについて、当該データモジュ
ールに関する利用について許諾する形態を示す利用許可
データを記憶し、前記半導体回路は、前記2つの第1の
鍵データが一致している場合に、当該他のデータモジュ
ールに対応する前記利用許諾データを基に、当該利用許
諾データによって許諾される形態で前記他のデータモジ
ュールを利用する。
Further, in the data processing apparatus of the first invention, preferably, the semiconductor circuit is configured such that, when a process corresponding to the other data module is executed in the semiconductor circuit,
Using the management data, the first key data corresponding to the predetermined data module and the first key data corresponding to the other data module are obtained, and the obtained two first data are obtained. On condition that the key data match,
The other data module is used from the predetermined data module being executed. In this case, in the data processing device of the first invention, preferably, the storage circuit stores, for each of the data modules, usage permission data indicating a form in which the usage of the data module is licensed. When the two first key data match, the other data module is licensed based on the license data corresponding to the other data module in a form licensed by the license data. To use.

【0009】また、第1の発明のデータ処理装置は、好
ましくは、前記半導体回路は、前記他のデータモジュー
ルに応じた処理が他の半導体回路で実行される場合に、
前記管理データを用いて、前記所定のデータモジュール
に対応する前記第1の鍵データを得て、当該第1の鍵デ
ータを用いて前記他の半導体回路と相互認証を行い、互
いの正当性が認証されたことを条件に、前記実行中の所
定のデータモジュールから前記他のデータモジュールを
利用する。この場合に第1の発明のデータ処理装置は、
好ましくは、前記半導体回路は、前記互いの正当性が認
証された場合に、前記他のデータモジュールに関する利
用について許諾される形態を示す利用許諾データを基
に、当該利用許諾データによって許諾される形態で前記
他のデータモジュールを利用する。
Further, in the data processing apparatus of the first invention, preferably, in the case where the semiconductor circuit executes a process corresponding to the other data module in another semiconductor circuit,
The management data is used to obtain the first key data corresponding to the predetermined data module, and the first key data is used to perform mutual authentication with the other semiconductor circuit. On the condition that the user has been authenticated, the other data module is used from the predetermined data module being executed. In this case, the data processing device of the first invention is
Preferably, the semiconductor circuit is licensed by the license data based on license data indicating a licensed form regarding the use of the other data module when the mutual validity is authenticated. To use the other data module.

【0010】また、第2の発明のデータ処理方法は、集
積回路との間で通信を行ってサービスを提供するための
処理を行う半導体回路が記憶回路とデータ授受してデー
タ処理方法であって、前記記憶回路が、集積回路との間
で通信を行ってサービスを提供するための処理手順を記
述した処理手順データを含む複数のデータモジュールに
よってそれぞれ構成される複数のアプリケーションプロ
グラムをそれぞれ予め決められた記憶領域に記憶し、前
記データモジュールと、当該データモジュールに応じた
処理において他の前記データモジュールを利用するため
に用いられる第1の鍵データと、当該データモジュール
に応じた処理において前記集積回路とデータ授受を行う
ために用いられる第2の鍵データとを対応付けて示す管
理データを記憶する場合に、前記半導体回路が、前記デ
ータモジュールに基づいて前記サービスに係わる処理を
行い、前記半導体回路が、前記サービスに係わる処理に
おいて、前記管理データを参照して、当該データモジュ
ールに対応した前記第1の鍵データを用いて前記他のデ
ータモジュールを利用し、前記半導体回路が、前記サー
ビスに係わる処理において、当該データモジュールに対
応した前記第2の鍵データを用いて前記集積回路とデー
タの授受を行う。
The data processing method of the second invention is a data processing method in which a semiconductor circuit which performs processing for communicating with an integrated circuit and providing a service exchanges data with a memory circuit. , The storage circuit is predetermined with a plurality of application programs each configured with a plurality of data modules including processing procedure data describing processing procedures for communicating with the integrated circuit and providing a service. Stored in a storage area, the first key data used to use another data module in a process corresponding to the data module, and the integrated circuit in a process corresponding to the data module. And management data indicating the second key data used for exchanging data with each other. In this case, the semiconductor circuit performs a process related to the service based on the data module, and in the process related to the service, the semiconductor circuit refers to the management data to perform the process corresponding to the data module. The other data module is used by using the key data of No. 1, and the semiconductor circuit exchanges data with the integrated circuit by using the second key data corresponding to the data module in the process related to the service. I do.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施の形態を添付
図面を参照して説明する。図1は、本実施形態の通信シ
ステム1の全体構成図である。図1に示すように、通信
システム1は、サーバ装置2、ICカード3、カードリ
ーダ・ライタ4、パーソナルコンピュータ5、ASP(A
pplication Service Provider)サーバ装置19、SAM
(Secure Application Module) ユニット9を用いて、イ
ンターネット10を介して通信を行ってICカード3
(本発明の集積回路)を用いた決済処理などの手続き処
理を行う。SAMユニット9(本発明のデータ処理装
置)は、外部メモリ7(本発明の記憶回路)およびSA
Mチップ8(本発明の半導体回路)を有する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the accompanying drawings. FIG. 1 is an overall configuration diagram of a communication system 1 of this embodiment. As shown in FIG. 1, the communication system 1 includes a server device 2, an IC card 3, a card reader / writer 4, a personal computer 5, and an ASP (A
pplication Service Provider) server device 19, SAM
(Secure Application Module) By using the unit 9, communication is performed via the Internet 10 and the IC card 3
Procedure processing such as payment processing using the (integrated circuit of the present invention) is performed. The SAM unit 9 (data processing device of the present invention) includes an external memory 7 (memory circuit of the present invention) and an SA.
It has an M chip 8 (semiconductor circuit of the present invention).

【0012】SAMチップ8は、必要に応じて、他のS
AMチップ8a(本発明の他の半導体回路)とデータの
授受を行う。SAMチップ8aは、例えば、図2に示す
ようにSAMチップ8とは異なる他のASPサーバ装置
19aに接続されていたり、あるいは、図3に示すよう
に、SAMチップ8と同じASPサーバ装置19に接続
されている。SAMチップ8aの構成は、基本的にSA
Mチップ8と同じである。
The SAM chip 8 is provided with another S chip as needed.
Data is exchanged with the AM chip 8a (another semiconductor circuit of the present invention). The SAM chip 8a is connected to, for example, another ASP server device 19a different from the SAM chip 8 as shown in FIG. 2, or is connected to the same ASP server device 19 as the SAM chip 8 as shown in FIG. It is connected. The structure of the SAM chip 8a is basically SA
It is the same as the M chip 8.

【0013】以下、図1に示す構成要素について説明す
る。 〔ICカード3〕図4は、ICカード3の機能ブロック
図である。図4に示すように、ICカード3は、メモリ
50およびCPU51を備えたIC(Integrated Circui
t)3aを有する。メモリ50は、図5に示すように、ク
レジットカード会社などのサービス事業者15_1が使
用する記憶領域55_1、サービス事業者15_2が使
用する記憶領域55_2、並びにサービス事業者15_
3が使用する記憶領域55_3を有する。また、メモリ
50は、記憶領域55_1へのアクセス権限を判断する
ために用いられる鍵データ、記憶領域55_2へのアク
セス権限を判断するために用いられる鍵データ、並びに
記憶領域55_3へのアクセス権限を判断するために用
いられる鍵データを記憶している。当該鍵データは、相
互認証や、データの暗号化および復号などに用いられ
る。また、メモリ50は、ICカード3あるいはICカ
ード3のユーザの識別データを記憶している。
The components shown in FIG. 1 will be described below. [IC Card 3] FIG. 4 is a functional block diagram of the IC card 3. As shown in FIG. 4, the IC card 3 includes an IC (Integrated Circui) including a memory 50 and a CPU 51.
t) has 3a. As shown in FIG. 5, the memory 50 has a storage area 55_1 used by a service provider 15_1 such as a credit card company, a storage area 55_2 used by a service provider 15_2, and a service provider 15_.
3 has a storage area 55_3 used. Further, the memory 50 determines the key data used to determine the access authority to the storage area 55_1, the key data used to determine the access authority to the storage area 55_2, and the access authority to the storage area 55_3. It stores the key data used to do this. The key data is used for mutual authentication, data encryption and decryption, and the like. The memory 50 also stores identification data of the IC card 3 or the user of the IC card 3.

【0014】以下、SAMユニット9について詳細に説
明する。SAMユニット9は、前述したように、外部メ
モリ7(本発明の記憶回路)とSAMチップ8(本発明
の半導体回路)とを有する。 〔SAMチップ8のソフトウェア構成〕SAMチップ8
は、図6に示すようなソフトウェア構成を有している。
図6に示すように、SAMチップ8は、下層から上層に
向けて、HW(Hardware)層、OS層、下位ハンドラ層、
上位ハンドラ層およびAP層を順に有している。下位ハ
ンドラ層には、ドライバ層が含まれる。ここで、AP層
では、図1に示すクレジットカード会社などのサービス
事業者15_1,15_2,15_3によるICカード
3を用いた手続きを規定したアプリケーションプログラ
ムAP_1,AP_2,AP_3(本発明のアプリケー
ションプログラム)が、外部メモリ7から読み出されて
動作している。AP層では、アプリケーションプログラ
ムAP_1,AP_2,AP_3相互間、並びに上位ハ
ンドラ層との間にファイアウォールFWが設けられてい
る。
The SAM unit 9 will be described in detail below. As described above, the SAM unit 9 has the external memory 7 (memory circuit of the present invention) and the SAM chip 8 (semiconductor circuit of the present invention). [Software Configuration of SAM Chip 8] SAM Chip 8
Has a software configuration as shown in FIG.
As shown in FIG. 6, the SAM chip 8 has a HW (Hardware) layer, an OS layer, a lower handler layer,
It has an upper handler layer and an AP layer in order. The lower handler layer includes a driver layer. Here, in the AP layer, application programs AP_1, AP_2, AP_3 (application programs of the present invention) that define procedures using the IC card 3 by service providers 15_1, 15_2, 15_3 such as credit card companies shown in FIG. , Is being read from the external memory 7 and is operating. In the AP layer, a firewall FW is provided between the application programs AP_1, AP_2 and AP_3 and between the upper handler layer.

【0015】〔外部メモリ207〕図7は、外部メモリ
7の記憶領域を説明するための図である。図7に示すよ
うに、外部メモリ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がある。
[External Memory 207] FIG. 7 is a diagram for explaining a storage area of the external memory 7. As shown in FIG. 7, in the storage area of the external memory 207, the AP storage area 220_1 in which the application program AP_1 of the service provider 15_1 is stored, the service provider 15
AP storage area 220_2 in which the application program AP_2 of _2 is stored, and AP in which the application program AP_3 of the service provider 15_3 is stored
There is a storage area 220_3 and an AP management storage area 221 used by the administrator of the SAM chip 208.

【0016】AP記憶領域220_1に記憶されている
アプリケーションプログラムAP_1は、後述する複数
のアプリケーションエレメントデータAPE(本発明の
データモジュール)によって構成されている。AP記憶
領域220_1へのアクセスは、ファイアウォールFW
_1によって制限されている。AP記憶領域220_2
に記憶されているアプリケーションプログラムAP_2
は、複数のアプリケーションエレメントデータAPEに
よって構成されている。AP記憶領域220_2へのア
クセスは、ファイアウォールFW_2によって制限され
ている。AP記憶領域220_3に記憶されているアプ
リケーションプログラムAP_3は、複数のアプリケー
ションエレメントデータAPEによって構成されてい
る。AP記憶領域220_3へのアクセスは、ファイア
ウォールFW_3によって制限されている。本実施形態
では、上記アプリケーションエレメントデータAPE
は、例えば、SAMユニット9の外部から外部メモリ7
にダウンロードされる最小単位である。各アプリケーシ
ョンプログラムを構成するアプリケーションエレメント
データAPEの数は、対応するサービス事業者が任意に
決定できる。
The application program AP_1 stored in the AP storage area 220_1 is composed of a plurality of application element data APE (data module of the present invention) described later. The firewall FW is used to access the AP storage area 220_1.
Limited by _1. AP storage area 220_2
Application program AP_2 stored in
Is composed of a plurality of application element data APE. Access to the AP storage area 220_2 is restricted by the firewall FW_2. The application program AP_3 stored in the AP storage area 220_3 is composed of a plurality of application element data APE. Access to the AP storage area 220_3 is restricted by the firewall FW_3. In the present embodiment, the application element data APE
Is, for example, from the outside of the SAM unit 9 to the external memory 7
Is the smallest unit that can be downloaded to. The number of application element data APE forming each application program can be arbitrarily determined by the corresponding service provider.

【0017】また、外部メモリ7に記憶されたアプリケ
ーションプログラムAP_1,AP_2,AP_3は、
スクランブルされており、SAMチップ8に読み込まれ
たときに、デスクランブルされる。また、アプリケーシ
ョンプログラムAP_1,AP_2,AP_3は、例え
ば、それぞれ図1に示すパーソナルコンピュータ16_
1,16_2,16_3を用いて、サービス事業者15
_1,15_2,15_3によって作成され、SAMチ
ップ8を介して外部メモリ7にダウンロードされる。
The application programs AP_1, AP_2 and AP_3 stored in the external memory 7 are
It is scrambled and descrambled when read into the SAM chip 8. The application programs AP_1, AP_2, AP_3 are, for example, the personal computers 16_ shown in FIG. 1, respectively.
1, 16_2, 16_3, the service provider 15
_1, 15_2, 15_3, and downloaded to the external memory 7 via the SAM chip 8.

【0018】以下、アプリケーションプログラムAP_
1,AP_2,AP_3について詳細に説明する。アプ
リケーションプログラムは、サービス事業者毎に、SA
M内に単数または複数個存在する。アプリケーションプ
ログラムAP_1,AP_2,AP_3(以下、APと
も記す)は、図8に示すように、アプリケーションプロ
グラムAPを識別するための識別データAP_IDと、
当該アプリケーションプログラムに含まれるアプリケー
ションエレメントデータAPEの数を示すデータAPE
_NUMと、単数または複数のアプリケーションエレメ
ントデータAPEとによって構成される。識別データA
P_IDは、サービス事業者毎に異なるように決められ
ている。
Hereinafter, the application program AP_
1, AP_2, AP_3 will be described in detail. The application program is SA for each service provider.
There is one or more in M. The application programs AP_1, AP_2, AP_3 (hereinafter, also referred to as AP) include identification data AP_ID for identifying the application program AP, as shown in FIG.
Data APE indicating the number of application element data APE included in the application program
_NUM and one or more application element data APEs. Identification data A
The P_ID is determined to be different for each service provider.

【0019】図8に示すように、アプリケーションエレ
メントデータAPEは、当該アプリケーションエレメン
トデータAPEのデータサイズを示すデータAPE_S
IZEと、当該アプリケーションエレメントデータAP
Eを識別するための識別データAPE_IDと、データ
本体APE_PLとで構成される。ここで、識別データ
APE_IDは、アプリケーションエレメントデータA
PEの種別を示すデータAPE_TYPEと、当該種別
内でのアプリケーションエレメントデータAPEの識別
番号(インスタンス識別番号)を示すデータINS_N
UMとで構成される。データINS_NUMは、エンド
ユーザ(サービス事業者)側で管理される。例えば、ア
プリケーションエレメントデータAPEがファイルシス
テムコンフィグレーションの場合には、データAPE_
TYPEが「2」となり、データINS_NUMが
「1」となる。これにより、同−のSAMであれば、識
別データAPE_IDにより一意にアプリケーションエ
レメントデータAPEを特定できる。
As shown in FIG. 8, the application element data APE is data APE_S indicating the data size of the application element data APE.
ISE and the application element data AP
It is composed of identification data APE_ID for identifying E and data body APE_PL. Here, the identification data APE_ID is the application element data A.
Data APE_TYPE indicating the type of PE and data INS_N indicating the identification number (instance identification number) of the application element data APE within the type.
It is composed of UM and. The data INS_NUM is managed by the end user (service provider) side. For example, if the application element data APE has a file system configuration, the data APE_
TYPE becomes “2” and data INS_NUM becomes “1”. As a result, if the SAMs are the same, the application element data APE can be uniquely specified by the identification data APE_ID.

【0020】図7に示す外部メモリ7には、上述したア
プリケーションプログラムAP(AP_1,AP_2,
AP_3)が、SAMユニット9外で暗号化鍵データK
_APによって暗号化されて、アプリケーションプログ
ラム・パッケージAPPとして記憶されている。暗号化
鍵データK_APとしては、アプリケーションプログラ
ム毎で異なる暗号化鍵データが用いられる。
In the external memory 7 shown in FIG. 7, the above-mentioned application programs AP (AP_1, AP_2,
AP_3) is encrypted key data K outside the SAM unit 9.
It is encrypted by _AP and stored as an application program package APP. As the encryption key data K_AP, different encryption key data is used for each application program.

【0021】以下、図8を用いて説明したアプリケーシ
ョンエレメントデータAPEの種類について説明する。
図9は、1つのAP領域内に記憶されたアプリケーショ
ンエレメントデータAPEの一例を示す図である。図9
に示すように、AP領域内には、カードアクセス鍵デー
タ、ファイルシステムコンフィグレーションデータ、S
AM相互認証用鍵データ、SAM間鍵パッケージ鍵デー
タ、ICカード操作用マクロコマンドスクリプトプログ
ラム(本発明の処理手順データ)、メモリ分割用鍵パッ
ケージ、エリア登録鍵パッケージ、エリア削除用鍵パッ
ケージ、サービス登録用鍵データ、サービス削除用鍵パ
ッケージ、APリソース鍵データK_APRが、アプリ
ケーションエレメントデータAPEとして記憶されてい
る。
The types of the application element data APE described with reference to FIG. 8 will be described below.
FIG. 9 is a diagram showing an example of the application element data APE stored in one AP area. Figure 9
As shown in FIG. 3, in the AP area, card access key data, file system configuration data, S
AM mutual authentication key data, inter-SAM key package key data, IC card operating macro command script program (processing procedure data of the present invention), memory division key package, area registration key package, area deletion key package, service registration The application key data, the service deletion key package, and the AP resource key data K_APR are stored as the application element data APE.

【0022】以下、図9に示す各アプリケーションエレ
メントデータAPEについて説明する。 ・カードアクセス鍵データ カードアクセス鍵データは、ICカード3のメモリ50
に対してのデータの読み書き操作に用いられる鍵データ
である。また、後述するICカード操作用マクロコマン
ドスクリプトプログラムで参照される鍵データも、カー
ドアクセス鍵データと同じ種別のアプリケーションエレ
メントデータAPEに含まれる ・ファイルシステムコンフィグレーションデータ ファイルシステムコンフィグレーションデータとして
は、例えば、ログデータ、ネガデータ、ジャーナルデー
タがある。ログデータは例えばアプリケーションエレメ
ントデータAPEの利用履歴データであり、ネガデータ
は例えばICカードの失効情報であり、ジャーナルデー
タは例えばSAMでの実行履歴である。例えば、ファイ
ルシステムコンフィグレーションでは、ファイルアクセ
スの種別(レコードキー指定・ソート・リング)の選択
を行い、レコードキーの場合であれば、レコードサイ
ズ、レコード全体件数・レコード署名バージョン・レコ
ード署名メソッドタイプ、レコードデータサイズ、レコ
ード署名鍵を設定する。さらに、外部から本ファイルシ
ステムにデータを書き込む際に署名検証を実施するかの
有無の指定などを行う。ここでレコードとは、ファイル
データへの書き込み/読み出しの最小単位である。
The application element data APE shown in FIG. 9 will be described below. -Card access key data The card access key data is stored in the memory 50 of the IC card 3.
Key data used for reading and writing data to and from. Also, key data referred to by an IC card operation macro command script program described later is also included in the application element data APE of the same type as the card access key data. File system configuration data As file system configuration data, for example, , Log data, negative data, and journal data. The log data is, for example, usage history data of the application element data APE, the negative data is, for example, revocation information of the IC card, and the journal data is, for example, SAM execution history. For example, in the file system configuration, the type of file access (record key specification / sorting / ring) is selected. In the case of record key, record size, total number of records / record signature version / record signature method type, Set the record data size and record signature key. Furthermore, when writing data to this file system from the outside, whether or not to perform signature verification is specified. Here, a record is a minimum unit of writing / reading to / from file data.

【0023】・SAM相互認証用鍵データ 同一SAM内にあるAP間相互認証にも使用される。S
AM相互認証用鍵データとは、対応するアプリケーショ
ンエレメントデータAPEを同一SAM内の他のAPま
たは他のSAMからアクセスする際に用いられる鍵デー
タである。 ・SAM間鍵パッケージ鍵 SAM間鍵パッケージ鍵とは、SAM間での相互認証
後、カードアクセス鍵データなどのデータを交換する際
に用いられる暗号化用鍵データである。 ・ICカード操作用マクロコマンドスクリプトプログラ
ム ICカード操作用マクロコマンドスクリプトプログラム
は、サービス事業者自身によって生成され、ICカード
3に係わる処理の順番やASPサーバ装置19とのやり
取りを記述している。ICカード操作用マクロコマンド
スクリプトプログラムは、SAMユニット9に設定され
た後に、SAMチップ8内で解釈され、対応するICカ
ードエンティティデータが生成される。 ・メモリ分割用鍵パッケージ メモリ分割用鍵パッケージは、サービス事業者がICカ
ード3を用いたサービスの運用開始前に、外部メモリ7
のやICカード3のメモリの記憶領域を分割するために
使用するデータである。 ・エリア登録鍵パッケージ エリア登録鍵パッケージは、サービス事業者がICカー
ド3を用いたサービスの運用開始前に、ICカード3の
メモリの記憶領域にエリア登録を行う場合に使用するデ
ータである。 ・エリア削除用鍵パッケージ(内部生成) エリア削除用鍵パッケージは、カードアクセス鍵データ
からSAM内部で自動生成が可能なパッケージである。 ・サービス登録用鍵(内部生成) サービス登録用鍵パッケージは、サービス事業者がIC
カード3を用いたサービスの運用開始前に、外部メモリ
7のアプリケーションエレメントデータAPEを登録す
るために用いられる。サービス登録用鍵パッケージは、
カードアクセス鍵データからSAM内部で自動生成が可
能なパッケージである。 ・サービス削除用鍵パッケージ(内部生成) サービス削除用鍵パッケージは、外部メモリ7に登録さ
れているアプリケーションエレメントデータAPEを削
除するために用いられる。サービス削除用鍵パッケージ
は、カードアクセス鍵データからSAM内部で自動生成
が可能なパッケージである。 ・鍵データK_APE 鍵データK_APEは、アプリケーションエレメントデ
ータAPEを設定する際の暗号用鍵として使用され、A
P領域毎に、アプリケーションエレメントデータAPE
を設定するために異なる鍵データK_APEが割り当て
られている。
Key data for SAM mutual authentication It is also used for mutual authentication between APs in the same SAM. S
The AM mutual authentication key data is key data used when accessing the corresponding application element data APE from another AP or another SAM within the same SAM. Inter-SAM key package key The inter-SAM key package key is encryption key data used when exchanging data such as card access key data after mutual authentication between SAMs. IC card operating macro command script program The IC card operating macro command script program is generated by the service provider itself and describes the order of processing relating to the IC card 3 and the exchange with the ASP server device 19. The IC card operating macro command script program is set in the SAM unit 9 and then interpreted in the SAM chip 8 to generate corresponding IC card entity data. -Memory partitioning key package The memory partitioning key package is installed in the external memory 7 before the service operator starts the service using the IC card 3.
This is data used for dividing the storage area of the memory of the IC card 3. Area registration key package The area registration key package is data used when the service provider performs area registration in the memory area of the memory of the IC card 3 before the operation of the service using the IC card 3 is started. -Area deletion key package (internal generation) The area deletion key package is a package that can be automatically generated inside the SAM from the card access key data.・ Service registration key (internally generated) The service registration key package is provided by the service provider
It is used to register the application element data APE in the external memory 7 before the operation of the service using the card 3 is started. The service registration key package is
It is a package that can be automatically generated inside the SAM from the card access key data. Service Delete Key Package (Internal Generation) The service delete key package is used to delete the application element data APE registered in the external memory 7. The service deletion key package is a package that can be automatically generated in the SAM from the card access key data. Key data K_APE The key data K_APE is used as an encryption key when setting the application element data APE, and
Application element data APE for each P area
Different key data K_APE is assigned to set the key.

【0024】以下、上述したICカード操作用マクロコ
マンドスクリプトプログラム(以下、スクリプトプログ
ラムとも記す)について詳細に説明する。スクリプトプ
ログラムは、SAMチップ8上で動作するサービス事業
者15_1,15_2,15_3のアプリケーションプ
ログラムAP_1,AP_2,AP_3、並びに当該ア
プリケーションプログラムの実行時にICカード3が行
う処理の手続きを規定するためのプログラムである。本
実施形態では、後述するように、図10に示すように、
SAMチップ8内で、スクリプトダウンロードタスク6
9およびスクリプト解釈タスク70に基づいて処理を行
い、AP管理テーブルデータおよびスクリプトプログラ
ムから、サービス事業者15_1,15_2,15_3
に関する手続きに用いられるICカードエンティティテ
ンプレートデータ30_1、入力用データブロック31
_x1、出力用データブロック32_x2、ログ用デー
タブロック33_x3および演算定義用データブロック
34_x4を生成する。
The above-mentioned IC card operating macro command script program (hereinafter, also referred to as a script program) will be described in detail below. The script program is a program for defining the application programs AP_1, AP_2, AP_3 of the service providers 15_1, 15_2, 15_3 operating on the SAM chip 8 and the procedure of the processing performed by the IC card 3 when the application program is executed. is there. In the present embodiment, as will be described later, as shown in FIG.
In the SAM chip 8, script download task 6
9 and the script interpretation task 70, and based on the AP management table data and the script program, the service providers 15_1, 15_2, 15_3.
IC card entity template data 30_1 and input data block 31 used for the procedure related to
_X1, an output data block 32_x2, a log data block 33_x3, and an operation definition data block 34_x4 are generated.

【0025】図11は、ICカード操作用マクロコマン
ドスクリプトプログラムの記述に用いられるコマンドを
説明するための図である。当該コマンドは、SAMチッ
プ8自身に対してのコマンドは、第1文字が「S」とな
り、ICカード3の操作に係わるコマンドは第1文字が
「C」となっている。また、第2文字は、用途により使
い分けられ、例えば、ICカード3の発行元設定宣言は
「I」、利用するアプリケーションエレメントデータA
PEの宣言(サービスタイプエレメント宣言)は
「S」、ICカード3からの単純読み込み宣言は
「R」、ICカード3への単純書き込み宣言は「W」、
アプリケーションエレメントデータAPE間演算定義は
「F」になっている。
FIG. 11 is a diagram for explaining commands used to describe the IC card operating macro command script program. In the command, the first character is “S” for the command to the SAM chip 8 itself, and the first character is “C” for the command related to the operation of the IC card 3. In addition, the second character is used properly according to the purpose. For example, the issuer setting declaration of the IC card 3 is “I”, the application element data A to be used.
The PE declaration (service type element declaration) is “S”, the simple read declaration from the IC card 3 is “R”, the simple write declaration to the IC card 3 is “W”,
The operation definition between the application element data APEs is “F”.

【0026】スクリプトプログラム21_1,21_
2,21_3の記述に用いられるコマンドには、SCコ
マンド、SOコマンド、SIコマンド、SLコマンド、
SFコマンド、CIコマンド、CSコマンド、CRコマ
ンド、CWコマンドがある。SCコマンドは、SAMチ
ップ8が同時に処理することができる最大数のICカー
ドエンティティデータの数を宣言するコマンドである。
例えば、SAMチップ8が1000個のICカードエン
ティティデータを同時に処理可能な場合には、「SC:
1000」と記述される。
Script programs 21_1, 21_
The commands used to describe 2, 21_3 are SC command, SO command, SI command, SL command,
There are SF command, CI command, CS command, CR command, and CW command. The SC command is a command that declares the maximum number of IC card entity data that the SAM chip 8 can process simultaneously.
For example, when the SAM chip 8 can process 1000 IC card entity data at the same time, "SC:
1000 "is described.

【0027】SOコマンドは、後述するICカードエン
ティティデータに基づいてICカード3を用いた処理を
行う際に、SAMチップ8内で用意されたデータブロッ
クのうち、ICカード3から読み取ったデータが格納さ
れる出力用データブロック32_x2となるデータブロ
ックを宣言するコマンドである。例えば、データブロッ
ク1〜10が用意されている場合に、ICカード3から
読み取ったデータをデータブロック1に格納する場合に
は、「SO:1」と記述される。
The SO command stores the data read from the IC card 3 among the data blocks prepared in the SAM chip 8 when the processing using the IC card 3 is performed based on the IC card entity data described later. Command for declaring a data block to be the output data block 32_x2. For example, when the data blocks 1 to 10 are prepared and the data read from the IC card 3 is stored in the data block 1, it is described as “SO: 1”.

【0028】SIコマンドは、後述するICカードエン
ティティデータに基づいてICカード3を用いた処理を
行う際に、SAMチップ8内で用意されたデータブロッ
クのうち、ICカード3に書き込むデータが格納される
入力用データブロック31_x1となるデータブロック
を宣言するコマンドである。例えば、データブロック1
〜10が用意されている場合に、ICカード3に書き込
むデータをデータブロック2,3に格納する場合には、
「SI:2,3」と記述される。
The SI command stores the data to be written to the IC card 3 among the data blocks prepared in the SAM chip 8 when the processing using the IC card 3 is performed based on the IC card entity data described later. Command for declaring a data block to be the input data block 31_x1. For example, data block 1
When data to be written to the IC card 3 is stored in the data blocks 2 and 3 when 10 to 10 are prepared,
It is described as "SI: 2, 3".

【0029】SLコマンドは、後述するICカードエン
ティティデータに基づいてICカード3を用いた処理を
行う際に、SAMチップ8内で用意されたデータブロッ
クのうち、操作に係わるログデータを格納するログ用デ
ータブロック33_x3となるデータブロックを宣言す
るコマンドである。例えば、データブロック1〜10が
用意されている場合に、ログデータをデータブロック4
に格納する場合には、「SL:4」と記述される。
The SL command is a log for storing log data related to the operation among the data blocks prepared in the SAM chip 8 when the processing using the IC card 3 is performed based on the IC card entity data described later. This is a command for declaring a data block to be the data block 33_x3 for use. For example, when the data blocks 1 to 10 are prepared, the log data is set to the data block 4
When it is stored in, it is described as “SL: 4”.

【0030】SFコマンドは、ICカード3に係わる相
互のアプリケーションエレメントデータAPE間の関係
を定義を記述する演算定義用データブロック34_x4
となるデータブロックを用意するためのコマンドであ
る。演算定義用データブロック34_x4の内容は、I
Cカードエンティティデータの処理前データとなる。
The SF command is an operation definition data block 34_x4 for describing the definition of the relationship between mutual application element data APE related to the IC card 3.
Is a command for preparing a data block that becomes The contents of the operation definition data block 34_x4 is I
It is the pre-processing data of the C card entity data.

【0031】CIコマンドは、ICカード3の発行元
(サービス事業者)を宣言するためのコマンドである。
CIコマンドで定義されたサービス事業者を特定するデ
ータは、ICカードエンティティデータのICカード種
別データとなる。
The CI command is a command for declaring the issuer (service provider) of the IC card 3.
The data for specifying the service provider defined by the CI command is the IC card type data of the IC card entity data.

【0032】CSコマンドは、アプリケーションエレメ
ントデータAPE(サービスタイプエレメント)の名前
APE_Nを引用して、ICカード3への複数のサービ
スの同時操作を行うことを宣言するコマンドである。C
Sコマンドでは、名前APE_Nによって指定されたア
プリケーションエレメントデータAPE間の演算を規定
する関数を宣言できる。例えば、「CS:”Rc”+”
Wc”+”Wd”」などの宣言を行える。CSコマンド
の内容に基づいて、ICカードエンティティデータのA
PE_N指定データ、並びに処理順番データが決定され
る。
The CS command is a command that declares that a plurality of services for the IC card 3 are simultaneously operated by referring to the name APE_N of the application element data APE (service type element). C
The S command can declare a function that defines an operation between the application element data APE designated by the name APE_N. For example, "CS:" Rc "+"
Declarations such as Wc "+" Wd "" can be made. Based on the contents of the CS command, A of the IC card entity data
The PE_N designation data and the processing order data are determined.

【0033】CRコマンドは、アプリケーションエレメ
ントデータAPE間の関係の定義が行われていない場合
(SFコマンドが記述されていない場合)に、ICカー
ド3から読み出したデータを指定したデータブロックに
格納することを宣言する。例えば、ICカード3から読
み出したデータをデータブロック1に格納する場合には
「CR:SO:1=”Rc”」と記述する。
The CR command stores the data read from the IC card 3 in the designated data block when the relationship between the application element data APEs is not defined (when the SF command is not described). To declare. For example, when storing the data read from the IC card 3 in the data block 1, it is described as “CR: SO: 1 =“ Rc ””.

【0034】CWコマンドは、アプリケーションエレメ
ントデータAPE間の関係の定義が行われていない場合
に、指定したデータブロックに格納したデータをICカ
ード3に書き込むことを宣言する。例えば、データブロ
ック2に格納されたデータをICカード3に書き込む場
合には「CW:SI:2=”Wc”」と記述する。
The CW command declares that the data stored in the designated data block is written to the IC card 3 when the relationship between the application element data APEs is not defined. For example, when writing the data stored in the data block 2 to the IC card 3, it is described as “CW: SI: 2 =“ Wc ””.

【0035】CFコマンドは、サービスを跨がった演算
内容を記述するデータブロックを宣言する。例えば、サ
ービスを跨がった演算内容をSFデータブロック1に記
述する場合には、CF:CES_FUNC=SF:1」
とする。そして、SFデータブロック1内に、例えば、
「“Wc”=If(“Wc”>10)then(“W
c”−10;“Wd”=“Wc”*0.08+“W
d”)」と記述する。本式は、サービスWcの残数が1
0よりも大きいときにWcの値を10減算し、Wcの8
%に相当するポイント数として蓄積ポイントとしてWd
に加算する操作を表現している。
The CF command declares a data block that describes the content of calculation across services. For example, when describing the operation content across services in the SF data block 1, CF: CES_FUNC = SF: 1 ”
And Then, in the SF data block 1, for example,
““ Wc ”= If (“ Wc ”> 10) then (“ W
c ”-10;“ Wd ”=“ Wc ”* 0.08 +“ W
d ")". In this formula, the remaining number of services Wc is 1
When it is larger than 0, the value of Wc is subtracted by 10 and Wc becomes 8
Wd as accumulated points as the number of points corresponding to
Represents the operation of adding to.

【0036】以下、図7に示す外部メモリ7のAP管理
用記憶領域221に記憶されたデータについて説明す
る。AP管理用記憶領域221へのアクセスは、ファイ
アウォールFW_4によって制限されている。なお、フ
ァイアウォールFW_4は、図6に示すファイアウォー
ルFWに対応している。図12は、AP管理用記憶領域
221に記憶されているデータの詳細を説明するための
図である。AP管理用記憶領域221には、図12に示
すように、AP管理用テーブルデータ300_1,30
0_2,300_3(本発明の管理データ)と、APP
テーブルデータ310_1,310_2,310_3
(本発明の利用許諾データ)とが記憶されている。ここ
で、AP管理用テーブルデータ300_1,300_
2,300_3と、APPテーブルデータ310_1,
310_2,310_3は、例えば、SAMチップ8の
セットアップ時に予め登録されている。また、AP管理
用テーブルデータ300_1,300_2,300_3
と、APPテーブルデータ310_1,310_2,3
10_の書き換えは、SAMチップ8の管理者のみが行
える。
The data stored in the AP management storage area 221 of the external memory 7 shown in FIG. 7 will be described below. Access to the AP management storage area 221 is restricted by the firewall FW_4. The firewall FW_4 corresponds to the firewall FW shown in FIG. FIG. 12 is a diagram for explaining the details of the data stored in the AP management storage area 221. In the AP management storage area 221, as shown in FIG. 12, AP management table data 300_1, 30
0_2,300_3 (management data of the present invention) and APP
Table data 310_1, 310_2, 310_3
(Use permission data of the present invention) are stored. Here, AP management table data 300_1, 300_
2,300_3 and APP table data 310_1,
310_2 and 310_3 are registered in advance when the SAM chip 8 is set up, for example. In addition, AP management table data 300_1, 300_2, 300_3
And APP table data 310_1, 310_2, 3
Only the administrator of the SAM chip 8 can rewrite 10_.

【0037】AP管理用テーブルデータ300_1,3
00_2,300_3は、アプリケーションプログラム
AP毎に規定されている。また、APPテーブルデータ
310_1,310_2,310_3は、SAM相互認
証鍵データ毎に規定されている。
AP management table data 300_1, 3
00_2 and 300_3 are defined for each application program AP. The APP table data 310_1, 310_2, 310_3 are defined for each SAM mutual authentication key data.

【0038】図13は、AP管理用テーブルデータ30
0_1を説明するための図である。AP管理用テーブル
データ300_2,300_3も、AP管理用テーブル
データ300_1と同じフォーマットを有している。図
13に示すように、ICカード操作用マクロコマンドス
クリプトプログラム内で用いられる参照されるアプリケ
ーションエレメントデータAPEの名前APE_Nのそ
れぞれについて、識別データAPE_ID、内部/外部
指定データIEI、識別データSAM_ID、識別デー
タAP_ID、鍵データK_CARDA(本発明の第2
の鍵データ)、鍵データK_SAM(本発明の第1の鍵
データ)、データSET_APP、データFLAG_I
PおよびデータFLAG_STRを対応付けて示してい
る。アプリケーションエレメントデータAPEの名前A
PE_Nは、サービス事業者15_1,15_2,15
_3のアプリケーションプログラムによって提供される
サービス(アプリケーションエレメントデータAPE)
に付けられた名前である。名前APE_Nは、各サービ
ス事業者のアプリケーションプログラムが使用できるサ
ービスのサービス番号の替わりに参照される識別子であ
る。
FIG. 13 shows AP management table data 30.
It is a figure for demonstrating 0_1. The AP management table data 300_2 and 300_3 also have the same format as the AP management table data 300_1. As shown in FIG. 13, for each name APE_N of the referenced application element data APE used in the IC card operating macro command script program, identification data APE_ID, internal / external designation data IEI, identification data SAM_ID, identification data AP_ID, key data K_CARDA (second of the present invention
Key data), key data K_SAM (first key data of the present invention), data SET_APP, data FLAG_I
P and data FLAG_STR are shown in association with each other. Name A of application element data APE
PE_N is a service provider 15_1, 15_2, 15
Services provided by the application program of _3 (application element data APE)
Is the name given to. The name APE_N is an identifier that is referenced instead of the service number of the service that can be used by the application program of each service provider.

【0039】ここで、識別データAPE_IDは、アプ
リケーションエレメントデータAPEの識別データであ
る。内部/外部指定データIEIは、APEが実体とし
て存在するのか(内部指定)、あるいは他のSAMから
参照するのか(外部指定)を区別するフラグである。識
別データSAM_IDは、SAMチップ8が当該アプリ
ケーションエレメントデータAPEに係わる処理を行う
際にデータ授受を行う相手側のSAMの識別データであ
る。図14は、SAM_IDを説明するための図であ
る。SAM_IDは、4バイトのデータであり、TCP
/IPに類似したネットマスクの概念を有している。ネ
ットマスクはビット単位での設定が可能である。例え
ば、当該ネットマスクは、図14に示すように、Aクラ
ス、BクラスおよびCクラスの3種類に分類される。そ
して、同一のネットマスクが割り当てられたSAM相互
間では、相互認証に使用する鍵データは1種類でよい。
本実施形態では、例えば、同一のサービス事業者に同一
のネットマスクが割り当てられる。図14において、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を規定できる。
The identification data APE_ID is identification data of the application element data APE. The internal / external designation data IEI is a flag that distinguishes whether the APE exists as an entity (internal designation) or whether it is referenced from another SAM (external designation). The identification data SAM_ID is identification data of the SAM on the other side, which exchanges data when the SAM chip 8 performs a process related to the application element data APE. FIG. 14 is a diagram for explaining the SAM_ID. SAM_ID is 4-byte data, and TCP
/ IP has a concept of netmask similar to IP. The net mask can be set in bit units. For example, as shown in FIG. 14, the net mask is classified into three types of A class, B class and C class. Then, between SAMs to which the same netmask is assigned, only one type of key data may be used for mutual authentication.
In this embodiment, for example, the same netmask is assigned to the same service provider. In FIG. 14, A
The class netmask is "255.XX.XX.X.
A predetermined value for identifying the class is assigned to the upper 1 byte, and a value for identifying each SAM belonging to the class is assigned to the lower 3 bytes. Here, an arbitrary value can be set in "XX". That is, the A class net mask can define 16777215 SAM_IDs belonging to the A class. Also, the B class net mask is "25
5.255. XX. XX ”, a predetermined value for specifying the class is assigned to the upper 2 bytes, and a value for specifying each SAM belonging to the class is allocated to the lower 2 bytes. That is, 6553 belonging to the B class by the B class net mask.
Five SAM_IDs can be defined. The C class net mask is represented by “255.255.255.25XX”, and the upper 3 bytes are assigned a predetermined value for identifying the class, and the lower 1 byte is an individual belonging to the class. A value is assigned to identify the SAM of the. That is, the C class net mask can define 255 SAM_IDs belonging to the C class.

【0040】識別データAP_IDは、SAMチップ8
が当該アプリケーションエレメントデータAPEに係わ
る処理を行う際にデータ授受を行う相手側のSAMで実
行されるアプリケーションプログラムの識別データであ
る。鍵データK_CARDAは、SAMチップ8が当該
アプリケーションエレメントデータAPEに係わる処理
を行う際にICカード3のメモリ50とデータ授受を行
うために用いられる鍵データである。
The identification data AP_ID is stored in the SAM chip 8
Is the identification data of the application program executed by the SAM of the other party who exchanges data when performing the process related to the application element data APE. The key data K_CARDA is key data used for exchanging data with the memory 50 of the IC card 3 when the SAM chip 8 performs a process related to the application element data APE.

【0041】鍵データK_SAMは、SAMチップ8が
当該アプリケーションエレメントデータAPEに係わる
処理を行う際に、他のSAMとデータ授受を行うために
用いられる鍵データである。データSET_APPは、
SAMチップ8が当該アプリケーションエレメントデー
タAPEに係わる処理を行う際に用いられる(参照され
る)APPテーブルデータ310_1,310_2,3
10_3を特定するためのデータである。
The key data K_SAM is key data used for exchanging data with another SAM when the SAM chip 8 performs a process related to the application element data APE. The data SET_APP is
APP table data 310_1, 310_2, 3 used (referenced) when the SAM chip 8 performs a process related to the application element data APE.
This is data for identifying 10_3.

【0042】データFLAG_IPは、SAMチップ8
が管理(保持)するデータを他のSAMチップ8などに
公開するか否かを示すフラグデータである。データFL
AG_STRは、SAMチップ8が管理(保持)するデ
ータを他のSAMチップ8などが保持することを許可す
るか否かを示すフラグデータである。
The data FLAG_IP is stored in the SAM chip 8
Is flag data indicating whether or not the data managed (held) is disclosed to another SAM chip 8 or the like. Data FL
AG_STR is flag data indicating whether or not the data managed (held) by the SAM chip 8 is permitted to be held by another SAM chip 8 or the like.

【0043】図13において、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で規定されている。
In FIG. 13, APE_N "Servi"
"ceA" is the access key of the IC card 3 defined by the application program in the corresponding SAM 8.
Since the key data of "Service A" is set to be private, it cannot be referenced by application programs on other SAMs or other application programs on this SAM. Also, "ServiceC" is
This is the access key of the IC card 3 defined by this application program. If a C class netmask, which will be described later, is assigned to this SAM, "Ser
The key data of “viceC” is “43.17.19.XX”.
It is disclosed to the application program on the SAM having the SAM_ID of. At this time, the SAM mutual authentication key is "T
T1 ... TTn "and other SAMs are" Service
It is determined whether or not the key data of “C” can be held until the next use. If yes, another SAM will
It is not necessary to obtain the card access key again from this SAM when using "rivec" next time. Servi
The access key of ceB is not this SAM, but “43.1
3.137. Obtained from the SAM having the SAM_ID of “XX”. As a mutual authentication key between SAMs, "SS1 ... SS
n ”is used. Whether or not the access key of "Service B" can be held until the next use is determined by the availability flag designated by the other SAM. "Service BL
og ”is SAM_I of“ 43.13.137.XX ”
A file in which log data to which D is assigned is stored. "Service B Log" is "Service
Since the same SAM netmask as "ceB" is used, "SS1 ... SSn" is used as the mutual authentication key. Here, APP table data is provided for each mutual authentication key. In this example, "ServiceB log" and "Serv"
The access permission to “vice B” is defined by the APP table data 310 of the other SAM referred to by the AP management table data on the other SAM.

【0044】図15は、APPテーブルデータ310_
1を説明するための図である。APPテーブルデータ3
10_2,310_3、310は、APPテーブルデー
タ310_1と同じフォーマットを有している。図15
に示すように、APPテーブルデータ310_1は、各
アプリケーションエレメントデータAPEについて、そ
の識別データAPE_IDと、当該アプリケーションエ
レメントデータAPEに対して他のアプリケーションプ
ログラム(他のアプリケーションエレメントデータAP
E)から読み出し(READ)、書き込み(WRIT
E)および実行(EXCUTE)が可能であるか否かを
示している。
FIG. 15 shows the APP table data 310_.
It is a figure for demonstrating 1. APP table data 3
10_2, 310_3, and 310 have the same format as the APP table data 310_1. Figure 15
As shown in FIG. 3, the APP table data 310_1 includes identification data APE_ID for each application element data APE and another application program (other application element data AP) for the application element data APE.
E) to read (READ) and write (WRIT)
E) indicates whether or not execution and execution (EXCUTE) are possible.

【0045】例えば、図15に示すAPPテーブルデー
タ310_1は、「ServiceB log」につい
ては読取りが可、書込みが可、実行(削除)が不可を示
している。
For example, the APP table data 310_1 shown in FIG. 15 indicates that "ServiceB log" is readable, writable, and unexecutable (deletable).

【0046】また、図7に示す外部メモリ7のAP管理
用記憶領域221は、例えば、ICカード種別データと
AP_IDとを対応付けて示すAP選択用データを記憶
している。ICカード種別データは、図1に示すICカ
ード3の種別を示し、例えば、ICカード3を用いた取
り引きの決済を行うクレジットカード会社の識別データ
である。
The AP management storage area 221 of the external memory 7 shown in FIG. 7 stores, for example, AP selection data in which IC card type data and AP_ID are associated with each other. The IC card type data indicates the type of the IC card 3 shown in FIG. 1, and is, for example, identification data of a credit card company that makes payment for a transaction using the IC card 3.

【0047】本実施形態では、ICカード操作用マクロ
コマンドスクリプトプログラム内に複数のアプリケーシ
ョンエレメントデータAPEの名前APE_Nを組み合
せたサービス内容を規定(記述)し、これを後述するI
Cカードエンティティデータ(ジョブ管理用データ)に
反映させることで、複数のアプリケーションエレメント
データAPEに対応するサービスを組み合わせたをサー
ビスを提供できる。例えば、ICカード3からデータ読
出しを行うサービスと、サーバ装置2にデータ書込みを
行うサービスとを組み合わせたサービスを、ICカード
エンティティデータ内に定義できる。
In the present embodiment, the service contents in which the names APE_N of a plurality of application element data APE are combined are defined (described) in the IC card operating macro command script program, which will be described later in I.
By reflecting in the C card entity data (job management data), it is possible to provide a service in which services corresponding to a plurality of application element data APE are combined. For example, a service in which a service for reading data from the IC card 3 and a service for writing data to the server device 2 are combined can be defined in the IC card entity data.

【0048】また、APE_Nあるいはそのサービス番
号は、サービス事業者15_1,15_2,15_3に
よって提供されるサービスを行う際に、ICカード3に
発行するICカード3が解釈可能な操作コマンドであ
る。
The APE_N or its service number is an operation command that can be interpreted by the IC card 3 issued to the IC card 3 when performing the service provided by the service providers 15_1, 15_2, 15_3.

【0049】アプリケーションプログラムAP_1は、
外部メモリ7に記憶されたAP管理用テーブルデータ3
00_1および所定のICカード操作用マクロコマンド
スクリプトプログラムによって規定される。アプリケー
ションプログラムAP_2は、外部メモリ7に記憶され
たAP管理用テーブルデータ300_2および所定のI
Cカード操作用マクロコマンドスクリプトプログラムに
よって規定される。アプリケーションプログラムAP_
3は、外部メモリ7に記憶されたAP管理用テーブルデ
ータ300_3および所定のICカード操作用マクロコ
マンドスクリプトプログラムによって規定される。
The application program AP_1 is
AP management table data 3 stored in the external memory 7
00_1 and a predetermined IC card operating macro command script program. The application program AP_2 includes the AP management table data 300_2 and the predetermined I stored in the external memory 7.
It is defined by the macro command script program for C card operation. Application program AP_
3 is defined by the AP management table data 300_3 stored in the external memory 7 and a predetermined IC card operating macro command script program.

【0050】〔SAMチップ8〕SAMチップ8は、S
CSIまたはEthernetなどを介してASPサー
バ装置19に接続される。ASPサーバ装置19は、イ
ンターネット10を介して、エンドユーザのパーソナル
コンピュータ5、サービス事業者15_1,15_2,
15_3のパーソナルコンピュータ16_1,16_
2,16_3を含む複数の端末装置に接続される。パー
ソナルコンピュータ5は、例えば、シリアルまたはUS
Bを介してDumb型のカードリーダ・ライタ4に接続
されている。カードリーダ・ライタ4が、ICカード3
との間で物理レベルに相当する例え無線通信を実現す
る。ICカード3への操作コマンドおよびICカード3
からのリスポンスパケットは、SAMユニット9側で生
成および解読される。よって、その中間に介在するカー
ドリーダ・ライタ4、パーソナルコンピュータ5および
ASPサーバ装置19は、コマンドやリスポンス内容を
データペイロード部分に格納して中継する役割を果たす
のみで、ICカード3内のデータの暗号化や復号および
認証などの実操作には関与しない。
[SAM Chip 8] The SAM chip 8 is
It is connected to the ASP server device 19 via CSI or Ethernet. The ASP server device 19 is connected to the end user's personal computer 5 and service providers 15_1, 15_2, and the Internet via the Internet 10.
15_3 personal computers 16_1 and 16_
It is connected to a plurality of terminal devices including 2, 16_3. The personal computer 5 is, for example, serial or US
It is connected to the Dumb type card reader / writer 4 via B. Card reader / writer 4, IC card 3
A wireless communication corresponding to the physical level is realized between and. Operation command to IC card 3 and IC card 3
The response packet from is generated and decrypted on the SAM unit 9 side. Therefore, the card reader / writer 4, the personal computer 5 and the ASP server device 19 which are interposed therebetween serve only to store the command and the response contents in the data payload portion and relay the data, and to store the data in the IC card 3. It is not involved in actual operations such as encryption, decryption and authentication.

【0051】パーソナルコンピュータ16_1,16_
2,16_3は、後述するスクリプトプログラムをSA
Mチップ8にダウンロードすることで、それぞれアプリ
ケーションプログラムAP_1,AP_2,AP_3を
カスタマイズできる。
Personal computers 16_1, 16_
2, 16_3 is a script program described later SA
The application programs AP_1, AP_2, and AP_3 can be customized by downloading to the M chip 8.

【0052】図16は、図1に示すSAMチップ8の機
能ブロック図である。図16に示すように、SAMチッ
プ8は、ASPS通信インタフェース部60、外部メモ
リ通信インタフェース部61、バススクランブル部6
2、乱数発生部63、暗号・復号部64、メモリ65お
よびCPU66を有する。SAMチップ8は、耐タンパ
性のモジュールである。
FIG. 16 is a functional block diagram of the SAM chip 8 shown in FIG. As shown in FIG. 16, the SAM chip 8 includes an ASPS communication interface unit 60, an external memory communication interface unit 61, and a bus scramble unit 6.
2. It has a random number generator 63, an encryption / decryption unit 64, a memory 65 and a CPU 66. The SAM chip 8 is a tamper resistant module.

【0053】ASPS通信インタフェース部60は、図
1に示すASPサーバ装置19との間のデータ入出力に
用いられるインタフェースである。外部メモリ通信イン
タフェース部61は、外部メモリ7との間のデータ入出
力に用いられるインタフェースである。バススクランブ
ル部62は、外部メモリ通信インタフェース部61を介
してデータを入出力する際に、出力するデータをスクラ
ンブルし、入力したデータをデスクランブルする。乱数
発生部63は、認証処理を行う際に用いられる乱数を発
生する。暗号・復号部64は、データの暗号化、並びに
暗号化されたデータの復号を行う。メモリ65は、後述
するように、CPU66によって用いられるタスク、プ
ログラム、並びにデータを記憶する。CPU66は、後
述するスクリプトダウンロードタスク、スクリプト解釈
タスク、エンティティ生成タスク(ジョブ管理用データ
作成タスク)およびICカード手続管理タスク(ジョブ
管理用データ管理タスク)などのタスクを実行する。
The ASPS communication interface unit 60 is an interface used for data input / output with the ASP server device 19 shown in FIG. The external memory communication interface unit 61 is an interface used for data input / output with the external memory 7. The bus scramble unit 62 scrambles the output data and descrambles the input data when inputting and outputting the data via the external memory communication interface unit 61. The random number generator 63 generates a random number used when performing the authentication process. The encryption / decryption unit 64 encrypts data and decrypts the encrypted data. The memory 65 stores tasks, programs, and data used by the CPU 66, as will be described later. The CPU 66 executes tasks such as a script download task, a script interpretation task, an entity generation task (job management data creation task), and an IC card procedure management task (job management data management task) described later.

【0054】以下、メモリ65に記憶されるタスク、プ
ログラムおよびデータについて説明する。図17は、メ
モリ65に記憶されるタスク、プログラムおよびデータ
を説明するための図である。図17に示すように、スク
リプトダウンロードタスク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を記憶している。
The tasks, programs and data stored in the memory 65 will be described below. FIG. 17 is a diagram for explaining the tasks, programs and data stored in the memory 65. As shown in FIG. 17, the script download task 69, the script interpretation task 70, the entity generation task 71, the IC card procedure management task 72, the IC card operation macro command script programs 21_1 to 21_3, and the AP management table data 300_1 to 300_3. , APP table data 310_1 to 310_3, IC card entity template data 30_1 to 30_3, IC card entity data 73_x, input data block 31.
_X1, an output data block 32_x2, a log data block 33_x3, and an operation definition data block 34_x4 are stored.

【0055】スクリプトダウンロードタスク69は、図
10に示すように、AP管理用テーブルデータ300_
1〜300_3(必要に応じてAPPテーブルデータ3
10_1〜310_3)を、例えば、各サービス事業者
のコンピュータからダウンロードし、これをSAMチッ
プ8に取り込む。
The script download task 69 is, as shown in FIG. 10, AP management table data 300_.
1 to 300_3 (App table data 3 as necessary
10_1 to 310_3) are downloaded from, for example, the computer of each service provider, and are downloaded into the SAM chip 8.

【0056】スクリプト解釈タスク70は、各サービス
事業者毎に、サービス定義テーブルデータ(必要に応じ
てAPPテーブルデータ310_1〜310_3)およ
びスクリプトプログラムを用いて、ICカードエンティ
ティテンプレートデータ、入力用データブロック、出力
用データブロック、ログ用データブロックおよび演算定
義用データブロックを生成する。各サービス事業者毎に
生成されるデータブロックの数は特に限定されない。
The script interpretation task 70 uses the service definition table data (APP table data 310_1 to 310_3 as necessary) and the script program for each service provider, and the IC card entity template data, the input data block, An output data block, a log data block and an operation definition data block are generated. The number of data blocks generated for each service provider is not particularly limited.

【0057】エンティティ生成タスク71は、例えば、
ASPサーバ装置19からエンティティ作成要求を受け
ると、ICカード3との間でポーリングを行った後に、
当該ICカード3とサービス事業者との間の手続き処理
に用いるICカードエンティティデータを、当該サービ
ス事業者に対応するICカードエンティティプレートデ
ータを用いて生成する。このとき、ICカードエンティ
ティプレートデータがクラスとなり、当該クラスのイン
スタンスとして、ICカードエンティティデータが生成
される。エンティティ生成タスク71によるICカード
エンティティデータの生成処理について後に詳細に説明
する。
The entity creation task 71 is, for example,
When an entity creation request is received from the ASP server device 19, after polling with the IC card 3,
The IC card entity data used for the procedure processing between the IC card 3 and the service provider is generated using the IC card entity plate data corresponding to the service provider. At this time, the IC card entity plate data becomes a class, and the IC card entity data is generated as an instance of the class. The process of generating the IC card entity data by the entity generation task 71 will be described in detail later.

【0058】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の処理については
後に詳細に説明する。
The IC card procedure management task 72 executes a procedure process between the IC card 3 and the service providers 15_1 to 15_3 by using one or a plurality of IC card entity data 73_x existing in the memory 65. . In this embodiment, a plurality of procedure processes performed between a plurality of IC cards 3 and the service providers 15_1 to 15_3 proceed at the same time. The IC card procedure management task 72 executes these plural procedure processes in parallel.
The IC card procedure management task 72 deletes the IC card entity data 73_x that has completed the series of procedures. The processing of the IC card procedure management task 72 will be described in detail later.

【0059】スクリプトプログラム21_1〜21_2
は、スクリプトダウンロードタスク69によって、例え
ば、外部メモリ7から入力され、メモリ65に記憶され
る。AP管理用テーブルデータ300_1〜300_3
は、スクリプトダウンロードタスク69によって、例え
ば、外部メモリ7から入力され、メモリ65に記憶され
る。APPテーブルデータ310_1〜310_3は、
スクリプトダウンロードタスク69によって、例えば、
外部メモリ7から入力され、メモリ65に記憶される。
Script programs 21_1 to 21_2
Is input from the external memory 7 by the script download task 69 and stored in the memory 65. AP management table data 300_1 to 300_3
Is input from the external memory 7 by the script download task 69 and stored in the memory 65. The APP table data 310_1 to 310_3 are
By the script download task 69, for example,
It is input from the external memory 7 and stored in the memory 65.

【0060】ICカードエンティティテンプレートデー
タ30_1〜30_3は、スクリプト解釈タスク70に
よって生成され、それぞれのサービス事業者に関する手
続きのICカードエンティティデータ73_xを生成す
る際のテンプレート(クラス)として用いられる。IC
カードエンティティデータ73_xは、エンティティ生
成タスク71によって、ICカードエンティティテンプ
レートデータ30_1〜30_3を例えばクラスとして
用い、当該クラスのインスタンスとして生成される。
The IC card entity template data 30_1 to 30_3 are generated by the script interpretation task 70 and used as a template (class) when generating the IC card entity data 73_x of the procedure related to each service provider. IC
The card entity data 73_x is generated by the entity generation task 71 using the IC card entity template data 30_1 to 30_3 as a class, for example, as an instance of the class.

【0061】入力用データブロック31_x1、出力用
データブロック32_x2、ログ用データブロック33
_x3および演算定義用データブロック34_x4は、
スクリプト解釈タスク70によって生成される。
Input data block 31_x1, output data block 32_x2, log data block 33
_X3 and the operation definition data block 34_x4 are
It is generated by the script interpretation task 70.

【0062】以下、ICカードエンティティデータ73
_xについて説明する。ICカードエンティティデータ
73_xは、例えば、ASPサーバ装置19からICカ
ード3と所定のサービス事業者のアプリケーションプロ
グラムを用いた処理の処理要求をSAMチップ8が受け
たときに、SAMチップ8内のエンティティ生成タスク
71が、既に生成されている対応するサービス事業者の
ICカードエンティティプレートデータを用いて生成す
る。
Below, the IC card entity data 73
_X will be described. The IC card entity data 73_x is, for example, an entity generated in the SAM chip 8 when the SAM chip 8 receives a processing request for processing using the IC card 3 and an application program of a predetermined service provider from the ASP server device 19. The task 71 is generated using the IC card entity plate data of the corresponding service provider that has already been generated.

【0063】図18は、ICカードエンティティデータ
73_xのフォーマットを説明するための図である。図
18に示すように、ICカードエンティティデータ73
_xは、管理用ポインタデータ80、エンティティID
データ81、エンティティステータスデータ(ステータ
スデータ)82、ICカード種別データ83、APE_
N指定データ84、処理順番データ85、処理前データ
86および処理後データ87を有する。
FIG. 18 is a diagram for explaining the format of the IC card entity data 73_x. As shown in FIG. 18, the IC card entity data 73
_X is the management pointer data 80, entity ID
Data 81, entity status data (status data) 82, IC card type data 83, APE_
It has N designation data 84, processing order data 85, pre-processing data 86, and post-processing data 87.

【0064】管理用ポインタデータ80には、メモリ6
5内でICカードエンティティデータ73_xを管理す
るための双方向ポインタである。エンティティIDデー
タ81は、ICカードエンティティデータ73_xの生
成要求、進行状況の確認、削除などのICカードエンテ
ィティデータ73_xを用いた一連の処理に用いられ
る。エンティティIDデータ81は、エンドユーザに渡
される返り値ともなる。エンティティIDデータ81は
一般的なファイルシステム上のファイルオープン時のデ
ィスクリプタに相当する。
The management pointer data 80 includes the memory 6
5 is a bidirectional pointer for managing the IC card entity data 73_x. The entity ID data 81 is used for a series of processes using the IC card entity data 73_x such as a request to generate the IC card entity data 73_x, confirmation of the progress status, and deletion. The entity ID data 81 also serves as a return value passed to the end user. The entity ID data 81 corresponds to a descriptor when a file is opened on a general file system.

【0065】エンティティステータスデータ82は、I
Cカード3に関する手続きの進行状態を示す。ICカー
ドエンティティデータ73_xが持つ基本的な状態に
は、図19に示すように、ICカード3が利用できるサ
ービスを調べる処理の状態(RS)、SAMチップ8が
ICカード3を認証する処理の状態(A1)、ICカー
ド3がSAMチップ8を認証する処理の状態(A2)、
ICカード3からデータ読み出す処理の状態(R)、I
Cカード3にデータ書き込む処理の状態(W)がある。
本実施形態では、サービス事業者を調べる処理、SAM
チップ8がICカード3を認証する処理、ICカード3
がSAMチップ8を認証する処理、ICカード3からデ
ータ読み出す処理、並びにICカード3にデータ書き込
む処理のそれぞれがジョブに対応している。当該ジョブ
は、後述するように、ICカード手続管理用タスク72
によって、実行順番が決定される処理の単位になる。な
お、A1,A2によって、ICカード3とSAMチップ
8との間の相互認証処理が構成される。
The entity status data 82 is I
The progress status of the procedure regarding the C card 3 is shown. The basic state of the IC card entity data 73_x is, as shown in FIG. 19, a state of processing (RS) for checking services available to the IC card 3 and a state of processing for the SAM chip 8 to authenticate the IC card 3. (A1), the state of the processing in which the IC card 3 authenticates the SAM chip 8 (A2),
Status of processing for reading data from the IC card 3 (R), I
There is a state (W) of a process of writing data to the C card 3.
In this embodiment, the process of checking the service provider, the SAM
The process in which the chip 8 authenticates the IC card 3, the IC card 3
The process of authenticating the SAM chip 8, the process of reading data from the IC card 3, and the process of writing data to the IC card 3 correspond to jobs. The job is executed by the IC card procedure management task 72 as described later.
Is the unit of processing whose execution order is determined. The mutual authentication processing between the IC card 3 and the SAM chip 8 is configured by A1 and A2.

【0066】また、本実施形態では、インターネット1
0での通信時間を考慮して、前述した各基本的な状態を
図19の状態遷移図に示されるように、起動後(コマン
ド発行後)の状態と完了(応答受け取り後)状態とに分
けて管理する。具体的には、インスタンス生成(ICカ
ードエンティティデータ生成)状態、RS起動後状態、
RS完了状態、A1起動後状態、A1完了状態、A2起
動後状態、A2完了状態、R起動状態、R完了状態、W
起動状態、W完了状態、並びにインスタン(ICカード
エンティティデータ)消去状態によって、ICカードエ
ンティティデータ73_xを用いた処理状態が管理され
る。
In this embodiment, the Internet 1
In consideration of the communication time at 0, the above-mentioned basic states are divided into a state after activation (after issuing a command) and a state after completion (after receiving a response), as shown in the state transition diagram of FIG. Manage. Specifically, the instance generation (IC card entity data generation) state, the state after RS activation,
RS complete state, A1 post-start state, A1 complete state, A2 post-start state, A2 complete state, R start state, R complete state, W
The processing state using the IC card entity data 73_x is managed by the activation state, the W completion state, and the instant (IC card entity data) erased state.

【0067】ICカード種別データ83は、当該ICカ
ード3を発行したサービス事業者を特定するデータであ
る。ICカード種別データ83には、ICカードエンテ
ィティデータ73_xの生成時に、前述したスクリプト
プログラム内のCIコマンドによって規定されたデータ
が設定される。
The IC card type data 83 is data for specifying the service provider who issued the IC card 3. The IC card type data 83 is set with data specified by the CI command in the script program described above when the IC card entity data 73_x is generated.

【0068】サービスタイプエレメントデータ84は、
ICカードエンティティデータ73_xを用いた処理で
利用する、AP管理用テーブルデータ300_1〜30
0_3およびAPPテーブルデータ310_1〜310
_3内で定義されたアプリケーションエレメントデータ
APEを示す。サービスタイプエレメントデータ84に
は、ICカードエンティティデータ73_xの生成時
に、前述したスクリプトプログラム内のCSコマンドで
指定された単数または複数のアプリケーションエレメン
トデータAPEが設定される。
The service type element data 84 is
AP management table data 300_1 to 30 used in the processing using the IC card entity data 73_x
0_3 and APP table data 310_1 to 310
The application element data APE defined in _3 is shown. The service type element data 84 is set with one or more application element data APE designated by the CS command in the above-mentioned script program when the IC card entity data 73_x is generated.

【0069】処理順番データ85は、ICカードエンテ
ィティデータ73_xを用いた処理で利用するサービス
(ジョブ)を実行する順番、すなわち、図19に示す遷
移状態を示す。すなわち、処理順番データ85は、アプ
リケーションエレメントデータAPEの名前APE_N
を用いて、ICカード3の基本的な操作に対応するジョ
ブの実行順番を示す。ここで、ジョブは、前述したよう
に、図19に示すRS,A1,A2,R,Wに相当す
る。ICカード3への具体的操作は、ジョブを用いて指
定された処理順番により実現される。例えば、相互認証
無しの読み込みのみのICカード3を用いた処理につい
ては、処理順番データ85には「RS→R」が設定され
る。また、相互認証有りの読み込みおよび書き込みの場
合には、処理順番データ85には、「RS→A1→A2
→R→W」が設定される。処理順番データ85には、I
Cカードエンティティデータ73_xの生成時に、前述
したスクリプトプログラム内のCSコマンド内で指定さ
れたサービスエレメントの順番に対応する図12に示す
ジョブの順番が設定される。
The processing order data 85 indicates the order of executing the service (job) used in the processing using the IC card entity data 73_x, that is, the transition state shown in FIG. That is, the processing order data 85 is the name APE_N of the application element data APE.
Is used to indicate the job execution order corresponding to the basic operation of the IC card 3. Here, the job corresponds to RS, A1, A2, R, and W shown in FIG. 19 as described above. The specific operation on the IC card 3 is realized by the processing order designated by using the job. For example, for processing using the read-only IC card 3 without mutual authentication, “RS → R” is set in the processing order data 85. Further, in the case of reading and writing with mutual authentication, the processing sequence data 85 includes “RS → A1 → A2
→ R → W ”is set. The processing order data 85 includes I
When the C card entity data 73_x is generated, the order of jobs shown in FIG. 12 corresponding to the order of service elements specified in the CS command in the above-mentioned script program is set.

【0070】処理前データ86には、ASPサーバ装置
19側から、ICカードエンティティデータ73_xを
用いた処理を行うための管理用データが設定される。。
例えば、処理前データ86には、SFデータブロック内
に指定されたサービス(アプリケーションエレメントデ
ータAPE)の演算式のポイントが設定される。また、
サービス間演算機能が定義されていない場合には、処理
前データ86には、要求処理金額が設定される。例え
ば、決済の場合であれば、課金額や付与ポイント数など
に関する状態が設定される。
In the pre-processing data 86, management data for performing processing using the IC card entity data 73_x is set from the ASP server device 19 side. .
For example, in the unprocessed data 86, the points of the arithmetic expression of the service (application element data APE) designated in the SF data block are set. Also,
If the inter-service calculation function is not defined, the requested processing amount is set in the pre-processing data 86. For example, in the case of payment, a state relating to the charge amount, the number of points awarded, etc. is set.

【0071】処理後データ87は、ASPサーバ装置1
9側で必要な、ICカードエンティティデータ73_x
の処理結果のデータが設定される。例えば決済の場合で
あれば、決済の正常終了の有無などを示すデータが設定
される。
The processed data 87 is the ASP server device 1
IC card entity data 73_x required on the 9 side
The data of the processing result of is set. For example, in the case of payment, data indicating whether or not the payment has been normally completed is set.

【0072】以下、図17に示すICカード手続管理用
タスク72による、複数のICカードエンティティデー
タ73_xを用いて、複数のICカード3に係わる処理
を行う手順を説明する。ICカード手続管理用タスク7
2は、例えば、図16に示すSAMチップ8のCPU6
6上で常に起動されている。図20は、ICカード手続
管理用タスク72が行う処理のフローチャートである。 ステップST1:ICカード手続管理用タスク72は、
メモリ65内に存在する複数のICカードエンティティ
データ73_xのうち、次に処理を実行する一つのIC
カードエンティティデータ73_xを選択する。当該I
Cカードエンティティデータ73_xの選択方法は、メ
モリ65内に存在するICカードエンティティデータ7
3_xを順番に選択してもよいし、優先順位を付けて高
い優先順位のものを優先的に選択してもよい。
A procedure for performing processing relating to a plurality of IC cards 3 by using a plurality of IC card entity data 73_x by the IC card procedure management task 72 shown in FIG. 17 will be described below. IC card procedure management task 7
2 is, for example, the CPU 6 of the SAM chip 8 shown in FIG.
Always up on 6. FIG. 20 is a flowchart of the processing performed by the IC card procedure management task 72. Step ST1: The IC card procedure management task 72
Of the plurality of IC card entity data 73_x existing in the memory 65, one IC to execute the next processing
Select the card entity data 73_x. The I
The method of selecting the C card entity data 73_x is the IC card entity data 7 existing in the memory 65.
3_x may be selected in order, or a higher priority may be preferentially selected by prioritizing.

【0073】ステップST2:ICカード手続管理用タ
スク72は、ステップST1で選択したICカードエン
ティティデータ73_xのジョブが既に起動されている
か否かを判断し、起動されていると判断した場合にはス
テップST5の処理に進み、起動されていないと判断し
た場合にはステップST3の処理に進む。
Step ST2: The IC card procedure management task 72 determines whether or not the job of the IC card entity data 73_x selected in step ST1 is already activated. When it is determined that the device has not been activated, the process proceeds to step ST5, and the process proceeds to step ST3.

【0074】ステップST3:ICカード手続管理用タ
スク72は、ステップST1で選択したICカードエン
ティティデータ73_xの図18に示すエンティティス
テータスデータ82から、当該エンティティデータに関
する処理が図19に示す状態遷移図の何れの状態にある
かを判断し、処理順番データ85から、次に実行するジ
ョブを決定する。このとき処理順番データ85には、前
述したように、AP管理用テーブルデータ300_1〜
300_3に設定されたサービスエレメントを用いてジ
ョブの実行順番が規定されている。
Step ST3: From the entity status data 82 shown in FIG. 18 of the IC card entity data 73_x selected in step ST1, the IC card procedure management task 72 executes the process relating to the entity data in the state transition diagram shown in FIG. It is determined in which state the job is to be executed next from the processing order data 85. At this time, as described above, the processing order data 85 includes AP management table data 300_1 to AP management table data 300_1.
The job execution order is defined by using the service element set to 300_3.

【0075】ステップST4:ICカード手続管理用タ
スク72は、ステップST3で選択したジョブを起動す
る。ICカード手続管理用タスク72は、図17を用い
て前述した入力用データブロック31_x1、出力用デ
ータブロック32_x2、ログ用データブロック33_
x3および演算定義用データブロック34_x4のう
ち、当該ジョブに関係するデータブロックを用いて当該
ジョブを実行する。
Step ST4: The IC card procedure management task 72 activates the job selected in step ST3. The IC card procedure management task 72 includes the input data block 31_x1, the output data block 32_x2, and the log data block 33_ described above with reference to FIG.
The job is executed by using the data block related to the job out of x3 and the operation definition data block 34_x4.

【0076】このとき、ICカード手続管理用タスク7
2は、ジョブの実行に当たってICカード3にコマンド
を発行する場合に、当該ジョブに対応するサービスエレ
メントをキーとしてAP管理用テーブルデータ300_
1〜300_3を検索し、当該サービスエレメントに対
応するサービス番号(ICカード3が解釈可能なICカ
ード3の操作コマンド)を得る。そして、ICカード手
続管理用タスク72は、当該得られたサービス番号を用
いてICカード3にコマンドを発行する。また、ICカ
ード手続管理用タスク72は、図5を用いて説明したよ
うに、ICカード3のIC3aの記憶領域へのアクセス
に鍵データが必要な場合には、当該ジョブに対応するサ
ービスエレメントをキーとしてAP管理用テーブルデー
タ300_1〜300_3を検索し、当該サービスエレ
メントに対応する鍵データを得る。そして、ICカード
手続管理用タスク72は、当該鍵データを用いて、IC
カード3との間で相互認証、データの暗号化および復号
などの処理を行い、ICカード3の所定の記憶領域にア
クセスを行う権限を得る。
At this time, the IC card procedure management task 7
When issuing a command to the IC card 3 when executing a job, 2 uses the service element corresponding to the job as a key and the AP management table data 300_.
1 to 300_3 are searched to obtain a service number (an operation command of the IC card 3 that can be interpreted by the IC card 3) corresponding to the service element. Then, the IC card procedure management task 72 issues a command to the IC card 3 using the obtained service number. Further, as described with reference to FIG. 5, the IC card procedure management task 72, when key data is required to access the storage area of the IC 3a of the IC card 3, the service element corresponding to the job is set. AP management table data 300_1 to 300_3 are searched as a key to obtain key data corresponding to the service element. Then, the IC card procedure management task 72 uses the key data to generate an IC
Mutual authentication with the card 3 and processing such as data encryption and decryption are performed to obtain the authority to access a predetermined storage area of the IC card 3.

【0077】ステップST5:ステップST5が行われ
るのは、ICカード手続管理用タスク72が、ICカー
ド3にコマンドを発行し、ICカード3の処理結果を待
っているときである。ICカード手続管理用タスク72
は、ICカード3から処理結果を受け取ると、これをI
Cカードエンティティデータ73_xに設定する。
Step ST5: Step ST5 is performed when the IC card procedure management task 72 issues a command to the IC card 3 and waits for the processing result of the IC card 3. IC card procedure management task 72
When the processing result is received from the IC card 3, the
Set to C card entity data 73_x.

【0078】ステップST6:ICカード手続管理用タ
スク72は、図18に示すICカードエンティティデー
タ73_xのエンティティステータスデータ82を更新
する。
Step ST6: The IC card procedure management task 72 updates the entity status data 82 of the IC card entity data 73_x shown in FIG.

【0079】このように、本実施形態では、ICカード
手続管理用タスク72によって、SAMチップ8内に存
在する複数のICカード3についてのICカードエンテ
ィティデータ73_xを順に選択しながら、複数のIC
カード3についての処理を並行して行う。そのため、S
AMチップ8は、複数のICカード3を用いた手続きの
処理要求を受けた場合でも、これらの処理を同時に進行
することができる。
As described above, in the present embodiment, the IC card procedure management task 72 sequentially selects the IC card entity data 73_x for the plurality of IC cards 3 existing in the SAM chip 8 while sequentially selecting the plurality of ICs.
The processing for the card 3 is performed in parallel. Therefore, S
Even when the AM chip 8 receives a processing request for a procedure using a plurality of IC cards 3, these processings can proceed simultaneously.

【0080】図21および図22は、上述した図20の
ステップST4におけるジョブの実行時に、前述したS
AMチップ8がアプリケーションエレメントデータAP
Eに規定された手順に従って、他のアプリケーションエ
レメントデータAPEによって規定された処理またはデ
ータにアクセスを行う場合の処理を説明するための図で
ある。 ステップST41:SAMチップ8が、所定のアプリケ
ーションエレメントデータAPEに応じた処理を実行中
に、利用(アクセス)を行うアプリケーションプログラ
ムと、当該アプリケーションプログラム内のアプリケー
ションエレメントデータAPEとを特定する。また、当
該利用が、当該アプリケーションエレメントデータAP
Eの読み出し、書き込みおよび実行の何れであるかも特
定する。
21 and 22 show the above-mentioned S when the job is executed in step ST4 of FIG.
AM chip 8 is application element data AP
FIG. 11 is a diagram for explaining processing specified by other application element data APE or processing when accessing data according to the procedure specified in E. Step ST41: The SAM chip 8 specifies the application program to be used (accessed) and the application element data APE in the application program while executing the processing according to the predetermined application element data APE. Further, the use is the application element data AP.
It also specifies whether the read, write, or execution of E is performed.

【0081】ステップST42:SAMチップ8が、ス
テップST41で特定したアプリケーションエレメント
データAPEが、当該SAMチップ8内に存在するか否
かを判断し、存在しないと判断した場合にはステップS
T43の処理に進み、存在すると判断した場合にはステ
ップST45の処理に進む。
Step ST42: The SAM chip 8 judges whether or not the application element data APE specified in step ST41 exists in the SAM chip 8, and if it judges that the application element data APE does not exist, step S42.
When it is determined that the existence is present, the process proceeds to step T45.

【0082】ステップST43:SAMチップ8が、実
行中のアプリケーションプログラムに対応するAP管理
用テーブルデータ300_1〜300_3を参照して、
対応するサービス(アプリケーションエレメントデータ
APE)に対応する鍵データK_SAMを取得し、当該
鍵データK_SAMを用いて、利用先のアプリケーショ
ンエレメントデータAPEを有するSAMチップ8aと
相互認証を行う。
Step ST43: The SAM chip 8 refers to the AP management table data 300_1 to 300_3 corresponding to the application program being executed,
The key data K_SAM corresponding to the corresponding service (application element data APE) is acquired, and the key data K_SAM is used to perform mutual authentication with the SAM chip 8a having the application element data APE to be used.

【0083】ステップST44:ステップST43の相
互認証でSAMチップ8と8aとが互いの正当性を認証
すると、SAMチップ8はステップST45の処理に進
み、そうでない場合にはステップST50に進む。
Step ST44: When the SAM chips 8 and 8a authenticate each other's legitimacy by the mutual authentication of step ST43, the SAM chip 8 proceeds to the process of step ST45, and otherwise proceeds to step ST50.

【0084】ステップST45:SAMチップ8が、実
行中のアプリケーションプログラムに対応するAP管理
用テーブルデータ300_1〜300_3を参照して、
対応するサービス(アプリケーションエレメントデータ
APE)に対応する鍵データK_SAMを取得する。ま
た、SAMチップ8が、ステップST41で特定した利
用先のプリケーションエレメントデータAPEについて
も、同様に、当該アプリケーションエレメントデータA
PEに対応するAP管理用テーブルデータ300_1〜
300_3を参照して、対応するサービス(アプリケー
ションエレメントデータAPE)に対応する鍵データK
_SAMを取得する。そして、SAMチップ8が、上記
取得した2つの鍵データK_SAMを比較する。
Step ST45: The SAM chip 8 refers to the AP management table data 300_1 to 300_3 corresponding to the application program being executed,
The key data K_SAM corresponding to the corresponding service (application element data APE) is acquired. Further, the SAM chip 8 similarly applies to the application element data APE of the use destination specified in step ST41.
AP management table data 300_1 corresponding to PE
Referring to 300_3, the key data K corresponding to the corresponding service (application element data APE)
Get _SAM. Then, the SAM chip 8 compares the two acquired key data K_SAM.

【0085】スクランブル46:SAMチップ8は、ス
テップST45の処理で、2つの鍵データK_SAMが
一致していると判断した場合にはステップST47の処
理に進み、そうでない場合にはステップST50に進
む。
Scramble 46: When the SAM chip 8 determines in the process of step ST45 that the two key data K_SAM match, the process proceeds to step ST47, and if not, the process proceeds to step ST50.

【0086】ステップST47:SAMチップ8あるい
は8aは、ステップST41で特定されたアプリケーシ
ョンプログラムに対応するAP管理用テーブルデータ3
00_1〜300_3を参照し、利用されるアプリケー
ションエレメントデータAPEに対応するAPPテーブ
ルデータ310_1〜310_3を特定する。
Step ST47: The SAM chip 8 or 8a uses the AP management table data 3 corresponding to the application program specified in step ST41.
00_1 to 300_3 are referred to, and the APP table data 310_1 to 310_3 corresponding to the application element data APE to be used are specified.

【0087】ステップST48:SAMチップ8あるい
は8aは、ステップST47で特定したAPPテーブル
データ310_1〜310_3を基に、利用(アクセ
ス)されるアプリケーションエレメントデータAPEの
アクセス権限を判断する。具体的には、当該利用される
アプリケーションエレメントデータAPEの読み出し、
書き込みおよび実行の権限を判断する。
Step ST48: The SAM chip 8 or 8a judges the access authority of the application element data APE to be used (accessed) based on the APP table data 310_1 to 310_3 specified in step ST47. Specifically, reading the application element data APE to be used,
Determine write and execute permissions.

【0088】ステップST49:SAMチップ8あるい
は8aは、ステップST48でアクセス権限があると判
断した場合にはステップST50の処理に進み、そうで
ない場合にはステップST51の処理に進む。
Step ST49: If the SAM chip 8 or 8a determines that it has the access right in step ST48, the process proceeds to step ST50. If not, the process proceeds to step ST51.

【0089】ステップST50:SAMチップ8あるい
は8aは、ステップST41で特定されたアプリケーシ
ョンエレメントデータAPEについて、ステップST4
1で特定された利用を行う。
Step ST50: The SAM chip 8 or 8a performs step ST4 on the application element data APE specified in step ST41.
Perform the use specified in 1.

【0090】ステップST51:SAMチップ8あるい
は8aは、ステップST41で特定されたアプリケーシ
ョンエレメントデータAPEについて、ステップST4
1で特定された利用を行う。
Step ST51: The SAM chip 8 or 8a performs step ST4 on the application element data APE specified at step ST41.
Perform the use specified in 1.

【0091】また、SAMチップ8は、上述した図20
のステップST4におけるジョブの実行時に、前述した
SAMチップ8がアプリケーションエレメントデータA
PEに規定された手順に従って、ICカード3との間で
データ授受を行う場合には、図17に示すAP管理用テ
ーブルデータ300_1〜300_3を参照して、当該
アプリケーションエレメントデータAPEに対応する鍵
データK_CADRを取得し、当該鍵データK_CAR
Dを用いて、ICカード3のメモリ50にアクセスを行
う。
The SAM chip 8 is the same as that shown in FIG.
At the time of executing the job in step ST4, the SAM chip 8 described above causes the application element data A
When data is exchanged with the IC card 3 according to the procedure specified by the PE, the key data corresponding to the application element data APE is referred to by referring to the AP management table data 300_1 to 300_3 shown in FIG. K_CADR is obtained and the key data K_CAR is obtained.
The memory 50 of the IC card 3 is accessed using D.

【0092】以下、図1に示す通信システム1の全体動
作について説明する。図23および図24は、図1に示
す通信システム1の全体動作を説明するための図であ
る。
The overall operation of the communication system 1 shown in FIG. 1 will be described below. 23 and 24 are diagrams for explaining the overall operation of the communication system 1 shown in FIG.

【0093】ステップ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を作成する。
Step ST21: Service provider 15_
1 to 15_3 or a person who receives a request from these service providers describes a script program 21_1, 21_2, 21_3 in which a process regarding a transaction performed by the service provider using the IC card 3 is described, for example, in FIG.
Personal computer 16_1, 16_2, 1 shown in
Create on 6_3. Further, the administrator of the SAM chip 8 makes the AP management table data 300_1 to 300_ corresponding to each of the service providers 15_1 to 15_3.
Create 3.

【0094】ステップ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にダウンロードされる。当該ダウンロードの処理
は、図10に示すように、SAMチップ8内のスクリプ
トダウンロードタスク69によって管理される。
Step ST22: AP management table data 300_1 to 300 created in step ST21
_3 is stored in the external memory 7. Also, step ST
Script programs 21_1 and 21 created in 21
_2 and 21_3 are personal computers 16_1 and
16_2, 16_3, Internet 10, ASP
It is downloaded to the external memory 7 via the server device 19 and the SAM chip 8. The download process is managed by a script download task 69 in the SAM chip 8 as shown in FIG.

【0095】ステップST23:図10に示すSAMチ
ップ8内のスクリプト解釈タスク70によって、各サー
ビス事業者毎に、AP管理用テーブルデータ300_1
〜300_3およびスクリプトプログラムを用いて、I
Cカードエンティティテンプレートデータ、入力用デー
タブロック、出力用データブロック、ログ用データブロ
ックおよび演算定義用データブロックが生成される。こ
れら生成されたデータは、図16に示すSAMチップ8
のメモリ65に格納される。
Step ST23: The script interpretation task 70 in the SAM chip 8 shown in FIG. 10 causes the AP management table data 300_1 for each service provider.
~ 300_3 and the script program, I
C card entity template data, an input data block, an output data block, a log data block and an operation definition data block are generated. These generated data are stored in the SAM chip 8 shown in FIG.
Stored in the memory 65.

【0096】ステップST24:ユーザにICカード3
が発行される。図5に示すように、ICカード3のIC
3aには、ユーザが契約を行ったサービス事業者との取
り引きに用いられる鍵データが記憶されている。なお、
ユーザとサービス事業者との間の契約は、ICカード3
の発行後に、インターネット10などを介して行っても
よい。
Step ST24: IC card 3 for the user
Is issued. As shown in FIG. 5, the IC of the IC card 3
3a stores key data used for dealing with a service provider with which the user has made a contract. In addition,
The contract between the user and the service provider is IC card 3
May be performed via the Internet 10 or the like after the issuance of.

【0097】ステップST25:例えば、ユーザがパー
ソナルコンピュータ5を用いてインターネット10を介
してサーバ装置2にアクセスを行い、商品を購入しよう
とした場合に、サーバ装置2がインターネット10を介
してASPサーバ装置19に処理要求を出す。ASPサ
ーバ装置19は、サーバ装置2から処理要求を受ける
と、インターネット10を介してパーソナルコンピュー
タ5にアクセスを行う。そして、カードリーダ・ライタ
4が出したICカード3についての処理要求が、パーソ
ナルコンピュータ5、インターネット10およびASP
サーバ装置19を介してSAMチップ8に送信される。
Step ST25: For example, when the user uses the personal computer 5 to access the server device 2 via the Internet 10 and tries to purchase a product, the server device 2 accesses the ASP server device via the Internet 10. A processing request is issued to 19. Upon receiving the processing request from the server device 2, the ASP server device 19 accesses the personal computer 5 via the Internet 10. Then, the processing request for the IC card 3 issued by the card reader / writer 4 is sent to the personal computer 5, the Internet 10, and the ASP.
It is transmitted to the SAM chip 8 via the server device 19.

【0098】ステップST26:ASPサーバ装置19
からSAMチップ8にエンティティ作成要求が出され
る。当該エンティティ作成要求には、ICカード3の発
行元を示すデータが格納されている。
Step ST26: ASP server device 19
Sends an entity creation request to the SAM chip 8. The entity creation request stores data indicating the issuer of the IC card 3.

【0099】ステップST27:SAMチップ8は、エ
ンティティ作成要求を受けると、ICカード3との間で
ポーリングを行う。
Step ST27: When the SAM chip 8 receives the entity creation request, it polls the IC card 3.

【0100】ステップST28:SAMチップ8のエン
ティティ生成タスク71は、ポーリング終了後に、SA
Mチップ8内に存在するICカードエンティティデータ
73_xの数が、スクリプトプログラムのSCコマンド
によって規定された最大数以内であるか否かを判断し、
最大数以内であればステップST29の処理に進み、そ
うでない場合には処理を終了する。
Step ST28: The entity creation task 71 of the SAM chip 8 executes SA after the polling is completed.
It is determined whether or not the number of IC card entity data 73_x existing in the M chip 8 is within the maximum number specified by the SC command of the script program,
If it is within the maximum number, the process proceeds to step ST29, and if not, the process ends.

【0101】ステップST29:エンティティ生成タス
ク71が、例えば、エンティティ作成要求に格納された
ICカード3の発行元を示すデータに基づいて、何れの
サービス事業者のICカードエンティティテンプレート
データを用いるかを特定し、当該特定したICカードエ
ンティティプレートデータ用いて、ICカードエンティ
ティデータ73_xを生成する。これは、図19に示す
インスタンス生成に対応している。
Step ST29: The entity creation task 71 specifies which service provider IC card entity template data is used, for example, based on the data indicating the issuer of the IC card 3 stored in the entity creation request. Then, the specified IC card entity plate data is used to generate the IC card entity data 73_x. This corresponds to the instance generation shown in FIG.

【0102】ステップST30:SAMチップ8からA
SPサーバ装置19に、ステップST29で生成したI
Cカードエンティティデータ73_xのエンティティI
Dが出力される。
Step ST30: SAM chip 8 to A
In the SP server device 19, I generated in step ST29
Entity I of C card entity data 73_x
D is output.

【0103】ステップST31:SAMチップ8のIC
カード手続管理用タスク72によって、ICカード3で
利用可能なサービスが調べられる。これは、図19に示
すジョブRSに対応した処理である。
Step ST31: IC of SAM chip 8
The card procedure management task 72 checks the services available in the IC card 3. This is a process corresponding to the job RS shown in FIG.

【0104】ステップST32:SAMチップ8のIC
カード手続管理用タスク72がICカード3の正当性を
認証する。これは、図19に示すジョブA1に対応した
処理である。
Step ST32: IC of SAM chip 8
The card procedure management task 72 authenticates the validity of the IC card 3. This is a process corresponding to the job A1 shown in FIG.

【0105】ステップST33:ICカード3がSAM
チップ8の正当性を認証する。これは、図19に示すジ
ョブA2に対応した処理である。ステップST32,S
T33によって、ICカード3とSAMチップ8との間
の相互認証が行われる。このとき、前述したように、S
AMチップ8で実行されているアプリケーションエレメ
ントデータAPEに応じて、図13に示すAP管理用テ
ーブルデータ300_1〜300_3が参照されて、鍵
データK_CARDが取得され、当該鍵データK_CA
RDを用いてSAMチップ8とICカード3のCPU5
1との間で相互認証が行われる。
Step ST33: The IC card 3 is the SAM
The legitimacy of the chip 8 is verified. This is a process corresponding to the job A2 shown in FIG. Step ST32, S
Mutual authentication between the IC card 3 and the SAM chip 8 is performed by T33. At this time, as described above, S
According to the application element data APE executed in the AM chip 8, the AP management table data 300_1 to 300_3 shown in FIG. 13 is referred to, the key data K_CARD is acquired, and the key data K_CA is acquired.
Using RD, SAM chip 8 and CPU 5 of IC card 3
Mutual authentication is performed with the device 1.

【0106】ステップST34:SAMチップ8のIC
カード手続管理用タスク72が、ICカード3との間
で、手続きに必要なデータの読み書きを行う。これは、
図12に示すジョブR,Wに対応した処理である。ま
た、ICカード手続管理用タスク72は、ICカードエ
ンティティデータ73_xの処理前データ86に基づい
て特定した演算式を用いて、ICカード3から読み出し
たデータを用いて所定の演算処理を行う。
Step ST34: IC of SAM chip 8
The card procedure management task 72 reads / writes data required for the procedure from / to the IC card 3. this is,
This is processing corresponding to the jobs R and W shown in FIG. Further, the IC card procedure management task 72 performs a predetermined arithmetic processing using the data read from the IC card 3 by using the arithmetic expression specified based on the pre-processing data 86 of the IC card entity data 73_x.

【0107】ステップST35:SAMチップ8のIC
カード手続管理用タスク72が、ステップST34の処
理結果をASPサーバ装置19に出力する。
Step ST35: IC of SAM chip 8
The card procedure management task 72 outputs the processing result of step ST34 to the ASP server device 19.

【0108】ステップST36:例えば、ICカード手
続管理用タスク72が、ICカードエンティティデータ
73_xを消去する。
Step ST36: For example, the IC card procedure management task 72 erases the IC card entity data 73_x.

【0109】以上説明したように、通信システム1およ
びSAMユニット9によれば、アプリケーションプログ
ラムAPを複数のアプリケーションエレメントデータA
PEを用いて構成し、AP管理用テーブルデータおよび
APPテーブルデータを用いて、各アプリケーションエ
レメントデータAPEの処理内容を規定することで、I
Cカード3を用いた多様なサービスを提供できる。ま
た、通信システム1によれば、AP管理用テーブルデー
タおよびAPPテーブルデータを用いて、同一SAM内
でのアプリケーションエレメントデータAPEの利用、
並びに異なるSAM間でのアプリケーションエレメント
データAPEの利用を高いセキュリティを保ちながら柔
軟に実現できる。また、通信システム1によれば、異な
るSAM間でアプリケーションエレメントデータAPE
を利用する場合に、SAM間で相互認証を行うため、ア
プリケーションプログラムのセキュリティを高めること
ができる。また、通信システム1によれば、同一のサー
ビス事業者のアプリケーションプログラムに、同じクラ
スのSAM_IDを割り当てることで、同じ事業者のア
プリケーションプログラムのアプリケーションエレメン
トデータAPE間では、煩雑な相互認証処理を行わない
ようにすることができ、鍵情報の管理、並びにSAMチ
ップの処理負担を軽減できる。
As described above, according to the communication system 1 and the SAM unit 9, the application program AP is set to a plurality of application element data A.
By configuring using PE and using AP management table data and APP table data to define the processing content of each application element data APE, I
Various services using the C card 3 can be provided. Further, according to the communication system 1, the application element data APE is used in the same SAM by using the AP management table data and the APP table data,
In addition, the use of the application element data APE between different SAMs can be flexibly realized while maintaining high security. Further, according to the communication system 1, the application element data APE between different SAMs
When using, mutual authentication is performed between SAMs, so that the security of the application program can be enhanced. Further, according to the communication system 1, by assigning the SAM_ID of the same class to the application programs of the same service provider, complicated mutual authentication processing is not performed between the application element data APE of the application programs of the same provider. Thus, the management of the key information and the processing load of the SAM chip can be reduced.

【0110】また、通信システム1によれば、ICカー
ド3との間で発生する手続き処理毎にICカードエンテ
ィティデータ73_xを生成し、ICカード手続管理用
タスク72によって、複数のICカードエンティティデ
ータ73_xを用いて、複数のICカード3についての
処理を同時に進行することができる。また、認証システ
ム1によれば、ICカード3についての処理に実際に用
いられているICカードエンティティデータ73_xを
メモリ65に記憶すれば良いため、メモリ65の記憶領
域を効率的に利用できる。また、認証システム1によれ
ば、図19に示すように、ICカード手続管理用タスク
72が処理するジョブの実行状態を、起動後状態と完了
状態とに分離して管理するため、一のジョブの実行を開
始後にICカード3からのデータを待っている状態で、
他のジョブに関する処理を開始できる。そのため、イン
ターネット10を介してICカード3との間でデータを
送受信することによる待ち時間を無くすことができる。
Further, according to the communication system 1, the IC card entity data 73_x is generated for each procedure process generated with the IC card 3, and the IC card procedure management task 72 causes a plurality of IC card entity data 73_x. Using, it is possible to proceed with processing for a plurality of IC cards 3 at the same time. Further, according to the authentication system 1, since the IC card entity data 73_x actually used for the processing of the IC card 3 may be stored in the memory 65, the storage area of the memory 65 can be efficiently used. Further, according to the authentication system 1, as shown in FIG. 19, the execution state of the job processed by the IC card procedure management task 72 is managed separately by the post-startup state and the completed state. Waiting for data from the IC card 3 after the execution of
You can start processing for other jobs. Therefore, it is possible to eliminate the waiting time caused by transmitting / receiving data to / from the IC card 3 via the Internet 10.

【0111】また、認証システム1によれば、AP管理
用テーブルデータ300_1〜300_3内に、各サー
ビス事業者が提供するサービスの種類を示す名前である
APE_N、ICカード3内で用いられる当該サービス
の番号、並びに当該サービスを提供するに際に用いられ
る鍵データをAP管理用テーブルデータ300_1〜3
00_3内に記述し、これを外部メモリ7に保持する。
そのため、SAMチップ8の開発者でない、サービス事
業者15_1〜15_3が、SAMチップ8上で動作す
る自らのアプリケーションプログラムを、スクリプトプ
ログラム21_1,21_2,21_3を作成してSA
Mチップ8を介して外部メモリ7にダウンロードするこ
とでカスタマイズできる。すなわち、鍵データやICカ
ード3を直接操作する操作コマンドなどの秘匿性の高い
データをサービス事業者15_1〜15_3に知らせる
ことなく、これらのサービス事業者が自らのアプリケー
ションプログラムをカスタマイズできる。また、サービ
ス事業者は、アプリケーションプログラムをカスタマイ
ズする際に、鍵データやカード操作用コマンドを知る必
要がないため、サービス事業者の負担が軽減される。ま
た、認証システム1によれば、複数のサービスにまたが
った処理内容を定義できるため、ICカード3側で許容
されると同時に実行されるサービスの範囲内で、複数の
サービスを組み合わせた多様なサービスを提供できる。
また、認証システム1によれば、データブロックの概念
を導入することで、ICカード3との間で入出力される
データ、並びにログデータの管理が容易に行える。
Further, according to the authentication system 1, in the AP management table data 300_1 to 300_3, APE_N, which is the name indicating the type of service provided by each service provider, and the corresponding service used in the IC card 3 The AP management table data 300_1 to 3 for the number and the key data used for providing the service.
It is described in 00_3 and is stored in the external memory 7.
Therefore, the service providers 15_1 to 15_3 who are not developers of the SAM chip 8 create their own application programs operating on the SAM chip 8 by creating script programs 21_1, 21_2, 21_3 and
It can be customized by downloading to the external memory 7 via the M chip 8. That is, these service providers can customize their own application programs without notifying the service providers 15_1 to 15_3 of highly confidential data such as key data and operation commands for directly operating the IC card 3. In addition, the service provider does not need to know the key data or the card operation command when customizing the application program, and thus the burden on the service provider is reduced. Further, according to the authentication system 1, since the processing content over a plurality of services can be defined, a variety of services combining a plurality of services within the range of services that are permitted and executed at the same time on the IC card 3 side. Can be provided.
Further, according to the authentication system 1, by introducing the concept of the data block, it is possible to easily manage the data input / output to / from the IC card 3 and the log data.

【0112】[0112]

【発明の効果】以上説明したように、本発明によれば、
集積回路を用いたサービスを提供する際に、半導体回路
上で動作するアプリケーションプログラムのセキュリテ
ィを高められるデータ処理装置およびその方法を提供す
ることができる。
As described above, according to the present invention,
It is possible to provide a data processing device and a method thereof which can enhance the security of an application program operating on a semiconductor circuit when providing a service using an integrated circuit.

【図面の簡単な説明】[Brief description of drawings]

【図1】図1は、本実施形態の通信システムの全体構成
図である。
FIG. 1 is an overall configuration diagram of a communication system of the present embodiment.

【図2】図2は、図1に示すSAMチップが通信を行う
他のSAMチップを説明するための図である。
FIG. 2 is a diagram for explaining another SAM chip with which the SAM chip shown in FIG. 1 communicates.

【図3】図3は、図1に示すSAMチップが通信を行う
他のSAMチップを説明するための図である。
FIG. 3 is a diagram for explaining another SAM chip with which the SAM chip shown in FIG. 1 communicates.

【図4】図4は、図1に示すICカードの機能ブロック
図である。
FIG. 4 is a functional block diagram of the IC card shown in FIG.

【図5】図5は、図4に示すメモリを説明するための図
である。
FIG. 5 is a diagram for explaining the memory shown in FIG. 4;

【図6】図6は、図1に示すSAMチップのソフトウェ
ア構造を説明するための図である。
FIG. 6 is a diagram for explaining a software structure of the SAM chip shown in FIG.

【図7】図7は、図1に示す外部メモリの記憶領域を説
明するための図である。
FIG. 7 is a diagram for explaining a storage area of the external memory shown in FIG.

【図8】図8は、図7に示すアプリケーションプログラ
ムAPを説明するための図である。
FIG. 8 is a diagram for explaining the application program AP shown in FIG. 7.

【図9】図9は、図8に示すアプリケーションエレメン
トデータAPEの種別を説明するための図である。
9 is a diagram for explaining the types of application element data APE shown in FIG.

【図10】図10は、図1に示すSAMチップの処理を
説明するための図である。
FIG. 10 is a diagram for explaining processing of the SAM chip shown in FIG. 1.

【図11】図11は、図10に示すICカード操作用マ
クロコマンドスクリプトプログラムで使用されるコマン
ドを説明するための図である。
FIG. 11 is a diagram for explaining commands used in the IC card operating macro command script program shown in FIG. 10;

【図12】図12は、図7に示すAP管理用記憶領域を
説明するための図である。
FIG. 12 is a diagram for explaining the AP management storage area shown in FIG. 7;

【図13】図13は、図12に示すAP管理用テーブル
データを説明するための図である。
FIG. 13 is a diagram for explaining the AP management table data shown in FIG. 12.

【図14】図14は、SAM_IDを説明するための図
である。
FIG. 14 is a diagram for explaining SAM_ID.

【図15】図15は、図12に示すAPPテーブルデー
タを説明するための図である。
FIG. 15 is a diagram for explaining the APP table data shown in FIG.

【図16】図16は、図1に示すSAMチップの機能ブ
ロック図である。
FIG. 16 is a functional block diagram of the SAM chip shown in FIG. 1.

【図17】図17は、図16に示すメモリに記憶される
タスク、プログラムおよびデータを説明するための図で
ある。
FIG. 17 is a diagram for explaining tasks, programs and data stored in the memory shown in FIG. 16.

【図18】図18は、ICカードエンティティデータ7
3_xのフォーマットを説明するための図である。
FIG. 18 shows IC card entity data 7
It is a figure for demonstrating the format of 3_x.

【図19】図19は、図18に示すエンティティステー
タスデータの状態遷移を説明するための図である。
19 is a diagram for explaining a state transition of the entity status data shown in FIG.

【図20】図20は、ICカード手続管理用タスクが行
う処理のフローチャートである。
FIG. 20 is a flowchart of processing performed by the IC card procedure management task.

【図21】図21は、図20のステップST4における
ジョブの実行時に、SAMチップがアプリケーションエ
レメントデータAPEに規定された手順に従って、他の
アプリケーションエレメントデータAPEによって規定
された処理またはデータにアクセスを行う場合の処理を
説明するための図である。
FIG. 21 is a diagram showing a process in which the SAM chip accesses a process or data specified by another application element data APE according to the procedure specified by the application element data APE when the job is executed in step ST4 of FIG. 20; It is a figure for demonstrating the process in a case.

【図22】図22は、図20のステップST4における
ジョブの実行時に、SAMチップがアプリケーションエ
レメントデータAPEに規定された手順に従って、他の
アプリケーションエレメントデータAPEによって規定
された処理またはデータにアクセスを行う場合の処理を
説明するための図である。
22 is a diagram showing a process in which a SAM chip accesses a process or data specified by another application element data APE in accordance with a procedure specified by the application element data APE when the job is executed in step ST4 of FIG. 20; It is a figure for demonstrating the process in a case.

【図23】図23は、図1に示す通信システムの全体動
作を説明するための図である。
FIG. 23 is a diagram for explaining the overall operation of the communication system shown in FIG. 1.

【図24】図24は、図1に示す通信システムの全体動
作を説明するための図である。
FIG. 24 is a diagram for explaining the overall operation of the communication system shown in FIG. 1.

【符号の説明】[Explanation of symbols]

1…通信システム、2…サーバ装置、3…ICカード、
4…カードリーダ・ライタ、5…パーソナルコンピュー
タ、7,7a…外部メモリ、8,8a…SAMチップ、
9,9a…SAMユニット、15_1〜15_3…サー
ビス事業者、19…ASPサーバ装置
1 ... Communication system, 2 ... Server device, 3 ... IC card,
4 ... Card reader / writer, 5 ... Personal computer, 7, 7a ... External memory, 8, 8a ... SAM chip,
9, 9a ... SAM unit, 15_1 to 15_3 ... Service provider, 19 ... ASP server device

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H04L 9/10 H04L 9/00 621A 5J104 Fターム(参考) 2C005 MA05 NA01 SA06 SA12 SA26 5B035 BB09 BC00 5B058 CA01 KA31 YA20 5B076 FA01 FB02 FB10 5B085 AA08 AE12 5J104 KA01 MA05 NA35 PA10 ─────────────────────────────────────────────────── ─── Continuation of front page (51) Int.Cl. 7 Identification code FI theme code (reference) H04L 9/10 H04L 9/00 621A 5J104 F term (reference) 2C005 MA05 NA01 SA06 SA12 SA26 5B035 BB09 BC00 5B058 CA01 KA31 YA20 5B076 FA01 FB02 FB10 5B085 AA08 AE12 5J104 KA01 MA05 NA35 PA10

Claims (22)

【特許請求の範囲】[Claims] 【請求項1】集積回路との間で通信を行ってサービスを
提供するための処理手順を記述した処理手順データを含
む複数のデータモジュールによってそれぞれ構成される
複数のアプリケーションプログラムをそれぞれ予め決め
られた記憶領域に記憶し、前記データモジュールと、当
該データモジュールに応じた処理において他の前記デー
タモジュールを利用するために用いられる第1の鍵デー
タと、当該データモジュールに応じた処理において前記
集積回路とデータ授受を行うために用いられる第2の鍵
データとを対応付けて示す管理データを記憶する記憶回
路と、 前記データモジュールに基づいて前記サービスに係わる
処理を行い、当該処理において、前記管理データを参照
して、当該データモジュールに対応した前記第1の鍵デ
ータを用いて前記他のデータモジュールを利用し、当該
データモジュールに対応した前記第2の鍵データを用い
て前記集積回路とデータの授受を行う半導体回路とを有
するデータ処理装置。
1. A plurality of application programs each constituted by a plurality of data modules including processing procedure data describing processing procedures for communicating with an integrated circuit and providing a service are predetermined. The data module, the first key data used to use another data module in a process corresponding to the data module, and the integrated circuit in a process corresponding to the data module; A storage circuit that stores management data that shows the second key data used for exchanging data in association with each other, and a process related to the service based on the data module. In the process, the management data is stored. Referring to the first key data corresponding to the data module, And a semiconductor circuit that uses the other data module and uses the second key data corresponding to the data module to exchange the data with the integrated circuit.
【請求項2】前記記憶回路は、前記データモジュールを
用いて行われた処理の履歴データ、前記記憶領域に対し
て前記データモジュールを登録する手順を示したプログ
ラムデータ、前記記憶領域から前記データモジュールの
登録を削除する手順を示したプログラムデータ、並びに
前記アプリケーションプログラムを記憶する前記記憶領
域を規定するための手順を示したプログラムデータのう
ち少なくも一つを前記データモジュールとして記憶する
請求項1に記載のデータ処理装置。
2. The storage circuit, history data of processing performed using the data module, program data showing a procedure for registering the data module in the storage area, the data module from the storage area 2. At least one of the program data showing the procedure for deleting the registration of the program and the program data showing the procedure for defining the storage area for storing the application program is stored as the data module. The described data processing device.
【請求項3】前記半導体回路は、 前記他のデータモジュールに応じた処理が当該半導体回
路で実行される場合に、前記管理データを用いて、前記
所定のデータモジュールに対応する前記第1の鍵データ
と、前記他のデータモジュールに対応する前記第1の鍵
データとを得て、当該得た2つの第1の鍵データが一致
していることを条件に、前記実行中の所定のデータモジ
ュールから前記他のデータモジュールを利用する請求項
1に記載のデータ処理装置。
3. The semiconductor circuit uses the management data when the processing corresponding to the other data module is executed in the semiconductor circuit, and the first key corresponding to the predetermined data module is used. The data and the first key data corresponding to the other data module are obtained, and the predetermined data module being executed is provided on condition that the obtained two first key data match. The data processing device according to claim 1, wherein the other data module is used.
【請求項4】前記記憶回路は、前記データモジュールの
それぞれについて、当該データモジュールに関する利用
について許諾する形態を示す利用許可データを記憶し、 前記半導体回路は、前記2つの第1の鍵データが一致し
ている場合に、当該他のデータモジュールに対応する前
記利用許諾データを基に、当該利用許諾データによって
許諾される形態で前記他のデータモジュールを利用する
請求項3に記載のデータ処理装置。
4. The storage circuit stores, for each of the data modules, usage permission data indicating a form in which usage of the data module is licensed, and the semiconductor circuit stores the two first key data. The data processing device according to claim 3, wherein, in the case of doing so, the other data module is used in a form licensed by the usage permission data based on the usage permission data corresponding to the other data module.
【請求項5】前記半導体回路は、 前記他のデータモジュールに応じた処理が他の半導体回
路で実行される場合に、前記管理データを用いて、前記
所定のデータモジュールに対応する前記第1の鍵データ
を得て、当該第1の鍵データを用いて前記他の半導体回
路と相互認証を行い、互いの正当性が認証されたことを
条件に、前記実行中の所定のデータモジュールから前記
他のデータモジュールを利用する請求項1に記載のデー
タ処理装置。
5. The semiconductor circuit uses the management data when the processing corresponding to the other data module is executed by the other semiconductor circuit, and the first data corresponding to the predetermined data module is used. The key data is obtained, mutual authentication is performed with the other semiconductor circuit using the first key data, and if the mutual validity is authenticated, the predetermined data module being executed is changed to the other one. The data processing device according to claim 1, wherein the data module is used.
【請求項6】前記半導体回路は、前記互いの正当性が認
証された場合に、前記他のデータモジュールに関する利
用について許諾される形態を示す利用許諾データを基
に、当該利用許諾データによって許諾される形態で前記
他のデータモジュールを利用する請求項5に記載のデー
タ処理装置。
6. The semiconductor circuit is licensed by the license data based on license data indicating a mode in which usage of the other data module is licensed when the mutual validity is authenticated. The data processing apparatus according to claim 5, wherein the other data module is used in a form.
【請求項7】前記第1の鍵データは、同一の前記アプリ
ケーションプログラムを構成するデータモジュールにつ
いて同一となるように規定されている請求項1に記載の
データ処理装置。
7. The data processing device according to claim 1, wherein the first key data is defined so as to be the same for data modules that form the same application program.
【請求項8】前記記憶回路は、前記アプリケーションプ
ログラム毎に固有に割り当てられた鍵データを用いて暗
号化された前記アプリケーションプログラムを記憶する
請求項1に記載のデータ処理装置。
8. The data processing apparatus according to claim 1, wherein the storage circuit stores the application program encrypted by using key data uniquely assigned to each application program.
【請求項9】前記半導体回路は、 前記データモジュールデータから、前記アプリケーショ
ンプログラムの処理を構成する複数のジョブの実行順番
を示すジョブ実行順番データと、前記複数のジョブの実
行の進行状態を示すステータスデータとを含むジョブ管
理用データを生成し、 前記ジョブ管理用データの前記ステータスデータおよび
前記処理順番データに基づいて、次に実行を行うジョブ
を選択し、 前記選択したジョブを実行し、 当該ジョブの実行に応じて、前記選択したジョブ管理用
データの前記ステータスデータを更新する請求項1に記
載のデータ処理装置。
9. The semiconductor circuit comprises, from the data module data, job execution order data indicating an execution order of a plurality of jobs constituting the processing of the application program, and a status indicating a progress status of the execution of the plurality of jobs. Data for job management including data is generated, a job to be executed next is selected based on the status data and the processing order data of the job management data, the selected job is executed, and the job is executed. The data processing apparatus according to claim 1, wherein the status data of the selected job management data is updated according to the execution of.
【請求項10】前記半導体回路は、 前記処理手順データおよび前記管理データを用いて、前
記ジョブ管理用データのテンプレートデータを生成し、 前記処理要求に応じて、前記テンプレートデータを用い
て前記ジョブ管理用データを生成する請求項9に記載の
データ処理装置。
10. The semiconductor circuit generates template data of the job management data using the processing procedure data and the management data, and uses the template data to perform the job management in response to the processing request. The data processing device according to claim 9, wherein the data processing device generates data for use.
【請求項11】前記半導体回路は、 複数の処理要求のそれぞれについて、前記ジョブ管理用
データを生成し、 複数の前記データモジュールから一つのジョブ管理用デ
ータを選択し、 前記選択したジョブ管理用データの前記ステータスデー
タおよび前記処理順番データに基づいて、次に実行を行
うジョブを選択し、 前記選択したジョブを実行し、 当該ジョブの実行に応じて、前記選択したジョブ管理用
データの前記ステータスデータを更新し、 当該更新後に、前記複数のデータモジュールから一つの
ジョブ管理用データを選択する請求項10に記載のデー
タ処理装置。
11. The semiconductor circuit generates the job management data for each of a plurality of processing requests, selects one job management data from a plurality of the data modules, and selects the selected job management data. The status data of the selected job management data is selected according to the execution of the selected job by selecting the job to be executed next based on the status data and the processing order data 11. The data processing apparatus according to claim 10, wherein the job management data is updated, and after the update, one job management data is selected from the plurality of data modules.
【請求項12】前記半導体回路は、 前記処理要求に応じた処理を構成する全てのジョブの実
行が終了した前記ジョブ管理用データを消去する請求項
11に記載のデータ処理装置。
12. The data processing apparatus according to claim 11, wherein the semiconductor circuit erases the job management data when execution of all jobs constituting the processing in response to the processing request is completed.
【請求項13】集積回路との間で通信を行ってサービス
を提供するための処理を行う半導体回路が記憶回路とデ
ータ授受してデータ処理方法であって、 前記記憶回路が、集積回路との間で通信を行ってサービ
スを提供するための処理手順を記述した処理手順データ
を含む複数のデータモジュールによってそれぞれ構成さ
れる複数のアプリケーションプログラムをそれぞれ予め
決められた記憶領域に記憶し、前記データモジュール
と、当該データモジュールに応じた処理において他の前
記データモジュールを利用するために用いられる第1の
鍵データと、当該データモジュールに応じた処理におい
て前記集積回路とデータ授受を行うために用いられる第
2の鍵データとを対応付けて示す管理データを記憶する
場合に、 前記半導体回路が、前記データモジュールに基づいて前
記サービスに係わる処理を行い、 前記半導体回路が、前記サービスに係わる処理におい
て、前記管理データを参照して、当該データモジュール
に対応した前記第1の鍵データを用いて前記他のデータ
モジュールを利用し、 前記半導体回路が、前記サービスに係わる処理におい
て、当該データモジュールに対応した前記第2の鍵デー
タを用いて前記集積回路とデータの授受を行うデータ処
理方法。
13. A data processing method, wherein a semiconductor circuit that communicates with an integrated circuit and performs a process for providing a service exchanges data with the storage circuit to exchange data with the integrated circuit. Storing a plurality of application programs, each of which is composed of a plurality of data modules including processing procedure data describing processing procedures for performing communication between them to provide a service, in a predetermined storage area. A first key data used to use another data module in a process corresponding to the data module, and a first key data used to exchange data with the integrated circuit in a process corresponding to the data module. In the case of storing management data which is associated with the key data of No. 2, the semiconductor circuit is A process related to the service based on a data module, the semiconductor circuit refers to the management data in the process related to the service, and uses the first key data corresponding to the data module to execute the other process. A data processing method using a data module, wherein the semiconductor circuit exchanges data with the integrated circuit by using the second key data corresponding to the data module in a process related to the service.
【請求項14】前記半導体回路が、前記他のデータモジ
ュールに応じた処理が当該半導体回路で実行される場合
に、前記管理データを用いて、前記所定のデータモジュ
ールに対応する前記第1の鍵データと、前記他のデータ
モジュールに対応する前記第1の鍵データとを得て、当
該得た2つの第1の鍵データが一致していることを条件
に、前記実行中の所定のデータモジュールから前記他の
データモジュールを利用する請求項13に記載のデータ
処理方法。
14. The first key corresponding to the predetermined data module, wherein the management data is used by the semiconductor circuit when processing according to the other data module is executed by the semiconductor circuit. The data and the first key data corresponding to the other data module are obtained, and the predetermined data module being executed is provided on condition that the obtained two first key data match. 14. The data processing method according to claim 13, wherein the other data module is used.
【請求項15】前記記憶回路が、前記データモジュール
のそれぞれについて、当該データモジュールに関する利
用について許諾する形態を示す利用許可データを記憶し
ている場合に、 前記半導体回路が、前記2つの第1の鍵データが一致し
ている場合に、当該他のデータモジュールに対応する前
記利用許諾データを基に、当該利用許諾データによって
許諾される形態で前記他のデータモジュールを利用する
請求項14に記載のデータ処理方法。
15. The semiconductor circuit stores, for each of the data modules, use permission data indicating a form of permitting the use of the data module, wherein the semiconductor circuit has the two first 15. The other data module is used in a form licensed by the usage permission data based on the usage permission data corresponding to the other data module when the key data match. Data processing method.
【請求項16】前記半導体回路が、前記他のデータモジ
ュールに応じた処理が他の半導体回路で実行される場合
に、前記管理データを用いて、前記所定のデータモジュ
ールに対応する前記第1の鍵データを得て、当該第1の
鍵データを用いて前記他の半導体回路と相互認証を行
い、互いの正当性が認証されたことを条件に、前記実行
中の所定のデータモジュールから前記他のデータモジュ
ールを利用する請求項13に記載のデータ処理方法。
16. The semiconductor circuit, wherein when the processing according to the other data module is executed in the other semiconductor circuit, the first data corresponding to the predetermined data module is used by using the management data. The key data is obtained, mutual authentication is performed with the other semiconductor circuit using the first key data, and if the mutual validity is authenticated, the predetermined data module being executed is changed to the other one. The data processing method according to claim 13, wherein the data module is used.
【請求項17】前記半導体回路が、前記互いの正当性が
認証された場合に、前記他のデータモジュールに関する
利用について許諾される形態を示す利用許諾データを基
に、当該利用許諾データによって許諾される形態で前記
他のデータモジュールを利用する請求項16に記載のデ
ータ処理方法。
17. The semiconductor circuit is licensed by the license data based on the license data indicating a mode in which the semiconductor circuit is licensed to use the other data module when the legitimacy of each other is authenticated. The data processing method according to claim 16, wherein the other data module is used in a form.
【請求項18】前記第1の鍵データは、同一の前記アプ
リケーションプログラムを構成するデータモジュールに
ついて同一となるように規定されている請求項13記載
のデータ処理方法。
18. The data processing method according to claim 13, wherein the first key data is defined to be the same for the data modules forming the same application program.
【請求項19】前記半導体回路が、前記データモジュー
ルデータから、前記アプリケーションプログラムの処理
を構成する複数のジョブの実行順番を示すジョブ実行順
番データと、前記複数のジョブの実行の進行状態を示す
ステータスデータとを含むジョブ管理用データを生成
し、 前記半導体回路が、前記ジョブ管理用データの前記ステ
ータスデータおよび前記処理順番データに基づいて、次
に実行を行うジョブを選択し、 前記半導体回路が、前記選択したジョブを実行し、 前記半導体回路が、当該ジョブの実行に応じて、前記選
択したジョブ管理用データの前記ステータスデータを更
新する請求項13に記載のデータ処理方法。
19. The semiconductor circuit, based on the data module data, job execution order data indicating an execution order of a plurality of jobs constituting the processing of the application program, and a status indicating a progress status of execution of the plurality of jobs. And generating job management data including data, the semiconductor circuit selects a job to be executed next based on the status data and the processing order data of the job management data, and the semiconductor circuit, 14. The data processing method according to claim 13, wherein the selected job is executed, and the semiconductor circuit updates the status data of the selected job management data according to the execution of the job.
【請求項20】前記半導体回路が、前記処理手順データ
および前記管理データを用いて、前記ジョブ管理用デー
タのテンプレートデータを生成し、 前記半導体回路が、前記処理要求に応じて、前記テンプ
レートデータを用いて前記ジョブ管理用データを生成す
る請求項19に記載のデータ処理方法。
20. The semiconductor circuit uses the processing procedure data and the management data to generate template data of the job management data, and the semiconductor circuit generates the template data in response to the processing request. 20. The data processing method according to claim 19, wherein the job management data is generated by using the job management data.
【請求項21】前記半導体回路が、複数の処理要求のそ
れぞれについて、前記ジョブ管理用データを生成し、 前記半導体回路が、複数の前記データモジュールから一
つのジョブ管理用データを選択し、 前記半導体回路が、前記選択したジョブ管理用データの
前記ステータスデータおよび前記処理順番データに基づ
いて、次に実行を行うジョブを選択し、 前記半導体回路が、前記選択したジョブを実行し、 当該ジョブの実行に応じて、前記選択したジョブ管理用
データの前記ステータスデータを更新し、 前記半導体回路が、当該更新後に、前記複数のデータモ
ジュールから一つのジョブ管理用データを選択する請求
項20に記載のデータ処理方法。
21. The semiconductor circuit generates the job management data for each of a plurality of processing requests, the semiconductor circuit selects one job management data from the plurality of data modules, The circuit selects a job to be executed next based on the status data and the processing order data of the selected job management data, and the semiconductor circuit executes the selected job and executes the job. 21. The data according to claim 20, wherein the status data of the selected job management data is updated in accordance with the above, and the semiconductor circuit selects one job management data from the plurality of data modules after the update. Processing method.
【請求項22】前記半導体回路が、前記処理要求に応じ
た処理を構成する全てのジョブの実行が終了した前記ジ
ョブ管理用データを消去する請求項21に記載のデータ
処理方法。
22. The data processing method according to claim 21, wherein the semiconductor circuit erases the job management data when execution of all jobs constituting the processing in response to the processing request is completed.
JP2001262288A 2001-02-16 2001-08-30 Data processing apparatus and method Expired - Lifetime JP4207409B2 (en)

Priority Applications (16)

Application Number Priority Date Filing Date Title
JP2001262288A JP4207409B2 (en) 2001-08-30 2001-08-30 Data processing apparatus and method
CN200910004389.6A CN101526982B (en) 2001-02-16 2002-02-15 Data processing method and the device thereof
SG200505137-0A SG140467A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
SG200505141-2A SG143065A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
SG200505139-6A SG160187A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
PCT/JP2002/001324 WO2002065287A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
SG200505138-8A SG143976A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
US10/257,472 US7240345B2 (en) 2001-02-16 2002-02-15 Data processing apparatus and associated method
SG200505142-0A SG154320A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
SG200505136-2A SG143064A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
CN02801052.3A CN1261870C (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
SG200505135-4A SG132507A1 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
EP02700588A EP1361511A4 (en) 2001-02-16 2002-02-15 Data processing method and its apparatus
HK04104630A HK1062722A1 (en) 2001-02-16 2004-06-28 Data processing method and its apparatus
US11/688,439 US8141057B2 (en) 2001-02-16 2007-03-20 Data processing apparatus and associated method
HK07105179.5A HK1098849A1 (en) 2001-02-16 2007-05-16 Data processing method and its apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001262288A JP4207409B2 (en) 2001-08-30 2001-08-30 Data processing apparatus and method

Publications (2)

Publication Number Publication Date
JP2003076663A true JP2003076663A (en) 2003-03-14
JP4207409B2 JP4207409B2 (en) 2009-01-14

Family

ID=19089206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001262288A Expired - Lifetime JP4207409B2 (en) 2001-02-16 2001-08-30 Data processing apparatus and method

Country Status (1)

Country Link
JP (1) JP4207409B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006098830A (en) * 2004-09-30 2006-04-13 Felica Networks Inc Apparatus and method for information management, and program
JP2007043352A (en) * 2005-08-02 2007-02-15 Felica Networks Inc Information processing apparatus and method, and program
JP2012503810A (en) * 2008-09-30 2012-02-09 ジェムアルト エスアー Regulators of commands sent out for sensitive applications

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006098830A (en) * 2004-09-30 2006-04-13 Felica Networks Inc Apparatus and method for information management, and program
JP4516394B2 (en) * 2004-09-30 2010-08-04 フェリカネットワークス株式会社 Information management apparatus and method, and program
JP2007043352A (en) * 2005-08-02 2007-02-15 Felica Networks Inc Information processing apparatus and method, and program
JP4698323B2 (en) * 2005-08-02 2011-06-08 フェリカネットワークス株式会社 Information processing apparatus and method, and program
JP2012503810A (en) * 2008-09-30 2012-02-09 ジェムアルト エスアー Regulators of commands sent out for sensitive applications

Also Published As

Publication number Publication date
JP4207409B2 (en) 2009-01-14

Similar Documents

Publication Publication Date Title
US7240345B2 (en) Data processing apparatus and associated method
US6834799B2 (en) IC card with capability of having plurality of card managers installed
US6749115B2 (en) Dual processor trusted computing environment
JP4348190B2 (en) Smart card system
JP4055393B2 (en) Data processing apparatus and method and program thereof
US7610488B2 (en) Data processing device and method and program of same
JP3783608B2 (en) COMMUNICATION METHOD, COMMUNICATION SYSTEM, DATA PROCESSING DEVICE, SERVER DEVICE, AND PROGRAM
JP2003005859A (en) Method for managing program and data, and computer
KR101038133B1 (en) Data processing method, recording medium for recording its program, and its device
JP3826764B2 (en) Data processing method, data processing apparatus, and program
JP5150116B2 (en) IC card and read / write device
JP2002169782A (en) Portable information storage medium, user use control system, user use control method and user use control program
JP4207409B2 (en) Data processing apparatus and method
JP2002216081A (en) Method for controlling ic card data browsing, information terminal equipment, computer program and server
JP3930576B2 (en) Computer system with software misuse prevention function
JP2004112510A (en) Data processing apparatus, program thereof, and apparatus thereof
JP4670158B2 (en) Data processing method and semiconductor circuit
JP4765174B2 (en) Application execution apparatus, communication system, and application execution method
JP2005065035A (en) Substitute person authentication system using ic card
JP2002169783A (en) User use control system, user use control method and user use control program
EP1542392A1 (en) Data processing method, program thereof, and device thereof
JP4453678B2 (en) Data processing method and data processing system
JP4434428B2 (en) Information terminal equipment
JP4211251B2 (en) Data processing apparatus and method and program thereof
JP2008102943A (en) Data processor, method and program therefor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050224

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: 20080930

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081013

R151 Written notification of patent or utility model registration

Ref document number: 4207409

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term