JP2006033267A - Information processing system, information processing method, information processing apparatus, and program - Google Patents

Information processing system, information processing method, information processing apparatus, and program Download PDF

Info

Publication number
JP2006033267A
JP2006033267A JP2004207380A JP2004207380A JP2006033267A JP 2006033267 A JP2006033267 A JP 2006033267A JP 2004207380 A JP2004207380 A JP 2004207380A JP 2004207380 A JP2004207380 A JP 2004207380A JP 2006033267 A JP2006033267 A JP 2006033267A
Authority
JP
Japan
Prior art keywords
key
terminal
server
signature
script
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004207380A
Other languages
Japanese (ja)
Inventor
Yuji Hiura
裕二 樋浦
Tadashi Suzuki
唯史 鈴木
Tomohiko Nagayama
智彦 永山
Yoshiaki Hirano
義昭 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2004207380A priority Critical patent/JP2006033267A/en
Publication of JP2006033267A publication Critical patent/JP2006033267A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology of providing information to a terminal for managing information with respect to an IC card securely at low cost. <P>SOLUTION: A terminal SAM of a terminal SAM client 11-1 encodes a terminal identifier and a terminal public key, and transmits the terminal identifier and the encoded terminal identifier and the encoded terminal public key to a certificate agency 13, and the certificate agency 13 decodes the encoded terminal identifier and the encoded terminal public key, confirms whether or not the decoded terminal identifier is coincident with the received terminal identifier, generates a signature of the terminal public key by using a certificate agency private key when they are coincident, and transmits the signature to a server 14-1. The server 14-1 receives the signature of the terminal public key, verifies whether or not the terminal public key is legitimate, and stores the terminal identifier and the terminal public key when the server 14-1 verifies that the terminal public key is legitimate. The invention is applicable to information processing systems for processing information with respect to IC cards. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報処理システム、情報処理方法、情報処理装置、並びにプログラムに関し、特に、ICカードに関する情報を管理する端末装置に、安全、かつコストを抑えて情報を提供する情報処理システム、情報処理方法、情報処理装置、並びにプログラムに関する。   The present invention relates to an information processing system, an information processing method, an information processing apparatus, and a program, and in particular, an information processing system that provides information to a terminal device that manages information related to an IC card safely and at a reduced cost The present invention relates to a method, an information processing apparatus, and a program.

近年、IC(Integrated Circuit)チップを内蔵するカード(ICカード)内のデータに対して操作(更新)を行なう場合、ICカードリーダライタを備える端末が、鍵やスクリプトを記憶しているサーバに接続し、オンラインで相互認証を行った後に、ICカードリーダライタを備える端末がICカード内のデータに対して操作を行っている。   In recent years, when operating (updating) data in a card (IC card) containing an IC (Integrated Circuit) chip, a terminal equipped with an IC card reader / writer is connected to a server storing keys and scripts. After performing mutual authentication online, a terminal equipped with an IC card reader / writer operates on data in the IC card.

例えば、特許文献1には、オンラインでICカード内のデータを読み出す技術が開示されている。   For example, Patent Document 1 discloses a technique for reading data in an IC card online.

このようなICカードリーダライタを備える端末は、鍵やスクリプトを安全に守る機能を有していないため、オフラインでICカード内のデータに対して操作(更新)を行なうためには、鍵やスクリプトを安全に格納できるセキュリティボックスを端末に設けることで、オフラインにおける認証を行っている。
特開2003−141063号公報
Since a terminal equipped with such an IC card reader / writer does not have a function of safely protecting keys and scripts, in order to perform operations (updates) on data in an IC card offline, keys and scripts Offline authentication is provided by providing a security box in the terminal that can securely store.
JP 2003-141063 A

しかしながら、端末にセキュリティボックスを設けた場合、そのセキュリティボックスでは、固定的な鍵やスクリプトしか格納することができず、鍵やスクリプトの更新は困難であるという課題があった。   However, when a security box is provided in the terminal, there is a problem that the security box can store only a fixed key or script and it is difficult to update the key or script.

また、鍵やスクリプトを提供するサービス提供者は、端末に設けられたセキュリティボックスが鍵やスクリプトを守る能力を有するか否かを認識することができないという課題があった。   In addition, there is a problem that a service provider who provides a key or script cannot recognize whether or not a security box provided in the terminal has an ability to protect the key or script.

さらに、サーバが鍵やスクリプトを記憶して、オンラインで端末(クライアント)と相互認証するクライアントサーバモデルにおいて、ICカードによる決済処理などの、端末側(クライアント側)での処理が長時間発生したり、ICカードの抜き差しによりカードアクセスが不規則である場合、サーバにおいて端末を管理する負荷が増加し、サーバを管理するコストが高いという課題があった。   Furthermore, in the client server model in which the server stores keys and scripts and performs mutual authentication with the terminal (client) online, processing on the terminal side (client side) such as payment processing using an IC card may occur for a long time. When the card access is irregular due to the insertion / removal of the IC card, there is a problem that the load for managing the terminal in the server increases and the cost for managing the server is high.

本発明はこのような状況に鑑みてなされたものであり、ICカードに関する情報を管理する端末装置に、安全、かつコストを抑えて情報を提供するようにするものである。   The present invention has been made in view of such a situation, and is intended to provide information to a terminal device that manages information related to an IC card in a safe and cost-effective manner.

本発明の情報処理システムは、ICカードに関する情報を管理する端末装置、端末装置に情報を提供するサーバ、および端末装置を証明する認定装置からなる情報処理システムであって、端末装置は、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコード手段と、エンコードされていない端末識別子と、エンコード手段によりエンコードされた端末識別子および第2の鍵とを、認定装置に送信する第1の送信手段と、第1の送信手段による送信に対して、認定装置から送信されてきた第2の鍵の署名を受信する第1の受信手段と、第1の受信手段により受信された第2の鍵の署名を、端末識別子とともに記憶する第1の記憶手段と、第2の鍵、第1の記憶手段に記憶された第2の鍵の署名、および端末識別子をサーバに送信する第2の送信手段とを備え、認定装置は、端末装置の第1の送信手段により送信されてきた、端末識別子と、エンコードされた端末識別子および第2の鍵とを受信する第2の受信手段と、第2の受信手段により受信された、エンコードされた端末識別子および第2の鍵をデコードするデコード手段と、デコード手段によりデコードされて得られた端末識別子と、第2の受信手段により受信された端末識別子とが一致するか否かを確認する確認手段と、デコードされた端末識別子と、受信された端末識別子とが一致すると確認手段により確認された場合、認定装置が有する第3の鍵を用いて第2の鍵の署名を生成する第1の署名手段と、第1の署名手段により生成された第2の鍵の署名を、端末装置に送信する第3の送信手段とを備え、サーバは、端末装置の第2の送信手段により送信されてきた第2の鍵、第2の鍵の署名、および端末識別子を受信する第3の受信手段と、第3の受信手段により受信された第2の鍵の署名、および認定装置が有する第3の鍵に対応する第4の鍵を用いて、第2の鍵が正当であるかを検証する第1の検証手段と、第1の検証手段により第2の鍵が正当であることが検証された場合、端末識別子と第2の鍵を記憶する第2の記憶手段とを備えることを特徴とする。   An information processing system according to the present invention is an information processing system including a terminal device that manages information related to an IC card, a server that provides information to the terminal device, and an authorization device that certifies the terminal device. An encoding means for encoding a unique terminal identifier and a second key corresponding to the first key of the terminal apparatus, an unencoded terminal identifier, a terminal identifier encoded by the encoding means, and a second key First transmission means for transmitting the key to the authorized device, and first reception means for receiving a signature of the second key transmitted from the authorized device for transmission by the first transmission means; A first storage means for storing the signature of the second key received by the first reception means together with the terminal identifier; a second key; and a second key stored in the first storage means. And a second transmitting means for transmitting the name and the terminal identifier to the server, and the authorization device transmits the terminal identifier, the encoded terminal identifier and the second transmitted from the first transmitting means of the terminal device. Second receiving means for receiving a key; decoded terminal identifier received by the second receiving means; decoding means for decoding the second key; and terminal identifier obtained by decoding by the decoding means And confirmation means for confirming whether or not the terminal identifier received by the second reception means matches, and the confirmation means confirms that the decoded terminal identifier matches the received terminal identifier The first signing means for generating the signature of the second key using the third key possessed by the authorization device, and the signature of the second key generated by the first signing means to the terminal device And a third receiving means for receiving the second key, the signature of the second key, and the terminal identifier transmitted by the second transmitting means of the terminal device. And the signature of the second key received by the third receiving means, and the fourth key corresponding to the third key of the certification device are used to verify whether the second key is valid. A first verification unit; and a second storage unit that stores the terminal identifier and the second key when the second verification unit verifies that the second key is valid by the first verification unit. To do.

端末装置は、サーバに所定の情報を要求する場合、第1の鍵を用いて、情報を識別する識別情報の署名を生成する第2の署名手段と、第2の署名手段により生成された識別情報の署名、識別情報、および端末識別子を、サーバに送信する第4の送信手段と、第4の送信手段による送信に対してサーバから送信されてきた情報を受信する第4の受信手段とをさらに備えるとともに、サーバは、端末装置の第4の送信手段により送信されてきた、識別情報の署名、識別情報、および端末識別子を受信する第5の受信手段と、第5の受信手段により受信された識別情報の署名と、第5の受信手段により受信された端末識別子に対応する、第2の記憶手段に記憶された第2の鍵とを用いて、識別情報が正当であるかを検証する第2の検証手段と、第2の検証手段により識別情報が正当であることが検証された場合、識別情報に対する情報を端末装置に送信する第5の送信手段とをさらに備えるものとすることができる。   When the terminal device requests predetermined information from the server, the terminal device uses the first key to generate a signature of identification information for identifying the information, and an identification generated by the second signature device. A fourth transmitting means for transmitting the signature of the information, the identification information, and the terminal identifier to the server; and a fourth receiving means for receiving the information transmitted from the server in response to the transmission by the fourth transmitting means. Further, the server is received by the fifth receiving means and the fifth receiving means for receiving the signature of the identification information, the identification information, and the terminal identifier transmitted by the fourth transmitting means of the terminal device. Verifying whether the identification information is valid by using the signature of the identification information and the second key stored in the second storage means corresponding to the terminal identifier received by the fifth receiving means A second verification means and a second If the identification information by the verification means that is valid has been verified, it can be assumed that further and a fifth transmitting means for transmitting information for identification information to the terminal device.

情報は、ICカードに関するスクリプトまたは鍵であるものとすることができる。   The information may be a script or key related to the IC card.

エンコード手段は、端末装置に固有の端末識別子および第2の鍵を、認定装置が有する3の鍵に対応する第4の鍵を用いてエンコードし、デコード手段は、エンコードされた端末装置に固有の端末識別子および第2の鍵を、第3の鍵を用いてデコードするものとすることができる。   The encoding means encodes the terminal identifier and the second key unique to the terminal apparatus using a fourth key corresponding to the three keys of the authorized apparatus, and the decoding means is unique to the encoded terminal apparatus. The terminal identifier and the second key may be decoded using the third key.

本発明の第1の情報処理方法は、ICカードに関する情報を管理する端末装置、端末装置に情報を提供するサーバ、および端末装置を証明する認定装置からなる情報処理システムの情報処理方法であって、端末装置は、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とをエンコードし、エンコードされていない端末識別子と、エンコードされた端末識別子および第2の鍵とを、認定装置に送信し、認定装置は、端末装置から送信されてきた、端末識別子と、エンコードされた端末識別子および第2の鍵とを受信し、受信された、エンコードされた端末識別子および第2の鍵をデコードし、デコードされて得られた端末識別子と、受信された端末識別子とが一致するか否かを確認し、デコードされた端末識別子と、受信された端末識別子とが一致すると確認された場合、認定装置が有する第3の鍵を用いて第2の鍵の署名を生成し、生成された第2の鍵の署名を、端末装置に送信し、端末装置は、認定装置から送信されてきた第2の鍵の署名を受信し、受信された第2の鍵の署名を、端末識別子とともに記憶するよう制御し、第2の鍵、記憶が制御された第2の鍵の署名、および端末識別子をサーバに送信し、サーバは、端末装置から送信されてきた第2の鍵、第2の鍵の署名、および端末識別子を受信し、受信された第2の鍵の署名、および認定装置が有する第3の鍵に対応する第4の鍵を用いて、第2の鍵が正当であるかを検証し、検証により第2の鍵が正当であることが検証された場合、端末識別子と第2の鍵の記憶を制御することを特徴とする。   A first information processing method of the present invention is an information processing method of an information processing system including a terminal device that manages information related to an IC card, a server that provides information to the terminal device, and an authorization device that certifies the terminal device. The terminal device encodes a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device, an unencoded terminal identifier, an encoded terminal identifier, and a second key To the authorized device. The authorized device receives the terminal identifier, the encoded terminal identifier and the second key transmitted from the terminal device, and receives the received encoded terminal. The terminal identifier obtained by decoding the identifier and the second key, confirming whether or not the terminal identifier obtained by the decoding matches the received terminal identifier, and decoding the terminal identifier When it is confirmed that the received terminal identifier matches, the signature of the second key is generated using the third key of the authorized device, and the generated signature of the second key is sent to the terminal device. The terminal device receives the signature of the second key transmitted from the authorized device, controls to store the received signature of the second key together with the terminal identifier, and stores the second key, storage Transmits the controlled second key signature and the terminal identifier to the server, and the server receives and receives the second key, the second key signature, and the terminal identifier transmitted from the terminal device. The second key is verified using the signature of the second key and the fourth key corresponding to the third key of the certification device, and the second key is verified by verification. If it is verified that the terminal identifier and the second key are stored, the storage of the terminal identifier and the second key is controlled. .

第1の本発明においては、端末装置で、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とがエンコードされ、エンコードされていない端末識別子と、エンコードされた端末識別子および第2の鍵とが、認定装置に送信される。そして、認定装置で、端末識別子と、エンコードされた端末識別子および第2の鍵とが受信され、エンコードされた端末識別子および第2の鍵がデコードされ、デコードされて得られた端末識別子と、受信された端末識別子とが一致するか否かが確認され、一致すると確認された場合、認定装置が有する第3の鍵を用いて第2の鍵の署名が生成され、端末装置に送信される。また、端末装置で、第2の鍵の署名が受信され、第2の鍵の署名が、端末識別子とともに記憶され、第2の鍵、第2の鍵の署名、および端末識別子がサーバに送信される。さらに、サーバで、第2の鍵、第2の鍵の署名、および端末識別子が受信され、第2の鍵の署名、および認定装置が有する第3の鍵に対応する第4の鍵を用いて第2の鍵が正当であるかが検証され、正当であることが検証された場合、端末識別子と第2の鍵が記憶される。   In the first aspect of the present invention, in the terminal device, the terminal identifier unique to the terminal device and the second key corresponding to the first key of the terminal device are encoded, the terminal identifier that is not encoded, and the encoding The terminal identifier and the second key thus transmitted are transmitted to the authorization device. Then, the authorization device receives the terminal identifier, the encoded terminal identifier and the second key, decodes the encoded terminal identifier and the second key, and receives the terminal identifier obtained by decoding It is confirmed whether or not the received terminal identifier matches, and if it matches, the signature of the second key is generated using the third key of the authorized device and transmitted to the terminal device. In addition, the terminal device receives the second key signature, stores the second key signature together with the terminal identifier, and transmits the second key, the second key signature, and the terminal identifier to the server. The Further, the server receives the second key, the second key signature, and the terminal identifier, and uses the second key signature and the fourth key corresponding to the third key of the certification device. Whether or not the second key is valid is verified. If it is verified that the second key is valid, the terminal identifier and the second key are stored.

本発明の情報処理装置は、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコード手段と、エンコードされていない端末識別子と、エンコード手段によりエンコードされた端末識別子および第2の鍵とを、認定装置に送信する第1の送信手段と、第1の送信手段による送信に対して、認定装置から送信されてきた、認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する第1の受信手段と、第1の受信手段により受信された第2の鍵の署名を、端末識別子とともに記憶する記憶手段と、第2の鍵、記憶手段に記憶された第2の鍵の署名、および端末識別子をサーバに送信する第2の送信手段とを備えることを特徴とする。   An information processing apparatus according to the present invention includes an encoding unit that encodes a terminal identifier unique to a terminal device and a second key corresponding to the first key of the terminal device, a terminal identifier that is not encoded, and an encoding unit A first transmission unit that transmits the terminal identifier and the second key encoded by the first device to the authorized device, and the first device that has been sent from the authorized device with respect to the transmission by the first transmission unit. A first receiving means for receiving a signature of the second key, which is a signature generated using the key of No. 3, and a signature of the second key received by the first receiving means together with a terminal identifier A storage means, a second key, a signature of the second key stored in the storage means, and a second transmission means for transmitting the terminal identifier to the server are provided.

サーバに所定の情報を要求する場合、第1の鍵を用いて、情報を識別する識別情報の署名を生成する署名手段と、署名手段により生成された識別情報の署名、識別情報、および端末識別子を、サーバに送信する第3の送信手段と、第3の送信手段による送信に対してサーバから送信されてきた情報を受信する第2の受信手段とをさらに備えるものとすることができる。   When requesting predetermined information from the server, a signature unit that generates a signature of identification information for identifying information using the first key, a signature of the identification information generated by the signature unit, identification information, and a terminal identifier Can be further provided with a third transmitting means for transmitting the information to the server and a second receiving means for receiving the information transmitted from the server in response to the transmission by the third transmitting means.

情報は、ICカードに関するスクリプトまたは鍵であるものとすることができる。   The information may be a script or key related to the IC card.

エンコード手段は、認定装置が有する第3の鍵に対応する第4の鍵を用いて、端末装置に固有の端末識別子および第2の鍵をエンコードするものとすることができる。   The encoding unit may encode the terminal identifier and the second key unique to the terminal device using a fourth key corresponding to the third key of the authorized device.

本発明の第2の情報処理方法は、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコードステップと、エンコードされていない端末識別子と、エンコード手段によりエンコードされた端末識別子および第2の鍵とを、認定装置に送信する第1の送信ステップと、第1の送信ステップの処理による送信に対して、認定装置から送信されてきた、認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する受信ステップと、受信ステップの処理により受信された第2の鍵の署名を、端末識別子とともに記憶するよう制御する記憶制御ステップと、第2の鍵、記憶制御ステップの処理により記憶が制御された第2の鍵の署名、および端末識別子をサーバに送信する第2の送信ステップとを含むことを特徴とする。   According to a second information processing method of the present invention, an encoding step for encoding a terminal identifier unique to a terminal device, a second key corresponding to the first key of the terminal device, an unencoded terminal identifier, The terminal identifier and the second key encoded by the encoding means are transmitted from the authorized device for the first transmission step of transmitting the terminal identifier and the second key to the authorized device, and the transmission by the processing of the first transmission step. A receiving step for receiving a signature of the second key, which is a signature generated using the third key of the authorized device, and a signature of the second key received by the processing of the receiving step are stored together with the terminal identifier. A storage control step for controlling the second key, a second key, a second key whose storage is controlled by the processing of the storage control step, and a second identifier for transmitting the terminal identifier to the server Characterized in that it comprises a transmission step.

本発明のプログラムは、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコードステップと、エンコードされていない端末識別子と、エンコード手段によりエンコードされた端末識別子および第2の鍵とを、認定装置に送信する第1の送信ステップと、第1の送信ステップの処理による送信に対して、認定装置から送信されてきた、認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する受信ステップと、受信ステップの処理により受信された第2の鍵の署名を、端末識別子とともに記憶するよう制御する記憶制御ステップと、第2の鍵、記憶制御ステップの処理により記憶が制御された第2の鍵の署名、および端末識別子をサーバに送信する第2の送信ステップとを含む処理をコンピュータに実行させることを特徴とする。   The program of the present invention is encoded by an encoding step for encoding a terminal identifier unique to a terminal device and a second key corresponding to the first key of the terminal device, an unencoded terminal identifier, and encoding means. A first transmission step of transmitting the terminal identifier and the second key transmitted to the authorized device, and a first device included in the authorized device that has been transmitted from the authorized device for transmission by the processing of the first transmission step. A receiving step for receiving a signature of the second key, which is a signature generated using the key of No. 3, and a memory for controlling to store the signature of the second key received by the processing of the receiving step together with the terminal identifier A second transmission step for transmitting the control step, the second key, the signature of the second key whose storage is controlled by the processing of the storage control step, and the terminal identifier to the server. Characterized in that to execute a processing including a-up the computer.

第2の本発明においては、端末装置に固有の端末識別子と、端末装置が有する第1の鍵に対応する第2の鍵とがエンコードされ、エンコードされていない端末識別子と、エンコードされた端末識別子および第2の鍵とが、認定装置に送信される。そして、この送信に対して、認定装置から送信されてきた、認定装置が有する第3の鍵を用いて生成された第2の鍵の署名が受信され、第2の鍵の署名が、端末識別子とともに記憶され、第2の鍵、第2の鍵の署名、および端末識別子がサーバに送信される。   In the second aspect of the present invention, the terminal identifier unique to the terminal device and the second key corresponding to the first key of the terminal device are encoded, the unencoded terminal identifier, and the encoded terminal identifier And the second key are transmitted to the authorization device. In response to this transmission, the signature of the second key generated using the third key of the authorized device transmitted from the authorized device is received, and the signature of the second key is the terminal identifier. And the second key, the second key signature, and the terminal identifier are transmitted to the server.

本発明によれば、端末装置とサーバが容易に認証を行なうことができる。特に、本発明によれば、安全、かつ、容易に端末装置とサーバが情報を授受することができる。また、サーバの管理コストを抑えることができる。   According to the present invention, the terminal device and the server can be easily authenticated. In particular, according to the present invention, information can be exchanged between the terminal device and the server safely and easily. In addition, server management costs can be reduced.

以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。   Embodiments of the present invention will be described below. The correspondence relationship between the invention described in this specification and the embodiments of the invention is exemplified as follows. This description is intended to confirm that the embodiments supporting the invention described in this specification are described in this specification. Therefore, even if there is an embodiment that is described in the embodiment of the invention but is not described here as corresponding to the invention, the fact that the embodiment is not It does not mean that it does not correspond to the invention. Conversely, even if an embodiment is described herein as corresponding to an invention, that means that the embodiment does not correspond to an invention other than the invention. Absent.

更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。   Further, this description does not mean all the inventions described in this specification. In other words, this description is for the invention described in the present specification, which is not claimed in this application, that is, for the invention that will be applied for in the future or that will appear and be added by amendment. It does not deny existence.

請求項1に記載の情報処理システムは、ICカードに関する情報を管理する端末装置(例えば、図1の端末SAMクライアント11−1)、前記端末装置に情報を提供するサーバ(例えば、図1のサーバ14−1)、および前記端末装置を証明する認定装置(例えば、図1の認定機関13)からなる情報処理システム(例えば、図1の情報処理システム)であって、
前記端末装置は、
前記端末装置に固有の端末識別子(例えば、端末SAM識別子)と、前記端末装置が有する第1の鍵(例えば、端末SAM秘密鍵)に対応する第2の鍵(例えば、端末SAM公開鍵)とをエンコードするエンコード手段(例えば、図16のステップS32の処理を実行する図7のエンコード部204)と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信手段(例えば、図16のステップS33の処理を実行する図7の出力部210)と、
前記第1の送信手段による送信に対して、前記認定装置から送信されてきた第2の鍵の署名(例えば、端末SAM公開鍵の署名)を受信する第1の受信手段(例えば、図16のステップS34の処理を実行する図7の入力部201)と、
前記第1の受信手段により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶する第1の記憶手段(例えば、図16のステップS35の処理を実行する図5の記憶部78)と、
前記第2の鍵、前記第1の記憶手段に記憶された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信手段(例えば、図17のステップS92の処理を実行する図7の出力部210)と
を備え、
前記認定装置は、
前記端末装置の前記第1の送信手段により送信されてきた、前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを受信する第2の受信手段(例えば、図16のステップS51の処理を実行する図10の入力部351)と、
前記第2の受信手段により受信された、エンコードされた前記端末識別子および前記第2の鍵をデコードするデコード手段(例えば、図16のステップS52の処理を実行する図10のデコード部353)と、
前記デコード手段によりデコードされて得られた前記端末識別子と、前記第2の受信手段により受信された前記端末識別子とが一致するか否かを確認する確認手段(例えば、図16のステップS53の処理を実行する図10の主制御部352)と、
デコードされた前記端末識別子と、受信された前記端末識別子とが一致すると前記確認手段により確認された場合、前記認定装置が有する第3の鍵(例えば、認定機関秘密鍵)を用いて前記第2の鍵の署名を生成する第1の署名手段(例えば、図16のステップS55の処理を実行する図10の署名処理部354)と、
前記第1の署名手段により生成された前記第2の鍵の署名を、前記端末装置に送信する第3の送信手段(例えば、図16のステップS56の処理を実行する図10の出力部355)と
を備え、
前記サーバは、
前記端末装置の前記第2の送信手段により送信されてきた前記第2の鍵、前記第2の鍵の署名、および前記端末識別子を受信する第3の受信手段(例えば、図17のステップS71の処理を実行する図13の入力部451)と、
前記第3の受信手段により受信された前記第2の鍵の署名、および認定装置が有する前記第3の鍵に対応する第4の鍵(例えば、認定機関公開鍵)を用いて、前記第2の鍵が正当であるかを検証する第1の検証手段(例えば、図17のステップS72の処理を実行する図13の検証処理部455)と、
前記第1の検証手段により前記第2の鍵が正当であることが検証された場合、前記端末識別子と前記第2の鍵を記憶する第2の記憶手段(例えば、図17のステップS74の処理を実行する図12の記憶部378)と
を備えることを特徴とする。
The information processing system according to claim 1 is a terminal device (for example, the terminal SAM client 11-1 in FIG. 1) that manages information related to an IC card, and a server that provides information to the terminal device (for example, the server in FIG. 1). 14-1), and an information processing system (for example, the information processing system of FIG. 1) consisting of a certification device (for example, the certification body 13 of FIG. 1) that certifies the terminal device,
The terminal device
A terminal identifier unique to the terminal device (for example, a terminal SAM identifier), and a second key (for example, a terminal SAM public key) corresponding to a first key (for example, a terminal SAM private key) possessed by the terminal device; Encoding means (for example, the encoding unit 204 in FIG. 7 that executes the process of step S32 in FIG. 16);
First transmission means for transmitting the terminal identifier that has not been encoded, the terminal identifier encoded by the encoding means, and the second key to the authorized device (for example, the process of step S33 in FIG. 16). The output unit 210) of FIG.
In response to transmission by the first transmission means, first reception means (for example, FIG. 16) that receives a second key signature (for example, a signature of the terminal SAM public key) transmitted from the authorized device. The input unit 201 in FIG. 7 for executing the process of step S34;
First storage means for storing the signature of the second key received by the first reception means together with the terminal identifier (for example, the storage unit 78 of FIG. 5 for executing the processing of step S35 of FIG. 16). When,
Second transmission means for transmitting the second key, the signature of the second key stored in the first storage means, and the terminal identifier to the server (for example, the process of step S92 in FIG. 17). And executing the output unit 210) of FIG.
The certified device is:
Second receiving means for receiving the terminal identifier and the encoded terminal identifier and the second key transmitted by the first transmitting means of the terminal device (for example, step S51 in FIG. 16). The input unit 351 in FIG.
Decoding means for decoding the encoded terminal identifier and the second key received by the second receiving means (for example, the decoding unit 353 of FIG. 10 that executes the process of step S52 of FIG. 16);
Confirmation means for confirming whether or not the terminal identifier obtained by decoding by the decoding means matches the terminal identifier received by the second receiving means (for example, the process of step S53 in FIG. 16) Main controller 352) of FIG.
When it is confirmed by the confirmation means that the decoded terminal identifier matches the received terminal identifier, the second key is used by using a third key (for example, an accredited institution secret key) possessed by the accreditation device. First signature means for generating a signature of the key (for example, signature processing unit 354 of FIG. 10 that executes the process of step S55 of FIG. 16);
Third transmission means for transmitting the signature of the second key generated by the first signature means to the terminal device (for example, the output unit 355 of FIG. 10 that executes the process of step S56 of FIG. 16). And
The server
Third receiving means for receiving the second key, the signature of the second key, and the terminal identifier transmitted by the second transmitting means of the terminal device (for example, step S71 in FIG. 17). The input unit 451) of FIG.
Using the signature of the second key received by the third receiving means and the fourth key (for example, the certification authority public key) corresponding to the third key of the certification device, the second key is used. First verification means for verifying whether or not the key is valid (for example, the verification processing unit 455 of FIG. 13 that executes the process of step S72 of FIG. 17);
When the first verification unit verifies that the second key is valid, the second storage unit stores the terminal identifier and the second key (for example, the process of step S74 in FIG. 17). And a storage unit 378) of FIG.

