JP4934162B2 - Mobile terminal and management program - Google Patents

Mobile terminal and management program Download PDF

Info

Publication number
JP4934162B2
JP4934162B2 JP2009061610A JP2009061610A JP4934162B2 JP 4934162 B2 JP4934162 B2 JP 4934162B2 JP 2009061610 A JP2009061610 A JP 2009061610A JP 2009061610 A JP2009061610 A JP 2009061610A JP 4934162 B2 JP4934162 B2 JP 4934162B2
Authority
JP
Japan
Prior art keywords
script
list
application program
application
service
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.)
Expired - Fee Related
Application number
JP2009061610A
Other languages
Japanese (ja)
Other versions
JP2010218029A (en
Inventor
孝一 中村
太郎 笹田
利博 菅野
佑宇真 栗林
大 神谷
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2009061610A priority Critical patent/JP4934162B2/en
Publication of JP2010218029A publication Critical patent/JP2010218029A/en
Application granted granted Critical
Publication of JP4934162B2 publication Critical patent/JP4934162B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Stored Programmes (AREA)
  • Telephone Function (AREA)

Description

本発明は、携帯端末においてICカードを利用する技術に関する。   The present invention relates to a technique for using an IC card in a mobile terminal.

モバイルFeliCa(登録商標)のように、携帯端末において利用されるICカードが知られている。単体のICカードに対しては、専用のリーダ/ライタを用いてデータの読み書きがされるが、携帯端末に内蔵されたICカードに対しては、リーダ/ライタを用いたデータの読み書きに加え、携帯端末本体からデータの読み書きが可能である。多くの携帯端末はネットワークを介した通信を行う機能を有しており、通信機能およびICカード機能により、多様なサービスを提供することが可能になっている。ICカードを内蔵した携帯端末において、ICカードのデータを読み書きするために、専用のアプリケーションソフトウェアが用いられている。   An IC card used in a portable terminal is known, such as mobile FeliCa (registered trademark). For a single IC card, data is read and written using a dedicated reader / writer, but for an IC card built in a portable terminal, in addition to reading and writing data using a reader / writer, Data can be read and written from the mobile terminal body. Many portable terminals have a function of performing communication via a network, and various services can be provided by a communication function and an IC card function. In a portable terminal incorporating an IC card, dedicated application software is used to read and write data on the IC card.

これに対し特許文献1は、端末装置からICカードへ送信されるメッセージであるAPDU(Application Protocol Data Unit、アプリケーション・プロトコル・データ単位)の実行結果をwebブラウザに表示する技術を開示している(特に、段落0020−0022)。   On the other hand, Patent Document 1 discloses a technique for displaying an execution result of an APDU (Application Protocol Data Unit, which is a message transmitted from a terminal device to an IC card) on a web browser ( In particular, paragraphs 0020-0022).

特開2006−244211号公報JP 2006-244211 A

ネットワークを介した通信とICカードへのデータの読み書きとを一連の処理として行おうとするとき、ネットワークを介した通信を行うためのソフトウェアと、ICカードへのデータの読み書きを行うためのソフトウェアとを切り替えることは煩雑であった。特許文献1においても、APDUの取得や実行は専用のソフトウェアを用いる必要があった。
これに対し本発明は、ICカードへのデータの読み書きを行うソフトウェアを、ネットワークを介した通信を行うためのソフトウェア上から実行可能なスクリプトと、専用のソフトウェアとのいずれかに切り替える技術を提供する。
When performing communication through the network and reading / writing data to / from the IC card as a series of processing, software for performing communication via the network and software for reading / writing data from / to the IC card are provided. Switching was cumbersome. Also in Patent Document 1, it is necessary to use dedicated software for acquisition and execution of APDU.
On the other hand, the present invention provides a technique for switching software for reading / writing data to / from an IC card to either a script that can be executed from software for performing communication via a network or dedicated software. .

本発明は、ネットワークを介して通信する通信手段と、特定の処理を実行するための第1のアプリケーションプログラム、前記第1のアプリケーションプログラムと異なる第2のアプリケーションプログラム、ならびにスクリプトおよび前記第2のアプリケーションプログラムを管理する第1の管理プログラムを実行する第1の制御手段と、アンテナと、個別にアクセス制限を設定可能な複数の記憶領域を有するメモリと、前記アンテナからの信号または前記第1の制御手段からの信号に応じて前記メモリにアクセスし、アクセスした結果を前記第1の制御手段に出力する第2の制御手段とを有するICカードと、前記メモリに設定されている記憶領域を特定する第1の識別子と、前記第1の識別子により特定される記憶領域に対してアクセス可能なソフトウェアを示す第2の識別子とを含む一覧を記憶する記憶手段とを有し、前記第2のアプリケーションプログラムが、前記複数の記憶領域のうち一の記憶領域にアクセスするためのプログラムであり、前記スクリプトが、前記一の記憶領域にアクセスするための命令群を含み、前記第1の管理プログラムを実行している前記第1の制御手段が、第1の管理手段として機能し、前記第1のアプリケーションプログラムを実行している前記第1の制御手段が、第1のアプリケーション手段として機能し、前記第2のアプリケーションプログラムを実行している前記第1の制御手段が、第2のアプリケーション手段として機能し、前記第1の管理手段が、前記第1のアプリケーション手段から、前記一覧の内容を確認する要求を受け、前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記第2のアプリケーションプログラムの識別子であるときは、前記第1の管理手段が、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトの識別子となるように、前記一覧の更新をすることを特徴とする携帯端末を提供する。
この携帯端末によれば、第1のアプリケーションプログラムを実行したままで、ICカードにアクセスするソフトウェアがスクリプトに切り替えられる。
The present invention provides a communication means for communicating via a network, a first application program for executing a specific process, a second application program different from the first application program, a script, and the second application First control means for executing a first management program for managing a program, an antenna, a memory having a plurality of storage areas in which access restrictions can be individually set, a signal from the antenna, or the first control An IC card having a second control means for accessing the memory in accordance with a signal from the means and outputting the access result to the first control means, and specifying a storage area set in the memory The first identifier and the storage area specified by the first identifier are accessed. Storage means for storing a list including a second identifier indicating possible software, and the second application program is a program for accessing one storage area of the plurality of storage areas The script includes a group of instructions for accessing the one storage area, and the first control unit executing the first management program functions as a first management unit, and The first control means executing one application program functions as first application means, and the first control means executing the second application program is second application means. The first management means receives a request to confirm the contents of the list from the first application means, If the second identifier corresponding to the first identifier indicating the one storage area in the list is the identifier of the second application program, the first management Means for updating the list so that the second identifier corresponding to the first identifier indicating the one storage area in the list becomes the identifier of the script; provide.
According to this portable terminal, the software that accesses the IC card is switched to the script while the first application program is being executed.

好ましい態様において、前記第1のアプリケーションプログラムが、前記スクリプトを実行するための命令群を含み、前記一覧の更新の後で、前記第1の管理手段が、前記第1のアプリケーション手段に対して前記スクリプトを実行させる第1の指示をし、前記第1の指示を受けると、前記第1のアプリケーション手段が、前記スクリプトの実行をしてもよい。
この携帯端末によれば、一覧が更新された後でスクリプトが実行される。
In a preferred aspect, the first application program includes a group of instructions for executing the script, and after the update of the list, the first management unit performs the operation on the first application unit. When a first instruction to execute a script is given and the first instruction is received, the first application means may execute the script.
According to this portable terminal, the script is executed after the list is updated.

別の好ましい態様において、前記第1の制御手段が、前記第2のアプリケーションプログラムのアンインストールを管理する第2の管理プログラムを実行し、前記第2の管理プログラムを実行している前記第1の制御手段が、第2の管理手段として機能し、前記一覧の更新が行われると、前記第1の管理手段が、前記第2の管理手段に前記第2のアプリケーションプログラムのアンインストールの第2の指示をし、前記第2の指示を受けると、前記第2の管理手段が、前記第2のアプリケーションプログラムのアンインストールをしてもよい。
この携帯端末によれば、第2のアプリケーションプログラムのアンインストールが自動的に行われる。
In another preferred embodiment, the first control means executes the second management program for managing the uninstallation of the second application program, and executes the second management program. When the control unit functions as a second management unit and the list is updated, the first management unit performs a second uninstall of the second application program on the second management unit. When the instruction is given and the second instruction is received, the second management unit may uninstall the second application program.
According to this portable terminal, the second application program is automatically uninstalled.

さらに別の好ましい態様において、前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトの識別子であるとき、または前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記一覧に含まれていないときは、前記第1の管理手段が、前記第1のアプリケーション手段に前記スクリプトの実行を指示してもよい。
この携帯端末によれば、一覧の更新が必要ない時にはスクリプトが実行される。
In still another preferred aspect, when the request is received, the second identifier corresponding to the first identifier indicating the one storage area in the list is the identifier of the script, or the one When the second identifier corresponding to the first identifier indicating the storage area is not included in the list, the first management means instructs the first application means to execute the script May be.
According to this portable terminal, the script is executed when it is not necessary to update the list.

さらに別の好ましい態様において、この携帯端末は、情報を表示する表示手段を有し、前記特定の処理が、特定の書式で記述された特定データを、前記ネットワークから前記通信手段を介して受信し、前記受信した特定データに基づく情報を前記表示手段に表示させる処理であり、前記第1のアプリケーション手段が、前記スクリプトを実行させるための契機となる契機情報を含む前記特定データを受信したことを契機として、前記第1の管理手段に対し前記要求を送ってもよい。
この携帯端末によれば、ネットワークを介して取得した情報を表示する第1のアプリケーションプログラムによる処理と、ICカードへのアクセスをするソフトウェアの切り替えとが、シームレスに行われる。
In still another preferred aspect, the portable terminal has display means for displaying information, and the specific process receives specific data described in a specific format from the network via the communication means. , A process of displaying information based on the received specific data on the display means, wherein the first application means has received the specific data including trigger information that triggers execution of the script. As an opportunity, the request may be sent to the first management means.
According to this portable terminal, processing by the first application program for displaying information acquired via the network and switching of software for accessing the IC card are seamlessly performed.

また、本発明は、ネットワークを介して通信する通信手段と、プログラムを実行する第1の制御手段と、アンテナと、個別にアクセス制限を設定可能な複数の記憶領域を有するメモリと、前記アンテナからの信号または前記第1の制御手段からの信号に応じて前記メモリにアクセスし、アクセスした結果を前記第1の制御手段に出力する第2の制御手段とを有するICカードと、前記メモリに設定されている記憶領域を特定する第1の識別子と、前記第1の識別子により特定される記憶領域に対してアクセス可能なソフトウェアを示す第2の識別子とを含む一覧を記憶する記憶手段とを有する携帯端末に、前記第1の制御手段が、前記一覧の内容を確認する要求を受けるステップと、前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記複数の記憶領域のうち一の記憶領域にアクセスするためのアプリケーションプログラムの識別子であるときは、前記第1の制御手段が、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトの識別子となるように、前記一覧の更新をするステップとを実行させるための管理プログラムを提供する。
この管理プログラムによれば、第1のアプリケーションプログラムを実行したままで、ICカードにアクセスするソフトウェアがスクリプトからアプリケーションプログラムに切り替えられる。
Further, the present invention provides a communication means for communicating via a network, a first control means for executing a program, an antenna, a memory having a plurality of storage areas in which access restrictions can be individually set, and the antenna. An IC card having a second control means for accessing the memory in response to a signal or a signal from the first control means and outputting the access result to the first control means; and setting in the memory Storage means for storing a list including a first identifier that identifies a storage area that is stored and a second identifier that indicates software that can access the storage area identified by the first identifier In the portable terminal, the first control means receives a request for confirming the contents of the list, and when the request is received, When the second identifier corresponding to the first identifier indicating a storage area is an identifier of an application program for accessing one of the plurality of storage areas, the first control means A management program for causing the list to be updated so that the second identifier corresponding to the first identifier indicating the one storage area in the list is the identifier of the script. provide.
According to this management program, the software that accesses the IC card is switched from the script to the application program while the first application program is being executed.

一実施形態に係る通信システムの構成を示す図である。It is a figure which shows the structure of the communication system which concerns on one Embodiment. 携帯電話機10の外観図である。1 is an external view of a mobile phone 10. FIG. 携帯電話機10のハードウェア構成を示す図である。2 is a diagram showing a hardware configuration of a mobile phone 10. FIG. ICカード500の構成を示す図である。2 is a diagram showing a configuration of an IC card 500. FIG. メモリ504の記憶領域の構成を例示する図である。5 is a diagram illustrating a configuration of a storage area of a memory 504. FIG. Java実行環境を示す図である。It is a figure which shows Java execution environment. 携帯電話機10のソフトウェア構成を示す図である。3 is a diagram showing a software configuration of the mobile phone 10. FIG. サービスサーバ30の構成を示す図である。2 is a diagram illustrating a configuration of a service server 30. FIG. リモート発行サーバ40の構成を示す図である。2 is a diagram showing a configuration of a remote issuing server 40. FIG. サービスサーバ50の構成を示す図である。2 is a diagram illustrating a configuration of a service server 50. FIG. サービスサーバ60の構成を示す図である。2 is a diagram illustrating a configuration of a service server 60. FIG. 登録スクリプトによる処理を示すシーケンス図である。It is a sequence diagram which shows the process by a registration script. HTMLデータの具体例を例示する図である。It is a figure which illustrates the specific example of HTML data. 読み出しスクリプトによる処理を示すシーケンス図である。It is a sequence diagram which shows the process by a read script. 書き込みスクリプトによる処理を示すシーケンス図である。It is a sequence diagram which shows the process by a writing script. 削除スクリプトによる処理を示すシーケンス図である。It is a sequence diagram which shows the process by a deletion script. ICカード一覧を例示する図である。It is a figure which illustrates an IC card list. ICカード一覧に従って表示される画面を例示する図である。It is a figure which illustrates the screen displayed according to an IC card list. ブラウザモードの登録処理を示すシーケンス図である。It is a sequence diagram which shows the registration process of browser mode. アプリモードの登録処理を示すシーケンス図である。It is a sequence diagram which shows the registration process of application mode. ブラウザモードからアプリモードへの切り替え処理を示す図である。It is a figure which shows the switching process from browser mode to application mode. アプリモードからブラウザモードへの切り替え処理を示す図である。It is a figure which shows the switching process from application mode to browser mode. ICカード一覧からブラウザまたはアプリケーションプログラムを起動する処理を示すフローチャートである。It is a flowchart which shows the process which starts a browser or an application program from an IC card list. 暗号化技術の概要を示す図である。It is a figure which shows the outline | summary of an encryption technique.

1.構成
図1は、本発明の一実施形態に係る通信システムの構成を示す図である。この通信システムは、携帯電話機10と、管理サーバ20と、サービスサーバ30と、リモート発行サーバ40と、サービスサーバ50と、サービスサーバ60とを有する。管理サーバ20、サービスサーバ30、リモート発行サーバ40、サービスサーバ50およびサービスサーバ60は、ネットワーク70を介して接続されている。リーダ/ライタ510は、携帯電話機10に内蔵されているIC(Integrated Circuit)カード500と無線通信を行い、データの読み書きを行う。
1. Configuration FIG. 1 is a diagram showing a configuration of a communication system according to an embodiment of the present invention. This communication system includes a mobile phone 10, a management server 20, a service server 30, a remote issuing server 40, a service server 50, and a service server 60. The management server 20, service server 30, remote issuing server 40, service server 50, and service server 60 are connected via a network 70. The reader / writer 510 performs wireless communication with an IC (Integrated Circuit) card 500 built in the mobile phone 10 to read / write data.

1−1.携帯電話機10
図2は、携帯電話機10の外観図である。携帯電話機10は、本発明に係る携帯端末の一例である。携帯電話機10は、筐体9Aおよび筐体9Bを有する。筐体9Aと筐体9Bとは、ヒンジ3を介して連結されている。携帯電話機10は、いわゆる折り畳み型の携帯電話機である。携帯電話機10のユーザは、図1に示されるように筐体9Aおよび筐体9Bを開いた状態で音声通信やデータ通信を行う。
1-1. Mobile phone 10
FIG. 2 is an external view of the mobile phone 10. The mobile phone 10 is an example of a mobile terminal according to the present invention. The mobile phone 10 has a housing 9A and a housing 9B. The housing 9 </ b> A and the housing 9 </ b> B are connected via the hinge 3. The mobile phone 10 is a so-called foldable mobile phone. The user of the mobile phone 10 performs voice communication and data communication with the housing 9A and the housing 9B opened as shown in FIG.

筐体9Aは、スピーカ6、アンテナ7および表示装置8を有する。スピーカ6は、通話の音声、操作音、楽曲音などを出力する。アンテナ7は、無線基地局との間で無線通信を行う。表示装置8は、文字や画像を表示する。筐体9Bは、キーパッド4およびマイクロホン5を有する。キーパッド4は、ユーザの操作に応じた信号を出力する。マイクロホン5は、入力された音声を電気信号に変換して出力する。   The housing 9A includes a speaker 6, an antenna 7, and a display device 8. The speaker 6 outputs voice of a call, operation sound, music sound, and the like. The antenna 7 performs wireless communication with the wireless base station. The display device 8 displays characters and images. The housing 9 </ b> B has a keypad 4 and a microphone 5. The keypad 4 outputs a signal corresponding to a user operation. The microphone 5 converts the input sound into an electric signal and outputs it.

図3は、携帯電話機10のハードウェア構成を示す図である。CPU(Central Processing Unit)102は、携帯電話機10の各構成要素を制御する制御装置(第1の制御手段の一例)である。ROM(Read Only Memory)103は、携帯電話機10の基本的な動作に必要なプログラムおよびデータを記憶する記憶装置である。ROM103は、例えば、IPL(Initial Program Loader)、OS(Operating System)プラグラムおよびJava(登録商標)プラットフォームソフトウェアを記憶している。IPLは、携帯電話機10の電源が投入されたときに最初に実行するプログラムを読み出すためのプログラムである。本実施形態において、IPLは、OSプログラムを読み出す。OSプログラムは、データの入出力、記憶装置へのアクセス、各種プログラムの実行、音声通信、データ通信、その他の携帯電話機10の基本的な機能を実現させるためのプログラムである。Java(登録商標)プラットフォームソフトウェアは、OS上にJava実行環境を実現させるためのプログラムおよびデータである。Java実行環境については後述する。   FIG. 3 is a diagram illustrating a hardware configuration of the mobile phone 10. A CPU (Central Processing Unit) 102 is a control device (an example of a first control unit) that controls each component of the mobile phone 10. A ROM (Read Only Memory) 103 is a storage device that stores programs and data necessary for basic operations of the mobile phone 10. The ROM 103 stores, for example, an IPL (Initial Program Loader), an OS (Operating System) program, and Java (registered trademark) platform software. The IPL is a program for reading a program that is executed first when the mobile phone 10 is powered on. In this embodiment, the IPL reads the OS program. The OS program is a program for realizing input / output of data, access to a storage device, execution of various programs, voice communication, data communication, and other basic functions of the mobile phone 10. Java (registered trademark) platform software is a program and data for realizing a Java execution environment on the OS. The Java execution environment will be described later.

RAM(Random Access Memory)104は、CPU102がプログラムを実行する際のワークエリアとして機能する記憶装置である。記憶部105(記憶手段の一例)は、アプリケーションプログラムおよびデータを記憶する記憶装置である。記憶部105は、フラッシュメモリ等の不揮発性メモリを有する。本実施形態において、記憶部105は、ブラウザプログラムを記憶している。ブラウザプログラムは、ネットワークを介してHTML(HyperText Markup Language)データを受信し、受信したHTMLデータに応じた情報を表示装置8に表示させるためのプログラムである(第1のアプリケーションプログラムの一例)。また、記憶部105は、電子メールプログラムを記憶している。電子メールプログラム(メーラ)は、ネットワークを介して電子メールを送受信し、送受信した電子メールの表示、編集をするためのプログラムである。電子メールには添付ファイルとして画像データやアドレス帳データを添付することが可能である。この例で、ブラウザおよびメーラはJavaアプリケーションプログラムである。   A RAM (Random Access Memory) 104 is a storage device that functions as a work area when the CPU 102 executes a program. The storage unit 105 (an example of a storage unit) is a storage device that stores application programs and data. The storage unit 105 includes a nonvolatile memory such as a flash memory. In the present embodiment, the storage unit 105 stores a browser program. The browser program is a program for receiving HTML (HyperText Markup Language) data via a network and causing the display device 8 to display information corresponding to the received HTML data (an example of a first application program). The storage unit 105 stores an e-mail program. The e-mail program (mailer) is a program for sending and receiving e-mails via a network and displaying and editing the sent and received e-mails. It is possible to attach image data and address book data as an attached file to the e-mail. In this example, the browser and mailer are Java application programs.

操作部106は、ユーザの操作に応じた信号を出力する。操作部106は、テンキー、発呼キー、終話キー、クリアキー、カーソルキー、電源キー、その他の入力を行うためのキーを含むキーパッド(図2のキーパッド4)等の入力装置を有する。ユーザは、キーパッドを操作することにより携帯電話機10に対して指示を入力する。表示部107(表示手段の一例)は、文字や画像を表示する。表示部107は、液晶ディスプレイなどの表示装置(図2の表示装置8)を有する。表示部107は、実行中のアプリケーションプログラムにより処理された情報を表示する。表示部107は、LCD(liquid crystal display)などの表示体およびその表示体を駆動する駆動回路を有する。通信部108(通信手段の一例)は、アンテナ(図2のアンテナ7)を介して無線基地局を介して音声通信またはデータ通信を行う。バス109は、構成要素間でやりとりされる信号やデータを伝送する伝送路である。さらに、携帯電話機10は、ICカード500を有している。以上の構成要素はバス109を介して接続されている。   The operation unit 106 outputs a signal corresponding to a user operation. The operation unit 106 has an input device such as a keypad (keypad 4 in FIG. 2) including a numeric keypad, a call key, an end key, a clear key, a cursor key, a power key, and other keys for performing input. . The user inputs an instruction to the mobile phone 10 by operating the keypad. The display unit 107 (an example of a display unit) displays characters and images. The display unit 107 includes a display device (display device 8 in FIG. 2) such as a liquid crystal display. The display unit 107 displays information processed by the running application program. The display unit 107 includes a display body such as an LCD (liquid crystal display) and a drive circuit that drives the display body. The communication unit 108 (an example of a communication unit) performs voice communication or data communication via a radio base station via an antenna (antenna 7 in FIG. 2). The bus 109 is a transmission path for transmitting signals and data exchanged between components. Furthermore, the mobile phone 10 has an IC card 500. The above components are connected via a bus 109.

図4は、ICカード500の構成を示す図である。アンテナ501は、リーダ/ライタ510との間での無線信号の送受信に用いられる。ICチップ502は、アンテナ501が受信した信号に応じた処理を行う。ICチップ502は、プロセッサ503(第2の制御手段の一例)と、メモリ504とを有する。   FIG. 4 is a diagram illustrating a configuration of the IC card 500. The antenna 501 is used for transmitting / receiving a radio signal to / from the reader / writer 510. The IC chip 502 performs processing according to the signal received by the antenna 501. The IC chip 502 includes a processor 503 (an example of second control means) and a memory 504.

ICカード500は、CPU102とデータや信号の送受信に用いられる信号線505を有している。プロセッサ503は、アンテナ501が受信した信号またはCPU102からの信号に応じてメモリ504にアクセスし、データの読み出しまたは書き込みを行う。プロセッサ503は、データの暗号化や復号化など、データの読み出しまたは書き込みに伴う処理を実行する。   The IC card 500 has a signal line 505 used for data transmission / reception with the CPU 102. The processor 503 accesses the memory 504 in accordance with a signal received by the antenna 501 or a signal from the CPU 102, and reads or writes data. The processor 503 executes processing associated with data reading or writing, such as data encryption or decryption.

図5は、メモリ504の記憶領域の構成を例示する図である。この例で、メモリ504には、初期状態において共通領域および自由領域という2つの領域が設定されている(図5(A))。共通領域は、あらかじめ決められた事業者(この例では、リモート発行サーバ40を管理、運営している事業者)により、サービス毎の領域設定およびデータの書き込みがされる領域である。自由領域は、事業者によらずデータの書き込みが可能な領域である。   FIG. 5 is a diagram illustrating the configuration of the storage area of the memory 504. In this example, two areas of a common area and a free area are set in the memory 504 in the initial state (FIG. 5A). The common area is an area where an area is set for each service and data is written by a predetermined operator (in this example, an operator that manages and operates the remote issuing server 40). The free area is an area where data can be written regardless of the operator.

共通領域はさらに複数の領域に区分することが可能であり、各領域に、異なるサービスのデータ、例えばA社の電子マネーやB社の電子マネーのデータを記憶することが可能である(図5(B))。以下、A社およびB社が提供する電子マネーをそれぞれ、「A社マネー」および「B社マネー」という。各領域は個別にアクセス制限(セキュリティ)を設定することが可能である。これにより、一枚のカードの中で複数のサービスで用いられるデータを管理することができ、また、サービス間でのデータのセキュリティも確保される。   The common area can be further divided into a plurality of areas, and data of different services, for example, electronic money data of company A and electronic money of company B can be stored in each area (FIG. 5). (B)). Hereinafter, electronic money provided by Company A and Company B will be referred to as “Company A Money” and “Company B Money”, respectively. Access restrictions (security) can be set for each area individually. Thereby, data used in a plurality of services can be managed in one card, and security of data between services is ensured.

