JP2007066322A - Data processor and data processing method - Google Patents

Data processor and data processing method Download PDF

Info

Publication number
JP2007066322A
JP2007066322A JP2006274256A JP2006274256A JP2007066322A JP 2007066322 A JP2007066322 A JP 2007066322A JP 2006274256 A JP2006274256 A JP 2006274256A JP 2006274256 A JP2006274256 A JP 2006274256A JP 2007066322 A JP2007066322 A JP 2007066322A
Authority
JP
Japan
Prior art keywords
handler
memory
message
application
driver
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
JP2006274256A
Other languages
Japanese (ja)
Inventor
Takeshi Sakamura
健 坂村
Noboru Koshizuka
登 越塚
Masayuki Terada
雅之 寺田
Kensaku Mori
謙作 森
Kazuhiko Ishii
一彦 石井
Setsuyuki Hongo
節之 本郷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2006274256A priority Critical patent/JP2007066322A/en
Publication of JP2007066322A publication Critical patent/JP2007066322A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To attain a data processor and a data processing method capable of immediately executing other processing when an application generates an access request to a device via a driver. <P>SOLUTION: The data processor 100 has a handler 14 for IC memory and a handler 15 for communication according to processing content, a handler management table 17 which stores information representing correspondence relation between a transmitting destination for transmitting a message generated by the application 11 and a handler means and a driver 12. When the message generated by the application 11 is received, the driver 12 calls the IC memory handler 14 or the handler 15 for communication corresponding to the transmitting destination based on the transmitting destination described in the message and the information representing the correspondence relation stored in the handler management table 17. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、ドライバを介してICメモリなどのデバイスにアクセスすることのできるアプリケーションを実行するデータ処理装置およびデータ処理方法に関する。   The present invention relates to a data processing apparatus and a data processing method for executing an application capable of accessing a device such as an IC memory via a driver.

通常、装置上で起動しているアプリケーションがICメモリなどの外部のデバイスにアクセスしようとする場合、ICメモリにアクセスするためのドライバを用いてアクセスすることができる。すなわち、アプリケーションはドライバにアクセス要求を出力し、ドライバはICメモリからデータ取り出し、またICメモリにデータ書き込みなどの要求に応じた具体的な処理を行い、その処理終了後、ドライバはICメモリから取り出したデータを得て、または書き込みに対する応答を得る。ドライバは、処理による応答結果または処理により得たデータを、アプリケーションに出力することにより、アプリケーションはICメモリへのアクセス要求に対する結果を得ることができる。   Normally, when an application running on the apparatus tries to access an external device such as an IC memory, it can be accessed using a driver for accessing the IC memory. In other words, the application outputs an access request to the driver, the driver retrieves data from the IC memory, and performs specific processing according to a request such as writing data to the IC memory. After the processing is completed, the driver retrieves from the IC memory. Get data or get a response to writing. The driver outputs the response result by the process or the data obtained by the process to the application, so that the application can obtain the result for the access request to the IC memory.

しかしながら、アプリケーションはドライバを介してICメモリなどのデバイスにアクセス要求を行うと、ドライバからの応答などの結果を得るまで、アプリケーションは待ち状態となってしまう。アプリケーションがICメモリへアクセス要求を出した後、処理の内容によってはICメモリからのアクセス結果を得ることなくアプリケーション本来の処理を実行してもよい場合があるが、アプリケーションは待ち状態に入っているため、アプリケーション本来の処理を行うことができず、処理速度が低下するといった問題が生じる。   However, when an application makes an access request to a device such as an IC memory via a driver, the application enters a wait state until a result such as a response from the driver is obtained. After an application issues an access request to the IC memory, depending on the contents of the process, there may be a case where the original process of the application may be executed without obtaining the access result from the IC memory, but the application is in a waiting state. For this reason, there is a problem that processing inherent in the application cannot be performed and the processing speed is reduced.

そこで、本発明はアプリケーションがドライバを介してデバイスにアクセス要求を出した場合、すぐに別の処理を実行することができるデータ処理装置およびデータ処理方法を実現することを目的とする。   Accordingly, an object of the present invention is to realize a data processing apparatus and a data processing method capable of immediately executing another process when an application issues an access request to a device via a driver.

上述の課題を解決するために、本発明のデータ処理装置は、予め定められている特定の処理を実行するデバイスと、前記デバイスを用いた処理を行うアプリケーションと、前記デバイスに対するアクセス処理を実行するハンドラ手段と、前記アプリケーションからの指示に応じて前記ハンドラを呼び出すとともに、前記アプリケーションに指示を受付けた旨を通知するドライバ手段とを備えるデータ処理装置において、処理内容に応じた複数のハンドラ手段と、前記アプリケーションまたは前記デバイスで生成されたメッセージを送信する送信先とハンドラ手段との対応関係を示す情報を記憶する記憶手段とを備え、前記ドライバ手段は、前記アプリケーションまたは前記デバイスで生成されたメッセージを受信すると、前記メッセージに記述される送信先と前記記憶手段に記憶される対応関係を示す情報とに基づいて前記送信先に対応したハンドラ手段を呼び出す構成を備えている。   In order to solve the above-described problem, the data processing apparatus of the present invention executes a device that executes a predetermined process, an application that performs a process using the device, and an access process for the device. In a data processing apparatus comprising handler means and driver means for calling the handler in response to an instruction from the application and notifying the application that the instruction has been received, a plurality of handler means according to processing contents; Storage means for storing information indicating a correspondence relationship between a destination to which a message generated by the application or the device is transmitted and handler means, and the driver means is configured to store the message generated by the application or the device. When received, the message And a structure that calls the handler means corresponding to the destination based on the information indicating a correspondence relationship stored in the storage means and the destination to be.

また、本発明のデータ処理方法は、予め定められている特定の処理を実行するデバイスと、前記デバイスを用いた処理を行うアプリケーションと、前記デバイスに対するアクセス処理を実行する複数のハンドラ手段と、前記アプリケーションまたは前記デバイスで生成されたメッセージを送信する送信先とハンドラ手段との対応関係を示す情報を記憶する記憶手段と、前記アプリケーションからの指示に応じて前記ハンドラを呼び出すとともに、前記アプリケーションに指示を受付けた旨を通知するドライバ手段とを備えるデータ処理装置におけるデータ処理方法であって、前記ドライバ手段は、前記アプリケーションまたは前記デバイスで生成されたメッセージを受信する受信ステップと、前記受信ステップによりメッセージが受信されると、前記メッセージに記述される送信先と前記記憶手段に記憶される対応関係を示す情報とに基づいて、複数あるハンドラ手段から前記送信先に対応した一のハンドラ手段を呼び出す呼出ステップとを備えている。   Further, the data processing method of the present invention includes a device that executes predetermined specific processing, an application that performs processing using the device, a plurality of handler means that executes access processing for the device, Storage means for storing information indicating a correspondence relationship between a destination to which an application or a message generated by the device is transmitted and handler means, and calling the handler according to an instruction from the application, and instructing the application A data processing method in a data processing apparatus comprising driver means for notifying acceptance, wherein the driver means receives a message generated by the application or the device, and the message is received by the receiving step. Received A calling step for calling one handler means corresponding to the transmission destination from a plurality of handler means based on the transmission destination described in the message and the information indicating the correspondence relationship stored in the storage means. Yes.

本発明の上述の構成において、ドライバ手段はアプリケーションからの問い合わせに対して応答するとともに、アプリケーションからの要求に応じてハンドラ手段に対してデバイスにアクセスさせることにより、ドライバ手段からアプリケーションにすぐに応答を返すことができ、アプリケーションではデバイスにおける最終処理結果の応答を待たずにアプリケーションの処理を実行することができる。また、ハンドラを介したデバイスのアクセス処理を同時に行うことにより、デバイスの処理終了までアプリケーションを待たせることなく、アプリケーションはドライバからの応答を待つことなく、迅速な処理を実現することができる。   In the above-described configuration of the present invention, the driver means responds to an inquiry from the application, and causes the handler means to access the device in response to a request from the application, so that the driver means immediately responds to the application. The application can execute processing of the application without waiting for a response of the final processing result in the device. Further, by simultaneously performing device access processing via a handler, the application can realize quick processing without waiting for the application until the device processing ends, and without waiting for a response from the driver.

さらに、複数のハンドラを備えていることから、複数の処理に対応することができ、使い勝手の良いデータ処理装置を実現できる。   Furthermore, since a plurality of handlers are provided, a plurality of processes can be handled, and an easy-to-use data processing apparatus can be realized.