請求項2に記載の情報処理システムの前記端末装置は、
前記サーバに所定の情報を要求する場合、前記第1の鍵を用いて、前記情報を識別する識別情報(例えば、スクリプトID)の署名(例えば、スクリプトIDの署名)を生成する第2の署名手段(例えば、図19のステップS172の処理を実行する図7の署名処理部205)と、
前記第2の署名手段により生成された前記識別情報の署名、前記識別情報、および前記端末識別子を、前記サーバに送信する第4の送信手段(例えば、図19のステップS173の処理を実行する図7の出力部210)と、
前記第4の送信手段による送信に対して前記サーバから送信されてきた前記情報(例えば、スクリプト)を受信する第4の受信手段(例えば、図20のステップS174の処理を実行する図7の入力部201)と
をさらに備えるとともに、
前記サーバは、
前記端末装置の前記第4の送信手段により送信されてきた、前記識別情報の署名、前記識別情報、および前記端末識別子を受信する第5の受信手段(例えば、図19のステップS151の処理を実行する図13の入力部451)と、
前記第5の受信手段により受信された前記識別情報の署名と、前記第5の受信手段により受信された前記端末識別子に対応する、前記第2の記憶手段に記憶された前記第2の鍵とを用いて、前記識別情報が正当であるかを検証する第2の検証手段(例えば、図19のステップS153の処理を実行する図13の検証処理部455)と、
前記第2の検証手段により前記識別情報が正当であることが検証された場合、前記識別情報に対する前記情報(例えば、スクリプトIDに対するスクリプト)を前記端末装置に送信する第5の送信手段(例えば、図19のステップS158の処理を実行する図13の出力部459)と
をさらに備えることを特徴とする。
The terminal device of the information processing system according to claim 2,
When requesting predetermined information from the server, a second signature for generating a signature (for example, a script ID signature) of identification information (for example, a script ID) for identifying the information, using the first key. Means (for example, the signature processing unit 205 of FIG. 7 that executes the process of step S172 of FIG. 19);
Fourth transmission means for transmitting the signature of the identification information generated by the second signature means, the identification information, and the terminal identifier to the server (for example, executing the processing of step S173 in FIG. 19) 7 output unit 210),
Fourth receiving means for receiving the information (for example, a script) transmitted from the server in response to transmission by the fourth transmitting means (for example, the input of FIG. 7 for executing the processing of step S174 in FIG. 20) Part 201) and
The server
Fifth receiving means for receiving the signature of the identification information, the identification information, and the terminal identifier transmitted by the fourth transmission means of the terminal device (for example, execute the processing of step S151 in FIG. 19) The input unit 451) of FIG.
The signature of the identification information received by the fifth receiving means and the second key stored in the second storage means corresponding to the terminal identifier received by the fifth receiving means; A second verification means for verifying whether the identification information is valid (for example, the verification processing unit 455 of FIG. 13 that executes the process of step S153 of FIG. 19);
When the identification information is verified to be valid by the second verification unit, a fifth transmission unit (for example, a script for the script ID) is transmitted to the terminal device. And an output unit 459 of FIG. 13 for executing the process of step S158 of FIG.

請求項3に記載の情報処理システムの前記情報は、前記ICカードに関するスクリプトまたは鍵(例えば、図3のICカード51との間で利用される共通鍵)である
ことを特徴とする。
The information of the information processing system according to claim 3 is a script or a key related to the IC card (for example, a common key used with the IC card 51 of FIG. 3).

請求項4に記載の情報処理システムの前記エンコード手段は、前記端末装置に固有の端末識別子および前記第2の鍵を、前記認定装置が有する前記3の鍵に対応する第4の鍵を用いてエンコードし(例えば、図16のステップS32)、
前記デコード手段は、エンコードされた前記端末装置に固有の端末識別子および前記第2の鍵を、前記第3の鍵を用いてデコードする(例えば、図16のステップS52)
ことを特徴とする。
The information processing system according to claim 4, wherein the encoding unit uses a terminal identifier unique to the terminal device and the second key by using a fourth key corresponding to the third key of the authorization device. Encoding (for example, step S32 in FIG. 16);
The decoding means decodes the encoded terminal identifier unique to the terminal device and the second key using the third key (for example, step S52 in FIG. 16).
It is characterized by that.

請求項5に記載の情報処理方法は、ICカードに関する情報を管理する端末装置(例えば、図1の端末SAMクライアント11−1)、前記端末装置に情報を提供するサーバ(例えば、図1のサーバ14−1)、および前記端末装置を証明する認定装置(例えば、図1の認定機関13)からなる情報処理システム(例えば、図1の情報処理システム)の情報処理方法であって、
前記端末装置は、
前記端末装置に固有の端末識別子(例えば、端末SAM識別子)と、前記端末装置が有する第1の鍵(例えば、端末SAM秘密鍵)に対応する第2の鍵(例えば、端末SAM公開鍵)とをエンコードし(例えば、図16のステップS32)、
エンコードされていない前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信し(例えば、図16のステップS33)、
前記認定装置は、
前記端末装置から送信されてきた、前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを受信し(例えば、図16のステップS51)、
受信された、エンコードされた前記端末識別子および前記第2の鍵をデコードし(例えば、図16のステップS52)、
デコードされて得られた前記端末識別子と、受信された前記端末識別子とが一致するか否かを確認し(例えば、図16のステップS53)、
デコードされた前記端末識別子と、受信された前記端末識別子とが一致すると確認された場合、前記認定装置が有する第3の鍵(例えば、認定機関秘密鍵)を用いて前記第2の鍵の署名を生成し(例えば、図16のステップS55)、
生成された前記第2の鍵の署名を、前記端末装置に送信し(例えば、図16のステップS56の処理を実行する図10の出力部355)、
前記端末装置は、
前記認定装置から送信されてきた前記第2の鍵の署名(例えば、端末SAM公開鍵の署名)を受信し(例えば、図16のステップS34)、
受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御し(例えば、図16のステップS35)、
前記第2の鍵、記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信し(例えば、図17のステップS92)、
前記サーバは、
前記端末装置から送信されてきた前記第2の鍵、前記第2の鍵の署名、および前記端末識別子を受信し(例えば、図17のステップS71)、
受信された前記第2の鍵の署名、および前記認定装置が有する前記第3の鍵に対応する第4の鍵(例えば、認定機関公開鍵)を用いて、前記第2の鍵が正当であるかを検証し(例えば、図17のステップS72)、
検証により前記第2の鍵が正当であることが検証された場合、前記端末識別子と前記第2の鍵の記憶を制御する(例えば、図17のステップS74)
ことを特徴とする。
The information processing method according to claim 5 includes a terminal device (for example, the terminal SAM client 11-1 in FIG. 1) that manages information related to an IC card, and a server that provides information to the terminal device (for example, the server in FIG. 1). 14-1), and an information processing method of an information processing system (for example, the information processing system of FIG. 1) composed of a certification device (for example, the certification body 13 of FIG. 1) for proving the terminal device
The terminal device
A terminal identifier unique to the terminal device (for example, a terminal SAM identifier), and a second key (for example, a terminal SAM public key) corresponding to a first key (for example, a terminal SAM private key) possessed by the terminal device; (For example, step S32 in FIG. 16),
The unencoded terminal identifier, the encoded terminal identifier and the second key are transmitted to the authorized device (eg, step S33 in FIG. 16),
The certified device is:
Receiving the terminal identifier, the encoded terminal identifier and the second key transmitted from the terminal device (for example, step S51 in FIG. 16);
Decode the received encoded terminal identifier and the second key (eg, step S52 of FIG. 16);
Check whether the terminal identifier obtained by decoding matches the received terminal identifier (for example, step S53 in FIG. 16),
When it is confirmed that the decoded terminal identifier matches the received terminal identifier, a signature of the second key is used by using a third key (for example, a certification authority private key) of the certification device. (For example, step S55 in FIG. 16),
The generated signature of the second key is transmitted to the terminal device (for example, the output unit 355 of FIG. 10 that executes the process of step S56 of FIG. 16),
The terminal device
Receiving the signature of the second key (for example, the signature of the terminal SAM public key) transmitted from the authorized device (for example, step S34 in FIG. 16);
Control to store the received signature of the second key together with the terminal identifier (for example, step S35 in FIG. 16);
Transmitting the second key, the signature of the second key whose storage is controlled, and the terminal identifier to the server (for example, step S92 in FIG. 17);
The server
Receiving the second key, the signature of the second key, and the terminal identifier transmitted from the terminal device (for example, step S71 in FIG. 17);
The second key is valid by using the received signature of the second key and the fourth key (for example, the certification authority public key) corresponding to the third key of the certification device. (For example, step S72 in FIG. 17),
When the verification verifies that the second key is valid, the storage of the terminal identifier and the second key is controlled (for example, step S74 in FIG. 17).
It is characterized by that.

請求項6に記載の情報処理装置は、ICカードに関する情報を提供するサーバおよび認定装置と情報を授受する情報処理装置(例えば、図1の端末SAMクライアント11−1)であって、
前記端末装置に固有の端末識別子(例えば、端末SAM識別子)と、前記端末装置が有する第1の鍵(例えば、端末SAM秘密鍵)に対応する第2の鍵(例えば、端末SAM公開鍵)とをエンコードするエンコード手段(例えば、図16のステップS32の処理を実行する図7のエンコード部204)と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信手段(例えば、図16のステップS33の処理を実行する図7の出力部210)と、
前記第1の送信手段による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名(例えば、端末SAM公開鍵の署名)を受信する第1の受信手段(例えば、図16のステップS34の処理を実行する図7の入力部201)と、
前記第1の受信手段により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶する記憶手段(例えば、図16のステップS35の処理を実行する図5の記憶部78)と、
前記第2の鍵、前記記憶手段に記憶された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信手段(例えば、図17のステップS92の処理を実行する図7の出力部210)と
を備えることを特徴とする。
An information processing apparatus according to claim 6 is an information processing apparatus (for example, the terminal SAM client 11-1 in FIG. 1) that exchanges information with a server and an authentication apparatus that provide information about an IC card.
A terminal identifier unique to the terminal device (for example, a terminal SAM identifier), and a second key (for example, a terminal SAM public key) corresponding to a first key (for example, a terminal SAM private key) possessed by the terminal device; Encoding means (for example, the encoding unit 204 in FIG. 7 that executes the process of step S32 in FIG. 16);
First transmission means for transmitting the terminal identifier that has not been encoded, the terminal identifier encoded by the encoding means, and the second key to the authorized device (for example, the process of step S33 in FIG. 16). The output unit 210) of FIG.
In response to the transmission by the first transmission means, the signature of the second key (for example, the terminal SAM) transmitted from the authorized device and generated using the third key of the authorized device. First receiving means for receiving the signature of the public key (for example, the input unit 201 in FIG. 7 that executes the process of step S34 in FIG. 16);
Storage means for storing the signature of the second key received by the first reception means together with the terminal identifier (for example, the storage unit 78 of FIG. 5 for executing the process of step S35 of FIG. 16);
Second transmission means for transmitting the second key, the signature of the second key stored in the storage means, and the terminal identifier to the server (for example, executing the processing of step S92 in FIG. 17) 7 output unit 210).

請求項7に記載の情報処理装置は、
前記サーバに所定の情報を要求する場合、前記第1の鍵を用いて、前記情報を識別する識別情報(例えば、スクリプトID)の署名(例えば、スクリプトIDの署名)を生成する署名手段(例えば、図19のステップS172の処理を実行する図7の署名処理部205)と、
前記署名手段により生成された前記識別情報の署名、前記識別情報、および前記端末識別子を、前記サーバに送信する第3の送信手段(例えば、図19のステップS173の処理を実行する図7の出力部210)と、
前記第3の送信手段による送信に対して前記サーバから送信されてきた前記情報(例えば、スクリプト)を受信する第2の受信手段(例えば、図20のステップS174の処理を実行する図7の入力部201)と
をさらに備えることを特徴とする。
An information processing apparatus according to claim 7
When requesting predetermined information from the server, a signature means (for example, a script ID signature) for generating identification information (for example, a script ID) for identifying the information using the first key (for example, a script ID signature) , The signature processing unit 205 in FIG. 7 for executing the processing in step S172 in FIG.
Third transmission means for transmitting the signature of the identification information generated by the signature means, the identification information, and the terminal identifier to the server (for example, the output of FIG. 7 for executing the processing of step S173 in FIG. 19) Part 210),
Second receiving means for receiving the information (for example, a script) transmitted from the server in response to transmission by the third transmitting means (for example, the input of FIG. 7 for executing the processing of step S174 in FIG. 20) Unit 201).

請求項8に記載の情報処理装置の前記情報は、前記ICカードに関するスクリプトまたは鍵(例えば、図3のICカード51との間で利用される共通鍵)である
ことを特徴とする。
The information of the information processing apparatus according to claim 8 is a script or a key related to the IC card (for example, a common key used with the IC card 51 of FIG. 3).

請求項9に記載の情報処理装置の前記エンコード手段は、前記認定装置が有する前記第3の鍵に対応する前記第4の鍵を用いて、前記端末装置に固有の端末識別子および前記第2の鍵をエンコードする(例えば、図16のステップS32)
ことを特徴とする。
The encoding means of the information processing device according to claim 9 uses the fourth key corresponding to the third key of the authorization device to use a terminal identifier unique to the terminal device and the second key. The key is encoded (for example, step S32 in FIG. 16).
It is characterized by that.