図6は、Java実行環境を示す図である。CPU102がJava(登録商標)プラットフォームソフトウェアを実行することにより、図6に示されるJava実行環境114がOS111上に実現される。Java実行環境114は、クラスライブラリ117、JVM(Java Virtual Machine)118およびJAM(Java Application Manager)119を有する。クラスライブラリ117は、特定の機能を有するプログラムモジュール(クラス)群を1つのファイルに結合したものである。JVM118は、Javaアプリケーションプログラムとして提供されるバイトコードを解釈して実行する機能を有する。JAM119は、Javaアプリケーションプログラムのダウンロード、インストール、起動、終了、その他の動作を管理する機能を有する(第2の管理プログラムの一例)。   FIG. 6 is a diagram showing a Java execution environment. When the CPU 102 executes the Java (registered trademark) platform software, the Java execution environment 114 shown in FIG. 6 is realized on the OS 111. The Java execution environment 114 includes a class library 117, a JVM (Java Virtual Machine) 118, and a JAM (Java Application Manager) 119. The class library 117 is a group of program modules (classes) having specific functions combined into one file. The JVM 118 has a function of interpreting and executing bytecode provided as a Java application program. The JAM 119 has a function of managing the download, installation, activation, termination, and other operations of the Java application program (an example of a second management program).

JAM119は、ICカード500にアクセスするためのAPI(Application Program Interface)群120を含んでいる。API群120は、例えば、サーバとの通信を開始するためのサーバ通信開始用API、ICカード500からデータを読み出すためのデータ読み出し用API、ICカード500にデータを書き込むためのデータ書き込み用API等を含んでいる。   The JAM 119 includes an API (Application Program Interface) group 120 for accessing the IC card 500. The API group 120 includes, for example, a server communication start API for starting communication with the server, a data read API for reading data from the IC card 500, a data write API for writing data to the IC card 500, and the like. Is included.

クライアントソフトウェア121は、リモート発行サーバ40等のサーバとの通信を中継するためのソフトウェアである。デバイスドライバ122は、ICカード500にアクセスするためのドライバプログラムである。   The client software 121 is software for relaying communication with a server such as the remote issuing server 40. The device driver 122 is a driver program for accessing the IC card 500.

第1ストレージ115は、JAM119の管理の下にダウンロードされるJavaアプリケーションプログラム(JarファイルおよびADF(Application Descriptive File))を格納する領域である。第2ストレージ116は、Javaアプリケーションプログラムの実行の際に生成されたデータをその終了後に格納しておくための領域である。第2ストレージ116において、インストールされたJavaアプリケーションプログラム毎に個別の格納領域が割り当てられる。あるJavaアプリケーションプログラムに割り当てられた格納領域のデータは、そのJavaアプリケーションプログラムが実行されている間のみ書き替え可能となっており、別のJavaアプリケーションプログラムは書き替えをすることができない。   The first storage 115 is an area for storing a Java application program (Jar file and ADF (Application Descriptive File)) downloaded under the management of the JAM 119. The second storage 116 is an area for storing data generated when the Java application program is executed after the end. In the second storage 116, a separate storage area is allocated for each installed Java application program. The data in the storage area allocated to a certain Java application program can be rewritten only while the Java application program is being executed, and another Java application program cannot be rewritten.

Java実行環境114の元でCPU102がJavaアプリケーションプログラムを実行することにより、アプリケーション112やアプリケーション113が実現される。   When the CPU 102 executes the Java application program under the Java execution environment 114, the application 112 and the application 113 are realized.

図7は、携帯電話機10のソフトウェア構成を示す図である。OS111上において、ブラウザ130等のアプリケーションプログラムが動作する。ブラウザ130は、HTMLデータに応じた情報を表示装置8に表示させる機能を有する。ブラウザ130は、ネットワークからHTMLデータを受信する機能等、情報を表示させる機能に関連する機能を有する。スクリプト処理エンジン131は、このような関連機能の一つであり、Javaスクリプトを解釈し、Javaスクリプトに記述されている命令に従った処理を実行する機能を有する。スクリプト処理エンジン131は、ICカード500にアクセスするためのAPI群132を含んでいる。API群132は、例えば、サーバとの通信を開始するためのサーバ通信開始用API、ICカード500からデータを読み出すためのデータ読み出し用API、ICカード500にデータを書き込むためのデータ書き込み用API等を含んでいる。   FIG. 7 is a diagram illustrating a software configuration of the mobile phone 10. An application program such as the browser 130 operates on the OS 111. The browser 130 has a function of causing the display device 8 to display information corresponding to the HTML data. The browser 130 has a function related to a function of displaying information, such as a function of receiving HTML data from the network. The script processing engine 131 is one of such related functions, and has a function of interpreting a Java script and executing a process according to an instruction described in the Java script. The script processing engine 131 includes an API group 132 for accessing the IC card 500. The API group 132 includes, for example, a server communication start API for starting communication with the server, a data read API for reading data from the IC card 500, a data write API for writing data to the IC card 500, and the like. Is included.

専用アプリ140は、A社マネーやB社マネー等、特定のサービスにおいてICカード500へのアクセスを行うためのアプリケーションプログラムである(第2のアプリケーションプログラムの一例)。専用アプリ140は、特定のサービスに特化された専用のプログラムである。例えば、A社マネーおよびB社マネーには、それぞれ独自の専用アプリ140がある。この例で、専用アプリ140は、Javaアプリケーションプログラムである。   The dedicated application 140 is an application program for accessing the IC card 500 in a specific service such as Company A money or Company B money (an example of a second application program). The dedicated application 140 is a dedicated program specialized for a specific service. For example, A company money and B company money each have their own dedicated application 140. In this example, the dedicated application 140 is a Java application program.

一覧管理プログラム150(第1の管理プログラムの一例)は、ICカード一覧を管理するためのプログラムである。ICカード一覧は、携帯電話機10に登録されている(または登録予定の)サービスを示す一覧である(詳細は後述)。一覧管理プログラム150は、ICカード一覧の更新や、ICカード一覧に基づいた、スクリプト処理エンジン131や専用アプリ140の起動の制御を行う。   A list management program 150 (an example of a first management program) is a program for managing an IC card list. The IC card list is a list indicating services registered (or scheduled to be registered) in the mobile phone 10 (details will be described later). The list management program 150 controls the update of the IC card list and the activation of the script processing engine 131 and the dedicated application 140 based on the IC card list.

1−2.管理サーバ20
管理サーバ20は、携帯電話機10がネットワークを介した通信を行う際の認証や課金といった処理を行うためのサーバである。
1-2. Management server 20
The management server 20 is a server for performing processing such as authentication and billing when the mobile phone 10 performs communication via a network.

1−3.サービスサーバ30
図8は、サービスサーバ30の構成を示す図である。サービスサーバ30は、電子マネーサービスを提供する事業者であるA社が管理、運営するサーバである。サービスサーバ30は、サービスに関する情報を提供するためのHTMLデータと、電子マネーサービスに用いられる各種のスクリプト(残高表示スクリプト、決済スクリプト、チャージスクリプトおよび削除スクリプト)と、サーバとして機能させるためのサーバプログラムとを、HDD等の記憶手段301に記憶している。これらのスクリプトの詳細は後述する。また、サービスサーバ30は、ネットワークを介した通信に用いられる通信インターフェース等の通信手段302、およびプログラムを実行するCPU等の制御手段303を有している。制御手段303がサーバプログラムを実行し、記憶手段301や通信手段302を制御することにより、サービスサーバ30は、携帯電話機10からの要求に応じてHTMLデータやスクリプトを送信する機能を有する。
1-3. Service server 30
FIG. 8 is a diagram illustrating the configuration of the service server 30. The service server 30 is a server that is managed and operated by company A, which is a provider that provides electronic money services. The service server 30 includes HTML data for providing information related to the service, various scripts (balance display script, settlement script, charge script, and deletion script) used for the electronic money service, and a server program for causing the server to function. Are stored in storage means 301 such as an HDD. Details of these scripts will be described later. The service server 30 includes a communication unit 302 such as a communication interface used for communication via a network, and a control unit 303 such as a CPU that executes a program. When the control unit 303 executes the server program and controls the storage unit 301 and the communication unit 302, the service server 30 has a function of transmitting HTML data and a script in response to a request from the mobile phone 10.

1−4.リモート発行サーバ40
図9は、リモート発行サーバ40の構成を示す図である。リモート発行サーバ40は、ICカード500のプラットフォームを提供する事業者が管理、運営するサーバである。リモート発行サーバ40は、事業者により提供されるサービスに関する情報を記録するデータベースと、データベースに情報を登録する処理、登録や決済の認証処理など、ICカード500のサービスに用いられる処理を実行させるためのサーバプログラムとを、HDD等の記憶手段401に記憶している。また、リモート発行サーバ40は、ネットワークを介した通信に用いられる通信インターフェース等の通信手段402、およびプログラムを実行するCPU等の制御手段403を有している。制御手段403がサーバプログラムを実行し、記憶手段401や通信手段402を制御することにより、リモート発行サーバ40は、携帯電話機10からの要求に応じて、サービスの登録や認証などの処理を行う機能を有する。
1-4. Remote issuing server 40
FIG. 9 is a diagram showing the configuration of the remote issuing server 40. The remote issue server 40 is a server that is managed and operated by a provider that provides the platform of the IC card 500. The remote issuance server 40 executes a process used for the service of the IC card 500 such as a database for recording information related to a service provided by a business operator, a process for registering information in the database, and an authentication process for registration and settlement. Are stored in a storage unit 401 such as an HDD. The remote issuing server 40 includes a communication unit 402 such as a communication interface used for communication via a network, and a control unit 403 such as a CPU that executes a program. A function that performs processing such as service registration and authentication in response to a request from the mobile phone 10 when the control unit 403 executes the server program and controls the storage unit 401 and the communication unit 402. Have