また、本発明のデータ処理装置は、ネットワークを介して前記メッセージの送受信を行う通信手段をさらに備え、前記ドライバ手段によって呼び出されたハンドラ手段は、前記通信手段を用いて予め定められている送信先にメッセージを送信するよう構成しても良い。   The data processing apparatus of the present invention further includes a communication unit that transmits and receives the message via a network, and the handler unit called by the driver unit is a transmission destination that is determined in advance using the communication unit. You may comprise so that a message may be transmitted.

本発明の上述の構成において、メッセージに含まれる送信先に対応したハンドラ手段を呼び出してネットワークを介してメッセージの送信を行うことにより、ネットワークを介した処理のように時間のかかる処理おいて特にアプリケーションが処理結果を待つ必要が無くなり、アプリケーションの迅速なる処理を期待することができる。   In the above-described configuration of the present invention, by calling a handler means corresponding to a destination included in a message and transmitting the message via the network, the application is particularly effective in a time-consuming process such as a process via the network. However, there is no need to wait for the processing result, and it is possible to expect a quick processing of the application.

本発明は、ドライバ手段はアプリケーションからの問い合わせに対して応答するとともに、アプリケーションからの要求に応じてハンドラ手段に対してデバイスにアクセスさせることにより、ドライバ手段からアプリケーションにすぐに応答を返すことができ、アプリケーションではデバイスにおける最終処理結果の応答を待たずにアプリケーションの処理を実行することができる。また、ハンドラを介したデバイスのアクセス処理を同時に行うことにより、デバイスの処理終了までアプリケーションを待たせることなく、アプリケーションはドライバからの応答を待つことなく、迅速な処理を実現することができる。   In the present invention, the driver means responds to the inquiry from the application, and the driver means can return the response to the application immediately by causing the handler means to access the device in response to the request from the application. The application can execute the processing of the application without waiting for the response of the final processing result in the device. Further, by simultaneously performing device access processing via a handler, the application can realize quick processing without waiting for the application until the device processing ends, and without waiting for a response from the driver.

本発明のデータ処理装置およびデータ処理方法について図面を用いて説明する。図1は、本発明のデータ処理装置のブロック構成図である。   The data processing apparatus and data processing method of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram of a data processing apparatus according to the present invention.

本発明のデータ処理装置100は、アプリケーション11(本発明のアプリケーション)(内部にアプリケーション用ハンドラ13(本発明のハンドラ手段)を保持する)、ドライバ12(本発明のドライバ手段)、ICメモリ用ハンドラ14(本発明のハンドラ手段)、通信用ハンドラ15(本発明のハンドラ手段)、ICメモリ16(本発明のデバイス)、ハンドラ管理テーブル17(本発明の記憶手段)、通信部18(本発明の通信手段)、表示部19から構成される。また、本発明の通信相手であるデータ処理装置100aも同様にアプリケーション11a(内部にアプリケーション用ハンドラ13aを保持する)、ドライバ12a、ICメモリ用ハンドラ14a、通信用ハンドラ15a、ICメモリ16a、ハンドラ管理テーブル17a、通信部18a、表示部19aから構成される。   The data processing apparatus 100 of the present invention includes an application 11 (application of the present invention) (which holds an application handler 13 (handler means of the present invention) inside), a driver 12 (driver means of the present invention), and an IC memory handler. 14 (handler means of the present invention), communication handler 15 (handler means of the present invention), IC memory 16 (device of the present invention), handler management table 17 (storage means of the present invention), communication unit 18 (of the present invention) Communication means) and a display unit 19. Similarly, the data processing apparatus 100a, which is the communication partner of the present invention, also has an application 11a (which holds an application handler 13a therein), a driver 12a, an IC memory handler 14a, a communication handler 15a, an IC memory 16a, and handler management. It comprises a table 17a, a communication unit 18a, and a display unit 19a.

アプリケーション11は、データ処理装置100内で起動し動作するものであり、特定の処理を行うものである。本例においては、電子署名の検証を行うことのできるアプリケーションであり、通信相手に電子署名の付与を依頼するため、電子署名付与の対象となるメッセージの送信依頼を行い、また、依頼するとともに、公開鍵証明書の請求を公開鍵認証サーバに行い、また、公開鍵の有効性を有効性検証サーバに問い合わせ、これら処理した情報に基づいて依頼した電子署名の検証を行う機能を有する。   The application 11 is activated and operates in the data processing apparatus 100, and performs a specific process. In this example, it is an application that can verify an electronic signature, and in order to request the communication partner to give an electronic signature, a request for sending a message to be attached with an electronic signature is made, and a request is made. It has a function of requesting a public key certificate from the public key authentication server, inquiring the validity verification server of the validity of the public key, and verifying the requested electronic signature based on the processed information.

ドライバ12は、アプリケーション11から電子署名を付与するようメッセージの送信依頼を受け付けると、送信しようとするメッセージの暗号化処理を依頼するため、ICメモリ用ハンドラ14を呼び出すとともに、アプリケーション11に対して送信依頼を受け付けた旨の応答を返す機能を有する。また、暗号化したメッセージを電子署名付与を行う装置、すなわちデータ処理装置100aに送信するため、通信用ハンドラ15を呼び出す。さらに、データ処理装置100aから電子署名が付与されたデータを受信すると、復号化の処理を行うため、ICメモリ用ハンドラ14を呼び出し、また復号化されたデータを受信するとアプリケーション11内にあるアプリケーション用ハンドラ13を呼び出し、電子署名の検証を行わせる。   When the driver 12 accepts a message transmission request to give an electronic signature from the application 11, the driver 12 calls the IC memory handler 14 and requests the application 11 to send an encryption process for the message to be transmitted. It has a function of returning a response indicating that the request has been accepted. In addition, the communication handler 15 is called in order to transmit the encrypted message to a device for applying an electronic signature, that is, the data processing device 100a. Further, when data with an electronic signature is received from the data processing apparatus 100a, the IC memory handler 14 is called to perform the decryption process. When the decrypted data is received, the application 11 in the application 11 is used. The handler 13 is called and the electronic signature is verified.

なお、一般的なドライバは、アプリケーションとハードウェアを接続するときに間を取りもつソフトウェアであり、本発明におけるドライバはアプリケーションとハードウェアを接続するときに間を取りもつソフトウェアに加えて、ハードウエアと接続するためのハンドラを呼び出す機能を備える。   Note that a general driver is software that takes time when an application and hardware are connected, and a driver in the present invention is hardware in addition to software that takes time when connecting an application and hardware. The function to call the handler for connecting to is provided.

アプリケーション用ハンドラ13は、アプリケーション内に保持されるハンドラであり、このハンドラが呼び出されるとアプリケーションの処理に割り込みをかけ、特定の処理を行う。本発明においては、電子署名の検証処理を行う。なお、ハンドラとは、外部割り込みにより起動される、割り込み処理ルーチンを指すものであり、本実施の形態においてはドライバ12により呼び出され、ICメモリ16などのデバイスに対するアクセス処理、またはアプリケーションの処理に対する割り込み処理を行うプログラムとする。   The application handler 13 is a handler held in the application. When this handler is called, the application process is interrupted to perform a specific process. In the present invention, an electronic signature verification process is performed. The handler refers to an interrupt processing routine that is activated by an external interrupt. In the present embodiment, the handler is called by the driver 12 and is used to access a device such as the IC memory 16 or an interrupt for an application process. A program that performs processing.

ICメモリ用ハンドラ14は、ICメモリ16にアクセスするためのハンドラであり、ICメモリ16内でメッセージの暗号化処理、復号化処理を行せたいときに、ICメモリ16に暗号化させるデータ、復号化させるデータを送る。   The IC memory handler 14 is a handler for accessing the IC memory 16, and when it is desired to perform message encryption processing and decryption processing within the IC memory 16, data to be encrypted by the IC memory 16 and decryption. Send data to be converted.

通信用ハンドラ15は、通信処理を行うハンドラである。ICメモリ16で処理されて生成されたメッセージに記述される送信先に対応してドライバ12により呼び出され、予め定められた送信先に送信処理を行うものである。本発明では、暗号化処理を行った場合の送信先としてデータ処理装置100aのIPアドレスが図示しないメモリに予め格納され、送信する際IPアドレスが読み出される。なお、通信用ハンドラ15に、送信先のIDとIPアドレスとを対応付けるサーバをネットワーク上に配置しておき、このサーバに送信先のIDを送信し、そのIPアドレスを取得する仕組みにしても良い。   The communication handler 15 is a handler that performs communication processing. It is called by the driver 12 corresponding to the transmission destination described in the message generated by processing in the IC memory 16 and performs transmission processing to a predetermined transmission destination. In the present invention, the IP address of the data processing apparatus 100a is stored in advance in a memory (not shown) as a transmission destination when encryption processing is performed, and the IP address is read out during transmission. A server for associating the transmission destination ID with the IP address may be arranged on the network in the communication handler 15, and the transmission destination ID may be transmitted to the server to obtain the IP address. .