請求項10に記載の情報処理方法は、ICカードに関する情報を提供するサーバおよび認定装置と情報を授受する情報処理装置(例えば、図1の端末SAMクライアント11−1)の情報処理方法であって、
前記端末装置に固有の端末識別子(例えば、端末SAM識別子)と、前記端末装置が有する第1の鍵(例えば、端末SAM秘密鍵)に対応する第2の鍵(例えば、端末SAM公開鍵)とをエンコードするエンコードステップ(例えば、図16のステップS32)と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信ステップ(例えば、図16のステップS33)と、
前記第1の送信ステップの処理による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名(例えば、端末SAM公開鍵の署名)を受信する受信ステップ(例えば、図16のステップS34)と、
前記受信ステップの処理により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御する記憶制御ステップ(例えば、図16のステップS35)と、
前記第2の鍵、前記記憶制御ステップの処理により記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信ステップ(例えば、図17のステップS92)と
を含むことを特徴とする。
The information processing method according to claim 10 is an information processing method of an information processing device (for example, the terminal SAM client 11-1 in FIG. 1) that exchanges information with a server and an authentication device that provide information about an IC card. ,
A terminal identifier unique to the terminal device (for example, a terminal SAM identifier), and a second key (for example, a terminal SAM public key) corresponding to a first key (for example, a terminal SAM private key) possessed by the terminal device; Encoding step (for example, step S32 in FIG. 16) for encoding
A first transmission step (for example, step S33 in FIG. 16) for transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
In response to the transmission by the processing of the first transmission step, the signature of the second key (for example, the signature generated using the third key of the authorized device transmitted from the authorized device) (for example, Receiving step (for example, step S34 in FIG. 16) for receiving the signature of the terminal SAM public key;
A storage control step (for example, step S35 in FIG. 16) for controlling to store the signature of the second key received by the processing of the reception step together with the terminal identifier;
Second transmission step of transmitting the second key, the signature of the second key whose storage is controlled by the processing of the storage control step, and the terminal identifier to the server (for example, step S92 in FIG. 17) It is characterized by including and.

請求項11に記載のプログラムは、ICカードに関する情報を処理するプログラムであって、
前記端末装置に固有の端末識別子(例えば、端末SAM識別子)と、前記端末装置が有する第1の鍵(例えば、端末SAM秘密鍵)に対応する第2の鍵(例えば、端末SAM公開鍵)とをエンコードするエンコードステップ(例えば、図16のステップS32)と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信ステップ(例えば、図16のステップS33)と、
前記第1の送信ステップの処理による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名(例えば、端末SAM公開鍵の署名)を受信する受信ステップ(例えば、図16のステップS34)と、
前記受信ステップの処理により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御する記憶制御ステップ(例えば、図16のステップS35)と、
前記第2の鍵、前記記憶制御ステップの処理により記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信ステップ(例えば、図17のステップS92)と
を含む処理をコンピュータに実行させることを特徴とする。
The program according to claim 11 is a program for processing information about an IC card,
A terminal identifier unique to the terminal device (for example, a terminal SAM identifier), and a second key (for example, a terminal SAM public key) corresponding to a first key (for example, a terminal SAM private key) possessed by the terminal device; Encoding step (for example, step S32 in FIG. 16) for encoding
A first transmission step (for example, step S33 in FIG. 16) for transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
In response to the transmission by the processing of the first transmission step, the signature of the second key (for example, the signature generated using the third key of the authorized device transmitted from the authorized device) (for example, Receiving step (for example, step S34 in FIG. 16) for receiving the signature of the terminal SAM public key;
A storage control step (for example, step S35 in FIG. 16) for controlling to store the signature of the second key received by the processing of the reception step together with the terminal identifier;
Second transmission step of transmitting the second key, the signature of the second key whose storage is controlled by the processing of the storage control step, and the terminal identifier to the server (for example, step S92 in FIG. 17) And causing a computer to execute a process including and.

以下、図を参照して、本発明の実施の形態について説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本発明を適用した情報処理システムの全体の構成例を示す図である。   FIG. 1 is a diagram showing an example of the overall configuration of an information processing system to which the present invention is applied.

端末SAM(Secure Application Module)クライアント(端末装置)11−1乃至11−3は、それぞれネットワーク12に接続されている。また、ネットワーク12には、認定機関(認定局とも称する)13、並びにサーバ(サーバ装置)14−1乃至14−3が接続されている。   Terminal SAM (Secure Application Module) clients (terminal devices) 11-1 to 11-3 are each connected to the network 12. The network 12 is connected to an accreditation body (also referred to as an accreditation station) 13 and servers (server devices) 14-1 to 14-3.

サーバ14−1はサービス提供者Aが運営しており、サーバ14−2はサービス提供者Bが運営しており、サーバ14−3はサービス提供者Cが運営している。すなわち、サーバ14−1乃至14−3は、それぞれ異なるサービス提供者により運営されている。ネットワーク12は、例えば、LAN(Local Area Network)である。認定装置は、認定機関(認定局)13により司られる装置であり、実際には、認定装置により各種の処理が実行されるが、本実施の形態においては、認定機関13が実行する処理として称する。   Server 14-1 is operated by service provider A, server 14-2 is operated by service provider B, and server 14-3 is operated by service provider C. That is, the servers 14-1 to 14-3 are operated by different service providers. The network 12 is, for example, a LAN (Local Area Network). The accreditation apparatus is an apparatus that is governed by the accreditation body (accreditation station) 13. In practice, various processes are executed by the accreditation apparatus. In this embodiment, the accreditation apparatus is referred to as a process executed by the accreditation body 13. .

なお、以下において、端末SAMクライアント11−1乃至11−3を個々に区別する必要がない場合、端末SAMクライアント11と称し、サーバ14−1乃至14−3を個々に区別する必要がない場合、サーバ14と称する。また、サービス提供者A、B、およびCを個々に区別する必要がない場合、サービス提供者と称する。   In the following, when the terminal SAM clients 11-1 to 11-3 do not need to be individually distinguished, they are referred to as the terminal SAM client 11, and when the servers 14-1 to 14-3 do not need to be individually distinguished, This is referred to as server 14. Further, when it is not necessary to individually distinguish the service providers A, B, and C, they are referred to as service providers.

認定機関13は、端末SAMクライアント11を、サービス提供者に対して認定する機関(局)である。例えば、認定機関13は、端末SAMクライアント11からの要求に対して、端末SAMクライアント11に、端末SAMクライアント11の公開鍵の署名(認定機関13による、端末SAMクライアント11の公開鍵に対する署名)を発行する。端末SAMクライアント11は、この端末SAMクライアント11の公開鍵の署名を、サーバ14に送信し、サーバ14は、端末SAMクライアント11の公開鍵の署名を検証することで(すなわち、端末SAMクライアント11の公開鍵が正当であることを検証することで)、端末SAMクライアント11が認定された端末(正当)であることを確認する。サービス提供者(サーバ14)は、端末SAMクライアント11が認定機関13により認定されている場合に、端末SAMクライアント11に対して鍵やスクリプトを送信する。   The authorization organization 13 is an organization (station) that authorizes the terminal SAM client 11 to the service provider. For example, in response to a request from the terminal SAM client 11, the certification authority 13 signs the public key of the terminal SAM client 11 (signature of the public key of the terminal SAM client 11 by the certification authority 13) to the terminal SAM client 11. Issue. The terminal SAM client 11 transmits the signature of the public key of the terminal SAM client 11 to the server 14, and the server 14 verifies the signature of the public key of the terminal SAM client 11 (that is, the terminal SAM client 11 By verifying that the public key is valid, the terminal SAM client 11 is confirmed to be an authorized terminal (valid). The service provider (server 14) transmits a key and a script to the terminal SAM client 11 when the terminal SAM client 11 is certified by the certification body 13.

端末SAMクライアント11は、複数のスクリプトを記憶することができ、スクリプトを実行して図示せぬICカードにアクセスする。例えば、端末SAMクライアント11は、スクリプトを実行し、ICカード内のデータを更新する。そして、端末SAMクライアント11は、スクリプトの実行結果などを、ネットワーク12を介して、対応するサービスを提供しているサーバ14に送信する。なお、ネットワーク12がオフラインである場合、端末SAMクライアント11は、スクリプトの実行結果を保持しておき、オンラインになったとき、その実行結果を、ネットワーク12を介してサーバ14に送信する。   The terminal SAM client 11 can store a plurality of scripts, and accesses the IC card (not shown) by executing the scripts. For example, the terminal SAM client 11 executes a script and updates data in the IC card. Then, the terminal SAM client 11 transmits the script execution result and the like to the server 14 that provides the corresponding service via the network 12. When the network 12 is offline, the terminal SAM client 11 holds the execution result of the script, and when it is online, transmits the execution result to the server 14 via the network 12.

サーバ14はまた、図2に示されるようにSAM21と内部のネットワーク22を介して接続されている。SAM21は、サーバ14からの要求に応じて、端末SAMクライアント11に送信するためのデータ(スクリプトや鍵)を生成し、生成したデータを適宜、管理している鍵情報に基づいて暗号化し、サーバ14等を介して、端末SAMクライアント11に供給する。このようにサーバ14は、SAM21と接続されてデータの授受を行い、ネットワーク12(図1)を介して端末SAMクライアント11にデータを送信しているが、この部分については本発明と直接関係はないため、以下においては、全てサーバ14における処理として説明する。すなわち、サーバ14がデータを送信する場合には、実際にはSAM21との間においてデータの授受も行われているが、本実施の形態においては、SAM21における処理もサーバ14が実行する処理として説明する。なお、図2のネットワーク22は、ネットワーク12と同じネットワークでもよい。   The server 14 is also connected to the SAM 21 via an internal network 22 as shown in FIG. The SAM 21 generates data (script or key) to be transmitted to the terminal SAM client 11 in response to a request from the server 14, and encrypts the generated data based on key information managed as appropriate. 14 to the terminal SAM client 11 via 14 or the like. As described above, the server 14 is connected to the SAM 21 to exchange data, and transmits data to the terminal SAM client 11 via the network 12 (FIG. 1). This part is directly related to the present invention. Therefore, in the following description, all processing will be described as processing in the server 14. That is, when the server 14 transmits data, data is actually exchanged with the SAM 21. However, in the present embodiment, the processing in the SAM 21 is also described as processing executed by the server 14. To do. 2 may be the same network as the network 12.

次に、端末SAMクライアント11の機能的構成例を説明する。図3は、図1の端末SAMクライアント11の機能的構成例を示すブロック図である。   Next, a functional configuration example of the terminal SAM client 11 will be described. FIG. 3 is a block diagram showing a functional configuration example of the terminal SAM client 11 of FIG.

端末SAMクライアント11は、制御端末41、端末SAM42、およびICカードリーダライタアンテナ43の機能的構成を有する。   The terminal SAM client 11 has a functional configuration of a control terminal 41, a terminal SAM 42, and an IC card reader / writer antenna 43.

制御端末41は、例えばPOS(Point Of Sales)端末である。制御端末41は、ICカード51に対してデータを更新する指令を出したり、ICカード51から読み出されたデータを、ネットワーク12(図1)を介してサーバ14に送信する。   The control terminal 41 is, for example, a POS (Point Of Sales) terminal. The control terminal 41 issues a command to update data to the IC card 51 or transmits data read from the IC card 51 to the server 14 via the network 12 (FIG. 1).

ICカードリーダライタアンテナ43は、外部のICカード51と非接触により通信を行い、ICカードに記憶されている各種のデータの読み出しや、データの書き込みを行なう。例えば、ICカードリーダライタアンテナ43は、ICカード51に記憶されているICカード51に固有の識別番号やICカード51に蓄積されている金額などのデータを読み出す。またICカードリーダライタアンテナ43は、ICカード51と非接触により通信を行い、ICカード51に蓄積されている金額などのデータを書き換える(更新する)。なお、本実施の形態では、ICカード51とICカードリーダライタアンテナ43とが非接触式であるとして説明したが、ICカードとICカードリーダライタアンテナとが接触式であってもよい。   The IC card reader / writer antenna 43 communicates with the external IC card 51 in a non-contact manner, and reads various data stored in the IC card and writes data. For example, the IC card reader / writer antenna 43 reads data such as an identification number unique to the IC card 51 stored in the IC card 51 and an amount stored in the IC card 51. The IC card reader / writer antenna 43 communicates with the IC card 51 in a non-contact manner, and rewrites (updates) data such as the amount of money stored in the IC card 51. In this embodiment, the IC card 51 and the IC card reader / writer antenna 43 are described as being non-contact type, but the IC card and the IC card reader / writer antenna may be contact type.

端末SAM42は、ICカードリーダライタアンテナ43から供給されたデータを暗号化したり、サーバ14の認定を得るために、認定機関13に対して、端末SAM42の公開鍵の署名を要求するよう制御するとともに、サーバ14に端末SAM公開鍵の署名を送信するよう制御する。また、端末SAM42は、スクリプトを実行したり、各種の暗号鍵を生成したり、スクリプトの実行結果をログとして保存する。すなわち端末SAM42は、端末SAMクライアント11内のデータをセキュアに管理する。   The terminal SAM 42 controls the certification authority 13 to request the signature of the public key of the terminal SAM 42 in order to encrypt the data supplied from the IC card reader / writer antenna 43 and to obtain certification of the server 14. The server 14 is controlled to transmit the signature of the terminal SAM public key. Further, the terminal SAM 42 executes a script, generates various encryption keys, and saves the execution result of the script as a log. That is, the terminal SAM 42 securely manages data in the terminal SAM client 11.

図4は、図3の端末SAM42のハードウエアの構成例を示すブロック図である。   FIG. 4 is a block diagram showing a hardware configuration example of the terminal SAM 42 of FIG.

CPU(Central Processing Unit)71、ROM(Read Only Memory)72、およびRAM(Random Access Memory)73は、内部バス74を介して相互に接続されている。この内部バス74にはまた、入出力インターフェース75も接続されている。   A CPU (Central Processing Unit) 71, a ROM (Read Only Memory) 72, and a RAM (Random Access Memory) 73 are connected to each other via an internal bus 74. An input / output interface 75 is also connected to the internal bus 74.

CPU71は、ROM72に記憶されているプログラム、または、記憶部78からRAM73にロードされたプログラムに従って各種の処理を実行する。RAM73にはまた、CPU71が各種の処理を実行する上で必要なデータなどが適宜記憶される。   The CPU 71 executes various processes according to a program stored in the ROM 72 or a program loaded from the storage unit 78 to the RAM 73. The RAM 73 also appropriately stores data necessary for the CPU 71 to execute various processes.

入出力インターフェース75には、電子錠、DIP(Dual Inline Package)スイッチ、キーボード、マウスなどよりなる入力部76、状態を表示するランプ、7セグLED(Light Emitting Diode)、CRT,LCD(Liquid Crystal Display)、スピーカなどよりなる出力部77、ハードディスクなどより構成される記憶部78、モデム、ターミナルアダプタなどより構成される通信部79、ICカードリーダライタ80が接続されている。通信部79は、RS232Cのシリアル通信やLAN、を含む各種のネットワークを介しての通信処理を行なう。制御端末41との間のデータの授受は、通信部79を介して行われる。端末SAM42に対する指令は、通信部79を介して行なわれるようにしてもよい。ICカードリーダライタ80には、メモリ(図示せず)が内蔵されており、カードのデータはメモリに保存され、ICカード51との間の近距離間の通信は、ICカードリーダライタアンテナ43を介して行われる。   The input / output interface 75 includes an electronic lock, a DIP (Dual Inline Package) switch, a keyboard, a mouse, and other input unit 76, a status display lamp, a 7-segment LED (Light Emitting Diode), a CRT, an LCD (Liquid Crystal Display). ), An output unit 77 including a speaker, a storage unit 78 including a hard disk, a communication unit 79 including a modem and a terminal adapter, and an IC card reader / writer 80 are connected. The communication unit 79 performs communication processing via various networks including RS232C serial communication and LAN. Data exchange with the control terminal 41 is performed via the communication unit 79. The command to the terminal SAM 42 may be issued via the communication unit 79. The IC card reader / writer 80 has a built-in memory (not shown), the card data is stored in the memory, and the IC card reader / writer antenna 43 is used for short-distance communication with the IC card 51. Done through.

入出力インターフェース75にはまた、必要に応じてドライブ81が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア91が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部78にインストールされる。   A drive 81 is connected to the input / output interface 75 as necessary, and a removable medium 91 including a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory is appropriately mounted, and a computer program read therefrom is Installed in the storage unit 78 as necessary.

上述した図3の機能的構成例と対応付けると、図4のCPU71が後述する所定の処理を実行することで端末SAMの機能を有する。   In association with the above-described functional configuration example of FIG. 3, the CPU 71 of FIG. 4 has a function of the terminal SAM by executing predetermined processing described later.

図5は、記憶部78に記憶される、端末SAM42(図4)に関する情報の例を説明する図である。すなわち、図5は、端末SAM42が処理を実行するために用いられる情報(データ)の例を示している。   FIG. 5 is a diagram for explaining an example of information related to the terminal SAM 42 (FIG. 4) stored in the storage unit 78. That is, FIG. 5 shows an example of information (data) used for the terminal SAM 42 to execute processing.

記憶部78には、端末SAM42に関する情報として、外部入出力ロジック121、公開秘密鍵ロジック122、サーバ証明書フォルダ123、端末SAM固有情報124、スクリプト実行情報125、スクリプトフォルダ126、端末SAM共通情報127、およびログフォルダ128が記憶されている。   In the storage unit 78, as information related to the terminal SAM 42, the external input / output logic 121, the public secret key logic 122, the server certificate folder 123, the terminal SAM specific information 124, the script execution information 125, the script folder 126, and the terminal SAM common information 127 are stored. , And a log folder 128 are stored.

外部入出力ロジック121は、外部入出力に関するインターフェース処理を実行するためのロジックである。   The external input / output logic 121 is a logic for executing interface processing related to external input / output.

公開秘密鍵ロジック122は、暗号化、復号、署名、検証、および鍵ペア生成などの処理を実行するためのロジックである。具体的には、公開秘密鍵ロジック122は、図6に示されるような情報で構成されている。   The public secret key logic 122 is a logic for executing processes such as encryption, decryption, signature, verification, and key pair generation. Specifically, the public / private key logic 122 includes information as shown in FIG.

図6において、公開秘密鍵ロジック122には、暗号化手順191、復号手順192、鍵ペア生成手順193、署名手順194、および検証手順195が含まれている。暗号化手順191には、データを暗号化するための手順が記述されており、復号手順192には、暗号化されているデータを復号するための手順(暗号化手順191に対応する手順)が記述されている。鍵ペア生成手順193には、端末SAM42の公開鍵と秘密鍵を生成するための手順が記述されている。署名手順194には、所定のデータに署名を付すための手順が記述されており、検証手順195には、署名が付されたデータを検証するための手順が記述されている。このように公開秘密鍵ロジック122には、公開鍵と秘密鍵に関するロジックが含まれている。図6の例の場合、端末SAM42に関する公開秘密鍵ロジック122であるので、ここでいう公開鍵は端末SAM42の公開鍵であり、秘密鍵は端末SAM42の秘密鍵である。   In FIG. 6, the public secret key logic 122 includes an encryption procedure 191, a decryption procedure 192, a key pair generation procedure 193, a signature procedure 194, and a verification procedure 195. The encryption procedure 191 describes a procedure for encrypting data, and the decryption procedure 192 includes a procedure for decrypting encrypted data (a procedure corresponding to the encryption procedure 191). is described. The key pair generation procedure 193 describes a procedure for generating a public key and a secret key of the terminal SAM42. The signature procedure 194 describes a procedure for attaching a signature to predetermined data, and the verification procedure 195 describes a procedure for verifying the signed data. Thus, the public / private key logic 122 includes logic related to the public key and the secret key. In the case of the example in FIG. 6, since it is the public secret key logic 122 related to the terminal SAM 42, the public key here is the public key of the terminal SAM 42, and the secret key is the secret key of the terminal SAM 42.

図5に戻って、サーバ証明書フォルダ123には、サーバID131、サーバ公開鍵132、およびURL(Uniform Resource Locator)133が含まれている。サーバID131は、サーバ14に固有のID(識別する識別情報)であり、このサーバIDによりサーバ14(サービス提供者)を特定することができる。すなわち、端末SAM42が図1のサーバ14−1乃至14−3のサーバからサービスの提供を受ける状態では、サーバ証明書フォルダ123に、サーバID131、サーバ公開鍵132、およびURL133の組み合わせが3つ登録されていることになる。このサーバIDは、端末SAM42が付すサーバに固有のIDである。サーバ公開鍵132は、サーバID131により特定されるサーバ14の公開鍵であり、サーバ131に対応付けられている。URL133は、サーバID131により特定されるサーバ14にアクセスするためのURLであり、サーバID131に対応付けられている。サーバ証明書フォルダ123の情報は、後述する処理で取得される。   Returning to FIG. 5, the server certificate folder 123 includes a server ID 131, a server public key 132, and a URL (Uniform Resource Locator) 133. The server ID 131 is an ID (identification information to be identified) unique to the server 14, and the server 14 (service provider) can be specified by this server ID. That is, in a state where the terminal SAM 42 receives service provision from the servers 14-1 to 14-3 in FIG. 1, three combinations of the server ID 131, the server public key 132, and the URL 133 are registered in the server certificate folder 123. Will be. This server ID is an ID unique to the server attached by the terminal SAM42. The server public key 132 is the public key of the server 14 specified by the server ID 131 and is associated with the server 131. The URL 133 is a URL for accessing the server 14 specified by the server ID 131 and is associated with the server ID 131. Information of the server certificate folder 123 is acquired by a process described later.

端末SAM固有情報124には、端末SAM識別子141、端末SAM公開鍵の署名142、端末SAM公開鍵143、および端末SAM秘密鍵144が含まれている。端末SAM識別子141は、端末SAM42を識別する(すなわち、端末SAMクライアント11を識別する)識別子であり、端末SAM42のそれぞれに固有である。すなわち、端末SAM識別子141によれば、端末SAMクライアント11−1乃至端末SAMクライアント11−3を識別することができる。端末SAM公開鍵の署名142は、サーバ14が、端末SAM42が認定機関に設定されていることを検証するための署名である。端末SAM公開鍵143と端末SAM秘密鍵144は、公開秘密鍵ロジック122を用いて実行される処理(後述する処理)で生成される、端末SAM42の公開鍵と秘密鍵である。端末SAM公開鍵143と端末SAM秘密鍵144は鍵ペアであり、端末SAM秘密鍵144で署名したデータは、端末SAM公開鍵143によってのみ、そのデータが正当であるかを検証することができる。端末SAM公開鍵143で暗号化したデータは、端末SAM秘密鍵144によってのみ復号することができ、逆に、端末SAM秘密鍵144で暗号化したデータは、端末SAM公開鍵143によってのみ復号することができる。また、端末SAM秘密鍵144を保持する端末SAM42は、その秘密鍵を他へ漏らさない機能を有する。   The terminal SAM unique information 124 includes a terminal SAM identifier 141, a terminal SAM public key signature 142, a terminal SAM public key 143, and a terminal SAM private key 144. The terminal SAM identifier 141 is an identifier for identifying the terminal SAM 42 (that is, identifying the terminal SAM client 11), and is unique to each terminal SAM 42. That is, according to the terminal SAM identifier 141, the terminal SAM client 11-1 to the terminal SAM client 11-3 can be identified. The signature 142 of the terminal SAM public key is a signature for the server 14 to verify that the terminal SAM 42 is set as an authorized organization. The terminal SAM public key 143 and the terminal SAM secret key 144 are a public key and a secret key of the terminal SAM 42 that are generated by a process (a process described later) executed using the public secret key logic 122. The terminal SAM public key 143 and the terminal SAM private key 144 are a key pair, and it is possible to verify whether the data signed by the terminal SAM private key 144 is valid only by the terminal SAM public key 143. Data encrypted with the terminal SAM public key 143 can be decrypted only with the terminal SAM private key 144. Conversely, data encrypted with the terminal SAM private key 144 can be decrypted only with the terminal SAM public key 143. Can do. The terminal SAM 42 that holds the terminal SAM secret key 144 has a function of not leaking the secret key to others.

スクリプト実行情報125は、スクリプトを実行するための情報である。例えば、スクリプトフォルダ126に格納されているスクリプト153を実行するための情報である。   The script execution information 125 is information for executing a script. For example, it is information for executing the script 153 stored in the script folder 126.

スクリプトフォルダ126には、サーバID151、スクリプトID152が含まれ、さらにサーバID151、スクリプトID152に関連付けられてスクリプト153が含まれている。サーバID151は、サーバ証明書フォルダ123に含まれるサーバIDと基本的に同様である。すなわち、サーバ14−1に付されたサーバIDであれば、サーバID131とサーバID151は同じとなる。スクリプトID152は、スクリプト153を識別するための、同じサーバIDのスクリプトにおいて一意のIDである。これらのスクリプトフォルダ126に記憶される情報は、後述する処理でサーバ14から取得される情報である。スクリプトフォルダ126には、サーバID151、スクリプトID152、およびスクリプト153の組み合わせが複数(スクリプトの個数分)登録される。   The script folder 126 includes a server ID 151 and a script ID 152, and further includes a script 153 associated with the server ID 151 and the script ID 152. The server ID 151 is basically the same as the server ID included in the server certificate folder 123. That is, if the server ID is assigned to the server 14-1, the server ID 131 and the server ID 151 are the same. The script ID 152 is a unique ID in scripts with the same server ID for identifying the script 153. The information stored in the script folder 126 is information acquired from the server 14 in the process described later. In the script folder 126, a plurality of combinations (the number of scripts) of the server ID 151, the script ID 152, and the script 153 are registered.

端末SAM共通情報127には、認定機関公開鍵161とエンコード手順162が含まれている。認定機関公開鍵161は、認定機関13が配布する認定機関13の公開鍵である。エンコード手順162は、認定機関13と端末SAM42との間であらかじめ定められた(例えば、製造メーカによって定められた)エンコード手順であり、端末SAM42の製造時に格納される情報である。すなわち、端末SAM共通情報127は、あらかじめ端末SAM42に設定されている情報である。   The terminal SAM common information 127 includes an authorized organization public key 161 and an encoding procedure 162. The certification authority public key 161 is a public key of the certification authority 13 distributed by the certification authority 13. The encoding procedure 162 is an encoding procedure determined in advance between the accreditation organization 13 and the terminal SAM 42 (for example, determined by the manufacturer), and is information stored when the terminal SAM 42 is manufactured. That is, the terminal SAM common information 127 is information set in the terminal SAM 42 in advance.

ログフォルダ128には、ログ171が含まれている。このログ171は、スクリプトの実行結果である。より具体的には、ログ171としては、スクリプトの実行結果に時刻情報と署名が付加された、スクリプト実行結果付加情報が記憶される。   The log folder 128 includes a log 171. This log 171 is a script execution result. More specifically, the script 171 stores script execution result additional information in which time information and a signature are added to the script execution result.

すなわち、図5において、外部入出力ロジック121、公開秘密鍵ロジック122、端末SAM固有情報124の端末SAM識別子141、スクリプト実行情報125、端末SAM共通情報127の認定機関公開鍵161、および端末SAM共通情報127のエンコード手順162が、あらかじめ記憶部78に記憶されており、その他のサーバ証明書フォルダ123(サーバID131、サーバ公開鍵132、およびURL133)、端末SAM固有情報124の端末SAM公開鍵の署名142、端末SAM公開鍵143、および端末SAM秘密鍵144、スクリプトフォルダ126(サーバID151、スクリプトID152、およびスクリプト153)、並びにログフォルダ128(ログ171)は、適宜以下の処理において記憶部78に記憶される。   That is, in FIG. 5, external input / output logic 121, public secret key logic 122, terminal SAM identifier 141 of terminal SAM specific information 124, script execution information 125, authorized authority public key 161 of terminal SAM common information 127, and terminal SAM common The encoding procedure 162 of the information 127 is stored in the storage unit 78 in advance, the other server certificate folder 123 (server ID 131, server public key 132, and URL 133), and the signature of the terminal SAM public key of the terminal SAM specific information 124. 142, the terminal SAM public key 143, the terminal SAM private key 144, the script folder 126 (server ID 151, script ID 152, and script 153), and the log folder 128 (log 171) are appropriately stored in the storage unit 78 in the following processing. Is done.

次に、図3の端末SAM42の機能的構成例を説明する。図7は、図3の端末SAM42の機能的構成例を示すブロック図である。なお、図7の機能的構成は、図4の端末SAMクライアント11のCPU71が、記憶部78に記憶された図5の情報を用いて各種の処理を実行することで実現される。   Next, a functional configuration example of the terminal SAM 42 in FIG. 3 will be described. FIG. 7 is a block diagram illustrating a functional configuration example of the terminal SAM 42 of FIG. 7 is implemented by the CPU 71 of the terminal SAM client 11 of FIG. 4 executing various processes using the information of FIG. 5 stored in the storage unit 78.

図7において、端末SAM42には、入力部201、主制御部202、鍵ペア生成部203、エンコード部204、署名処理部205、検証処理部206、暗号化部207、復号部208、スクリプト実行部209、および出力部210が設けられている。   7, the terminal SAM 42 includes an input unit 201, a main control unit 202, a key pair generation unit 203, an encoding unit 204, a signature processing unit 205, a verification processing unit 206, an encryption unit 207, a decryption unit 208, and a script execution unit. 209 and an output unit 210 are provided.

入力部201は、データの入力を受け付け、受け付けたデータを主制御部202に供給する。例えば、入力部201は、ICカードリーダライタアンテナ43から供給されたデータや、制御端末41から供給されたデータを受け付け、これを主制御部202に供給する。入力部201は、図5を用いて説明した外部入出力ロジック121に対応している。より具体的には、入力部201は、図5の外部入出力ロジック121をCPU71(図4)が実行することで実現される。   The input unit 201 receives data input and supplies the received data to the main control unit 202. For example, the input unit 201 receives data supplied from the IC card reader / writer antenna 43 and data supplied from the control terminal 41 and supplies the data to the main control unit 202. The input unit 201 corresponds to the external input / output logic 121 described with reference to FIG. More specifically, the input unit 201 is realized by the CPU 71 (FIG. 4) executing the external input / output logic 121 of FIG.

主制御部202は、各部を制御する。鍵ペア生成部203は、主制御部202からの制御に基づいて、端末SAM公開鍵143と端末SAM秘密鍵144(図5)のペアを生成する。鍵ペア生成部203は、公開秘密鍵ロジック122の鍵ペア生成手順193(図6)をCPU71(図4)が実行することで実現される。エンコード部204は、主制御部202からの制御に基づいて、データを所定の方式でエンコードする。エンコード部204は、あらかじめ製造メーカによって設定された方式でデータをエンコードするものであり、図5を用いて説明したエンコード手順162に沿った処理をCPU71(図4)が実行することで実現される。   The main control unit 202 controls each unit. The key pair generation unit 203 generates a pair of the terminal SAM public key 143 and the terminal SAM secret key 144 (FIG. 5) based on the control from the main control unit 202. The key pair generation unit 203 is realized by the CPU 71 (FIG. 4) executing the key pair generation procedure 193 (FIG. 6) of the public / private key logic 122. The encoding unit 204 encodes data by a predetermined method based on the control from the main control unit 202. The encoding unit 204 encodes data by a method set in advance by the manufacturer, and is realized by the CPU 71 (FIG. 4) executing the processing according to the encoding procedure 162 described with reference to FIG. .

署名処理部205は、主制御部202からの制御に基づいて、所定のデータに対する署名を生成する。例えば、端末SAM秘密鍵144を用いて、所定のデータの署名を生成する。署名処理部205は、公開秘密鍵ロジック122の署名手順194(図6)に沿った処理をCPU71(図4)が実行することで実現される。検証処理部206は、主制御部202からの制御に基づいて、署名を検証する処理を実行する。検証処理部206は、公開秘密鍵ロジック122の検証手順195(図6)に沿った処理をCPU71(図4)が実行することで実現される。   The signature processing unit 205 generates a signature for predetermined data based on the control from the main control unit 202. For example, a signature of predetermined data is generated using the terminal SAM private key 144. The signature processing unit 205 is realized by the CPU 71 (FIG. 4) executing processing in accordance with the signature procedure 194 (FIG. 6) of the public secret key logic 122. The verification processing unit 206 executes processing for verifying the signature based on the control from the main control unit 202. The verification processing unit 206 is realized by the CPU 71 (FIG. 4) executing processing according to the verification procedure 195 (FIG. 6) of the public secret key logic 122.

暗号化部207は、主制御部202からの制御に基づいて、データを暗号化する。暗号化部207は、公開秘密鍵ロジック122の暗号化手順191(図6)に沿った処理をCPU71(図4)が実行することで実現される。復号部208は、主制御部202からの制御に基づいて、暗号化されたデータを復号する。復号部208は、公開秘密鍵ロジック122の復号手順192(図6)に沿った処理をCPU71(図4)が実行することで実現される。   The encryption unit 207 encrypts data based on the control from the main control unit 202. The encryption unit 207 is realized by the CPU 71 (FIG. 4) executing processing according to the encryption procedure 191 (FIG. 6) of the public secret key logic 122. The decrypting unit 208 decrypts the encrypted data based on the control from the main control unit 202. The decryption unit 208 is realized by the CPU 71 (FIG. 4) executing processing in accordance with the decryption procedure 192 (FIG. 6) of the public secret key logic 122.

スクリプト実行部209は、主制御部202からの制御に基づいて、スクリプトを実行する。例えば、スクリプト実行部209は、主制御部202からの制御に基づいて、記憶部78(図5)に記憶されたスクリプト153(図5)を実行する。スクリプト実行部209は、スクリプト実行情報125(図5)に基づく処理をCPU71(図4)が実行することで実現される。   The script execution unit 209 executes a script based on the control from the main control unit 202. For example, the script execution unit 209 executes the script 153 (FIG. 5) stored in the storage unit 78 (FIG. 5) based on the control from the main control unit 202. The script execution unit 209 is realized by the CPU 71 (FIG. 4) executing processing based on the script execution information 125 (FIG. 5).

出力部210は、主制御部202からの制御に基づいて、データを出力する。例えば、出力部210は、制御端末41にデータを出力したり、ICカードリーダライタアンテナ43にデータを出力する。出力部210は、図5を用いて説明した外部入出力ロジック121に基づく処理をCPU71(図4)が実行することで実現される。   The output unit 210 outputs data based on the control from the main control unit 202. For example, the output unit 210 outputs data to the control terminal 41 or outputs data to the IC card reader / writer antenna 43. The output unit 210 is realized by the CPU 71 (FIG. 4) executing processing based on the external input / output logic 121 described with reference to FIG.

図8は、図1の認定機関13のハードウエアの構成例を示すブロック図である。   FIG. 8 is a block diagram illustrating a hardware configuration example of the certification authority 13 of FIG.

CPU251、ROM252、およびRAM253は、内部バス254を介して相互に接続されている。この内部バス254にはまた、入出力インターフェース255も接続されている。   The CPU 251, ROM 252, and RAM 253 are connected to each other via an internal bus 254. An input / output interface 255 is also connected to the internal bus 254.

CPU251は、ROM252に記憶されているプログラム、または、記憶部258からRAM253にロードされたプログラムに従って各種の処理を実行する。RAM253にはまた、CPU251が各種の処理を実行する上で必要なデータなどが適宜記憶される。   The CPU 251 executes various processes according to a program stored in the ROM 252 or a program loaded from the storage unit 258 to the RAM 253. The RAM 253 also appropriately stores data necessary for the CPU 251 to execute various processes.

入出力インターフェース255には、キーボード、マウスなどよりなる入力部256、CRT,LCD、スピーカなどよりなる出力部257、ハードディスクなどより構成される記憶部258、モデム、ターミナルアダプタなどより構成される通信部259が接続されている。通信部259は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行なう。   The input / output interface 255 includes an input unit 256 including a keyboard and a mouse, an output unit 257 including a CRT, an LCD, and a speaker, a storage unit 258 including a hard disk, and a communication unit including a modem and a terminal adapter. 259 is connected. The communication unit 259 performs communication processing via various networks including a telephone line and CATV.

入出力インターフェース255にはまた、必要に応じてドライブ261が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア271が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部258にインストールされる。   A drive 261 is also connected to the input / output interface 255 as necessary, and a removable medium 271 composed of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted, and a computer program read therefrom is Installed in the storage unit 258 as necessary.

図9は、図8の記憶部258に記憶される情報の例を説明する図である。   FIG. 9 is a diagram illustrating an example of information stored in the storage unit 258 of FIG.

記憶部258には、認定機関13が本実施の形態に記載された処理を実行するために利用される情報として、外部入出力ロジック301、公開秘密鍵ロジック302、認定機関情報303、端末SAM証明書フォルダ304、デコード手順305が記憶されている。   The storage unit 258 stores external input / output logic 301, public secret key logic 302, certification authority information 303, terminal SAM certificate as information used by the certification authority 13 to execute the processing described in the present embodiment. A document folder 304 and a decoding procedure 305 are stored.

外部入出力ロジック301は、外部入出力に関するインターフェース処理を実行するためのロジックである。   The external input / output logic 301 is a logic for executing interface processing related to external input / output.

公開秘密鍵ロジック302は、暗号化、復号、署名、検証、および鍵ペア生成などの処理を実行するためのロジックである。公開鍵ロジック302の詳細な構成は、上述した図6と同様であるのでその説明を省略するが、以下においては、図6を、公開秘密鍵ロジック302としても引用する。認定機関13により扱われる公開鍵は、認定機関13の公開鍵であり、秘密鍵は認定機関13の秘密鍵である。   The public secret key logic 302 is a logic for executing processes such as encryption, decryption, signature, verification, and key pair generation. Since the detailed configuration of the public key logic 302 is the same as that of FIG. 6 described above, the description thereof is omitted. In the following, FIG. 6 is also referred to as the public secret key logic 302. The public key handled by the certification authority 13 is the public key of the certification authority 13, and the secret key is the secret key of the certification authority 13.

認定機関情報303には、認定機関公開鍵311、認定機関秘密鍵312が含まれている。認定機関公開鍵311は、図5の認定機関公開鍵161と同じである。より具体的には、認定機関13で生成された認定機関公開鍵311が、端末SAM42に送信され、記憶されたものが、図5の認定機関公開鍵161である。認定機関公開鍵311と認定機関秘密鍵312は鍵ペアであり、認定機関秘密鍵312で署名したデータは、認定機関公開鍵311によってのみ、そのデータが正当であるかを検証することができる。認定機関公開鍵311で暗号化したデータは、認定機関秘密鍵312によってのみ復号することができ、逆に、認定機関秘密鍵312で暗号化したデータは、認定機関公開鍵311によってのみ復号することができる。また、認定機関秘密鍵312を保持する認定機関13は、その秘密鍵を他へ漏らさない機能を有する。   The certification body information 303 includes a certification body public key 311 and a certification body private key 312. The certification authority public key 311 is the same as the certification authority public key 161 of FIG. More specifically, the certification authority public key 311 generated by the certification authority 13 is transmitted to the terminal SAM 42 and stored therein is the certification authority public key 161 of FIG. The certification authority public key 311 and the certification authority private key 312 are a key pair, and it is possible to verify whether the data signed by the certification authority private key 312 is valid only by the certification authority public key 311. Data encrypted with the certification authority public key 311 can be decrypted only with the certification authority private key 312, and conversely, data encrypted with the certification authority private key 312 can be decrypted only with the certification authority public key 311. Can do. The certification authority 13 that holds the certification authority private key 312 has a function of not leaking the secret key to others.

端末SAM証明書フォルダ304には、端末SAM識別子321と端末SAM公開鍵322が含まれる。この端末SAM識別子321によれば、端末SAMクライアント11を特定することができる。すなわち、端末SAM識別子321によれば、同じ端末SAM識別子141(図5)を有する端末SAM42を特定することができる。端末SAM公開鍵322は、端末SAM識別子321に対応して記憶される、端末SAM識別子321により特定される端末SAM42の公開鍵である。すなわち、図9の端末SAM識別子321が図5の端末SAM識別子141と同じである場合、図9の端末SAM公開鍵322と図5の端末SAM公開鍵143は同じとなる。なお、これらの端末SAM識別子321と端末SAM公開鍵322は、後述する処理で取得される。認定機関13が複数の端末SAM42に対して署名を発行した場合には、その発行した数だけ、端末SAM識別子321と端末SAM公開鍵322が登録される。   The terminal SAM certificate folder 304 includes a terminal SAM identifier 321 and a terminal SAM public key 322. According to this terminal SAM identifier 321, the terminal SAM client 11 can be specified. That is, according to the terminal SAM identifier 321, the terminal SAM 42 having the same terminal SAM identifier 141 (FIG. 5) can be specified. The terminal SAM public key 322 is a public key of the terminal SAM 42 specified by the terminal SAM identifier 321 stored in correspondence with the terminal SAM identifier 321. That is, when the terminal SAM identifier 321 in FIG. 9 is the same as the terminal SAM identifier 141 in FIG. 5, the terminal SAM public key 322 in FIG. 9 and the terminal SAM public key 143 in FIG. 5 are the same. Note that the terminal SAM identifier 321 and the terminal SAM public key 322 are acquired by processing to be described later. When the certification authority 13 issues signatures to a plurality of terminal SAMs 42, the terminal SAM identifier 321 and the terminal SAM public key 322 are registered as many as the issued numbers.

デコード手順305は、認定機関13と端末SAM42との間であらかじめ定められた(例えば、製造メーカによって定められた)デコード手順であり、認定機関13の製造時に格納される情報である。このデコード手順305は、図5の端末SAM共通情報127のエンコード手順162に対応している。すなわち、エンコード手順162を用いてエンコードされたデータは、デコード手順305によりデコードすることができる。このエンコード、デコードの方法は、認定機関13と端末SAM42の間で規定された独自の手順であるので、この方法でエンコードされたデータを、外部の機器が入手したとしても、容易にエンコードすることはできない。これにより、認定機関13と端末SAM42の間の秘匿性を高めることができる。   The decoding procedure 305 is a decoding procedure determined in advance between the accreditation body 13 and the terminal SAM 42 (for example, determined by a manufacturer), and is information stored when the accreditation body 13 is manufactured. This decoding procedure 305 corresponds to the encoding procedure 162 of the terminal SAM common information 127 in FIG. In other words, the data encoded using the encoding procedure 162 can be decoded by the decoding procedure 305. This encoding / decoding method is a unique procedure defined between the accreditation body 13 and the terminal SAM 42. Therefore, even if the data encoded by this method is obtained by an external device, it can be encoded easily. I can't. Thereby, the confidentiality between the certification | authentication organization 13 and terminal SAM42 can be improved.

すなわち、図9において、外部入出力ロジック301、公開秘密鍵ロジック302、認定機関情報303、およびデコード手順305が、あらかじめ記憶部258に記憶されており、端末SAM証明書フォルダ304(端末SAM識別子321と端末SAM公開鍵322)は、適宜以下の処理において記憶部258に記憶される。   That is, in FIG. 9, the external input / output logic 301, the public / private key logic 302, the certification authority information 303, and the decoding procedure 305 are stored in the storage unit 258 in advance, and the terminal SAM certificate folder 304 (terminal SAM identifier 321). And the terminal SAM public key 322) are appropriately stored in the storage unit 258 in the following processing.

次に、図8の認定機関13の機能的構成例を説明する。図10は、図8の認定機関13の機能的構成例を示すブロック図である。なお、図10の機能的構成は、図8の認定機関13のCPU251が、記憶部258に記憶された図9の情報を用いて各種の処理を実行することで実現される。   Next, a functional configuration example of the accreditation body 13 in FIG. 8 will be described. FIG. 10 is a block diagram illustrating a functional configuration example of the accreditation body 13 of FIG. The functional configuration of FIG. 10 is realized by the CPU 251 of the certification authority 13 of FIG. 8 executing various processes using the information of FIG. 9 stored in the storage unit 258.

図10において、認定機関13には、入力部351、主制御部352、デコード手順353、署名処理部354、および出力部355が設けられている。   10, the certification authority 13 is provided with an input unit 351, a main control unit 352, a decoding procedure 353, a signature processing unit 354, and an output unit 355.

入力部351は、データの入力を受け付け、受け付けたデータを主制御部352に供給する。例えば、入力部351は、ネットワーク12を介して端末SAMクライアント11から供給されたデータや、サーバ14から供給されたデータを受け付け、これを主制御部352に供給する。入力部351は、図9を用いて説明した外部入出力ロジック301に対応している。より具体的には、入力部351は、図9の外部入出力ロジック301をCPU251(図8)が実行することで実現される。   The input unit 351 accepts data input and supplies the accepted data to the main control unit 352. For example, the input unit 351 receives data supplied from the terminal SAM client 11 or data supplied from the server 14 via the network 12 and supplies the data to the main control unit 352. The input unit 351 corresponds to the external input / output logic 301 described with reference to FIG. More specifically, the input unit 351 is realized by the CPU 251 (FIG. 8) executing the external input / output logic 301 of FIG.

主制御部352は、各部を制御する。デコード部353は、主制御部352からの制御に基づいて、エンコードされているデータを所定の方式でデコードする。デコード部353は、あらかじめ製造メーカによって設定された方式でデータをデコードするものであり、図9を用いて説明したデコード手順305に沿った処理をCPU251(図8)が実行することで実現される。   The main control unit 352 controls each unit. The decoding unit 353 decodes the encoded data by a predetermined method based on the control from the main control unit 352. The decoding unit 353 decodes data by a method set in advance by the manufacturer, and is realized by the CPU 251 (FIG. 8) executing the processing according to the decoding procedure 305 described with reference to FIG. .

署名処理部354は、主制御部352からの制御に基づいて、所定のデータの署名を生成する。例えば、署名処理部354は、認定機関秘密鍵312を用いて、所定のデータの署名を生成する。署名処理部354は、公開秘密鍵ロジック302の署名手順194(図6)に沿った処理をCPU251(図8)が実行することで実現される。   The signature processing unit 354 generates a signature for predetermined data based on the control from the main control unit 352. For example, the signature processing unit 354 generates a signature of predetermined data using the certification authority private key 312. The signature processing unit 354 is realized by the CPU 251 (FIG. 8) executing processing according to the signature procedure 194 (FIG. 6) of the public secret key logic 302.

出力部355は、主制御部352からの制御に基づいて、データを出力する。例えば、出力部355は、ネットワーク12を介して端末SAMクライアント11やサーバ14にデータを出力する。出力部355は、図9を用いて説明した外部入出力ロジック301に基づく処理をCPU25(図8)が実行することで実現される。   The output unit 355 outputs data based on the control from the main control unit 352. For example, the output unit 355 outputs data to the terminal SAM client 11 and the server 14 via the network 12. The output unit 355 is realized by the CPU 25 (FIG. 8) executing processing based on the external input / output logic 301 described with reference to FIG. 9.

図11は、図1のサーバ14のハードウエアの構成例を示すブロック図である。   FIG. 11 is a block diagram illustrating a hardware configuration example of the server 14 of FIG.

CPU371、ROM372、およびRAM373は、内部バス374を介して相互に接続されている。この内部バス374にはまた、入出力インターフェース375も接続されている。   The CPU 371, ROM 372, and RAM 373 are connected to each other via an internal bus 374. An input / output interface 375 is also connected to the internal bus 374.

CPU371は、ROM372に記憶されているプログラム、または、記憶部378からRAM373にロードされたプログラムに従って各種の処理を実行する。RAM373にはまた、CPU371が各種の処理を実行する上において必要なデータなどが適宜記憶される。   The CPU 371 executes various processes according to a program stored in the ROM 372 or a program loaded from the storage unit 378 to the RAM 373. The RAM 373 also stores data necessary for the CPU 371 to execute various processes.

入出力インターフェース375には、キーボード、マウスなどよりなる入力部376、CRT,LCD、スピーカなどよりなる出力部377、ハードディスクなどより構成される記憶部378、モデム、ターミナルアダプタなどより構成される通信部379が接続されている。通信部379は、電話回線やCATVを含む各種のネットワークを介しての通信処理を行なう。   The input / output interface 375 includes an input unit 376 including a keyboard and a mouse, an output unit 377 including a CRT, an LCD, and a speaker, a storage unit 378 including a hard disk, a communication unit including a modem, a terminal adapter, and the like. 379 is connected. The communication unit 379 performs communication processing via various networks including a telephone line and CATV.

入出力インターフェース375にはまた、必要に応じてドライブ381が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア391が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部378にインストールされる。   A drive 381 is also connected to the input / output interface 375 as necessary, and a removable medium 391 composed of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted, and a computer program read therefrom is It is installed in the storage unit 378 as necessary.

図12は、図11の記憶部378に記憶される情報の例を説明する図である。   FIG. 12 is a diagram illustrating an example of information stored in the storage unit 378 of FIG.

記憶部378には、サーバ14が本実施の形態に記載された処理を実行するために利用される情報として、外部入出力ロジック401、公開秘密鍵ロジック402、プログラム実行情報403、サービス提供者固有情報404、スクリプトフォルダ405、端末SAM証明書フォルダ406、およびサービス提供者共通情報407が記憶されている。   The storage unit 378 includes, as information used for the server 14 to execute the processing described in the present embodiment, the external input / output logic 401, the public secret key logic 402, the program execution information 403, and the service provider specific Information 404, script folder 405, terminal SAM certificate folder 406, and service provider common information 407 are stored.

外部入出力ロジック401は、外部入出力に関するインターフェース処理を実行するためのロジックである。   The external input / output logic 401 is a logic for executing interface processing related to external input / output.

公開秘密鍵ロジック402は、暗号化、復号、署名、検証、および鍵ペア生成などの処理を実行するためのロジックである。公開鍵ロジック402の詳細な構成は、上述した図6と同様であるのでその説明を省略するが、以下においては、図6を、公開秘密鍵ロジック402としても引用する。サーバ14(サービス提供者)により扱われる公開鍵は、サーバ14の公開鍵であり、秘密鍵はサーバ14の秘密鍵である。   The public secret key logic 402 is a logic for executing processing such as encryption, decryption, signature, verification, and key pair generation. Since the detailed configuration of the public key logic 402 is the same as that of FIG. 6 described above, the description thereof is omitted, but in the following, FIG. 6 is also referred to as the public secret key logic 402. The public key handled by the server 14 (service provider) is the public key of the server 14, and the secret key is the secret key of the server 14.

プログラム実行情報403は、プログラムを実行するための情報である。例えば、スクリプトフォルダ405に格納されているプログラム423を実行するための情報である。   The program execution information 403 is information for executing a program. For example, it is information for executing the program 423 stored in the script folder 405.

サービス提供者固有情報404には、URL411、サーバ公開鍵412、サーバ秘密鍵413が含まれている。このURL411は、サーバ14(例えば、サーバ14−1のサービス提供者A)にアクセスするためのURLである。URL411が、図5のURL133と同じである場合、サーバ公開鍵412も、図5のサーバ公開鍵132と同じである。すなわち、URLとサーバ公開鍵は対応している。具体的には、図1のサーバ14−1にアクセスするためのURLとサーバ公開鍵は対になっている。サーバ秘密鍵413は、サーバ14の秘密鍵である。なお、サーバ秘密鍵413は、個々のサーバ(サービス提供者)によってそれぞれ異なる秘密鍵とされている。すなわち、図1のサーバ14−1のサーバ秘密鍵、サーバ14−2のサーバ秘密鍵、およびサーバ14−3のサーバ秘密鍵は、それぞれ異なる秘密鍵とされる。これらのサービス提供者固有情報404は、あらかじめ記憶されている。サーバ公開鍵412とサーバ秘密鍵413は鍵ペアであり、サーバ秘密鍵413で署名したデータは、サーバ公開鍵412によってのみ、そのデータが正当であるかを検証することができる。サーバ公開鍵412で暗号化したデータは、サーバ秘密鍵413によってのみ復号することができ、逆に、サーバ秘密鍵413で暗号化したデータは、サーバ公開鍵412によってのみ復号することができる。また、サーバ秘密鍵413を保持するサーバ14は、その秘密鍵を他へ漏らさない機能を有する。   The service provider specific information 404 includes a URL 411, a server public key 412, and a server secret key 413. This URL 411 is a URL for accessing the server 14 (for example, the service provider A of the server 14-1). When the URL 411 is the same as the URL 133 in FIG. 5, the server public key 412 is the same as the server public key 132 in FIG. That is, the URL and the server public key correspond to each other. Specifically, the URL for accessing the server 14-1 in FIG. 1 and the server public key are paired. The server secret key 413 is a secret key of the server 14. The server secret key 413 is a secret key that is different for each server (service provider). That is, the server secret key of the server 14-1, the server secret key of the server 14-2, and the server secret key of the server 14-3 in FIG. The service provider specific information 404 is stored in advance. The server public key 412 and the server private key 413 are a key pair, and it is possible to verify whether the data signed by the server private key 413 is valid only by the server public key 412. Data encrypted with the server public key 412 can be decrypted only with the server private key 413, and conversely, data encrypted with the server private key 413 can be decrypted only with the server public key 412. The server 14 that holds the server secret key 413 has a function of not leaking the secret key to others.

スクリプトフォルダ405には、スクリプトID421、スクリプト422、およびプログラム423が含まれている。スクリプトID421には、スクリプト422とプログラム423が対応付けられている。すなわち、スクリプトID421が特定された場合、そのスクリプトIDに対応するスクリプト422またはプログラム423に対して所定の処理が実行される。例えば、実行要求とともにスクリプトIDが送信されてきた場合、そのスクリプトIDに対応するプログラムがサーバ14において実行される。これらのスクリプトフォルダ405の内容は、適宜、サービス提供者Aによって追加、更新されるものであったり、あらかじめ記憶されているものである。すなわち、スクリプトID421、スクリプト422およびプログラム423の組み合わせは、複数登録されることがある。   The script folder 405 includes a script ID 421, a script 422, and a program 423. The script 421 and the program 423 are associated with the script ID 421. That is, when the script ID 421 is specified, a predetermined process is executed on the script 422 or the program 423 corresponding to the script ID. For example, when a script ID is transmitted together with the execution request, a program corresponding to the script ID is executed on the server 14. The contents of these script folders 405 are added or updated as appropriate by the service provider A, or are stored in advance. That is, a plurality of combinations of the script ID 421, the script 422, and the program 423 may be registered.

端末SAM証明書フォルダ406には、端末SAM識別子431と端末SAM公開鍵432が含まれている。この端末SAM証明書フォルダ406は、図9の端末SAM証明書フォルダ304に対応しており、同じ端末SAMクライアント11の端末SAM証明書フォルダであれば、その内容は同一である。なお、これらの端末SAM識別子321と端末SAM公開鍵322は、後述する処理で取得される。また、情報の提供を行なう端末SAM42の数の分だけ、端末SAM識別子321と端末SAM公開鍵322の組み合わせが登録される。   The terminal SAM certificate folder 406 includes a terminal SAM identifier 431 and a terminal SAM public key 432. The terminal SAM certificate folder 406 corresponds to the terminal SAM certificate folder 304 of FIG. 9, and the contents are the same as long as the terminal SAM certificate folder of the same terminal SAM client 11. Note that the terminal SAM identifier 321 and the terminal SAM public key 322 are acquired by processing to be described later. Further, combinations of terminal SAM identifiers 321 and terminal SAM public keys 322 are registered for the number of terminals SAM 42 that provide information.

サービス提供者共通情報407には、認定機関公開鍵441が含まれている。認定機関公開鍵441は、上述した図9の認定機関公開鍵311と同じものである。より具体的には、認定機関13で生成された認定機関公開鍵311が、端末SAM42に送信され、記憶された図5の認定機関公開鍵161と、サーバ14に送信され、記憶された図12の認定機関公開鍵441である。   The service provider common information 407 includes an authorized organization public key 441. The certification authority public key 441 is the same as the certification authority public key 311 of FIG. 9 described above. More specifically, the certification authority public key 311 generated by the certification authority 13 is transmitted to the terminal SAM 42 and stored in the certification authority public key 161 of FIG. 5 and the server 14 and stored in FIG. The certification authority public key 441.

すなわち、図12において、外部入出力ロジック401、公開秘密鍵ロジック402、プログラム実行情報403、サービス提供者固有情報404、スクリプトフォルダ405、およびサービス提供者共通情報407が、あらかじめ記憶部378に記憶されており、端末SAM証明書フォルダ406(端末SAM識別子431と端末SAM公開鍵432)は、適宜以下の処理において記憶部78に記憶される。   That is, in FIG. 12, external input / output logic 401, public secret key logic 402, program execution information 403, service provider specific information 404, script folder 405, and service provider common information 407 are stored in advance in storage unit 378. The terminal SAM certificate folder 406 (terminal SAM identifier 431 and terminal SAM public key 432) is appropriately stored in the storage unit 78 in the following processing.

次に、図11のサーバ14の機能的構成例を説明する。図13は、図11のサーバ14の機能的構成例を示すブロック図である。なお、図13の機能的構成は、図11のサーバ14のCPU371が、記憶部378に記憶された図12の情報を用いて各種の処理を実行することで実現される。   Next, a functional configuration example of the server 14 in FIG. 11 will be described. FIG. 13 is a block diagram illustrating a functional configuration example of the server 14 of FIG. The functional configuration in FIG. 13 is realized by the CPU 371 of the server 14 in FIG. 11 executing various processes using the information in FIG. 12 stored in the storage unit 378.

図13において、サーバ14には、入力部451、主制御部452、鍵ペア生成部453、署名処理部454、検証処理部455、暗号化部456、復号部457、プログラム実行部458、および出力部459が設けられている。   In FIG. 13, the server 14 includes an input unit 451, a main control unit 452, a key pair generation unit 453, a signature processing unit 454, a verification processing unit 455, an encryption unit 456, a decryption unit 457, a program execution unit 458, and an output. A portion 459 is provided.

入力部451は、データの入力を受け付け、受け付けたデータを主制御部452に供給する。例えば、入力部451は、ネットワーク12を介して端末SAMクライアント11から供給されたデータや、認定機関13から供給されたデータを受け付け、これを主制御部452に供給する。入力部451は、図12を用いて説明した外部入出力ロジック401に対応している。より具体的には、入力部451は、図12の外部入出力ロジック401をCPU371(図11)が実行することで実現される。   The input unit 451 receives data input and supplies the received data to the main control unit 452. For example, the input unit 451 receives data supplied from the terminal SAM client 11 via the network 12 and data supplied from the certification authority 13 and supplies the data to the main control unit 452. The input unit 451 corresponds to the external input / output logic 401 described with reference to FIG. More specifically, the input unit 451 is realized by the CPU 371 (FIG. 11) executing the external input / output logic 401 of FIG.

主制御部452は、各部を制御する。鍵ペア生成部453は、主制御部452からの制御に基づいて、サーバの公開鍵(サーバ公開鍵412)とサーバの秘密鍵(サーバ秘密鍵413)のペアを生成する。鍵ペア生成部453は、公開秘密鍵ロジック402の鍵ペア生成手順193(図6)をCPU371(図11)が実行することで実現される。   The main control unit 452 controls each unit. The key pair generation unit 453 generates a pair of the server public key (server public key 412) and the server secret key (server secret key 413) based on the control from the main control unit 452. The key pair generation unit 453 is realized by the CPU 371 (FIG. 11) executing the key pair generation procedure 193 (FIG. 6) of the public / private key logic 402.

署名処理部454は、主制御部452からの制御に基づいて、所定のデータの署名を生成する。例えば、署名処理部454は、サーバ秘密鍵を用いて、所定のデータの署名を生成する。署名処理部454は、公開秘密鍵ロジック402の署名手順194(図6)に沿った処理をCPU371(図11)が実行することで実現される。検証処理部455は、主制御部452からの制御に基づいて、署名を検証する処理を実行する。検証処理部455は、公開秘密鍵ロジック402の検証手順195(図6)に沿った処理をCPU371(図11)が実行することで実現される。   The signature processing unit 454 generates a signature of predetermined data based on the control from the main control unit 452. For example, the signature processing unit 454 generates a signature of predetermined data using the server private key. The signature processing unit 454 is realized by the CPU 371 (FIG. 11) executing processing in accordance with the signature procedure 194 (FIG. 6) of the public secret key logic 402. The verification processing unit 455 executes processing for verifying the signature based on the control from the main control unit 452. The verification processing unit 455 is realized by the CPU 371 (FIG. 11) executing a process according to the verification procedure 195 (FIG. 6) of the public secret key logic 402.

暗号化部456は、主制御部452からの制御に基づいて、データを暗号化する。暗号化部456は、公開秘密鍵ロジック402の暗号化手順191(図6)に沿った処理をCPU371(図4)が実行することで実現される。復号部457は、主制御部452からの制御に基づいて、暗号化されたデータを復号する。復号部457は、公開秘密鍵ロジック402の復号手順192(図6)に沿った処理をCPU371(図11)が実行することで実現される。   The encryption unit 456 encrypts data based on the control from the main control unit 452. The encryption unit 456 is realized by the CPU 371 (FIG. 4) executing processing in accordance with the encryption procedure 191 (FIG. 6) of the public secret key logic 402. The decryption unit 457 decrypts the encrypted data based on the control from the main control unit 452. The decryption unit 457 is realized by the CPU 371 (FIG. 11) executing a process according to the decryption procedure 192 (FIG. 6) of the public secret key logic 402.

プログラム実行部458は、主制御部452からの制御に基づいてプログラムを実行する。例えば、プログラム実行部458は、主制御部452からの制御に基づいて、記憶部378(図12)に記憶されたプログラム423を実行する。プログラム実行部458は、プログラム実行情報403(図12)に基づく処理をCPU371(図11)が実行することで実現される。   The program execution unit 458 executes a program based on control from the main control unit 452. For example, the program execution unit 458 executes the program 423 stored in the storage unit 378 (FIG. 12) based on the control from the main control unit 452. The program execution unit 458 is realized by the CPU 371 (FIG. 11) executing processing based on the program execution information 403 (FIG. 12).

出力部459は、主制御部452からの制御に基づいて、データを出力する。例えば、出力部459は、ネットワーク12を介して端末SAMクライアント11にデータを出力したり、認定機関13にデータを出力する。出力部459は、図12を用いて説明した外部入出力ロジック401に基づく処理をCPU371(図11)が実行することで実現される。   The output unit 459 outputs data based on the control from the main control unit 452. For example, the output unit 459 outputs data to the terminal SAM client 11 via the network 12 or outputs data to the certification authority 13. The output unit 459 is realized by the CPU 371 (FIG. 11) executing processing based on the external input / output logic 401 described with reference to FIG.

次に、図14を参照して、以下の処理で行われる署名や検証、暗号化の詳細な例について説明する。なお、以下、本明細書では、E(A,B)を、鍵AでデータBを暗号化することを表わし、D(P,Q)を、鍵PでデータQを復号することを表わすものとする。また、暗号と復号は、どちらか前者を後者に作用させるという表現で統一することができる。さらに、H(M)は、データMをハッシュ関数プログラムで圧縮したことを表わすものとする。   Next, detailed examples of signature, verification, and encryption performed in the following processing will be described with reference to FIG. Hereinafter, in this specification, E (A, B) represents that the data B is encrypted with the key A, and D (P, Q) represents that the data Q is decrypted with the key P. And Also, encryption and decryption can be unified with the expression that the former acts on the latter. Further, H (M) represents that the data M is compressed by the hash function program.

図14において、送り手側(a)は、送り手側(a)の秘密鍵Ksa、および受け手側(b)の公開鍵Kpbを有しており、受け手側(b)は、受け手側(b)の秘密鍵Ksb、および送り手側(a)の公開鍵Kpaを有している。ここで、送り手側(a)で、文書(M)501を送信する場合について説明する。   In FIG. 14, the sender side (a) has a secret key Ksa on the sender side (a) and a public key Kpb on the receiver side (b), and the receiver side (b) ) Private key Ksb and the sender's public key Kpa. Here, a case where the document (M) 501 is transmitted on the sender side (a) will be described.