1−5.サービスサーバ50
図10は、サービスサーバ50の構成を示す図である。サービスサーバ50は、電子マネーサービスを提供する事業者であるB社が管理、運営するサーバである。サービスサーバ50は、サービスに関する情報を提供するためのHTMLデータと、電子マネーサービスに用いられる各種のスクリプト(残高表示スクリプト、決済スクリプト、チャージスクリプトおよび削除スクリプト)と、サーバとして機能させるためのサーバプログラムとを、HDD等の記憶手段501に記憶している。これらのスクリプトの詳細は後述する。また、サービスサーバ50は、ネットワークを介した通信に用いられる通信インターフェース等の通信手段502、およびプログラムを実行するCPU等の制御手段503を有している。制御手段がサーバプログラムを実行し、記憶手段501や通信手段502を制御することにより、サービスサーバ50は、携帯電話機10からの要求に応じてHTMLデータやスクリプトを送信する機能を有する。
1-5. Service server 50
FIG. 10 is a diagram illustrating a configuration of the service server 50. The service server 50 is a server that is managed and operated by Company B, which is a provider that provides electronic money services. The service server 50 includes HTML data for providing service-related information, various scripts (balance display script, settlement script, charge script, and deletion script) used for the electronic money service, and a server program for causing the server to function. Are stored in storage means 501 such as an HDD. Details of these scripts will be described later. The service server 50 also includes a communication unit 502 such as a communication interface used for communication via a network, and a control unit 503 such as a CPU that executes a program. When the control unit executes the server program and controls the storage unit 501 and the communication unit 502, the service server 50 has a function of transmitting HTML data and a script in response to a request from the mobile phone 10.

1−6.サービスサーバ60
図11は、サービスサーバ60の構成を示す図である。サービスサーバ60は、電子マネーサービスを提供する事業者ではない、第三者であるC社が管理、運営するサーバである。C社は、サービスサーバ60を用いてショッピングサイトを運営しており、通信販売事業を行っている。サービスサーバ60は、商品および商品の属性(名前、数量、単価、画像など)を記録した商品データベースと、ユーザが有するポイントを記録したポイントデータベースと、ショッピングに関する情報を提供するためのHTMLデータと、サーバとして機能するためのサーバプログラムとを、HDD等の記憶手段601に記憶している。また、サービスサーバ60は、ネットワークを介した通信に用いられる通信インターフェース等の通信手段602、およびプログラムを実行するCPU等の制御手段603を有している。制御手段603がサーバプログラムを実行し、記憶手段601や通信手段602を制御することにより、サービスサーバ60は、携帯電話機10からの要求に応じてHTMLデータを送信し、商品の購入に関する処理を行う機能を有する。サービスサーバ60により提供されるHTMLデータは、サービスサーバ30またはサービスサーバ50により提供されるスクリプトのリンクを含んでいる。すなわち、このHTMLデータを介してサービスサーバ30またはサービスサーバ50により提供されるスクリプトを呼び出すことができる。
1-6. Service server 60
FIG. 11 is a diagram illustrating a configuration of the service server 60. The service server 60 is a server managed and operated by a company C, which is a third party who is not a provider of electronic money services. Company C operates a shopping site using the service server 60 and conducts a mail order business. The service server 60 includes a product database in which products and product attributes (name, quantity, unit price, image, etc.) are recorded, a point database in which points the user has, HTML data for providing information related to shopping, A server program for functioning as a server is stored in a storage unit 601 such as an HDD. The service server 60 includes a communication unit 602 such as a communication interface used for communication via a network, and a control unit 603 such as a CPU that executes a program. When the control unit 603 executes the server program and controls the storage unit 601 and the communication unit 602, the service server 60 transmits HTML data in response to a request from the mobile phone 10, and performs processing related to purchase of the product. It has a function. The HTML data provided by the service server 60 includes a script link provided by the service server 30 or the service server 50. That is, a script provided by the service server 30 or the service server 50 can be called through the HTML data.

2.動作
2−1.スクリプト
携帯電話機10は、ブラウザ130上から(より詳細には、スクリプト処理エンジン131の機能により)スクリプトを実行する機能を有する。この例で、スクリプトは、オブジェクト指向プログラミング言語であるJava(登録商標)スクリプトで記述されている。ここで、ブラウザ上から実行されるスクリプトは、ICカード500にアクセスするスクリプトを含む。「ICカード500にアクセスする」とは、ICカード500のメモリ504に記憶領域を設定すること、設定された記憶領域からデータの読み出しをすること、記憶領域にデータの書き込みをすること、または記憶領域に記憶されているデータを消去することをいう。ICカード500にアクセスするスクリプトは、新規登録を行うためのスクリプト(以下「登録スクリプト」という)、データの読み出しを行うためのスクリプト(以下「読み出しスクリプト」という)、データの書き込みを行うためのスクリプト(以下「書き込みスクリプト」という)、および登録されているデータを削除するためのスクリプト(以下「削除スクリプト」という)に大別される。
2. Operation 2-1. Script The mobile phone 10 has a function of executing a script from the browser 130 (more specifically, by the function of the script processing engine 131). In this example, the script is described by a Java (registered trademark) script which is an object-oriented programming language. Here, the script executed from the browser includes a script for accessing the IC card 500. “Accessing the IC card 500” means setting a storage area in the memory 504 of the IC card 500, reading data from the set storage area, writing data to the storage area, or storing It means to erase the data stored in the area. The script for accessing the IC card 500 includes a script for performing new registration (hereinafter referred to as “registration script”), a script for reading data (hereinafter referred to as “read script”), and a script for writing data. (Hereinafter referred to as “write script”) and scripts for deleting registered data (hereinafter referred to as “delete script”).

2−1−1.登録スクリプト
登録スクリプトは、ICカード500のメモリ504内に新たな記憶領域を設定し、設定した記憶領域に初期データを書き込むためのスクリプトである。登録スクリプトは、電子マネーや電子チケットを「発券」する際に用いられる。
2-1-1. Registration Script The registration script is a script for setting a new storage area in the memory 504 of the IC card 500 and writing initial data in the set storage area. The registration script is used when “issuing” electronic money or an electronic ticket.

図12は、登録スクリプトによる処理を示すシーケンス図である。以下、必要に応じて「ブラウザ」や「メーラ」、「スクリプト処理エンジン」、「API」、「スクリプト」、「OS」などのソフトウェアを処理の主体として説明をするが、これらの記載は、ソフトウェアに含まれる命令を実行しているCPU102が、RAM104、表示部107、通信部108などのハードウェア資源と協働して処理を行うことを意味する。例えば、「ブラウザがHTMLデータに従ってページを表示する」と記載した場合、ブラウザプログラムを実行しているCPU102が、HTMLデータを解釈し、HTMLデータに応じたページ(画像)を表示部107に表示させることを意味する。あるいは、「APIがブラウザにデータを引き渡す」と記載した場合、APIを実行しているCPU102が、データを所定の記憶領域に記憶した後、ブラウザを実行し、この記憶領域からデータを読み出すことを意味する。さらにあるいは、「メーラが電子メールメッセージを表示する」と記載した場合、電子メールプログラムを実行しているCPU102が、電子メールのデータを解釈し、電子メールの内容を示す画像を表示部107に表示させることを意味する。図12において、ブラウザ130とスクリプト処理エンジン131とはそれぞれ別に記載されているが、既に説明したようにスクリプト処理エンジン131はブラウザ130の機能の一部である。   FIG. 12 is a sequence diagram showing processing by a registration script. In the following, software such as “browser”, “mailer”, “script processing engine”, “API”, “script”, “OS”, etc. will be described as the subject of processing. This means that the CPU 102 that executes the instructions included in the command performs processing in cooperation with hardware resources such as the RAM 104, the display unit 107, and the communication unit 108. For example, when it is described that “the browser displays a page according to the HTML data”, the CPU 102 executing the browser program interprets the HTML data and causes the display unit 107 to display a page (image) corresponding to the HTML data. Means that. Alternatively, when it is described that “API delivers data to the browser”, the CPU 102 executing the API stores the data in a predetermined storage area, then executes the browser and reads the data from the storage area. means. In addition, when it is described that “the mailer displays an e-mail message”, the CPU 102 executing the e-mail program interprets the e-mail data and displays an image indicating the content of the e-mail on the display unit 107. It means that In FIG. 12, the browser 130 and the script processing engine 131 are described separately, but the script processing engine 131 is a part of the function of the browser 130 as described above.

ステップS100において、ブラウザ130は、登録スクリプトを読み込む。すなわち、ブラウザ130は、サービスサーバ30に対し、登録スクリプトの送信を要求する。携帯電話機10から登録スクリプトの送信の要求を受信すると、サービスサーバ30は、登録スクリプトを携帯電話機10に送信する(ステップS101)。ブラウザ130は、読み込んだ登録スクリプトを、スクリプト処理エンジン131に渡す(ステップS102)。   In step S100, the browser 130 reads a registration script. That is, the browser 130 requests the service server 30 to transmit a registration script. When receiving the request for transmitting the registration script from the mobile phone 10, the service server 30 transmits the registration script to the mobile phone 10 (step S101). The browser 130 passes the read registration script to the script processing engine 131 (step S102).

図13は、登録スクリプトの読み込みを指示するHTMLデータの具体例を例示する図である。この例で、スクリプトは、HTMLのobjectタグを用いて、外部リンクとして呼び出される。単一のページのHTMLに、A社の残高表示スクリプトおよびB社の残高表示スクリプトの2つのリンクが含まれていれば、これらのスクリプトは所定のルール(例えば、HTMLに記述されている順番)により順番に呼び出される。以下、再び図12を参照して説明する。   FIG. 13 is a diagram illustrating a specific example of HTML data for instructing reading of a registration script. In this example, the script is called as an external link using an HTML object tag. If the HTML of a single page includes two links, a balance display script of company A and a balance display script of company B, these scripts are based on predetermined rules (for example, the order described in HTML). Is called in turn. Hereinafter, description will be made with reference to FIG. 12 again.

登録スクリプトを受け取ると、スクリプト処理エンジン131は、スクリプトに記述された命令に従って処理を行う。ステップS103において、スクリプト処理エンジン131は、リモート発行サーバ40に対し、発券要求を送信する。具体的には以下のとおりである。登録スクリプトは、API群132の中からサーバ通信開始用APIを呼び出すための命令群を含んでいる。CPU102がこれらの命令群を実行することにより、サーバ通信開始用APIが起動される。サーバ通信用APIはクライアントソフトウェア121を呼び出す。クライアントソフトウェア121は、通信部108を介してリモート発行サーバ40と通信を行う。すなわち、クライアントソフトウェア121は、リモート発行サーバ40に発券要求を送信する。発券要求は、リモート発行サーバ40における処理に用いられる情報、例えばA社のサービスを特定する識別子およびユーザの属性を示す情報(以下「ユーザ情報」という)を含む。なお図12においては、登録スクリプトから呼び出されるAPIやデバイスドライバ等の処理も、登録スクリプトを実行するスクリプト処理エンジン131の処理として記載している。他の図においても同様である。   When the registration script is received, the script processing engine 131 performs processing in accordance with an instruction described in the script. In step S <b> 103, the script processing engine 131 transmits a ticket issuing request to the remote issuing server 40. Specifically, it is as follows. The registration script includes a command group for calling a server communication start API from the API group 132. When the CPU 102 executes these command groups, the server communication start API is activated. The server communication API calls the client software 121. The client software 121 communicates with the remote issuing server 40 via the communication unit 108. That is, the client software 121 transmits a ticket issuing request to the remote issuing server 40. The ticketing request includes information used for processing in the remote issuing server 40, for example, an identifier for identifying the service of company A and information indicating the user's attributes (hereinafter referred to as “user information”). In FIG. 12, processing such as an API or a device driver called from the registration script is also described as processing of the script processing engine 131 that executes the registration script. The same applies to the other drawings.

発券要求を受信すると、リモート発行サーバ40は、発券処理に用いられる情報(以下「発券情報」という)を生成する(ステップS104)。発券情報は、例えば、サービスおよびユーザを特定するための識別子、およびICカード500に書き込まれる初期データを含む。発券情報を生成すると、リモート発行サーバ40は、生成した発券情報および対応するユーザ情報を記憶する。リモート発行サーバ40は、発券情報を携帯電話機10に送信する(ステップS105)。携帯電話機10のクライアントソフトウェア121は、発券情報を受信し、受信した発券情報をスクリプト処理エンジン131に引き渡す。   When the ticket issuing request is received, the remote issuing server 40 generates information used for the ticket issuing process (hereinafter referred to as “ticket issuing information”) (step S104). The ticket issuing information includes, for example, an identifier for specifying a service and a user, and initial data written in the IC card 500. When the ticket issuing information is generated, the remote issuing server 40 stores the generated ticket issuing information and corresponding user information. The remote issuing server 40 transmits the ticket issue information to the mobile phone 10 (step S105). The client software 121 of the mobile phone 10 receives the ticket issue information and delivers the received ticket issue information to the script processing engine 131.

ステップS106において、スクリプト処理エンジン131は、発券情報を用いて発券処理を行う。すなわち、登録スクリプトを実行しているCPU102は、ICカード500のメモリ504にA社のサービス用の領域を設定し、設定した領域に、A社のサービスを特定する識別子および携帯電話機10を特定する識別子を書き込む命令を、ICチップ502に送信する。ICチップ502のプロセッサ503は、CPU102からの命令を受けて、メモリ504にA社のサービス用の領域を設定し、設定した領域に、A社のサービスを特定する識別子および携帯電話機10を特定する識別子を書き込む。さらに、プロセッサ503は、CPU102からの命令を受けて、メモリ504にA社のサービス用のデータ(以下このデータを「サービスデータ」という)の初期値を書き込む。いまA社のサービスが電子マネーである場合を例にとると、サービスデータは、電子マネーの残高のデータである。あるいは別の例で、このサービスがポイントカードである場合にはサービスデータはポイントの残高であり、このサービスが入場券や乗車券等のチケット発券サービスであればサービスデータはチケットを特定する情報(日付や座席等)である。   In step S106, the script processing engine 131 performs ticketing processing using the ticketing information. That is, the CPU 102 executing the registration script sets a service area for company A in the memory 504 of the IC card 500, and specifies an identifier for specifying the service of company A and the mobile phone 10 in the set area. A command for writing the identifier is transmitted to the IC chip 502. Upon receiving an instruction from the CPU 102, the processor 503 of the IC chip 502 sets an area for company A's service in the memory 504, and specifies an identifier for identifying the company A's service and the mobile phone 10 in the set area. Write the identifier. Furthermore, the processor 503 receives an instruction from the CPU 102 and writes an initial value of service data for the company A (hereinafter, this data is referred to as “service data”) in the memory 504. Taking the case where the service of company A is electronic money as an example, the service data is data on the balance of electronic money. Alternatively, in another example, if the service is a point card, the service data is a balance of points, and if the service is a ticket issuing service such as an admission ticket or a ticket, the service data includes information identifying the ticket ( Date, seat, etc.).

発券処理が完了すると、スクリプト処理エンジン131は、発券が完了した旨の通知をリモート発行サーバ40に送信する(ステップS107)。この通知は、発券されたサービスおよび携帯電話機10を特定する識別子を含んでいる。   When the ticketing process is completed, the script processing engine 131 transmits a notification to the effect that the ticketing has been completed to the remote issuing server 40 (step S107). This notification includes an identifier that identifies the issued service and the mobile phone 10.

さらに、スクリプト処理エンジン131は、サービスの登録に用いられる情報、この例ではユーザ情報、A社のサービスを特定する識別子および携帯電話機10を特定する識別子をサービスサーバ30に送信する(ステップS108)。サービスサーバ30は、携帯電話機10から受信した情報を記憶(登録)する(ステップS109)。情報の登録が完了すると、サービスサーバ30は、登録が完了した旨の通知を携帯電話機10に送信する(ステップS110)。この通知は、登録された情報を表示するためのHTMLデータを含んでいる。この通知を受信すると、スクリプト処理エンジン131は、通知に含まれるHTMLデータをブラウザ130に引き渡し(ステップS111)、登録スクリプトによる処理を終了する。ブラウザ130は、取得したHTMLデータに従った情報を表示する。上記のステップS103、S106、S107、S108およびS111の処理は、登録スクリプトに記述された命令に従ってスクリプト処理エンジン131が行う処理である。   Further, the script processing engine 131 transmits information used for service registration, in this example, user information, an identifier for identifying the service of company A, and an identifier for identifying the mobile phone 10 to the service server 30 (step S108). The service server 30 stores (registers) the information received from the mobile phone 10 (step S109). When the registration of the information is completed, the service server 30 transmits a notification that the registration is completed to the mobile phone 10 (step S110). This notification includes HTML data for displaying the registered information. Upon receiving this notification, the script processing engine 131 passes the HTML data included in the notification to the browser 130 (step S111), and ends the processing by the registered script. The browser 130 displays information according to the acquired HTML data. The processes of steps S103, S106, S107, S108, and S111 are processes performed by the script processing engine 131 in accordance with instructions described in the registration script.