ICメモリ16は、不揮発性メモリからなるメモリであり、着脱自在に装着され、暗号化処理、復号化処理を主に行う。   The IC memory 16 is a memory composed of a nonvolatile memory, is detachably mounted, and mainly performs encryption processing and decryption processing.

ハンドラ管理テーブル17は、アプリケーション11、または前述各ハンドラから送られるメッセージに記述される送信先(自装置内または外部の装置内に備えられるデバイスを特定する送信先)に対応して呼び出すべきハンドラを記憶する。図2は、ハンドラ管理テーブル17の具体例を示す図である。   The handler management table 17 calls a handler to be called corresponding to a destination (a destination specifying a device provided in the own device or an external device) described in the message sent from the application 11 or each of the above handlers. Remember. FIG. 2 is a diagram showing a specific example of the handler management table 17.

このハンドラ管理テーブル17は、デバイスを特定する送信先と呼び出すハンドラとを対応付けて記憶する。ドライバ12に、<送信元、送信先、データ内容>の3つの組で構成されるメッセージが送られると、ドライバ12では送られたメッセージに記述される送信先およびハンドラ管理テーブル17とに基づいて、どのハンドラを呼び出すかを判断し、該当するハンドラを呼び出す。なお、送信先はデバイスを特定するIDで示され、このIDを用いて各デバイス(ICメモリ、アプリケーションなど)を特定することができる。   The handler management table 17 stores a destination for specifying a device and a handler to be called in association with each other. When a message composed of three sets of <transmission source, transmission destination, and data content> is sent to the driver 12, the driver 12 is based on the transmission destination and handler management table 17 described in the sent message. Determine which handler to call and call the appropriate handler. The transmission destination is indicated by an ID for specifying a device, and each device (IC memory, application, etc.) can be specified by using this ID.

通信部18は、通信用ハンドラ15による制御によりネットワークを介して相手と通信を行う。   The communication unit 18 communicates with the other party via the network under the control of the communication handler 15.

表示部19は、データ処理装置100aで署名された電子署名の検証を行った結果を表示する。   The display unit 19 displays the result of verifying the electronic signature signed by the data processing apparatus 100a.

データ処理装置100aは、データ処理装置100から電子署名の依頼を受ける装置である。   The data processing device 100a is a device that receives an electronic signature request from the data processing device 100.

ICメモリ16aは、データ処理装置100から送信されたメッセージを復号化し、復号化されたメッセージに電子署名を付与する。そして、電子署名が付与されたメッセージを符号化し、これをICメモリドライバ14に返信する。   The IC memory 16a decrypts the message transmitted from the data processing apparatus 100, and gives an electronic signature to the decrypted message. Then, the message with the electronic signature is encoded and returned to the IC memory driver 14.

他の構成は、データ処理装置100を構成するものと同様である。なお、ハンドラ管理テーブル17aに記憶される内容はハンドラ管理テーブル17に記載の内容と相違する。図3は、その具体例である。図に示すとおり、データ処理装置100a内のICメモリ16aを呼び出すハンドラと、データ処理装置100の通信用ハンドラ15を、メッセージに記述される送信先に応じて呼び出すことができるよう対応付けて記憶している。   Other configurations are the same as those configuring the data processing apparatus 100. The contents stored in the handler management table 17a are different from the contents described in the handler management table 17. FIG. 3 is a specific example thereof. As shown in the figure, the handler that calls the IC memory 16a in the data processing device 100a and the communication handler 15 of the data processing device 100 are stored in association with each other so that they can be called according to the transmission destination described in the message. ing.

これら構成されたデータ処理装置100、100aとの間で電子署名を実行し、その検証を行うときの具体例を説明する。図4はその処理を行うときのシーケンス図である。   A specific example in which an electronic signature is executed with the data processing apparatuses 100 and 100a configured as described above and the verification is performed will be described. FIG. 4 is a sequence diagram when performing the processing.

アプリケーション11は、ユーザの入力操作により暗号化処理を行うICメモリ16のID、電子署名の付与を行うICメモリ16aのID、および電子署名が付与されるデータを受付け、受付けたICメモリ16aの送信先であるデータ処理装置100aに電子署名の付与の依頼を行い、メッセージm1<アプリケーション11のID、ICメモリ16のID、ICメモリ16aのIDおよびデータM>をドライバ12に出力する(S101)。アプリケーション11は、ドライバ12から電子署名の付与の依頼に対する応答を受けると、電子署名の検証処理を開始する。まず、アプリケーション11は、ICメモリ16aの公開鍵の証明書である公開鍵証明書の要求を行う要求メッセージを公開鍵証明書サーバに送信し、公開鍵証明書サーバから公開鍵証明書を取得する(S102)。なお、公開鍵証明書とは、CA(Certificate Authority:認証局) が自らの責任のもとにユーザと公開鍵との結びつきを証明したものであって、ユーザの素性(姓名、所属、電子メー
ルアドレス等) と公開鍵データとに、CA 自らの電子署名を施したものである。
The application 11 accepts the ID of the IC memory 16 that performs encryption processing by the user's input operation, the ID of the IC memory 16a that assigns the electronic signature, and the data to which the electronic signature is attached, and transmits the received IC memory 16a. A request for giving an electronic signature is made to the data processing apparatus 100a, and the message m1 <ID of application 11, ID of IC memory 16, ID of IC memory 16a and data M> is output to driver 12 (S101). When the application 11 receives a response from the driver 12 in response to the request for giving an electronic signature, the application 11 starts an electronic signature verification process. First, the application 11 transmits a request message for requesting a public key certificate that is a public key certificate of the IC memory 16a to the public key certificate server, and acquires the public key certificate from the public key certificate server. (S102). A public key certificate is a certificate (Certificate Authority) that proves the connection between a user and a public key under his / her own responsibility. Address, etc.) and public key data are CA's own digital signatures.

また、アプリケーション11は、取得した公開鍵証明書の有効性を問合せる処理を行い、問合せメッセージを有効性検証サーバに送信し、有効性検証サーバでは公開鍵証明書が有効であるか、無効であるか検証を行い、その結果を取得する(S103)。なお、公開鍵証明書が有効であるか、否かを管理する公的機関が、有効性検証サーバの管理、運営を行っており、有効性に対する問合せに応じて管理している結果を返信するようにしている。   Further, the application 11 performs processing for inquiring the validity of the acquired public key certificate, and transmits an inquiry message to the validity verification server. The public key certificate is valid or invalid in the validity verification server. The result is obtained (S103). The public organization that manages whether or not the public key certificate is valid manages and operates the validity verification server, and returns the results managed in response to inquiries regarding validity. I am doing so.

アプリケーション11がこれら処理を実行している間、ドライバ12、ICメモリ用ハンドラ14、通信用ハンドラ15は、以下の処理を行う。   While the application 11 is executing these processes, the driver 12, the IC memory handler 14, and the communication handler 15 perform the following processes.

ドライバ12は、送信依頼に対する受付けをアプリケーション11に応答し(S201)、アプリケーション11から受信したメッセージに記述されている送信先に対応したハンドラを呼び出す(S202)。ここでは、ICメモリ16のIDが記述されていることからハンドラ管理テーブル17に基づいて対応するICメモリ用ハンドラ14を呼び出す。   The driver 12 responds to the application 11 with acceptance of the transmission request (S201), and calls a handler corresponding to the transmission destination described in the message received from the application 11 (S202). Here, since the ID of the IC memory 16 is described, the corresponding IC memory handler 14 is called based on the handler management table 17.

呼び出されたICメモリ用ハンドラ14は、メッセージm1をICメモリ16に出力する(S203)。メッセージm1を受信したICメモリ16は、メッセージm1の中のデータMを取り出し、予め決められている公開鍵Pk2を用いてデータMを暗号化し、暗号化データCを生成する(S204)。そして、送信元をICメモリ16のID、送信先をメッセージm1のデータ内容欄に記述されたICメモリ16aのIDとするメッセージm2<ICメモリ16のID、ICメモリ16aのID、C>を生成してICメモリ用ハンドラ14に出力する(S205)。   The called IC memory handler 14 outputs the message m1 to the IC memory 16 (S203). The IC memory 16 that has received the message m1 extracts the data M in the message m1, encrypts the data M using a predetermined public key Pk2, and generates encrypted data C (S204). Then, the message m2 <the ID of the IC memory 16, the ID of the IC memory 16a, the ID of the IC memory 16a, C> is generated with the sender as the ID of the IC memory 16 and the destination as the ID of the IC memory 16a described in the data content column of the message m1 Then, the data is output to the IC memory handler 14 (S205).