送り手側では、まず、文書(M)501を、公開鍵暗号化方式を用いて送信する。具体的には、ステップS1において、送り手は、受け手の公開鍵Kpbで文書(M)501を暗号化する。すなわち、送り手は「E(Kpb,M)」を演算する。そして、送り手は、ステップS2において、暗号文「E(Kpb,M)」を受け手に送信する。   On the sender side, first, the document (M) 501 is transmitted using the public key encryption method. Specifically, in step S1, the sender encrypts the document (M) 501 with the recipient's public key Kpb. That is, the sender calculates “E (Kpb, M)”. In step S2, the sender transmits the ciphertext “E (Kpb, M)” to the sender.

受け手は、この暗号文「E(Kpb,M)」を受け取ると、ステップS3において、これを、受け手の秘密鍵Ksbで復号し(「D(Ksb,E(Kpb,M))」を演算し)、もとの文書(M)501を得る。また、受け手は、ステップS3の処理で得たもとの文書(M)501を、ステップS4においてハッシュ関数プログラムで圧縮する(メッセージダイジェスト「H(M)」を演算する)。   Upon receiving this ciphertext “E (Kpb, M)”, the receiver decrypts it with the receiver's private key Ksb (“D (Ksb, E (Kpb, M))”) in step S3. ), An original document (M) 501 is obtained. In addition, the recipient compresses the original document (M) 501 obtained by the processing in step S3 with a hash function program in step S4 (calculates the message digest “H (M)”).

一方、送り手は、ステップS5において、文書(M)501を、ハッシュ関数プログラムで圧縮し(メッセージダイジェスト「H(M)」を演算し)、ステップS6において、メッセージダイジェスト「H(M)」を、送り手の秘密鍵Ksaで暗号化する。すなわち、送り手は「E(Ksa,H(M))」を演算する。この「E(Ksa,H(M))」がいわゆる、文書(M)501の送り手によるデジタル署名である。送り手は、デジタル署名「E(Ksa,H(M))」を、ステップS7において、受け手に送信する。受け手は、このデジタル署名「E(Ksa,H(M))」を受け取ると、ステップS8において、送り手の公開鍵Kpaでこれを復号し(D(Kpa,E(Ksa,H(M)))を演算し)、メッセージダイジェストH(M)を得る。   On the other hand, in step S5, the sender compresses the document (M) 501 with a hash function program (calculates the message digest “H (M)”), and in step S6, sends the message digest “H (M)”. And the sender's private key Ksa. That is, the sender calculates “E (Ksa, H (M))”. This “E (Ksa, H (M))” is a so-called digital signature by the sender of the document (M) 501. The sender transmits the digital signature “E (Ksa, H (M))” to the receiver in step S7. Upon receiving this digital signature “E (Ksa, H (M))”, the receiver decrypts it with the sender's public key Kpa in step S8 (D (Kpa, E (Ksa, H (M))). ) To obtain a message digest H (M).

そして、受け手は、ステップS9において、ステップS4の処理で得られたメッセージダイジェストH(M)と、ステップS8の処理で得られたメッセージダイジェストH(M)とを比較し、一致した場合に、メッセージMが正当であると判定する。すなわち、ステップS4の処理で得られたメッセージダイジェストH(M)と、ステップS8の処理で得られたメッセージダイジェストH(M)とが一致した場合、デジタル署名が間違いなく送り手が作成し送信したものと認識される。   In step S9, the receiver compares the message digest H (M) obtained in step S4 with the message digest H (M) obtained in step S8. It is determined that M is valid. That is, if the message digest H (M) obtained in the process of step S4 matches the message digest H (M) obtained in the process of step S8, the digital signature is definitely created and transmitted by the sender. It is recognized as a thing.

一般的に、ハッシュ関数プログラムで作成した圧縮データ(メッセージダイジェスト)から、もとの情報を割り出すのは不可能であるので、図14の処理のように、デジタル署名を利用することで、送り手の否認、受け手の改ざん、平文(文書)の改ざんを防止することができる。また、受け手は送り手の身元を確認することができる。   Generally, since it is impossible to determine the original information from the compressed data (message digest) created by the hash function program, the sender can be obtained by using a digital signature as in the process of FIG. Refusal, falsification of recipients, and plain text (documents) can be prevented. The receiver can also confirm the identity of the sender.

すなわち、受け手が送り手の公開鍵でデジタル署名を復号できたということは(ステップS8)、そのデジタル署名は、送り手の秘密鍵で暗号化されたものということがわかる。換言すれば、そのデジタル署名のもととなるメッセージダイジェストH(M)も送り手により生成されたものということがわかる。そして、このメッセージダイジェストH(M)と、受け手が受信した情報から生成したメッセージダイジェストH(M)(ステップS4)が一致すれば、ステップS4でメッセージダイジェストH(M)を生成した場合に元となったもとの文書(M)は、間違いなく送り手のものである。   That is, the fact that the receiver was able to decrypt the digital signature with the sender's public key (step S8), it can be seen that the digital signature was encrypted with the sender's private key. In other words, it can be seen that the message digest H (M) that is the basis of the digital signature is also generated by the sender. If the message digest H (M) and the message digest H (M) (step S4) generated from the information received by the recipient match, the message digest H (M) is generated when the message digest H (M) is generated in step S4. The original document (M) is definitely that of the sender.

なお、以下においては、図14の処理のように詳細な説明は省略し、デジタル署名、その認証については簡単に説明していくが、実際には、図14に示されるような処理が実行されるものとする。また、以下において、署名付きメッセージは、図15に示される構成とされるものとして説明する。   In the following, detailed description will be omitted as in the process of FIG. 14 and the digital signature and its authentication will be briefly described. In practice, the process shown in FIG. 14 is executed. Shall be. In the following description, it is assumed that the signed message has the configuration shown in FIG.

次に、デジタル署名の構成についてさらに説明する。図15は、署名付きメッセージの簡単な構成を示す図である。   Next, the configuration of the digital signature will be further described. FIG. 15 is a diagram showing a simple configuration of a signed message.

図15において、もとの文書(送信した文書)をメッセージMとした場合、メッセージMの署名は、メッセージMをハッシュ関数プログラムで圧縮し(H(M)を演算し)、その値を、送信元の秘密鍵Ksで暗号化したものとなる。すなわち、E(Ks,H(M))がメッセージMの署名となる。一般的には、このメッセージMとともにメッセージMの署名があわせて送られることで、そのメッセージMの認証度を高めている。   In FIG. 15, when the original document (sent document) is the message M, the signature of the message M is obtained by compressing the message M with a hash function program (calculating H (M)) and sending the value to the message M It is encrypted with the original secret key Ks. That is, E (Ks, H (M)) is the signature of the message M. Generally, the signature of the message M is sent together with the message M, so that the authentication level of the message M is increased.

なお、以下においては、メッセージMと送信元の秘密鍵Ksとを、図15の例を用いて適宜説明する。   In the following, the message M and the source secret key Ks will be described as appropriate using the example of FIG.

次に、図16のフローチャートを参照して、図7の端末SAM42(端末SAMクライアント11)が、図10の認定機関13で認定して貰う処理について説明する。なお、この処理は、端末SAM42と認定機関13により実行される処理であり、端末SAM42に認定の指令が入力されたとき、または、最初に端末SAM42(端末SAMクライアント11)の電源がオンされたとき開始される。   Next, with reference to the flowchart of FIG. 16, a process in which the terminal SAM 42 (terminal SAM client 11) of FIG. This process is a process executed by the terminal SAM 42 and the accreditation organization 13, and when an authorization command is input to the terminal SAM 42 or when the power of the terminal SAM 42 (terminal SAM client 11) is first turned on. When it starts.

ステップS31において、端末SAM42の鍵ペア生成部203は、主制御部202からの制御に基づいて、端末SAM公開鍵143と端末SAM秘密鍵144を生成する。生成された端末SAM公開鍵143と端末SAM秘密鍵144は、図5の端末SAM固有情報124に記憶される。   In step S31, the key pair generation unit 203 of the terminal SAM 42 generates a terminal SAM public key 143 and a terminal SAM secret key 144 based on the control from the main control unit 202. The generated terminal SAM public key 143 and terminal SAM private key 144 are stored in the terminal SAM unique information 124 of FIG.

ステップS32において、エンコード部204は、主制御部202からの制御に基づいて、端末SAM公開鍵143と端末SAM識別子141(あらかじめ図5の記憶部78に記憶されている、端末SAM固有情報124の端末SAM識別子141)を、認定鍵公開鍵161でエンコードする。この認定機関公開鍵161は、あらかじめ端末SAM42が取得した(または製造時に格納された)認定機関13の公開鍵である。   In step S32, the encoding unit 204, based on the control from the main control unit 202, the terminal SAM public key 143 and the terminal SAM identifier 141 (the terminal SAM specific information 124 stored in the storage unit 78 in FIG. 5 in advance). The terminal SAM identifier 141) is encoded with the authorized key public key 161. The certification authority public key 161 is a public key of the certification authority 13 acquired in advance by the terminal SAM 42 (or stored at the time of manufacture).

ステップS33において、出力部210は、主制御部202からの制御に基づいて、エンコードされた端末SAM公開鍵143および端末SAM識別子141と、エンコードされていない端末SAM識別子141とを、ネットワーク12を介して認定機関13に送信する。すなわち、エンコードされていない端末識別子141と、ステップS32の処理でエンコードされた結果とが送信される。なお、本実施の形態では、必要最低限の情報のみしか、送信する情報として記載していないが、実際には、エンコードされていない端末識別子141と、ステップS32の処理でエンコードされた結果の他にも、適宜情報が送信されるようにしてもよい。このことは、以下の処理においても同様である。   In step S33, the output unit 210 transmits the encoded terminal SAM public key 143 and the terminal SAM identifier 141 and the unencoded terminal SAM identifier 141 via the network 12 based on the control from the main control unit 202. To the accreditation body 13. That is, the unencoded terminal identifier 141 and the result encoded in step S32 are transmitted. In this embodiment, only the minimum necessary information is described as information to be transmitted, but actually, in addition to the terminal identifier 141 that is not encoded and the result encoded in the process of step S32. In addition, information may be transmitted as appropriate. The same applies to the following processing.

これに対して、認定機関13の入力部351は、ステップS51において、エンコードされた端末SAM公開鍵143および端末SAM識別子141と、端末SAM識別子141とを、ネットワーク12を介して受信する(受け付ける)。   On the other hand, the input unit 351 of the certification authority 13 receives (accepts) the encoded terminal SAM public key 143, the terminal SAM identifier 141, and the terminal SAM identifier 141 via the network 12 in step S51. .

ステップS52において、認定機関13のデコード部353は、エンコードされている端末SAM公開鍵143および端末SAM識別子141を、認定機関秘密鍵312でデコードする。ステップS32の処理で行われるエンコードと、このステップS52の処理で行われるデコードは対応しており、独自に定められたエンコード、およびデコード方法であるので、外部の他の機器によりエンコードされたデータが取得された場合においても、データの解析を防ぐことができる。   In step S <b> 52, the decoding unit 353 of the certification authority 13 decodes the encoded terminal SAM public key 143 and terminal SAM identifier 141 with the certification authority private key 312. The encoding performed in the process of step S32 corresponds to the decoding performed in the process of step S52. Since the encoding and the decoding method are uniquely determined, data encoded by other external devices is not included. Even when acquired, data analysis can be prevented.