2−1−2.読み出しスクリプト
図14は、読み出しスクリプトによる処理を示すシーケンス図である。読み出しスクリプトは、ICカード500のメモリ504内に既に設定されている記憶領域から、データを読み出すためのスクリプトである。読み出しスクリプトの具体例としては、電子マネーやポイントカードの残高を表示するための「残高表示スクリプト」や電子チケットの内容を確認するための「内容表示スクリプト」などがある。
2-1-2. Read Script FIG. 14 is a sequence diagram showing processing by the read script. The read script is a script for reading data from a storage area already set in the memory 504 of the IC card 500. Specific examples of the read script include a “balance display script” for displaying the balance of electronic money and point cards, and a “content display script” for confirming the contents of the electronic ticket.

読み出しスクリプトは、サービスデータを読み出すデータ読み出し用APIを呼び出すための命令群を含んでいる。CPU102がこれらの命令群を実行することにより、データ読み出し用APIが実行される。   The read script includes a group of instructions for calling a data read API for reading service data. The data read API is executed by the CPU 102 executing these instruction groups.

ステップS200において、ブラウザ130は、読み出しスクリプトを読み込む。すなわち、ブラウザ130は、サービスサーバ30に対し、読み出しスクリプトの送信を要求する。携帯電話機10から読み出しスクリプトの送信の要求を受信すると、サービスサーバ30は、読み出しスクリプトを携帯電話機10に送信する(ステップS201)。ブラウザ130は、読み込んだ読み出しスクリプトを、スクリプト処理エンジン131に渡す(ステップS202)。   In step S200, the browser 130 reads the read script. That is, the browser 130 requests the service server 30 to transmit a read script. When receiving the request for transmitting the read script from the mobile phone 10, the service server 30 transmits the read script to the mobile phone 10 (step S201). The browser 130 passes the read script that has been read to the script processing engine 131 (step S202).

読み出しスクリプトを受け取ると、スクリプト処理エンジン131は、スクリプトに記述された命令に従って処理を行う。ステップS203において、スクリプト処理エンジンは、A社のサービスを特定する識別子(以下「サービスID」という)を読み出し用APIに引き渡す(すなわち、サービスを特定する)。サービスIDは、スクリプト自身、スクリプトのファイル名またはHTMLタグに含まれている。データ読み出し用APIは、このサービスIDに対応する記憶領域から読み出したサービスデータを引き渡す要求を、ICカード500のICチップ502に送信する。この要求は、A社のサービスIDを含んでいる。   When the read script is received, the script processing engine 131 performs processing in accordance with an instruction described in the script. In step S203, the script processing engine delivers an identifier (hereinafter referred to as “service ID”) for identifying the service of company A to the reading API (that is, identifies the service). The service ID is included in the script itself, the file name of the script, or the HTML tag. The data reading API transmits a request to deliver the service data read from the storage area corresponding to the service ID to the IC chip 502 of the IC card 500. This request includes the service ID of company A.

ステップS204において、スクリプト処理エンジン131は、ICチップ502からサービスデータを読み出す。具体的には以下のとおりである。データ読み出し用APIからデータ引き渡しの要求を受けると、ICチップ502のプロセッサ503は、メモリ504のうち、要求に含まれるサービスIDに対応する記憶領域からサービスデータ(この例では電子マネー残高)を読み出し、読み出したサービスデータをデータ読み出し用APIに引き渡す。データ読み出し用APIは、取得したサービスデータをスクリプト処理エンジン131に引き渡す。   In step S <b> 204, the script processing engine 131 reads service data from the IC chip 502. Specifically, it is as follows. Upon receiving a data delivery request from the data read API, the processor 503 of the IC chip 502 reads service data (in this example, electronic money balance) from the storage area corresponding to the service ID included in the request in the memory 504. The read service data is delivered to the data read API. The data read API passes the acquired service data to the script processing engine 131.

ステップS205において、スクリプト処理エンジン131は、取得したサービスデータをブラウザ130に引き渡し、読み出しスクリプトの処理を終了する。ブラウザ130は、取得したサービスデータに基づいた情報を表示する。上記のステップS203−S205の処理は、読み出しスクリプトに記述された命令に従ってスクリプト処理エンジン131が行う処理である。   In step S205, the script processing engine 131 delivers the acquired service data to the browser 130, and ends the read script processing. The browser 130 displays information based on the acquired service data. The processes in steps S203 to S205 are processes performed by the script processing engine 131 in accordance with instructions described in the read script.

2−1−3.書き込みスクリプト
図15は、書き込みスクリプトによる処理を示すシーケンス図である。書き込みスクリプトは、ICカード500のメモリ504内に既に設定されている記憶領域に、データを書き込むため、または既に記憶されているデータを書き換えるためのスクリプトである。書き込みスクリプトの具体例としては、電子マネーやポイントカードの「チャージ」(残高を増やす処理)を行うためのチャージスクリプト、電子マネーやポイントカードの「決済」や「ポイント使用」(残高を減らす処理)を行うための決済スクリプトがある。
2-1-3. Write Script FIG. 15 is a sequence diagram showing processing by a write script. The writing script is a script for writing data in a storage area already set in the memory 504 of the IC card 500 or rewriting data already stored. Specific examples of the writing script include a charge script for “charging” electronic money and point cards (processing to increase the balance), “settlement” and “using points” for electronic money and point cards (processing to reduce the balance) There is a settlement script to do this.

ステップS300において、ブラウザ130は、書き込みスクリプトを読み込む。すなわち、ブラウザ130は、サービスサーバ30に対し、書き込みスクリプトの送信を要求する。携帯電話機10から書き込みスクリプトの送信の要求を受信すると、サービスサーバ30は、書き込みスクリプトを携帯電話機10に送信する(ステップS301)。ブラウザ130は、読み込んだ書き込みスクリプトを、スクリプト処理エンジン131に渡す(ステップS302)。   In step S300, the browser 130 reads the writing script. That is, the browser 130 requests the service server 30 to transmit a write script. When receiving the request for sending the write script from the mobile phone 10, the service server 30 sends the write script to the mobile phone 10 (step S301). The browser 130 passes the read writing script to the script processing engine 131 (step S302).

ステップS303において、スクリプト処理エンジン131は、データ書き込み用APIを呼び出し、A社のサービスID、および書き込むべき対象データ(例えば、決済する金額やチャージする金額を示すデータ)をデータ書き込み用APIに引き渡す。データ書き込み用APIは、このサービスIDに対応する記憶領域に、対象データを書き込む要求を、ICカード500のICチップ502に送信する。この要求は、A社のサービスを特定する識別子および対象データを含んでいる。   In step S303, the script processing engine 131 calls the data writing API, and delivers the service ID of company A and the target data to be written (for example, data indicating the amount to be settled or the amount to be charged) to the data writing API. The data writing API transmits a request to write the target data to the storage area corresponding to the service ID to the IC chip 502 of the IC card 500. This request includes an identifier for identifying the service of company A and target data.

データの書き込み要求を受けると、ICチップ502のプロセッサ503は、その書き込み要求があらかじめ決められた制約条件を満たしているか判断する(ステップS304)。制約条件は、例えば、書き込み要求が「決済」や「ポイント使用」のようにサービスデータにより示される残高を減少させる処理の場合には、サービスデータから減算しようとする値(決済の額や使用するポイント)が、サービスデータの残高以下であるという条件である。あるいは、制約条件は、書き込み要求が「チャージ」のようにサービスデータにより示される残高を増加させる処理の場合には、処理後の残高があらかじめ決められた上限値以下であるという条件である。なお、書き込み要求の種類によっては、制約条件を満たしているかどうかの判定処理を行わなくてもよい。   Upon receiving a data write request, the processor 503 of the IC chip 502 determines whether the write request satisfies a predetermined constraint (step S304). For example, in the case where the write request is a process of reducing the balance indicated by the service data such as “settlement” or “use of points”, the constraint condition is a value to be subtracted from the service data (amount of settlement or used Point) is less than the balance of the service data. Alternatively, the constraint condition is a condition that, in the case of processing for increasing the balance indicated by the service data such as “charge” as the write request, the balance after processing is equal to or less than a predetermined upper limit value. Note that, depending on the type of write request, it is not necessary to perform the process of determining whether or not the constraint condition is satisfied.

書き込み要求が制約条件を満たしていると判断された場合(S304:YES)、プロセッサ503は、処理をステップS305に移行する。書き込み要求が制約条件を満たしていないと判断された場合(S304:NO)、プロセッサ503は、その旨を示すエラーメッセージを、データ書き込み用APIを介してスクリプト処理エンジン131に送信する。エラーメッセージを受信すると、スクリプト処理エンジン131は、エラーが発生した旨をブラウザ130に通知し(ステップS312)、処理を終了する。   If it is determined that the write request satisfies the constraint condition (S304: YES), the processor 503 moves the process to step S305. When it is determined that the write request does not satisfy the constraint condition (S304: NO), the processor 503 transmits an error message indicating that to the script processing engine 131 via the data write API. Upon receiving the error message, the script processing engine 131 notifies the browser 130 that an error has occurred (step S312), and ends the process.

ステップS305において、プロセッサ503は、リモート発行サーバ40に、データの書き込み要求を送信する。具体的には以下のとおりである。プロセッサ503は、サーバ通信用APIを呼び出す。サーバ通信用APIはクライアントソフトウェア121を呼び出す。クライアントソフトウェア121は、通信部108を介してリモート発行サーバ40と通信を行う。すなわち、クライアントソフトウェア121は、リモート発行サーバ40にデータの書き込み要求を送信する。書き込み要求は、リモート発行サーバ40における認証に用いられる情報、例えばA社のサービスIDおよび携帯電話機10の識別子を含む。   In step S <b> 305, the processor 503 transmits a data write request to the remote issuing server 40. Specifically, it is as follows. The processor 503 calls a server communication API. The server communication API calls the client software 121. The client software 121 communicates with the remote issuing server 40 via the communication unit 108. That is, the client software 121 transmits a data write request to the remote issuing server 40. The write request includes information used for authentication in the remote issuing server 40, for example, the service ID of company A and the identifier of the mobile phone 10.

携帯電話機10からデータの書き込み要求を受信すると、リモート発行サーバ40は、受信した書き込み要求の認証を行う(ステップS306)。認証には、後述する暗号化技術および電子署名技術が用いられる。あるいは、認証に、A社のサービスIDおよび携帯電話機10の識別子などの情報が用いられてもよい。認証処理を行うと、リモート発行サーバ40は、認証の結果を携帯電話機10に送信する(ステップS307)。   When receiving the data write request from the mobile phone 10, the remote issuing server 40 authenticates the received write request (step S306). For the authentication, an encryption technique and an electronic signature technique described later are used. Alternatively, information such as the service ID of company A and the identifier of the mobile phone 10 may be used for authentication. When the authentication process is performed, the remote issuing server 40 transmits the authentication result to the mobile phone 10 (step S307).

ICチップ502のプロセッサ503は(サーバ通信用APIおよびクライアントソフトウェア121を介して)、リモート発行サーバ40から認証の結果を受信する。プロセッサ503は、認証結果に応じて、次に行う処理を決定する(ステップS308)。認証が成功した場合(ステップS308:YES)、プロセッサ503は、対象データを、メモリ504内のA社のサービスに対応する記憶領域に書き込む(ステップS309)。対象データを記憶領域に書き込むと、プロセッサ503は、書き込みが完了した旨の通知をスクリプト処理エンジン131に送信する(ステップS310)。書き込みが完了した旨の通知を受信すると、スクリプト処理エンジン131は、書き込みが完了した旨をブラウザ130に通知し(ステップS311)、書き込みスクリプトによる処理を終了する。   The processor 503 of the IC chip 502 receives the authentication result from the remote issuing server 40 (via the server communication API and the client software 121). The processor 503 determines the next process to be performed according to the authentication result (step S308). When the authentication is successful (step S308: YES), the processor 503 writes the target data in a storage area corresponding to the service of company A in the memory 504 (step S309). When the target data is written in the storage area, the processor 503 transmits a notification to the effect that the writing has been completed to the script processing engine 131 (step S310). When the script processing engine 131 receives the notification that the writing has been completed, the script processing engine 131 notifies the browser 130 that the writing has been completed (step S311), and ends the processing by the writing script.

認証が失敗した場合(ステップS308:NO)、プロセッサ503は、対象データをメモリ504に書き込まず、認証が失敗した旨の通知をスクリプト処理エンジン131に送信する。認証が失敗した旨の通知を受信すると、スクリプト処理エンジン131は、認証が失敗した旨をブラウザ130に通知し(ステップS313)、書き込みスクリプトによる処理を終了する。上記のステップS303、S311、S312およびS313の処理は、書き込みスクリプトに記述された命令に従ってスクリプト処理エンジン131が行う処理である。   If the authentication has failed (step S308: NO), the processor 503 does not write the target data in the memory 504, and transmits a notification that the authentication has failed to the script processing engine 131. When the script processing engine 131 receives the notification that the authentication has failed, the script processing engine 131 notifies the browser 130 that the authentication has failed (step S313), and ends the processing by the writing script. The processes in steps S303, S311, S312 and S313 described above are processes performed by the script processing engine 131 in accordance with the instructions described in the writing script.

2−1−4.削除スクリプト
削除スクリプトは、ICカード500のメモリ504内に設定されている記憶領域内のデータを削除し、その記憶領域に対応するサービスをICカード500から削除するためのスクリプトである。削除スクリプトは、電子マネーや電子チケットを「削除」する際に用いられる。
2-1-4. Deletion Script The deletion script is a script for deleting data in the storage area set in the memory 504 of the IC card 500 and deleting a service corresponding to the storage area from the IC card 500. The deletion script is used when “deleting” electronic money or an electronic ticket.

図16は、削除スクリプトによる処理を示すシーケンス図である。ステップS400において、ブラウザ130は、削除スクリプトを読み込む。すなわち、ブラウザ130は、サービスサーバ30に対し、削除スクリプトの送信を要求する。携帯電話機10から削除スクリプトの送信の要求を受信すると、サービスサーバ30は、削除スクリプトを携帯電話機10に送信する(ステップS401)。ブラウザ130は、読み込んだ削除スクリプトを、スクリプト処理エンジン131に渡す(ステップS402)。   FIG. 16 is a sequence diagram showing processing by a deletion script. In step S400, the browser 130 reads the deletion script. That is, the browser 130 requests the service server 30 to transmit a deletion script. When receiving the request for transmission of the deletion script from the mobile phone 10, the service server 30 transmits the deletion script to the mobile phone 10 (step S401). The browser 130 passes the read deletion script to the script processing engine 131 (step S402).

削除スクリプトを受け取ると、スクリプト処理エンジン131は、スクリプトに記述された命令に従って処理を行う。ステップS403において、スクリプト処理エンジン131は、リモート発行サーバ40に対し、削除要求を送信する。削除要求は、リモート発行サーバ40における処理に用いられる情報、例えばA社のサービスIDおよびユーザ情報を含む。   When the deletion script is received, the script processing engine 131 performs processing according to an instruction described in the script. In step S <b> 403, the script processing engine 131 transmits a deletion request to the remote issuing server 40. The deletion request includes information used for processing in the remote issuing server 40, for example, the service ID of the company A and user information.

削除要求を受信すると、リモート発行サーバ40は、削除処理に用いられる情報(以下「削除情報」という)を生成する(ステップS404)。削除情報は、例えば、削除すべきサービスおよびユーザを特定する識別子を含む。削除情報を生成すると、リモート発行サーバ40は、記憶していたユーザ情報を、HDD等の記憶手段から削除する。リモート発行サーバ40は、削除情報を携帯電話機10に送信する(ステップS405)。携帯電話機10のクライアントソフトウェア121は、削除情報を受信し、受信した削除情報をスクリプト処理エンジン131に引き渡す。   When receiving the deletion request, the remote issuing server 40 generates information used for the deletion process (hereinafter referred to as “deletion information”) (step S404). The deletion information includes, for example, an identifier that identifies a service and a user to be deleted. When the deletion information is generated, the remote issuing server 40 deletes the stored user information from the storage means such as the HDD. The remote issuing server 40 transmits the deletion information to the mobile phone 10 (step S405). The client software 121 of the mobile phone 10 receives the deletion information and passes the received deletion information to the script processing engine 131.

ステップS406において、スクリプト処理エンジン131は、削除情報を用いて削除処理を行う。すなわち、削除スクリプトを実行しているCPU102は、ICカード500のメモリ504に設定されているA社のサービス用の領域を削除する命令を、ICチップ502に送信する。ICチップ502のプロセッサ503は、CPU102からの命令を受けて、メモリ504に設定されているA社のサービス用の領域に記憶されているすべてのデータを消去(削除)する。   In step S406, the script processing engine 131 performs a deletion process using the deletion information. That is, the CPU 102 executing the deletion script transmits to the IC chip 502 a command for deleting the service area for Company A set in the memory 504 of the IC card 500. In response to an instruction from the CPU 102, the processor 503 of the IC chip 502 deletes (deletes) all data stored in the service area for Company A set in the memory 504.

削除処理が完了すると、スクリプト処理エンジン131は、削除が完了した旨の通知をリモート発行サーバ40に送信する(ステップS407)。この通知は、削除されたサービスおよび携帯電話機10を特定する識別子を含んでいる。   When the deletion process is completed, the script processing engine 131 transmits a notification that the deletion is completed to the remote issuing server 40 (step S407). This notification includes an identifier that identifies the deleted service and the mobile phone 10.