ICメモリ用ハンドラ14は、メッセージm2を解析し、ICメモリ16aのIDで指し示す送信先に暗号化データCを送信するようドライバ12に依頼する(S206)。ドライバ12は、ハンドラ管理テーブル17に基づいてメッセージm2に記述される送信先に対応する通信用ハンドラ15を呼び出す(S207)。呼び出された通信用ハンドラ15には、予め送信先のIPアドレスが設定されており、呼び出されると、設定されているIPアドレスで特定される通信用ハンドラ15aを有するデータ処理装置100aと通信接続し、メッセージm2に記述されるICメモリ16aを特定するID宛てにメッセージm2を送信する(S208)。なお、通信用ハンドラ15aにはIPアドレスを予め設定せずに、ICメモリ16aのIDとそのICメモリ16aを有する装置のIPアドレスとを対応付けて記憶するサーバを設置しておき、そのサーバにICメモリ16aのIDを送出し、対応するIPアドレスを取出すようにしてもよい。   The IC memory handler 14 analyzes the message m2 and requests the driver 12 to transmit the encrypted data C to the transmission destination indicated by the ID of the IC memory 16a (S206). The driver 12 calls the communication handler 15 corresponding to the transmission destination described in the message m2 based on the handler management table 17 (S207). The called communication handler 15 is set in advance with a destination IP address. When called, the communication handler 15 is connected to the data processing apparatus 100a having the communication handler 15a specified by the set IP address. The message m2 is transmitted to the ID that specifies the IC memory 16a described in the message m2 (S208). The communication handler 15a has a server for storing the ID of the IC memory 16a and the IP address of the device having the IC memory 16a in association with each other without setting an IP address in advance. You may make it send out ID of IC memory 16a and take out a corresponding IP address.

通信用ハンドラ15aはドライバ12aにメッセージm2を送信する(S209)。メッセージm2を受信したドライバ12aは、ハンドラ管理テーブル17aに基づいて、メッセージm2に記述される送信先に対応したICメモリ用ハンドラ14を呼び出す(S210)。呼び出されたICメモリ用ハンドラ14aはメッセージm2をICメモリ16aに登録する(S211)。   The communication handler 15a transmits a message m2 to the driver 12a (S209). The driver 12a that has received the message m2 calls the IC memory handler 14 corresponding to the transmission destination described in the message m2 based on the handler management table 17a (S210). The called IC memory handler 14a registers the message m2 in the IC memory 16a (S211).

メッセージm2を登録したICメモリ16aは、メッセージm2に記述される暗号化データCを秘密鍵Sk2を用いて復号化し、データMを得る(S212)。そして、ICメモリ16aは、データMに電子署名を付与することで、電子署名化データMSを生成し(S213)、MSを公開鍵Pk1を用いて暗号化し、暗号化データCSを生成する(S214)。   The IC memory 16a in which the message m2 is registered decrypts the encrypted data C described in the message m2 using the secret key Sk2, and obtains data M (S212). The IC memory 16a generates an electronic signature data MS by giving an electronic signature to the data M (S213), encrypts the MS using the public key Pk1, and generates encrypted data CS (S214). ).

ICメモリ16aは、メッセージm2に記述されている送信元、送信先を用いて、暗号化データCSを返信するためのデータである暗号化データCSを有するメッセージm3<ICメモリ16aのID、ICメモリ16のID、CS>を生成し、メッセージm3をICメモリ用ハンドラ14aに返信する(S215)。ICメモリ用ハンドラ14aは、メッセージm3の送信依頼をドライバ12aに行い(S216)、ドライバ12aは、ハンドラ管理テーブル17aに基づいてメッセージm3の送信先に対応する通信用ハンドラ15aを呼び出す(S217)。   The IC memory 16a uses a transmission source and a transmission destination described in the message m2, and a message m3 having encrypted data CS that is data for returning the encrypted data CS <ID of the IC memory 16a, IC memory 16 ID, CS> is generated, and the message m3 is returned to the IC memory handler 14a (S215). The IC memory handler 14a requests the driver 12a to transmit the message m3 (S216), and the driver 12a calls the communication handler 15a corresponding to the destination of the message m3 based on the handler management table 17a (S217).

呼び出された通信用ハンドラ15aには、予め送信先のIPアドレスが設定されており、呼び出されると、設定されているIPアドレスで特定される通信用ハンドラ15と通信接続し、ICメモリ16を特定するID宛てにメッセージm3を送信する(S218)。なお、通信用ハンドラ15aにはIPアドレスを予め設定せずに、ICメモリ16のIDとそのICメモリ16を有する装置のIPアドレスとを対応付けて記憶するサーバを設置しておき、そのサーバにICメモリ16のIDを送出し、対応するIPアドレスを取り出すようにしてもよい。   The called communication handler 15a has a destination IP address set in advance. When called, the communication handler 15a is connected to the communication handler 15 specified by the set IP address, and the IC memory 16 is specified. The message m3 is transmitted to the ID to be sent (S218). The communication handler 15a has a server for storing the ID of the IC memory 16 and the IP address of the device having the IC memory 16 in association with each other without setting an IP address in advance. The ID of the IC memory 16 may be sent out and the corresponding IP address may be taken out.

通信用ハンドラ15aからの送信処理を受信した通信用ハンドラ15は、メッセージm3を登録するようドライバ12に出力する(S219)。ドライバ12は、ハンドラ管理テーブル17に基づいてメッセージm3に記述される送信先に対応するICメモリ用ハンドラ14を呼び出す(S220)。   The communication handler 15 that has received the transmission process from the communication handler 15a outputs the message m3 to the driver 12 (S219). The driver 12 calls the IC memory handler 14 corresponding to the transmission destination described in the message m3 based on the handler management table 17 (S220).

呼び出されたICメモリ用ハンドラ14はメッセージm3に記述されているICメモリ16のIDで特定する送信先、つまりICメモリ16にメッセージm3を送信する(S221)。ICメモリ16では、送信されたメッセージm3の中の暗号化データCSを秘密鍵Sk1を用いて復号化し、電子署名化データMSを得る(S222)。そして、ICメモリ16は、S203で受信したメッセージm1に記述される送信元(つまり、アプリケーション11のID)を記憶しており、記憶した送信元を用いて、アプリケーション11にメッセージm4を渡すことができるよう、電子署名化データMSを有するメッセージm4<ICメモリ16のID、アプリケーション11のID、MS>を生成し、メッセージm4をICメモリ用ハンドラ14に返信する(S223)。ICメモリ用ハンドラ14は、さらにメッセージm4をドライバ12に送信する(S224)。   The called IC memory handler 14 transmits the message m3 to the destination specified by the ID of the IC memory 16 described in the message m3, that is, the IC memory 16 (S221). In the IC memory 16, the encrypted data CS in the transmitted message m3 is decrypted using the secret key Sk1, and the electronic signature data MS is obtained (S222). The IC memory 16 stores the transmission source (that is, the ID of the application 11) described in the message m1 received in S203, and can pass the message m4 to the application 11 using the stored transmission source. A message m4 <ID of the IC memory 16, ID of the application 11, MS> having the electronic signature data MS is generated so that the message m4 is returned to the IC memory handler 14 (S223). The IC memory handler 14 further transmits a message m4 to the driver 12 (S224).

ドライバ12は、ハンドラ管理テーブル17に基づいてメッセージm4に記述される送信先であるアプリケーション11のIDに対応するアプリケーション用ハンドラ13を呼び出す(S225)。   The driver 12 calls the application handler 13 corresponding to the ID of the application 11 that is the transmission destination described in the message m4 based on the handler management table 17 (S225).

呼び出されたアプリケーション用ハンドラ13は、アプリケーション11の処理に割り込みをかけ、起動する(S104)。そして、起動したアプリケーション用ハンドラ13はメッセージm4のデータMSの電子署名が正当であるかを検証する。すなわち、MSに電子署名を施した公開鍵と、上述した有効であると判断された公開鍵証明書に記述されている公開鍵との一致を判断し、一致していればメッセージm4に記述されるデータMSに付与される電子署名は正当な電子署名が施されたものであると判断し、一致していなければ電子署名は不当なものであると判断する(S105)。そして、その判断結果を表示部に出力する(S106)。なお、S225によるアプリケーション用ハンドラ13の呼び出し処理が行われる前に、S102、S103の公開鍵証明書の要求、有効性の検証は終了しているものとする。   The called application handler 13 interrupts the processing of the application 11 and starts (S104). Then, the activated application handler 13 verifies whether the electronic signature of the data MS of the message m4 is valid. That is, it is determined whether or not the public key obtained by applying an electronic signature to the MS and the public key described in the public key certificate determined to be valid are described in the message m4. It is determined that the electronic signature given to the data MS is a legitimate electronic signature, and if it does not match, it is determined that the electronic signature is invalid (S105). Then, the determination result is output to the display unit (S106). It is assumed that the public key certificate request and the validity verification in S102 and S103 have been completed before the calling process of the application handler 13 in S225.