ステップS53において、主制御部352は、デコードして得られた端末SAM識別子141と、受信した端末SAM識別子141とを確認する。具体的には、デコードして得られた端末SAM識別子141と、ステップS51の処理で受信した端末SAM識別子141とが一致している場合には、処理をステップS54に進め、一致していない場合には、認定していない場合には、確認できなかったものとして処理を終了する(一致していない場合の処理の図示は省略する)。この処理は、端末SAM42が正常な(認定すべき)端末であるかを確認する処理である。   In step S53, the main control unit 352 confirms the terminal SAM identifier 141 obtained by decoding and the received terminal SAM identifier 141. Specifically, if the terminal SAM identifier 141 obtained by decoding matches the terminal SAM identifier 141 received in step S51, the process proceeds to step S54. If it is not certified, the process is terminated as being unconfirmed (illustration of the process when they do not match is omitted). This process is a process for confirming whether the terminal SAM 42 is a normal (to be authorized) terminal.

ステップS54において、主制御部352は、端末SAM公開鍵143と端末SAM識別子141とを、端末SAM公開鍵322と端末SAM識別子321として、端末SAM証明書フォルダ304に登録する。   In step S54, the main control unit 352 registers the terminal SAM public key 143 and the terminal SAM identifier 141 in the terminal SAM certificate folder 304 as the terminal SAM public key 322 and the terminal SAM identifier 321.

ステップS55において、署名処理部354は、主制御部352からの制御に基づいて、認定機関秘密鍵312を用いて、端末SAM公開鍵の署名(認定機関13による端末SAM公開鍵に対する署名)を生成する。図15の例の場合、端末SAM公開鍵322がメッセージMであり、送信元の秘密鍵Ksが認定機関秘密鍵312となる。すなわち、署名処理部354は、端末SAM公開鍵322に対してハッシュ関数プログラムで圧縮した結果を、認定機関秘密鍵312で暗号化することで、端末SAM公開鍵の署名を生成する。   In step S55, the signature processing unit 354 generates a terminal SAM public key signature (signature for the terminal SAM public key by the certification authority 13) using the certification authority private key 312 based on the control from the main control unit 352. To do. In the example of FIG. 15, the terminal SAM public key 322 is the message M, and the source private key Ks is the certification authority private key 312. That is, the signature processing unit 354 generates the signature of the terminal SAM public key by encrypting the result obtained by compressing the terminal SAM public key 322 with the hash function program with the certification authority private key 312.

ステップS56において、出力部355は、主制御部352からの制御に基づいて、生成された端末SAM公開鍵の署名を、ネットワーク12を介して端末SAMクライアント11の端末SAM42に送信する。   In step S <b> 56, the output unit 355 transmits the generated signature of the terminal SAM public key to the terminal SAM 42 of the terminal SAM client 11 via the network 12 based on the control from the main control unit 352.

これに対して端末SAM42の入力部201は、ステップS34において、端末SAM公開鍵の署名を受信する(入力を受け付ける)。   On the other hand, the input unit 201 of the terminal SAM 42 receives the signature of the terminal SAM public key (accepts input) in step S34.

ステップS35において、主制御部202は、受信された端末SAM公開鍵の署名を、端末SAM公開鍵の署名142として、端末SAM固有情報124に登録する。このとき、端末SAM固有情報124には、端末SAM識別子141と端末SAM公開鍵の署名142とがペアで保持される。その後処理は終了される。   In step S35, the main control unit 202 registers the received signature of the terminal SAM public key in the terminal SAM specific information 124 as the signature 142 of the terminal SAM public key. At this time, the terminal SAM unique information 124 holds the terminal SAM identifier 141 and the terminal SAM public key signature 142 as a pair. Thereafter, the process is terminated.

図16の処理により、端末SAM42は、自分自身を証明する端末SAM公開鍵の署名142を認定機関13により発行して貰うことができる。また、端末SAM42と認定機関13との間には独自のエンコード、およびデコード方法が設定されているので、認定機関13は、端末SAM42の能力が正常であることを認識し、署名を発行することができる。   With the processing in FIG. 16, the terminal SAM 42 can issue a signature 142 of the terminal SAM public key certifying itself by the certification authority 13. In addition, since unique encoding and decoding methods are set between the terminal SAM 42 and the accreditation body 13, the accreditation body 13 recognizes that the terminal SAM 42 has normal capabilities and issues a signature. Can do.

なお、図16の例では、認定機関13が署名を発行して送信するようにしたが、端末SAM42の証明書を発行するようにしてもよい(以下の処理においても同様)。この場合、認定機関13は、ステップS55で生成した端末SAM公開鍵の署名と、端末SAM識別子とを合わせて、端末SAM証明書として送信し、端末SAM42は、この証明書を登録する。   In the example of FIG. 16, the certification authority 13 issues and transmits a signature, but a certificate of the terminal SAM 42 may be issued (the same applies to the following processing). In this case, the certification authority 13 combines the signature of the terminal SAM public key generated in step S55 and the terminal SAM identifier, and transmits it as a terminal SAM certificate, and the terminal SAM 42 registers this certificate.

次に、図17のフローチャートを参照して、図13のサーバ14(サービス提供者)が、図7の端末SAM42(端末SAMクライアント11)が認定されていることを検証する処理を説明する。なお、この処理は、端末SAM42とサーバ14(サービス提供者)により実行される処理であり、端末SAM42に、サービス提供者との間で認定の検証するよう指令が入力されたとき、または、サーバ14から認定の検証が求められたとき、開始される。   Next, with reference to the flowchart in FIG. 17, a process in which the server 14 (service provider) in FIG. 13 verifies that the terminal SAM 42 (terminal SAM client 11) in FIG. 7 is authorized will be described. This process is a process executed by the terminal SAM 42 and the server 14 (service provider), and when a command is input to the terminal SAM 42 to verify authorization with the service provider, or the server Starts when certification verification is requested from 14.

ステップS91において、端末SAM42の主制御部202は、図5の記憶部78の端末SAM固有情報124から、端末SAM識別子141、端末SAM公開鍵143、および端末SAM公開鍵の署名142を読み出す。   In step S91, the main control unit 202 of the terminal SAM 42 reads the terminal SAM identifier 141, the terminal SAM public key 143, and the terminal SAM public key signature 142 from the terminal SAM unique information 124 of the storage unit 78 of FIG.

ステップS92において、出力部210は、読み出された端末SAM識別子141、端末SAM公開鍵143、および端末SAM公開鍵の署名142を、ネットワーク12を介してサービス提供者であるサーバ14に送信する。すなわち、端末SAM公開鍵の署名142、端末SAM識別子141、および端末SAM公開鍵143の、計3つの情報(を少なくとも含む情報)がサーバ14に送信される。   In step S <b> 92, the output unit 210 transmits the read terminal SAM identifier 141, terminal SAM public key 143, and terminal SAM public key signature 142 to the server 14 that is a service provider via the network 12. That is, a total of three pieces of information (information including at least) of the terminal SAM public key signature 142, the terminal SAM identifier 141, and the terminal SAM public key 143 are transmitted to the server 14.

これに対して、サーバ14(サービス提供者)の入力部451は、ステップS71において、端末SAM識別子141、端末SAM公開鍵143、および端末SAM公開鍵の署名142を受信する。   On the other hand, the input unit 451 of the server 14 (service provider) receives the terminal SAM identifier 141, the terminal SAM public key 143, and the terminal SAM public key signature 142 in step S71.

ステップS72において、検証処理部455は、主制御部452からの制御に基づいて、端末SAM公開鍵143と認定機関公開鍵161(あらかじめ記憶部78に記憶されている認定機関公開鍵161)を用いて、端末SAM公開鍵の署名142を検証する。具体的には、図14を用いて上述したように、検証処理部455は、端末SAM公開鍵の署名142を認定機関公開鍵161で復号したものと、端末SAM公開鍵143をハッシュ関数プログラムで圧縮した値が一致するか否かを判定することで検証を行なう。すなわち、検証処理部455は、主制御部452からの制御に基づいて、端末SAM公開鍵の署名142と認定機関公開鍵161を用いて、端末SAM公開鍵143が正当であることを検証する。   In step S72, the verification processing unit 455 uses the terminal SAM public key 143 and the certification authority public key 161 (the certification authority public key 161 stored in advance in the storage unit 78) based on the control from the main control unit 452. Thus, the signature 142 of the terminal SAM public key is verified. Specifically, as described above with reference to FIG. 14, the verification processing unit 455 decrypts the signature 142 of the terminal SAM public key with the certification authority public key 161 and the terminal SAM public key 143 using a hash function program. Verification is performed by determining whether or not the compressed values match. That is, the verification processing unit 455 verifies that the terminal SAM public key 143 is valid based on the control from the main control unit 452 by using the terminal SAM public key signature 142 and the certification authority public key 161.

ステップS73において、検証処理部455は、端末SAM公開鍵143が正当であることが検証されたか否かを判定する。すなわち、検証処理部455は、端末SAM公開鍵の署名を認定機関公開鍵161で復号したものと、端末SAM公開鍵143をハッシュ関数プログラムで圧縮した値が一致する場合に、端末SAM公開鍵143が正当であることが検証されたと判定し、端末SAM公開鍵の署名142を認定機関公開鍵161で復号したものと、端末SAM公開鍵143をハッシュ関数プログラムで圧縮した値が一致しない場合に、正当であることが検証されなかったと判定する。正当であるとことが検証されたと判定された場合、ステップS74において、主制御部452は、端末SAM識別子141と端末SAM公開鍵143とを、端末SAM証明書フォルダ406(図12)に、端末SAM識別子431と端末SAM公開鍵432として登録する。   In step S73, the verification processing unit 455 determines whether or not the terminal SAM public key 143 has been verified to be valid. That is, when the signature of the terminal SAM public key is decrypted with the certification authority public key 161 and the value obtained by compressing the terminal SAM public key 143 with the hash function program matches, the verification processing unit 455 matches the terminal SAM public key 143. That the terminal SAM public key signature 142 is decrypted with the certification authority public key 161 does not match the value obtained by compressing the terminal SAM public key 143 with the hash function program, It is determined that the validity has not been verified. If it is determined that the verification is valid, in step S74, the main control unit 452 transfers the terminal SAM identifier 141 and the terminal SAM public key 143 to the terminal SAM certificate folder 406 (FIG. 12). The SAM identifier 431 and the terminal SAM public key 432 are registered.

ステップS73において、正当でない(正当であることが検証されなかった)と判定された場合、またはステップS74の処理の後、処理は終了される。   In step S73, when it is determined that it is not valid (it has not been verified that it is valid), or after the process of step S74, the process ends.

図16と図17を経て(図16のステップS53で確認できなかった場合と、ステップS73でNOと判定された場合を除いて)、サービス提供者であるサーバ14は、端末SAM42が、認定機関13によって認定された端末であることを検証することができる。この処理を実行した上で、サーバ14が、端末SAM証明書フォルダ406(図12)に、端末SAM識別子431と端末SAM公開鍵432とを登録することで、サーバ14は、安全に、鍵やスクリプトを認証済みの端末SAMのみに配信することができる。この具体的な例を、以下に順次説明する。   Through FIG. 16 and FIG. 17 (except when it cannot be confirmed in step S53 of FIG. 16 and when NO is determined in step S73), the server 14 serving as the service provider has the terminal SAM 42 It is possible to verify that the terminal is certified by 13. After executing this processing, the server 14 registers the terminal SAM identifier 431 and the terminal SAM public key 432 in the terminal SAM certificate folder 406 (FIG. 12), so that the server 14 can safely and securely The script can be distributed only to the authenticated terminal SAM. Specific examples will be sequentially described below.

最初に図18のフローチャートを参照して、図7の端末SAM42が図13のサーバ14からスクリプトIDを取得し、登録する処理について説明する。なお、この処理は、端末SAM42が、サービス提供者であるサーバ14からスクリプトをダウンロードするために、スクリプトをダウンロードする前提の処理として実行される処理である。   First, a process in which the terminal SAM 42 in FIG. 7 acquires and registers a script ID from the server 14 in FIG. 13 will be described with reference to the flowchart in FIG. This process is a process executed as a premise process for downloading a script in order for the terminal SAM 42 to download the script from the server 14 as a service provider.

ステップS111において、サーバ14の鍵ペア生成部453は、サーバ公開鍵412とサーバ秘密鍵413を生成する。生成されたサーバ公開鍵412とサーバ秘密鍵413は、図12のサービス提供者固有情報404に記憶される。   In step S111, the key pair generation unit 453 of the server 14 generates a server public key 412 and a server secret key 413. The generated server public key 412 and server secret key 413 are stored in the service provider specific information 404 of FIG.

ステップS112において、出力部459は、主制御部452からの制御に基づいて、サーバのURL411、サーバ公開鍵412、およびサーバ14が提供するスクリプトIDを送信する。具体的には、主制御部452は、サーバのURL411をサービス提供者固有情報404から読み出すとともに、サーバが提供するスクリプトID421をスクリプトフォルダ405から読み出し、これと、ステップS111の処理で生成したサーバ公開鍵412とをあわせて、送信するよう出力部459を制御する。このとき、スクリプトフォルダ405に複数のスクリプトID421(スクリプト422とプログラム423に対応付けられた複数のスクリプトID421)が登録されている場合には、主制御部452は、複数のスクリプトID421を送信するよう制御する。出力部459は、これらのサーバのURL411、サーバ公開鍵412、およびサーバが提供する(複数の)スクリプトIDを、ネットワーク12を介して端末SAM42(端末SAMクライアント11)に送信する。   In step S112, the output unit 459 transmits the server URL 411, the server public key 412, and the script ID provided by the server 14 based on the control from the main control unit 452. Specifically, the main control unit 452 reads the server URL 411 from the service provider specific information 404, reads the script ID 421 provided by the server from the script folder 405, and the server disclosure generated in the process of step S111. The output unit 459 is controlled to transmit together with the key 412. At this time, if a plurality of script IDs 421 (a plurality of script IDs 421 associated with the script 422 and the program 423) are registered in the script folder 405, the main control unit 452 transmits the plurality of script IDs 421. Control. The output unit 459 transmits the URL 411 of the server, the server public key 412, and the script ID (s) provided by the server to the terminal SAM 42 (terminal SAM client 11) via the network 12.

これに対して、端末SAM42の入力部201(図7)は、ステップS131において、サーバのURL411、サーバ公開鍵412、およびサーバ14が提供する(複数の)スクリプトIDを受信する。   In contrast, in step S131, the input unit 201 (FIG. 7) of the terminal SAM 42 receives the server URL 411, the server public key 412, and the script IDs provided by the server 14.

ステップS132において、主制御部202は、サーバIDを発行する。このサーバIDは、端末SAM42の内部で、サーバ14を一意に特定するためのIDである。   In step S132, the main control unit 202 issues a server ID. This server ID is an ID for uniquely identifying the server 14 within the terminal SAM 42.

ステップS133において、主制御部202は、サーバ証明書フォルダ123に、ステップS132の処理で発行したサーバID、ステップS131の処理で受信したサーバ公開鍵412、およびサーバのURL411を、サーバID131、サーバ公開鍵132、およびURL133として登録する。このとき、サーバID131、サーバ公開鍵132およびURL133が対応付けられて登録されるので、複数のサービス提供者からサービスを受ける場合においても、端末SAM42は対応することができる。   In step S133, the main control unit 202 stores the server ID issued in the process of step S132, the server public key 412 received in the process of step S131, and the server URL 411 in the server certificate folder 123. The key 132 and the URL 133 are registered. At this time, since the server ID 131, the server public key 132, and the URL 133 are registered in association with each other, the terminal SAM 42 can cope with services received from a plurality of service providers.

ステップS134において、主制御部202は、スクリプトフォルダ126に、サーバIDとスクリプトIDを対応する数だけ登録する。具体的には、ステップS132の処理で発行したサーバIDと、ステップS131の処理で受信されたスクリプトIDとを、サーバID151、スクリプトID152として、スクリプトフォルダ126に登録する。例えば、ステップS131の処理でスクリプトIDを3つ受信した場合(すなわち、サービス提供者がスクリプトを3つ提供する場合)、サーバIDにそれぞれのスクリプトIDが対応付けられたものが合計3つ登録される。このとき、サーバID151は全て同じサーバIDとされる。換言すれば、1つのサーバ14との間で図18の処理が実行された場合にサーバ証明書フォルダ123に登録されるサーバID131と、スクリプトフォルダ126に登録されるサーバID151は同じサーバID(ステップS132で発行されたサーバID)である。その後、処理は終了される。   In step S <b> 134, the main control unit 202 registers a server ID and a script ID in the script folder 126 by the corresponding number. Specifically, the server ID issued in the process of step S132 and the script ID received in the process of step S131 are registered in the script folder 126 as a server ID 151 and a script ID 152. For example, when three script IDs are received in the process of step S131 (that is, when the service provider provides three scripts), a total of three script IDs associated with each script ID are registered. The At this time, the server IDs 151 are all the same server ID. In other words, the server ID 131 registered in the server certificate folder 123 and the server ID 151 registered in the script folder 126 when the processing of FIG. 18 is executed with one server 14 are the same server ID (step Server ID issued in S132). Thereafter, the process is terminated.

図18の処理により、サーバID131(サーバID151と同じID)、サーバ公開鍵132、およびサーバ14のURL133が対応付けられるとともに、サーバID151(サーバID131と同じID)とスクリプトID152が対応付けられるため、端末SAM42において、スクリプトID152に対応するサーバID151(サーバID131)を特定することができ、また、サーバID131(サーバID151)に対応するサーバ公開鍵132、サーバ14のURL133を特定することができる。   18, the server ID 131 (the same ID as the server ID 151), the server public key 132, and the URL 133 of the server 14 are associated with each other, and the server ID 151 (the same ID as the server ID 131) and the script ID 152 are associated with each other. In the terminal SAM 42, the server ID 151 (server ID 131) corresponding to the script ID 152 can be specified, the server public key 132 corresponding to the server ID 131 (server ID 151), and the URL 133 of the server 14 can be specified.

次に、図19と図20のフローチャートを参照して、図7の端末SAM42が、サービス提供者である図13のサーバ14からスクリプトをダウンロードする場合の処理について説明する。なお、この処理は、端末SAMクライアント11の管理者(例えば、端末SAMクライアント11を管理している店舗の店長)が、端末SAM42に対して、スクリプトのダウンロード(更新)を指令したとき開始される。また、図18の処理の後実行される処理である。   Next, processing when the terminal SAM 42 in FIG. 7 downloads a script from the server 14 in FIG. 13 as a service provider will be described with reference to the flowcharts in FIGS. 19 and 20. This process is started when an administrator of the terminal SAM client 11 (for example, a store manager who manages the terminal SAM client 11) instructs the terminal SAM 42 to download (update) a script. . Further, this process is executed after the process of FIG.

ステップS171において、端末SAM42の主制御部202(図7)は、端末SAM42の管理者からの、サーバIDとスクリプトIDの指定と、(スクリプトの)ダウンロードの要求を、図7の入力部201(図4の入力部76)を介して受け付ける。すなわち、端末SAM42の管理者は、ダウンロードするスクリプトのサーバIDとスクリプトIDの指定とともに、ダウンロードの要求を、端末SAM42に対して指令する。サーバIDやスクリプトIDは、上述した図18の処理で登録されたものである。   In step S171, the main control unit 202 (FIG. 7) of the terminal SAM 42 sends a server ID and script ID designation and a (script) download request from the administrator of the terminal SAM 42 to the input unit 201 (FIG. 7). It is received via the input unit 76) in FIG. That is, the administrator of the terminal SAM 42 instructs the download request to the terminal SAM 42 together with the server ID and script ID of the script to be downloaded. The server ID and script ID are registered in the process of FIG.

ステップS172において、端末SAM42の署名処理部206は、指定されたスクリプトIDと端末SAM秘密鍵を用いて、スクリプトIDの署名(端末SAM42によるスクリプトIDに対する署名)を生成する。例えば、ステップS171の処理で指定されたスクリプトIDが、図5のスクリプトID152である場合、署名処理部206は、スクリプトID152をハッシュ関数プログラムで圧縮するとともに端末SAM秘密鍵144で暗号化することで、スクリプトIDの署名を生成する。図15の例の場合、メッセージMがスクリプトID152であり、送信元の秘密鍵Ksが端末SAM秘密鍵144である。   In step S172, the signature processing unit 206 of the terminal SAM 42 generates a script ID signature (signature for the script ID by the terminal SAM 42) using the specified script ID and terminal SAM private key. For example, when the script ID specified in the process of step S171 is the script ID 152 of FIG. 5, the signature processing unit 206 compresses the script ID 152 with the hash function program and encrypts it with the terminal SAM private key 144. Generate a signature for the script ID. In the example of FIG. 15, the message M is the script ID 152, and the source secret key Ks is the terminal SAM secret key 144.

ステップS173において、出力部210は、主制御部202からの制御に基づいて、サーバIDにより特定されるURLに対して、暗号化した端末SAM識別子およびスクリプトIDと、スクリプトIDの署名とを送信する。すなわち、スクリプトIDの署名と、暗号化された結果(端末識別子とスクリプトID)とが送信される。具体的には、暗号化部207がサーバ公開鍵(ステップS171の処理で指定されたサーバID131に対応するサーバ公開鍵132)を用いて、端末SAM識別子141およびスクリプトID152を暗号化し、出力部210が、ステップS171の処理で指定されたサーバID131(またはサーバID151)により特定されるURL133に対して、暗号化した端末SAM識別子141およびスクリプトID152(ステップS171の処理で指定されたスクリプトID)と、ステップS172の処理で生成されたスクリプトIDの署名とを送信する。   In step S173, based on the control from the main control unit 202, the output unit 210 transmits the encrypted terminal SAM identifier and script ID and the script ID signature to the URL specified by the server ID. . That is, the script ID signature and the encrypted result (terminal identifier and script ID) are transmitted. Specifically, the encryption unit 207 encrypts the terminal SAM identifier 141 and the script ID 152 using the server public key (the server public key 132 corresponding to the server ID 131 specified in the process of step S171), and outputs the output unit 210. For the URL 133 specified by the server ID 131 (or server ID 151) specified in step S171, the encrypted terminal SAM identifier 141 and script ID 152 (script ID specified in step S171), The signature of the script ID generated by the process of step S172 is transmitted.

これに対して、サーバ14の入力部451は、ステップS151において、暗号化された端末SAM識別子141およびスクリプトID152と、スクリプトIDの署名とを受信する。すなわち、このサーバ14のURL411(図12)は、ステップS173の処理で特定されたURL133と同じURLである。そして、復号部457は、サーバ秘密鍵413を用いて、暗号化されている端末SAM識別子141およびスクリプトID152を復号し、端末SAM識別子141とスクリプトID152を得る。   On the other hand, the input unit 451 of the server 14 receives the encrypted terminal SAM identifier 141 and script ID 152 and the signature of the script ID in step S151. That is, the URL 411 (FIG. 12) of the server 14 is the same URL as the URL 133 specified in the process of step S173. Then, the decryption unit 457 decrypts the encrypted terminal SAM identifier 141 and script ID 152 using the server secret key 413, and obtains the terminal SAM identifier 141 and script ID 152.

ステップS152において、主制御部452は、ステップS151の処理で復号して得られた端末SAM識別子141と同じ端末SAM識別子431に対する端末SAM公開鍵432を、端末証明書フォルダ406から取得する。端末SAM証明書フォルダ406に格納されている情報は、図16と図17を参照して説明したように、認定機関13により認定されたものである。   In step S152, the main control unit 452 acquires, from the terminal certificate folder 406, the terminal SAM public key 432 for the terminal SAM identifier 431 that is the same as the terminal SAM identifier 141 obtained by the decryption in step S151. The information stored in the terminal SAM certificate folder 406 has been certified by the certification authority 13 as described with reference to FIGS. 16 and 17.

ステップS153において、検証処理部455は、主制御部452からの制御に基づいて、スクリプトID152と端末SAM公開鍵432を用いて、スクリプトIDの署名を検証する。具体的には、スクリプトID152をハッシュ関数プログラムで圧縮した値を、端末SAM公開鍵432で暗号化したものと、スクリプトIDの署名が一致するか否かにより検証を行なう。すなわち、検証処理部455は、主制御部452からの制御に基づいて、スクリプトIDの署名と端末SAM公開鍵432を用いて、スクリプトIDが正当であることを検証する。   In step S153, the verification processing unit 455 verifies the signature of the script ID using the script ID 152 and the terminal SAM public key 432 based on the control from the main control unit 452. Specifically, verification is performed based on whether or not the signature of the script ID matches the value obtained by compressing the script ID 152 with the hash function program using the terminal SAM public key 432. That is, the verification processing unit 455 verifies that the script ID is valid based on the control from the main control unit 452 using the signature of the script ID and the terminal SAM public key 432.

ステップS154において、検証処理部454は、スクリプトID152が正当であることが検証されたか否かを判定し、正当であることが検証されなかったと判定した場合、処理を終了し、正当であることが検証されたと判定した場合、処理をステップS155に進める。   In step S154, the verification processing unit 454 determines whether or not the script ID 152 has been verified as valid. If the verification processing unit 454 determines that the script ID 152 has not been verified as valid, the verification processing unit 454 terminates the processing and may be valid. When it determines with having been verified, a process is advanced to step S155.

ステップS155において、主制御部452は、スクリプトフォルダ405から、スクリプトID152と同じスクリプトID421に対応するスクリプト422を取得する。例えば、スクリプトフォルダ405に複数のスクリプトIDとそれに対応するスクリプトが登録されていた場合には、主制御部452は、正当であることが検証されたスクリプトID(ステップS151の処理で受信したスクリプトID)と同じスクリプトIDに対応するスクリプトを取得する。   In step S 155, the main control unit 452 acquires a script 422 corresponding to the same script ID 421 as the script ID 152 from the script folder 405. For example, when a plurality of script IDs and corresponding scripts are registered in the script folder 405, the main control unit 452 determines the script ID verified as valid (the script ID received in the process of step S151). The script corresponding to the same script ID as in () is acquired.

ステップS156において、署名処理部454は、主制御部452からの制御に基づいて、取得したスクリプト422とサーバ秘密鍵413を用いて、スクリプトの署名(サーバ14によるスクリプトに対する署名)を生成する。具体的には、取得したスクリプト422をハッシュ関数プログラムで圧縮し、その値をサーバ秘密鍵413で暗号化することで、スクリプトの署名を生成する(図15の例の場合、メッセージMがスクリプト422であり、送信元の秘密鍵Ksがサーバ秘密鍵413である)。なお、スクリプトの署名(サーバ14によるスクリプトに対する署名)は、あらかじめ署名処理部454が生成し、記憶しておくようにし、ステップS156の処理で読み出すようにしてもよい。   In step S156, the signature processing unit 454 generates a script signature (signature for the script by the server 14) using the acquired script 422 and the server private key 413 based on the control from the main control unit 452. Specifically, the acquired script 422 is compressed with a hash function program, and the value is encrypted with the server secret key 413, thereby generating a signature of the script (in the example of FIG. 15, the message M is the script 422). And the source private key Ks is the server private key 413). The signature of the script (signature for the script by the server 14) may be generated and stored in advance by the signature processing unit 454, and may be read out in the process of step S156.

ステップS157において、暗号化部456は、主制御部452からの制御に基づいて、ステップS155の処理で取得したスクリプト422を、端末SAM公開鍵432により暗号化する。   In step S157, the encryption unit 456 encrypts the script 422 acquired in the process of step S155 with the terminal SAM public key 432 based on the control from the main control unit 452.

ステップS158において、出力部459は、主制御部452からの制御に基づいて、ステップS156の処理で生成されたスクリプトの署名と、ステップS157の処理で暗号化されたスクリプトとを、ネットワーク12を介して端末SAM42に送信する。   In step S158, the output unit 459 sends the signature of the script generated by the process of step S156 and the script encrypted by the process of step S157 via the network 12 based on the control from the main control unit 452. To the terminal SAM42.

これに対して、端末SAM42の入力部201は、ステップS174において、主制御部202からの制御に基づいて、スクリプトの署名と、端末SAM公開鍵432により暗号化されたスクリプトを受信する。   On the other hand, the input unit 201 of the terminal SAM 42 receives the script signature and the script encrypted by the terminal SAM public key 432 based on the control from the main control unit 202 in step S174.

ステップS175において、復号部208は、主制御部202からの制御に基づいて、端末SAM公開鍵432により暗号化されたスクリプトを、端末SAM秘密鍵144で復号する。   In step S175, the decrypting unit 208 decrypts the script encrypted with the terminal SAM public key 432 with the terminal SAM private key 144 based on the control from the main control unit 202.

ステップS176において、検証処理部206は、主制御部202からの制御に基づいて、復号して得られたスクリプトと、サーバ公開鍵132(ステップS171の所定で受け付けたサーバID131に対応するサーバ公開鍵132)とを用いて、受信されたスクリプトの署名を検証する。署名の検証の詳細は、図14を用いて上述したので省略する。すなわち、検証処理部206は、主制御部202からの制御に基づいて、スクリプトの署名とサーバ公開鍵132を用いて、スクリプトが正当であることを検証する。   In step S176, the verification processing unit 206 performs decryption based on the control from the main control unit 202 and the server public key 132 (the server public key corresponding to the server ID 131 received in the predetermined step S171). 132) is used to verify the signature of the received script. Details of signature verification have been described above with reference to FIG. That is, the verification processing unit 206 verifies that the script is valid using the signature of the script and the server public key 132 based on the control from the main control unit 202.