さらに、スクリプト処理エンジン131は、削除されたサービスを特定する情報、この例ではユーザ情報、A社のサービスIDおよび携帯電話機10を特定する識別子をサービスサーバ30に送信する(ステップS408)。サービスサーバ30は、携帯電話機10から受信した情報を用いて、HDD等の記憶手段に記憶されているデータを削除する(ステップS409)。情報の削除が完了すると、サービスサーバ30は、削除が完了した旨の通知を携帯電話機10に送信する(ステップS410)。この通知は、サービスが削除された旨を表示するためのHTMLデータを含んでいる。この通知を受信すると、スクリプト処理エンジン131は、通知に含まれるHTMLデータをブラウザ130に引き渡し(ステップS411)、削除スクリプトによる処理を終了する。ブラウザ130は、取得したHTMLデータに従った情報を表示する。上記のステップS403、S406、S407、S408およびS411の処理は、削除スクリプトに記述された命令に従ってスクリプト処理エンジン131が行う処理である。   Further, the script processing engine 131 transmits information for identifying the deleted service, in this example, user information, a service ID of company A, and an identifier for identifying the mobile phone 10 to the service server 30 (step S408). The service server 30 deletes the data stored in the storage means such as the HDD using the information received from the mobile phone 10 (step S409). When the deletion of information is completed, the service server 30 transmits a notification that the deletion is completed to the mobile phone 10 (step S410). This notification includes HTML data for displaying that the service has been deleted. Upon receiving this notification, the script processing engine 131 passes the HTML data included in the notification to the browser 130 (step S411), and ends the processing by the deletion script. The browser 130 displays information according to the acquired HTML data. The processes in steps S403, S406, S407, S408, and S411 are processes performed by the script processing engine 131 in accordance with the instructions described in the deletion script.

2−2.ICカード一覧
2−2−1.ICカード一覧の概要
この例で、携帯電話機10において、ICカード500に登録されているサービスは、ICカード一覧を用いて管理される。
2-2. IC card list 2-2-1. Outline of IC Card List In this example, in the mobile phone 10, services registered in the IC card 500 are managed using the IC card list.

図17は、ICカード一覧を例示する図である。ICカード一覧は、記憶部105に記憶されている。この例で、ICカード一覧は、「領域ID」、「サービスID」、「起動モード」、「URL」、および「発券済み」のレコードを含む。「領域ID」は、メモリ504内の記憶領域を特定する識別子である。「サービスID」は、その記憶領域に登録されているサービスを特定する識別子である。「起動モード」は、その記憶領域に対してアクセス可能な(アクセスが認められている)ソフトウェアがスクリプトおよび専用アプリのいずれであるかを示す識別子である。この例では、識別子「アプリ」は専用のアプリケーションプログラムによるアクセスが可能であること(以下この状態を「アプリモード」という)を、識別子「ブラウザ」はスクリプトによりアクセスが可能であること(以下この状態を「ブラウザモード」という)を示している。アプリモードおよびブラウザモードを総称して「起動モード」という。「URL」は、アクセス可能なソフトウェアがスクリプトである場合に、そのスクリプトの所在を示す情報である。「発券済み」は、対応するサービスについて発券が完了しているか否かを示すフラグである。フラグ「済」は発券が完了していることを示す。フラグ「未済」は発券が完了していないことを示す。   FIG. 17 is a diagram illustrating an IC card list. The IC card list is stored in the storage unit 105. In this example, the IC card list includes records of “area ID”, “service ID”, “activation mode”, “URL”, and “ticketed”. “Area ID” is an identifier for specifying a storage area in the memory 504. “Service ID” is an identifier for identifying a service registered in the storage area. The “startup mode” is an identifier indicating whether the software that can access the storage area (access is permitted) is a script or a dedicated application. In this example, the identifier “application” can be accessed by a dedicated application program (hereinafter this state is referred to as “application mode”), and the identifier “browser” can be accessed by script (hereinafter this state). "Browser mode"). The application mode and the browser mode are collectively referred to as “startup mode”. “URL” is information indicating the location of a script when the accessible software is a script. “Ticketed” is a flag indicating whether or not ticketing has been completed for the corresponding service. The flag “Done” indicates that ticketing has been completed. The flag “incomplete” indicates that ticketing has not been completed.

この例で、領域ID「0001」で特定される記憶領域には、サービスID「A社マネー」で特定されるサービスに関するデータが記憶されている。また、A社マネーの起動モードはアプリモードであることが示されている。領域ID「0002」で特定される記憶領域には、サービスID「B社マネー」で特定されるサービスに関するデータが記憶されている。また、B社マネーの起動モードはブラウザモードであることが示されている。さらに、このスクリプトの所在が「http://www.b-money.com/」であることが示されている。なおこの例で、ブラウザモードのサービスについては、発券済みと未発券の区別はなく、レコードは空欄になっている。   In this example, data related to the service specified by the service ID “A company money” is stored in the storage area specified by the area ID “0001”. Further, it is indicated that the startup mode of the company A money is the application mode. In the storage area specified by the area ID “0002”, data related to the service specified by the service ID “B company money” is stored. Further, it is indicated that the startup mode of the B company money is the browser mode. Furthermore, it is indicated that the location of this script is “http://www.b-money.com/”. In this example, for the browser mode service, there is no distinction between issued and unissued tickets, and the record is blank.

図18は、ICカード一覧に従って表示部107に表示される画面を例示する図である。図18は、図17のICカード一覧に従って表示される画面を示している。文字列601、602、603および604は、サービスIDを示す文字列である。アイコン605は、起動モードがアプリモードであることを示す画像である。アイコン606は、起動モードがブラウザモードであることを示す画像である。アイコン607は、対応するサービスが発券済みであることを示す画像である。アイコン608は、対応するサービスが未発券であることを示す画像である。図18に示される画像の表示は、一覧管理プログラムによって行われる。この例で、ブラウザモードに発券済みと未発券の区別はないが、便宜上アイコン607が表示されている。アプリモードのサービスについては、発券済みと未発券が区別されるので、発券状態に応じたアイコンが表示される。   FIG. 18 is a diagram illustrating a screen displayed on display unit 107 in accordance with the IC card list. FIG. 18 shows a screen displayed according to the IC card list of FIG. Character strings 601, 602, 603 and 604 are character strings indicating service IDs. The icon 605 is an image indicating that the activation mode is the application mode. The icon 606 is an image indicating that the activation mode is the browser mode. The icon 607 is an image indicating that the corresponding service has been issued. The icon 608 is an image indicating that the corresponding service has not been issued. The image display shown in FIG. 18 is performed by a list management program. In this example, there is no distinction between issued and unissued tickets in the browser mode, but an icon 607 is displayed for convenience. As for the application mode service, since the ticket is issued and not issued, an icon corresponding to the ticket issuing state is displayed.

2−2−2.ICカード一覧への登録(ブラウザモード)
図19は、ICカード一覧への新たなサービス(ブラウザモード)の登録処理を示すシーケンス図である。この例で、ICカード一覧への新たなサービスの登録は、図12のステップS106の発券処理に伴って行われる。この例で、図12のステップS101でダウンロードされる登録スクリプトは、ICカード一覧にサービスを登録するためのデータ、例えば、領域ID、サービスIDおよびURLを含む。
2-2-2. Registration to IC card list (browser mode)
FIG. 19 is a sequence diagram showing registration processing of a new service (browser mode) to the IC card list. In this example, registration of a new service in the IC card list is performed in accordance with the ticketing process in step S106 of FIG. In this example, the registration script downloaded in step S101 in FIG. 12 includes data for registering a service in the IC card list, for example, an area ID, a service ID, and a URL.

ステップS501において、スクリプト処理エンジン131は、リモート発行サーバ40から発券情報を取得する。発券情報を取得すると、スクリプト処理エンジン131は、ICカード500に対し発券を指示する(ステップS502)。スクリプト処理エンジン131から指示を受けると、ICカード500のプロセッサ503は、メモリ504に領域を設定し、設定した領域に初期データを書き込む(ステップS503)。初期データの書き込みが完了すると、プロセッサ503は、その旨をスクリプト処理エンジン131に通知する。   In step S <b> 501, the script processing engine 131 acquires ticketing information from the remote issuing server 40. When the ticket issuing information is acquired, the script processing engine 131 instructs the IC card 500 to issue a ticket (step S502). When receiving an instruction from the script processing engine 131, the processor 503 of the IC card 500 sets an area in the memory 504, and writes initial data in the set area (step S503). When the writing of the initial data is completed, the processor 503 notifies the script processing engine 131 to that effect.

発券処理が完了すると、スクリプト処理エンジン131は、ICカード一覧へのサービスの登録を一覧管理プログラム150に指示する(ステップS504)。スクリプト処理エンジン131から一覧管理プログラム150への指示は、ICカード一覧への登録に用いられる情報、この例では、領域ID、サービスIDおよびURLを含む。   When the ticketing process is completed, the script processing engine 131 instructs the list management program 150 to register the service in the IC card list (step S504). The instruction from the script processing engine 131 to the list management program 150 includes information used for registration in the IC card list, in this example, an area ID, a service ID, and a URL.

スクリプト処理エンジン131からサービスの登録を指示されると、一覧管理プログラム150は、指示に含まれる情報を用いて、ICカード一覧を更新する(ステップS505)。サービスが新規に登録される場合、一覧管理プログラム150は、ステップS504の指示に含まれる領域IDを含むレコードをICカード一覧内に新たに作成し、このレコードにサービスIDを登録する。この例では、「起動モード」は「ブラウザ」に設定される。ICカード一覧の更新が完了すると、一覧管理プログラム150は、ICカード一覧の更新が完了したことをスクリプト処理エンジン131に通知する(ステップS506)。一覧管理プログラム150から更新の完了を通知されると、スクリプト処理エンジン131は、発券処理が完了したことをリモート発行サーバ40に通知する(ステップS507)。この処理は、図12のステップS107の処理に相当する。上記のステップS501−S506の処理が、図12のステップS106の処理に伴って行われる。この後、図12に示される処理が行われる。   When the script processing engine 131 is instructed to register a service, the list management program 150 updates the IC card list using information included in the instruction (step S505). When a service is newly registered, the list management program 150 newly creates a record including the area ID included in the instruction in step S504 in the IC card list, and registers the service ID in this record. In this example, the “startup mode” is set to “browser”. When the update of the IC card list is completed, the list management program 150 notifies the script processing engine 131 that the update of the IC card list is completed (step S506). When the update completion is notified from the list management program 150, the script processing engine 131 notifies the remote issuing server 40 that the ticketing process is completed (step S507). This process corresponds to the process in step S107 of FIG. The processes in steps S501 to S506 are performed along with the process in step S106 in FIG. Thereafter, the process shown in FIG. 12 is performed.

2−2−3.ICカード一覧への登録(アプリモード)
図20は、ICカード一覧への新たなサービス(アプリモード)の登録処理を示すシーケンス図である。この例で、ICカード一覧への新たなサービスの登録は、専用アプリ140のインストールに伴って行われる。
2-2-3. Registration to IC card list (application mode)
FIG. 20 is a sequence diagram showing registration processing of a new service (application mode) in the IC card list. In this example, registration of a new service to the IC card list is performed with the installation of the dedicated application 140.

所定のイベント(例えば、ブラウザが表示している画面上で、アプリモードのサービスの新規登録を開始させるボタンが押されるというイベント)が発生すると、ブラウザ130は、ネットワーク70に接続されたサーバから専用アプリ140をダウンロードする(ステップS601)。   When a predetermined event (for example, an event that a button for starting a new registration of an application mode service is pressed on the screen displayed by the browser) occurs, the browser 130 is dedicated from a server connected to the network 70. The application 140 is downloaded (step S601).

この例で、専用アプリ140のインストールには、ADF(Application Descriptor File)、SDF(Security Descriptor File)およびJar(Java ARchive)ファイルの3つのファイルが用いられる。ADFは、アプリケーションプログラムの属性を定義するファイルである。ADFは、SDFのURLおよびJarファイルを特定する情報を含んでいる。SDFは、Jarファイルを特定する情報を含むファイルである。Jarファイルは、アプリケーションプログラムの実体ファイルである。ステップS601においては、ADFがダウンロードされる。ADFをダウンロードすると、ブラウザ130は、このADFを用いた専用アプリ140のインストールをJAM119に指示する。指示を受けると、JAM119は、ADFを用いて専用アプリ140をインストールする。   In this example, the installation of the dedicated application 140 uses three files: an ADF (Application Descriptor File), an SDF (Security Descriptor File), and a Jar (Java ARchive) file. The ADF is a file that defines application program attributes. The ADF includes information specifying the URL of the SDF and the Jar file. The SDF is a file including information for specifying a Jar file. The Jar file is an application program entity file. In step S601, the ADF is downloaded. When the ADF is downloaded, the browser 130 instructs the JAM 119 to install the dedicated application 140 using the ADF. When receiving the instruction, the JAM 119 installs the dedicated application 140 using the ADF.

ステップS602における専用アプリ140のインストールは、例えば以下のように行われる。JAM119は、取得されたADFに記述されたURLで特定されるリソースから、SDFを取得する。JAM119は、ADFに記述された情報で特定されるJarファイルおよびSDFに記述された情報で特定されるJarファイルが同一であることを確認する。ADFおよびSDFにより特定されるJarファイルが同一であると確認されると、JAM119は、Jarファイルを取得する。JarファイルのURLは、ADFに記述されている。   The installation of the dedicated application 140 in step S602 is performed as follows, for example. The JAM 119 acquires the SDF from the resource specified by the URL described in the acquired ADF. The JAM 119 confirms that the Jar file specified by the information described in the ADF and the Jar file specified by the information described in the SDF are the same. When it is confirmed that the Jar files specified by the ADF and the SDF are the same, the JAM 119 acquires the Jar file. The URL of the Jar file is described in ADF.

Jarファイルを取得すると、JAM119は、専用アプリ140をインストールする。インストールとは、アプリケーションプログラムの起動に用いられる情報およびアプリケーションプログラムの実体ファイルを、記憶部105に記憶することをいう。   When acquiring the Jar file, the JAM 119 installs the dedicated application 140. Installation refers to storing information used to start an application program and an entity file of the application program in the storage unit 105.

インストールが完了すると、JAM119は、一覧管理プログラム150に対し、ICカード一覧へのサービスの登録を指示する(ステップS603)。JAM119から一覧管理プログラム150への指示は、ICカード一覧への登録に用いられる情報、この例では、領域IDおよびサービスIDを含む。   When the installation is completed, the JAM 119 instructs the list management program 150 to register the service in the IC card list (step S603). The instruction from the JAM 119 to the list management program 150 includes information used for registration in the IC card list, in this example, an area ID and a service ID.

JAM119からサービスの登録を指示されると、一覧管理プログラム150は、指示に含まれる情報を用いて、ICカード一覧を更新する(ステップS604)。サービスが新規に登録される場合、一覧管理プログラム150は、ステップS603の指示に含まれる領域IDを含むレコードをICカード一覧内に新たに作成し、このレコードにサービスIDを登録する。この例では、「起動モード」は「アプリ」に設定される。また、この時点では、「発券済み」フラグは「未済」に設定される。ICカード一覧の更新が完了すると、一覧管理プログラム150は、ICカード一覧の更新が完了したことをJAM119に通知する(ステップS605)。   When the JAM 119 is instructed to register a service, the list management program 150 updates the IC card list using information included in the instruction (step S604). When a service is newly registered, the list management program 150 newly creates a record including the area ID included in the instruction in step S603 in the IC card list, and registers the service ID in this record. In this example, “activation mode” is set to “application”. At this time, the “issued ticket” flag is set to “incomplete”. When the update of the IC card list is completed, the list management program 150 notifies the JAM 119 that the update of the IC card list is completed (step S605).

ICカード一覧の更新完了を通知されると、JAM119は、発券処理を行うために専用アプリ140を起動する(ステップS606)。あるいは、専用アプリ140は、ユーザにより手動で起動されてもよい。この場合は、JAM119またはOS111が、ユーザに専用アプリ140の起動を促す表示をする。起動されると、専用アプリ140は、発券処理を行う。発券処理の主体がスクリプト処理エンジン131ではなく専用アプリ140であるが、発券処理の内容は図12のステップS103−S106で説明したものと同様である。すなわち、専用アプリ140は、リモート発行サーバ140と通信し、発券情報を取得する(ステップS607)。発券情報を取得すると、専用アプリ140は、ICカード500に対し、発券の指示をする(ステップS608)。発券の指示を受けると、ICカード500のプロセッサ503は、メモリ504に領域を設定し、初期データを書き込む(ステップS609)。   When notified of the completion of the update of the IC card list, the JAM 119 activates the dedicated application 140 in order to perform ticketing processing (step S606). Alternatively, the dedicated application 140 may be manually activated by the user. In this case, the JAM 119 or the OS 111 displays a message prompting the user to start the dedicated application 140. When activated, the dedicated application 140 performs ticketing processing. Although the subject of the ticketing process is not the script processing engine 131 but the dedicated application 140, the contents of the ticketing process are the same as those described in steps S103 to S106 of FIG. That is, the dedicated application 140 communicates with the remote issuing server 140 and acquires ticketing information (step S607). When the ticket issuing information is acquired, the dedicated application 140 instructs the IC card 500 to issue a ticket (step S608). Upon receiving a ticketing instruction, the processor 503 of the IC card 500 sets an area in the memory 504 and writes initial data (step S609).

発券処理が完了すると、専用アプリ140は、発券処理が完了したことを一覧管理プログラム150に通知する。専用アプリ140から一覧管理プログラム150への通知は、ICカード一覧への登録に用いられる情報、この例では、領域IDおよびサービスIDを含む。   When the ticketing process is completed, the dedicated application 140 notifies the list management program 150 that the ticketing process has been completed. The notification from the dedicated application 140 to the list management program 150 includes information used for registration in the IC card list, in this example, an area ID and a service ID.