以上の処理により送信しようとするデータに電子署名を付与し、電子署名の正当性を得た後に、ユーザは任意の送信先に正当性を有している電子署名を付与したデータを送る処理を行うことができる。   After giving the electronic signature to the data to be transmitted by the above processing and obtaining the validity of the electronic signature, the user performs processing to send the data with the electronic signature having the validity to an arbitrary transmission destination. It can be carried out.

以上、アプリケーション11からドライバ12に送信依頼を行い、ドライバ12から送信依頼に対する受付け応答をアプリケーション11に対して行うことによる効果について説明する。   The effects of making a transmission request from the application 11 to the driver 12 and sending an acceptance response to the transmission request from the driver 12 to the application 11 will be described.

アプリケーション11は、ドライバ12に対して送信依頼を行い、その受付け応答をドライバ12から受信することにより、アプリケーション11はドライバ12から送信依頼に対する処理結果が来るまで待機する必要が無く、アプリケーション11は他の処理を実行することができ、効率の良い処理を実現することができる。   The application 11 makes a transmission request to the driver 12 and receives an acceptance response from the driver 12, so that the application 11 does not need to wait until the processing result for the transmission request is received from the driver 12. This process can be executed, and an efficient process can be realized.

次に、ドライバの代わりに共有メモリを用いた別の実施の形態について説明する。   Next, another embodiment using a shared memory instead of a driver will be described.

図5は、別の実施の形態であるデータ処理装置200のブロック構成図である。   FIG. 5 is a block diagram of a data processing apparatus 200 according to another embodiment.

本発明のデータ処理装置200は、アプリケーション101(本発明のアプリケーション)(内部にアプリケーション用ハンドラ103(本発明のハンドラ手段)を保持する)、共有メモリ102(本発明の共有メモリ)、ICメモリ用ハンドラ104(本発明のハンドラ手段)、通信用ハンドラ105(本発明のハンドラ手段)、ICメモリ106、通信部107、表示部108から構成される。また、本発明の通信相手であるデータ処理装置200aも同様にアプリケーション101a(内部にアプリケーション用ハンドラ13aを保持する)、共有メモリ102a、ICメモリ用ハンドラ104a、通信用ハンドラ105a、ICメモリ106a、通信部107a、表示部108aから構成される。   The data processing apparatus 200 of the present invention includes an application 101 (application of the present invention) (which holds an application handler 103 (handler means of the present invention), a shared memory 102 (shared memory of the present invention), and an IC memory. It comprises a handler 104 (handler means of the present invention), a communication handler 105 (handler means of the present invention), an IC memory 106, a communication unit 107, and a display unit 108. Similarly, the data processing apparatus 200a, which is the communication partner of the present invention, also has an application 101a (which holds an application handler 13a therein), a shared memory 102a, an IC memory handler 104a, a communication handler 105a, an IC memory 106a, a communication Part 107a and display part 108a.

アプリケーション101は、データ処理装置200内で起動し動作するものであり、所定の処理を行うものである。本例においては、電子署名の検証を行うことのできるアプリケーションであり、電子署名を付与するメッセージの送信依頼を行い、また、依頼するとともに、公開鍵証明書の請求を公開鍵認証サーバに行い、また、公開鍵の有効性を有効性検証サーバに問い合わせ、これら処理した情報に基づいて依頼した電子署名の検証を行う機能を有する。   The application 101 is activated and operates in the data processing apparatus 200, and performs predetermined processing. In this example, it is an application capable of verifying an electronic signature, requesting transmission of a message to which an electronic signature is attached, requesting, and requesting a public key certificate from a public key authentication server, Further, it has a function of inquiring the validity verification server about the validity of the public key and verifying the requested electronic signature based on the processed information.

アプリケーション用ハンドラ103は、アプリケーション内に保持されるハンドラであり、このハンドラは、常に共有メモリ102を監視し、共有メモリにアプリケーションを特定するIDを送信先とするメッセージが登録されると、アプリケーション用ハンドラ103が割り込み処理を実行する。本発明においては、電子署名の検証処理を行う。なお、本実施の形態におけるハンドラは、外部割込みにより起動される割り込み処理ルーチンを指すものであり、共有メモリ102を常に監視し、所定の条件を満たす(所定の送信先がメッセージに設定されるなど)と、その条件に該当するハンドラが割り込み処理をかけて動作するものである。   The application handler 103 is a handler held in the application. This handler always monitors the shared memory 102, and when a message having an ID for identifying the application as a transmission destination is registered in the shared memory, the handler for the application is used. The handler 103 executes interrupt processing. In the present invention, an electronic signature verification process is performed. The handler in the present embodiment indicates an interrupt processing routine activated by an external interrupt, and always monitors the shared memory 102 and satisfies a predetermined condition (a predetermined transmission destination is set in a message, etc.) ) And the handler corresponding to the condition operates by interrupt processing.

ICメモリ用ハンドラ104は、ICメモリ106にアクセスするためのハンドラであり、このハンドラは、常に共有メモリ102を監視し、共有メモリ102に特定の条件を満たすメッセージが登録されると、ICメモリ用ハンドラ104がICメモリ106にアクセスするための割り込み処理を実行する。また、共有メモリ102に書き込む動作を行う場合は、書き込み動作を行った後すぐに、共有メモリ102の監視動作を行う処理に戻る。本発明においては、共有メモリ102に、ICメモリ105を送信先としたIDを記述するメッセージが登録されると、ICメモリ用ハンドラ104はこのメッセージを取得する動作を行い、取得したメッセージをICメモリ106に出力する。そして、メッセージの暗号化処理、または復号化処理をICメモリ105に対して行わせるようICメモリ105にメッセージを出力する。また、ICメモリ105から暗号化処理、復号化処理がされたデータを受け取ると、共有メモリ102に書き込む処理を行う。   The IC memory handler 104 is a handler for accessing the IC memory 106. This handler always monitors the shared memory 102, and when a message satisfying a specific condition is registered in the shared memory 102, the IC memory handler 104 is used. The handler 104 executes an interrupt process for accessing the IC memory 106. When performing an operation of writing to the shared memory 102, the process returns to the process of performing the monitoring operation of the shared memory 102 immediately after performing the writing operation. In the present invention, when a message describing an ID with the IC memory 105 as a transmission destination is registered in the shared memory 102, the IC memory handler 104 performs an operation of acquiring this message, and the acquired message is stored in the IC memory. It outputs to 106. Then, the message is output to the IC memory 105 so as to cause the IC memory 105 to perform message encryption processing or decryption processing. In addition, when data subjected to encryption processing and decryption processing is received from the IC memory 105, processing to write to the shared memory 102 is performed.

通信用ハンドラ105は、通信処理を行うハンドラであり、このハンドラは、常に共有メモリ102を監視し、共有メモリに特定の条件を満たすメッセージが登録されると、通信用ハンドラ105が通信のための割り込み処理を行う。本発明においては、共有メモリ102に登録されたメッセージが、データ処理装置200aが有する各デバイスのIDを送信先として記述されていると、通信用ハンドラ105は、メッセージに記述される送信先として記述されているIDに対応するIPアドレスを別に記憶しているメモリから取り出し、取出したIPアドレス宛てにメッセージを送信する。なお、通信用ハンドラ105には、送信先として記述されるIDと物理的なあて先となるIPアドレスとが対応づいて記憶するメモリを有しており、登録されたメッセージの送信先として記述されているIDに対応してIPアドレスを取り出し、当該IPアドレス宛てにメッセージの送信先として記述されるIDとともに送信データの送信処理を実行する。また、データ処理装置200aから受信したメッセージを受信すると、受信したメッセージを共有メモリ102に書き込む処理をする。   The communication handler 105 is a handler that performs communication processing. This handler constantly monitors the shared memory 102, and when a message that satisfies a specific condition is registered in the shared memory, the communication handler 105 performs communication. Perform interrupt processing. In the present invention, when the message registered in the shared memory 102 is described with the ID of each device included in the data processing apparatus 200a as the transmission destination, the communication handler 105 is described as the transmission destination described in the message. The IP address corresponding to the ID that has been retrieved is taken out from a memory that is separately stored, and a message is transmitted to the extracted IP address. The communication handler 105 has a memory for storing an ID described as a transmission destination and an IP address as a physical destination in association with each other, and is described as a transmission destination of a registered message. The IP address corresponding to the ID is taken out, and the transmission processing of the transmission data is executed together with the ID described as the message transmission destination addressed to the IP address. When the message received from the data processing device 200 a is received, the received message is written into the shared memory 102.