ステップS177において、検証処理部454は、スクリプトが正当であることが検証されたか否かを判定し、正当であることが検証されなかったと判定した場合、処理を終了する。正当であることが検証されたと判定された場合、処理はステップS178に進む。   In step S177, the verification processing unit 454 determines whether or not the script is verified to be valid. If it is determined that the script is not verified, the verification processing unit 454 ends the process. If it is determined that the verification is valid, the process proceeds to step S178.

ステップS178において、主制御部202は、正当であることが検証されたスクリプト422を、スクリプトフォルダ126のサーバID151とスクリプトID152に対応したスクリプト153として登録し、処理を終了する。このスクリプト153は、図19のステップS171で指定されたスクリプトIDに対応するスクリプトである。   In step S178, the main control unit 202 registers the script 422 verified as valid as the script 153 corresponding to the server ID 151 and the script ID 152 of the script folder 126, and ends the process. This script 153 is a script corresponding to the script ID specified in step S171 of FIG.

図19と図20の処理により、端末SAM42において、サーバID、スクリプトID、およびスクリプトのダウンロードが要求された場合に、安全、かつ、確実に対応するスクリプトをサービス提供者であるサーバ14から取得することができる。   19 and 20, when the terminal SAM 42 is requested to download a server ID, a script ID, and a script, a safe and surely corresponding script is acquired from the service provider server 14. be able to.

次に、図7の端末SAM42において、スクリプトの実行が指令された場合における処理について説明する。図7の端末SAM42にスクリプトIDの指定とともにスクリプトの実行が指令された場合、スクリプトIDに対応するスクリプトを、端末SAM42がダウンロードしていない場合(すなわち、実行が指令されたスクリプトについて、図19と図20の処理がまだ行われていない場合)や、既に、実行が指令されたスクリプトを端末SAM42がダウンロードしている場合(すなわち、実行が指令されたスクリプトについて、図19と図20の処理が既に行われている場合)が考えられる。前者を図21と図22のフローチャートを参照して説明し、後者を図23のフローチャートを参照して説明する。   Next, processing when the execution of a script is instructed at the terminal SAM 42 in FIG. 7 will be described. When the script execution is instructed to the terminal SAM 42 in FIG. 7 together with the designation of the script ID, the script corresponding to the script ID is not downloaded by the terminal SAM 42 (that is, the script instructed to execute is shown in FIG. When the processing of FIG. 20 has not yet been performed) or when the terminal SAM 42 has already downloaded the script for which execution has been commanded (that is, for the script for which execution has been commanded, the processing of FIG. 19 and FIG. 20 is performed). If already done). The former will be described with reference to the flowcharts of FIGS. 21 and 22, and the latter will be described with reference to the flowchart of FIG.

図21と図22は、端末SAM42にスクリプトの実行が指令された場合であって、まだサーバ14から実行が指令されたスクリプトを取得していない場合における処理を説明するフローチャートである。この処理は、端末SAMクライアント11の管理者(例えば、端末SAMクライアント11を管理している店舗の店長)が、端末SAM42に対して、スクリプトの実行を指令したとき開始される。   FIGS. 21 and 22 are flowcharts for explaining processing in a case where execution of a script is instructed to the terminal SAM 42 and a script instructed to execute from the server 14 has not yet been acquired. This process is started when an administrator of the terminal SAM client 11 (for example, a store manager who manages the terminal SAM client 11) instructs the terminal SAM 42 to execute a script.

端末SAM42の主制御部202(図7)は、ステップS211において、端末SAM42の管理者からの、サーバID、スクリプトID、およびパラメータの指定、並びにスクリプトの実行要求を、入力部201を介して受け付ける。すなわち、端末SAM42の管理者は、実行するスクリプトのサーバID、スクリプトID、およびパラメータの指定とともに、スクリプトの実行要求を、端末SAM42に対して指令する。パラメータとしては、例えば、サービス提供者Aが提供しているICカードの使用と、そのICカードから100円消費することを示す値が指定される。なお、サーバIDやスクリプトIDは、上述した図18の処理で登録されたものである。   In step S211, the main control unit 202 (FIG. 7) of the terminal SAM 42 receives the server ID, script ID, parameter specification, and script execution request from the administrator of the terminal SAM 42 via the input unit 201. . That is, the administrator of the terminal SAM 42 instructs the terminal SAM 42 to execute a script together with the server ID, script ID, and parameters of the script to be executed. As the parameter, for example, a value indicating use of an IC card provided by the service provider A and consumption of 100 yen from the IC card is specified. Note that the server ID and script ID are registered in the process of FIG. 18 described above.

ステップS212において、主制御部202は、スクリプトフォルダ126において、ステップS211の処理で受け付けたサーバIDとスクリプトIDに対応するスクリプトを検索する。図5のスクリプトフォルダ126には、1つのサーバID151とスクリプトID152に対応するスクリプト153しか登録されていないが、実際には、この他に、サーバIDとスクリプトIDのみのもの(すなわち、スクリプトが登録されていないもの)なども複数登録されている。そのため、この処理では、実行が要求されたサーバIDとスクリプトIDに対応するスクリプトが、スクリプトフォルダ126に登録されているか否かが検索される。図21と図22の処理の例では、スクリプトフォルダ126に、サーバIDとスクリプトIDに対応するスクリプトがないので、以下の処理では、そのスクリプトIDに対応する処理を、サービス提供者に対して要求する。   In step S212, the main control unit 202 searches the script folder 126 for a script corresponding to the server ID and script ID received in the process of step S211. Only one script ID 153 corresponding to one server ID 151 and script ID 152 is registered in the script folder 126 in FIG. 5, but actually, only the server ID and script ID (in other words, the script is registered). A number of such items are also registered. Therefore, in this process, it is searched whether or not the script corresponding to the server ID and script ID requested to be executed is registered in the script folder 126. In the example of the processing of FIG. 21 and FIG. 22, the script folder 126 does not have a script corresponding to the server ID and the script ID. Therefore, in the following processing, the processing corresponding to the script ID is requested from the service provider. To do.

ステップS213において、端末SAM42の署名処理部206は、指定されたスクリプトIDと端末SAM秘密鍵144を用いて、スクリプトIDの署名を生成する。この処理は図19のステップS172と同様である。なお、スクリプトIDの署名は、署名処理部206によりあらかじめ生成し、記憶しておくようにしてもよい。この場合、ステップS213の処理で、記憶しておいたスクリプトIDの読み出しが行われる。   In step S213, the signature processing unit 206 of the terminal SAM 42 generates a script ID signature using the designated script ID and the terminal SAM private key 144. This process is the same as step S172 of FIG. The signature of the script ID may be generated in advance by the signature processing unit 206 and stored. In this case, the stored script ID is read out in the process of step S213.

ステップS214において、暗号化部207は、主制御部202からの制御に基づいて、ステップS211の処理で受け付けられたサーバIDに対応するサーバ公開鍵を用いて、スクリプトID、パラメータ、および端末SAM識別子を暗号化する。ステップS211の処理で受け付けられたサーバIDが、図5のサーバID131と同じであった場合、暗号化部207は、サーバ公開鍵132を用いて、スクリプトID、パラメータ(サービス提供者Aが提供しているICカードで100円消費することを示すパラメータ)、および端末SAM識別子141を暗号化する。   In step S214, the encryption unit 207 uses the server public key corresponding to the server ID received in step S211 based on the control from the main control unit 202, and uses the script ID, parameter, and terminal SAM identifier. Is encrypted. If the server ID received in the process of step S211 is the same as the server ID 131 of FIG. 5, the encryption unit 207 uses the server public key 132 to provide a script ID, parameters (provided by the service provider A). And the terminal SAM identifier 141 are encrypted.

ステップS215において、出力部210は、主制御部202からの制御に基づいて、サーバID131により特定されるURL133に対して、スクリプトIDの署名と、暗号化した「スクリプトID、パラメータ、および端末SAM識別子141」とを送信する。   In step S215, based on the control from the main control unit 202, the output unit 210 creates the signature of the script ID and the encrypted “script ID, parameter, and terminal SAM identifier for the URL 133 specified by the server ID 131. 141 ".

これに対して、URL133に対応するサーバ14(サービス提供者)の入力部451は、ステップS191において、スクリプトIDの署名と、暗号化された「スクリプトID、パラメータ、および端末SAM識別子141」とを受信する。   In response to this, the input unit 451 of the server 14 (service provider) corresponding to the URL 133 receives the signature of the script ID and the encrypted “script ID, parameter, and terminal SAM identifier 141” in step S191. Receive.

ステップS192において、復号部457は、主制御部452からの制御に基づいて、暗号化された「スクリプトID、パラメータ、および端末SAM識別子141」をサーバ秘密鍵413で復号する。   In step S 192, the decryption unit 457 decrypts the encrypted “script ID, parameter, and terminal SAM identifier 141” with the server secret key 413 based on the control from the main control unit 452.

ステップS193において、主制御部452は、端末SAM識別子141(復号し、得られた端末SAM識別子141)により特定される端末SAM公開鍵を取得する。具体的には、主制御部452は、復号して得られた端末SAM識別子141と同じ端末SAM識別子431により特定される、端末SAM公開鍵432を取得する。   In step S193, the main control unit 452 acquires the terminal SAM public key specified by the terminal SAM identifier 141 (the terminal SAM identifier 141 obtained by decryption). Specifically, the main control unit 452 acquires the terminal SAM public key 432 specified by the same terminal SAM identifier 431 as the terminal SAM identifier 141 obtained by decryption.

ステップS194において、検証処理部455は、スクリプトIDと端末SAM公開鍵432を用いて、スクリプトIDの署名を検証する。具体的には、スクリプトIDをハッシュプログラムで圧縮した値と、スクリプトIDの署名(ステップS191の処理で受信したスクリプトIDの署名を端末SAM公開鍵432で復号した値とが、一致するか否かにより、スクリプトIDの署名が正当であるか否かが判定される。すなわち、スクリプトIDが改ざんされていないか否かが判定される。   In step S194, the verification processing unit 455 verifies the signature of the script ID using the script ID and the terminal SAM public key 432. Specifically, whether the value obtained by compressing the script ID with the hash program matches the signature of the script ID (the value obtained by decrypting the signature of the script ID received in the processing of step S191 with the terminal SAM public key 432). Thus, it is determined whether or not the signature of the script ID is valid, that is, whether or not the script ID has been tampered with.

ステップS195において、検証処理部455は、スクリプトIDが正当であることが検証されたか否かを判定し、正当であることが検証されなかったと判定した場合、処理を終了する。ステップS195において、スクリプトIDが正当であることが検証されたと判定された場合、処理はステップS196に進む。   In step S195, the verification processing unit 455 determines whether or not the script ID is verified to be valid. If it is determined that the script ID is not verified, the processing ends. If it is determined in step S195 that the script ID is verified as valid, the process proceeds to step S196.

ステップS196において、主制御部452は、ステップS192の処理で復号した結果得られたスクリプトIDに基づいて、図12のスクリプトフォルダ405からプログラムを特定する。例えば、主制御部452は、得られたスクリプトIDがスクリプトID421と同じであった場合、このスクリプトIDに対応付けられているプログラム423を特定する。   In step S196, the main control unit 452 identifies a program from the script folder 405 in FIG. 12 based on the script ID obtained as a result of decryption in the process in step S192. For example, when the obtained script ID is the same as the script ID 421, the main control unit 452 specifies the program 423 associated with the script ID.

ステップS197において、プログラム実行部458は、パラメータに基づいてプログラムを実行し、実行結果を生成する。例えば、プログラム実行部458は、サーバ14がサービスを提供しているICカードで100円使用したというパラメータに基づいて、プログラム423を実行し、その実行結果を生成する。   In step S197, the program execution unit 458 executes the program based on the parameters and generates an execution result. For example, the program execution unit 458 executes the program 423 based on the parameter that the server 14 used 100 yen with the IC card that provides the service, and generates the execution result.

このように、処理能力が高いサーバ14側では、スクリプトIDに対してプログラムが実行され、処理能力が比較的低い端末SAM42側では、スクリプトIDに対してスクリプトが実行される。   Thus, on the server 14 side with high processing capability, the program is executed for the script ID, and on the terminal SAM 42 side with relatively low processing capability, the script is executed for the script ID.

ステップS198において、署名処理部454は、主制御部452からの制御に基づいて、プログラム実行結果とサーバ秘密鍵413を用いて、プログラム実行結果の署名(サーバ14によるプログラム実行結果に対する署名)を生成する。図15の例の場合、メッセージMがプログラム実行結果であり、送信元の秘密鍵がサーバ秘密鍵413である。   In step S198, the signature processing unit 454 generates a signature of the program execution result (signature for the program execution result by the server 14) using the program execution result and the server private key 413 based on the control from the main control unit 452. To do. In the example of FIG. 15, the message M is a program execution result, and the secret key of the transmission source is the server secret key 413.

ステップS199において、主制御部452は、端末SAM証明書フォルダ406から端末SAM識別子431(ステップS192で復号して得られた端末SAM識別子と同じ端末SAM識別子431)により特定される端末SAM公開鍵432を取得する。   In step S199, the main control unit 452 identifies the terminal SAM public key 432 specified by the terminal SAM identifier 431 (the same terminal SAM identifier 431 as the terminal SAM identifier obtained by decryption in step S192) from the terminal SAM certificate folder 406. To get.

ステップS200において、暗号化部456は、主制御部452からの制御に基づいて、プログラム実行結果を、端末SAM公開鍵で暗号化する。   In step S200, the encryption unit 456 encrypts the program execution result with the terminal SAM public key based on the control from the main control unit 452.

ステップS201において、出力部459は、プログラム実行結果の署名(ステップS198の処理で生成された署名)と、暗号化されたプログラム実行結果(ステップS200の処理で暗号化されたプログラム実行結果)を、端末SAM42に送信する。   In step S201, the output unit 459 outputs the signature of the program execution result (the signature generated by the process of step S198) and the encrypted program execution result (the program execution result encrypted by the process of step S200). It transmits to terminal SAM42.

これに対して、端末SAM42の入力部201は、ステップS216において、プログラム実行結果の署名と、暗号化されたプログラム実行結果とを受信する。   On the other hand, in step S216, the input unit 201 of the terminal SAM 42 receives the signature of the program execution result and the encrypted program execution result.

ステップS217において、復号部208は、暗号化されたプログラム実行結果を、端末SAM秘密鍵144で復号する。これによりプログラム実行結果が得られる。   In step S217, the decryption unit 208 decrypts the encrypted program execution result with the terminal SAM secret key 144. Thereby, a program execution result is obtained.

ステップS218において、検証処理部206は、プログラム実行結果とサーバ公開鍵132(ステップS211で受け付けられたサーバID131に対応するサーバ公開鍵132)とを用いて、プログラム実行結果の署名を検証する。すなわち、検証処理部206は、主制御部202からの制御に基づいて、プログラム実行結果の署名とサーバ公開鍵132とを用いて、プログラム実行結果が正当であることを検証する。   In step S218, the verification processing unit 206 verifies the signature of the program execution result using the program execution result and the server public key 132 (the server public key 132 corresponding to the server ID 131 received in step S211). In other words, the verification processing unit 206 verifies that the program execution result is valid using the signature of the program execution result and the server public key 132 based on the control from the main control unit 202.

ステップS219において、検証処理部206は、プログラム実行結果が正当であることが検証されたか否かを判定し、正当であることが検証されなかったと判定した場合、処理を終了する。ステップS219において、正当であることが検証されたと判定された場合、処理はステップS220に進み、出力部210は、主制御部202からの制御に基づいて、プログラム実行結果を出力する。例えば、出力部210は、図示せぬディスプレイなどに出力することで、端末SAM42の管理者に実行結果を通知する。その後、処理は終了される。   In step S219, the verification processing unit 206 determines whether or not the program execution result has been verified to be valid. If it is determined that the program execution result has not been verified, the verification processing unit 206 ends the process. If it is determined in step S219 that the validity has been verified, the process proceeds to step S220, and the output unit 210 outputs a program execution result based on the control from the main control unit 202. For example, the output unit 210 notifies the execution result to the administrator of the terminal SAM 42 by outputting to a display (not shown) or the like. Thereafter, the process is terminated.

次に、図7の端末SAM42にスクリプトIDの指定とともにスクリプトの実行が指令された場合、実行が指令されたスクリプトを端末SAM42がダウンロードしている場合(すなわち、実行が指令されたスクリプトについて、図19と図20の処理が既に行われている場合)の処理(すなわち、上述した後者の場合の処理)を、図23のフローチャートを参照して説明する。   Next, when the script execution is instructed together with the script ID designation to the terminal SAM 42 in FIG. 7, the terminal SAM 42 downloads the script instructed to execute (that is, for the script instructed to execute, FIG. 19 and the processing in the case of FIG. 20 (that is, the processing in the latter case described above) will be described with reference to the flowchart of FIG.

端末SAM42の主制御部202(図7)は、ステップS251において、端末SAM42の管理者からの、サーバIDおよびスクリプトIDの指定、並びにスクリプトの実行要求を、図6の入力部256を介して受け付ける。すなわち、端末SAM42の管理者は、実行するスクリプトのサーバIDとスクリプトIDの指定とともに、スクリプトの実行要求を、端末SAM42に対して指令する。このスクリプトの実行要求には、パラメータ(例えば、サービス提供者Aが提供しているICカードの使用と、そのICカードから100円消費することを示すパラメータ)が含まれる。   In step S251, the main control unit 202 (FIG. 7) of the terminal SAM 42 receives the server ID and script ID designation and script execution request from the administrator of the terminal SAM 42 via the input unit 256 of FIG. . That is, the administrator of the terminal SAM 42 instructs the terminal SAM 42 to execute a script together with the server ID and script ID of the script to be executed. This script execution request includes parameters (for example, a parameter indicating use of an IC card provided by the service provider A and consumption of 100 yen from the IC card).

ステップS252において、主制御部202は、スクリプトフォルダ126において、ステップS251の処理で受け付けたサーバIDとスクリプトIDに対応するスクリプトを検索する。図23の処理の例では、スクリプトフォルダ126に、サーバID151とスクリプトID152に対応するスクリプト153があるとされ、以下の処理では、そのスクリプトID152に対応する処理が実行される。   In step S252, the main control unit 202 searches the script folder 126 for a script corresponding to the server ID and script ID received in the process of step S251. In the example of the process of FIG. 23, it is assumed that the script folder 126 includes a script 153 corresponding to the server ID 151 and the script ID 152. In the following process, the process corresponding to the script ID 152 is executed.

ステップS253において、端末SAM42のスクリプト実行部209は、指定されたスクリプト(ステップS252の処理で検索された結果特定されたスクリプト)153を実行する。   In step S253, the script execution unit 209 of the terminal SAM 42 executes the designated script (script specified as a result of searching in the process of step S252) 153.

ステップS254において、主制御部202は、ICカードにアクセスするか否かを判定する。例えば、ステップS251の処理で実行が要求されたスクリプトが、ICカードにアクセスするべき内容のスクリプトである場合には、アクセスすると判定される。   In step S254, the main control unit 202 determines whether to access the IC card. For example, if the script requested to be executed in the process of step S251 is a script whose contents are to be accessed to the IC card, it is determined to access.

ステップS254において、ICカードにアクセスすると判定された場合、ステップS255において、出力部210は、ICカードリーダライタアンテナ43(図3)に対して、アクセスの指令を送信する。このとき、スクリプトの実行に対応するパラメータなど(例えば、100円分の金額を減算することを示すパラメータ)もあわせて送信される。なお、スクリプト記述内にICカード51へのアクセスの指令が複数記述されている場合には、出力部210は、ICカードリーダライタアンテナ43(図3)に対して、複数回のアクセスの指令を送信する。また、スクリプト記述内にICカードへのアクセスの指令の他、制御端末41やサーバ14へのアクセスの指令が複数記述されている場合には、出力部210は、制御端末41やサーバ14に対して、それぞれアクセスの指令を送信する(またはアクセスする)。   If it is determined in step S254 that the IC card is accessed, in step S255, the output unit 210 transmits an access command to the IC card reader / writer antenna 43 (FIG. 3). At this time, a parameter corresponding to execution of the script (for example, a parameter indicating that the amount of 100 yen is subtracted) is also transmitted. When a plurality of instructions for accessing the IC card 51 are described in the script description, the output unit 210 issues a plurality of access instructions to the IC card reader / writer antenna 43 (FIG. 3). Send. When a plurality of commands for accessing the control terminal 41 and the server 14 are described in addition to commands for accessing the IC card in the script description, the output unit 210 sends the commands to the control terminal 41 and the server 14. To send (or access) an access command.

これに対して、ICカードリーダライタアンテナ43は、ステップS231において、端末SAM42の出力部210からの指令を受け付け、ステップS232において、ICカード(図3のICカード51)にアクセスする。   On the other hand, the IC card reader / writer antenna 43 receives a command from the output unit 210 of the terminal SAM 42 in step S231, and accesses the IC card (IC card 51 in FIG. 3) in step S232.

そして、ICカードリーダライタアンテナ43は、ステップS233において、アクセスした結果(例えば、ICカード51から100円分の金額を減算が成功したことを示す結果)を、端末SAM42に対して送信する。   Then, in step S233, the IC card reader / writer antenna 43 transmits the access result (for example, a result indicating that the amount of 100 yen from the IC card 51 has been successfully subtracted) to the terminal SAM.

これに対して、端末SAM42の入力部201は、ステップS256において、アクセスした結果(100円の金額の減算が成功したことを示す結果)を受信する。   On the other hand, in step S256, the input unit 201 of the terminal SAM 42 receives the accessed result (result indicating that the subtraction of the amount of 100 yen has been successful).

ステップS254においてICカードにアクセスしないと判定された場合、またはステップS256の処理の後、ステップS257において、スクリプト実行部209は、スクリプト実行結果を生成し、出力部210は、これを出力する。出力部210は、例えば、図示せぬディスプレイなどに出力することで、端末SAM42の管理者に実行結果を通知する。その後、処理は終了される。   When it is determined in step S254 that the IC card is not accessed, or after the processing in step S256, in step S257, the script execution unit 209 generates a script execution result, and the output unit 210 outputs this. The output unit 210 notifies the administrator of the terminal SAM 42 of the execution result by outputting the output to a display (not shown), for example. Thereafter, the process is terminated.

図21乃至図23により、スクリプト実行時に、対応するスクリプトがダウンロードされていれば、端末SAM42内でスクリプトを実行し、対応するスクリプトがダウンロードされていなければサーバ14(サービス提供者)に対して実行を要求することで、端末SAM42の管理者が、スクリプトIDを指定するだけで、端末SAM42におけるスクリプトのダウンロードの有無にかかわらずスクリプトIDに対応する処理を実行することができる。   21 to 23, if the corresponding script is downloaded at the time of executing the script, the script is executed in the terminal SAM 42, and if the corresponding script is not downloaded, the script is executed to the server 14 (service provider). By requesting, the administrator of the terminal SAM 42 can execute processing corresponding to the script ID regardless of whether or not the script is downloaded in the terminal SAM 42 only by specifying the script ID.

次に、図24のフローチャートを参照して、端末SAM42がスクリプト実行中に、制御端末41にアクセスを行なう場合の処理の例を説明する。なお、この処理は、例えば、図23のステップS253において、スクリプトを実行するときに開始される処理である。   Next, an example of processing when the terminal SAM 42 accesses the control terminal 41 during script execution will be described with reference to the flowchart of FIG. This process is a process that is started when a script is executed in step S253 of FIG. 23, for example.

ステップS291において、端末SAM42のスクリプト実行部209は、実行中のスクリプトに制御端末41とのメッセージ交換要求が記述されているか否かを判定する。制御端末41とのメッセージ交換要求が記述されていると判定された場合、ステップS292において、出力部210は、主制御部202からのスクリプト実行部209を介する制御に基づいて、スクリプトに記述された制御端末アクセス記述を、制御端末41(図3)に送信する。この制御端末アクセス記述は、制御端末41において実行させる処理に関する記述とされる。なお、スクリプト記述内に制御端末41へのアクセスの指令が複数記述されている場合には、出力部210は、制御端末41に対して複数回、アクセス記述を送信する。また、スクリプト記述内に制御端末アクセス記述の他、ICカード51やサーバ14へのアクセスの指令が複数記述されている場合には、出力部210は、ICカードリーダライタ43やサーバ14に対して、それぞれアクセスの指令を送信する(またはアクセスする)。   In step S291, the script execution unit 209 of the terminal SAM 42 determines whether a message exchange request with the control terminal 41 is described in the script being executed. When it is determined that the message exchange request with the control terminal 41 is described, in step S292, the output unit 210 is described in the script based on the control from the main control unit 202 via the script execution unit 209. The control terminal access description is transmitted to the control terminal 41 (FIG. 3). This control terminal access description is a description related to processing executed in the control terminal 41. If a plurality of commands for accessing the control terminal 41 are described in the script description, the output unit 210 transmits the access description to the control terminal 41 a plurality of times. When a plurality of commands for accessing the IC card 51 and the server 14 are described in addition to the control terminal access description in the script description, the output unit 210 sends the command to the IC card reader / writer 43 and the server 14. , Respectively, send (or access) an access command.

これに対して、制御端末41(図3)は、ステップS271において、制御端末アクセス記述を受信する。   On the other hand, the control terminal 41 (FIG. 3) receives the control terminal access description in step S271.

ステップS272において、制御端末41は、受信した制御端末アクセス記述に基づく処理を実行し、制御端末アクセス記述結果を生成する。そして制御端末41は、ステップS273において、制御端末アクセス記述結果を、端末SAM42に対して送信する。   In step S272, the control terminal 41 executes processing based on the received control terminal access description, and generates a control terminal access description result. In step S273, the control terminal 41 transmits the control terminal access description result to the terminal SAM.

これに対して、端末SAM42の入力部201は、ステップS293において、制御端末アクセス記述結果を受信し、ステップS294において、主制御部202は、制御端末アクセス記述結果を、スクリプト実行部209に戻す。   On the other hand, the input unit 201 of the terminal SAM 42 receives the control terminal access description result in step S293, and the main control unit 202 returns the control terminal access description result to the script execution unit 209 in step S294.

ステップS291において、スクリプトに制御端末41とのメッセージ交換要求が記述されていないと判定された場合、またはステップS294の処理の後、処理は終了される。   In step S291, when it is determined that the message exchange request with the control terminal 41 is not described in the script, or after the process of step S294, the process ends.

図24の処理により、スクリプト実行中に制御端末41とのメッセージ交換要求が記述されている場合においても、端末SAM42は、制御端末41との間でメッセージを交換することができる。   24, the terminal SAM 42 can exchange messages with the control terminal 41 even when a message exchange request with the control terminal 41 is described during script execution.

次に、図25と図26のフローチャートを参照して、スクリプト実行中にサーバ14に対してアクセスを行なう場合の処理の例を説明する。なお、この処理は、例えば、図23のステップS253において、スクリプトを実行するときに開始される処理である。   Next, an example of processing when the server 14 is accessed during script execution will be described with reference to the flowcharts of FIGS. This process is a process that is started when a script is executed in step S253 of FIG. 23, for example.

ステップS331において、端末SAM42のスクリプト実行部209は、主制御部202からの制御に基づいて、実行中のスクリプトにサーバ14とのメッセージ交換要求が記述されているか否かを判定する。例えば、対応するICカードで12万円の商品を購入するためのスクリプトが実行されている場合であって、そのICカードの限度額が10万円である場合、対応するスクリプトの記述は、サーバ14へのメッセージ交換要求の記述である。サーバ14とのメッセージ交換要求が記述されていると判定された場合、ステップS332において、出力部210は、主制御部202からのスクリプト実行部209を介する制御に基づいて、実行中のスクリプトに対応するサーバIDに基づいて、サーバ公開鍵とURLを取得する。例えば、主制御部202は、実行中のスクリプトが図5のスクリプト153である場合、このスクリプトID152のサーバID151と同じサーバIDであるサーバID131に対応するサーバ公開鍵132とURL133を取得する。   In step S331, the script execution unit 209 of the terminal SAM 42 determines whether a message exchange request with the server 14 is described in the script being executed based on the control from the main control unit 202. For example, when a script for purchasing a product of 120,000 yen with a corresponding IC card is executed and the limit of the IC card is 100,000 yen, the description of the corresponding script is the server 14 is a message exchange request description. If it is determined that a message exchange request with the server 14 is described, in step S332, the output unit 210 responds to the script being executed based on the control from the main control unit 202 via the script execution unit 209. The server public key and URL are acquired based on the server ID to be executed. For example, when the script being executed is the script 153 in FIG. 5, the main control unit 202 acquires the server public key 132 and the URL 133 corresponding to the server ID 131 having the same server ID as the server ID 151 of the script ID 152.

ステップS333において、署名処理部205は、主制御部202からの制御に基づいて、端末SAM秘密鍵144を用いて、サーバアクセス記述とスクリプトIDの署名(端末SAM42によるサーバアクセス記述とスクリプトIDに対する署名)を生成する。図15の例の場合、メッセージMがサーバアクセス記述とスクリプトIDであり、送信元の秘密鍵Ksが端末SAM秘密鍵144である。   In step S333, the signature processing unit 205 uses the terminal SAM secret key 144 based on the control from the main control unit 202 to sign the server access description and the script ID (the server access description by the terminal SAM 42 and the signature for the script ID). ) Is generated. In the example of FIG. 15, the message M is the server access description and the script ID, and the transmission source secret key Ks is the terminal SAM secret key 144.

ステップS334において、暗号化部207は、主制御部202からの制御に基づいて、サーバアクセス記述とスクリプトIDをサーバ公開鍵132(ステップS332の処理で取得されたサーバ公開鍵132)で暗号化する。   In step S334, the encryption unit 207 encrypts the server access description and the script ID with the server public key 132 (the server public key 132 acquired in the process of step S332) based on the control from the main control unit 202. .

ステップS335において、出力部210は、主制御部202からの制御に基づいて、サーバアクセス記述とスクリプトIDの署名(ステップS333で生成された署名)、暗号化したサーバアクセス記述とスクリプトID(ステップS334)、および端末SAM識別子141をURL133に対して送信する。すなわち、端末SAM識別子141、暗号化された情報(サーバアクセス記述とスクリプトID)、および署名(サーバアクセス記述とスクリプトIDの署名)の3つが送信される。   In step S335, the output unit 210, based on the control from the main control unit 202, the server access description and the signature of the script ID (signature generated in step S333), the encrypted server access description and the script ID (step S334). ) And the terminal SAM identifier 141 are transmitted to the URL 133. That is, the terminal SAM identifier 141, encrypted information (server access description and script ID), and signature (server access description and script ID signature) are transmitted.