専用アプリ140から発券処理の完了を通知されると、一覧管理プログラム150は、通知に含まれる情報を用いて、ICカード一覧を更新する(ステップS610)。ここでは、フラグ「発券済み」の値が「済」に設定される。ICカード一覧の更新が完了すると、一覧管理プログラム150は、ICカード一覧の更新が完了したことを専用アプリ140に通知する(ステップS611)。一覧管理プログラム150から更新の完了を通知されると、専用アプリ140は、発券処理が完了したことをリモート発行サーバ40に通知する(ステップS612)。以下、専用アプリ140の動作に従った処理が行われる。   When the completion of the ticketing process is notified from the dedicated application 140, the list management program 150 updates the IC card list using the information included in the notification (step S610). Here, the value of the flag “issued ticket” is set to “completed”. When the update of the IC card list is completed, the list management program 150 notifies the dedicated application 140 that the update of the IC card list is completed (step S611). When the update completion is notified from the list management program 150, the dedicated application 140 notifies the remote issuing server 40 that the ticketing process has been completed (step S612). Thereafter, processing according to the operation of the dedicated application 140 is performed.

2−2−4.ブラウザモードからアプリモードへの切り替え
図21は、ブラウザモードからアプリモードへの切り替え処理を示す図である。ここでは、B社のサービスがブラウザモードからアプリモードに切り替えられる場合を例に説明する。ブラウザモードからアプリモードへの切り替えは、切り替えをトリガするHTMLデータをブラウザ130が受信したことを契機として行われる。詳細には以下のとおりである。
2-2-4. Switching from Browser Mode to Application Mode FIG. 21 is a diagram illustrating a process for switching from the browser mode to the application mode. Here, a case where the service of company B can be switched from the browser mode to the application mode will be described as an example. Switching from the browser mode to the application mode is performed when the browser 130 receives HTML data that triggers the switching. Details are as follows.

ステップS701において、ブラウザ130は、サービスサーバ50(B社のサービスサーバ)からHTMLデータを受信する。このHTMLデータは、アプリモードへの切り替えをトリガする情報、例えば、B社の専用アプリ(以下「専用アプリ140B」という)をダウンロードさせる命令へのリンクを含んでいる。このリンクは、ダウンロードしようとするアプリケーションプログラムがICカード500にアクセスするためのアプリケーションプログラムであることを示す識別子を含んでいる。この識別子は、例えばアプリケーションプログラムのファイル名に含まれている。あるいは、この識別子は、リンクのHTMLタグに含まれていてもよい。さらにあるいは、この識別子は、ADFまたはSDFに含まれていてもよい。   In step S701, the browser 130 receives HTML data from the service server 50 (the service server of company B). The HTML data includes information that triggers switching to the application mode, for example, a link to an instruction to download a dedicated application of company B (hereinafter referred to as “dedicated application 140B”). This link includes an identifier indicating that the application program to be downloaded is an application program for accessing the IC card 500. This identifier is included in the file name of the application program, for example. Alternatively, this identifier may be included in the HTML tag of the link. Further alternatively, this identifier may be included in the ADF or SDF.

専用アプリ140Bのダウンロードを要求されると、ブラウザ130は、一覧管理プログラム150にその旨を通知する(ステップS702)。ブラウザ130から通知を受けると、一覧管理プログラム150は、ダウンロードしようとする専用アプリに対応するサービスが、ブラウザモードおよびアプリモードのいずれかで既にICカード一覧に登録されているか確認する(ステップS703)。すなわち、一覧管理プログラム150は、記憶部105からICカード一覧を読み出し、さらに、読み出したICカード一覧の中に、専用アプリ140Bに対応するサービスID(この例では「B社マネー」)が既に登録されているか判断する。   When the download of the dedicated application 140B is requested, the browser 130 notifies the list management program 150 to that effect (step S702). Upon receiving the notification from the browser 130, the list management program 150 confirms whether the service corresponding to the dedicated application to be downloaded is already registered in the IC card list in either the browser mode or the application mode (step S703). . That is, the list management program 150 reads the IC card list from the storage unit 105, and the service ID corresponding to the dedicated application 140B (in this example, “B company money”) is already registered in the read IC card list. Judge whether it has been.

ダウンロードしようとする専用アプリのサービスIDは、例えば、リンク、ファイル名またはHTMLタグに含まれている。あるいは、サービスIDは、ADFまたはSDFに含まれていてもよい。この場合、ブラウザ130は、ステップS703の判断に先立ち、ADFまたはSDFをダウンロードする。   The service ID of the dedicated application to be downloaded is included in, for example, a link, a file name, or an HTML tag. Alternatively, the service ID may be included in ADF or SDF. In this case, the browser 130 downloads ADF or SDF prior to the determination in step S703.

ダウンロードしようとする専用アプリに対応するサービスが、ICカード一覧に既にアプリモードで登録されている場合(S703:アプリモード)、一覧管理プログラム150は、その旨を表示してダウンロードを中止するよう、ブラウザ130に指示をする(ステップS704)。この指示を受けて、ブラウザ130は、サービスが既にアプリモードで登録されている旨を表示し、ダウンロードを中止する(ステップS705)。こうして、専用アプリ140Bの二重登録が防止される。ダウンロードが中止されると、ブラウザ130またはOS111は、専用アプリ140Bを起動する。   When the service corresponding to the dedicated application to be downloaded is already registered in the IC card list in the application mode (S703: application mode), the list management program 150 displays that fact and cancels the download. The browser 130 is instructed (step S704). In response to this instruction, the browser 130 displays that the service has already been registered in the application mode, and stops the download (step S705). Thus, double registration of the dedicated application 140B is prevented. When the download is stopped, the browser 130 or the OS 111 activates the dedicated application 140B.

ダウンロードしようとする専用アプリに対応するサービスが、ICカード一覧に既にブラウザモードで登録されている場合(S703:ブラウザモード)、一覧管理プログラム150は、ブラウザ130に起動モード変更の指示をする(ステップS706)。この指示を受けて、ブラウザ130は、起動モードをアプリモードに切り替える旨の表示をする(ステップS707)。さらに、ブラウザ130は、専用アプリ140Bをダウンロードする(ステップS708)。なお、ステップS707の処理は省略されてもよい。あるいは、ステップS707において、ブラウザ130は、起動モード変更の承認をユーザに要求し、承認された場合に処理をステップS708に移行してもよい。   If the service corresponding to the dedicated application to be downloaded is already registered in the browser mode in the IC card list (S703: browser mode), the list management program 150 instructs the browser 130 to change the activation mode (step) S706). In response to this instruction, the browser 130 displays that the activation mode is switched to the application mode (step S707). Furthermore, the browser 130 downloads the dedicated application 140B (step S708). Note that the process of step S707 may be omitted. Alternatively, in step S707, the browser 130 may request the user to approve the activation mode change, and if approved, the browser 130 may shift the process to step S708.

ステップS708において専用アプリ140Bをダウンロードした後は、図20のフローと同様に、専用アプリ140Bのインストールが行われる。ただしこの場合、サービス(この例ではサービスID「B社マネー」のサービス)は新規に登録されるわけではなく、既にICカード一覧に登録されている。サービスの新規登録ではない場合、既にICカード500内に領域が設定され初期データは書き込まれているので、ステップS605、606、607、608、および609の処理は行われない。すなわち、ステップS603においてICカード一覧への登録を指示されると、一覧管理プログラム150は、登録の指示が新規登録によるものか起動モード切り替えによるものか判断する。新規登録の場合、一覧管理プログラム150は、既に図20のフローで説明したとおり動作する。起動モード切り替えの場合、一覧管理プログラムは、ステップS604においてICカード一覧の起動モードの書き替えを行った後、ステップS605−S609の処理をスキップし、処理をステップS610に移行する。   After downloading the dedicated application 140B in step S708, the dedicated application 140B is installed in the same manner as the flow of FIG. However, in this case, the service (the service with the service ID “B company money” in this example) is not newly registered, but is already registered in the IC card list. If it is not a new registration of the service, the area is already set in the IC card 500 and the initial data is written, so the processes of steps S605, 606, 607, 608, and 609 are not performed. That is, when registration to the IC card list is instructed in step S603, the list management program 150 determines whether the registration instruction is for new registration or activation mode switching. In the case of new registration, the list management program 150 operates as already described in the flow of FIG. In the case of switching the activation mode, the list management program rewrites the activation mode of the IC card list in step S604, and then skips the processes in steps S605 to S609 and moves the process to step S610.

ダウンロードしようとする専用アプリに対応するサービスがICカード一覧にまだ登録されていないと判断された場合(S703:未登録)、一覧管理プログラム150は、専用アプリ140をダウンロードするようブラウザ130に指示をする(ステップS709)。この指示を受けて、ブラウザ130は、専用アプリ140Bをダウンロードする(ステップS710)。   When it is determined that the service corresponding to the dedicated application to be downloaded is not yet registered in the IC card list (S703: unregistered), the list management program 150 instructs the browser 130 to download the dedicated application 140. (Step S709). In response to this instruction, the browser 130 downloads the dedicated application 140B (step S710).

ステップS710において専用アプリ140Bをダウンロードした後は、図20のフローに従って専用アプリ140Bのインストールが行われる。また、インストールに伴って、ICカード一覧へのサービスの新規登録が行われる。なお、JAM119またはOS111は、専用アプリ140Bのインストールが完了した後、専用アプリ140Bを起動してもよい。   After downloading the dedicated application 140B in step S710, the dedicated application 140B is installed according to the flow of FIG. Along with the installation, new registration of the service to the IC card list is performed. Note that the JAM 119 or the OS 111 may activate the dedicated application 140B after the installation of the dedicated application 140B is completed.

2−2−5.アプリモードからブラウザモードへの切り替え
図22は、アプリモードからブラウザモードへの切り替え処理を示す図である。アプリモードからブラウザモードへの切り替えは、切り替えをトリガするHTMLデータをブラウザ130が受信したことを契機として行われる。詳細には以下のとおりである。なお、図22においては、ブラウザ130およびスクリプト処理エンジン131による処理をブラウザの処理として記載している。ここでは、A社のサービスがアプリモードからブラウザモードに切り替えられる場合を例に説明する。
2-2-5. Switching from Application Mode to Browser Mode FIG. 22 is a diagram illustrating a switching process from the application mode to the browser mode. Switching from the application mode to the browser mode is performed when the browser 130 receives HTML data that triggers the switching. Details are as follows. In FIG. 22, processing by the browser 130 and the script processing engine 131 is described as browser processing. Here, a case where the service of company A is switched from the application mode to the browser mode will be described as an example.

ステップS801において、ブラウザ130は、サービスサーバ30(A社のサービスサーバ)からHTMLデータを受信する。このHTMLデータは、ブラウザモードへの切り替えをトリガする情報、例えば、A社のサービスにアクセスするためのスクリプト(以下単に「A社のスクリプト」という)を含んでいる。このHTMLデータは、起動しようとするスクリプトがICカード500にアクセスするためのスクリプトであることを示す識別子を含んでいる。この識別子は、例えばスクリプトのファイル名に含まれている。あるいは、この識別子は、リンクのHTMLタグに含まれていてもよい。さらにあるいは、この識別子は、スクリプト自身に含まれていてもよい。ユーザがこのリンクを選択する操作を行うと、ブラウザ130は、この命令に従って、A社のスクリプトを起動するようスクリプト処理エンジン131に要求する。A社のスクリプトの起動を要求されると、スクリプト処理エンジン131は、起動モードの変更が必要であるか判断するよう一覧管理プログラム150に指示をする(ステップS802)。   In step S801, the browser 130 receives HTML data from the service server 30 (the service server of company A). The HTML data includes information for triggering switching to the browser mode, for example, a script for accessing the service of company A (hereinafter simply referred to as “script of company A”). This HTML data includes an identifier indicating that the script to be activated is a script for accessing the IC card 500. This identifier is included in the file name of the script, for example. Alternatively, this identifier may be included in the HTML tag of the link. Further alternatively, this identifier may be included in the script itself. When the user performs an operation of selecting this link, the browser 130 requests the script processing engine 131 to start the script of company A according to this instruction. When the script of the company A is requested to be activated, the script processing engine 131 instructs the list management program 150 to determine whether the activation mode needs to be changed (step S802).

スクリプト処理エンジン131から指示を受けると、一覧管理プログラム150は、起動しようとしているスクリプトに対応するサービスが、ブラウザモードおよびアプリモードのいずれかで既にICカード一覧に登録されているか確認する(ステップS803)。すなわち、一覧管理プログラム150は、記憶部105からICカード一覧を読み出し、さらに、読み出したICカード一覧の中に、A社のスクリプトに対応するサービスID(この例では「A社マネー」)が既に登録されているか判断する。起動しようとするスクリプトのサービスIDは、例えば、スクリプト自身、スクリプトのファイル名またはHTMLタグに含まれている。   When receiving an instruction from the script processing engine 131, the list management program 150 confirms whether the service corresponding to the script to be started is already registered in the IC card list in either the browser mode or the application mode (step S803). ). That is, the list management program 150 reads the IC card list from the storage unit 105, and the service ID (in this example, “A company money”) corresponding to the script of company A is already included in the read IC card list. Determine if it is registered. The service ID of the script to be started is included in, for example, the script itself, the script file name, or the HTML tag.

起動しようとしているスクリプトに対応するサービスがICカード一覧にまだ登録されていないと判断された場合(S803:未登録)、または起動しようとしているスクリプトに対応するサービスがICカード一覧に既にブラウザモードで登録されている場合(S803:ブラウザモード)、一覧管理プログラム150は、スクリプトを実行するようブラウザ130に指示をする(ステップS804)。この指示を受けて、ブラウザ130は、スクリプトをスクリプト処理エンジン131に引き渡す。以後、スクリプトの種類に応じて図12のステップS103以降の処理および図14、15、16のステップS203、S303、S403以降の処理のいずれかのフローに従ってスクリプトが実行される。また、サービスがICカード一覧にまだ登録されていなかった場合は、図19のフローに従ってICカード一覧への登録が行われる。なお、ICカード一覧に既にブラウザモードで登録されている場合、登録スクリプトを実行すると二重登録となり不具合を生じる可能性があるので、一覧管理プログラム150は、登録スクリプトの実行を禁止してもよい。   If it is determined that the service corresponding to the script to be activated is not yet registered in the IC card list (S803: not registered), or the service corresponding to the script to be activated is already in the IC card list in the browser mode. If registered (S803: browser mode), the list management program 150 instructs the browser 130 to execute the script (step S804). Upon receiving this instruction, the browser 130 delivers the script to the script processing engine 131. Thereafter, the script is executed according to the flow of any of the processes after step S103 in FIG. 12 and the processes after steps S203, S303, and S403 in FIGS. If the service has not yet been registered in the IC card list, registration in the IC card list is performed according to the flow of FIG. Note that if the registration script is already registered in the IC card list in the browser mode, there is a possibility that double registration occurs and a problem may occur, so the list management program 150 may prohibit the execution of the registration script. .

起動しようとしているスクリプトに対応するサービスが、ICカード一覧に既にアプリモードで登録されている場合(S803:アプリモード)、一覧管理プログラム150は、起動モードを変更するようブラウザ130に指示をする(ステップS805)。この指示を受けて、ブラウザ130は、起動モードをブラウザモードに切り替える旨の表示をする(ステップS806)。また、一覧管理プログラム150は、処理をステップS807に移行する。なお、ブラウザ130は、ユーザの指示などに応じて、モード切り替えを拒否してもよい。この場合、ブラウザ130は、ステップS807の処理の前に、一覧管理プログラム150に対して、モード切り替えが拒否されたことを通知する。また、ブラウザ130(スクリプト処理エンジン131)は、可能な範囲でスクリプトを実行する(例えば、登録スクリプトは実行されないが、読み出しスクリプトは実行される)。あるいは、ブラウザ130は、スクリプトの実行エラーが発生した旨の表示をしてもよい。   When the service corresponding to the script to be activated is already registered in the IC card list in the application mode (S803: application mode), the list management program 150 instructs the browser 130 to change the activation mode ( Step S805). In response to this instruction, the browser 130 displays that the activation mode is switched to the browser mode (step S806). In addition, the list management program 150 shifts the processing to step S807. The browser 130 may reject the mode switching according to a user instruction or the like. In this case, the browser 130 notifies the list management program 150 that mode switching has been rejected before the process of step S807. Further, the browser 130 (script processing engine 131) executes the script as much as possible (for example, the registration script is not executed, but the read script is executed). Alternatively, the browser 130 may display that a script execution error has occurred.

ステップS807において、一覧管理プログラム150は、ICカード一覧を書き替える)。すなわち、一覧管理プログラム150は、ICカード一覧において、A社マネーの起動モードを「ブラウザ」に設定し、「URL」のレコードに、A社のスクリプトのURLを記録する。A社のスクリプトのURLは、例えば、ステップS802における指示に含まれている。あるいは、この段階で、一覧管理プログラム150がブラウザ130からA社のスクリプトのURLを取得してもよい。ICカード一覧を更新すると、一覧管理プログラム150は、処理をステップS804に移行する。以後、既に説明したように、スクリプトの種類に応じて図12、14−16の処理が行われる。   In step S807, the list management program 150 rewrites the IC card list). That is, in the IC card list, the list management program 150 sets the startup mode of the A company money to “browser”, and records the URL of the script of the A company in the “URL” record. The URL of the script of company A is included in the instruction in step S802, for example. Alternatively, at this stage, the list management program 150 may acquire the URL of the script of company A from the browser 130. When the IC card list is updated, the list management program 150 moves the process to step S804. Thereafter, as already described, the processes of FIGS. 12 and 14-16 are performed according to the type of script.