ICメモリ106は、不揮発性メモリからなるメモリであり、着脱自在に装着され、暗号化処理、復号化処理を主に行う。   The IC memory 106 is a non-volatile memory, is detachably mounted, and mainly performs encryption processing and decryption processing.

通信部107は、ネットワークを介して相手と通信を行う。   The communication unit 107 communicates with the other party via a network.

表示部108は、データ処理装置200aで署名された電子署名の検証を行った結果を表示する。   The display unit 108 displays the result of verifying the electronic signature signed by the data processing device 200a.

次に、データ処理装置200aの構成について説明する。データ処理装置200aは、データ処理装置200から電子署名の依頼を受ける装置である。   Next, the configuration of the data processing device 200a will be described. The data processing device 200a is a device that receives an electronic signature request from the data processing device 200.

ICメモリ106aは、データ処理装置200から送信されたメッセージを復号化し、復号化されたメッセージに電子署名を付与する。そして、電子署名が付与されたメッセージを符号化し、これをICメモリドライバ104に返信する。   The IC memory 106a decrypts the message transmitted from the data processing device 200, and gives an electronic signature to the decrypted message. Then, the message with the electronic signature is encoded and returned to the IC memory driver 104.

他の構成は、データ処理装置200を構成するものと同様である。   Other configurations are the same as those configuring the data processing apparatus 200.

これら構成されたデータ処理装置200、200aとの間で電子署名を実行し、その検証を行うときの具体例を説明する。図6はその処理を行うときのシーケンス図である。   A specific example in which an electronic signature is executed with the data processing apparatuses 200 and 200a configured as described above and the verification is performed will be described. FIG. 6 is a sequence diagram when performing the processing.

アプリケーション101は、データに電子署名の付与の依頼を行うため、ユーザからICメモリ106のID、ICメモリ106aのIDの入力を受付け、受付けたICメモリ106のID、ICメモリ106aのIDを用いてメッセージm1<アプリケーション101のID、ICメモリ106のID、ICメモリ106aのIDおよびデータM>を生成し、メッセージm1を共有メモリ102に書き込む(S301)。   The application 101 receives an input of the ID of the IC memory 106 and the ID of the IC memory 106a from the user in order to make a request for giving an electronic signature to the data, and uses the received ID of the IC memory 106 and the ID of the IC memory 106a. Message m1 <ID of application 101, ID of IC memory 106, ID of IC memory 106a and data M> is generated, and message m1 is written to shared memory 102 (S301).

アプリケーション101は、共有メモリ102に電子署名の付与の依頼を共有メモリ102に登録すると、署名検証の処理を開始する。まず、アプリケーション11は、ICメモリ16aの公開鍵の証明書である公開鍵証明書の要求を行う要求メッセージを公開鍵証明書サーバに送信し、公開鍵証明書サーバから公開鍵証明書を取得する(S102)。なお、公開鍵証明書とは、CA(認証局)が自らの責任のもとにユーザと公開鍵との結びつきを証明したものであって、ユーザの素性 (姓名、所属、電子メールアドレス等) と公開鍵データとに、CA 自らの電子署名を施したものである。   When the application 101 registers a request for applying an electronic signature in the shared memory 102 in the shared memory 102, the application 101 starts a signature verification process. First, the application 11 transmits a request message for requesting a public key certificate that is a public key certificate of the IC memory 16a to the public key certificate server, and acquires the public key certificate from the public key certificate server. (S102). A public key certificate is a certificate (CA) that proves the connection between a user and a public key under its own responsibility. The identity of the user (name, affiliation, e-mail address, etc.) And the public key data are CA's own digital signatures.

また、アプリケーション11は、取得した公開鍵証明書の有効性を問合せる処理を行い、問合せメッセージを有効性検証サーバに送信し、有効性検証サーバでは公開鍵証明書が有効であるか、無効であるか検証を行い、その結果を取得する(S103)。なお、公開鍵証明書が有効であるか、否かを管理する公的機関が、有効性検証サーバの管理、運営を行っており、有効性に対する問合せに応じて管理している結果を返信するようにしている。   Further, the application 11 performs processing for inquiring the validity of the acquired public key certificate, and transmits an inquiry message to the validity verification server. The public key certificate is valid or invalid in the validity verification server. The result is obtained (S103). The public organization that manages whether or not the public key certificate is valid manages and operates the validity verification server, and returns the results managed in response to inquiries regarding validity. I am doing so.

アプリケーション101がこれら処理を実行している間、ICメモリ用ハンドラ104、通信用ハンドラ105は、以下の処理を行う。   While the application 101 executes these processes, the IC memory handler 104 and the communication handler 105 perform the following processes.

送信先としてICメモリ106のIDが記述されるメッセージm1が共有メモリ102に書き込まれると、ICメモリ用ハンドラ104はICメモリ106のIDを送信先として含むメッセージm1が登録されたことを検知し、このメッセージm1を取出し(S401)、ICメモリ106に出力する(S403)。ICメモリ106では、予め有している公開鍵Pk2を用いてメッセージm1に含むデータMを暗号化し、データCを生成する(S404)。そして、メッセージm1から送信元をICメモリ106のID、送信先をICメモリ106aのIDとするメッセージm2<ICメモリ106のID、ICメモリ106aのID、C>を生成し、メッセージm2をICメモリ用ハンドラ104に返信する(S405)。   When the message m1 in which the ID of the IC memory 106 is described as the transmission destination is written in the shared memory 102, the IC memory handler 104 detects that the message m1 including the ID of the IC memory 106 is registered, The message m1 is extracted (S401) and output to the IC memory 106 (S403). In the IC memory 106, the data M included in the message m1 is encrypted using the public key Pk2 that is held in advance, and data C is generated (S404). Then, a message m2 <ID of the IC memory 106, ID of the IC memory 106a, ID of C> is generated from the message m1 with the transmission source as the ID of the IC memory 106 and the transmission destination as the ID of the IC memory 106a. Is returned to the handler 104 (S405).

ICメモリ用ハンドラ104は、共有メモリ102にメッセージm2を書き込む(S406)。通信用ハンドラ105は、共有メモリ102に送信先としてICメモリ106aのIDが記述されているメッセージm2が登録されたことを検知すると、メッセージm2を取り出す(S407)。通信用ハンドラ105には、予め送信先のIPアドレスが設定されており、割り込み処理を実行すると、設定されているIPアドレスで特定される通信用ハンドラ105aを有するデータ処理装置200aと通信接続し、ICメモリ106aを特定するID宛てに取り出したメッセージm2を送信する(S408)。なお、通信用ハンドラ105aはIPアドレスを予め設定せずに、ICメモリ106aのIDとそのICメモリ106aを有する装置のIPアドレスとを対応付けて記憶するサーバを設置しておき、そのサーバにICメモリ106aのIDを送出し、対応するIPアドレスを取出すようにしてもよい。   The IC memory handler 104 writes the message m2 in the shared memory 102 (S406). When the communication handler 105 detects that the message m2 in which the ID of the IC memory 106a is described as the transmission destination is registered in the shared memory 102, the communication handler 105 extracts the message m2 (S407). The communication handler 105 has a destination IP address set in advance. When interrupt processing is executed, the communication handler 105 is connected to the data processing apparatus 200a having the communication handler 105a specified by the set IP address. The extracted message m2 is transmitted to the ID specifying the IC memory 106a (S408). The communication handler 105a does not set an IP address in advance, but installs a server that stores the ID of the IC memory 106a and the IP address of the device having the IC memory 106a in association with each other. The ID of the memory 106a may be transmitted to extract the corresponding IP address.