これに対して、サービス提供者であるサーバ14の入力部451は、ステップS311において、サーバアクセス記述とスクリプトIDの署名、暗号化されたサーバアクセス記述とスクリプトID、および端末SAM識別子141を受信する(入力を受け付ける)。   On the other hand, the input unit 451 of the server 14 as the service provider receives the server access description and the signature of the script ID, the encrypted server access description and the script ID, and the terminal SAM identifier 141 in step S311. (Accepts input).

ステップS312において、復号部457は、主制御部452からの制御に基づいて、暗号化されたサーバアクセス記述とスクリプトIDをサーバ秘密鍵(図12のサーバ秘密鍵413)で復号する。   In step S312, the decryption unit 457 decrypts the encrypted server access description and script ID with the server private key (the server private key 413 in FIG. 12) based on the control from the main control unit 452.

ステップS313において、主制御部452は、ステップS311の処理で受信された端末SAM識別子141により特定される端末SAM公開鍵を取得する。例えば、端末SAM識別子141と図12の端末SAM識別子431が同じである場合、端末SAM識別子431により特定される端末SAM公開鍵432が取得される。   In step S313, the main control unit 452 acquires a terminal SAM public key specified by the terminal SAM identifier 141 received in the process of step S311. For example, when the terminal SAM identifier 141 and the terminal SAM identifier 431 in FIG. 12 are the same, the terminal SAM public key 432 specified by the terminal SAM identifier 431 is acquired.

ステップS314において、検証処理部455は、主制御部452からの制御に基づいて、サーバアクセス記述およびスクリプトIDの署名と、ステップS313の処理で取得された端末SAM公開鍵432を用いて、サーバアクセス記述およびスクリプトIDを検証する。具体的には、サーバアクセス記述とスクリプトIDに対してハッシュ関数プログラムで圧縮した結果を、サーバ秘密鍵413で暗号化した結果と、サーバアクセス記述とスクリプトIDの署名が一致するか否かが検証される。すなわち、検証処理部455は、主制御部452からの制御に基づいて、サーバアクセス記述およびスクリプトIDの署名と、サーバ秘密鍵413とを用いて、サーバアクセス記述およびスクリプトIDが正当であることを検証する。   In step S314, the verification processing unit 455 uses the server access description and the script ID signature and the terminal SAM public key 432 acquired in the process of step S313 based on the control from the main control unit 452 to access the server. Verify description and script ID. Specifically, it is verified whether the result obtained by compressing the server access description and the script ID with the hash function program using the server secret key 413 matches the signature of the server access description and the script ID. Is done. That is, the verification processing unit 455 uses the server access description and script ID signature and the server secret key 413 based on the control from the main control unit 452 to confirm that the server access description and script ID are valid. Validate.

ステップS315において、サーバアクセス記述とスクリプトIDが正当であることが検証されたか否かが判定され、正当であることが検証されなかったと判定された場合、処理は終了される。ステップS315において、サーバアクセス記述とスクリプトIDが正当であることが検証されたと判定された場合、ステップS316において、サーバ14のプログラム実行部458は、主制御部452からの制御に基づいて、正当であることが検証されたサーバアクセス記述に基づいて、処理を実行し、サーバアクセス記述結果を生成する。   In step S315, it is determined whether or not the server access description and the script ID are verified to be valid. If it is determined that the server access description and the script ID are not verified, the process is terminated. If it is determined in step S315 that the server access description and the script ID are verified as valid, the program execution unit 458 of the server 14 determines whether the server access description and script ID are valid based on the control from the main control unit 452 in step S316. A process is executed based on the server access description verified to exist, and a server access description result is generated.

ステップS317において、署名処理部454は、主制御部452からの制御に基づいて、サーバ秘密鍵413を用いて、サーバアクセス記述結果の署名(サーバ14によるサーバアクセス記述結果に対する署名)を生成する。   In step S317, the signature processing unit 454 generates a server access description result signature (signature for the server access description result by the server 14) using the server secret key 413 based on control from the main control unit 452.

ステップS318において、暗号化部456は、主制御部452からの制御に基づいて、サーバアクセス記述結果を、ステップS313の処理で取得された端末SAM公開鍵432で暗号化する。   In step S318, the encryption unit 456 encrypts the server access description result with the terminal SAM public key 432 acquired in step S313 based on the control from the main control unit 452.

ステップS319において、出力部459は、主制御部452からの制御に基づいて、サーバアクセス記述結果の署名(ステップS317)と、暗号化したサーバアクセス記述結果(ステップS318)とを、端末SAM42に送信する。   In step S319, the output unit 459 transmits the signature of the server access description result (step S317) and the encrypted server access description result (step S318) to the terminal SAM 42 based on the control from the main control unit 452. To do.

これに対して、端末SAM42の入力部201は、ステップS336において、サーバアクセス記述結果の署名と、暗号化したサーバアクセス記述結果とを受信する。   On the other hand, in step S336, the input unit 201 of the terminal SAM 42 receives the server access description result signature and the encrypted server access description result.

ステップS337において、復号部208は、主制御部202からの制御に基づいて、暗号化されているサーバアクセス記述結果を、端末SAM秘密鍵144で復号する。   In step S337, the decrypting unit 208 decrypts the encrypted server access description result with the terminal SAM secret key 144 based on the control from the main control unit 202.

ステップS338において、検証処理部206は、主制御部202からの制御に基づいて、サーバアクセス記述結果とサーバ公開鍵132(ステップS334の処理で用いたサーバ公開鍵と同じ公開鍵)を用いてサーバアクセス記述結果の署名を検証する(上述した検証の処理と同様)。すなわち、検証処理部206は、主制御部202からの制御に基づいて、サーバアクセス記述結果の署名と、サーバ公開鍵132とを用いて、サーバアクセス記述結果が正当であることを検証する。   In step S338, the verification processing unit 206 uses the server access description result and the server public key 132 (the same public key as the server public key used in the process of step S334) based on the control from the main control unit 202 to The signature of the access description result is verified (similar to the verification process described above). That is, the verification processing unit 206 verifies that the server access description result is valid using the signature of the server access description result and the server public key 132 based on the control from the main control unit 202.

ステップS339において、検証処理部206は、サーバアクセス記述結果が正当であることが検証されたか否かを判定し、正当であることが検証されたと判定された場合、ステップS340において、主制御部202は、サーバアクセス記述結果をスクリプト実行部209に戻し、処理を終了する。またステップS339において、正当であることが検証されなかったと判定された場合、処理は終了される。   In step S339, the verification processing unit 206 determines whether or not the server access description result is verified as valid. If it is determined that the server access description result is verified as valid, the main control unit 202 is determined in step S340. Returns the server access description result to the script execution unit 209 and ends the process. If it is determined in step S339 that the validity has not been verified, the process ends.

図26の処理により、スクリプトの実行途中に、サーバ14にアクセスが必要である場合に、そのメッセージを受け取る受け手側(例えば、サーバ14)の公開鍵で暗号化してサーバ14に送信することで、セキュアにメッセージ交換を行なうことができる。また、スクリプト実行中に、スクリプトに記述された内容に基づいた高度な分岐処理を行なうことができる。   26, when access to the server 14 is necessary during the execution of the script, the message is encrypted with the public key of the receiver (for example, the server 14) that receives the message and transmitted to the server 14. Message exchange can be performed securely. Further, during the execution of the script, advanced branch processing based on the contents described in the script can be performed.

次に、サーバ14と端末SAM42がオフラインの状態で、端末SAM42においてスクリプトを実行した後、その処理結果をログとして保存しておき、後で、サーバ14と端末SAM42がオンラインになったときにサーバ14にログをアップロードする場合の処理を、図27と図28を参照して説明する。   Next, after the script is executed in the terminal SAM 42 while the server 14 and the terminal SAM 42 are offline, the processing result is saved as a log, and the server 14 and the terminal SAM 42 later come online when the server 14 and the terminal SAM 42 come online. 14 will be described with reference to FIGS. 27 and 28.

図27は、端末SAM42とICカードリーダライタアンテナ43(図3)において実行される処理の例を説明するフローチャートである。この処理は、基本的には、図23の処理と対応しており、適宜、図23の処理を流用して説明する。   FIG. 27 is a flowchart for explaining an example of processing executed in the terminal SAM 42 and the IC card reader / writer antenna 43 (FIG. 3). This process basically corresponds to the process of FIG. 23, and will be described by appropriately using the process of FIG.

ステップS371乃至ステップS373の処理は、図23のステップS251乃至ステップS253に対応しているのでその説明は省略する。   The processing in steps S371 through S373 corresponds to steps S251 through S253 in FIG.

ステップS374において、出力部210は、ICカードリーダライタアンテナ43(図3)に対して、アクセスの指令を送信する。このとき、スクリプトの実行に対応するパラメータなど(例えば、100円分の金額を減算することを示すパラメータ)もあわせて送信される。   In step S374, the output unit 210 transmits an access command to the IC card reader / writer antenna 43 (FIG. 3). At this time, a parameter corresponding to execution of the script (for example, a parameter indicating that the amount of 100 yen is subtracted) is also transmitted.

これに対するICカードリーダライタアンテナ43のステップS351乃至353の処理は、図23のステップS231乃至ステップS233の処理に対応しているのでその説明は省略する。   The processing of steps S351 to 353 of the IC card reader / writer antenna 43 corresponding to this corresponds to the processing of steps S231 to S233 of FIG.

ステップS375において、端末SAM42の入力部201は、アクセスした結果(100円の金額の減算が成功したことを示す結果)を受信する。   In step S375, the input unit 201 of the terminal SAM 42 receives the access result (the result indicating that the subtraction of the amount of 100 yen has been successful).

ステップS376において、スクリプト実行部209は、スクリプト実行結果を生成する。   In step S376, the script execution unit 209 generates a script execution result.

ステップS377において、主制御部202は、スクリプトID(ステップS371で指定されたスクリプトID)、と時刻情報(現在の時刻の情報)を、スクリプト実行結果に付加し、スクリプト実行結果付加情報とする。   In step S377, the main control unit 202 adds the script ID (script ID specified in step S371) and time information (current time information) to the script execution result to obtain script execution result additional information.

ステップS378において、署名処理部205は、端末SAM秘密鍵144を用いて、スクリプト実行結果付加情報の署名(図15においてメッセージMがスクリプト実行結果付加情報であり、送信もとの秘密鍵Ksが端末SAM秘密鍵144である)を生成する。   In step S378, the signature processing unit 205 uses the terminal SAM private key 144 to sign the script execution result additional information (in FIG. 15, the message M is the script execution result additional information, and the source private key Ks is the terminal SAM private key 144).

ステップS379において、主制御部202は、ステップS378の処理で生成されたスクリプト実行結果付加情報の署名、並びにサーバIDおよびスクリプト実行結果付加情報を、ログフォルダ128のログ171として登録する。   In step S379, the main control unit 202 registers the signature of the script execution result additional information generated in step S378, the server ID, and the script execution result additional information as the log 171 of the log folder 128.

図27の処理により、スクリプト実行結果に時刻情報とスクリプトIDが付加されたものがログ171に登録される。この処理は、端末SAM42とサーバ14の間がオフラインであって、スクリプトが実行されるたびに繰り返され、これにより、複数のログがログフォルダ128に登録される。   With the processing in FIG. 27, the script execution result with time information and script ID added is registered in the log 171. This process is repeated between the terminal SAM 42 and the server 14 and is executed each time the script is executed, whereby a plurality of logs are registered in the log folder 128.

次に、図28のフローチャートを参照して、図27の処理の繰り返しによりログフォルダ128に登録された(複数の)ログ171を、サーバ14に送信する場合の処理を説明する。   Next, with reference to the flowchart of FIG. 28, processing when the log 171 (a plurality of) registered in the log folder 128 by repeating the processing of FIG. 27 is transmitted to the server 14 will be described.

ステップS411において、端末SAM42の主制御部202は、サーバ14と接続されたか否かを判定し、接続されるまで待機する。すなわち、これ以降の処理は、サーバ14と端末SAM42がオンライン(接続)されたとき開始される。   In step S411, the main control unit 202 of the terminal SAM 42 determines whether it is connected to the server 14 and waits until it is connected. That is, the subsequent processing is started when the server 14 and the terminal SAM 42 are online (connected).

ステップS411において、サーバ14と端末SAM42が接続されたと判定された場合、主制御部202は、ステップS412において、接続されたサーバ14のサーバIDを、サーバ証明書フォルダ123から検索し、URLを取得する。例えば、接続されたサーバ14のサーバIDが、図5のサーバID131である場合、主制御部202は、サーバID131のURL133を取得する。   If it is determined in step S411 that the server 14 and the terminal SAM 42 are connected, the main control unit 202 searches the server certificate folder 123 for the server ID of the connected server 14 in step S412, and acquires the URL. To do. For example, when the server ID of the connected server 14 is the server ID 131 in FIG. 5, the main control unit 202 acquires the URL 133 of the server ID 131.

ステップS413において、主制御部202は、ログフォルダ128に登録されているログの中から、サーバIDが同じログを取得する。図27を用いて上述したように、ログには、スクリプト実行結果付加情報の他に、サーバIDも含まれているので、主制御部202は、このサーバIDに基づいて同じサーバIDを持つログを取得する。例えば、図5のログ171が取得される。   In step S413, the main control unit 202 acquires logs having the same server ID from the logs registered in the log folder 128. As described above with reference to FIG. 27, since the log includes a server ID in addition to the script execution result additional information, the main control unit 202 has a log having the same server ID based on this server ID. To get. For example, the log 171 in FIG. 5 is acquired.

ステップS414において、暗号化部207は、主制御部202からの制御に基づいて、ログ171に含まれるサーバIDとスクリプト実行結果付加情報を、サーバ公開鍵132(サーバIDに対応するサーバ公開鍵)で暗号化する。   In step S414, based on the control from the main control unit 202, the encryption unit 207 converts the server ID and script execution result additional information included in the log 171 into the server public key 132 (the server public key corresponding to the server ID). Encrypt with

ステップS415において、出力部210は、主制御部202からの制御に基づいて、スクリプト実行結果付加情報の署名(ステップS413で取得されたログに含まれるスクリプト実行結果付加情報の署名、すなわち、図27のステップS378で生成された署名)、暗号化された「サーバIDおよびスクリプト実行結果付加情報」、並びに端末SAM識別子141を、URL133(ステップS412の処理で取得されたURL)に対して送信する。すなわち、端末SAM識別子141、暗号化された結果(サーバIDとスクリプト実行結果付加情報が暗号化された結果)、署名(スクリプト実行結果付加情報の署名)の3つを(少なくとも)含む情報が送信される。   In step S415, the output unit 210, based on the control from the main control unit 202, the signature of the script execution result additional information (the signature of the script execution result additional information included in the log acquired in step S413, ie, FIG. 27). The signature generated in step S378), the encrypted “server ID and script execution result additional information”, and the terminal SAM identifier 141 are transmitted to the URL 133 (the URL acquired in the process of step S412). In other words, information including (at least) the terminal SAM identifier 141, the encrypted result (the result of encrypting the server ID and the script execution result additional information), and the signature (the signature of the script execution result additional information) is transmitted. Is done.

これに対して、サーバ14の入力部451は、ステップS391において、スクリプト実行結果付加情報の署名、暗号化されたサーバIDおよびスクリプト実行結果付加情報、並びに端末SAM識別子141を受信する。   In contrast, in step S391, the input unit 451 of the server 14 receives the signature of the script execution result additional information, the encrypted server ID and script execution result additional information, and the terminal SAM identifier 141.

ステップS392において、復号部457は、サーバ秘密鍵413を用いて、暗号化されたサーバIDおよびスクリプト実行結果付加情報を復号する。   In step S392, the decryption unit 457 decrypts the encrypted server ID and script execution result additional information using the server secret key 413.

ステップS393において、主制御部452は、ステップS391で受信した端末SAM識別子に対応する端末SAM公開鍵を取得する。例えば、図12の端末SAM識別子391の端末SAM公開鍵432が取得される。   In step S393, the main control unit 452 acquires a terminal SAM public key corresponding to the terminal SAM identifier received in step S391. For example, the terminal SAM public key 432 of the terminal SAM identifier 391 in FIG. 12 is acquired.

ステップS394において、検証処理部455は、主制御部452からの制御に基づいて、スクリプト実行結果付加情報と端末SAM公開鍵432を用いて、スクリプト実行結果付加情報の署名を検証し、ステップS395において、スクリプト実行結果付加情報が正当であるか否かを判定する。すなわち、検証処理部455は、主制御部452からの制御に基づいて、スクリプト実行結果付加情報の署名と端末SAM公開鍵432とを用いて、スクリプト実行結果付加情報が正当であることを検証する。   In step S394, the verification processing unit 455 verifies the signature of the script execution result additional information using the script execution result additional information and the terminal SAM public key 432 based on the control from the main control unit 452, and in step S395. Then, it is determined whether or not the script execution result additional information is valid. That is, the verification processing unit 455 verifies that the script execution result additional information is valid using the signature of the script execution result additional information and the terminal SAM public key 432 based on the control from the main control unit 452. .

ステップS395において、スクリプト実行結果付加情報が正当であることが検証されたと判定された場合、主制御部452は、スクリプト実行結果付加情報に付加されていたスクリプトIDと時刻情報を取り出し、ログとして保存した後、処理を終了する。また、ステップS395において正当であることが検証されなかったと判定された場合、処理は終了される。   In step S395, when it is determined that the script execution result additional information is verified as valid, the main control unit 452 extracts the script ID and time information added to the script execution result additional information and stores them as a log. After that, the process ends. If it is determined in step S395 that the validity has not been verified, the process ends.

図27と図28の処理により、スクリプト実行結果に時刻情報を追加して署名を付与するとともに、端末SAM42にログ171として登録しておくことにより、サービス提供者のサーバ14と通信コネクションが確立されたときにまとめてアップロードすることができる。   27 and 28, the time information is added to the script execution result to add a signature, and the signature is registered as a log 171 in the terminal SAM 42, thereby establishing a communication connection with the server 14 of the service provider. You can upload them all at once.

以上によれば、認定機関13が、端末SAM42を証明するようにしたので、サービス提供者(サーバ14)側で、証明済みの端末SAM42を認識して、データの授受を行なうことができる。   As described above, since the certification authority 13 certifies the terminal SAM 42, the service provider (server 14) can recognize the certified terminal SAM 42 and exchange data.

すなわち、認定機関13が、端末SAM42の能力が正常であることを認定(証明)することで、サービス提供者が、認定済みの端末SAM42を容易に判断することができる。   That is, the accreditation body 13 authorizes (certifies) that the capability of the terminal SAM 42 is normal, so that the service provider can easily determine the authorized terminal SAM 42.

このようにすることで、端末SAM42の内部に格納(登録)されているスクリプトやその実行状況が参照されることがなく、第三者(例えば、あらかじめ登録しておいたスクリプトを提供したサービス提供者Aとは異なるサービス提供者B)が実行可能なスクリプトを格納することができる。   In this way, a third party (for example, a service providing a pre-registered script is provided without referring to the script stored or registered in the terminal SAM 42 or the execution status thereof. Scripts that can be executed by a service provider B) different from the provider A can be stored.

また、サービス提供者(サーバ14)は、認定機関13により発行された端末SAM公開鍵の署名(端末SAMの証明書)を端末SAM42から取得し、この署名に基づいて端末SAM公開鍵が正当でることを検証することで、端末SAM42が認定済みの端末SAMであることを確実、かつ、容易に認識することができる。これに対して、端末SAM42は、サービス提供者(サーバ14)の証明書(図5のサーバ証明書フォルダ123)をサーバ14から取得しておき、サーバ14からスクリプトなどが送信されてきた場合には、スクリプトを検証することで(例えば、図20のステップS176)、端末SAM42においても、安全な情報のみを受信することができる。このような処理を行なうことで、サービス提供者(サーバ14)と端末SAMクライアント11との間で、安全に(合意して)コンテンツ送受信することができる。   Also, the service provider (server 14) obtains the signature of the terminal SAM public key (terminal SAM certificate) issued by the certification authority 13 from the terminal SAM 42, and the terminal SAM public key is valid based on this signature. By verifying this, it is possible to reliably and easily recognize that the terminal SAM 42 is an authorized terminal SAM. On the other hand, the terminal SAM 42 obtains the certificate of the service provider (server 14) (the server certificate folder 123 in FIG. 5) from the server 14, and when a script or the like is transmitted from the server 14. By verifying the script (for example, step S176 in FIG. 20), the terminal SAM 42 can receive only safe information. By performing such processing, content can be transmitted and received safely (in agreement) between the service provider (server 14) and the terminal SAM client 11.

さらに、端末とサーバが容易に認証を行なうことができる。また、安全、かつ、容易に端末とサーバが情報を授受することができる。さらに、サーバの管理コストを抑えることができる。   Further, the terminal and the server can easily authenticate. In addition, the terminal and the server can exchange information safely and easily. Furthermore, server management costs can be reduced.

また、以上のような構成により、複数のスクリプトを管理し、いつでもスクリプトと登録、削除、または更新することができる。また、異なるサービス提供者からのスクリプトを、安全に格納することができる。例えば、サービス提供者Aからのスクリプトとサービス提供者Bからのスクリプトが端末SAM42に記憶されており、サービス提供者Bが、スクリプトと更新する場合においても、サービス提供者Bは、自分自身が提供しているスクリプトしか見ることができない。このことは、図5のスクリプトフォルダ126が、サーバID151、スクリプトID152に対して、スクリプト153が格納されているためである。   In addition, with the configuration as described above, a plurality of scripts can be managed and registered, deleted, or updated with scripts at any time. In addition, scripts from different service providers can be stored safely. For example, even when a script from the service provider A and a script from the service provider B are stored in the terminal SAM 42 and the service provider B updates the script, the service provider B provides the service provider B himself / herself. You can only see the script you are doing. This is because the script folder 126 in FIG. 5 stores the script 153 for the server ID 151 and the script ID 152.

また、端末SAMクライアント11に端末SAM42を格納することで、端末SAM42により管理されたスクリプトを実行し、そのスクリプトに記述されたカードアクセス処理を、ICカードリーダライタアンテナ43を利用して、ICカードにアクセスすることで行なうこともできる。   Further, by storing the terminal SAM 42 in the terminal SAM client 11, a script managed by the terminal SAM 42 is executed, and the card access processing described in the script is performed using the IC card reader / writer antenna 43. You can also do this by accessing

さらに、サービス提供者の所持するスクリプトIDリストを端末SAM42のスクリプトフォルダ126(セキュリティボックス)に格納し、スクリプト実行時に、そのスクリプトIDに対応するスクリプトがダウンロードされていれば端末SAM42(セキュリティボックス)内で実行し(例えば、図21と図22)、ダウンロードされていなければサービス提供者に実行要求することで(例えば、図23)、端末SAM42の所有者がスクリプトIDを指定するだけで、スクリプトがダウンロードされているかいないかに関わらず実行指示を行なうことができる。   Furthermore, the script ID list possessed by the service provider is stored in the script folder 126 (security box) of the terminal SAM 42. If a script corresponding to the script ID is downloaded at the time of script execution, the script ID list in the terminal SAM 42 (security box) is stored. (For example, FIG. 21 and FIG. 22), and if it has not been downloaded, the service provider requests execution (for example, FIG. 23). Execution instructions can be issued regardless of whether or not it has been downloaded.

また、スクリプト実行後の処理結果の署名とともに時刻情報を付与して端末SAM42内(ログフォルダ128)に一時的に格納しておき(例えば、図27)、サービス提供者のサーバ14と通信コネクションが確立されたときにまとめてアップロードする(図28)ようにしたので、オフラインにおいても、端末SAMクライアント11を利用することができる。なお、以上の例では、ログフォルダ128にスクリプト実行後の処理結果の署名と時刻情報とを格納しておくようにしたが、制御端末41に格納しておくようにしてもよい。   Further, time information is given together with the signature of the processing result after executing the script and temporarily stored in the terminal SAM 42 (log folder 128) (for example, FIG. 27), and the communication connection with the server 14 of the service provider is established. Since uploading is performed collectively when established (FIG. 28), the terminal SAM client 11 can be used even offline. In the above example, the signature of the processing result after executing the script and the time information are stored in the log folder 128, but may be stored in the control terminal 41.

さらに、スクリプトの実行途中に、メッセージを受け取る受け手側の公開鍵(証明書)で暗号化して通信することで(例えば、図25)、カードにアクセスしたり、上位クライアントまたは上位サーバに処理要求を行なってセキュアにメッセージ交換を行なうことができ、スクリプト内でそれに基づいた高度な分岐処理を行なうことができる。   Further, during the execution of the script, communication is performed by encrypting with the public key (certificate) of the receiver that receives the message (for example, FIG. 25), thereby accessing the card or sending a processing request to the upper client or upper server. Message exchange can be performed securely and advanced branch processing based on it can be performed in the script.

なお、以上の例では、スクリプトを管理することについて説明したが、スクリプトの他に、鍵を管理するようにしてもよい。鍵の授受の場合においても、上述した処理と同様の処理が行われる。   In the above example, management of a script has been described, but a key may be managed in addition to a script. In the case of key exchange, the same processing as described above is performed.

また、以上の例では、送信するメッセージMを受信側の公開鍵で暗号化し、暗号化したメッセージMとともに、そのメッセージMの署名を送信するようにしたが、メッセージMの署名も、メッセージMと一緒に暗号化して送るようにしてもよい。すなわち、メッセージMの署名を生成した後、そのメッセージMの署名とメッセージMを、受信側の公開鍵で暗号化して送信するようにしてもよい。   Further, in the above example, the message M to be transmitted is encrypted with the public key of the receiving side, and the signature of the message M is transmitted together with the encrypted message M. You may make it send together encrypted. That is, after the signature of the message M is generated, the signature of the message M and the message M may be encrypted with the public key on the receiving side and transmitted.

このように、サービス提供者が、端末SAMを認識することで、安心してスクリプトや鍵を端末SAMに提供することができる。   In this way, the service provider can provide the terminal SAM with a script and a key with confidence by recognizing the terminal SAM.

また、サービス提供者の提供するスクリプトや鍵を端末SAM42の内部でセキュアに実行してICカードにアクセスを行なうことで、サービス提供者の意図しない不正動作を防ぎつつ、オフラインでスクリプトを実行させることができる。   Also, by executing the script and key provided by the service provider securely in the terminal SAM 42 and accessing the IC card, the script can be executed offline while preventing an unauthorized operation unintended by the service provider. Can do.

このようにICカードにスクリプトを格納するのではなく、端末SAM42にスクリプトを格納して処理を実行することで、ICカードにあるデータを変更することなく、ICカード所有者の権限とは無関係に、いつでもスクリプトを追加、更新、または削除することができる。   In this way, instead of storing the script in the IC card, the script is stored in the terminal SAM 42 and the process is executed, so that the data in the IC card is not changed and is independent of the authority of the IC card owner. You can add, update, or delete scripts at any time.

また、データ(カード情報などのデータ)をICカードに、スクリプトを端末SAM42に格納することで、それらの所有者を明確に分離することができる。   Further, by storing data (data such as card information) in the IC card and storing the script in the terminal SAM 42, the owners can be clearly separated.

さらに、ICカードの全てに同じスクリプトを配信する必要がなく、アクセスする端末SAMにのみ配信すればよいので、スクリプトや鍵の更新に対する処理コストを抑えることができる。   Furthermore, it is not necessary to distribute the same script to all of the IC cards, and it is only necessary to distribute it to the accessing terminal SAM, so that the processing cost for updating the script or key can be suppressed.