なお、一覧管理プログラム150は、ステップS807のICカード一覧の書き替えが完了した後で、起動モードがブラウザモードに書き替えられた専用アプリ140のアンインストールを、JAM119に指示をしてもよい。この指示を受けると、JAM119は、対応する専用アプリ140をアンインストールする。   The list management program 150 may instruct the JAM 119 to uninstall the dedicated application 140 whose activation mode has been rewritten to the browser mode after the rewriting of the IC card list in step S807 is completed. Upon receiving this instruction, the JAM 119 uninstalls the corresponding dedicated application 140.

2−2−6.ICカード一覧からの起動
図23は、ICカード一覧からブラウザまたはアプリケーションプログラムを起動する処理を示すフローチャートである。ここでは、一覧管理プログラム150により、図18の画面が表示された状態を例として説明する。
2-2-6. Activation from IC Card List FIG. 23 is a flowchart showing processing for activating a browser or an application program from the IC card list. Here, the state where the screen of FIG. 18 is displayed by the list management program 150 will be described as an example.

ステップS901において、一覧管理プログラム150は、ユーザの操作に応じて、ICカード一覧の中から一のアイテム(サービス)を選択する。一覧表示アプリは、選択されたアイテムに対応するソフトウェアを起動する。   In step S901, the list management program 150 selects one item (service) from the IC card list in accordance with a user operation. The list display application activates software corresponding to the selected item.

ソフトウェアの起動をする際、一覧管理プログラム150は、起動しようとするソフトウェアの種類に応じて次の処理を決定する(ステップS902)。スクリプトの起動が要求されている場合(ステップS902:スクリプト)、一覧管理プログラム150は、処理をステップS903に移行する。アプリケーションプログラムの起動が要求されている場合(ステップS902:アプリ)、一覧管理プログラム150は、処理をステップS905に移行する。   When starting the software, the list management program 150 determines the next process according to the type of software to be started (step S902). When activation of a script is requested (step S902: script), the list management program 150 shifts the processing to step S903. If activation of the application program is requested (step S902: application), the list management program 150 shifts the processing to step S905.

ステップS903において、一覧管理プログラム150は、スクリプトを取得し、取得したスクリプトを実行するようブラウザ130に要求する。この要求は、スクリプトのURLを含んでいる。ブラウザ130は、要求に含まれるURLから、スクリプトを取得する。スクリプト処理エンジン131は、取得したスクリプトを起動、実行する(ステップS904)。   In step S903, the list management program 150 acquires a script and requests the browser 130 to execute the acquired script. This request includes the URL of the script. The browser 130 acquires a script from the URL included in the request. The script processing engine 131 activates and executes the acquired script (step S904).

ステップS905において、一覧管理プログラム150は、要求された専用アプリ140を起動、実行する。   In step S905, the list management program 150 activates and executes the requested dedicated application 140.

3.セキュリティ
次に、以上で説明したサービスのセキュリティについて説明する。これまで詳しい説明は省略したが、スクリプトによるICカード500へのアクセスにおいては、暗号化技術が用いられる。
3. Security Next, the security of the service described above will be described. Although detailed description has been omitted so far, encryption technology is used for accessing the IC card 500 by a script.

図24は、通信システムにおいて用いられる暗号化技術の概要を示す図である。認証局CAは、所定の事業者(例えば携帯電話機10の回線事業者)により管理および運営される認証局である。認証局CAは、認証局の秘密鍵Kpr CAおよび公開鍵Kpub CAを発行する。さらに、認証局CAは、携帯電話機10に対して電子証明書Smを発行する。電子証明書Smは、認証局CAの電子署名および公開鍵Kpub CAを含んでいる。携帯電話機10は、電子証明書Dmを記憶している。 FIG. 24 is a diagram showing an outline of encryption technology used in the communication system. The certificate authority CA is a certificate authority that is managed and operated by a predetermined operator (for example, a line operator of the mobile phone 10). The certificate authority CA issues the certificate authority's private key K pr CA and public key K pub CA. Further, the certificate authority CA issues an electronic certificate S m to the mobile phone 10. The electronic certificate S m includes the electronic signature of the certificate authority CA and the public key K pub CA. The mobile phone 10 stores an electronic certificate Dm .

認証局CAは、サービス提供事業者に対して、秘密鍵Kpr CPおよび公開鍵Kpub CPを発行する。図24では、サービスサーバ30を運営するA社がサービス提供事業者として例示されている。鍵の発行を受けているサービス提供事業者は、認証局CAに対し、ICカードサービスの利用申請をする。この利用申請は、公開鍵Kpub CPを含む。認証局CAは、利用申請を受けて、電子証明書SCPおよびサービス提供事業者のIDを示すIDデータを発行する。電子証明書SCPは、認証局CAの電子署名および公開鍵Kpub CPを含んでいる。認証局CAの電子署名は、ハッシュ関数による公開鍵Kpub CPのメッセージダイジェストを秘密鍵Kpr CAで暗号化したものである。サービスサーバ30は、秘密鍵Kpr CP、公開鍵公開鍵Kpub CP、電子証明書SCPおよびIDデータを記憶する。 The certificate authority CA issues a secret key K pr CP and a public key K pub CP to the service provider. In FIG. 24, company A operating the service server 30 is illustrated as a service provider. The service provider that has received the key application applies to the certification authority CA to use the IC card service. This application for use includes the public key K pub CP . The certificate authority CA receives the use application and issues an electronic certificate SCP and ID data indicating the ID of the service provider. The electronic certificate S CP includes the electronic signature of the certificate authority CA and the public key K pub CP . The electronic signature of the certificate authority CA is obtained by encrypting the message digest of the public key K pub CP using a hash function with the private key K pr CA. The service server 30 stores a private key K pr CP , a public key public key K pub CP , an electronic certificate S CP and ID data.

サービスサーバ30が携帯電話機10に送信するスクリプトは、実行コード(スクリプト本体)と、電子証明書SCPと、IDデータとがパッケージされたものである。スクリプトを受信すると、携帯電話機10は、パッケージから電子証明書SCPを抽出する。携帯電話機10は、抽出した電子証明書SCPに含まれる電子署名を、電子証明書Dmに含まれる公開鍵Kpub CAで復号化し、メッセージダイジェストを取得する。さらに、携帯電話機10は、電子証明書Dmに含まれる公開鍵Kpub CAにハッシュ関数を適用し、メッセージダイジェストを生成する。携帯電話機10は、生成したメッセージダイジェストと、復号化により取得したメッセージダイジェストとを比較する。両者が一致した場合、携帯電話機10は、スクリプトが正当なものであると判断し、実行コードを実行する。両者が一致しなかった場合、携帯電話機10は、スクリプトが不正なものであると判断し、実行コードを実行しない。携帯電話機10においてこれらの処理は、ソフトウェアにより行われる。 The script that the service server 30 transmits to the mobile phone 10 is a package of an execution code (script body), an electronic certificate SCP , and ID data. Upon receiving the script, the mobile phone 10 extracts the electronic certificate S CP from the package. Mobile phone 10, the extracted digital signature included in the electronic certificate S CP, decoded by the public key K pub CA included in the electronic certificate Dm, to acquire a message digest. Further, the mobile phone 10 applies a hash function to the public key K pub CA included in the electronic certificate Dm , and generates a message digest. The mobile phone 10 compares the generated message digest with the message digest obtained by decryption. If the two match, the mobile phone 10 determines that the script is valid and executes the execution code. If the two do not match, the mobile phone 10 determines that the script is invalid and does not execute the execution code. In the mobile phone 10, these processes are performed by software.

以上はサービスサーバ30から受信したスクリプトの正当性を確認する技術であるが、ICカード500とリモート発行サーバ40との間においても、同様に暗号化技術を用いた通信が行われる。ICカード500は、暗号化通信のためのソフトウェアを記憶しており、これを用いてリモート発行サーバ40と暗号化通信を行う。なお、上記で説明した暗号化通信の具体的処理はあくまで一例であり、通信相手の正当性を確認できるものであれば、これ以外の暗号化技術が用いられてもよい。   The above is the technology for confirming the validity of the script received from the service server 30. However, communication using the encryption technology is similarly performed between the IC card 500 and the remote issuing server 40. The IC card 500 stores software for encrypted communication, and performs encrypted communication with the remote issuing server 40 using the software. The specific processing of the encrypted communication described above is merely an example, and other encryption techniques may be used as long as the validity of the communication partner can be confirmed.

4.他の実施形態
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち2つ以上のものが組み合わせて用いられてもよい。
4). Other Embodiments The present invention is not limited to the above-described embodiments, and various modifications can be made. Hereinafter, some modifications will be described. Two or more of the following modifications may be used in combination.

4−1.変形例1
ICカード一覧の内容を確認させるための要求は、実施形態で説明したものに限定されない。上述の実施形態においては、ステップS802における、ブラウザ130から一覧管理プログラム150へのICカード一覧の確認の指示が、この要求の例である。しかし、この要求は、一覧管理プログラム150にICカード一覧の確認を開始させるための情報であれば、具体的にはデータ、フラグ、命令、要求などどのようなものであってもよい。例えばこの要求は、スクリプトの実行の指示であってもよい。あるいはこの要求は、起動モードの変更の指示であってもよい。
4-1. Modification 1
The request for confirming the contents of the IC card list is not limited to that described in the embodiment. In the above-described embodiment, an instruction to confirm the IC card list from the browser 130 to the list management program 150 in step S802 is an example of this request. However, this request may be any data, flag, command, request, or the like as long as it is information for causing the list management program 150 to start checking the IC card list. For example, this request may be an instruction to execute a script. Alternatively, this request may be an instruction to change the activation mode.

4−2.変形例2
ICカード一覧の内容を確認させるための要求を一覧管理プログラム150に送るアプリケーションプログラムは、ブラウザに限定されない。すなわち、特定の書式で記述された特定データはHTMLデータに限定されない。所定の条件を満たしたときに、一覧管理プログラム150に対し、要求を送るものであれば、どのようなアプリケーションプログラムが用いられてもよい。例えば、専用アプリ140が、一覧管理プログラム150に要求を送ってもよい。あるいは、開始情報を送るアプリケーションプログラムは、ゲームプログラムなど、ブラウザ130および専用アプリ140以外のアプリケーションプログラムであってもよい。この場合、ゲームプログラムは、処理の一部として、特定の条件が満たされたときに一覧管理プログラム150に対し開始情報を送る。あるいはさらに別の例で、このアプリケーションプログラムは、ユーザの指示に応じて、一覧管理プログラム150に対し開始情報を送るものであってもよい。「所定の条件」は、特定の操作入力が行われた、特定の命令が実行された、特定のHTMLデータを受信した、などどのようなものが用いられてもよい。
4-2. Modification 2
The application program that sends a request for confirming the contents of the IC card list to the list management program 150 is not limited to the browser. That is, the specific data described in a specific format is not limited to HTML data. Any application program may be used as long as it sends a request to the list management program 150 when a predetermined condition is satisfied. For example, the dedicated application 140 may send a request to the list management program 150. Alternatively, the application program that sends the start information may be an application program other than the browser 130 and the dedicated application 140 such as a game program. In this case, the game program sends start information to the list management program 150 when a specific condition is satisfied as part of the process. Alternatively, in yet another example, this application program may send start information to the list management program 150 in response to a user instruction. As the “predetermined condition”, any of a specific operation input, a specific command executed, a specific HTML data received, etc. may be used.

4−3.変形例3
ブラウザ130に対してスクリプトを実行させる指示(第1の指示)は、実施形態で説明したものに限定されない。実施形態において、ステップS804における、一覧管理プログラム150からブラウザ130への指示が、第1の指示の例である。しかし、第1の指示は、ブラウザ130にスクリプトを実行させるための情報であれば、具体的にはデータ、フラグ、命令、要求などどのようなものであってもよい。
4-3. Modification 3
The instruction (first instruction) for causing the browser 130 to execute the script is not limited to that described in the embodiment. In the embodiment, the instruction from the list management program 150 to the browser 130 in step S804 is an example of the first instruction. However, as long as the first instruction is information for causing the browser 130 to execute a script, the first instruction may be any data, flag, command, request, or the like.

4−4.変形例4
JAM119に対して専用アプリ140のアンインストールを実行させる指示(第2の指示)は、実施形態で説明したものに限定されない。実施形態において、ステップS807の一覧の書き換えの後で、専用アプリ140がアンインストールされてもよいことを説明した。この場合、一覧管理プログラム150は、JAM119に対し専用アプリ140のアンインストールを指示する。これが第2の指示の例である。しかし、第2の指示は、JAM119に対して専用アプリ140のアンインストールを実行させるための情報であれば、具体的にはデータ、フラグ、命令、要求などどのようなものであってもよい。
4-4. Modification 4
The instruction (second instruction) for causing the JAM 119 to uninstall the dedicated application 140 is not limited to that described in the embodiment. In the embodiment, it has been described that the dedicated application 140 may be uninstalled after rewriting the list in step S807. In this case, the list management program 150 instructs the JAM 119 to uninstall the dedicated application 140. This is an example of the second instruction. However, the second instruction may be any data, flag, command, request, or the like as long as it is information for causing the JAM 119 to uninstall the dedicated application 140.

4−5.変形例5
ブラウザ130が一覧管理プログラム150に要求を送る契機となる契機情報は、実施形態で説明したものに限定されない。実施形態において、図22のステップS801における「スクリプト」が契機情報の一例である。しかし、契機情報は、ブラウザ130が一覧管理プログラム150に要求を送る契機となる情報であれば、具体的にはデータ、フラグ、命令、要求などどのようなものであってもよい。例えば、契機情報は、スクリプトへのリンクであってもよい。あるいは、契機情報は、スクリプトをダウンロードまたは実行させる命令であってもよい。
4-5. Modification 5
The trigger information that triggers the browser 130 to send a request to the list management program 150 is not limited to that described in the embodiment. In the embodiment, “script” in step S801 in FIG. 22 is an example of opportunity information. However, as long as the trigger information is information that triggers the browser 130 to send a request to the list management program 150, specifically, any information such as data, a flag, a command, and a request may be used. For example, the opportunity information may be a link to a script. Alternatively, the opportunity information may be an instruction for downloading or executing a script.

4−6.変形例6
図12、14−16において、各スクリプトの動作を、スクリプト自体の機能と、スクリプトから呼び出されるAPIやデバイスドライバの機能とに分けて説明したが、機能の分配は実施形態で説明したものに限定されない。例えば、実施形態でAPIの機能として説明された機能を実現するための命令群が、スクリプト本体に記述されていてもよい。すなわち、スクリプト本体がその機能を有していてもよい。あるいは、実施形態でスクリプトの機能として説明された機能を実現するための命令群が、スクリプト本体以外のAPI、モジュール、他のスクリプト、関数等に記述されていてもよい。要は、スクリプト本体に直接または間接的に記述されている命令群により、図12、14−16の処理が実現されるのであれば、ソフトウェア間の役割分担はどのようなものでもよい。
4-6. Modification 6
12 and 16-16, the operation of each script has been described separately for the function of the script itself and the API and device driver functions called from the script. However, the distribution of functions is limited to that described in the embodiment. Not. For example, a group of instructions for realizing the function described as the API function in the embodiment may be described in the script body. That is, the script body may have the function. Alternatively, a group of instructions for realizing the function described as the script function in the embodiment may be described in an API, a module, another script, a function, or the like other than the script body. In short, as long as the processing shown in FIGS. 12 and 16-16 is realized by a group of instructions described directly or indirectly in the script body, any division of roles among software may be used.

4−7.変形例7
アプリケーションプログラムを記述するプログラミング言語はJava(登録商標)に限定されない。C++など、他のオブジェクト指向プログラミング言語が用いられてもよい。あるいは、非オブジェクト指向プログラミング言語が用いられてもよい。また、ステップS601−602において説明した、アプリケーションプログラムをインストールする処理はあくまで例示であり、アプリケーションプログラムのファイル構成およびインストールする手順はこれに限定されない。
4-7. Modification 7
The programming language for describing the application program is not limited to Java (registered trademark). Other object-oriented programming languages such as C ++ may be used. Alternatively, a non-object oriented programming language may be used. In addition, the process of installing the application program described in steps S601-602 is merely an example, and the file configuration of the application program and the installation procedure are not limited thereto.

4−8.変形例8
スクリプトを記述するプログラミング言語はJavaスクリプトに限定されない。C++など、他のオブジェクト指向プログラミング言語や、Flashなどブラウザ上のコンテンツが用いられてもよい。あるいは、非オブジェクト指向プログラミング言語が用いられてもよい。
4-8. Modification 8
The programming language for describing the script is not limited to the Java script. Other object-oriented programming languages such as C ++ and browser content such as Flash may be used. Alternatively, a non-object oriented programming language may be used.

4−9.変形例9
スクリプトの所在を示す所在情報は、URLに限定されない。スクリプトの所在を特定できるのであれば、どのような情報が用いられてもよい。
4-9. Modification 9
The location information indicating the location of the script is not limited to the URL. Any information may be used as long as the location of the script can be specified.