次に、データ処理装置200aの通信用ハンドラ105aは、受信したメッセージm2を共有メモリ102aに書き込む(S409)。ICメモリ用ハンドラ104aは、共有メモリ102aを常に監視しており、送信先としてICメモリ106aのIDが記述されているメッセージm2が共有メモリ102aに登録されたことを検知すると、メッセージm2を取り出し(S410)、ICメモリ106aに送出する(S411)。   Next, the communication handler 105a of the data processing device 200a writes the received message m2 to the shared memory 102a (S409). The IC memory handler 104a constantly monitors the shared memory 102a. When it detects that the message m2 in which the ID of the IC memory 106a is described as the transmission destination is registered in the shared memory 102a, the IC memory handler 104a retrieves the message m2 ( (S410), the data is sent to the IC memory 106a (S411).

ICメモリ106aは、秘密鍵Sk2を用いてメッセージm2に含まれる暗号化データCを復号化して、データMを生成し(S412)、データMに対して電子署名を付与して電子署名化データMSを生成する(S413)。そして、電子署名化データMSを公開鍵Pk1で暗号化して暗号化データCSを生成する(S414)。   The IC memory 106a decrypts the encrypted data C included in the message m2 using the secret key Sk2, generates data M (S412), adds an electronic signature to the data M, and forms an electronic signature data MS Is generated (S413). Then, the encrypted data CS is generated by encrypting the electronic signature data MS with the public key Pk1 (S414).

ICメモリ106aは、メッセージm2に記述されている送信元、送信先を用いて、暗号化データCSを返信するためのデータである暗号化データCSを有するメッセージm3<ICメモリ106aのID、ICメモリ106のID、CS>を生成し、メッセージm3をICメモリ用ハンドラ104aに返信する(S415)。そして、ICメモリ用ハンドラ104aは、メッセージm3を共有メモリ102aに書き込む(S416)。通信用ハンドラ105aは、共有メモリ102に、送信先としてICメモリ106のIDが記述されるメッセージm3が登録されたことを検知すると、これを取り出す(S417)。   The IC memory 106a uses a transmission source and a transmission destination described in the message m2, and a message m3 having encrypted data CS that is data for returning the encrypted data CS <ID of the IC memory 106a, IC memory 106, ID> CS> is generated, and the message m3 is returned to the IC memory handler 104a (S415). Then, the IC memory handler 104a writes the message m3 into the shared memory 102a (S416). When the communication handler 105a detects that the message m3 in which the ID of the IC memory 106 is described as the transmission destination is registered in the shared memory 102, the communication handler 105a extracts the message m3 (S417).

通信用ハンドラ105aには、予め送信先のIPアドレスが設定されており、割り込み処理を実行すると、設定されているIPアドレスで特定される通信用ハンドラ105を有するデータ処理装置200aと通信接続し、ICメモリ106を特定するID宛てに取り出したメッセージm3を送信する(S418)。なお、通信用ハンドラ105aにはIPアドレスを予め設定せずに、ICメモリ106のIDとそのICメモリ106を有する装置のIPアドレスとを対応付けて記憶するサーバを設置しておき、そのサーバにICメモリ106のIDを送出し、対応するIPアドレスを取出すようにしてもよい。   In the communication handler 105a, the IP address of the transmission destination is set in advance, and when interrupt processing is executed, the communication handler 105a is connected to the data processing apparatus 200a having the communication handler 105 specified by the set IP address, The extracted message m3 is transmitted to the ID specifying the IC memory 106 (S418). The communication handler 105a has a server for storing the ID of the IC memory 106 and the IP address of the device having the IC memory 106 in association with each other without setting an IP address in advance. The ID of the IC memory 106 may be sent out and the corresponding IP address may be taken out.

通信用ハンドラ105は、メッセージm3を受信すると、共有メモリ102にメッセージm3を書き込む(S419)。   When receiving the message m3, the communication handler 105 writes the message m3 in the shared memory 102 (S419).

ICメモリ用ハンドラ104は、共有メモリ102に送信先としてICメモリ106のIDを記述するメッセージm3を検知すると、メッセージm3を取り出し(S420)、ICメモリ106にメッセージm3を送出する(S421)。ICメモリ106では、受信したメッセージm3の中の暗号化データCSを秘密鍵Sk1で復号化し、電子署名化データMSを生成する(S422)。そして、ICメモリ106は、S403で受信したメッセージm1に記述される送信元(つまりアプリケーション101のID)を記憶しており、記憶した送信元を用いて、アプリケーション101にメッセージm4を渡すことができるよう、電子署名化データMSを有するメッセージm4<ICメモリ16のID、アプリケーション11のID、MS>を生成し、メッセージm4をICメモリ用ハンドラ14に返信する(S423)。   When the IC memory handler 104 detects the message m3 describing the ID of the IC memory 106 as a transmission destination in the shared memory 102, the IC memory handler 104 extracts the message m3 (S420) and sends the message m3 to the IC memory 106 (S421). In the IC memory 106, the encrypted data CS in the received message m3 is decrypted with the secret key Sk1, and the electronic signature data MS is generated (S422). The IC memory 106 stores the transmission source (that is, the ID of the application 101) described in the message m1 received in S403, and can pass the message m4 to the application 101 using the stored transmission source. As described above, the message m4 <the ID of the IC memory 16, the ID of the application 11, the MS> having the electronic signature data MS is generated, and the message m4 is returned to the IC memory handler 14 (S423).

ICメモリ用ハンドラ104は、共有メモリ102にメッセージm4を書き込み(S424)、送信先としてアプリケーションのIDが記述されるメッセージm4が共有メモリ102に登録されたと、アプリケーション用ハンドラ103が検知すると、アプリケーション用ハンドラ103がメッセージm4を取得し、アプリケーション用ハンドラ103はアプリケーション101の処理に割り込みをかけて、取得したメッセージm4の電子署名化データMSの電子署名が正当であるかを検証する。   The IC memory handler 104 writes the message m4 to the shared memory 102 (S424), and when the application handler 103 detects that the message m4 in which the application ID is described as the transmission destination is registered in the shared memory 102, the application memory 103 The handler 103 acquires the message m4, and the application handler 103 interrupts the processing of the application 101 and verifies whether the electronic signature of the electronic signature data MS of the acquired message m4 is valid.

すなわち、MSに電子署名を施した公開鍵と、上述した有効であると判断された公開鍵証明書に記述されている公開鍵との一致を判断し、一致していればメッセージm4に記述されるデータMSに付与される電子署名は正当な電子署名が施されたものであると判断し、一致していなければ電子署名は不当なものであると判断する(S304)。そして、その判断結果を表示部に出力する(S305)。なお、S425によるアプリケーション用ハンドラ13の呼び出し処理が行われる前に、S302、S303の公開鍵証明書の要求、有効性の検証は終了しているものとする。   That is, it is determined whether or not the public key obtained by applying an electronic signature to the MS and the public key described in the public key certificate determined to be valid are described in the message m4. It is determined that the electronic signature given to the data MS is a valid electronic signature, and if it does not match, it is determined that the electronic signature is invalid (S304). Then, the determination result is output to the display unit (S305). It is assumed that the public key certificate request and validity verification in S302 and S303 have been completed before the calling process of the application handler 13 in S425 is performed.

以上の処理により送信しようとするデータに電子署名を付与し、電子署名の正当性を得た後に、ユーザの任意の送信先に正当性を有している電子署名を付与したデータを送る処理を行うことができる。   A process of sending data with a valid digital signature to any destination of the user after giving a digital signature to the data to be transmitted by the above processing and obtaining the validity of the digital signature. It can be carried out.

以上、アプリケーション101から共有メモリ102に送信するメッセージの登録を行い、共有メモリを監視している各ハンドラが任意に割り込み処理を行うことによる効果について説明する。   The effect obtained by registering a message to be transmitted from the application 101 to the shared memory 102 and arbitrarily performing interrupt processing by each handler monitoring the shared memory will be described.

アプリケーション101は、共有メモリ102にメッセージの登録を行い、その登録後は別の処理を行い、ハンドラは共有メモリに登録されたメッセージに応じて適宜割り込み処理を実行することにより、アプリケーション101は共有メモリ102に登録したメッセージの処理結果が受信するまで待機する必要が無く、アプリケーション11は他の処理を実行することができ、効率の良い処理を実現することができる。   The application 101 registers a message in the shared memory 102, performs another process after the registration, and the handler executes an appropriate interrupt process according to the message registered in the shared memory. There is no need to wait until the processing result of the message registered in 102 is received, and the application 11 can execute other processing, thereby realizing efficient processing.

本発明のデータ処理装置100および100aのブロック構成図である。It is a block block diagram of the data processing apparatus 100 and 100a of this invention. 本発明における管理テーブル17の具体例を示す説明図である。It is explanatory drawing which shows the specific example of the management table 17 in this invention. 本発明における管理テーブル17aの具体例を示す説明図である。It is explanatory drawing which shows the specific example of the management table 17a in this invention. 本発明のデータ処理装置100および100aを用いた信号処理のシーケンス図である。It is a sequence diagram of signal processing using the data processing devices 100 and 100a of the present invention. 本発明の別の実施の形態のデータ処理装置200および200aのブロック構成図である。It is a block block diagram of the data processing apparatuses 200 and 200a of another embodiment of this invention. 本発明のデータ処理装置200および200aを用いた信号処理のシーケンス図である。It is a sequence diagram of signal processing using the data processing devices 200 and 200a of the present invention.

符号の説明Explanation of symbols

11・・・アプリケーション、12・・・ドライバ、13・・・アプリケーション用ハンドラ、14・・・ICメモリ用ハンドラ、15・・・通信用ハンドラ、16・・・ICメモリ、17・・・ハンドラ管理テーブル、18・・・通信部、19・・・表示部。 DESCRIPTION OF SYMBOLS 11 ... Application, 12 ... Driver, 13 ... Application handler, 14 ... IC memory handler, 15 ... Communication handler, 16 ... IC memory, 17 ... Handler management Table, 18 ... communication unit, 19 ... display unit.

Claims (3)

予め定められている特定の処理を実行するデバイスと、前記デバイスを用いた処理を行うアプリケーションと、前記デバイスに対するアクセス処理を実行するハンドラ手段と、前記アプリケーションからの指示に応じて前記ハンドラを呼び出すとともに、前記アプリケーションに指示を受付けた旨を通知するドライバ手段とを備えるデータ処理装置において、
処理内容に応じた複数のハンドラ手段と、
前記アプリケーションまたは前記デバイスで生成されたメッセージを送信する送信先とハンドラ手段との対応関係を示す情報を記憶する記憶手段と
を備え、
前記ドライバ手段は、前記アプリケーションまたは前記デバイスで生成されたメッセージを受信すると、前記メッセージに記述される送信先と前記記憶手段に記憶される対応関係を示す情報とに基づいて前記送信先に対応したハンドラ手段を呼び出すことを特徴とするデータ処理装置。
A device for executing a predetermined process, an application for performing a process using the device, a handler means for executing an access process for the device, and calling the handler in accordance with an instruction from the application A data processing apparatus comprising: driver means for notifying that the application has received an instruction;
A plurality of handler means according to the processing content;
Storage means for storing information indicating a correspondence relationship between a transmission destination and a handler means for transmitting a message generated by the application or the device;
When the driver means receives a message generated by the application or the device, the driver means corresponds to the destination based on the destination described in the message and information indicating the correspondence stored in the storage means A data processing device characterized by calling a handler means.
ネットワークを介して前記メッセージの送受信を行う通信手段をさらに備え、
前記ドライバ手段によって呼び出されたハンドラ手段は、前記通信手段を用いて予め定められている送信先にメッセージを送信することを特徴とする請求項1記載のデータ処理装置。
A communication means for transmitting and receiving the message via a network;
2. The data processing apparatus according to claim 1, wherein the handler means called by the driver means transmits a message to a predetermined destination using the communication means.
予め定められている特定の処理を実行するデバイスと、前記デバイスを用いた処理を行うアプリケーションと、前記デバイスに対するアクセス処理を実行する複数のハンドラ手段と、前記アプリケーションまたは前記デバイスで生成されたメッセージを送信する送信先とハンドラ手段との対応関係を示す情報を記憶する記憶手段と、前記アプリケーションからの指示に応じて前記ハンドラを呼び出すとともに、前記アプリケーションに指示を受付けた旨を通知するドライバ手段とを備えるデータ処理装置におけるデータ処理方法であって、
前記ドライバ手段は、
前記アプリケーションまたは前記デバイスで生成されたメッセージを受信する受信ステップと、
前記受信ステップによりメッセージが受信されると、前記メッセージに記述される送信先と前記記憶手段に記憶される対応関係を示す情報とに基づいて、複数あるハンドラ手段から前記送信先に対応した一のハンドラ手段を呼び出す呼出ステップと
を備えることを特徴とするデータ処理方法。
A device that executes a predetermined specific process, an application that performs a process using the device, a plurality of handler means that execute an access process for the device, and a message generated by the application or the device Storage means for storing information indicating the correspondence relationship between the transmission destination and the handler means, and driver means for calling the handler in response to an instruction from the application and notifying the application that the instruction has been accepted. A data processing method in a data processing apparatus comprising:
The driver means includes
Receiving a message generated by the application or the device;
When a message is received by the receiving step, a plurality of handler means correspond to the destination based on a destination described in the message and information indicating a correspondence relationship stored in the storage means. A data processing method comprising: a calling step for calling a handler means.
JP2006274256A 2006-10-05 2006-10-05 Data processor and data processing method Pending JP2007066322A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006274256A JP2007066322A (en) 2006-10-05 2006-10-05 Data processor and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006274256A JP2007066322A (en) 2006-10-05 2006-10-05 Data processor and data processing method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2004126054A Division JP4607489B2 (en) 2004-04-21 2004-04-21 Data processing apparatus and data processing method

Publications (1)

Publication Number Publication Date
JP2007066322A true JP2007066322A (en) 2007-03-15

Family

ID=37928362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006274256A Pending JP2007066322A (en) 2006-10-05 2006-10-05 Data processor and data processing method

Country Status (1)

Country Link
JP (1) JP2007066322A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05257854A (en) * 1992-03-16 1993-10-08 Toshiba Corp Computer system
JPH06309265A (en) * 1993-04-27 1994-11-04 Sanyo Electric Co Ltd Dynamic selection method for driver program of information processor
JPH0916353A (en) * 1995-07-04 1997-01-17 Oki Electric Ind Co Ltd Job control method
JPH10240654A (en) * 1997-02-28 1998-09-11 Toshiba Corp Portable information equipment and data transfer control method
JPH10333924A (en) * 1997-04-04 1998-12-18 Microsoft Corp Method for validating generation of file object and routing message to file object computer program product, and storage medium recorded with data structure
JP2000222335A (en) * 1998-06-30 2000-08-11 Seiko Epson Corp Device control system, its method and record medium for recording program for constructing the same system
JP2002024154A (en) * 2000-07-07 2002-01-25 Toshiba Corp Method and device for executing program
WO2003069492A1 (en) * 2002-02-15 2003-08-21 Science Park Corporation Individual authentication method using input characteristic of input apparatus by network, program thereof, and recording medium containing the program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05257854A (en) * 1992-03-16 1993-10-08 Toshiba Corp Computer system
JPH06309265A (en) * 1993-04-27 1994-11-04 Sanyo Electric Co Ltd Dynamic selection method for driver program of information processor
JPH0916353A (en) * 1995-07-04 1997-01-17 Oki Electric Ind Co Ltd Job control method
JPH10240654A (en) * 1997-02-28 1998-09-11 Toshiba Corp Portable information equipment and data transfer control method
JPH10333924A (en) * 1997-04-04 1998-12-18 Microsoft Corp Method for validating generation of file object and routing message to file object computer program product, and storage medium recorded with data structure
JP2000222335A (en) * 1998-06-30 2000-08-11 Seiko Epson Corp Device control system, its method and record medium for recording program for constructing the same system
JP2002024154A (en) * 2000-07-07 2002-01-25 Toshiba Corp Method and device for executing program
WO2003069492A1 (en) * 2002-02-15 2003-08-21 Science Park Corporation Individual authentication method using input characteristic of input apparatus by network, program thereof, and recording medium containing the program

Similar Documents

Publication Publication Date Title
US20240039714A1 (en) Secure Circuit For Encryption Key Generation
CN109460373B (en) Data sharing method, terminal equipment and storage medium
US9152773B2 (en) Communication apparatus and secure module including function for disabling encrypted communication
JP4559794B2 (en) Microprocessor
CN103636166A (en) Dynamic data-protection policies associated with a request-reply message queuing environment
CN111274611A (en) Data desensitization method, device and computer readable storage medium
US20190325146A1 (en) Data encryption and decryption method and system and network connection apparatus and data encryption and decryption method thereof
CN113472720A (en) Digital certificate key processing method and device, terminal equipment and storage medium
CN113242134B (en) Digital certificate signing method, device, system and storage medium
CN112399392A (en) Communication connection method, device, equipment and storage medium of home care terminal
JP4607489B2 (en) Data processing apparatus and data processing method
CN115378609A (en) Electronic certificate display method, verification method, terminal and server
JP2017183930A (en) Server management system, server device, server management method, and program
WO2012065422A1 (en) Method for updating key of mobile terminal, and mobile terminal
JP2007066322A (en) Data processor and data processing method
JP2004234591A (en) Update system, disclosure server, terminal, license issuing server, and program
JP6435678B2 (en) Information processing apparatus, management apparatus, program, and system
CN113746915A (en) Edge node access method, device, equipment and computer storage medium
JP6627398B2 (en) Proxy authentication device, proxy authentication method and proxy authentication program
CN114329574B (en) Encrypted partition access control method and system based on domain management platform and computing equipment
JP4202980B2 (en) Module starter, method and system
JP2009232158A (en) Information processor, information processing program and information processing system
CN116366361A (en) Data interaction method and device
CN111935159A (en) Method, device and system for authenticating mutual trust between multiple systems
JP2020046977A (en) Distribution management system, distribution management program and distribution management method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091006

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100302