また、端末SAMクライアント11の管理者は、端末SAM42内にスクリプトがダウンロードされているか否かを意識することなく、端末SAM42に対してスクリプト実行を要求することができる。   Further, the administrator of the terminal SAM client 11 can request the terminal SAM 42 to execute the script without being aware of whether or not the script is downloaded in the terminal SAM 42.

さらに、ICカード内のスクリプト更新には、ICカードをかざす必要があるが、端末SAM42内にスクリプトを格納するようにしたので、いつでも更新でき、かつ、ICカード所有者に更新時間を待たせることがない。   Furthermore, to update the script in the IC card, it is necessary to hold the IC card, but since the script is stored in the terminal SAM 42, it can be updated at any time and the IC card owner must wait for the update time. There is no.

また、端末SAM42内でスクリプトが実行できるため、処理性能の低いICカードではなく、処理性能に余裕がある端末SAM42で高速処理を行なうことができる。   Further, since the script can be executed in the terminal SAM 42, high-speed processing can be performed by the terminal SAM 42 having a sufficient processing performance instead of an IC card having a low processing performance.

さらに、端末SAM42とサーバ14との間がオフラインである場合にサービス提供者のスクリプトが実行されても、端末SAM42においてログを時刻情報とともに保存するようにしたので、サーバ14との間でオンラインとなったときに実行ログをサービス提供者にアップロードでき、端末SAM42でのオフライン実行結果を、サーバ14側で同期することができる。   Furthermore, even if the service provider's script is executed when the terminal SAM 42 and the server 14 are offline, the terminal SAM 42 stores the log together with the time information. Then, the execution log can be uploaded to the service provider, and the offline execution result at the terminal SAM 42 can be synchronized on the server 14 side.

また、サーバ14で行なっていた処理の一部を端末SAM42に負荷分散することができ(図25)、クライアントとサーバ間の通信コストも削減することができる。   Further, a part of the processing performed by the server 14 can be distributed to the terminal SAM 42 (FIG. 25), and the communication cost between the client and the server can be reduced.

さらに、暗号化の方式は上述した方式に限らず、例えば、共通鍵などを利用した方式であってもよい。   Furthermore, the encryption method is not limited to the method described above, and may be a method using a common key, for example.

また、以上の例では、特定の情報(例えば、スクリプト)を暗号化すると記載した箇所については、少なくともその特定の情報を含むものを暗号化することを示す。すなわち、「特定の情報を暗号化する」という記載には、「暗号化する情報の中に、特定の情報が含まれている」ことを示す。   Moreover, in the above example, about the location described as encrypting specific information (for example, script), it shows enciphering what includes at least the specific information. That is, the description “encrypt specific information” indicates that “the specific information is included in the information to be encrypted”.

さらに、端末SAMクライアント11は、情報を処理する情報処理装置であれば、他のものにも適用することができる。例えば、パーソナルコンピュータにICカードリーダライタアンテナを設けたものを端末SAMクライアント11としてもよい。   Further, the terminal SAM client 11 can be applied to other information processing apparatuses as long as they process information. For example, a personal computer provided with an IC card reader / writer antenna may be used as the terminal SAM client 11.

また、以上の例では、それぞれを区別するためにIDを用いるようにしたが、情報を識別するための識別情報を用いるようにしてもよい。   In the above example, the ID is used to distinguish each, but identification information for identifying the information may be used.

上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。   The series of processes described above can be executed by hardware or can be executed by software. When a series of processing is executed by software, a program constituting the software is installed from a network or a recording medium.

この記録媒体は、図4(並びに図8および図11)に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア91よりなるパッケージメディアにより構成されるだけでなく、装置本体にあらかじめ組み込まれた状態でユーザに提供される、プログラムが記録されているROM72や記憶部78が含まれるハードディスクなどで構成される。なお、図8、図11においても同様である。   As shown in FIG. 4 (and FIGS. 8 and 11), this recording medium is a package comprising a removable medium 91 on which a program is recorded, which is distributed to provide a program to the user, separately from the computer. In addition to being composed of media, it is composed of a ROM 72 on which a program is recorded and a hard disk including a storage unit 78 provided to the user in a state of being pre-installed in the apparatus main body. The same applies to FIGS. 8 and 11.

なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   In the present specification, the step of describing a computer program includes not only processing performed in time series according to the described order but also processing executed in parallel or individually even if not necessarily processed in time series. Is also included.

また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。   Further, in this specification, the system represents the entire apparatus composed of a plurality of apparatuses.

本発明を適用した情報処理システムの全体の構成例を示す図である。It is a figure which shows the example of a whole structure of the information processing system to which this invention is applied. 図1のサーバについて説明する図である。It is a figure explaining the server of FIG. 図1の端末SAMクライアントの機能的構成例を示す図である。It is a figure which shows the functional structural example of the terminal SAM client of FIG. 図1の端末SAMのハードウエアの構成例を示すブロック図である。It is a block diagram which shows the structural example of the hardware of the terminal SAM of FIG. 図4の記憶部に記憶される情報を説明する図である。It is a figure explaining the information memorize | stored in the memory | storage part of FIG. 図5の公開秘密鍵ロジックに含まれる情報を説明する図である。It is a figure explaining the information contained in the public secret key logic of FIG. 図4の端末SAMの機能的構成例を示すブロック図である。It is a block diagram which shows the functional structural example of the terminal SAM of FIG. 図1の認定機関のハードウエアの構成例を示すブロック図である。It is a block diagram which shows the structural example of the hardware of the certification | authentication organization of FIG. 図8の記憶部に記憶される情報を説明する図である。It is a figure explaining the information memorize | stored in the memory | storage part of FIG. 図8の認定機関の機能的構成例を示すブロック図である。It is a block diagram which shows the functional structural example of the accreditation organization of FIG. 図1のサーバのハードウエアの構成例を示すブロック図である。It is a block diagram which shows the structural example of the hardware of the server of FIG. 図11の記憶部に記憶される情報を説明する図である。It is a figure explaining the information memorize | stored in the memory | storage part of FIG. 図11のサーバの機能的構成例を示すブロック図である。It is a block diagram which shows the functional structural example of the server of FIG. デジタル署名と暗号化を説明する図である。It is a figure explaining a digital signature and encryption. デジタル署名を説明する図である。It is a figure explaining a digital signature. 認定機関が端末SAMを認定する処理を説明するフローチャートである。It is a flowchart explaining the process in which the accreditation body authorizes the terminal SAM. サーバが端末SAMを検証する処理を説明するフローチャートである。It is a flowchart explaining the process in which a server verifies terminal SAM. 端末SAMがサーバからスクリプトIDを受信し、登録する処理を説明するフローチャートである。It is a flowchart explaining the process which terminal SAM receives and registers script ID from a server. 端末SAMがサーバからスクリプトをダウンロードする処理を説明するフローチャートである。It is a flowchart explaining the process which terminal SAM downloads a script from a server. 端末SAMがサーバからスクリプトをダウンロードする処理を説明するフローチャートである。It is a flowchart explaining the process which terminal SAM downloads a script from a server. 端末SAMで実行するスクリプトがダウンロードされていない場合の処理を説明するフローチャートである。It is a flowchart explaining a process in case the script performed by terminal SAM is not downloaded. 端末SAMで実行するスクリプトがダウンロードされていない場合の処理を説明するフローチャートである。It is a flowchart explaining a process in case the script performed by terminal SAM is not downloaded. 端末SAMで実行するスクリプトがダウンロードされていた場合の処理を説明するフローチャートである。It is a flowchart explaining a process when the script to be executed by the terminal SAM has been downloaded. スクリプト実行中に制御端末に対してアクセスを行なう場合の処理を説明するフローチャートである。It is a flowchart explaining the process in the case of accessing with respect to a control terminal during script execution. スクリプト実行中にサーバに対してアクセスを行なう場合の処理を説明するフローチャートである。It is a flowchart explaining the process in the case of accessing with respect to a server during script execution. スクリプト実行中にサーバに対してアクセスを行なう場合の処理を説明するフローチャートである。It is a flowchart explaining the process in the case of accessing with respect to a server during script execution. スクリプト実行結果のログを格納する処理を説明するフローチャートである。It is a flowchart explaining the process which stores the log of a script execution result. 端末SAMにおいて格納しておいたログを、サーバに送信する場合の処理を説明するフローチャートである。It is a flowchart explaining the process in the case of transmitting the log stored in terminal SAM to a server.

符号の説明Explanation of symbols

1 情報処理システム, 11 端末SAMクライアント, 14 サーバ, 42 端末SAM, 43 ICカードリーダライタアンテナ, 123 サーバ証明書フォルダ, 124 端末SAM固有情報, 126 スクリプトフォルダ, 127 端末SAM共通情報, 128 ログフォルダ, 131 サーバID, 132 サーバ公開鍵, 133 URL, 141 端末SAM識別子, 142 端末SAM公開鍵の署名, 143 端末SAM公開鍵, 144 端末SAM秘密鍵, 151 サーバID, 152 スクリプトID, 153 スクリプト, 161 認定機関公開鍵, 171 ログ, 202 主制御部, 204 エンコード部, 205 署名処理部, 206 検証処理部, 209 スクリプト実行部, 303 認定機関情報, 304 端末SAM証明書フォルダ, 321 端末SAM識別子, 322 端末SAM公開鍵, 353 デコード部, 354 署名処理部, 404 サービス提供者固有情報, 405 スクリプトフォルダ, 406 端末SAM証明書フォルダ, 407 サービス提供者共通情報, 441 URL, 412 サーバ公開鍵, 413 サーバ秘密鍵, 421 スクリプトID, 422 スクリプト, 423 プログラム, 431 端末SAM識別子, 432 端末SAM公開鍵, 441 認定機関公開鍵, 454 署名処理部, 455 検証処理部, 458 プログラム実行部   1 Information processing system, 11 Terminal SAM client, 14 Server, 42 Terminal SAM, 43 IC card reader / writer antenna, 123 Server certificate folder, 124 Terminal SAM specific information, 126 Script folder, 127 Terminal SAM common information, 128 Log folder, 131 Server ID, 132 Server Public Key, 133 URL, 141 Terminal SAM Identifier, 142 Terminal SAM Public Key Signature, 143 Terminal SAM Public Key, 144 Terminal SAM Private Key, 151 Server ID, 152 Script ID, 153 Script, 161 Certification Institution public key, 171 log, 202 main control section, 204 encoding section, 205 signature processing section, 206 verification processing section, 209 script execution section, 303 authorized institution information, 304 terminal SAM certificate folder 321 terminal SAM identifier, 322 terminal SAM public key, 353 decoding unit, 354 signature processing unit, 404 service provider specific information, 405 script folder, 406 terminal SAM certificate folder, 407 service provider common information, 441 URL, 412 server Public key, 413 server private key, 421 script ID, 422 script, 423 program, 431 terminal SAM identifier, 432 terminal SAM public key, 441 certification authority public key, 454 signature processing unit, 455 verification processing unit, 458 program execution unit

Claims (11)

ICカードに関する情報を管理する端末装置、前記端末装置に情報を提供するサーバ、および前記端末装置を証明する認定装置からなる情報処理システムにおいて、
前記端末装置は、
前記端末装置に固有の端末識別子と、前記端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコード手段と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信手段と、
前記第1の送信手段による送信に対して、前記認定装置から送信されてきた第2の鍵の署名を受信する第1の受信手段と、
前記第1の受信手段により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶する第1の記憶手段と、
前記第2の鍵、前記第1の記憶手段に記憶された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信手段と
を備え、
前記認定装置は、
前記端末装置の前記第1の送信手段により送信されてきた、前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを受信する第2の受信手段と、
前記第2の受信手段により受信された、エンコードされた前記端末識別子および前記第2の鍵をデコードするデコード手段と、
前記デコード手段によりデコードされて得られた前記端末識別子と、前記第2の受信手段により受信された前記端末識別子とが一致するか否かを確認する確認手段と、
デコードされた前記端末識別子と、受信された前記端末識別子とが一致すると前記確認手段により確認された場合、前記認定装置が有する第3の鍵を用いて前記第2の鍵の署名を生成する第1の署名手段と、
前記第1の署名手段により生成された前記第2の鍵の署名を、前記端末装置に送信する第3の送信手段と
を備え、
前記サーバは、
前記端末装置の前記第2の送信手段により送信されてきた前記第2の鍵、前記第2の鍵の署名、および前記端末識別子を受信する第3の受信手段と、
前記第3の受信手段により受信された前記第2の鍵の署名、および認定装置が有する前記第3の鍵に対応する第4の鍵を用いて、前記第2の鍵が正当であるかを検証する第1の検証手段と、
前記第1の検証手段により前記第2の鍵が正当であることが検証された場合、前記端末識別子と前記第2の鍵を記憶する第2の記憶手段と
を備えることを特徴とする情報処理システム。
In an information processing system comprising a terminal device that manages information relating to an IC card, a server that provides information to the terminal device, and an authorization device that certifies the terminal device,
The terminal device
Encoding means for encoding a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device;
First transmitting means for transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
A first receiving means for receiving a signature of a second key transmitted from the authorized device in response to transmission by the first transmitting means;
First storage means for storing the signature of the second key received by the first receiving means together with the terminal identifier;
Second transmission means for transmitting the second key, the signature of the second key stored in the first storage means, and the terminal identifier to the server;
The certified device is
Second receiving means for receiving the terminal identifier and the encoded terminal identifier and the second key transmitted by the first transmitting means of the terminal device;
Decoding means for decoding the encoded terminal identifier and the second key received by the second receiving means;
Confirmation means for confirming whether or not the terminal identifier obtained by decoding by the decoding means matches the terminal identifier received by the second receiving means;
When the confirmation means confirms that the decoded terminal identifier matches the received terminal identifier, a signature for the second key is generated using a third key of the authorization device. 1 signing means;
A third transmitting means for transmitting the signature of the second key generated by the first signing means to the terminal device;
The server
Third receiving means for receiving the second key transmitted by the second transmitting means of the terminal device, the signature of the second key, and the terminal identifier;
Whether the second key is valid by using the signature of the second key received by the third receiving unit and the fourth key corresponding to the third key of the authorization device. A first verification means for verifying;
When the first verification unit verifies that the second key is valid, the information processing method includes: the terminal identifier; and a second storage unit that stores the second key. system.
前記端末装置は、
前記サーバに所定の情報を要求する場合、前記第1の鍵を用いて、前記情報を識別する識別情報の署名を生成する第2の署名手段と、
前記第2の署名手段により生成された前記識別情報の署名、前記識別情報、および前記端末識別子を、前記サーバに送信する第4の送信手段と、
前記第4の送信手段による送信に対して前記サーバから送信されてきた前記情報を受信する第4の受信手段と
をさらに備えるとともに、
前記サーバは、
前記端末装置の前記第4の送信手段により送信されてきた、前記識別情報の署名、前記識別情報、および前記端末識別子を受信する第5の受信手段と、
前記第5の受信手段により受信された前記識別情報の署名と、前記第5の受信手段により受信された前記端末識別子に対応する、前記第2の記憶手段に記憶された前記第2の鍵とを用いて、前記識別情報が正当であるかを検証する第2の検証手段と、
前記第2の検証手段により前記識別情報が正当であることが検証された場合、前記識別情報に対する前記情報を前記端末装置に送信する第5の送信手段と
をさらに備えることを特徴とする請求項1に記載の情報処理システム。
The terminal device
A second signing means for generating a signature of identification information for identifying the information using the first key when requesting predetermined information from the server;
Fourth transmission means for transmitting the signature of the identification information generated by the second signature means, the identification information, and the terminal identifier to the server;
And further comprising a fourth receiving means for receiving the information transmitted from the server in response to transmission by the fourth transmitting means,
The server
Fifth reception means for receiving the signature of the identification information, the identification information, and the terminal identifier transmitted by the fourth transmission means of the terminal device;
The signature of the identification information received by the fifth receiving means and the second key stored in the second storage means corresponding to the terminal identifier received by the fifth receiving means; Second verification means for verifying whether the identification information is valid using
5. A fifth transmission unit configured to transmit the information corresponding to the identification information to the terminal device when the identification information is verified to be valid by the second verification unit. 1. The information processing system according to 1.
前記情報は、前記ICカードに関するスクリプトまたは鍵である
ことを特徴とする請求項1に記載の情報処理システム。
The information processing system according to claim 1, wherein the information is a script or a key related to the IC card.
前記エンコード手段は、前記端末装置に固有の端末識別子および前記第2の鍵を、前記認定装置が有する前記3の鍵に対応する第4の鍵を用いてエンコードし、
前記デコード手段は、エンコードされた前記端末装置に固有の端末識別子および前記第2の鍵を、前記第3の鍵を用いてデコードする
ことを特徴とする請求項1に記載の情報処理システム。
The encoding means encodes a terminal identifier unique to the terminal device and the second key using a fourth key corresponding to the third key of the authorized device,
The information processing system according to claim 1, wherein the decoding unit decodes the encoded terminal identifier and the second key using the third key.
ICカードに関する情報を管理する端末装置、前記端末装置に情報を提供するサーバ、および前記端末装置を証明する認定装置からなる情報処理システムの情報処理方法において、
前記端末装置は、
前記端末装置に固有の端末識別子と、前記端末装置が有する第1の鍵に対応する第2の鍵とをエンコードし、
エンコードされていない前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信し、
前記認定装置は、
前記端末装置から送信されてきた、前記端末識別子と、エンコードされた前記端末識別子および前記第2の鍵とを受信し、
受信された、エンコードされた前記端末識別子および前記第2の鍵をデコードし、
デコードされて得られた前記端末識別子と、受信された前記端末識別子とが一致するか否かを確認し、
デコードされた前記端末識別子と、受信された前記端末識別子とが一致すると確認された場合、前記認定装置が有する第3の鍵を用いて前記第2の鍵の署名を生成し、
生成された前記第2の鍵の署名を、前記端末装置に送信し、
前記端末装置は、
前記認定装置から送信されてきた前記第2の鍵の署名を受信し、
受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御し、
前記第2の鍵、記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信し、
前記サーバは、
前記端末装置から送信されてきた前記第2の鍵、前記第2の鍵の署名、および前記端末識別子を受信し、
受信された前記第2の鍵の署名、および前記認定装置が有する前記第3の鍵に対応する第4の鍵を用いて、前記第2の鍵が正当であるかを検証し、
検証により前記第2の鍵が正当であることが検証された場合、前記端末識別子と前記第2の鍵の記憶を制御する
ことを特徴とする情報処理方法。
In an information processing method of an information processing system including a terminal device that manages information related to an IC card, a server that provides information to the terminal device, and an authorized device that certifies the terminal device,
The terminal device
Encoding a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device;
Transmitting the unencoded terminal identifier and the encoded terminal identifier and the second key to the authorized device;
The certified device is:
Receiving the terminal identifier, the encoded terminal identifier and the second key transmitted from the terminal device;
Decoding the received encoded terminal identifier and the second key;
Check whether the terminal identifier obtained by decoding and the received terminal identifier match,
If it is confirmed that the decoded terminal identifier matches the received terminal identifier, a signature of the second key is generated using a third key of the authorized device,
Transmitting the generated signature of the second key to the terminal device;
The terminal device
Receiving the signature of the second key transmitted from the authorized device;
Controlling to store the received signature of the second key together with the terminal identifier;
Sending the second key, the signature of the second key whose storage is controlled, and the terminal identifier to the server;
The server
Receiving the second key, the signature of the second key, and the terminal identifier transmitted from the terminal device;
Verifying that the second key is valid using the received signature of the second key and a fourth key corresponding to the third key of the authorized device;
When the verification verifies that the second key is valid, storage of the terminal identifier and the second key is controlled.
ICカードに関する情報を提供するサーバおよび認定装置と情報を授受する情報処理装置において、
前記端末装置に固有の端末識別子と、前記端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコード手段と、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信手段と、
前記第1の送信手段による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する第1の受信手段と、
前記第1の受信手段により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶する記憶手段と、
前記第2の鍵、前記記憶手段に記憶された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信手段と
を備えることを特徴とする情報処理装置。
In an information processing device that exchanges information with a server and an authorized device that provide information about an IC card,
Encoding means for encoding a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device;
First transmitting means for transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
In response to the transmission by the first transmission means, the first receiving the signature of the second key, which is the signature generated using the third key of the authorized device, transmitted from the authorized device. Means for receiving
Storage means for storing the signature of the second key received by the first receiving means together with the terminal identifier;
An information processing apparatus comprising: the second key, a signature of the second key stored in the storage unit, and a second transmission unit that transmits the terminal identifier to the server.
前記サーバに所定の情報を要求する場合、前記第1の鍵を用いて、前記情報を識別する識別情報の署名を生成する署名手段と、
前記署名手段により生成された前記識別情報の署名、前記識別情報、および前記端末識別子を、前記サーバに送信する第3の送信手段と、
前記第3の送信手段による送信に対して前記サーバから送信されてきた前記情報を受信する第2の受信手段と
をさらに備えることを特徴とする請求項6に記載の情報処理装置。
When requesting predetermined information from the server, a signature means for generating a signature of identification information for identifying the information using the first key;
Third transmission means for transmitting the signature of the identification information generated by the signature means, the identification information, and the terminal identifier to the server;
The information processing apparatus according to claim 6, further comprising: a second reception unit that receives the information transmitted from the server in response to transmission by the third transmission unit.
前記情報は、前記ICカードに関するスクリプトまたは鍵である
ことを特徴とする請求項7に記載の情報処理装置。
The information processing apparatus according to claim 7, wherein the information is a script or a key related to the IC card.
前記エンコード手段は、前記認定装置が有する前記第3の鍵に対応する前記第4の鍵を用いて、前記端末装置に固有の端末識別子および前記第2の鍵をエンコードする
ことを特徴とする請求項6に記載の情報処理装置。
The encoding means encodes a terminal identifier unique to the terminal device and the second key using the fourth key corresponding to the third key of the authorized device. Item 7. The information processing device according to Item 6.
ICカードに関する情報を提供するサーバおよび認定装置と情報を授受する情報処理装置の情報処理方法において、
前記端末装置に固有の端末識別子と、前記端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコードステップと、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信ステップと、
前記第1の送信ステップの処理による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する受信ステップと、
前記受信ステップの処理により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御する記憶制御ステップと、
前記第2の鍵、前記記憶制御ステップの処理により記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信ステップと
を含むことを特徴とする情報処理方法。
In an information processing method of an information processing apparatus for exchanging information with a server and an authorized apparatus that provide information on an IC card,
An encoding step of encoding a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device;
A first transmission step of transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
In response to the transmission by the processing of the first transmission step, the signature of the second key, which is the signature generated using the third key of the authorized device, transmitted from the authorized device is received. Receiving step;
A storage control step for controlling to store the signature of the second key received by the processing of the reception step together with the terminal identifier;
And a second transmission step of transmitting the second key, the signature of the second key whose storage is controlled by the processing of the storage control step, and the terminal identifier to the server. Processing method.
ICカードに関する情報を処理するプログラムであって、
前記端末装置に固有の端末識別子と、前記端末装置が有する第1の鍵に対応する第2の鍵とをエンコードするエンコードステップと、
エンコードされていない前記端末識別子と、前記エンコード手段によりエンコードされた前記端末識別子および前記第2の鍵とを、前記認定装置に送信する第1の送信ステップと、
前記第1の送信ステップの処理による送信に対して、前記認定装置から送信されてきた、前記認定装置が有する第3の鍵を用いて生成された署名である第2の鍵の署名を受信する受信ステップと、
前記受信ステップの処理により受信された前記第2の鍵の署名を、前記端末識別子とともに記憶するよう制御する記憶制御ステップと、
前記第2の鍵、前記記憶制御ステップの処理により記憶が制御された前記第2の鍵の署名、および前記端末識別子を前記サーバに送信する第2の送信ステップと
を含む処理をコンピュータに実行させることを特徴とするプログラム。
A program for processing information related to an IC card,
An encoding step of encoding a terminal identifier unique to the terminal device and a second key corresponding to the first key of the terminal device;
A first transmission step of transmitting the unencoded terminal identifier, the terminal identifier encoded by the encoding means, and the second key to the authorized device;
In response to the transmission by the processing of the first transmission step, the signature of the second key, which is the signature generated using the third key of the authorized device, transmitted from the authorized device is received. Receiving step;
A storage control step for controlling to store the signature of the second key received by the processing of the reception step together with the terminal identifier;
Causing the computer to execute a process including: the second key; a signature of the second key whose storage is controlled by the process of the storage control step; and a second transmission step of transmitting the terminal identifier to the server. A program characterized by that.
JP2004207380A 2004-07-14 2004-07-14 Information processing system, information processing method, information processing apparatus, and program Pending JP2006033267A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004207380A JP2006033267A (en) 2004-07-14 2004-07-14 Information processing system, information processing method, information processing apparatus, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004207380A JP2006033267A (en) 2004-07-14 2004-07-14 Information processing system, information processing method, information processing apparatus, and program

Publications (1)

Publication Number Publication Date
JP2006033267A true JP2006033267A (en) 2006-02-02

Family

ID=35899108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004207380A Pending JP2006033267A (en) 2004-07-14 2004-07-14 Information processing system, information processing method, information processing apparatus, and program

Country Status (1)

Country Link
JP (1) JP2006033267A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017506372A (en) * 2014-10-21 2017-03-02 スンシル ユニバーシティー リサーチ コンソルティウム テクノ−パークSoongsil University Research Consortium Techno−Park User terminal and core code protection method using peripheral device of user terminal
CN109543416A (en) * 2018-11-20 2019-03-29 郑州工程技术学院 A kind of interaction authentic communication processing system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249899A (en) * 2000-03-07 2001-09-14 Sony Corp Service providing system via communication means, its method, service mediating device and program providing medium
JP2002116769A (en) * 2000-10-06 2002-04-19 Matsushita Electric Ind Co Ltd Music delivery device and music reproducing device
JP2002297548A (en) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd Terminal registration system, and device and method for constituting the same
JP2003036023A (en) * 2001-07-25 2003-02-07 Toyo Eng Corp Network system and information transmission method using the same
JP2003337923A (en) * 2002-05-20 2003-11-28 Systemneeds Inc Method and system for data update
JP2004048660A (en) * 2002-05-24 2004-02-12 Sony Corp Information processing system and method, information processing apparatus and method, recording medium, and program
JP2004135195A (en) * 2002-10-11 2004-04-30 Ricoh Co Ltd Information equipment registration method, program for computer to execute the method, and information equipment

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249899A (en) * 2000-03-07 2001-09-14 Sony Corp Service providing system via communication means, its method, service mediating device and program providing medium
JP2002116769A (en) * 2000-10-06 2002-04-19 Matsushita Electric Ind Co Ltd Music delivery device and music reproducing device
JP2002297548A (en) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd Terminal registration system, and device and method for constituting the same
JP2003036023A (en) * 2001-07-25 2003-02-07 Toyo Eng Corp Network system and information transmission method using the same
JP2003337923A (en) * 2002-05-20 2003-11-28 Systemneeds Inc Method and system for data update
JP2004048660A (en) * 2002-05-24 2004-02-12 Sony Corp Information processing system and method, information processing apparatus and method, recording medium, and program
JP2004135195A (en) * 2002-10-11 2004-04-30 Ricoh Co Ltd Information equipment registration method, program for computer to execute the method, and information equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017506372A (en) * 2014-10-21 2017-03-02 スンシル ユニバーシティー リサーチ コンソルティウム テクノ−パークSoongsil University Research Consortium Techno−Park User terminal and core code protection method using peripheral device of user terminal
CN109543416A (en) * 2018-11-20 2019-03-29 郑州工程技术学院 A kind of interaction authentic communication processing system

Similar Documents

Publication Publication Date Title
US10595201B2 (en) Secure short message service (SMS) communications
KR101974452B1 (en) Methods and system for managing personal information based on programmable blockchain and one-id
CN105095696B (en) Method, system and the equipment of safety certification are carried out to application program
JP4617763B2 (en) Device authentication system, device authentication server, terminal device, device authentication method, and device authentication program
JP4866863B2 (en) Security code generation method and user device
US8495383B2 (en) Method for the secure storing of program state data in an electronic device
CN111275419B (en) Block chain wallet signature right confirming method, device and system
RU2628492C2 (en) Telecommunication chip-card
JP4803145B2 (en) Key sharing method and key distribution system
KR20060003319A (en) Device authentication system
JPH113033A (en) Method for identifying client for client-server electronic transaction, smart card and server relating to the same, and method and system for deciding approval for co-operation by user and verifier
JP2015515168A (en) Method for confirming identification information of user of communication terminal and related system
US20220116230A1 (en) Method for securely providing a personalized electronic identity on a terminal
US20190311145A1 (en) National identification number based authentication and content delivery
JP2017152880A (en) Authentication system, key processing coordination method, and key processing coordination program
KR20000006633A (en) Private Key, Certificate Administration System and Method Thereof
CN116709325B (en) Mobile equipment security authentication method based on high-speed encryption algorithm
JP2004013560A (en) Authentication system, communication terminal, and server
JP5622668B2 (en) Application authentication system, application authentication method
CN111914270A (en) Programmable authentication service method and system based on block chain technology
JP2009199147A (en) Communication control method and communication control program
JP2004140636A (en) System, server, and program for sign entrustment of electronic document
JP2006033267A (en) Information processing system, information processing method, information processing apparatus, and program
JP4683260B2 (en) Information processing system, information processing apparatus, server apparatus, and information processing method
KR101118424B1 (en) System for Processing Automatic Renewal with Certificate of Attestation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101111

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110303