4−10.変形例10
本稿でいう「ICカード」は、必ずしもカード型の形状を有していなくてもよい。「カード」とはICカード500の機能を象徴する語であって、形状を特定するものではない。ICカードは、アンテナと、個別にアクセス制限を設定可能な複数の記憶領域を有するメモリと、アンテナからの信号または第1の制御手段(実施形態ではCPU102)からの信号に応じてメモリにアクセスする第2の制御手段(実施形態ではプロセッサ503)とを有するものであれば、その形状はどのようなものであってもよい。また、ICカード500のメモリ504の記憶領域の構成は、図5に示したものに限定されない。メモリ504は、自由領域を有していなくてもよい。あるいは、メモリ504は、自由領域に加えてさらに別の第3の領域を有していてもよい。
4-10. Modification 10
The “IC card” in this paper does not necessarily have a card shape. The “card” is a word symbolizing the function of the IC card 500 and does not specify the shape. The IC card accesses the memory in accordance with an antenna, a memory having a plurality of storage areas in which access restrictions can be individually set, and a signal from the antenna or a signal from the first control means (CPU 102 in the embodiment). As long as it has the second control means (the processor 503 in the embodiment), its shape may be any. Further, the configuration of the storage area of the memory 504 of the IC card 500 is not limited to that shown in FIG. The memory 504 may not have a free area. Alternatively, the memory 504 may have another third area in addition to the free area.

4−11.変形例11
携帯電話機10のハードウェア構成は、図3で説明したものに限定されない。必要な機能を実現できるのであれば、携帯電話機10はどのようなハードウェア構成を有していてもよい。特に、複数のプログラムによる並列処理を可能とする構成として、携帯電話機10がマルチプロセッサ(複数のプロセッサ)を有する場合、これら複数のプロセッサが全体として本稿の「第1の制御手段」に相当する。この場合において、各プロセッサがそれぞれ異なるプログラムを実行してもよい。例えば、第1のプロセッサがJAMを実行し、第2のプロセッサがブラウザ等のアプリケーションプログラムを実行してもよい。この例では、JAMを実行している第1のプロセッサが「管理手段」として機能し、ブラウザを実行している第2のプロセッサが「第1のアプリケーション手段」として機能する。「第1のアプリケーション手段が管理手段にデータを送る」とは、第1のプロセッサと第2のプロセッサの間で信号のやりとりをすることをいう。
4-11. Modification 11
The hardware configuration of the mobile phone 10 is not limited to that described with reference to FIG. The mobile phone 10 may have any hardware configuration as long as necessary functions can be realized. In particular, when the mobile phone 10 has a multiprocessor (a plurality of processors) as a configuration that enables parallel processing by a plurality of programs, the plurality of processors as a whole corresponds to the “first control means” in this paper. In this case, each processor may execute a different program. For example, the first processor may execute JAM, and the second processor may execute an application program such as a browser. In this example, the first processor that executes JAM functions as “management means”, and the second processor that executes the browser functions as “first application means”. “The first application means sends data to the management means” means that signals are exchanged between the first processor and the second processor.

4−12.変形例12
上述の実施形態においてCPU102によって実行されるプログラムは、磁気記録媒体(磁気テープ、磁気ディスク(HDD(Hard Disk Drive)、FD(Flexible Disk))など)、光記録媒体(光ディスク(CD(Compact Disk)、DVD(Digital Versatile Disk))など)、光磁気記録媒体、半導体メモリ(フラッシュROMなど)などのコンピュータ読取り可能な記録媒体に記憶した状態で提供されてもよい。また、このプログラムは、インターネットのようなネットワーク経由でダウンロードされてもよい。
4-12. Modification 12
In the above-described embodiment, the program executed by the CPU 102 includes a magnetic recording medium (magnetic tape, magnetic disk (HDD (Hard Disk Drive), FD (Flexible Disk)), etc.), optical recording medium (optical disk (CD (Compact Disk)). , DVD (Digital Versatile Disk), etc.), magneto-optical recording medium, semiconductor memory (flash ROM, etc.) and the like. The program may be downloaded via a network such as the Internet.

3…ヒンジ、4…キーパッド、5…マイクロホン、6…スピーカ、7…アンテナ、8…表示装置、10…携帯電話機、20…管理サーバ、30…サービスサーバ、40…リモート発行サーバ、50…サービスサーバ、60…サービスサーバ、70…ネットワーク、102…CPU、103…ROM、104…RAM、105…記憶部、106…操作部、107…表示部、108…通信部、109…バス、111…OS、112…アプリケーション、113…アプリケーション、114…Java実行環境、115…第1ストレージ、116…第2ストレージ、117…クラスライブラリ、118…JVM、119…JAM、120…API群、121…クライアントソフトウェア、122…デバイスドライバ、500…ICカード、501…アンテナ、502…ICチップ、503…プロセッサ、504…メモリ、510…リーダ/ライタ、601…文字列、605…アイコン、606…アイコン、607…アイコン、608…アイコン DESCRIPTION OF SYMBOLS 3 ... Hinge, 4 ... Keypad, 5 ... Microphone, 6 ... Speaker, 7 ... Antenna, 8 ... Display device, 10 ... Mobile phone, 20 ... Management server, 30 ... Service server, 40 ... Remote issue server, 50 ... Service Server, 60 ... Service server, 70 ... Network, 102 ... CPU, 103 ... ROM, 104 ... RAM, 105 ... Storage unit, 106 ... Operation unit, 107 ... Display unit, 108 ... Communication unit, 109 ... Bus, 111 ... OS 112 ... Application, 113 ... Application, 114 ... Java execution environment, 115 ... First storage, 116 ... Second storage, 117 ... Class library, 118 ... JVM, 119 ... JAM, 120 ... API group, 121 ... Client software, 122 ... Device driver, 500 ... IC card, 501 ... Antenna, 502 ... IC chip, 503 ... processor, 504 ... memory, 510 ... reader / writer, 601 ... string, 605 ... icon 606 ... icon 607 ... icon 608 ... icon

Claims (6)

ネットワークを介して通信する通信手段と、
特定の処理を実行するための第1のアプリケーションプログラム、前記第1のアプリケーションプログラムと異なる第2のアプリケーションプログラム、ならびに前記第1のアプリケーションプログラム上で動作するスクリプトおよび前記第2のアプリケーションプログラムを管理する第1の管理プログラムを実行する第1の制御手段と、
アンテナと、個別にアクセス制限を設定可能な複数の記憶領域を有するメモリと、前記アンテナからの信号または前記第1の制御手段からの信号に応じて前記メモリにアクセスし、アクセスした結果を前記第1の制御手段に出力する第2の制御手段とを有するICカードと、
前記メモリに設定されている記憶領域を特定する第1の識別子と、前記第1の識別子により特定される記憶領域に対してアクセス可能なソフトウェアが前記スクリプトおよび前記第2のアプリケーションプログラムのいずれであるかを示す起動モードを示す第2の識別子とを含む一覧を記憶する記憶手段と
を有し、
前記第2のアプリケーションプログラムが、前記複数の記憶領域のうち一の記憶領域にアクセスするためのプログラムであり、
前記スクリプトが、前記一の記憶領域にアクセスするための命令群を含み、
前記第1の管理プログラムを実行している前記第1の制御手段が、第1の管理手段として機能し、
前記第1のアプリケーションプログラムを実行している前記第1の制御手段が、第1のアプリケーション手段として機能し、
前記第2のアプリケーションプログラムを実行している前記第1の制御手段が、第2のアプリケーション手段として機能し、
前記第1の管理手段が、前記第1のアプリケーション手段から、前記一覧の内容を確認する要求を受け、
前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記第2のアプリケーションプログラムに対応する起動モードを示す識別子であるときは、前記第1の管理手段が、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトに対応する起動モードを示す識別子となるように、前記一覧の更新をする
ことを特徴とする携帯端末。
A communication means for communicating via a network;
A first application program for executing a specific process, a second application program different from the first application program, a script that operates on the first application program, and the second application program are managed. First control means for executing a first management program;
An antenna, a memory having a plurality of storage areas in which access restrictions can be individually set, the memory is accessed according to a signal from the antenna or a signal from the first control means, and the access result is An IC card having second control means for outputting to one control means;
The first identifier for specifying the storage area set in the memory and the software that can access the storage area specified by the first identifier are either the script or the second application program. Storage means for storing a list including a second identifier indicating an activation mode indicating
The second application program is a program for accessing a storage area of the plurality of storage areas;
The script includes a group of instructions for accessing the one storage area,
The first control means executing the first management program functions as a first management means;
The first control means executing the first application program functions as first application means;
The first control means executing the second application program functions as second application means;
The first management means receives a request to confirm the contents of the list from the first application means,
When the request is received, when the second identifier corresponding to the first identifier indicating the one storage area in the list is an identifier indicating an activation mode corresponding to the second application program The first management means sets the list so that the second identifier corresponding to the first identifier indicating the one storage area in the list is an identifier indicating an activation mode corresponding to the script. A mobile terminal characterized by updating.
前記第1のアプリケーションプログラムが、前記スクリプトを実行するための命令群を含み、
前記一覧の更新の後で、前記第1の管理手段が、前記第1のアプリケーション手段に対して前記スクリプトを実行させる第1の指示をし、
前記第1の指示を受けると、前記第1のアプリケーション手段が、前記スクリプトの実行をする
ことを特徴とする請求項1に記載の携帯端末。
The first application program includes a group of instructions for executing the script,
After the update of the list, the first management means gives a first instruction to cause the first application means to execute the script,
The portable terminal according to claim 1, wherein upon receiving the first instruction, the first application unit executes the script.
前記第1の制御手段が、前記第2のアプリケーションプログラムのアンインストールを管理する第2の管理プログラムを実行し、
前記第2の管理プログラムを実行している前記第1の制御手段が、第2の管理手段として機能し、
前記一覧の更新が行われると、前記第1の管理手段が、前記第2の管理手段に前記第2のアプリケーションプログラムのアンインストールの第2の指示をし、
前記第2の指示を受けると、前記第2の管理手段が、前記第2のアプリケーションプログラムのアンインストールをする
ことを特徴とする請求項1または2に記載の携帯端末。
The first control means executes a second management program for managing uninstallation of the second application program;
The first control means executing the second management program functions as a second management means;
When the list is updated, the first management unit instructs the second management unit to perform a second instruction for uninstalling the second application program,
3. The mobile terminal according to claim 1, wherein upon receiving the second instruction, the second management unit uninstalls the second application program. 4.
前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトに対応する起動モードを示す識別子であるとき、または前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記一覧に含まれていないときは、前記第1の管理手段が、前記第1のアプリケーション手段に前記スクリプトの実行を指示する
ことを特徴とする請求項1−3のいずれかの項に記載の携帯端末。
When the request is received, when the second identifier corresponding to the first identifier indicating the one storage area in the list is an identifier indicating an activation mode corresponding to the script, or the one When the second identifier corresponding to the first identifier indicating the storage area is not included in the list, the first management unit instructs the first application unit to execute the script. The mobile terminal according to claim 1, wherein the mobile terminal is a mobile terminal.
情報を表示する表示手段を有し、
前記特定の処理が、特定の書式で記述された特定データを、前記ネットワークから前記通信手段を介して受信し、前記受信した特定データに基づく情報を前記表示手段に表示させる処理であり、
前記第1のアプリケーション手段が、前記スクリプトを実行させるための契機となる契機情報を含む前記特定データを受信したことを契機として、前記第1の管理手段に対し前記要求を送る
ことを特徴とする請求項1−4のいずれかの項に記載の携帯端末。
Having display means for displaying information;
The specific process is a process of receiving specific data described in a specific format from the network via the communication unit, and displaying information based on the received specific data on the display unit,
The first application means sends the request to the first management means when receiving the specific data including the trigger information that triggers the execution of the script. The portable terminal as described in any one of Claims 1-4.
ネットワークを介して通信する通信手段と、
特定の処理を実行するための第1のアプリケーションプログラム、前記第1のアプリケーションプログラムと異なる第2のアプリケーションプログラム、および前記第1のアプリケーションプログラム上で動作するスクリプトを実行する第1の制御手段と、
アンテナと、個別にアクセス制限を設定可能な複数の記憶領域を有するメモリと、前記アンテナからの信号または前記第1の制御手段からの信号に応じて前記メモリにアクセスし、アクセスした結果を前記第1の制御手段に出力する第2の制御手段とを有するICカードと、
前記メモリに設定されている記憶領域を特定する第1の識別子と、前記第1の識別子により特定される記憶領域に対してアクセス可能なソフトウェアが前記第1のアプリケーションプログラムおよび前記第2のアプリケーションプログラムのいずれであるかを示す起動モードを示す第2の識別子とを含む一覧を記憶する記憶手段と
を有し、
前記第2のアプリケーションプログラムが、前記複数の記憶領域のうち一の記憶領域にアクセスするためのプログラムである携帯端末に、
前記第1の制御手段が、前記一覧の内容を確認する要求を受けるステップと、
前記要求を受けた場合において、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記第2のアプリケーションプログラムに対応する起動モードを示す識別子であるときは、前記第1の制御手段が、前記一覧において前記一の記憶領域を示す前記第1の識別子と対応する前記第2の識別子が前記スクリプトに対応する起動モードを示す識別子となるように、前記一覧の更新をするステップと
を実行させるための管理プログラム。
A communication means for communicating via a network;
A first application program for executing a specific process, a second application program different from the first application program, and a first control means for executing a script operating on the first application program;
An antenna, a memory having a plurality of storage areas in which access restrictions can be individually set, the memory is accessed according to a signal from the antenna or a signal from the first control means, and the access result is An IC card having second control means for outputting to one control means;
A first identifier for specifying a storage area set in the memory and software capable of accessing the storage area specified by the first identifier are the first application program and the second application program. Storage means for storing a list including a second identifier indicating a startup mode indicating which one of
In the portable terminal which is a program for the second application program to access one of the plurality of storage areas ,
The first control means receiving a request to confirm the contents of the list;
When the request is received, when the second identifier corresponding to the first identifier indicating the one storage area in the list is an identifier indicating an activation mode corresponding to the second application program The first control means sets the list so that the second identifier corresponding to the first identifier indicating the one storage area in the list is an identifier indicating an activation mode corresponding to the script. A management program for executing the step of updating and.
JP2009061610A 2009-03-13 2009-03-13 Mobile terminal and management program Expired - Fee Related JP4934162B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009061610A JP4934162B2 (en) 2009-03-13 2009-03-13 Mobile terminal and management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009061610A JP4934162B2 (en) 2009-03-13 2009-03-13 Mobile terminal and management program

Publications (2)

Publication Number Publication Date
JP2010218029A JP2010218029A (en) 2010-09-30
JP4934162B2 true JP4934162B2 (en) 2012-05-16

Family

ID=42976854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009061610A Expired - Fee Related JP4934162B2 (en) 2009-03-13 2009-03-13 Mobile terminal and management program

Country Status (1)

Country Link
JP (1) JP4934162B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014047069A1 (en) * 2012-09-18 2014-03-27 Jvl Ventures, Llc Systems, methods, and computer program products for interfacing multiple service provider trusted service managers and secure elements

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002216081A (en) * 2001-01-23 2002-08-02 Sony Corp Method for controlling ic card data browsing, information terminal equipment, computer program and server
JP4593156B2 (en) * 2004-04-07 2010-12-08 株式会社エヌ・ティ・ティ・ドコモ COMMUNICATION DEVICE AND PROGRAM DOWNLOAD METHOD
JP4763332B2 (en) * 2004-09-03 2011-08-31 株式会社エヌ・ティ・ティ・ドコモ Mobile terminal device, contactless card function management system, and contactless card function acquisition system
JPWO2008050439A1 (en) * 2006-10-26 2010-02-25 パナソニック株式会社 Application management apparatus and application management method

Also Published As

Publication number Publication date
JP2010218029A (en) 2010-09-30

Similar Documents

Publication Publication Date Title
US7720717B2 (en) Mobile terminal device, mobile terminal method, mobile terminal program, and electronic money server
US8533708B2 (en) Usage period management system for applications
JP4334247B2 (en) Portable terminal device and electronic money server
JP4678368B2 (en) Data writing apparatus and method for portable terminal memory, program
EP1193986B1 (en) Method and system of remotely controlling a portable terminal and a computer product
JP5191027B2 (en) Portable information terminal device, storage server, and storage area providing method
US8626842B2 (en) Content transaction management server device, content-providing server device, and terminal device and control program
JP4639676B2 (en) Rental server system
EP1318488A2 (en) IC card with capability of having plurality of card managers installed
JPWO2002093361A1 (en) System for managing programs stored in storage unit of mobile terminal
JPH11146118A (en) Data processing system, data processing method for the data processing system and storage medium storing program readable by computer
JPWO2008050439A1 (en) Application management apparatus and application management method
KR20020022035A (en) Printing system using a portable terminal and printing charge collecting method
JP4889771B2 (en) Mobile terminal and management program
WO2004025464A1 (en) Method for managing use of storage region by application
JP2003283494A (en) Access control method of communication terminal, certification program providing device, management device and communication terminal
KR20110013184A (en) System for providing code block for separating execution based contents, method thereof and computer recordable medium storing the method
JP2007206893A (en) Ic card and installation system
US20020032664A1 (en) Accounting system, accounting method, content executing device, accounting monitoring device, accounting control device and recording medium
JP4934161B2 (en) Mobile terminal and management program
JP2006018847A (en) Portable terminal device, portable terminal method, portable terminal program, provision server device, provision server method and provision server program
JP4934162B2 (en) Mobile terminal and management program
JP4054626B2 (en) Information terminal device and program
KR20060016416A (en) System and method for issuing of mobile-security card, method for operating of mobile-security card, computer readable recoding medium having mobile security card operation program stored therein and mobile terminal having mobile security card operation program
JP2001331228A (en) Information processing method and information processor and recording medium and download method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120110

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4934162

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees