Nothing Special   »   [go: up one dir, main page]

JP2002152196A - Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key - Google Patents

Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key

Info

Publication number
JP2002152196A
JP2002152196A JP2001250922A JP2001250922A JP2002152196A JP 2002152196 A JP2002152196 A JP 2002152196A JP 2001250922 A JP2001250922 A JP 2001250922A JP 2001250922 A JP2001250922 A JP 2001250922A JP 2002152196 A JP2002152196 A JP 2002152196A
Authority
JP
Japan
Prior art keywords
program
communication
public key
communication device
program execution
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
JP2001250922A
Other languages
Japanese (ja)
Inventor
Noriyoshi Ichise
規善 市瀬
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2001250922A priority Critical patent/JP2002152196A/en
Publication of JP2002152196A publication Critical patent/JP2002152196A/en
Pending legal-status Critical Current

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

PROBLEM TO BE SOLVED: To prevent personation of communication in an environment wherein readout and forgery are allowed. SOLUTION: Portable equipment 11 confirms by a built-in function part 111 that a hash value 11231 is generated by a program main body 1121 and a secret key paired with an open key 11221 indicating the origin of a program 112. Master equipment 12 authenticates the portable equipment 11 by an open key system which uses an open key 11232 and the secret key 1131 and then decides whether or not the program 112 has the authentic origin according to the hash value confirmation result of the portable equipment 11 when the authentication is successful. When the master equipment 12 successfully authenticates the portable equipment 11 and the program 112 has the authentic origin, it is considered that the program 112 is authenticated with the open key 11221.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はプログラム認証方
法,分散環境におけるプログラム間通信により発生する
処理のアクセス制御方法,および分散環境におけるプロ
グラムの通信範囲制御方法に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a program authentication method, an access control method for processing generated by inter-program communication in a distributed environment, and a program communication range control method in a distributed environment.

【0002】[0002]

【従来の技術】従来の情報システムの一例は、たとえば
図19に示すように、プログラム本体10121,およ
びプログラム1012の出所由来を表す公開鍵群101
221〜10122nと秘密鍵群101241〜101
24nとの対により構成されるプログラム1012と、
プログラム実行・通信装置である携帯機器101により
プログラム1012を元に生成および実行されるプロセ
ス10120により構成される、プログラム1012を
対象としプログラム1012を元にプロセス10120
を生成し実行する携帯機器101と、携帯機器101と
通信を行う通信・処理装置である親機器102とによ
り、その主要部が構成されていた。
2. Description of the Related Art As an example of a conventional information system, as shown in FIG. 19, for example, a public key group 101 representing the origin of a program body 10121 and a program 1012 is shown.
221 to 10122n and the secret key group 101241 to 101
24n, a program 1012 composed of a pair
The program 1012 is formed by the portable device 101 which is a program execution / communication device based on the program 1012. The process 10120 is performed on the program 1012 based on the program 1012.
The main part is constituted by a portable device 101 that generates and executes the data, and a parent device 102 that is a communication / processing device that communicates with the portable device 101.

【0003】従来の情報システムの一例は、たとえば図
19に示すように、プログラム1012と、プログラム
1012を元にプロセス10120を生成し実行するプ
ログラム実行・通信装置である携帯機器101と、携帯
機器101と通信を行う通信・処理装置である親機器1
02とから、その主要部が構成されていた。
An example of a conventional information system includes, as shown in FIG. 19, a program 1012, a portable device 101 which is a program execution / communication device for generating and executing a process 10120 based on the program 1012, and a portable device 101. Device 1 that is a communication / processing device that communicates with the
02, the main part was constituted.

【0004】プログラム112は、プログラム本体10
121と、プログラム1012の出所由来を表す公開鍵
群101221〜10122nと、公開鍵群10122
1〜10122nと対をなす秘密鍵群101241〜1
0124nとを含んで構成されていた。
[0004] The program 112 is a program
121, a public key group 101221 to 10122n indicating the origin of the program 1012, and a public key group 10122
Private key group 101241-1 paired with 1-10122n
0124n.

【0005】携帯機器101は、組み込み機能部101
1と、プログラム1012を実行するプロセス1012
0と、携帯機器101に付随する公開鍵10132と、
公開鍵10132と対をなす秘密鍵10131と、ユー
ザ・パスワード情報10190とから構成されていた。
[0005] The portable device 101 includes an embedded function unit 101.
1 and a process 1012 for executing the program 1012
0, a public key 10132 attached to the portable device 101,
It was composed of a secret key 10131 paired with the public key 10132 and user password information 10190.

【0006】親機器102は、通信してよい相手を表す
IDである携帯機器101に付随する公開鍵10132
と、通信してよいユーザを表すユーザ・パスワード情報
10190とを含んで構成されていた。
The parent device 102 has a public key 10132 attached to the portable device 101, which is an ID representing a partner with which communication is possible.
And user password information 10190 indicating a user who can communicate.

【0007】このような従来の情報システムでは、プロ
グラム1012を元に生成されたプロセス10120の
処理により携帯機器101が親機器102と通信を行う
以前に、親機器102が、携帯機器101から携帯機器
101に通信をさせるプロセス10120の元となるプ
ログラム1012の出所由来を表す公開鍵101221
〜10122nを得る工程と、親機器102が、得られ
た各公開鍵101221〜10122nについて、携帯
機器101に通信をさせるプロセス10120の元とな
るプログラム1012の出所由来を表す公開鍵群101
221〜10122nおよび秘密鍵群101241〜1
0124nを用いさせて認証を行うことで、プロセス1
0120の元となるプログラム1012が認証に成功し
た公開鍵すべてをもつと認証を行っていた。
In such a conventional information system, before the portable device 101 communicates with the parent device 102 by the processing of the process 10120 generated based on the program 1012, the parent device 102 Public key 101221 representing the origin of the source of the program 1012 that is the source of the process 10120 that causes the
And a step of obtaining parent keys 102 from the public key group 101 representing the origin of the program 1012 that is the source of the process 10120 that causes the portable device 101 to communicate with each of the obtained public keys 101221 to 10122n.
221 to 10122n and a secret key group 101241-1
By performing authentication using 0124n, the process 1
If the program 1012 that is the basis of 0120 has all the public keys that have been successfully authenticated, the authentication has been performed.

【0008】また、従来、情報システムの他の例は、た
とえば図20に示すように、プログラム1012と、プ
ログラム1012を元にプロセス10120を生成し実
行するプログラム実行・通信装置である携帯機器101
と、携帯機器101と通信を行う通信・処理装置である
親機器102とから、その主要部が構成されていた。
Another example of the conventional information system is a portable device 101 which is a program 1012 and a program execution / communication device for generating and executing a process 10120 based on the program 1012 as shown in FIG.
The main part is comprised of the parent device 102 which is a communication / processing device that communicates with the portable device 101.

【0009】携帯機器101は、組み込み機能部101
1と、プログラム1012を実行するプロセス1012
0と、携帯機器101に付随する公開鍵10132およ
び秘密鍵10131と、ユーザ・パスワード情報101
90とから構成されていた。
The portable device 101 has a built-in function unit 101.
1 and a process 1012 for executing the program 1012
0, a public key 10132 and a secret key 10131 attached to the portable device 101, and the user / password information 101.
90.

【0010】親機器102は、通信してよい相手を示す
公開鍵としての携帯機器101に付随する公開鍵101
32と、ユーザ・パスワード情報10190とをもつ。
The parent device 102 has a public key 101 attached to the portable device 101 as a public key indicating a partner with which communication is possible.
32 and user password information 10190.

【0011】このような従来の情報システムでは、携帯
機器101で、ユーザ・パスワード情報10190につ
いて認証を行い、プログラム1012を実行するプロセ
ス10120がユーザ・パスワード情報10190を保
持する。プロセス10120が親機器102と通信をし
ようとして通信要求が発生した場合、親機器102は、
携帯機器101から公開鍵10132を受け取り、公開
鍵10132と一致するものであれば、携帯機器101
に対し公開鍵10132について認証を行い、認証に成
功した場合は、携帯機器101内のプログラム1012
を実行するプロセス10120と親機器102との通信
を許し、またその通信によって発生する処理についての
アクセス制御は、通信相手によらず同じアクセス制御を
行うか、または通信相手のプロセス10120のもつユ
ーザ・パスワード情報10190を引き継ぎ、ユーザ認
証が成功すればそれをもとにアクセス制御を行ってい
た。
In such a conventional information system, the portable device 101 authenticates the user password information 10190, and a process 10120 for executing the program 1012 holds the user password information 10190. When a communication request occurs when the process 10120 attempts to communicate with the parent device 102, the parent device 102
The public key 10132 is received from the portable device 101, and if the public key 10132 matches the public key 10132, the portable device 101
Is authenticated with respect to the public key 10132, and if the authentication is successful, the program 1012 in the portable device 101 is executed.
The communication between the process 10120 that executes the process and the parent device 102 is permitted, and the access control for the processing generated by the communication is performed by the same access control regardless of the communication partner, or by the user / user of the process 10120 of the communication partner. The password information 10190 is taken over, and if user authentication is successful, access control is performed based on that.

【0012】さらに、従来、情報システムの別の例は、
たとえば図21に示すように、携帯機器101と、親機
器102とから、その主要部が構成されていた。
Further, conventionally, another example of the information system is as follows.
For example, as shown in FIG. 21, a main part of the portable device 101 and the parent device 102 is configured.

【0013】携帯機器101は、組み込み機能部101
1と、プログラム1012と、プログラム1012を実
行するプロセス10120と、携帯機器101に付随す
る秘密鍵10131と、秘密鍵10131と対をなす公
開鍵10132と、通信してよい相手を示す公開鍵10
232とを含んで構成されていた。
The portable device 101 has a built-in function unit 101.
1, a program 1012, a process 10120 for executing the program 1012, a secret key 10131 associated with the portable device 101, a public key 10132 paired with the secret key 10131, and a public key 10
232.

【0014】親機器102は、組み込み機能部1021
と、プログラム1022と、プログラム1022を実行
するプロセス10220と、親機器102に付随する秘
密鍵10231と、秘密鍵10231と対を成す公開鍵
10232と、通信してよい相手を示す公開鍵1013
2とから構成されていた。
The parent device 102 includes an embedded function unit 1021
, A program 1022, a process 10220 for executing the program 1022, a secret key 10231 associated with the parent device 102, a public key 10232 paired with the secret key 10231, and a public key 1013 indicating a partner with whom communication is possible.
And 2.

【0015】このような従来の情報システムでは、プロ
セス10120とプロセス10220とが通信をしよう
として通信要求が発生した場合、組み込み機能部101
1および1021は、まず、公開鍵10132および1
0232を互いに渡し、受け取った公開鍵10232お
よび10132と通信してよい相手を示す公開鍵102
32および101032とをそれぞれ比較する。一致す
れば、各組み込み機能部1011および1021は、受
け取った公開鍵10232および10132で相互認証
を行い、相互認証が成功すれば、プロセス10120と
プロセス10220との通信を許す。一方、受け取った
公開鍵10232および10132と通信してよい相手
を示す公開鍵10133および10233とが異なる
か、公開鍵10232および10132での相互認証が
失敗した場合は、プロセス10120とプロセス102
20との間の通信を許さなかった。また通信路資源群を
仮想的に公開鍵毎に別資源として提供していなかった。
In such a conventional information system, when a process 10120 and a process 10220 attempt to communicate and a communication request is generated, the built-in function unit 101
1 and 1021 are first public keys 10132 and 1
0232 to each other, and a public key 102 indicating a party with whom the received public keys 10232 and 10132 may communicate.
32 and 101032, respectively. If they match, each of the built-in function units 1011 and 1021 performs mutual authentication using the received public keys 10232 and 10132. If the mutual authentication succeeds, the process 10120 and the process 10220 allow communication. On the other hand, if the received public keys 10232 and 10132 are different from the public keys 10133 and 10233 indicating the parties that can communicate with each other, or if mutual authentication with the public keys 10232 and 10132 fails, the process 10120 and the process 102
Did not allow communication with the 20. Further, the communication path resource group has not been virtually provided as a separate resource for each public key.

【0016】[0016]

【発明が解決しようとする課題】第1の問題点は、通信
時の成りすましを防ぐためには、プログラムが存在する
エリア(メモリ,ディスク等)のセキュリティレベルと
して、読み出し改竄不可でなければならないということ
である。その理由は、プログラムが秘密鍵をもつ必要が
あるからである。
A first problem is that in order to prevent spoofing during communication, the security level of an area (memory, disk, etc.) where a program exists must be read and falsified. It is. The reason is that the program needs to have a secret key.

【0017】第2の問題点は、分散環境において、ユー
ザ・パスワード情報に類する共通の情報を保持し、維持
管理する必要があることである。その理由は、認証する
ために同じユーザ・パスワード情報に類する情報を共有
する必要があるからである。
The second problem is that in a distributed environment, it is necessary to hold and maintain common information similar to user password information. The reason is that it is necessary to share information similar to the same user password information for authentication.

【0018】第3の問題点は、ユーザ・パスワード情報
に類する情報を利用しない場合は、通信相手によらず皆
同じ権限で処理を実行させることである。その理由は、
アクセス制御をするための正当性を保証できる情報を得
られないからである。
A third problem is that when information similar to user password information is not used, the process is executed with the same authority regardless of the communication partner. The reason is,
This is because information that can guarantee the validity of access control cannot be obtained.

【0019】第4の問題点は、機器,プログラムないし
はシステムの設計時に機器,プログラムないしはプロセ
スの通信すべき相手をどのプログラムとするかを個別に
設計しなければならないということである。その理由
は、通信相手は通信すべき相手がもつているはずの公開
鍵の設定によって決まるからである。
A fourth problem is that when designing a device, a program or a system, it is necessary to individually design a device, a program, or a program with which a process communicates. The reason is that the communication partner is determined by the setting of the public key that the communication partner should have.

【0020】第5の問題点は、システムの拡張および複
数のシステムの乗り入れの際の手間が多いということで
ある。その理由は、システムの拡張および複数のシステ
ムの乗り入れのための、機器,プログラムないしはシス
テムの設計時に機器,プログラムないしはプロセスの通
信すべき相手をどのプログラムとするかを個々に設計し
直さなければならないからである。
A fifth problem is that it takes much time to expand the system and to enter a plurality of systems. The reason is that when designing equipment, programs or systems for system expansion and entry of multiple systems, it is necessary to individually redesign which equipment, programs or processes communicate with which programs. Because.

【0021】第6の問題点は、システムが特定のサービ
スに固定したものになりがちであることである。その理
由は、システムの拡張および複数のシステムの乗り入れ
の際の手間が多いからである。
A sixth problem is that the system tends to be fixed to a specific service. The reason for this is that much effort is required when expanding the system and installing a plurality of systems.

【0022】第7の問題点は、どの通信路をどの公開鍵
に対応し利用するか設計、管理する必要があることであ
る。その理由は、通信路資源群を仮想的に公開鍵毎に別
資源として提供していなかったからである。
A seventh problem is that it is necessary to design and manage which communication path corresponds to which public key. The reason is that the communication path resource group is not provided virtually as a separate resource for each public key.

【0023】本発明の第1の目的は、プログラムが存在
するエリアのセキュリティレベルとして、読み出し改竄
可でよい環境での、通信における成りすましを防止する
秘密鍵なしプログラム認証方法を提供することにある。
A first object of the present invention is to provide a method for authenticating a program without a secret key, which prevents impersonation in communication in an environment where reading and falsification is possible as a security level of an area where a program exists.

【0024】本発明の第2の目的は、集中管理下にない
分散環境におけるプログラム間通信により発生する処理
のアクセス制御を行うためのプログラムID通信処理制
御方法を提供することにある。
A second object of the present invention is to provide a program ID communication processing control method for controlling access to processing generated by inter-program communication in a distributed environment that is not under centralized management.

【0025】本発明の第3の目的は、分散環境におい
て、通信の範囲、つまり情報の流通について範囲が予め
限定されており、通信範囲に関するシステム設計が容易
なプログラムID通信範囲制御方法を提供することにあ
る。
A third object of the present invention is to provide a program ID communication range control method in which the range of communication, that is, the range of information distribution is previously limited in a distributed environment, and the system design relating to the communication range is easy. It is in.

【0026】本発明の第4の目的は、公開鍵別の通信を
行う場合に、どの通信路がどの公開鍵用で占有されるか
が予め限定されており、通信路に関するシステム設計が
容易な公開鍵毎通信路提供方法を提供することにある。
A fourth object of the present invention is that when communication is performed for each public key, which communication path is occupied by which public key is limited in advance, and system design relating to the communication path is easy. An object of the present invention is to provide a communication path providing method for each public key.

【0027】なお、先行技術文献として特開2000−
148469があるが、この公報に開示された「モジュ
ラーアプリケーション間のサービスへのアクセス制御」
方法は、第1のコンピュータプログラムモジュールが第
2のコンピュータプログラムモジュールからサービスの
アクセスを与える権力をデジタル的に署名されたかどう
かを判定し、デジタル的に署名された場合に第1のコン
ピュータプログラムモジュールにサービスへのアクセス
を提供するようにしたものである。しかし、この方法
は、第1のコンピュータプログラムモジュールが第2の
コンピュータプログラムモジュールからのサービスにア
クセスできるように、第1のコンピュータプログラムモ
ジュールおよび第2のコンピュータプログラムモジュー
ルを同じコンピューティングノード上の同じアドレス空
間内で実行させることができるようにするためのもので
あり、本発明のように異なるプログラム実行・通信装置
上で異なるプログラムを通信を介して協働させるように
するためのものではない。
As a prior art document, Japanese Patent Application Laid-Open No. 2000-2000
There is 148469, "Access control to services between modular applications" disclosed in this publication.
The method determines whether the first computer program module has been digitally signed with the power to grant access to the service from the second computer program module, and if so, gives the first computer program module the digital computer signature. It is intended to provide access to services. However, the method includes storing the first computer program module and the second computer program module at the same address on the same computing node so that the first computer program module can access services from the second computer program module. This is for enabling the program to be executed in a space, and is not for allowing different programs to cooperate via communication on different program execution / communication apparatuses as in the present invention.

【0028】[0028]

【課題を解決するための手段】本発明の秘密鍵なしプロ
グラム認証方法は、プログラムと、該プログラムを元に
プロセスを生成し実行するプログラム実行・通信装置
と、該プログラム実行・通信装置と通信を行う通信・処
理装置とにより構成される情報システムにおいて、前記
プログラム実行・通信装置が、該プログラム実行・通信
装置に付随する公開鍵および秘密鍵と、前記プログラム
を元に生成および実行されるプロセスとを含み、前記プ
ログラムが、プログラム本体と、該プログラムの出所由
来を表す公開鍵と、前記プログラム本体に対し該公開鍵
と対をなす秘密鍵により行った署名とを含み、前記プロ
グラム実行・通信装置が、前記署名が前記プログラム本
体と前記プログラムの出所由来を表す公開鍵と対をなす
秘密鍵とによって生成されたものであるかどうかを確認
する工程と、前記プログラム実行・通信装置が前記プロ
グラムを元に生成されたプロセスの処理により前記通信
・処理装置と通信を行う以前に、前記通信・処理装置
が、前記プログラム実行・通信装置に付随する公開鍵お
よび秘密鍵を用いた公開鍵方式により前記プログラム実
行・通信装置の認証を行う工程と、前記署名が前記プロ
グラム本体と前記プログラムの出所由来を表す公開鍵と
対をなす秘密鍵とによって生成されたものであることが
確認できた場合に、前記プログラム実行・通信装置が前
記プログラムを元に生成されたプロセスの処理により前
記通信・処理装置と通信を行う以前に、前記通信・処理
装置が前記プログラムの出所由来を表す公開鍵を得る工
程と、前記プログラム実行・通信装置の認証に成功し、
かつ前記プログラムの出所由来を表す公開鍵を得られた
場合に、前記通信・処理装置が該公開鍵を前記プログラ
ムの出所由来を表すと認証する工程とを含むことを特徴
とする。
According to the present invention, there is provided a method for authenticating a program without a secret key, comprising: a program; a program execution / communication device for generating and executing a process based on the program; and a communication with the program execution / communication device. An information system including a communication / processing device for performing the program execution / communication device, a public key and a secret key attached to the program execution / communication device, and a process generated and executed based on the program. Wherein the program includes a program body, a public key indicating the origin of the program, and a signature performed on the program body with a secret key paired with the public key. The signature is generated by the program itself and a private key paired with a public key representing the origin of the program. Confirming whether the communication / processing device has been executed, and before the program execution / communication device performs communication with the communication / processing device by processing a process generated based on the program, the communication / processing device Authenticating the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device; and publicly displaying the signature indicating the origin of the program body and the program. When it can be confirmed that the program is generated by the key and the secret key forming a pair, the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program. Before performing, the communication and processing device obtains a public key representing the origin of the program, and Succeeded in testimony,
And, when a public key indicating the origin of the program is obtained, the communication / processing device authenticates the public key as indicating the origin of the program.

【0029】また、本発明の秘密鍵なしプログラム認証
方法は、前記プログラム実行・通信装置が、前記署名が
前記プログラム本体と前記プログラムの出所由来を表す
公開鍵と対をなす秘密鍵とによって生成されたものであ
るかどうかを確認する工程において、前記署名が前記プ
ログラム本体をハッシュ関数でハッシングしたダイジェ
ストを前記プログラムの出所由来を表す公開鍵と対をな
す秘密鍵で暗号化した署名値からなり、前記プログラム
実行・通信装置が、前記署名値を前記プログラムの出所
由来を表す公開鍵で復号してダイジェストを得るととも
に前記プログラム本体をハッシュ関数でハッシングして
ダイジェストを得、両ダイジェストが一致するかどうか
を判定することを特徴とする。
Further, in the method for authenticating a program without a secret key according to the present invention, the program execution / communication device may be configured such that the signature is generated by the program body and a secret key paired with a public key indicating the origin of the program. In the step of confirming whether or not the signature is obtained, the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a secret key paired with a public key representing the origin of the program, The program execution / communication device decrypts the signature value with a public key representing the origin of the program to obtain a digest, and hashes the program body with a hash function to obtain a digest. Is determined.

【0030】さらに、本発明の秘密鍵なしプログラム認
証方法は、前記通信・処理装置が、前記プログラム実行
・通信装置に付随する公開鍵および秘密鍵を用いた公開
鍵方式により前記プログラム実行・通信装置の認証を行
う工程において、前記通信・処理装置が、通信してよい
相手を示す公開鍵を備え、該通信してよい相手を示す公
開鍵と前記プログラム実行・通信装置に付随する公開鍵
とが一致するかどうかを判定し、一致する場合に前記プ
ログラム実行・通信装置を認証することを特徴とする。
Further, in the method of authenticating a program without a secret key according to the present invention, the communication / processing device may be configured so that the communication / processing device uses a public key method using a public key and a secret key attached to the program execution / communication device. In the step of performing authentication, the communication / processing device includes a public key indicating a partner with which communication is possible, and a public key indicating the partner with which communication is possible and a public key attached to the program execution / communication device are included. It is characterized in that it is determined whether or not they match, and when they match, the program execution / communication device is authenticated.

【0031】さらにまた、本発明の秘密鍵なしプログラ
ム認証方法は、前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、公開鍵によるワン・タイム・パス
ワード方式が用いられ、前記通信・処理装置は、前記プ
ログラム実行・通信装置にランダムな文字列を送り、前
記プログラム実行・通信装置は、該文字列を該プログラ
ム実行・通信装置に付随する秘密鍵で暗号化して前記通
信・処理装置に送り返し、前記通信・処理装置は、暗号
化された文字列を事前に保持する通信してよい相手を示
す公開鍵で復号し、復号した文字列と先に送った文字列
とが一致すれば、前記プログラム実行・通信装置を認証
することを特徴とする。
Further, in the method for authenticating a program without a secret key according to the present invention, the communication / processing device may execute the program execution / communication by a public key method using a public key and a secret key attached to the program execution / communication device. In the step of authenticating the device, a one-time password method using a public key is used, the communication / processing device sends a random character string to the program execution / communication device, and the program execution / communication device The character string is encrypted with a secret key attached to the program execution / communication device and sent back to the communication / processing device, and the communication / processing device communicates with the communication / processing device that holds the encrypted character string in advance. And decrypting the program execution / communication device if the decrypted character string matches the previously transmitted character string. That.

【0032】また、本発明の秘密鍵なしプログラム認証
方法は、プログラムと、該プログラムを元にプロセスを
生成し実行するプログラム実行・通信装置と、該プログ
ラム実行・通信装置と通信を行う通信・処理装置とによ
り構成される情報システムにおいて、前記プログラム実
行・通信装置が、該プログラム実行・通信装置に付随す
る公開鍵および秘密鍵と、前記プログラムを元に生成お
よび実行されるプロセスとを含み、前記プログラムが、
プログラム本体と、該プログラムの出所由来を表す公開
鍵群と、前記プログラム本体および前記公開鍵群を組み
合わせて作成されたデータに対し各公開鍵と対をなす各
秘密鍵により行った署名群とを含み、前記プログラム実
行・通信装置が、各署名が前記プログラム本体および前
記公開鍵群を組み合わせて作成されたデータと各署名に
対応する各公開鍵と対をなす各秘密鍵とによって生成さ
れたものであるかどうかを確認し、生成されたものであ
ることが確認された署名に対応する公開鍵の集まりを得
る工程と、前記プログラム実行・通信装置が前記プログ
ラムを元に生成されたプロセスの処理により前記通信・
処理装置と通信を行う以前に、前記通信・処理装置が、
前記プログラム実行・通信装置に付随する公開鍵および
秘密鍵を用いた公開鍵方式により前記プログラム実行・
通信装置の認証を行う工程と、前記生成されたものであ
ることが確認された署名に対応する公開鍵が1つ以上得
られた場合に、前記プログラム実行・通信装置が前記プ
ログラムを元に生成されたプロセスの処理により前記通
信・処理装置と通信を行う以前に、前記通信・処理装置
が前記プログラムの出所由来を表す公開鍵を得る工程
と、前記プログラム実行・通信装置の認証に成功し、か
つ前記プログラムの出所由来を表す公開鍵を得られた場
合に、前記通信・処理装置が、前記プログラム実行・通
信装置による署名確認結果の各公開鍵を、前記プログラ
ムの出所由来を表すと認証する工程とを含むことを特徴
とする。
[0032] Further, the program authentication method without a secret key according to the present invention provides a program, a program execution / communication device for generating and executing a process based on the program, and a communication / process for communicating with the program execution / communication device. In an information system constituted by a device, the program execution / communication device includes a public key and a secret key attached to the program execution / communication device, and a process generated and executed based on the program, The program
A program body, a public key group representing the origin of the program, and a signature group performed by each private key paired with each public key on data created by combining the program body and the public key group. The program execution / communication device, wherein each signature is generated by data created by combining the program body and the public key group and each private key paired with each public key corresponding to each signature. And obtaining a set of public keys corresponding to the signature confirmed to be generated, and processing of a process generated by the program execution / communication device based on the program. The communication
Before communicating with the processing device, the communication / processing device
The program execution / communication device uses a public key and a public key attached to the communication device to execute the program execution /
A step of performing authentication of the communication device, and, when one or more public keys corresponding to the signature confirmed to be generated are obtained, the program execution / communication device generates the program based on the program. Before performing communication with the communication and processing device by the processing of the process, the communication and processing device obtains a public key representing the origin of the program, and succeeded in authentication of the program execution and communication device, And when the public key indicating the origin of the program is obtained, the communication / processing device authenticates each public key of the signature confirmation result by the program execution / communication device as indicating the origin of the program. And a step.

【0033】さらに、本発明の秘密鍵なしプログラム認
証方法は、前記プログラム実行・通信装置が、各署名が
前記プログラム本体および前記公開鍵群を組み合わせて
作成されたデータと各署名に対応する各公開鍵と対をな
す各秘密鍵とによって生成されたものであるかどうかを
確認し、確認した署名に対応する公開鍵の集まりを得る
工程において、各署名が前記プログラム本体および前記
公開鍵群の組み合わせで作成されたデータをハッシュ関
数でハッシングしたダイジェストを前記プログラムの出
所由来を表す各公開鍵と対をなす各秘密鍵で暗号化した
各署名値からなり、前記プログラム実行・通信装置が、
各署名値を前記プログラムの出所由来を表す各公開鍵で
それぞれ復号してダイジェスト群を得るとともに前記プ
ログラム本体および前記公開鍵群の組み合わせで作成さ
れたデータをハッシュ関数でハッシングしてダイジェス
トを得、該ダイジェストと前記ダイジェスト群とが一致
するかどうかを判定することを特徴とする。
Further, in the method for authenticating a program without a secret key according to the present invention, the program execution / communication device may be configured such that each signature has data created by combining the program body and the public key group and each public key corresponding to each signature. In the step of confirming whether or not each is generated by a secret key forming a pair with a key and obtaining a set of public keys corresponding to the confirmed signature, each signature is a combination of the program body and the public key group. The digest created by hashing the data created by the hash function is composed of each signature value encrypted with each private key paired with each public key representing the origin of the program, and the program execution / communication device includes:
Decrypting each signature value with each public key representing the origin of the program to obtain a digest group, and hashing data created by a combination of the program body and the public key group with a hash function to obtain a digest, It is characterized in that it is determined whether or not the digest matches the digest group.

【0034】さらにまた、本発明の秘密鍵なしプログラ
ム認証方法は、前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、前記通信・処理装置が、通信して
よい相手を示す公開鍵を備え、該通信してよい相手を示
す公開鍵と前記プログラム実行・通信装置に付随する公
開鍵とが一致するかどうかを判定し、一致する場合に前
記プログラム実行・通信装置を認証することを特徴とす
る。
Further, in the method for authenticating a program without a secret key according to the present invention, the communication / processing device may execute the program execution / communication using a public key method using a public key and a secret key attached to the program execution / communication device. In the step of performing device authentication, the communication / processing device includes a public key indicating a partner with which communication is possible, a public key indicating the partner with which communication is possible, and a public key associated with the program execution / communication device. It is characterized in that whether the program execution / communication device is authenticated is determined if they match.

【0035】また、本発明の秘密鍵なしプログラム認証
方法は、前記通信・処理装置が、前記プログラム実行・
通信装置に付随する公開鍵および秘密鍵を用いた公開鍵
方式により前記プログラム実行・通信装置の認証を行う
工程において、公開鍵によるワン・タイム・パスワード
方式が用いられ、前記通信・処理装置は、前記プログラ
ム実行・通信装置にランダムな文字列を送り、前記プロ
グラム実行・通信装置は、該文字列を該プログラム実行
・通信装置に付随する秘密鍵で暗号化して前記通信・処
理装置に送り返し、前記通信・処理装置は、暗号化され
た文字列を事前に保持する通信してよい相手を示す公開
鍵で復号し、復号した文字列と先に送った文字列とが一
致すれば、前記プログラム実行・通信装置を認証するこ
とを特徴とする。
Further, in the method for authenticating a program without a secret key according to the present invention, the communication / processing device may execute the program
In the step of performing the program execution / authentication of the communication device by a public key method using a public key and a secret key attached to the communication device, a one-time password method using a public key is used, and the communication / processing device includes: Sending a random character string to the program execution / communication device, the program execution / communication device encrypts the character string with a secret key attached to the program execution / communication device, and sends it back to the communication / processing device; The communication / processing device decrypts the encrypted character string with a public key that indicates in advance the communication partner that can hold the encrypted character string, and executes the program if the decrypted character string matches the character string sent earlier. -It is characterized in that the communication device is authenticated.

【0036】一方、本発明のプログラムID通信処理制
御方は、プログラムと、該プログラムを元にプロセスを
生成し実行するプログラム実行・通信装置と、該プログ
ラム実行・通信装置と通信を行う通信・処理装置とによ
り構成される情報システムにおいて、前記プログラム
が、プログラム本体と、該プログラムの出所由来を表す
ID群とを含み、前記プログラム実行・通信装置が、前
記プログラムを元に生成および実行されるプロセスを含
み、前記プログラム実行・通信装置が前記プログラムを
元に生成されたプロセスの処理により前記通信・処理装
置と通信を行う以前に、前記通信・処理装置が、前記プ
ロセスの元となるプログラムの出所由来を表すID群の
一部または全部を得る工程と、前記出所由来を表すID
が1つ以上得られたときに、前記通信・処理装置が前記
プログラムを元に生成されたプロセスの処理により前記
プログラム実行・通信装置と通信を行う工程と、通信に
よって発生した処理において、前記通信・処理装置が、
前記プログラム実行・管理装置から得られた前記出所由
来を表すID群を元にしたアクセス制御を行う工程とを
含むことを特徴とする。
On the other hand, the program ID communication processing control method of the present invention comprises a program, a program execution / communication device for generating and executing a process based on the program, and a communication / process for communicating with the program execution / communication device. In an information system constituted by a device, the program includes a program main body and an ID group indicating a source of the program, and the program execution / communication device generates and executes the program based on the program. And before the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program, the communication / processing device determines the source of the program that is the source of the process. Obtaining a part or all of the ID group representing the origin, and the ID representing the origin
When one or more are obtained, the communication / processing device communicates with the program execution / communication device by a process of a process generated based on the program; and・ The processing device
Performing access control based on an ID group indicating the origin derived from the program execution / management device.

【0037】また、本発明のプログラムID通信処理制
御方法は、プログラムと、該プログラムを元にプロセス
を生成し実行するプログラム実行・通信装置と、該プロ
グラム実行・通信装置と通信を行う通信・処理装置とに
より構成される情報システムにおいて、前記プログラム
が、プログラム本体,該プログラムの出所由来を表す公
開鍵,および該公開鍵と対をなす秘密鍵を含み、前記プ
ログラム実行・通信装置が、前記プログラムを元に生成
および実行されるプロセスを含み、前記プログラム実行
・通信装置が前記プログラムを元に生成されたプロセス
の処理により前記通信・処理装置と通信を行う以前に、
前記通信・処理装置が、前記プログラム実行・通信装置
から該プログラム実行・通信装置に通信をさせるプロセ
スの元となる前記プログラムの出所由来を表す公開鍵を
得る工程と、前記通信・処理装置が、前記プログラムの
出所由来を表す公開鍵および秘密鍵を用いた公開鍵方式
により前記プログラムの認証を行う工程と、前記プログ
ラムが認証されたときに、前記通信・処理装置が、前記
公開鍵を元にしたアクセス制御により前記プログラム実
行・通信装置と通信を行う工程とを含むことを特徴とす
る。
Further, the program ID communication processing control method of the present invention provides a program, a program execution / communication device for generating and executing a process based on the program, and a communication / process for communicating with the program execution / communication device. In the information system constituted by the apparatus, the program includes a program main body, a public key indicating the origin of the program, and a secret key paired with the public key, and the program execution / communication apparatus includes the program execution / communication apparatus. Including a process that is generated and executed based on, before the program execution and communication device communicates with the communication and processing device by the process of the process generated based on the program,
Wherein the communication / processing device obtains a public key representing the origin of the program as a source of a process for causing the program execution / communication device to communicate from the program execution / communication device; and Authenticating the program by a public key method using a public key and a secret key representing the origin of the program, and, when the program is authenticated, the communication / processing device, based on the public key, Performing communication with the program execution / communication device by the access control described above.

【0038】さらに、本発明のプログラムID通信処理
制御方法は、前記通信・処理装置が、得られた公開鍵に
ついて、前記プログラムの出所由来を表す公開鍵および
秘密鍵を用いた公開鍵方式により前記プログラムの認証
を行う工程において、公開鍵によるワン・タイム・パス
ワード方式が用いられ、前記プログラム実行・通信装置
が、前記公開鍵を前記通信・処理装置に送り、前記通信
・処理装置が、前記プログラム実行・通信装置にランダ
ムな文字列を送り、前記プログラム実行・通信装置が、
該文字列を前記秘密鍵で暗号化した文字列を前記通信・
処理装置に送り返し、前記通信・処理装置が、暗号化さ
れた文字列を前記送られてきた公開鍵で復号し、復号し
た文字列と先に送った文字列とが一致すれば、前記プロ
グラムを認証することを特徴とする。
Further, in the program ID communication processing control method according to the present invention, the communication / processing device may perform the above-described public key processing on the obtained public key by a public key system using a public key and a secret key indicating the origin of the program. In the step of performing program authentication, a one-time password method using a public key is used, the program execution / communication device sends the public key to the communication / processing device, and the communication / processing device Send a random character string to the execution and communication device, the program execution and communication device,
The character string obtained by encrypting the character string with the secret key is transmitted to the communication
The communication / processing device decrypts the encrypted character string with the transmitted public key, and if the decrypted character string matches the previously transmitted character string, the program is transmitted to the processing device. It is characterized by authentication.

【0039】さらにまた、本発明のプログラムID通信
処理制御方法は、プログラムと、該プログラムを元にプ
ロセスを生成し実行するプログラム実行・通信装置と、
該プログラム実行・通信装置と通信を行う通信・処理装
置とにより構成される情報システムにおいて、前記プロ
グラム実行・通信装置が、該プログラム実行・通信装置
に付随する公開鍵および秘密鍵と、前記プログラムを元
に生成および実行されるプロセスとを含み、前記プログ
ラムが、プログラム本体と、該プログラムの出所由来を
表す公開鍵と、前記プログラム本体に対し該公開鍵と対
をなす秘密鍵により行った署名とを含み、前記プログラ
ム実行・通信装置が、前記署名が前記プログラム本体と
前記プログラムの出所由来を表す公開鍵と対をなす秘密
鍵とによって生成されたものであるかどうかを確認する
工程と、前記プログラム実行・通信装置が前記プログラ
ムを元に生成されたプロセスの処理により前記通信・処
理装置と通信を行う以前に、前記通信・処理装置が、前
記プログラム実行・通信装置に付随する公開鍵および秘
密鍵を用いた公開鍵方式により前記プログラム実行・通
信装置の認証を行う工程と、前記署名が前記プログラム
本体と前記プログラムの出所由来を表す公開鍵と対をな
す秘密鍵とによって生成されたものであることが確認で
きた場合に、前記プログラム実行・通信装置が前記プロ
グラムを元に生成されたプロセスの処理により前記通信
・処理装置と通信を行う以前に、前記通信・処理装置が
前記プログラムの出所由来を表す公開鍵を得る工程と、
前記プログラム実行・通信装置の認証に成功し、かつ前
記プログラムの出所由来を表す公開鍵を得られた場合
に、前記通信・処理装置が、前記プログラム実行・通信
装置から前記プログラムの出所由来を表す公開鍵を得、
該公開鍵を元にしたアクセス制御により前記プログラム
実行・通信装置と通信を行う工程とを含むことを特徴と
する。
Furthermore, a program ID communication processing control method according to the present invention provides a program, a program execution / communication device for generating and executing a process based on the program,
In an information system including a communication / processing device that performs communication with the program execution / communication device, the program execution / communication device includes a public key and a secret key attached to the program execution / communication device, The program includes a process that is originally generated and executed.The program includes a program main body, a public key representing the origin of the program, and a signature performed on the program main body with a private key paired with the public key. The program execution and communication device, the step of confirming whether the signature is generated by the program body and a secret key that is paired with a public key representing the origin of the program, the A program execution / communication device communicates with the communication / processing device by processing a process generated based on the program. A step in which the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a private key attached to the program execution / communication device; And a public key indicating the origin of the program and a secret key forming a pair with the public key, the program execution / communication device performs processing of a process generated based on the program. Before performing communication with the communication and processing device, the communication and processing device obtains a public key representing the origin of the program,
If the authentication of the program execution / communication device is successful and a public key indicating the origin of the program is obtained, the communication / processing device indicates the origin of the program from the program execution / communication device. Get the public key,
Performing communication with the program execution / communication device by access control based on the public key.

【0040】また、本発明のプログラムID通信処理制
御方法は、前記プログラム実行・通信装置が、前記署名
が前記プログラム本体と前記プログラムの出所由来を表
す公開鍵と対をなす秘密鍵とによって生成されたもので
あるかどうかを確認する工程において、前記署名が前記
プログラム本体をハッシュ関数でハッシングしたダイジ
ェストを前記プログラムの出所由来を表す公開鍵と対を
なす秘密鍵で暗号化した署名値からなり、前記プログラ
ム実行・通信装置が、前記署名値を前記プログラムの出
所由来を表す公開鍵で復号してダイジェストを得るとと
もに前記プログラム本体をハッシュ関数でハッシングし
てダイジェストを得、両ダイジェストが一致するかどう
かを判定することを特徴とする。
In the program ID communication processing control method according to the present invention, the program execution / communication device may be configured such that the signature is generated by the program body and a secret key paired with a public key indicating the origin of the program. In the step of confirming whether or not the signature is obtained, the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a secret key paired with a public key representing the origin of the program, The program execution / communication device decrypts the signature value with a public key representing the origin of the program to obtain a digest, and hashes the program body with a hash function to obtain a digest. Is determined.

【0041】さらに、本発明のプログラムID通信処理
制御方法は、前記通信・処理装置が、前記プログラム実
行・通信装置に付随する公開鍵および秘密鍵を用いた公
開鍵方式により前記プログラム実行・通信装置の認証を
行う工程において、前記通信・処理装置が、通信してよ
い相手を示す公開鍵を備え、前記プログラム実行・通信
装置に付随する公開鍵と前記通信してよい相手を示す公
開鍵とが一致するかどうかを判定することを特徴とす
る。
Further, in the program ID communication processing control method according to the present invention, the communication / processing apparatus may be configured so that the communication / processing apparatus uses a public key method using a public key and a secret key attached to the program execution / communication apparatus. In the step of performing the authentication, the communication / processing device includes a public key indicating a partner with which communication is possible, and a public key attached to the program execution / communication device and a public key indicating the partner with which communication is possible are included. It is characterized by determining whether they match.

【0042】さらにまた、本発明のプログラムID通信
処理制御方法は、前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、公開鍵によるワン・タイム・パ
スワード方式が用いられ、前記通信・処理装置は、前記
プログラム実行・通信装置にランダムな文字列を送り、
前記プログラム実行・通信装置は、該文字列を該プログ
ラム実行・通信装置に付随する秘密鍵で暗号化して前記
通信・処理装置に送り返し、前記通信・処理装置は、暗
号化された文字列を事前に保持する通信してよい相手を
示す公開鍵で復号し、復号した文字列と先に送った文字
列とが一致すれば、前記プログラム実行・通信装置を認
証することを特徴とする。
Further, in the program ID communication processing control method according to the present invention, the communication / processing device may execute the program execution / communication by a public key method using a public key and a secret key attached to the program execution / communication device. In the step of authenticating the device, a one-time password method using a public key is used, and the communication / processing device sends a random character string to the program execution / communication device,
The program execution / communication device encrypts the character string with a secret key attached to the program execution / communication device, and sends the encrypted character string back to the communication / processing device. When the decrypted character string matches the previously transmitted character string, the program execution / communication device is authenticated.

【0043】また、本発明のプログラムID通信処理制
御方法は、プログラムと、該プログラムを元にプロセス
を生成し実行するプログラム実行・通信装置と、該プロ
グラム実行・通信装置と通信を行う通信・処理装置とに
より構成される情報システムにおいて、前記プログラム
実行・通信装置が、該プログラム実行・通信装置に付随
する公開鍵および秘密鍵と、前記プログラムを元に生成
および実行されるプロセスとを含み、前記プログラム
が、プログラム本体と、該プログラムの出所由来を表す
公開鍵群と、前記プログラム本体および前記公開鍵群を
組み合わせて作成されたデータに対し各公開鍵と対をな
す各秘密鍵により行った署名群とを含み、前記プログラ
ム実行・通信装置が、各署名が前記プログラム本体およ
び前記公開鍵群を組み合わせて作成されたデータと各署
名に対応する各公開鍵と対をなす各秘密鍵とによって生
成されたものであるかどうかを確認し、生成されたもの
であることが確認された署名に対応する公開鍵の集まり
を得る工程と、前記プログラム実行・通信装置が前記プ
ログラムを元に生成されたプロセスの処理により前記通
信・処理装置と通信を行う以前に、前記通信・処理装置
が、前記プログラム実行・通信装置に付随する公開鍵お
よび秘密鍵を用いた公開鍵方式により前記プログラム実
行・通信装置の認証を行う工程と、前記生成されたもの
であることが確認された署名に対応する公開鍵が1つ以
上得られた場合に、前記プログラム実行・通信装置が前
記プログラムを元に生成されたプロセスの処理により前
記通信・処理装置と通信を行う以前に、前記通信・処理
装置が前記プログラムの出所由来を表す公開鍵を得る工
程と、前記プログラム実行・通信装置の認証に成功し、
かつ前記プログラムの出所由来を表す公開鍵を得られた
場合に、前記通信・処理装置が、前記プログラム実行・
通信装置による署名確認結果の公開鍵の集まりの一部ま
たは全部を元にしたアクセス制御により前記プログラム
実行・通信装置と通信を行う工程とを含むことを特徴と
する。
A program ID communication processing control method according to the present invention provides a program, a program execution / communication device for generating and executing a process based on the program, and a communication / process for communicating with the program execution / communication device. In an information system constituted by a device, the program execution / communication device includes a public key and a secret key attached to the program execution / communication device, and a process generated and executed based on the program, A signature generated by the program using a program body, a public key group representing the origin of the program, and data generated by combining the program body and the public key group with each private key paired with each public key. The program execution / communication device, wherein each signature sets the program body and the public key group. Checks whether it is generated by the data created together and each private key that forms a pair with each public key corresponding to each signature, and responds to the signature that is confirmed to be generated Obtaining a set of public keys to be executed, and before the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program, the communication / processing device executes the program Authenticating the program execution / communication device by a public key method using a public key and a private key attached to the execution / communication device; and a public key corresponding to the signature confirmed to be generated. When one or more are obtained, before the program execution / communication device performs communication with the communication / processing device by processing of a process generated based on the program, A step of said communication and processing unit to obtain a public key representing the derived origin of the program, succeeded in authenticating the program execution and communication device,
And when the public key indicating the origin of the program is obtained, the communication / processing device executes the program execution /
Performing communication with the program execution / communication device by access control based on a part or all of the public key collection of the signature confirmation result by the communication device.

【0044】さらに、本発明のプログラムID通信処理
制御方法は、前記プログラム実行・通信装置が、各署名
が前記プログラム本体および前記公開鍵群を組み合わせ
て作成されたデータと各署名に対応する各公開鍵と対を
なす各秘密鍵とによって生成されたものであるかどうか
を確認する工程において、各署名が前記プログラム本体
および前記公開鍵群を組み合わせて作成されたデータを
ハッシュ関数でハッシングしたダイジェストを前記プロ
グラムの出所由来を表す各公開鍵と対をなす各秘密鍵で
暗号化した各署名値からなり、前記プログラム実行・通
信装置が、各署名値を各公開鍵でそれぞれ復号した各ダ
イジェストと、前記プログラム本体および前記公開鍵群
を組み合わせて作成されたデータをハッシュ関数でハッ
シングして得られるダイジェストとが一致するかどうか
を判定することを特徴とする。
Further, in the program ID communication processing control method according to the present invention, the program execution / communication device may be configured such that each signature is created by combining the program body and the public key group, and each public key corresponding to each signature. In the step of confirming whether or not each of the signatures is generated by each secret key forming a pair with the key, a digest obtained by hashing data created by combining the program main body and the public key group with a hash function is used. Each digest composed of each signature value encrypted with each private key paired with each public key representing the source of the program, and the program execution / communication device decrypts each signature value with each public key, The data created by combining the program body and the public key group is obtained by hashing with a hash function. And judging whether the digest and match.

【0045】さらにまた、本発明のプログラムID通信
処理制御方法は、前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、前記通信・処理装置が、通信し
てよい相手を示す公開鍵を備え、前記プログラム実行・
通信装置に付随する公開鍵と前記通信してよい相手を示
す公開鍵とが一致するかどうかを判定することを特徴と
する。
Still further, in the program ID communication processing control method according to the present invention, the communication / processing device may execute the program execution / communication by a public key method using a public key and a secret key attached to the program execution / communication device. In the step of performing authentication of the device, the communication / processing device includes a public key indicating a partner with whom the communication / processing unit can communicate, and executes the program execution /
It is characterized in that it is determined whether or not the public key attached to the communication device matches the public key indicating the party with whom communication is possible.

【0046】また、本発明のプログラムID通信処理制
御方法は、前記通信・処理装置が、前記プログラム実行
・通信装置に付随する公開鍵および秘密鍵を用いた公開
鍵方式により前記プログラム実行・通信装置の認証を行
う工程において、公開鍵によるワン・タイム・パスワー
ド方式が用いられ、前記通信・処理装置は、前記プログ
ラム実行・通信装置にランダムな文字列を送り、前記プ
ログラム実行・通信装置は、該文字列を該プログラム実
行・通信装置に付随する秘密鍵で暗号化して前記通信・
処理装置に送り返し、前記通信・処理装置は、暗号化さ
れた文字列を事前に保持する通信してよい相手を示す公
開鍵で復号し、復号した文字列と先に送った文字列とが
一致すれば、前記プログラム実行・通信装置を認証する
ことを特徴とする。
Further, in the program ID communication processing control method according to the present invention, the communication / processing device may be configured so that the communication / processing device uses a public key method using a public key and a secret key attached to the program execution / communication device. In the step of performing authentication, a one-time password method using a public key is used, the communication / processing device sends a random character string to the program execution / communication device, and the program execution / communication device The character string is encrypted with a secret key attached to the program
The communication / processing device decrypts the encrypted character string with a public key that indicates a partner with which communication is possible and holds the encrypted character string in advance, and the decrypted character string matches the character string sent earlier. Then, the program execution / communication device is authenticated.

【0047】他方、本発明のプログラムID通信範囲制
御方法は、プログラムと、これらプログラムを元にプロ
セスをそれぞれ生成し実行する複数のプログラム実行・
通信装置とにより構成される情報システムにおいて、前
記プログラムが、プログラム本体,および該プログラム
の出所由来を表すID群を含み、あるプログラムを元に
あるプログラム実行・通信装置が生成したあるプロセス
が、該プログラムまたは別のあるプログラムを元に別の
あるプログラム実行・通信装置が生成した別のあるプロ
セスと通信を行う前に、両プログラム実行・通信装置
が、相手プログラム実行・通信装置内のプロセスの元と
なる前記プログラムの出所由来を表すID群の一部また
は全部を得る工程と、前記出所由来を表すID群が得ら
れたときに、両プログラム実行・通信装置が、得られた
出所由来を表すID群と自プログラム実行・通信装置内
のプロセスの元となる前記プログラムの出所由来を表す
ID群とを比較し、一致する前記プログラムの出所由来
を表すIDが1つ以上存在すれば通信路を開く工程とを
含むことを特徴とする。
On the other hand, the program ID communication range control method according to the present invention comprises a program and a plurality of program execution / execution programs each of which generates and executes a process based on the program.
In an information system including a communication device, the program includes a program main body and an ID group indicating a source of the program, and a process generated by a program execution / communication device based on a program executes the process. Before communicating with another process generated by another program execution / communication device based on a program or another program, both program execution / communication devices communicate with the other program execution / communication device. Obtaining a part or all of an ID group representing the origin of the program, and when the ID group representing the origin is obtained, both the program execution / communication devices indicate the obtained origin. Compare the ID group and the ID group representing the origin of the program as the source of the process in the own program execution / communication device, ID representing the source from the match said program characterized by comprising a step of opening a communication channel if there are one or more.

【0048】また、本発明のプログラムID通信範囲制
御方法は、プログラムと、各プログラムを元に各プロセ
スを生成し実行する複数のプログラム実行・通信装置と
により構成される情報システムにおいて、前記プログラ
ムが、プログラム本体,該プログラムの出所由来を表す
公開鍵,および該公開鍵と対をなす秘密鍵を含み、ある
プログラムを元にあるプログラム実行・通信装置が生成
したあるプロセスが、該プログラムまたは別のあるプロ
グラムを元に別のあるプログラム実行・通信装置が生成
した別のあるプロセスと通信を行う前に、両プログラム
実行・通信装置が、相手プログラム実行・通信装置から
相手プログラム実行・通信装置内のプロセスの元となる
前記プログラムの出所由来を表す公開鍵をそれぞれ得る
工程と、両プログラム実行・通信装置が、相手プログラ
ム実行・通信装置から得られた公開鍵と自プログラム実
行・通信装置内のプロセスの元となる前記プログラムの
出所由来を表す公開鍵とが一致するかどうかを判定する
工程と、両プログラム実行・通信装置が、相手プログラ
ム実行・通信装置内のプロセスの元となる前記プログラ
ムの出所由来を表す公開鍵および秘密鍵を用いて相手プ
ログラム実行・通信装置内のプロセスの元となるプログ
ラムの相互認証を行う工程と、相手プログラム実行・通
信装置から得られた公開鍵と自プログラム実行・通信装
置内のプロセスの元となる前記プログラムの出所由来を
表す公開鍵とが一致し、かつ相手プログラム実行・通信
装置内のプロセスの元となるプログラムが相互認証され
たときに、両プログラム実行・通信装置が通信路を開く
工程とを含むことを特徴とする。
A program ID communication range control method according to the present invention is an information system comprising a program and a plurality of program execution / communication devices for generating and executing each process based on each program. , A program body, a public key indicating the origin of the program, and a private key paired with the public key, and a process generated by a program execution / communication device based on a program is executed by the program or another program. Before communicating with another process generated by another program execution / communication device based on one program, both program execution / communication devices are transmitted from the other program execution / communication device to the other program execution / communication device. Obtaining a public key representing the source of the program as a source of the process; The system execution / communication device determines whether the public key obtained from the partner program execution / communication device matches the public key indicating the origin of the program that is the source of the process in the own program execution / communication device. And the two program execution / communication devices use the public key and the secret key representing the origin of the program that is the source of the process in the other program execution / communication device. The step of performing mutual authentication of the original program and the public key obtained from the partner program execution / communication device and the public key indicating the origin of the program as the source of the process in the own program execution / communication device are identical. When both programs execute and communicate with each other, and the program that is the source of the process in the Location is characterized by comprising the step of opening the communication path.

【0049】また、本発明のプログラムID通信範囲制
御方法は、両プログラム実行・通信装置が、相手プログ
ラム実行・通信装置内のプロセスの元となる前記プログ
ラムの出所由来を表す公開鍵および秘密鍵を用いて相手
プログラム実行・通信装置内のプロセスの元となるプロ
グラムの相互認証を行う工程において、公開鍵によるワ
ン・タイム・パスワード方式が用いられ、両プログラム
実行・通信装置が、自プログラム実行・通信装置に付随
する公開鍵を相手プログラム実行・通信装置に送り、相
手プログラム実行・通信装置にランダムな文字列をそれ
ぞれ送り、相手プログラム実行・通信装置が、該文字列
を相手プログラム実行・通信装置内のプロセスの元とな
る前記プログラムの出所由来を表す公開鍵と対をなす秘
密鍵で暗号化した文字列を自プログラム実行・通信装置
に送り返し、自プログラム実行・通信装置が、暗号化さ
れた文字列を対応する公開鍵で復号し、復号した文字列
と先に送った文字列とが一致すれば、相手プログラム実
行・通信装置通信装置内のプロセスの元となるプログラ
ムを認証することを特徴とする。
Further, in the program ID communication range control method according to the present invention, the two program execution / communication devices exchange a public key and a secret key representing the origin of the program which is the source of the process in the partner program execution / communication device. In the step of performing the mutual authentication of the program that is the source of the process in the partner program execution / communication device using a one-time password method using a public key, both program execution / communication devices perform their own program execution / communication The public key attached to the device is sent to the partner program execution / communication device, a random character string is sent to the partner program execution / communication device, and the partner program execution / communication device sends the character string to the partner program execution / communication device. Encrypted with a private key paired with a public key representing the origin of the program that is the source of the process The character string is sent back to the own program execution / communication device, and the own program execution / communication device decrypts the encrypted character string with the corresponding public key, and if the decrypted character string matches the character string sent earlier. For example, the partner program execution / communication device is characterized by authenticating a program that is a source of a process in the communication device.

【0050】さらに、本発明のプログラムID通信範囲
制御方法は、プログラムと、各プログラムを元に各プロ
セスを生成し実行する複数のプログラム実行・通信装置
とにより構成される情報システムにおいて、前記プログ
ラム実行・通信装置が、自プログラム実行・通信装置に
付随する公開鍵および秘密鍵と、相手プログラム実行・
通信装置に付随する公開鍵と、前記プログラムを元に生
成および実行されるプロセスとを含み、前記プログラム
が、プログラム本体と、該プログラムの出所由来を表す
公開鍵と、前記プログラム本体に対し該公開鍵と対をな
す秘密鍵により行った署名とを含み、あるプログラムを
元にあるプログラム実行・通信装置が生成したあるプロ
セスが、該プログラムまたは別のあるプログラムを元に
別のあるプログラム実行・通信装置が生成した別のある
プロセスと通信を行う前に、両プログラム実行・通信装
置が、前記署名が前記プログラム本体と前記前記プログ
ラムの出所由来を表す公開鍵と対をなす秘密鍵とによっ
て生成されたものであるかどうかを確認する工程と、前
記通信を行う前に、両プログラム実行・通信装置が、相
手プログラム実行・通信装置に付随する公開鍵および秘
密鍵を用いた公開鍵方式により相手プログラム実行・通
信装置の認証を行う工程と、両プログラム実行・通信装
置が、前記署名が前記プログラム本体と前記プログラム
の出所由来を表す公開鍵と対をなす秘密鍵とによって生
成されたものであることが確認できた場合に、前記通信
を行う前に、前記公開鍵を相手プログラム実行・通信装
置に伝える工程と、両プログラム実行・通信装置が、相
手プログラム実行・通信装置から得られた公開鍵と自プ
ログラム実行・通信装置内のプロセスの元となる前記プ
ログラムの出所由来を表す公開鍵とが一致するかどうか
を判定する工程と、相手プログラム実行・通信装置内の
プロセスの元となるプログラムが相互認証され、かつ相
手プログラム実行・通信装置から得られた公開鍵と自プ
ログラム実行・通信装置内のプロセスの元となる前記プ
ログラムの出所由来を表す公開鍵とが一致したときに、
両プログラム実行・通信装置が通信路を開く工程とを含
むことを特徴とする。
Further, the program ID communication range control method of the present invention provides an information system comprising a program and a plurality of program execution / communication devices for generating and executing each process based on each program. The communication device executes its own program; the public key and secret key attached to the communication device;
A public key attached to the communication device; and a process generated and executed based on the program. The program includes a program body, a public key indicating the origin of the program, and a public key for the program body. A process executed by a program execution / communication device based on a program, including a key and a signature performed by a pair of secret keys, to execute / communicate another program based on the program or another program Before communicating with another process generated by the device, both program execution and communication devices are generated by a secret key whose signature is paired with a public key representing the origin of the program and the signature of the program. A step of confirming whether or not the two programs are executed and before the communication, Performing a partner program execution and authentication of the communication device by a public key method using a public key and a secret key attached to the communication device, and the two program execution and communication devices determine that the signature is derived from the source of the program body and the source of the program Transmitting the public key to a partner program execution / communication device before performing the communication, if it can be confirmed that the public key is generated by a public key representing a public key and a secret key forming a pair with the public key. The execution / communication device determines whether the public key obtained from the partner program execution / communication device matches the public key indicating the origin of the program that is the source of the process in the own program execution / communication device. The process and the program that is the source of the process in the partner program execution / communication device are mutually authenticated and obtained from the partner program execution / communication device. When the public key is matched to represent the origin derived from the public key and the underlying said program processes the own program in execution and communication devices,
A step of opening the communication path between the two program execution / communication devices.

【0051】さらにまた、本発明のプログラムID通信
範囲制御方法は、両プログラム実行・通信装置が、前記
署名が前記プログラム本体と前記プログラムの出所由来
を表す公開鍵と対をなす秘密鍵とによって生成されたも
のであるかどうかを確認する工程において、前記署名が
前記プログラム本体をハッシュ関数でハッシングしたダ
イジェストを前記プログラムの出所由来を表す公開鍵と
対をなす秘密鍵で暗号化した署名値からなり、両プログ
ラム実行・通信装置が、前記署名値を前記プログラムの
出所由来を表す公開鍵で復号してダイジェストを得ると
ともに前記プログラム本体をハッシュ関数でハッシング
してダイジェストを得、両ダイジェストが一致するかど
うかを判定することを特徴とする。
Further, in the program ID communication range control method according to the present invention, the two program execution / communication apparatuses generate the signature by using the program main body and a secret key paired with a public key indicating the origin of the program. In the step of confirming whether or not the signature has been obtained, the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a private key paired with a public key representing the origin of the program. The two program execution / communication devices obtain the digest by decrypting the signature value with the public key indicating the origin of the program, and obtain the digest by hashing the program body with the hash function. Is determined.

【0052】また、本発明のプログラムID通信範囲制
御方法は、両プログラム実行・通信装置が、相手プログ
ラム実行・通信装置に付随する公開鍵および秘密鍵を用
いた公開鍵方式により相手プログラム実行・通信装置の
認証を行う工程において、両プログラム実行・通信装置
が、通信してよい相手を示す公開鍵を備え、該通信して
よい相手を示す公開鍵と相手プログラム実行・通信装置
に付随する公開鍵群の1つ以上の公開鍵とが一致するか
どうかを判定することを特徴とする。
Further, according to the program ID communication range control method of the present invention, the two program execution / communication devices can execute / communicate each other by a public key method using a public key and a secret key attached to the other program execution / communication device. In the step of performing device authentication, both program execution / communication devices are provided with a public key indicating a communication partner, and a public key indicating the communication partner and a public key attached to the partner program execution / communication device. It is characterized by determining whether one or more public keys of the group match.

【0053】さらに、本発明のプログラムID通信範囲
制御方法は、両プログラム実行・通信装置が、相手プロ
グラム実行・通信装置に付随する公開鍵および秘密鍵を
用いた公開鍵方式により相手プログラム実行・通信装置
の認証を行う工程において、公開鍵によるワン・タイム
・パスワード方式が用いられ、自プログラム実行・通信
装置は、相手プログラム実行・通信装置から相手プログ
ラム実行・通信装置に付随する公開鍵を得、相手プログ
ラム実行・通信装置にランダムな文字列を送り、相手プ
ログラム実行・通信装置は、該文字列を相手プログラム
実行・通信装置に付随する秘密鍵で暗号化して自プログ
ラム実行・通信装置に送り返し、自プログラム実行・通
信装置は、暗号化された文字列を相手プログラム実行・
通信装置から得た前記公開鍵で復号し、復号した文字列
と先に送った文字列とが一致すれば、相手プログラム実
行・通信装置を認証することを特徴とする。
Further, according to the program ID communication range control method of the present invention, the two program execution / communication devices can execute / communicate each other by a public key system using a public key and a secret key attached to the other program execution / communication device. In the step of performing device authentication, a one-time password method using a public key is used, and the own program execution / communication device obtains a public key attached to the other program execution / communication device from the other program execution / communication device, A random character string is sent to the partner program execution / communication device, and the partner program execution / communication device encrypts the character string with a secret key attached to the partner program execution / communication device and sends it back to its own program execution / communication device, The own program execution / communication device executes the partner program by executing the encrypted character string.
It is characterized by decrypting with the public key obtained from the communication device and, if the decrypted character string matches the previously transmitted character string, authenticating the partner program execution / communication device.

【0054】さらにまた、本発明のプログラムID通信
範囲制御方法は、両プログラム実行・通信装置が、相手
プログラム実行・通信装置の認証に成功し、かつ両プロ
グラム実行・通信装置による署名確認結果の公開鍵の集
まりに一致する公開鍵があるときに、プロセス間の通信
路を開く工程において、両プログラム実行・通信装置
が、通信路1つあたりに仮想的に複数の仮想通信路を形
成する通信装置と、前記プログラムの出所由来を表す公
開鍵毎に存在する仮想通信路用資源群と、通信路用資源
群とを含み、前記プログラムの出所由来を表す公開鍵が
得られた場合に、前記プログラムを元に生成されたプロ
セスが通信を行う際に、両プログラム実行・通信装置の
通信装置が、得られた出所由来を表す公開鍵に対応する
仮想通信路資源群の1つに通信路資源を割り当て、仮想
通信路資源を使い通信路を提供することを特徴とする。
Further, according to the program ID communication range control method of the present invention, both the program execution / communication devices succeed in the execution of the partner program / communication device, and the result of signature confirmation by both program execution / communication devices is disclosed. In the step of opening a communication path between processes when there is a public key that coincides with a set of keys, a communication apparatus in which both program execution / communication apparatuses virtually form a plurality of virtual communication paths per communication path And a virtual communication path resource group that exists for each public key representing the origin of the program, and a communication path resource group, and when the public key representing the origin of the program is obtained, the program When the process generated based on the communication is performed, the communication device of the two program execution / communication devices transmits the virtual communication path resource group corresponding to the obtained public key indicating the origin. One to allocate a communication channel resources, and providing a communication path using the virtual path resources.

【0055】また、本発明のプログラムID通信範囲制
御方法は、プログラムと、各プログラムを元に各プロセ
スを生成し実行する複数のプログラム実行・通信装置と
により構成される情報システムにおいて、前記プログラ
ム実行・通信装置が、自プログラム実行・通信装置に付
随する公開鍵および秘密鍵と、相手プログラム実行・通
信装置に付随する公開鍵と、各プログラムを元に生成お
よび実行されるプロセスとを含み、各プログラムが、プ
ログラム本体と、該プログラムの出所由来を表す公開鍵
群と、前記プログラム本体および前記公開鍵群を組み合
わせて作成されたデータに対し各公開鍵と対をなす各秘
密鍵により行った署名群とを含み、両プログラム実行・
通信装置が、各署名が前記プログラム本体および前記公
開鍵群を組み合わせて作成されたデータと各署名に対応
する各公開鍵と対をなす各秘密鍵とによって生成された
ものであるかどうかを確認する工程と、両プログラム実
行・通信装置が、相手プログラム実行・通信装置に付随
する公開鍵および秘密鍵を用いた公開鍵方式により相手
プログラム実行・通信装置の認証を行う工程と、両プロ
グラム実行・通信装置が、自プログラム実行・通信装置
による署名確認結果の公開鍵の集まりを相手プログラム
実行・通信装置に伝え、自プログラム実行・通信装置に
よる署名確認結果の公開鍵の集まりと相手プログラム実
行・通信装置による署名確認結果の公開鍵の集まりとに
一致する公開鍵があるかどうかを判定する工程と、相手
プログラム実行・通信装置の認証に成功し、かつ両プロ
グラム実行・通信装置による署名確認結果の公開鍵の集
まりに一致する公開鍵が1つ以上あるときに、両プログ
ラム実行・通信装置が、プロセス間の通信路を開く工程
とを含むことを特徴とする。
Further, the program ID communication range control method according to the present invention is directed to an information system including a program and a plurality of program execution / communication devices for generating and executing each process based on each program. A communication device, including its own program execution, a public key and a secret key associated with the communication device, a partner program execution, a public key associated with the communication device, and a process generated and executed based on each program; A signature generated by the program using a program body, a public key group representing the origin of the program, and data generated by combining the program body and the public key group with each private key paired with each public key. Group, and both programs
The communication device checks whether each signature is generated by data created by combining the program body and the public key group and each private key paired with each public key corresponding to each signature. And the two program execution / communication devices perform the authentication of the other program execution / communication device by a public key method using a public key and a secret key attached to the other program execution / communication device. The communication device communicates the set of public keys of the result of signature confirmation by the own program execution / communication device to the partner program execution / communication device, and executes the own program execution / collection of the public key of the result of signature confirmation by the communication device and execution / communication of the other program Determining whether there is a public key that matches the public key group of the signature confirmation result by the device; When the authentication of the communication device is successful and there is at least one public key that matches the set of public keys as a result of the signature confirmation by both program execution / communication devices, both program execution / communication devices establish communication paths between processes. And a step of opening the file.

【0056】さらに、本発明のプログラムID通信範囲
制御方法は、両プログラム実行・通信装置が、各署名が
前記プログラム本体および前記公開鍵群を組み合わせて
作成されたデータと各署名に対応する各公開鍵と対をな
す各秘密鍵とによって生成されたものであるかどうかを
判定する工程において、各署名が前記プログラム本体お
よび前記公開鍵群を組み合わせて作成されたデータをハ
ッシュ関数でハッシングしたダイジェストを前記プログ
ラムの出所由来を表す各公開鍵と対をなす各秘密鍵で暗
号化した各署名値からなり、相手プログラム実行・通信
装置が、各署名値を前記プログラムの出所由来を表す各
公開鍵でそれぞれ復号してダイジェスト群を得るととも
に前記プログラム本体および前記公開鍵群で作成された
データをハッシュ関数でハッシングしてダイジェストを
得、該ダイジェストと前記ダイジェスト群とが一致する
かどうかを判定することを特徴とする。
Further, in the program ID communication range control method according to the present invention, the two program execution / communication devices may be configured such that each signature has data created by combining the program body and the public key group and each public key corresponding to each signature. In the step of determining whether or not each of the signatures is generated by each of the secret keys forming a pair with the key, a digest obtained by hashing data created by combining the program main body and the public key group with a hash function is used. Consisting of each signature value encrypted with each private key paired with each public key representing the source of the program, the partner program execution / communication device converts each signature value with each public key representing the source of the program. Each of them is decrypted to obtain a digest group, and the data created by the program body and the public key group is hashed. To obtain a digest hashing the number, and judging whether said digest group and the digests match.

【0057】さらにまた、本発明のプログラムID通信
範囲制御方法は、両プログラム実行・通信装置が、相手
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により相手プログラム実行・通信
装置の認証を行う工程において、両プログラム実行・通
信装置が、通信してよい相手を示す公開鍵を備え、該通
信してよい相手を示す公開鍵と相手プログラム実行・通
信装置に付随する公開鍵群の1つ以上の公開鍵とが一致
するかどうかを判定することを特徴とする。
Furthermore, the program ID communication range control method of the present invention is characterized in that both program execution / communication devices execute and execute the other program by a public key system using a public key and a secret key attached to the other program execution / communication device. In the step of performing authentication of the communication device, both program execution / communication devices have a public key indicating a partner with which communication is possible, and a public key indicating the partner with which communication is possible and a public key associated with the partner program execution / communication device It is characterized in that it is determined whether or not one or more public keys of the key group match.

【0058】また、本発明のプログラムID通信範囲制
御方法は、両プログラム実行・通信装置が、相手プログ
ラム実行・通信装置に付随する公開鍵および秘密鍵を用
いた公開鍵方式により相手プログラム実行・通信装置の
認証を行う工程において、公開鍵によるワン・タイム・
パスワード方式が用いられ、自プログラム実行・通信装
置は、相手プログラム実行・通信装置から相手プログラ
ム実行・通信装置に付随する公開鍵を得、相手プログラ
ム実行・通信装置にランダムな文字列を送り、相手プロ
グラム実行・通信装置は、該文字列を相手プログラム実
行・通信装置に付随する秘密鍵で暗号化して自プログラ
ム実行・通信装置に送り返し、自プログラム実行・通信
装置は、暗号化された文字列を相手プログラム実行・通
信装置から得た前記公開鍵で復号し、復号した文字列と
先に送った文字列とが一致すれば、相手プログラム実行
・通信装置を認証することを特徴とする。
Further, according to the program ID communication range control method of the present invention, the two program execution / communication devices execute and communicate with each other by a public key system using a public key and a secret key attached to the other program execution / communication device. In the process of authenticating the device, a one-time public key
The password method is used, the own program execution / communication device obtains a public key attached to the other program execution / communication device from the other program execution / communication device, sends a random character string to the other program execution / communication device, The program execution / communication device encrypts the character string with a secret key attached to the partner program execution / communication device and sends it back to its own program execution / communication device, and its own program execution / communication device converts the encrypted character string. When the decrypted character string matches the previously transmitted character string with the public key obtained from the partner program execution / communication device, the partner program execution / communication device is authenticated.

【0059】さらに、本発明のプログラムID通信範囲
制御方法は、両プログラム実行・通信装置が、相手プロ
グラム実行・通信装置の認証に成功し、かつ両プログラ
ム実行・通信装置による署名確認結果の公開鍵の集まり
に一致する公開鍵があるときに、プロセス間の通信路を
開く工程において、両プログラム実行・通信装置が、通
信路1つあたりに仮想的に複数の仮想通信路を形成する
通信装置と、前記プログラムの出所由来を表す公開鍵毎
に存在する仮想通信路用資源群と、通信路用資源群とを
含み、前記プログラムの出所由来を表す公開鍵が1つ以
上得られた場合に、前記プログラムを元に生成されたプ
ロセスが通信を行う際に、両プログラム実行・通信装置
の通信装置が、得られた出所由来を表す公開鍵に対応す
る仮想通信路資源群の1つに通信路資源を割り当て、仮
想通信路資源を使い通信路を提供することを特徴とす
る。
Further, according to the program ID communication range control method of the present invention, both the program execution / communication devices succeed in the other program execution / communication device authentication and the public key of the signature confirmation result by both program execution / communication devices. In the step of opening a communication path between processes when there is a public key that coincides with the set of communication paths, the two program execution / communication apparatuses communicate with a communication apparatus that virtually forms a plurality of virtual communication paths per communication path. A virtual communication path resource group that exists for each public key representing the source of the program, and a communication path resource group, and when one or more public keys representing the source of the program are obtained, When a process generated based on the program performs communication, the communication device of both program execution / communication devices communicates with a virtual communication path resource corresponding to the obtained public key representing the origin. Assign a communication channel resources to one, and providing a communication path using the virtual path resources.

【0060】さらにまた、本発明のプログラムID通信
範囲制御方法は、仮想通信路用資源群が仮想的に定義し
たソケットであり、該仮想通信路資源群の一つ一つが該
仮想的に定義したソケットの各ポートに対応し、通信路
用資源群が通常のソケットであり、各通信路資源群の一
つ一つが該通常のソケット各ポートに対応することを特
徴とする。
Further, according to the program ID communication range control method of the present invention, the virtual communication path resource group is a virtually defined socket, and each of the virtual communication path resource groups is virtually defined. The communication path resource group is a normal socket corresponding to each port of the socket, and each communication path resource group corresponds to each port of the normal socket.

【0061】一方、本発明の公開鍵毎通信路提供方法
は、プログラムと、該プログラムを元にプロセスを生成
し実行および通信するプログラム実行・通信装置とによ
り構成される情報システムにおいて、前記プログラム実
行・通信装置が、前記プログラムを元に生成および実行
されるプロセスとを含み、前記プログラムが、プログラ
ム本体と、該プログラムの出所由来を表す公開鍵と、通
信路1つあたりに仮想的に複数の仮想通信路を形成する
通信装置と、前記プログラムの出所由来を表す公開鍵毎
に1つ以上存在する仮想通信路用資源と、1つ以上の通
信路用資源とを含み、前記プログラム実行・通信装置が
前記プログラムを元に生成されたプロセスの処理により
通信を行う際に、出所由来を表す公開鍵と要求された仮
想通信路用資源とを対にして仮想通信路と対応させ、仮
想通信路を使い通信路を提供する工程をを含むことを特
徴とする。
On the other hand, a method for providing a communication path for each public key according to the present invention provides an information system comprising a program and a program execution / communication device which generates, executes and communicates a process based on the program. A communication device including a process generated and executed based on the program, wherein the program includes a program main body, a public key indicating a source of the program, and a plurality of virtual keys per communication path. A communication device forming a virtual communication channel, one or more virtual communication channel resources existing for each public key indicating the origin of the program, and one or more communication channel resources; When the device communicates by the process of the process generated based on the program, the public key indicating the origin and the requested virtual communication path resource are used. To in correspondence with the virtual communication path, characterized in that it comprises a step of providing a communication path using the virtual channel.

【0062】さらにまた、本発明の公開鍵毎通信路提供
方法は、仮想通信路用資源群が仮想的に定義したソケッ
トであり、該仮想通信路資源群の一つ一つが該仮想的に
定義したソケットの各ポートに対応し、通信路用資源群
が通常のソケットであり、各通信路資源群の一つ一つが
該通常のソケット各ポートに対応することを特徴とす
る。
Furthermore, in the communication path providing method for each public key according to the present invention, the virtual communication path resource group is a virtually defined socket, and each of the virtual communication path resource groups is defined by the virtually defined socket. The communication path resource group is a normal socket, and each of the communication path resource groups corresponds to each port of the normal socket.

【0063】[0063]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して詳細に説明する。
Embodiments of the present invention will be described below in detail with reference to the drawings.

【0064】(1) 第1の実施の形態 図1を参照すると、本発明の第1の実施の形態に係る秘
密鍵なしプログラム認証方法が適用された情報システム
は、実行機能および通信機能を有するプログラム実行・
通信装置が適用された携帯機器11と、通信機能を有す
る通信・処理装置が適用された親機器12と、携帯機器
11にインストールされて実行されるプログラム112
とから、その主要部が構成されている。
(1) First Embodiment Referring to FIG. 1, an information system to which a program authentication method without a secret key according to a first embodiment of the present invention is applied has an execution function and a communication function. Program execution
A portable device 11 to which a communication device is applied, a parent device 12 to which a communication / processing device having a communication function is applied, and a program 112 installed and executed in the portable device 11
Thus, the main part is constituted.

【0065】実行機能および通信機能は、Java(サ
ンマイクロシステムズ社の登録商標)などが想定され
る。
The execution function and the communication function are assumed to be Java (registered trademark of Sun Microsystems).

【0066】携帯機器11としては、携帯電話機(PH
S(Personal HandyPhone)を含
む),携帯情報端末等が想定される。
As the portable device 11, a portable telephone (PH)
S (including Personal Handy Phone)), a portable information terminal, and the like.

【0067】親機器12としては、POS(Point
Of Sales)端末等が想定される。
As the parent device 12, a POS (Point
Of Sales) terminals are assumed.

【0068】携帯機器11と親機器12との間の通信機
能は、エリクソン社等が提唱するBluetooth,
無線LAN(Local Area Networ
k),PIAFS(PHS Internet Acc
ess Forum Standard)等の近距離無
線通信技術で実現されるものとする。
The communication function between the portable device 11 and the parent device 12 is based on Bluetooth, proposed by Ericsson and others.
Wireless LAN (Local Area Network)
k), PIAFS (PHS Internet Acc)
It is assumed to be realized by a short-range wireless communication technology such as ESS Forum Standard.

【0069】携帯機器11は、信頼できる組み込み機能
部111と、プログラム112を実行するプロセス11
20と、携帯機器11に付随する秘密鍵1131および
公開鍵1132とを含んで構成されている。
The portable device 11 includes a reliable embedded function unit 111 and a process 11 for executing the program 112.
20 and a secret key 1131 and a public key 1132 attached to the portable device 11.

【0070】プログラム112は、プログラム本体11
21と、プログラム112の出所由来を表す公開鍵11
221と、プログラム本体1121をハッシュ関数でハ
ッシングしたダイジェストを公開鍵11221と対をな
す秘密鍵(図示せず)で暗号化した署名(デジタル署
名,電子署名)であるハッシュ値11231とを含んで
構成されている。なお、プログラム112は、その出所
(製造元等)および由来(バージョン等)において、プ
ログラム本体1121,公開鍵11221,およびハッ
シュ値11231が一体として作成されている。
The program 112 is composed of the program
21 and a public key 11 representing the origin of the program 112
221 and a hash value 11231 that is a signature (digital signature, electronic signature) obtained by encrypting a digest obtained by hashing the program body 1121 with a hash function with a private key (not shown) paired with the public key 11221. Have been. In the program 112, a program main body 1121, a public key 11221, and a hash value 11231 are integrally formed based on the source (manufacturer and the like) and the origin (version and the like).

【0071】親機器12は、通信してよい相手を示す公
開鍵として、携帯機器11に付随する公開鍵1132を
もつ。
The parent device 12 has a public key 1132 attached to the portable device 11 as a public key indicating a communication partner.

【0072】図2を参照すると、携帯機器11の組み込
み機能部111および親機器12の処理は、ハッシュ値
確認ステップS101と、通信要求発生ステップS10
2と、携帯機器認証ステップS103と、プログラム出
所由来判定ステップS104と、プログラム認証ステッ
プS105と、プログラム不認証ステップS106とか
らなる。
Referring to FIG. 2, the processing of the built-in function unit 111 and the parent device 12 of the portable device 11 includes a hash value confirmation step S101 and a communication request generation step S10.
2, a mobile device authentication step S103, a program source origin determination step S104, a program authentication step S105, and a program non-authentication step S106.

【0073】次に、このように構成された第1の実施の
形態に係る秘密鍵なしプログラム認証方法が適用された
情報システムの動作について、図1および図2を参照し
て詳細に説明する。
Next, the operation of the information system to which the secret keyless program authentication method according to the first embodiment configured as described above is applied will be described in detail with reference to FIG. 1 and FIG.

【0074】まず、携帯機器11は、組み込み機能部1
11により、ハッシュ値11231がプログラム本体1
121および公開鍵11221と対をなす秘密鍵とによ
って生成されたものであるかどうかを確認する(ステッ
プS101)。詳しくは、組み込み機能部111は、ハ
ッシュ値11231を公開鍵11221で復号してプロ
グラム本体1121をハッシングしたダイジェストを得
る一方、プログラム本体1121を既知のハッシュ関数
でハッシングしてダイジェストを得、両ダイジェストが
完全に一致するかどうかを検証することで、ハッシュ値
11231がプログラム本体1121および公開鍵11
221と対をなす秘密鍵とによって生成されたものであ
るかどうかを確認する。すなわち、プログラム本体11
21および公開鍵11221が改竄されたものでなく、
プログラム112が真正な出所由来をもつことを確認す
る。なお、この確認処理は、携帯機器11にプログラム
112が導入、たとえばダウンロードされたときに1回
行われればよい。
First, the portable device 11 includes the embedded function unit 1
11, the hash value 11231 becomes the program body 1
It is confirmed whether or not the key is generated by the secret key paired with the public key 12121 and the public key 11221 (step S101). Specifically, the built-in function unit 111 obtains a digest obtained by hashing the program main body 1121 by decrypting the hash value 11231 with the public key 11221, and obtains a digest by hashing the program main body 1121 with a known hash function. By verifying whether they match completely, the hash value 11231 is stored in the program body 1121 and the public key 11
It is determined whether or not the key is generated by the secret key paired with the secret key 221. That is, the program body 11
21 and public key 11221 are not tampered with,
Verify that the program 112 has a genuine source. Note that this confirmation process may be performed once when the program 112 is introduced into the portable device 11, for example, when the program 112 is downloaded.

【0075】次に、携帯機器11内のプログラム112
を実行するプロセス1120が親機器12と通信をしよ
うとして通信要求を発生させた場合(ステップS10
2)、またはそれ以前に、親機器12は、携帯機器11
に付随する公開鍵1132および秘密鍵1131を用い
た公開鍵方式により携帯機器11の認証を行う(ステッ
プS103)。
Next, the program 112 in the portable device 11
Process 1120 for executing a communication request to communicate with the parent device 12 (step S10
2) or earlier, the parent device 12 is
The mobile device 11 is authenticated by a public key method using a public key 1132 and a secret key 1131 attached to the mobile device 11 (step S103).

【0076】たとえば、親機器12は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器11に付
随する公開鍵1132と、携帯機器11が保持する携帯
機器11に付随する公開鍵1132とが一致するかどう
かを判定し、一致した場合に携帯機器11の認証をおこ
なう。
For example, the parent device 12 has a public key 1132 attached to the portable device 11 held as a public key indicating a partner with which the parent device 12 can communicate, and a public key 1132 attached to the portable device 11 held by the portable device 11. Is determined, and if they match, authentication of the portable device 11 is performed.

【0077】また、RSA(Rivest,Shami
r,Adleman)の公開鍵によるワン・タイム・パ
スワード(One Time Password)方式
を用いた場合、親機器12は携帯機器11にランダムな
文字列を送り(”Challenge”)、携帯機器1
1の組み込み機能部111はその文字列を携帯機器11
に付随する秘密鍵1131で暗号化して親機器12に送
り返し(”Response”)、親機器12は暗号化
した文字列を事前に通信してよい相手を示す公開鍵とし
て保持する携帯機器11に付随する公開鍵1132で復
号し、復号した文字列と先に送ったランダムな文字列と
が一致すれば、携帯機器11を通信してよい相手(つま
り、通信してよい相手を示す公開鍵として保持する携帯
機器11に付随する公開鍵1232と対をなす秘密鍵1
131を所有するもの)であると認証する。
Further, RSA (Rivest, Shami)
r, Adleman), the parent device 12 sends a random character string to the portable device 11 (“Challenge”), and the portable device 1 uses the one-time password (One Time Password) method using the public key of “A.
1 of the built-in function unit 111
Is encrypted with the secret key 1131 attached to the mobile device 11 and sent back to the parent device 12 (“Response”). If the decrypted character string matches the random character string sent earlier, the mobile device 11 is held as a partner who can communicate (that is, held as a public key indicating a partner who can communicate). Key 1 paired with public key 1232 attached to portable device 11
131).

【0078】携帯機器11の認証に成功した場合、親機
器12は、携帯機器11の組み込み機能部111から携
帯機器11によるハッシュ値確認結果の公開鍵1122
1を得、携帯機器11によるハッシュ値確認結果に基づ
いてプログラム112が真正な出所由来をもつものであ
るかどうかを判定し(ステップS104)、そうであれ
ば得られた公開鍵11221でプログラム112を認証
したとする(ステップS105)。
If the authentication of the portable device 11 succeeds, the parent device 12 sends the public key 1122 of the hash value confirmation result by the portable device 11 from the built-in function unit 111 of the portable device 11.
1 and determines whether or not the program 112 has a genuine origin based on the hash value confirmation result by the portable device 11 (step S104). If so, the program 112 is obtained using the obtained public key 11221. Is authenticated (step S105).

【0079】一方、携帯機器11の認証に失敗した場合
(ステップS103)、または公開鍵11221がプロ
グラム112の真正な出所由来を表す公開鍵でなかった
場合(ステップS104)、親機器12は、プログラム
112を認証しない。
On the other hand, if the authentication of the portable device 11 has failed (step S103), or if the public key 11221 is not the public key indicating the authentic origin of the program 112 (step S104), the parent device 12 112 is not authenticated.

【0080】第1の実施の形態によれば、プログラム1
12が秘密鍵をもたなくても、親機器12は、親機器1
2と通信をしようとしてきた携帯機器11内のプロセス
1120の元となるプログラム112の認証が可能であ
ることから、盗み見や改竄が可能な環境下にあるプログ
ラム112を元にして動作する携帯機器11と通信を行
う場合に、親機器12がプログラム112の成りすまし
を防止しかつ認証を行うことができる。
According to the first embodiment, the program 1
Even if the parent device 12 does not have a secret key, the parent device 12
Since the program 112 that is the source of the process 1120 in the mobile device 11 that has attempted to communicate with the mobile device 2 can be authenticated, the mobile device 11 that operates based on the program 112 in an environment where it can be intercepted and tampered with When performing communication with the parent device 12, the parent device 12 can prevent spoofing of the program 112 and perform authentication.

【0081】(2) 第2の実施の形態 図3を参照すると、本発明の第2の実施の形態に係る秘
密鍵なしプログラム認証方法が適用された情報システム
は、実行機能および通信機能を有するプログラム実行・
通信装置が適用された携帯機器21と、通信機能を有す
る通信・処理装置が適用された親機器22と、携帯機器
21にインストールされて実行されるプログラム212
とから、その主要部が構成されている。
(2) Second Embodiment Referring to FIG. 3, an information system to which a secret keyless program authentication method according to a second embodiment of the present invention is applied has an execution function and a communication function. Program execution
A portable device 21 to which a communication device is applied, a parent device 22 to which a communication / processing device having a communication function is applied, and a program 212 installed and executed in the portable device 21
Thus, the main part is constituted.

【0082】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0083】携帯機器21としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 21, a portable telephone (PH)
S), portable information terminals and the like.

【0084】親機器22としては、POS端末等が想定
される。
As the parent device 22, a POS terminal or the like is assumed.

【0085】携帯機器21と親機器22との間の通信機
能は、エリクソン社等が提唱するBluetooth,
無線LAN,PIAFS等の近距離無線通信技術で実現
されるものとする。
The communication function between the portable device 21 and the parent device 22 is based on Bluetooth, proposed by Ericsson and others.
It is assumed to be realized by short-range wireless communication technology such as wireless LAN and PIAFS.

【0086】携帯機器21は、信頼できる組み込み機能
部211と、プログラム212を実行するプロセス21
20と、携帯機器21に付随する秘密鍵2131および
公開鍵2132とを含んで構成されている。
The portable device 21 includes a reliable embedded function unit 211 and a process 21 for executing the program 212.
20 and a private key 2131 and a public key 2132 attached to the portable device 21.

【0087】プログラム212は、プログラム本体21
21と、プログラム212の出所由来を表す公開鍵群2
1221〜2122n(nは2以上の正整数。以下同
様)と、プログラム本体2121および公開鍵群212
21〜2122nを組み合わせて作成されたデータをハ
ッシュ関数でハッシングしたダイジェストを各公開鍵2
1221〜2122nと対をなす各秘密鍵(図示せず)
でそれぞれ暗号化した署名群であるハッシュ値群212
31〜2123nとを含んで構成されている。なお、プ
ログラム212は、その出所(製造元等)および由来
(バージョン等)において、プログラム本体2121,
公開鍵群21221〜2122n,およびハッシュ値群
21231〜2123nが一体として作成されている。
The program 212 is composed of the program
21 and a public key group 2 representing the origin of the program 212
1221 to 2122n (n is a positive integer of 2 or more; the same applies hereinafter), the program body 2121 and the public key group 212
Digests obtained by hashing data created by combining the keys 21 to 2122n with a hash function are assigned to each public key 2
Each private key paired with 1221 to 2122n (not shown)
Hash value group 212 which is a signature group encrypted by
312123n. Note that the program 212 has a source (manufacturer and the like) and an origin (version and the like) in the program
The public key groups 2122-1212n and the hash value groups 21231-2123n are integrally formed.

【0088】親機器22は、通信してよい相手を示す公
開鍵として、携帯機器21に付随する公開鍵2132を
もつ。
The parent device 22 has a public key 2132 attached to the portable device 21 as a public key indicating a partner with which communication is possible.

【0089】図4を参照すると、携帯機器21の組み込
み機能部211および親機器22の処理は、ハッシュ値
確認ステップS201と、通信要求発生ステップS20
2と、携帯機器認証ステップS203と、プログラム由
来判定ステップS204と、プログラム認証ステップS
205と、プログラム不認証ステップS206とからな
る。
Referring to FIG. 4, the processing of the built-in function unit 211 and the parent device 22 of the portable device 21 includes a hash value confirmation step S201 and a communication request generation step S20.
2, mobile device authentication step S203, program origin determination step S204, and program authentication step S204.
205 and a program non-authentication step S206.

【0090】次に、このように構成された第2の実施の
形態に係る秘密鍵なしプログラム認証方法が適用された
情報システムの動作について、図3および図4を参照し
て詳細に説明する。
Next, the operation of the information system to which the secret keyless program authentication method according to the second embodiment configured as described above is applied will be described in detail with reference to FIG. 3 and FIG.

【0091】まず、携帯機器21は、組み込み機能部2
11により、各ハッシュ値21231〜2123nがプ
ログラム本体2121および公開鍵群21221〜21
22nと各公開鍵21221〜2122nと対をなす各
秘密鍵とによって生成されたものであるかどうかを確認
し、確認したハッシュ値に対応する公開鍵の集まりを得
る(ステップS201)。詳しくは、組み込み機能部2
11は、各ハッシュ値21231〜2123nを各公開
鍵21221〜2122nでそれぞれ復号してプログラ
ム本体2221および公開鍵群21221〜2122n
を組み合わせて作成されたデータをハッシングしたダイ
ジェスト群を得る一方、プログラム本体2121および
公開鍵群21221〜2122nを組み合わせて作成さ
れたデータを既知のハッシュ関数でハッシングしてダイ
ジェストを得、該ダイジェストとダイジェスト群の一つ
一つとが完全に一致するかどうかをそれぞれ検証するこ
とで、各ハッシュ値21231〜2123nがプログラ
ム本体2121および公開鍵群21221〜2122n
と各公開鍵21221〜2122nと対をなす各秘密鍵
とによって生成されたものであるかどうかをそれぞれ確
認し、確認したハッシュ値に対応する公開鍵の集まりを
得る。すなわち、プログラム本体2121および公開鍵
群21221〜2122nが、改竄されたものでなく、
プログラム212が真正な出所由来をもつことを確認す
る。なお、この確認処理は、携帯機器21にプログラム
212が導入、たとえばダウンロードされたときに1回
行われればよい。
First, the portable device 21 has the built-in function unit 2
11, each hash value 21231 to 2123n is stored in the program body 2121 and the public key group 21221 to 2112.
It is checked whether the key is generated by the secret key 2222 and each private key paired with each of the public keys 2122-12122n, and a group of public keys corresponding to the checked hash value is obtained (step S201). For details, see Embedded Function 2
Numeral 11 decrypts the hash values 2123-1212n with the public keys 2121-2212n, respectively, and decrypts the program body 2221 and the public key groups 2122-12122n.
To obtain a digest group obtained by hashing the data created by combining the program main body 2121 and the public key group 2122-1212n with a known hash function to obtain a digest. By verifying whether or not each of the groups completely matches, each hash value 21231 to 2123n is stored in the program body 2121 and the public key group 21221 to 2122n.
And each of the public keys 2122-12122n and each of the secret keys forming a pair with each other, to confirm whether or not each of them is generated, and to obtain a set of public keys corresponding to the confirmed hash values. That is, the program body 2121 and the public key groups 2122-1212n are not tampered,
Verify that the program 212 has a genuine source. Note that this confirmation process may be performed once when the program 212 is introduced into the portable device 21, for example, when the program 212 is downloaded.

【0092】次に、携帯機器21内のプログラム212
を実行するプロセス2120が親機器22と通信をしよ
うとして通信要求が発生した場合(ステップS202)、
またはそれ以前に、親機器22は、携帯機器21に付随
する秘密鍵2131および公開鍵2132を用いた公開
鍵方式により携帯機器21の認証を行う(ステップS2
03)。
Next, the program 212 in the portable device 21
Is performed by the process 2120 that executes the communication with the parent device 22 (step S202),
Alternatively, before that, the parent device 22 authenticates the portable device 21 by a public key method using the secret key 2131 and the public key 2132 attached to the portable device 21 (step S2).
03).

【0093】たとえば、親機器22は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器21に付
随する公開鍵2132と、携帯機器21が保持する携帯
機器21に付随する公開鍵2132とが一致するかどう
かを判定し、一致した場合に携帯機器21の認証を行
う。
For example, the parent device 22 has a public key 2132 attached to the portable device 21 held as a public key indicating a partner with which the parent device 22 can communicate, and a public key 2132 attached to the portable device 21 held by the portable device 21. Is determined, and if they match, authentication of the portable device 21 is performed.

【0094】また、RSAの公開鍵によるワン・タイム
・パスワード方式を用いた場合、親機器22は携帯機器
21にランダムな文字列を送り(”Challeng
e”)、携帯機器21の組み込み機能部211はその文
字列を携帯機器21に付随する秘密鍵2131で暗号化
して親機器22に送り返し(”Response”)、
親機器22は暗号化した文字列を事前に通信してよい相
手を示す公開鍵として保持する携帯機器21に付随する
公開鍵2132で復号し、復号した文字列と先に送った
ランダムな文字列とが一致すれば、携帯機器21を通信
してよい相手(つまり、通信してよい相手を示す公開鍵
として保持する携帯機器21に付随する公開鍵2132
と対をなす秘密鍵2131を所有するもの)であると認
証する。
When the one-time password method using the public key of the RSA is used, the parent device 22 sends a random character string to the portable device 21 (“Challenging”).
e ”), the built-in function unit 211 of the mobile device 21 encrypts the character string with the secret key 2131 attached to the mobile device 21 and sends it back to the parent device 22 (“ Response ”).
The parent device 22 decrypts the encrypted character string with the public key 2132 attached to the portable device 21 which holds the public character in advance as a public key indicating a partner with whom communication is possible, and decrypts the decrypted character string and the random character string transmitted earlier. If they match, the public key 2132 attached to the portable device 21 that holds the portable device 21 as a partner with which the portable device 21 can communicate (that is, the public key indicating the partner with which the portable device 21 can communicate) is held.
(Which owns the secret key 2131 paired with the private key 2131).

【0095】携帯機器21の認証に成功した場合、親機
器22は、携帯機器21の組み込み機能部211から携
帯機器21によるハッシュ値確認結果の公開鍵の集まり
を得、携帯機器21によるハッシュ値確認結果の公開鍵
の集まりに1つ以上の公開鍵が含まれていればプログラ
ム212が真正な出所由来をもつものであると判定し
(ステップS204)、公開鍵の集まりの一部または全
部でプログラム212を認証したとする(ステップS2
05)。
When the authentication of the portable device 21 succeeds, the parent device 22 obtains a set of public keys of the hash value confirmation result by the portable device 21 from the built-in function unit 211 of the portable device 21, and checks the hash value by the portable device 21. If one or more public keys are included in the resulting set of public keys, it is determined that the program 212 has a genuine source (step S204), and the program 212 is partially or wholly programmed. 212 is authenticated (step S2
05).

【0096】一方、携帯機器21の認証に失敗した場合
(ステップS203)、またはプログラム212の真正
な出所由来を表す公開鍵が得られなかった場合(ステッ
プS204)、親機器22は、プログラム212を認証
しない(ステップS206)。
On the other hand, when the authentication of the portable device 21 has failed (step S203), or when the public key indicating the authentic origin of the program 212 has not been obtained (step S204), the parent device 22 No authentication is performed (step S206).

【0097】なお、上記第2の実施の形態では、ステッ
プS204で携帯機器21によるハッシュ値確認結果の
公開鍵の集まりに1つ以上の公開鍵が含まれていればプ
ログラム212が真正な出所由来をもつものであると判
定したが、携帯機器21によるハッシュ値確認結果の公
開鍵の集まりに公開鍵群21221〜2122nのすべ
てが含まれていたときにのみプログラム212が真正な
出所由来をもつものであると判定するようにすることも
できる。
In the second embodiment, if one or more public keys are included in the set of public keys as a result of the hash value confirmation by the portable device 21 in step S204, the program 212 is derived from the genuine source. However, the program 212 has a genuine source when only the public key groups 2122-1212n are included in the set of public keys of the hash value confirmation result by the portable device 21. May be determined.

【0098】第2の実施の形態によれば、プログラム2
12が公開鍵群21221〜2122nをもつことを許
す場合は、プログラム本体2121とともに保持する公
開鍵群21221〜2122nに対し署名群であるハッ
シュ値群21231〜2123nを付与することから、
プログラムの成りすましを防止することができる。
According to the second embodiment, program 2
If the public key group 2121-2n is allowed to have the public key group 2121-2212n, a hash value group 21231-2123n, which is a signature group, is added to the public key group 2121-2212n held together with the program body 2121.
Program spoofing can be prevented.

【0099】(2) 第3の実施の形態 図5を参照すると、本発明の第3の実施の形態に係るプ
ログラムID通信処理制御方法が適用された情報システ
ムは、実行機能および通信機能を有するプログラム実行
・通信装置が適用された携帯機器31と、通信機能を有
する通信・処理装置が適用された親機器32と、携帯機
器31にインストールされて実行されるプログラム31
2とから、その主要部が構成されている。
(2) Third Embodiment Referring to FIG. 5, an information system to which a program ID communication processing control method according to a third embodiment of the present invention is applied has an execution function and a communication function. A portable device 31 to which a program execution / communication device is applied, a parent device 32 to which a communication / processing device having a communication function is applied, and a program 31 installed and executed in the portable device 31
2 constitutes the main part.

【0100】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0101】携帯機器31としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 31, a portable telephone (PH)
S), portable information terminals and the like.

【0102】親機器32としては、POS端末等が想定
される。
As the parent device 32, a POS terminal or the like is assumed.

【0103】携帯機器31と親機器32との間の通信機
能は、エリクソン社等が提唱するBluetooth,
無線LAN,PIAFS等の近距離無線通信技術で実現
されるものとする。
The communication function between the portable device 31 and the parent device 32 is based on Bluetooth, proposed by Ericsson and others.
It is assumed to be realized by short-range wireless communication technology such as wireless LAN and PIAFS.

【0104】携帯機器31は、信頼できる組み込み機能
部311と、プログラム312を実行するプロセス31
20とを含んで構成されている。
The portable device 31 includes a reliable embedded function unit 311 and a process 31 for executing the program 312.
20.

【0105】プログラム312は、プログラム本体31
21と、プログラム312の出所由来を表す公開鍵31
221および秘密鍵31241とを含んで構成されてい
る。なお、プログラム312は、その出所(製造元等)
および由来(バージョン等)において、プログラム本体
3121,公開鍵31221,および秘密鍵31241
が一体として作成されている。
The program 312 is composed of the program
21 and a public key 31 representing the origin of the program 312
221 and a secret key 31241. The source of the program 312 (manufacturer, etc.)
And the origin (version and the like), the program body 3121, the public key 32211, and the secret key 31241
Is created as one.

【0106】図6を参照すると、携帯機器31の組み込
み機能部311および親機器32の処理は、通信要求発
生ステップS301と、公開鍵獲得ステップS302
と、プログラム認証ステップS303と、通信・処理ス
テップS304と、通信・処理なしステップS305と
からなる。
Referring to FIG. 6, the processes of the embedded function unit 311 of the portable device 31 and the parent device 32 include a communication request generation step S301 and a public key acquisition step S302.
, Program authentication step S303, communication / processing step S304, and no communication / processing step S305.

【0107】次に、このように構成された第3の実施の
形態に係るプログラムID通信処理制御方法が適用され
た情報システムの動作について、図5および図6を参照
して詳細に説明する。
Next, the operation of the information system to which the program ID communication processing control method according to the third embodiment thus configured is applied will be described in detail with reference to FIG. 5 and FIG.

【0108】携帯機器31内のプログラム312を実行
するプロセス3120が親機器32と通信するための通
信要求を発生させた場合(ステップS301)、親機器
32は、携帯機器31の組み込み機能部311を介し
て、プロセス3120の元となるプログラム312の出
所由来を表す公開鍵31221を得る(ステップS30
2)。
When the process 3120 for executing the program 312 in the portable device 31 generates a communication request for communicating with the parent device 32 (step S301), the parent device 32 executes the built-in function unit 311 of the portable device 31. Through the process 3120, a public key 31221 representing the origin of the program 312 that is the source of the process 3120 is obtained (step S30).
2).

【0109】次に、親機器32は、携帯機器31の組み
込み機能部311に対し、公開鍵31221および秘密
鍵31241を用いた公開鍵方式によりプロセス312
0の元となるプログラム312が真正な出所由来をもつ
ものであるかどうかを認証する(ステップS303)。
Next, the parent device 32 sends a process 312 to the built-in function unit 311 of the portable device 31 by a public key method using a public key 31221 and a secret key 31241.
It authenticates whether or not the program 312 that is the base of 0 has a genuine origin (step S303).

【0110】たとえば、RSAの公開鍵によるワン・タ
イム・パスワード方式を用いた場合、親機器32は携帯
機器31の組み込み部311にランダムな文字列を送り
(”Challenge”)、携帯機器31の組み込み
機能部311はその文字列をプロセス3120の元とな
るプログラム312の出所由来を表す公開鍵31221
と対をなす秘密鍵31241で暗号化して親機器32に
送り返し(”Response”)、親機器32は暗号
化した文字列を先に受け取った公開鍵31221で復号
し、復号した文字列と先に送ったランダムな文字列とが
一致すれば、プロセス3120の元となるプログラム3
12は真正な出所由来をもつものである(つまり、プロ
グラム312が該プログラム312の出所由来を表す公
開鍵31221と対をなす秘密鍵31241を所有す
る)と認証する。
For example, when the one-time password method using the public key of the RSA is used, the parent device 32 sends a random character string to the built-in section 311 of the portable device 31 (“Challenge”) and installs the portable device 31. The function unit 311 converts the character string into a public key 31221 indicating the origin of the program 312 that is the source of the process 3120.
The parent device 32 encrypts the character string with the secret key 31241 and sends it back to the parent device 32 (“Response”). The parent device 32 decrypts the encrypted character string with the public key 31221 received earlier, and If the sent random character string matches, the program 3 as a source of the process 3120
12 authenticates that it has a genuine origin (that is, the program 312 has a private key 31241 that is paired with a public key 31221 indicating the origin of the program 312).

【0111】プログラム312の認証に成功した場合
(ステップS303)、親機器32は、以降の通信によ
って発生する処理を、公開鍵31221に対応するユー
ザ権限でアクセス制御して実行する(ステップS30
4)。
If the authentication of the program 312 is successful (step S303), the parent device 32 executes the processing that occurs in the subsequent communication by performing access control with the user authority corresponding to the public key 31021 (step S30).
4).

【0112】一方、プログラム312の認証に失敗した
場合(ステップS303)、または公開鍵31221に
対応するユーザ権限が存在しない場合、親機器32は、
通信によって発生する処理をしないか、特定の制限され
たユーザ権限で処理を実行する(ステップS305)。
On the other hand, if the authentication of the program 312 has failed (step S303), or if the user authority corresponding to the public key 31221 does not exist, the parent device 32
The process that is generated by the communication is not performed, or the process is executed with a specific restricted user authority (step S305).

【0113】第3の実施の形態によれば、プログラム3
12の出所由来を表す公開鍵31221、つまりプログ
ラム312の製造元やバージョンに類する情報を元にし
たアクセス制御により通信を行うことから、悪意のプロ
グラムに対しセキュリティを保つことができる。
According to the third embodiment, the program 3
Since communication is performed by access control based on the public key 31221 indicating the origin of the twelve sources, that is, information similar to the manufacturer and version of the program 312, security against malicious programs can be maintained.

【0114】また、プログラム312の出所由来を表す
公開鍵31221、つまりプログラム312の製造元や
バージョンに類する情報を元にしたアクセス制御により
通信を行うため、ユーザ管理のような集中管理が困難な
分散環境下での通信による処理について、悪意のプログ
ラムに対しセキュリティを保つことができる。
Further, since communication is performed by access control based on the public key 31221 representing the origin of the program 312, that is, information similar to the manufacturer and version of the program 312, a distributed environment in which centralized management such as user management is difficult is difficult. Regarding processing by communication below, security against malicious programs can be maintained.

【0115】(4) 第4の実施の形態 図7を参照すると、本発明の第4の実施の形態に係るプ
ログラムID通信処理制御方法が適用された情報システ
ムは、実行機能および通信機能を有するプログラム実行
・通信装置が適用された携帯機器41と、通信機能を有
する通信・処理装置が適用された親機器42と、携帯機
器41にインストールされ実行されるプログラム412
とから、その主要部が構成されている。
(4) Fourth Embodiment Referring to FIG. 7, an information system to which a program ID communication processing control method according to a fourth embodiment of the present invention is applied has an execution function and a communication function. A portable device 41 to which a program execution / communication device is applied, a parent device 42 to which a communication / processing device having a communication function is applied, and a program 412 installed and executed in the portable device 41
Thus, the main part is constituted.

【0116】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0117】携帯機器41としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 41, a portable telephone (PH)
S), portable information terminals and the like.

【0118】親機器42としては、POS端末等が想定
される。
As the parent device 42, a POS terminal or the like is assumed.

【0119】携帯機器41と親機器42との間の通信機
能は、エリクソン社等が提唱するBluetooth,
無線LAN,PIAFS等の近距離無線通信技術で実現
されるものとする。
[0119] The communication function between the portable device 41 and the parent device 42 is based on Bluetooth, proposed by Ericsson and others.
It is assumed to be realized by short-range wireless communication technology such as wireless LAN and PIAFS.

【0120】携帯機器41は、信頼できる組み込み機能
部411と、プログラム412を実行するプロセス41
20と、携帯機器41に付随する秘密鍵4131および
公開鍵4132とを含んで構成されている。
The portable device 41 includes a reliable embedded function unit 411 and a process 41 for executing the program 412.
20 and a private key 4131 and a public key 4132 attached to the portable device 41.

【0121】プログラム412は、プログラム本体41
21と、プログラム412の出所由来を表す公開鍵41
221と、プログラム本体4121をハッシュ関数でハ
ッシングしたダイジェストを公開鍵41221と対をな
す秘密鍵(図示せず)で暗号化した署名であるハッシュ
値41231とを含んで構成されている。なお、プログ
ラム412は、その出所(製造元等)および由来(バー
ジョン等)において、プログラム本体4121,公開鍵
41221,およびハッシュ値41231が一体として
作成されている。
The program 412 is the program body 41
21 and a public key 41 indicating the origin of the program 412
221 and a hash value 41231 that is a signature obtained by encrypting a digest obtained by hashing the program body 4121 with a hash function using a secret key (not shown) paired with the public key 41221. In the program 412, the program main body 4121, the public key 41221, and the hash value 41231 are integrally created based on the source (manufacturer and the like) and the origin (version and the like).

【0122】親機器42は、通信してよい相手を示す公
開鍵として、携帯機器41に付随する公開鍵4132を
もつ。
The parent device 42 has a public key 4132 attached to the portable device 41 as a public key indicating a communication partner.

【0123】図8を参照すると、携帯機器41の組み込
み機能部411および親機器42の処理は、ハッシュ値
確認ステップS401と、通信要求発生ステップS40
2と、携帯機器認証ステップS403と、プログラム出
所由来判定ステップS404と、通信・処理ステップS
405と、通信・処理なしステップS406とからな
る。
Referring to FIG. 8, the processing of the built-in function unit 411 of the portable device 41 and the processing of the parent device 42 include a hash value confirmation step S401 and a communication request generation step S40.
2, a mobile device authentication step S403, a program source origin determination step S404, and a communication / processing step S404.
405 and step S406 without communication and processing.

【0124】次に、このように構成された第4の実施の
形態に係るプログラムID通信処理制御方法が適用され
た情報システムの動作について、図7および図8を参照
して詳細に説明する。
Next, the operation of the information system to which the program ID communication processing control method according to the fourth embodiment configured as described above is applied will be described in detail with reference to FIG. 7 and FIG.

【0125】まず、携帯機器41は、組み込み機能部4
11により、ハッシュ値41231がプログラム本体4
121および公開鍵41221と対をなす秘密鍵とによ
って生成されたものであるかどうかを確認する(ステッ
プS401)。詳しくは、組み込み機能部411は、ハ
ッシュ値41231を公開鍵41221で復号してプロ
グラム本体4121をハッシングしたダイジェストを得
る一方、プログラム本体4121を既知のハッシュ関数
でハッシングしてダイジェストを得、両ダイジェストが
完全に一致するかどうかを検証することで、ハッシュ値
41231がプログラム本体4121および公開鍵41
221と対をなす秘密鍵とによって生成されたものであ
るかどうかを確認する。すなわち、プログラム本体41
21および公開鍵41221が改竄されたものでなく、
プログラム412が真正な出所由来をもつことを確認す
る。なお、この確認処理は、携帯機器41にプログラム
412が導入、たとえばダウンロードされたときに1回
行われればよい。
First, the portable device 41 includes the built-in function unit 4
11, the hash value 41231 becomes the program body 4
It is confirmed whether or not the key is generated by using the secret key paired with the public key 121 and the public key 41221 (step S401). More specifically, the built-in function unit 411 decrypts the hash value 41231 with the public key 41221 to obtain a digest obtained by hashing the program body 4121, while hashing the program body 4121 with a known hash function to obtain a digest. By verifying whether or not they match completely, the hash value 41231 is stored in the program body 4121 and the public key 41
It is determined whether or not the key is generated by the secret key paired with the secret key 221. That is, the program body 41
21 and the public key 41221 are not tampered with,
Verify that the program 412 has a genuine source. Note that this confirmation process may be performed once when the program 412 is introduced into the portable device 41, for example, when the program 412 is downloaded.

【0126】次に、携帯機器41内のプログラム412
を実行するプロセス4120が親機器42と通信をしよ
うとして通信要求を発生させた場合(ステップS40
2)、またはそれ以前に、親機器42は、携帯機器41
に付随する公開鍵4132および秘密鍵4131を用い
た公開鍵方式により携帯機器41の認証を行う(ステッ
プS403)。
Next, the program 412 in the portable device 41
4120 that executes a communication request to communicate with the parent device 42 (step S40).
2) or earlier, the parent device 42 is
Authentication of the portable device 41 is performed by a public key method using a public key 4132 and a secret key 4131 attached to (step S403).

【0127】たとえば、親機器42は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器41に付
随する公開鍵4132と、携帯機器41が保持する携帯
機器41に付随する公開鍵4132とが一致するかどう
かを判定し、一致した場合に携帯機器41を認証する。
For example, the parent device 42 has a public key 4132 attached to the portable device 41 held as a public key indicating a partner with which the parent device 42 can communicate, and a public key 4132 attached to the portable device 41 held by the portable device 41. Is determined, and if they match, the portable device 41 is authenticated.

【0128】また、RSAの公開鍵によるワン・タイム
・パスワード方式を用いた場合、親機器42は携帯機器
41にランダムな文字列を送り(”Challeng
e”)、携帯機器41の組み込み機能部411はその文
字列を携帯機器41に付随する秘密鍵4131で暗号化
して親機器42に送り返し(”Response”)、
親機器42は暗号化した文字列を事前に通信してよい相
手を示す公開鍵として保持する携帯機器41に付随する
公開鍵4132で復号し、復号した文字列と先に送った
ランダムな文字列とが一致すれば、携帯機器41を通信
してよい相手(つまり、通信してよい相手を示す公開鍵
として保持する携帯機器41に付随する公開鍵4132
と対をなす秘密鍵4131を所有するもの)であると認
証する。
When the one-time password method using the RSA public key is used, the parent device 42 sends a random character string to the portable device 41 (“Challenging”).
e ”), the built-in function unit 411 of the portable device 41 encrypts the character string with the secret key 4131 attached to the portable device 41 and sends it back to the parent device 42 (“ Response ”).
The parent device 42 decrypts the encrypted character string with the public key 4132 attached to the portable device 41 that holds the public character as a public key indicating a partner with whom the communication can be performed in advance. If they match, the public key 4132 attached to the portable device 41 that holds the portable device 41 as a partner with which the portable device 41 can communicate (that is, the public key indicating the partner with which the portable device 41 can communicate)
(Which owns the secret key 4131 paired with the private key 4131).

【0129】携帯機器41の認証に成功した場合、親機
器42は、携帯機器41の組み込み機能部411から公
開鍵41221を得、携帯機器41によるハッシュ値確
認結果に基づいてプログラム412が真正な出所由来を
もつものであるかどうかを判定し(ステップS40
4)、そうであれば以降の通信によって発生する処理を
公開鍵41221に対応するユーザ権限でアクセス制御
して実行する(ステップS405)。
If the authentication of the portable device 41 succeeds, the parent device 42 obtains the public key 41221 from the built-in function unit 411 of the portable device 41, and the program 412 determines the authentic source based on the hash value confirmation result by the portable device 41. It is determined whether or not it has the origin (step S40).
4) If this is the case, access control is performed with the user authority corresponding to the public key 41221 to execute processing that occurs in the subsequent communication (step S405).

【0130】一方、携帯機器41の認証に失敗した場合
(ステップS403)、プログラム412が真正な出所
由来をもつものでなかった場合(ステップS404)、
または公開鍵41221に対応するユーザ権限が存在し
ない場合、親機器42は、通信によって発生する処理を
実行しないか、特定の決められたユーザ権限でアクセス
制御して実行する(ステップS406)。
On the other hand, if the authentication of the portable device 41 has failed (step S403), and if the program 412 does not have an authentic origin (step S404),
Alternatively, when the user authority corresponding to the public key 41221 does not exist, the parent device 42 does not execute the process generated by the communication, or executes the access control with the specific determined user authority (step S406).

【0131】第4の実施の形態によれば、プログラム4
12が秘密鍵をもたなくても、親機器42は、親機器4
2と通信をしようとしてきた携帯機器41内のプロセス
4120の元となるプログラム412の認証が可能であ
ることから、盗み見や改竄が可能な環境下にあるプログ
ラム412を元にして動作する携帯機器41と通信を行
う場合に、親機器42がプログラム412の成りすまし
を防止しかつ認証を行うことができる。
According to the fourth embodiment, program 4
Even if 12 does not have a secret key, the parent device 42
Since the program 412 that is the source of the process 4120 in the mobile device 41 that has attempted to communicate with the mobile device 41 can be authenticated, the mobile device 41 that operates based on the program 412 in an environment where it can be intercepted and tampered with is used. When performing communication with the parent device 42, the parent device 42 can prevent spoofing of the program 412 and perform authentication.

【0132】(5) 第5の実施の形態 図9を参照すると、本発明の第5の実施の形態に係るプ
ログラムID通信処理制御方法が適用された情報システ
ムは、実行機能および通信機能を有するプログラム実行
・通信装置が適用された携帯機器51と、通信機能を有
する通信・処理装置が適用された親機器52と、携帯機
器51にインストールされ実行されるプログラム512
とから、その主要部が構成されている。
(5) Fifth Embodiment Referring to FIG. 9, an information system to which a program ID communication processing control method according to a fifth embodiment of the present invention is applied has an execution function and a communication function. A portable device 51 to which a program execution / communication device is applied, a parent device 52 to which a communication / processing device having a communication function is applied, and a program 512 installed and executed in the portable device 51
Thus, the main part is constituted.

【0133】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0134】携帯機器51としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 51, a portable telephone (PH)
S), portable information terminals and the like.

【0135】親機器52としては、POS端末等が想定
される。
As the parent device 52, a POS terminal or the like is assumed.

【0136】携帯機器51と親機器52との間の通信機
能は、エリクソン社等が提唱するBluetooth,
無線LAN,PIAFS等の近距離無線通信技術で実現
されるものとする。
The communication function between the portable device 51 and the parent device 52 is based on Bluetooth, proposed by Ericsson and others.
It is assumed to be realized by short-range wireless communication technology such as wireless LAN and PIAFS.

【0137】携帯機器51は、信頼できる組み込み機能
部511と、プログラム512を実行するプロセス51
20と、携帯機器51に付随する秘密鍵5131および
公開鍵5132とを含んで構成されている。
The portable device 51 includes a reliable embedded function unit 511 and a process 51 for executing the program 512.
20 and a private key 5131 and a public key 5132 attached to the portable device 51.

【0138】プログラム512は、プログラム本体51
21と、プログラム512の出所由来を表す公開鍵群5
1221〜5122nと、プログラム本体5121およ
び公開鍵群51221〜5122nを組み合わせて作成
されたデータをハッシュ関数でハッシングしたダイジェ
ストを各公開鍵51221〜5122nと対をなす各秘
密鍵(図示せず)でそれぞれ暗号化した署名群であるハ
ッシュ値群51231〜5123nとを含んで構成され
ている。なお、プログラム512は、その出所(製造元
等)および由来(バージョン等)において、プログラム
本体5121,公開鍵群51221〜5122n,およ
びハッシュ値群51231〜5123nが一体として作
成されている。
The program 512 is the program body 51
21 and a public key group 5 representing the origin of the program 512
Digests obtained by hashing data created by combining the program keys 1221 to 5122n, the program body 5121, and the public key groups 51221 to 5122n with a hash function are used as secret keys (not shown) paired with the public keys 51221 to 5122n, respectively. It is configured to include hash value groups 51231 to 5123n, which are encrypted signature groups. In the program 512, a program body 5121, a public key group 51221 to 5122n, and a hash value group 51231 to 5123n are integrally created based on the source (manufacturer and the like) and the origin (version and the like).

【0139】親機器52は、通信してよい相手を示す公
開鍵として、携帯機器51に付随する公開鍵5132を
もつ。
[0139] The parent device 52 has a public key 5132 attached to the portable device 51 as a public key indicating a partner with which communication is possible.

【0140】図10を参照すると、携帯機器51の組み
込み機能部511および親機器52の処理は、ハッシュ
値確認ステップS501と、通信要求発生ステップS5
02と、携帯機器認証ステップS503と、プログラム
出所由来判定ステップS504と、通信・処理ステップ
S505と、通信・処理なしステップS506とからな
る。
Referring to FIG. 10, the processes of the built-in function unit 511 of the portable device 51 and the parent device 52 include a hash value confirmation step S501 and a communication request generation step S5.
02, a mobile device authentication step S503, a program source origin determination step S504, a communication / processing step S505, and a no communication / processing step S506.

【0141】次に、このように構成された第5の実施の
形態に係るプログラムID通信処理制御方法が適用され
た情報システムの動作について、図9および図10を参
照して詳細に説明する。
Next, the operation of the information system to which the program ID communication processing control method according to the fifth embodiment configured as described above is applied will be described in detail with reference to FIG. 9 and FIG.

【0142】まず、携帯機器51は、組み込み機能部5
11により、各ハッシュ値51231〜5123nがプ
ログラム本体5121および公開鍵群51221〜51
22nと各公開鍵51221〜5122nと対をなす各
秘密鍵とによって生成されたものであるかどうかを確認
し、確認したハッシュ値に対応する公開鍵の集まりを得
る(ステップS501)。詳しくは、組み込み機能部5
11は、各ハッシュ値51231〜5123nを各公開
鍵51221〜5122nでそれぞれ復号してプログラ
ム本体5121および公開鍵群51221〜5122n
を組み合わせて作成されたデータをハッシングしたダイ
ジェスト群を得る一方、プログラム本体5121および
公開鍵群51221〜5122nを組み合わせて作成さ
れたデータを既知のハッシュ関数でハッシングしてダイ
ジェストを得、該ダイジェストとダイジェスト群の一つ
一つとが完全に一致するかどうかをそれぞれ検証するこ
とで、各ハッシュ値51231〜5123nがプログラ
ム本体5121および公開鍵群51221〜5122n
と各公開鍵51221〜5122nと対をなす各秘密鍵
とによって生成されたものであるかどうかををそれぞれ
確認し、確認したハッシュ値に対応する公開鍵の集まり
を得る。すなわち、プログラム本体5121および公開
鍵群51221〜5122nが、改竄されたものでな
く、プログラム512が真正な出所由来をもつことを確
認する。なお、この確認処理は、携帯機器51にプログ
ラム512が導入、たとえばダウンロードされたときに
1回行われればよい。
First, the portable device 51 includes the embedded function unit 5
11, the hash values 51231 to 5123n are stored in the program body 5121 and the public key groups 51221 to 5112.
It is checked whether the key is generated by the private key paired with the public key 22n and each of the public keys 51221 to 5122n, and a group of public keys corresponding to the checked hash values is obtained (step S501). For details, see embedded function section 5
11 decrypts the hash values 51231 to 5123n with the public keys 51221 to 5122n, respectively, and decodes the program body 5121 and the public key groups 51221 to 5122n.
To obtain a digest group obtained by hashing the data created by combining the data, and hashing the data created by combining the program body 5121 and the public key groups 51221 to 5122n with a known hash function to obtain a digest. By verifying whether or not each of the groups completely matches, each hash value 51231 to 5123n becomes the program body 5121 and the public key group 51221 to 5122n.
And each of the public keys 5122-15122n and each of the secret keys that make a pair with each other, to confirm whether or not each of them has been generated, thereby obtaining a group of public keys corresponding to the confirmed hash values. That is, it is confirmed that the program body 5121 and the public key groups 51221 to 5122n are not falsified and the program 512 has a genuine origin. This confirmation process may be performed once when the program 512 is introduced into the portable device 51, for example, when the program 512 is downloaded.

【0143】次に、携帯機器51内のプログラム512
を実行するプロセス5120が親機器52と通信をしよ
うとして通信要求が発生した場合(ステップS502)、
またはそれ以前に、親機器52は、携帯機器51に付随
する公開鍵5132および秘密鍵5131を用いた公開
鍵方式により携帯機器51の認証を行う(ステップS5
03)。
Next, the program 512 in the portable device 51 will be described.
Is performed by the process 5120 for executing the communication with the parent device 52 (step S502),
Alternatively, before that, the parent device 52 authenticates the portable device 51 by a public key method using the public key 5132 and the private key 5131 attached to the portable device 51 (step S5).
03).

【0144】たとえば、親機器52は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器51に付
随する公開鍵5132と、携帯機器51が保持する携帯
機器51に付随する公開鍵5132とが一致するかどう
かを判定し、一致した場合に携帯機器51の認証を行
う。
For example, the parent device 52 has a public key 5132 attached to the portable device 51 held as a public key indicating a partner with which the parent device 52 can communicate, and a public key 5132 attached to the portable device 51 held by the portable device 51. Is determined, and if they match, authentication of the portable device 51 is performed.

【0145】また、RSAの公開鍵によるワン・タイム
・パスワード方式を用いた場合、親機器52は携帯機器
51にランダムな文字列を送り(”Challeng
e”)、携帯機器51の組み込み機能部511はその文
字列を携帯機器51に付随する秘密鍵5131で暗号化
して親機器52に送り返し(”Response”)、
親機器52は暗号化した文字列を事前に通信してよい相
手を示す公開鍵として保持する携帯機器51に付随する
公開鍵5132で復号し、復号した文字列と先に送った
ランダムな文字列とが一致すれば、携帯機器51を通信
してよい相手(つまり、通信してよい相手を示す公開鍵
として保持する携帯機器51に付随する公開鍵5132
と対をなす秘密鍵5131を所有するもの)であると認
証する。
When the one-time password method using the public key of the RSA is used, the parent device 52 sends a random character string to the portable device 51 (“Challenging”).
e ”), the built-in function unit 511 of the mobile device 51 encrypts the character string with the secret key 5131 attached to the mobile device 51 and sends it back to the parent device 52 (“ Response ”).
The parent device 52 decrypts the encrypted character string with a public key 5132 attached to the portable device 51 that holds the public character in advance as a public key indicating a partner with whom the communication can be performed. If they match, the public key 5132 attached to the portable device 51 that holds the portable device 51 as a partner with which the portable device 51 can communicate (that is, the public key indicating the partner with which the portable device 51 can communicate)
(Which possesses the secret key 5131 paired with the private key 5131).

【0146】携帯機器51の認証に成功した場合、親機
器52は、携帯機器51の組み込み機能部511からハ
ッシュ値確認結果の公開鍵の集まりを得、携帯機器51
によるハッシュ値確認結果の公開鍵の集まりに1つ以上
の公開鍵が含まれていればプログラム512が真正な出
所由来をもつものであると判定し(ステップS50
4)、以降の通信によって発生する処理をハッシュ値確
認結果の公開鍵の集まりの各公開鍵に対応するユーザ権
限の組み合わせでアクセス制御して実行する(ステップ
S505)。
If the authentication of the portable device 51 succeeds, the parent device 52 obtains a set of public keys of the hash value confirmation result from the built-in function unit 511 of the portable device 51, and
If one or more public keys are included in the set of public keys as a result of the hash value confirmation, it is determined that the program 512 has a genuine origin (step S50).
4) Access control is performed on a process generated by the subsequent communication with a combination of user authorities corresponding to the respective public keys in the public key group of the hash value confirmation result (step S505).

【0147】一方、携帯機器51の認証に失敗した場合
(ステップS503)、プログラム512が真正な出所
由来をもつものでない場合(ステップS504)、また
は携帯機器51によるハッシュ値確認結果の公開鍵の集
まり中の公開鍵に対応するユーザ権限が1つも存在しな
い場合、親機器52は、通信によって発生する処理を実
行しないか、特定の制限されたユーザ権限でアクセス制
御して実行する(ステップS506)。
On the other hand, if the authentication of the portable device 51 has failed (step S503), if the program 512 does not have a genuine origin (step S504), or a collection of public keys of the hash value confirmation result by the portable device 51 If there is no user right corresponding to the public key in the parent device 52, the parent device 52 does not execute the process generated by the communication, or executes access control with a specific restricted user right (step S506).

【0148】なお、上記第5の実施の形態では、ステッ
プS504で携帯機器51によるハッシュ値確認結果の
公開鍵の集まりに1つ以上の公開鍵が含まれていればプ
ログラム512が真正な出所由来をもつものであると判
定したが、携帯機器51によるハッシュ値確認結果の公
開鍵の集まりに公開鍵群51221〜5122nのすべ
てが含まれていたときにのみプログラム512が真正な
出所由来をもつものであると判定するようにすることも
できる。
In the fifth embodiment, if at least one public key is included in the set of public keys as a result of the hash value confirmation by the portable device 51 in step S504, the program 512 is derived from the authentic source. But the program 512 has a genuine origin if and only if all of the public key groups 51221 to 5122n are included in the set of public keys as a result of the hash value confirmation by the portable device 51. May be determined.

【0149】第5の実施の形態によれば、プログラム5
12が該プログラム512の出所由来を表す公開鍵群5
1221〜5122nをもつことを許す場合はプログラ
ム本体5121とともに保持する公開鍵群51221〜
5122nに対して署名群であるハッシュ値群5123
1〜5123nを付すことから、プログラム512の成
りすましを防止することができ、通信によって発生する
処理をハッシュ値確認結果の公開鍵の集まりの各公開鍵
に対応するユーザ権限の組み合わせでアクセス制御して
実行することができる。
According to the fifth embodiment, the program 5
12 is a public key group 5 representing the origin of the program 512
If it is permitted to have 1221 to 5122n, the public key group 51221 held together with the program body 5121
A hash value group 5123 which is a signature group for 5122n
By assigning 1 to 5123n, it is possible to prevent the spoofing of the program 512, and to perform access control on the processing generated by the communication using a combination of user authorities corresponding to each public key of the public key group of the hash value confirmation result. Can be performed.

【0150】(6) 第6の実施の形態 図11を参照すると、本発明の第6の実施の形態に係る
プログラムID通信範囲制御方法が適用された情報シス
テムは、プログラムの実行機能および通信機能を有する
携帯機器61と、同じくプログラムの実行機能および通
信機能を有する親機器62と、携帯機器61にインスト
ールされ実行されるプログラム612と、親機器62に
インストールされ実行されるプログラム622とから、
その主要部が構成されている。
(6) Sixth Embodiment Referring to FIG. 11, an information system to which a program ID communication range control method according to a sixth embodiment of the present invention is applied has a program execution function and a communication function. , A parent device 62 also having a program execution function and a communication function, a program 612 installed and executed on the mobile device 61, and a program 622 installed and executed on the parent device 62.
Its main part is configured.

【0151】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0152】携帯機器61としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 61, a portable telephone (PH)
S), portable information terminals and the like.

【0153】親機器62としては、POS端末等が想定
される。
As the parent device 62, a POS terminal or the like is assumed.

【0154】携帯機器61と親機器62との間の通信機
能に使用される通信方式は、エリクソン社等が提唱する
Bluetooth,無線LAN,PIAFS等の近距
離無線通信技術で実現されるものとする。
The communication system used for the communication function between the portable device 61 and the parent device 62 is realized by a short-range wireless communication technology such as Bluetooth, wireless LAN, PIAFS, etc., proposed by Ericsson and others. .

【0155】携帯機器61は、信頼できる組み込み機能
部611と、プログラム612を実行するプロセス61
20とを含んで構成されている。
The portable device 61 includes a reliable embedded function unit 611 and a process 61 for executing the program 612.
20.

【0156】プログラム612は、プログラム本体61
21と、プログラム612の出所由来を表す公開鍵61
22および秘密鍵6124とを含んで構成されている。
なお、プログラム612は、その出所(製造元等)およ
び由来(バージョン等)において、プログラム本体61
21,公開鍵6122および秘密鍵6124が一体とし
て作成されている。
The program 612 is composed of the program 61
21 and a public key 61 representing the origin of the program 612
22 and a secret key 6124.
It should be noted that the program 612 is based on its source (manufacturer, etc.) and origin (version, etc.).
21, a public key 6122 and a secret key 6124 are integrally formed.

【0157】親機器62は、信頼できる組み込み機能部
621と、プログラム622を実行するプロセス622
0とを含んで構成されている。
The parent device 62 includes a reliable embedded function unit 621 and a process 622 for executing the program 622.
0 is included.

【0158】プログラム622は、プログラム本体62
21と、プログラム622の出所由来を表す公開鍵62
22および秘密鍵6224とを含んで構成されている。
なお、プログラム622は、その出所(製造元等)およ
び由来(バージョン等)において、プログラム本体62
21,公開鍵6222および秘密鍵6224が一体とし
て作成されている。
The program 622 is the program main unit 62
21 and a public key 62 representing the origin of the program 622
22 and a secret key 6224.
Note that the program 622 is based on the source (manufacturer, etc.) and origin (version, etc.)
21, a public key 6222 and a secret key 6224 are integrally formed.

【0159】図12を参照すると、携帯機器61の組み
込み機能部611および親機器62の組み込み機能部6
21の処理は、通信要求発生ステップS601と、公開
鍵獲得ステップS602と、相互認証ステップS603
と、公開鍵比較ステップS604と、相互認証・公開鍵
一致判定ステップS605と、通信許可ステップS60
6と、通信不許可ステップS607とからなる。
Referring to FIG. 12, built-in function unit 611 of portable device 61 and built-in function unit 6 of parent device 62 are described.
The processing of No. 21 includes a communication request generation step S601, a public key acquisition step S602, and a mutual authentication step S603.
Public key comparison step S604, mutual authentication / public key match determination step S605, and communication permission step S60.
6 and a communication non-permission step S607.

【0160】次に、このように構成された第6の実施の
形態に係るプログラムID通信範囲制御方法が適用され
た情報システムの動作について、図11および図12を
参照して詳細に説明する。
Next, the operation of the information system to which the program ID communication range control method according to the sixth embodiment configured as described above is applied will be described in detail with reference to FIG. 11 and FIG.

【0161】携帯機器61内のプログラム612を実行
するプロセス6120と親機器62内のプログラム62
2を実行するプロセス6220との間で通信要求が発生
した場合(ステップS601)、まず、携帯機器61の
組み込み機能部611は、親機器62の組み込み機能部
621にプロセス6120の元となるプログラム612
の出所由来を表す公開鍵6122を送り、親機器62の
組み込み機能部621は、携帯機器61の組み込み機能
部611にプロセス6220の元となるプログラム62
2の出所由来を表す公開鍵6222を送り(ステップS
602)、次に、双方で、公開鍵6122と公開鍵62
22とが一致するかどうかを調べる(ステップS60
3)。
The process 6120 for executing the program 612 in the portable device 61 and the program 62 in the parent device 62
In the case where a communication request is generated between the process 6220 and the process 6220 (step S601), the built-in function unit 611 of the portable device 61 first sends the program 612 as a source of the process 6120 to the built-in function unit 621 of the parent device 62.
, The embedded function unit 621 of the parent device 62 sends the public key 6122 representing the origin of the process 6220 to the embedded function unit 611 of the portable device 61.
2 sends the public key 6222 representing the origin of the source (step S
602), and then both public key 6122 and public key 62
22 is checked (step S60).
3).

【0162】次に、携帯機器61の組み込み機能部61
1と親機器62の組み込み機能部621との間で、プロ
グラム612およびプログラム622の相互認証を行う
(ステップS604)。
Next, the built-in function unit 61 of the portable device 61
1 and the embedded function unit 621 of the parent device 62, the mutual authentication of the program 612 and the program 622 is performed (step S604).

【0163】たとえば、RSAの公開鍵によるワン・タ
イム・パスワード方式を用いた場合、携帯機器61の組
み込み機能部611は親機器62の組み込み機能部62
1にランダムな文字列を送り(”Challeng
e”)、親機器62の組み込み機能部621はその文字
列をプログラム622の秘密鍵6224で暗号化して携
帯機器61の組み込み機能部611に送り返し(”Re
sponse”)、携帯機器61の組み込み機能部61
1は、暗号化した文字列を公開鍵6222で復号し、復
号した文字列と先に送ったランダムな文字列とが一致す
れば、プロセス6220の元となるプログラム622が
公開鍵6222をもつ(つまり、プロセス6220の元
となるプログラム622が公開鍵6222と対をなす秘
密鍵6224をもつ)と認証する。
For example, when the one-time password method using the public key of the RSA is used, the built-in function unit 611 of the portable device 61 is replaced with the built-in function unit 62 of the parent device 62.
Send a random string to 1 ("Challeng
e "), the built-in function unit 621 of the parent device 62 encrypts the character string with the secret key 6224 of the program 622 and sends it back to the built-in function unit 611 of the portable device 61 (" Re ").
response ”), the built-in function unit 61 of the portable device 61
1 decrypts the encrypted character string with the public key 6222, and if the decrypted character string matches the previously transmitted random character string, the program 622 that is the source of the process 6220 has the public key 6222 ( That is, the program 622 that is the source of the process 6220 authenticates that the program 622 has the private key 6224 paired with the public key 6222.

【0164】一方、親機器62の組み込み機能部621
は携帯機器61の組み込み機能部611にランダムな文
字列を送り(”Challenge”)、携帯機器61
の組み込み機能部611はその文字列を携帯機器61に
付随する秘密鍵6124で暗号化して親機器62の組み
込み機能部621に送り返し(”Respons
e”)、親機器62の組み込み機能部621は、暗号化
した文字列を公開鍵6122で復号し、復号した文字列
と先に送ったランダムな文字列とが一致すれば、プロセ
ス6120の元となるプログラム612が公開鍵612
2をもつ(つまり、プロセス6120の元となるプログ
ラム612が公開鍵6122と対をなす秘密鍵6124
をもつ)と認証する。
On the other hand, the built-in function unit 621 of the parent device 62
Sends a random character string to the built-in function unit 611 of the portable device 61 (“Challenge”).
Embedded function unit 611 encrypts the character string with the secret key 6124 attached to the portable device 61 and sends it back to the embedded function unit 621 of the parent device 62 (“Respons”).
e ″), the built-in function unit 621 of the parent device 62 decrypts the encrypted character string with the public key 6122, and if the decrypted character string matches the random character string sent earlier, the process 6120 starts. Is the public key 612
2 (ie, the program 612 that is the source of the process 6120 has the private key 6124 paired with the public key 6122).
).

【0165】プログラム611およびプログラム612
の相互認証が成功し、かつ公開鍵6122と公開鍵62
22とが一致した場合(ステップS605)、携帯機器
61の組み込み機能部611および親機器62の組み込
み機能部621は、プロセス61210とプロセス62
210との間で通信を許可する(ステップS606)。
Program 611 and program 612
Are mutually authenticated, and the public key 6122 and the public key 62
22 (step S605), the built-in function unit 611 of the portable device 61 and the built-in function unit 621 of the parent device 62 execute the process 61210 and the process 62.
The communication with the communication terminal 210 is permitted (step S606).

【0166】逆に、プログラム611およびプログラム
612の相互認証に失敗した場合、あるいはプログラム
612の出所由来を表す公開鍵6122とプログラム6
22の出所由来を表す公開鍵6222とが一致しなかっ
た場合、携帯機器61の組み込み機能部611および親
機器62の組み込み機能部621は、プロセス6120
とプロセス6220との間で通信を不許可とする(ステ
ップS607)。
Conversely, if mutual authentication between the program 611 and the program 612 fails, or the public key 6122 indicating the origin of the program 612 and the program 6
If the public key 6222 indicating the origin of the P.22 does not match, the embedded function unit 611 of the portable device 61 and the embedded function unit 621 of the parent device 62 execute the process 6120
The communication between the process and the process 6220 is not permitted (step S607).

【0167】第6の実施の形態によれば、携帯機器61
内のプログラム612および親機器62内のプログラム
622が、一致する公開鍵6122および6222を付
随するプログラム612および622としか通信でき
ず、任意の他のプログラムと通信できないため、携帯機
器61内のプログラム612および親機器62内のプロ
グラム622のもつ情報の、流通する範囲を出所由来を
同じくするプログラムの範囲内に限ることができる。
According to the sixth embodiment, the portable device 61
Program 612 in the parent device 62 and the program 622 in the parent device 62 can only communicate the matching public keys 6122 and 6222 with the accompanying programs 612 and 622, and cannot communicate with any other program. The distribution range of the information of the program 622 in the parent device 612 and the parent device 62 can be limited to the range of the program having the same origin.

【0168】また、携帯機器61内のプログラム612
および親機器62内のプログラム622が、一致する公
開鍵6122および6222を付随するプログラム61
2および622としか通信できず、任意の他のプログラ
ムと通信できないため、携帯機器61内のプログラム6
12および親機器62内のプログラム622のもつ情報
が、たとえプログラム612および622が暴走して
も、出所由来を同じくするプログラムの範囲外に漏洩し
ない。
The program 612 in the portable device 61
And the program 622 in the parent device 62 is associated with the corresponding public key 6122 and 6222.
2 and 622, and cannot communicate with any other program.
12 and the information of the program 622 in the parent device 62 do not leak out of the range of the program having the same origin even if the programs 612 and 622 run away.

【0169】さらに、分散環境における通信範囲の制御
についてのセキュリティ面での設計が容易になり、かつ
自由度が変わらないことである。その理由は、分散環境
におけるもっとも重要な問題の1つである通信時の情報
漏洩について、製造元またはそれに類するものを同じく
するプログラムの間でしか情報を流通させないために、
設計時に情報の流通範囲を設計しなくても、悪意のある
他者への漏洩や、プログラムのバグ,暴走による漏洩が
起こらず、また、逆に1つのサービスにおいては、その
プロジェクトにかかわるもの全体である1つの製造元ま
たはそれに類するものとみなすことで、情報の流通を行
え、またその流通範囲で十分であるからである。
[0169] Furthermore, the design of the control of the communication range in the distributed environment is facilitated in terms of security, and the degree of freedom does not change. The reason is that information leakage during communication, one of the most important problems in a distributed environment, is to distribute information only between manufacturers or similar programs,
Even if the distribution range of information is not designed at the time of design, there is no leakage to malicious parties, leakage of program bugs or runaway, and conversely, for one service, the whole thing related to the project This is because information can be distributed and the distribution range is sufficient if it is regarded as one manufacturer or similar.

【0170】(7) 第7の実施の形態 図13を参照すると、本発明の第7の実施の形態に係る
プログラムID通信範囲制御方法が適用された情報シス
テムは、プログラムの実行機能および通信機能を有する
携帯機器71と、同じくプログラムの実行機能および通
信機能を有する親機器72と、携帯機器71にインスト
ールされ実行されるプログラム712と、親機器72に
インストールされ実行されるプログラム722とから、
その主要部が構成されている。
(7) Seventh Embodiment Referring to FIG. 13, an information system to which a program ID communication range control method according to a seventh embodiment of the present invention is applied has a program execution function and a communication function. A portable device 71 having a function of executing a program and a communication function, a program 712 installed and executed on the portable device 71, and a program 722 installed and executed on the parent device 72.
Its main part is configured.

【0171】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0172】携帯機器71としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 71, a portable telephone (PH)
S), portable information terminals and the like.

【0173】親機器72としては、POS端末等が想定
される。
As the parent device 72, a POS terminal or the like is assumed.

【0174】携帯機器71と親機器72との間の通信機
能に使用される通信方式は、エリクソン社等が提唱する
Bluetooth,無線LAN,PIAFS等の近距
離無線通信技術で実現されるものとする。
The communication method used for the communication function between the portable device 71 and the parent device 72 is realized by a short-range wireless communication technology such as Bluetooth, wireless LAN, PIAFS, etc. proposed by Ericsson and the like. .

【0175】携帯機器71は、信頼できる組み込み機能
部711と、プログラム712を実行するプロセス71
20と、携帯機器71に付随する秘密鍵7131および
公開鍵7132と、親機器72に付随する公開鍵723
2とを含んで構成されている。
The portable device 71 includes a reliable embedded function unit 711 and a process 71 for executing the program 712.
20, a private key 7131 and a public key 7132 associated with the portable device 71, and a public key 723 associated with the parent device 72.
2 is included.

【0176】プログラム712は、プログラム本体71
21と、プログラム712の出所由来を表す公開鍵71
22と、プログラム本体7121をハッシュ関数でハッ
シングしたダイジェストを公開鍵7122と対をなす秘
密鍵(図示せず)で暗号化した署名であるハッシュ値7
123とを含んで構成されている。なお、プログラム7
12は、その出所(製造元等)および由来(バージョン
等)においてプログラム本体7121,公開鍵712
2,およびハッシュ値7123が一体として作成されて
いる。
The program 712 is composed of the program 71
21 and a public key 71 representing the origin of the program 712
22 and a hash value 7 which is a signature obtained by encrypting a digest obtained by hashing the program body 7121 using a hash function with a private key (not shown) paired with the public key 7122.
123. Program 7
Reference numeral 12 denotes a program body 7121 and a public key 712 based on the source (manufacturer and the like) and the origin (version and the like).
2, and the hash value 7123 are integrally created.

【0177】親機器72は、信頼できる組み込み機能部
721と、プログラム722を実行するプロセス722
0と、親機器72に付随する秘密鍵7231および公開
鍵7232と、携帯機器71に付随する公開鍵7132
とを含んで構成されている。
The parent device 72 includes a reliable embedded function unit 721 and a process 722 for executing a program 722.
0, a private key 7231 and a public key 7232 associated with the parent device 72, and a public key 7132 associated with the portable device 71.
It is comprised including.

【0178】プログラム722は、プログラム本体72
21と、プログラム722の出所由来を表す公開鍵72
22と、プログラム本体7221をハッシュ関数でハッ
シングしたダイジェストを公開鍵7222と対をなす秘
密鍵(図示せず)で暗号化した署名であるハッシュ値7
223とを含んで構成されている。なお、プログラム7
22は、その出所(製造元等)および由来(バージョン
等)において、プログラム本体7221,公開鍵722
2,およびハッシュ値7223が一体として作成されて
いる。
The program 722 is composed of the program
21 and a public key 72 representing the origin of the program 722
And a hash value 7 which is a signature obtained by encrypting a digest obtained by hashing the program body 7221 with a hash function using a secret key (not shown) paired with the public key 7222.
223. Program 7
Reference numeral 22 denotes a program main body 7221 and a public key 722 based on its source (manufacturer and the like) and origin (version and the like).
2, and the hash value 7223 are integrally created.

【0179】図14を参照すると、携帯機器71の組み
込み機能部711および親機器72の組み込み機能部7
21の処理は、ハッシュ値確認ステップS701および
S702と、通信要求発生ステップS703と、相互認
証ステップS704と、公開鍵一致判定ステップS70
5と、通信許可ステップS706と、通信不許可ステッ
プS707とからなる。
Referring to FIG. 14, built-in function unit 711 of portable device 71 and built-in function unit 7 of parent device 72
The processing of No. 21 includes hash value confirmation steps S701 and S702, communication request generation step S703, mutual authentication step S704, and public key match determination step S70.
5, a communication permission step S706, and a communication non-permission step S707.

【0180】次に、このように構成された第7の実施の
形態に係るプログラムID通信範囲制御方法が適用され
た情報システムの動作について、図13および図14を
参照して詳細に説明する。
Next, the operation of the information system to which the program ID communication range control method according to the seventh embodiment configured as described above is applied will be described in detail with reference to FIG. 13 and FIG.

【0181】まず、携帯機器71は、組み込み機能部7
11により、ハッシュ値7123がプログラム本体71
21および公開鍵群7122と公開鍵7122と対をな
す秘密鍵とによって生成されたものであるかどうかを確
認する(ステップS701)。詳しくは、組み込み機能
部711は、ハッシュ値7123を公開鍵7122で復
号してプログラム本体7221をハッシングしたダイジ
ェストを得る一方、プログラム本体7121を既知のハ
ッシュ関数でハッシングしてダイジェストを得、両ダイ
ジェストが完全に一致するかどうかを検証することで、
ハッシュ値7123がプログラム本体7121および公
開鍵群7122と公開鍵7122と対をなす秘密鍵とに
よって生成されたものであるかどうかを確認する。すな
わち、プログラム本体7121および公開鍵7122が
改竄されたものでなく、プログラム712が真正な出所
由来をもつことを確認する。なお、この確認処理は、携
帯機器71にプログラム712が導入、たとえばダウン
ロードされたときなどに1回行われればよい。
First, the portable device 71 includes the built-in function unit 7
11, the hash value 7123 is stored in the program
It is checked whether the key is generated by the public key group 7122 and the private key paired with the public key 7122 (step S701). More specifically, the built-in function unit 711 decrypts the hash value 7123 with the public key 7122 to obtain a digest obtained by hashing the program main body 7221, and hashes the program main body 7121 with a known hash function to obtain the digest. By testing for an exact match,
It is confirmed whether the hash value 7123 is generated by the program main body 7121, the public key group 7122, and the private key paired with the public key 7122. That is, it is confirmed that the program body 7121 and the public key 7122 are not falsified and the program 712 has a genuine origin. Note that this confirmation process may be performed once, for example, when the program 712 is introduced into the portable device 71 and downloaded, for example.

【0182】また、親機器72も、組み込み機能部72
1により、ハッシュ値7223がプログラム本体722
1および公開鍵群7222と公開鍵7222と対をなす
秘密鍵とによって生成されたものであるかどうかを確認
する(ステップS702)。詳しくは、組み込み機能部
721は、ハッシュ値7223を公開鍵7222で復号
してプログラム本体7221をハッシングしたダイジェ
ストを得る一方、プログラム本体7221を既知のハッ
シュ関数でハッシングしてダイジェストを得、両ダイジ
ェストが完全に一致するかどうかを検証することで、ハ
ッシュ値7223がプログラム本体7221および公開
鍵群7222と公開鍵7222と対をなす秘密鍵とによ
って生成されたものであることを確認する。すなわち、
プログラム本体7221および公開鍵7222が改竄さ
れたものでなく、プログラム722が真正な出所由来を
もつことを確認する。なお、この確認処理は、親機器7
2にプログラム722が導入、たとえばインストールさ
れたときなどに1回行われればよい。
The parent device 72 also includes the built-in function unit 72.
1, the hash value 7223 is stored in the program body 722.
1 and a public key group 7222, and confirms whether the key is generated by a public key 7222 and a secret key paired with the public key 7222 (step S702). More specifically, the embedded function unit 721 decrypts the hash value 7223 with the public key 7222 to obtain a digest obtained by hashing the program main body 7221, and hashes the program main body 7221 with a known hash function to obtain a digest. By verifying whether or not they match completely, it is confirmed that the hash value 7223 is generated by the program body 7221, the public key group 7222, and the private key paired with the public key 7222. That is,
It is confirmed that the program body 7221 and the public key 7222 are not falsified and the program 722 has a genuine origin. Note that this confirmation processing is performed by the parent device 7.
2 may be performed once, for example, when the program 722 is introduced, for example, installed.

【0183】次に、携帯機器71内のプログラム712
を実行するプロセス7120と親機器72内のプログラ
ム722を実行するプロセス7220とが通信をしよう
として通信要求が発生した場合(ステップS703)、
またはそれ以前に、まず、携帯機器71の組み込み機能
部711と親機器72の組み込み機能部721との間
で、携帯機器71が付随する秘密鍵7131および公開
鍵7132と、親機器72に付随する秘密鍵7231お
よび公開鍵7232とを用いた公開鍵方式により携帯機
器71および親機器72の相互認証を行う(ステップS
704)。
Next, the program 712 in the portable device 71
7120 and a process 7220 that executes the program 722 in the parent device 72 when a communication request is generated to perform communication (step S703).
Or before that, first, between the built-in function unit 711 of the portable device 71 and the built-in function unit 721 of the parent device 72, the private key 7131 and the public key 7132 with which the portable device 71 is attached, and the parent device 72 are attached. Mutual authentication of the portable device 71 and the parent device 72 is performed by the public key method using the secret key 7231 and the public key 7232 (Step S).
704).

【0184】たとえば、親機器72は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器71に付
随する公開鍵7132と、携帯機器71が保持する携帯
機器71に付随する公開鍵71132とが一致するかど
うかを判定し、一致した場合に携帯機器71の認証を行
う。一方、携帯機器71は、自らが通信してよい相手を
示す公開鍵として保持する親機器72に付随する公開鍵
7232と、親機器72が保持する親機器72に付随す
る公開鍵72132とが一致するかどうかを判定し、一
致した場合に親機器72の認証を行う。
For example, the parent device 72 has a public key 7132 attached to the portable device 71 held as a public key indicating a partner with which the parent device 72 can communicate, and a public key 71132 attached to the portable device 71 held by the portable device 71. Is determined, and if they match, authentication of the portable device 71 is performed. On the other hand, the mobile device 71 matches the public key 7232 attached to the parent device 72 held as a public key indicating a partner with which the mobile device 71 can communicate with the public key 72132 attached to the parent device 72 held by the parent device 72. It is determined whether or not the authentication is to be performed, and if they match, authentication of the parent device 72 is performed.

【0185】また、RSAの公開鍵によるワン・タイム
・パスワード方式を用いた場合、携帯機器71の組み込
み機能部711は親機器72にランダムな文字列を送り
(”Challenge”)、親機器72の組み込み機
能部721はその文字列を親機器72に付随する秘密鍵
7231で暗号化して携帯機器71に送り返し(”Re
sponse”)、携帯機器71の組み込み機能部71
1は、暗号化した文字列を親機器72に付随する公開鍵
7232で復号し、復号した文字列と先に送ったランダ
ムな文字列とが一致すれば、親機器72を通信してよい
相手(つまり、親機器72に付随する公開鍵7232と
対をなす秘密鍵7231を所有するもの)であると認証
する。一方、親機器72の組み込み機能部721は携帯
機器71にランダムな文字列を送り(”Challen
ge”)、携帯機器71の組み込み機能部711はその
文字列を携帯機器71に付随する秘密鍵7131で暗号
化して親機器72に送り返し(”Respons
e”)、親機器72の組み込み機能部721は暗号化し
た文字列を携帯機器71に付随する公開鍵7132で復
号し、復号した文字列と先に送ったランダムな文字列と
が一致すれば携帯機器71を通信してよい相手(つま
り、携帯機器71に付随する公開鍵7132と対をなす
秘密鍵7131を所有するもの)であると認証する。
When the one-time password method using the public key of the RSA is used, the built-in function unit 711 of the portable device 71 sends a random character string to the parent device 72 (“Challenge”), and The built-in function unit 721 encrypts the character string with the secret key 7231 attached to the parent device 72 and sends it back to the portable device 71 (“Re
response ”), the embedded function unit 71 of the portable device 71
1 decrypts the encrypted character string with the public key 7232 attached to the parent device 72, and if the decrypted character string matches the random character string sent earlier, the other party can communicate with the parent device 72. (That is, one that possesses a private key 7231 paired with the public key 7232 attached to the parent device 72). On the other hand, the built-in function unit 721 of the parent device 72 sends a random character string to the portable device 71 (“Challen”).
ge ”), the built-in function unit 711 of the portable device 71 encrypts the character string with the secret key 7131 attached to the portable device 71 and sends it back to the parent device 72 (“ Respons ”).
e ″), the built-in function unit 721 of the parent device 72 decrypts the encrypted character string with the public key 7132 attached to the portable device 71, and if the decrypted character string matches the random character string sent earlier. The mobile device 71 is authenticated as a partner with which the mobile device 71 can communicate (that is, a device having a private key 7131 paired with the public key 7132 attached to the mobile device 71).

【0186】相互認証に成功した場合、携帯機器71の
組み込み機能部711および親機器72の組み込み機能
部721は、プログラム712の出所由来を表す公開鍵
7122とプログラム722の出所由来を表す公開鍵7
222とをお互いに相手に伝え、両公開鍵が一致するか
どうかを判定し(ステップS705)、一致した場合に
限り、プロセス71210とプロセス72210との間
で通信を許可する(ステップS706)。
If the mutual authentication is successful, the built-in function unit 711 of the portable device 71 and the built-in function unit 721 of the parent device 72 provide a public key 7122 indicating the origin of the program 712 and a public key 7122 indicating the origin of the program 722.
222 are communicated to each other, and it is determined whether the two public keys match (step S705). Only when they match, the communication between the process 71210 and the process 72210 is permitted (step S706).

【0187】携帯機器71と親機72との相互認証に失
敗した場合(ステップS704)、またはプログラム7
12の出所由来を表す公開鍵7122とプログラム72
2の出所由来を表す公開鍵7222とが一致しなかった
場合(ステップS705)、携帯機器71の組み込み機
能部711および親機器72の組み込み機能部721
は、プロセス7120とプロセス7220との間の通信
を不許可とする(ステップS707)。
If the mutual authentication between the portable device 71 and the master unit 72 has failed (step S704), or the program 7
A public key 7122 and a program 72 representing the origins of the 12 sources
If the public key 7222 indicating the origin of the second device does not match (step S705), the built-in function unit 711 of the portable device 71 and the built-in function unit 721 of the parent device 72
Disables communication between the process 7120 and the process 7220 (step S707).

【0188】第7の実施の形態によれば、携帯機器71
内のプログラム712および親機器72内のプログラム
722が、一致する公開鍵7122および7222を付
随するプログラム712および722としか通信でき
ず、任意の他のプログラムと通信できないため、携帯機
器71内のプログラム712および親機器72内のプロ
グラム722のもつ情報の、流通する範囲を出所由来を
同じくするプログラムの範囲内に限ることができる。
According to the seventh embodiment, the portable device 71
And the program 722 in the parent device 72 can communicate with the corresponding public keys 7122 and 7222 only with the accompanying programs 712 and 722 and cannot communicate with any other program. The distribution range of the information held by the program 722 in the 712 and the parent device 72 can be limited to the range of the program having the same origin.

【0189】また、携帯機器71内のプログラム712
および親機器72内のプログラム722が、一致する公
開鍵7122および7222を付随するプログラム71
2および722としか通信できず、任意の他のプログラ
ムと通信できないため、携帯機器71内のプログラム7
12および親機器72内のプログラム722のもつ情報
が、たとえプログラム712および722が暴走して
も、出所由来を同じくするプログラムの範囲外に漏洩し
ない。
The program 712 in the portable device 71
And the program 722 in the parent device 72 has the corresponding public key 7122 and 7222 associated program 71
2 and 722, and cannot communicate with any other program.
12 and the information of the program 722 in the parent device 72 does not leak out of the range of the program having the same origin even if the programs 712 and 722 run away.

【0190】さらに、分散環境における通信範囲の制御
についてのセキュリティ面での設計が容易になり、かつ
自由度が変わらないことである。その理由は、分散環境
におけるもっとも重要な問題の1つである通信時の情報
漏洩について、製造元またはそれに類するものを同じく
するプログラムの間でしか情報を流通させないために、
設計時に情報の流通範囲を設計しなくても、悪意のある
他者への漏洩や、プログラムのバグ,暴走による漏洩が
起こらず、また、逆に1つのサービスにおいては、その
プロジェクトにかかわるもの全体である1つの製造元ま
たはそれに類するものとみなすことで、情報の流通を行
え、またその流通範囲で十分であるからである。
Furthermore, the design of the control of the communication range in a distributed environment is facilitated in terms of security, and the degree of freedom does not change. The reason is that information leakage during communication, one of the most important problems in a distributed environment, is to distribute information only between manufacturers or similar programs,
Even if the distribution range of information is not designed at the time of design, there is no leakage to malicious parties, leakage of program bugs or runaway, and conversely, for one service, the whole thing related to the project This is because information can be distributed and the distribution range is sufficient if it is regarded as one manufacturer or similar.

【0191】さらに、プログラム712、722が秘密
鍵をもたなくても、携帯機器71および親機72は、相
手内のプロセス7220、7120、の元となるプログ
ラム722、712の認証が可能であることから、盗み
見や改竄が可能な環境下にあるプログラム712、72
2を元にして動作する相手と通信を行う場合に、携帯機
器71、親機器72がプログラム722、712の成り
すましを防止しかつ認証を行うことができる。
Further, even if the programs 712 and 722 do not have a secret key, the portable device 71 and the master unit 72 can authenticate the programs 722 and 712 that are the sources of the processes 7220 and 7120 in the other party. Therefore, the programs 712 and 72 in an environment in which prying eyes and tampering are possible
In the case where communication is performed with the other party operating based on No. 2, the portable device 71 and the parent device 72 can prevent spoofing of the programs 722 and 712 and perform authentication.

【0192】(8) 第8の実施の形態 図15を参照すると、本発明の第8の実施の形態に係る
プログラムID通信範囲制御方法および公開鍵毎通信路
提供方法が適用された情報システムは、第7の実施の形
態に係るプログラムID通信範囲制御方法が適用された
情報システムにおいて、携帯機器81および親機器82
が、さらに、通信装置815および825と、公開鍵毎
にすべてのポート番号を割り振ることの出来る、つまり
同じポート番号で公開鍵値毎に存在し得る仮想ソケット
81511〜8151iおよび82611〜8251j
と、ソケット81521〜8152kおよび82521
〜8252lとを含んで構成されている。なお、第7の
実施の形態に係るプログラムID通信範囲制御方法が適
用された情報システムにおける部分と対応する部分に
は、符号の先頭文字「7」を「8」に変更した符号を付
して、それらの詳しい説明を省略する。
(8) Eighth Embodiment Referring to FIG. 15, an information system to which a program ID communication range control method and a public key-based communication path providing method according to an eighth embodiment of the present invention is applied is described. In an information system to which the program ID communication range control method according to the seventh embodiment is applied, a portable device 81 and a parent device 82 are provided.
And virtual sockets 81511 to 8151i and 82611 to 8251j, which can allocate all port numbers for each public key with the communication devices 815 and 825, that is, can exist for each public key value with the same port number.
And sockets 81521 to 8152k and 82521
To 8252l. Note that parts corresponding to parts in the information system to which the program ID communication range control method according to the seventh embodiment is applied are denoted by reference numerals in which the first character of the code is changed from “7” to “8”. , And detailed description thereof will be omitted.

【0193】仮想ソケット81511〜8151iおよ
び82611〜8251jは、チャネル,パイプ等の他
の通信路を仮想的にしたものでもよく、ソケット815
21〜8152kおよび82521〜8252l、チャ
ネル,パイプ等の他の通信路であってもよい。
Each of the virtual sockets 81511 to 8151i and 82611 to 8251j may be a virtual communication channel or another communication path such as a pipe.
Other communication paths such as 21 to 8152k and 82521 to 8252l, channels, pipes and the like may be used.

【0194】図16を参照すると、携帯機器81の組み
込み機能部811および親機器82の組み込み機能部8
21の処理は、ハッシュ値確認ステップS801および
S802と、通信要求発生ステップS803と、相互認
証ステップS804と、公開鍵一致判定ステップS80
5と、通信許可ステップS806と、通信不許可ステッ
プS807とからなる。
Referring to FIG. 16, built-in function unit 811 of portable device 81 and built-in function unit 8 of parent device 82
The processing of No. 21 includes hash value confirmation steps S801 and S802, communication request generation step S803, mutual authentication step S804, and public key match determination step S80.
5, a communication permission step S806, and a communication non-permission step S807.

【0195】次に、このように構成された第8の実施の
形態に係るプログラムID通信範囲制御方法が適用され
た情報システムの動作について、図15および図16を
参照して詳細に説明する。
Next, the operation of the information system to which the program ID communication range control method according to the eighth embodiment configured as described above is applied will be described in detail with reference to FIGS.

【0196】ステップS801〜ステップS805およ
びステップS807は、第7の実施の形態に係るプログ
ラムID通信範囲制御方法におけるステップS701〜
ステップS705およびステップS707と同じであ
る。
Steps S801 to S805 and S807 are the same as steps S701 to S701 in the program ID communication range control method according to the seventh embodiment.
This is the same as steps S705 and S707.

【0197】第7の実施の形態に係るプログラムID通
信範囲制御方法が適用された情報システムの動作におい
て、プロセス8120とプロセス8220との間で通信
を許可するステップS806において、一致した場合に
限り、通信装置815および825は、それぞれ、公開
鍵8122および8222とプロセス81210および
プロセス82210が要求する仮想ソケットのポート番
号の対に対し、組み込み機能部811と組み込み機能部
821との間で使用しているソケットによる通信路に形
成された仮想通信路の1つを割り当て、該仮想通信路に
よりプロセス81210とプロセス82210との間で
の通信を許可する。
In the operation of the information system to which the program ID communication range control method according to the seventh embodiment is applied, in the step S806 for permitting communication between the process 8120 and the process 8220, only when they match, The communication devices 815 and 825 are used between the embedded function unit 811 and the embedded function unit 821 for the pair of the public key 8122 and 8222 and the port number of the virtual socket requested by the process 81210 and the process 82210, respectively. One of the virtual communication paths formed in the communication path by the socket is allocated, and communication between the process 81210 and the process 82210 is permitted by the virtual communication path.

【0198】(9) 第9の実施の形態 図17を参照すると、本発明の第9の実施の形態に係る
プログラムID通信範囲制御方法が適用された情報シス
テムは、プログラムの実行機能および通信機能を有する
携帯機器91と、同じくプログラムの実行機能および通
信機能を有する親機器92と、携帯機器91にインスト
ールされ実行されるプログラム912と、親機器92に
インストールされ実行されるプログラム922とから、
その主要部が構成されている。
(9) Ninth Embodiment Referring to FIG. 17, an information system to which a program ID communication range control method according to a ninth embodiment of the present invention is applied has a program execution function and a communication function. , A parent device 92 also having a program execution function and a communication function, a program 912 installed and executed on the mobile device 91, and a program 922 installed and executed on the parent device 92.
Its main part is configured.

【0199】実行機能および通信機能は、Javaなど
が想定される。
The execution function and the communication function are assumed to be Java or the like.

【0200】携帯機器91としては、携帯電話機(PH
Sを含む),携帯情報端末等が想定される。
As the portable device 91, a portable telephone (PH)
S), portable information terminals and the like.

【0201】親機器92としては、POS端末等が想定
される。
As the parent device 92, a POS terminal or the like is assumed.

【0202】携帯機器91と親機器92との間の通信機
能に使用される通信方式は、エリクソン社等が提唱する
Bluetooth,無線LAN,PIAFS等の近距
離無線通信技術で実現されるものとする。
The communication system used for the communication function between the portable device 91 and the parent device 92 is realized by a short-range wireless communication technology such as Bluetooth, wireless LAN, and PIAFS proposed by Ericsson and the like. .

【0203】携帯機器91は、信頼できる組み込み機能
部911と、プログラム912を実行するプロセス91
20と、携帯機器91に付随する秘密鍵9131および
公開鍵9132と、親機器92に付随する公開鍵923
2とを含んで構成されている。
The portable device 91 includes a reliable built-in function unit 911 and a process 91 for executing the program 912.
20, a private key 9131 and a public key 9132 associated with the portable device 91, and a public key 923 associated with the parent device 92.
2 is included.

【0204】プログラム912は、プログラム本体91
21と、プログラム912の出所由来を表す公開鍵群9
1221〜9122nと、プログラム本体9121およ
び公開鍵群91221〜9122nを組み合わせて作成
されたデータをハッシュ関数でハッシングしたダイジェ
ストを各公開鍵91221〜9122nと対をなす各秘
密鍵(図示せず)で暗号化した署名群であるハッシュ値
群91231〜9123nとを含んで構成されている。
なお、プログラム912は、その出所(製造元等)およ
び由来(バージョン等)において、プログラム本体91
21,公開鍵群91221〜9122n,およびハッシ
ュ値群91231〜9123nが一体として作成されて
いる。
The program 912 is composed of the program
21 and a public key group 9 representing the origin of the program 912
A digest obtained by hashing data created by combining 1221 to 9122n, the program body 9121, and the public key group 91221 to 9122n with a hash function is encrypted with each private key (not shown) paired with each of the public keys 91221 to 9122n. And a hash value group 91231 to 9123n, which is a group of signatures.
The program 912 is based on the source (manufacturer, etc.) and origin (version, etc.)
21, public key groups 91221 to 9122n and hash value groups 91231 to 9123n are integrally formed.

【0205】親機器92は、信頼できる組み込み機能部
921と、プログラム922を実行するプロセス922
0と、親機器92に付随する秘密鍵9231および公開
鍵9232と、携帯機器91に付随する公開鍵9132
とを含んで構成されている。
The parent device 92 includes a reliable embedded function unit 921 and a process 922 for executing the program 922.
0, a private key 9231 and a public key 9232 associated with the parent device 92, and a public key 9132 associated with the portable device 91.
It is comprised including.

【0206】プログラム922は、プログラム本体92
21と、プログラム922の出所由来を表す公開鍵群9
2221〜9222m(mは2上の正整数。以下同様)
と、プログラム本体9221および公開鍵群92221
〜9222mにより構成されたデータをハッシュ関数で
ハッシングしたダイジェストを各公開鍵92221〜9
222mと対をなす各秘密鍵(図示せず)で暗号化した
署名群であるハッシュ値群92231〜9223mとを
含んで構成されている。なお、プログラム922は、そ
の出所(製造元等)および由来(バージョン等)におい
て、プログラム本体9221,公開鍵群92221〜9
222m,およびハッシュ値群92231〜9223m
が一体として作成されている。
The program 922 is composed of the program
21 and a public key group 9 representing the origin of the program 922
2221 to 9222 m (m is a positive integer on 2; the same applies hereinafter)
And a program body 9221 and a public key group 92221
To the public keys 92221 to 9222m.
It is configured to include hash value groups 92231 to 9223m, which are signature groups encrypted with each secret key (not shown) paired with 222m. Note that the program 922 includes a program body 9221 and public key groups 9221 to 9221 based on its source (manufacturer and the like) and origin (version and the like).
222m, and hash value groups 92231 to 9223m
Is created as one.

【0207】図18を参照すると、携帯機器91の組み
込み機能部911および親機器92の組み込み機能部9
21の処理は、ハッシュ値確認ステップS901および
S902と、通信要求発生ステップS903と、相互認
証ステップS904と、公開鍵一致判定ステップS90
5と、通信許可ステップS906と、通信不許可ステッ
プS907とからなる。
Referring to FIG. 18, built-in function unit 911 of portable device 91 and built-in function unit 9 of parent device 92
The processing of No. 21 includes hash value confirmation steps S901 and S902, communication request generation step S903, mutual authentication step S904, and public key match determination step S90.
5, a communication permission step S906, and a communication non-permission step S907.

【0208】次に、このように構成された第9の実施の
形態に係るプログラムID通信範囲制御方法が適用され
た情報システムの動作について、図17および図18を
参照して詳細に説明する。
Next, the operation of the information system to which the program ID communication range control method according to the ninth embodiment configured as described above is applied will be described in detail with reference to FIG. 17 and FIG.

【0209】まず、携帯機器91は、組み込み機能部9
11により、各ハッシュ値91231〜9123nがプ
ログラム本体9121および公開鍵群91221〜91
22nと各公開鍵91221〜9122nと対をなす各
秘密鍵とによって生成されたものであるかどうかを確認
し、確認したハッシュ値に対応する公開鍵の集まりを得
る(ステップS901)。詳しくは、組み込み機能部9
11は、各ハッシュ値91231〜9123nを各公開
鍵91221〜9122nでそれぞれ復号してプログラ
ム本体9121および公開鍵群91221〜9122n
を組み合わせて作成されたデータをハッシングしたダイ
ジェスト群を得る一方、プログラム本体9121および
公開鍵群91221〜9122nを組み合わせて作成さ
れたデータを既知のハッシュ関数でハッシングしてダイ
ジェストを得、該ダイジェストとダイジェスト群の一つ
一つが完全に一致するかどうかをそれぞれ検証すること
で、各ハッシュ値91231〜9123nがプログラム
本体9121および公開鍵群91221〜9122nと
各公開鍵91221〜9122nと対をなす各秘密鍵と
によって生成されたものであることをそれぞれ確認し、
確認したハッシュ値に対応する公開鍵の集まりを得る。
すなわち、プログラム本体9121および公開鍵群91
221〜9122n中の少なくとも1つ以上の公開鍵が
改竄されたものでなく、真正な出所由来をもつことを確
認する。なお、この確認処理は、携帯機器91にプログ
ラム912が導入、たとえばダウンロードされたときな
どに1回行われればよい。
First, the portable device 91 includes the built-in function unit 9.
11, the hash values 91231 to 9123n are stored in the program body 9121 and the public key groups 91221 to 9112, respectively.
It is checked whether the key is generated by the public key 22n and each private key paired with each of the public keys 91221 to 9122n, and a group of public keys corresponding to the checked hash values is obtained (step S901). For details, see embedded function section 9
Numeral 11 deciphers the hash values 91231 to 9123n with the public keys 91221 to 9122n, respectively, and executes the program body 9121 and the public key groups 91221 to 9122n.
To obtain a digest group obtained by hashing data created by combining the program main body 9121 and the public key group 91221 to 9122n with a known hash function to obtain a digest. By verifying whether or not each of the groups completely matches, each hash value 91231 to 9123n becomes a private key paired with the program body 9121, the public key group 91221 to 9122n, and each public key 91221 to 9122n. And that each was generated by
A set of public keys corresponding to the confirmed hash value is obtained.
That is, the program body 9121 and the public key group 91
It is confirmed that at least one or more public keys in 221 to 9122n are not falsified and have a genuine origin. This confirmation process may be performed once when the program 912 is introduced into the portable device 91, for example, when the program 912 is downloaded.

【0210】また、携帯機器92でも、組み込み機能部
921が、各ハッシュ値92231〜9223nがプロ
グラム本体9221および公開鍵群92221〜922
2nと各公開鍵92221〜9222nと対をなす各秘
密鍵(図示せず)とによって生成されたものであるかど
うかを確認し、確認したハッシュ値に対応する公開鍵の
集まりを得る(ステップS902)。詳しくは、組み込
み機能部921は、各ハッシュ値92231〜9223
mを公開鍵92221〜9222mでそれぞれ復号して
プログラム本体9221および公開鍵群92221〜9
222mを組み合わせて作成されたデータをハッシング
した各ダイジェストを得る一方、プログラム本体922
1および公開鍵群92221〜9222mを組み合わせ
て作成されたデータを既知のハッシュ関数でハッシング
したダイジェストを得、両各ダイジェストが完全に一致
するかどうかをそれぞれ検証することで、各ハッシュ値
92231〜9223nがプログラム本体9221およ
び公開鍵群92221〜9222nと各公開鍵9222
1〜9222nと対をなす各秘密鍵(図示せず)とによ
って生成されたものであることをそれぞれ確認し、確認
したハッシュ値に対応する公開鍵の集まりを得る。すな
わち、プログラム本体9221および公開鍵群9222
1〜9222m中の少なくとも1つ以上の公開鍵が改竄
されたものでなく、真正な出所由来をもつことを確認す
る。なお、この確認処理は、親機器92にプログラム9
22が導入、たとえばインストールされたときなどに1
回行われればよい。
Also in the portable device 92, the built-in function unit 921 determines that the hash values 92231 to 9223n correspond to the program body 9221 and the public key groups 9221 to 922.
2n and each private key 92221 to 9222n to confirm whether each key is generated by each private key (not shown), and obtain a set of public keys corresponding to the confirmed hash values (step S902). ). Specifically, the built-in function unit 921 calculates the hash values 92231 to 9223
m are decrypted by public keys 92221 to 9222m, respectively, and the program body 9221 and public key groups 92221 to 9221-9 are decrypted.
Each of the digests obtained by hashing the data created by combining 222 m is obtained, while the program body 922 is obtained.
1 and public key groups 92221 to 9222m are combined to obtain a digest obtained by hashing with a known hash function, and verify whether or not both digests are completely the same, thereby obtaining each hash value 92231 to 9223n. Is the program body 9221, public key groups 9221 to 9222n, and each public key 9222
It is confirmed that each key is generated by a secret key (not shown) forming a pair with 1 to 9222n, and a group of public keys corresponding to the confirmed hash values is obtained. That is, the program body 9221 and the public key group 9222
It is confirmed that at least one or more public keys in 1 to 9222 m are not falsified and have a genuine origin. Note that this confirmation processing is performed by the parent
22 is installed, for example 1 when installed
It may be performed twice.

【0211】次に、携帯機器91内のプログラム912
を実行するプロセス9120と親機器92内のプログラ
ム922を実行するプロセス9220とが通信をしよう
として通信要求が発生した場合(ステップS903)、
またはそれ以前に、まず、携帯機器91の組み込み機能
部911と親機器92の組み込み機能部921との間
で、携帯機器91に付随する秘密鍵9131および公開
鍵9132と、親機器92に付随する秘密鍵9231お
よび公開鍵9232とを用いた公開鍵方式により相互認
証を行う(ステップS904)。
Next, the program 912 in the portable device 91 will be described.
9120 and a process 9220 that executes the program 922 in the parent device 92 when a communication request is generated to perform communication (step S903).
Or before that, first, between the built-in function unit 911 of the portable device 91 and the built-in function unit 921 of the parent device 92, the secret key 9131 and the public key 9132 attached to the portable device 91 and the parent device 92 are attached. Mutual authentication is performed by a public key method using the secret key 9231 and the public key 9232 (step S904).

【0212】たとえば、親機器92は、自らが通信して
よい相手を示す公開鍵として保持する携帯機器91に付
随する公開鍵9132と、携帯機器91が保持する携帯
機器91に付随する公開鍵91132とが一致するかど
うかを判定し、一致した場合に携帯機器91の認証を行
う。一方、携帯機器91は、自らが通信してよい相手を
示す公開鍵として保持する親機器92に付随する公開鍵
9232と、親機器92が保持する親機器92に付随す
る公開鍵92132とが一致するかどうかを判定し、一
致した場合に親機器92の認証を行う。
For example, the parent device 92 has a public key 9132 attached to the portable device 91 held as a public key indicating a partner with which the parent device 92 can communicate, and a public key 91132 attached to the portable device 91 held by the portable device 91. Is determined, and if they match, authentication of the portable device 91 is performed. On the other hand, the portable device 91 has a public key 9232 attached to the parent device 92 held as a public key indicating a partner with which the mobile device 91 can communicate, and a public key 92132 attached to the parent device 92 held by the parent device 92 matches. It is determined whether or not the authentication is to be performed, and if they match, authentication of the parent device 92 is performed.

【0213】また、RSAの公開鍵によるワン・タイム
・パスワード方式を用いた場合、携帯機器91の組み込
み機能部911は親機器92にランダムな文字列を送り
(”Challenge”)、親機器92の組み込み機
能部921はその文字列を親機器92に付随する秘密鍵
9231で暗号化して携帯機器91に送り返し(”Re
sponse”)、携帯機器91の組み込み機能部91
1は、暗号化した文字列を親機器92に付随する公開鍵
9232で復号し、復号した文字列と先に送ったランダ
ムな文字列とが一致すれば、親機器92を通信してよい
相手(つまり、親機器92に付随する公開鍵9232と
対をなす秘密鍵9231を所有するもの)であると認証
する。一方、親機器92の組み込み機能部921は携帯
機器91にランダムな文字列を送り(”Challen
ge”)、携帯機器91の組み込み機能部911はその
文字列を携帯機器91に付随する秘密鍵9131で暗号
化して親機器92に送り返し(”Respons
e”)、親機器92の組み込み機能部921は暗号化し
た文字列を携帯機器91に付随する公開鍵9132で復
号し、復号した文字列と先に送ったランダムな文字列と
が一致すれば、携帯機器91を通信してよい相手(つま
り、携帯機器91に付随する公開鍵9132と対をなす
秘密鍵9131を所有するもの)であると認証する。
When the one-time password method using the public key of the RSA is used, the built-in function unit 911 of the portable device 91 sends a random character string to the parent device 92 (“Challenge”). The built-in function unit 921 encrypts the character string with the secret key 9231 attached to the parent device 92 and sends it back to the portable device 91 (“Re
response ”), embedded function unit 91 of portable device 91
1 indicates that the encrypted character string is decrypted using the public key 9232 attached to the parent device 92, and if the decrypted character string matches the previously transmitted random character string, the parent device 92 may communicate with the other party. (That is, the private key 9231 paired with the public key 9232 attached to the parent device 92). On the other hand, the built-in function unit 921 of the parent device 92 sends a random character string to the portable device 91 (“Challen”).
ge ”), the built-in function unit 911 of the portable device 91 encrypts the character string with the secret key 9131 attached to the portable device 91 and sends it back to the parent device 92 (“ Respons ”).
e ”), the built-in function unit 921 of the parent device 92 decrypts the encrypted character string with the public key 9132 attached to the portable device 91, and if the decrypted character string matches the random character string sent earlier. The mobile device 91 is authenticated as a partner that can communicate with the mobile device 91 (that is, a device that has a private key 9131 paired with a public key 9132 attached to the mobile device 91).

【0214】相互認証に成功した場合、携帯機器91の
組み込み機能部911および親機器92の組み込み機能
部921は、ハッシュ値確認結果の公開鍵の集まりをお
互いに相手に伝え、一致する公開鍵があるかどうかを判
定し(ステップS905)、一致する公開鍵が1つ以上
ある場合に限り、プロセス91210とプロセス922
10との間で通信を許可する(ステップS906)。
If the mutual authentication is successful, the built-in function unit 911 of the portable device 91 and the built-in function unit 921 of the parent device 92 inform each other of the set of hash value confirmation result public keys, and if the matching public key is It is determined whether there is any one (step S905). Only when there is at least one matching public key, the process 91210 and the process 922 are performed.
The communication is permitted with the server 10 (step S906).

【0215】ステップS904で携帯機器91または親
機92の相互認証に失敗した場合、またはステップS9
05で一致する公開鍵が1つもなかった場合、携帯機器
91の組み込み機能部911および親機器92の組み込
み機能部921は、プロセス9120とプロセス922
0との間の通信を不許可とする(ステップS907)。
[0215] If the mutual authentication of the portable device 91 or the master unit 92 has failed in step S904, or in step S9
If there is no matching public key in 05, the built-in function unit 911 of the portable device 91 and the built-in function unit 921 of the parent device 92 execute the process 9120 and the process 922.
The communication with 0 is not permitted (step S907).

【0216】なお、上記第9の実施の形態では、ステッ
プS905で携帯機器91によるハッシュ値確認結果の
公開鍵の集まりと親機器92によるハッシュ値確認結果
の公開鍵の集まりとに一致する公開鍵が1つ以上含まれ
ていればプログラム912および922が真正な出所由
来をもつものであると判定したが、携帯機器91による
ハッシュ値確認結果の公開鍵の集まりと親機器92によ
るハッシュ値確認結果の公開鍵の集まりとの公開鍵がす
べて一致したときにのみ、プロセス91210とプロセ
ス92210との間で通信を許可するようにすることも
できる。
In the ninth embodiment, in step S 905, the public key that matches the set of public keys of the hash value check result by the portable device 91 and the set of public keys of the hash value check result by the parent device 92 are matched. If one or more are included, it is determined that the programs 912 and 922 have authentic origins. However, the collection of the public keys of the hash value confirmation result by the portable device 91 and the hash value confirmation result by the parent device 92 The communication between the process 91210 and the process 92210 may be permitted only when all public keys of the public key group of the public key match the public key of the public key.

【0217】第9の実施の形態によれば、プログラム9
12および922が該プログラム912および922の
出所由来を表す公開鍵群91221〜9122nおよび
92221〜9222nをもつことを許す場合はプログ
ラム本体9121および9221とともに保持する公開
鍵群91221〜9122nおよび92221〜922
2nに対して署名群であるハッシュ値群91231〜9
123nおよび92231〜9223nを付すことか
ら、プログラム512および522の成りすましを防止
することができる。
According to the ninth embodiment, the program 9
12 and 922 are allowed to have public key groups 91221 to 9122n and 92221 to 9222n representing the origins of the programs 912 and 922, respectively, and public key groups 91221 to 9122n and 92221 to 922 held together with the program bodies 9121 and 9221.
Hash value group 91231-9 which is a signature group for 2n
Since 123n and 92231 to 9223n are added, it is possible to prevent spoofing of the programs 512 and 522.

【0218】[0218]

【発明の効果】第1の効果は、外部装置が、盗み見や改
竄が可能な環境下にあるプログラムを元にし動作する装
置と通信を行う場合に、成りすましを防止しかつ通信相
手のプログラムの認証を行うことができることである。
その理由は、プログラムが秘密鍵をもたないで認証が可
能だからである。
The first effect is that when an external device communicates with a device that operates based on a program in an environment where it can be seen and tampered with, it prevents spoofing and authenticates the program of the communication partner. That you can do.
The reason is that the program can be authenticated without a secret key.

【0219】第2の効果は、プログラムが成りすましを
防止しかつ複数の出所由来を表す公開鍵をもつことを許
すことができることである。その理由は、複数の出所由
来を表す公開鍵をもつことを許す場合は、プログラム本
体とともに保持する公開鍵群に対し署名するからであ
る。
The second effect is that it is possible to prevent a program from impersonating and allow a program to have a public key indicating a plurality of sources. The reason is that if it is allowed to have a plurality of public keys representing the origins, the public key group held together with the program body is signed.

【0220】第3の効果は、悪意のプログラムに対しセ
キュリティを保てることである。その理由は、プログラ
ムの出所由来を表すID、つまりプログラムの製造元や
バージョンに類する情報を元にしたアクセス制御により
通信を行うからである。
The third effect is to maintain security against malicious programs. The reason is that communication is performed by access control based on an ID indicating the origin of the program, that is, information similar to the manufacturer and version of the program.

【0221】第4の効果は、ユーザ管理のような集中管
理システムを必要としない分散環境下での通信による処
理についてのセキュリティを保てることである。その理
由は、プログラムの出所由来を表すID、つまりプログ
ラムの製造元やバージョンに類する情報を元にしたアク
セス制御により通信を行うため、悪意のプログラムに対
しセキュリティを保てるからである。
A fourth effect is that security for processing by communication in a distributed environment that does not require a centralized management system such as user management can be maintained. The reason is that communication is performed by access control based on an ID indicating the origin of the program, that is, information similar to the manufacturer and version of the program, so that security against malicious programs can be maintained.

【0222】第5の効果は、プログラム実行・通信装置
内のプログラムのもつ情報の、流通する範囲が出所由来
を同じくするプログラムの範囲内に限られることであ
る。その理由は、プログラム実行・通信装置内のプログ
ラムが、一致する出所由来を表すIDを有するプログラ
ムとしか通信できず、任意の他のプログラムと通信でき
ないためである。
A fifth effect is that the distribution range of the information of the program in the program execution / communication device is limited to the range of the program having the same origin. The reason is that the program in the program execution / communication device can communicate only with the program having the ID indicating the matching origin, and cannot communicate with any other program.

【0223】第6の効果は、プログラム実行・通信装置
内のプログラムのもつ情報が、たとえプログラムが暴走
しても、出所由来を同じくするプログラムの範囲外に漏
洩しないことである。その理由は、プログラム実行・通
信装置内のプログラムが、一致する出所由来を表すID
を有するプログラムとしか通信できず、任意の他のプロ
グラムと通信できないためである。
The sixth effect is that even if the program runs away, the information of the program in the program execution / communication device does not leak out of the range of the program having the same origin. The reason is that the program in the program execution / communication device has an ID indicating the origin
This is because it can communicate only with the program having the above, and cannot communicate with any other program.

【0224】第7の効果は、プログラム実行・通信装置
内のプログラムのもつ情報の、流通する範囲が、出所由
来を同じくするプログラムの範囲内に限られることであ
る。その理由は、プログラム実行・通信装置内のプログ
ラムが、一致する出所由来を表すIDを公開鍵とするこ
とにより、同じ秘密鍵を保持するものにより提供された
プログラムの間でしか、通信ができないからである。
A seventh effect is that the distribution range of the information of the program in the program execution / communication device is limited to the range of the program having the same origin. The reason is that the program in the program execution / communication device can communicate only between the programs provided by those holding the same secret key by using the public ID as the ID indicating the origin of the coincidence. It is.

【0225】第8の効果は、分散環境における通信範囲
の制御についてのセキュリティ面での設計が容易にな
り、かつ自由度が変わらないことである。その理由は、
分散環境におけるもっとも重要な問題の1つである通信
時の情報漏洩について、出所由来を同じくするプログラ
ムの間でしか情報を流通させないために、設計時に情報
の流通範囲を設計しなくても、悪意のある他者への漏洩
や、プログラムのバグ、暴走による漏洩が起こらず、ま
た、逆に1つのサービスにおいては、そのプロジェクト
にかかわるもの全体である1つの製造元またはそれに類
するものとみなすことで、情報の流通を行え、またその
流通範囲で十分であるからである。
The eighth effect is that the design of the control of the communication range in the distributed environment is easy in security and the degree of freedom does not change. The reason is,
Regarding information leakage at the time of communication, which is one of the most important problems in a distributed environment, since information is distributed only between programs having the same origin, even if the distribution range of information is not designed at design time, malicious By leaking to others with bugs, program bugs, and runaways, and conversely, in one service, assuming that it is a single manufacturer or similar that is related to the project in its entirety, This is because information can be distributed and the distribution range is sufficient.

【0226】第9の効果は、悪意のプログラムに対しセ
キュリティを保てることである。その理由は、プログラ
ムの出所由来を表すID、つまりプログラムの製造元や
バージョンに類する情報を元に通信可否を行うからであ
る。
A ninth effect is to maintain security against malicious programs. The reason is that the communication is performed based on the ID indicating the origin of the program, that is, information similar to the manufacturer and version of the program.

【0227】第10の効果は、ユーザ管理のような集中
管理システムを必要としない分散環境下での通信による
処理についてのセキュリティを保てることである。その
理由は、プログラムの出所由来を表すID、つまりプロ
グラムの製造元やバージョンに類する情報を元に通信可
否を行うため、悪意のプログラムに対しセキュリティを
保てるからである。
The tenth effect is that security for processing by communication in a distributed environment that does not require a centralized management system such as user management can be maintained. The reason is that communication is performed based on an ID indicating the origin of the program, that is, information similar to the manufacturer and version of the program, so that security against malicious programs can be maintained.

【0228】第11の効果は、公開鍵別の通信を行う場
合に、通信路に関するシステム設計が容易であることで
ある。その理由は、どの通信路がどの公開鍵用で占有さ
れるかが予め限定されているからである。
The eleventh effect is that when communication is performed for each public key, system design relating to a communication path is easy. The reason is that which communication channel is occupied by which public key is previously defined.

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

【図1】本発明の第1の実施の形態に係る秘密鍵なしプ
ログラム認証方法が適用された情報システムの構成を示
すブロック図である。
FIG. 1 is a block diagram showing a configuration of an information system to which a program authentication method without a secret key according to a first embodiment of the present invention is applied.

【図2】第1の実施の形態に係る秘密鍵なしプログラム
認証方法が適用された情報システムの処理を示す流れ図
である。
FIG. 2 is a flowchart showing processing of the information system to which the program authentication method without a secret key according to the first embodiment is applied.

【図3】本発明の第2の実施の形態に係る秘密鍵なしプ
ログラム認証方法が適用された情報システムの構成を示
すブロック図である。
FIG. 3 is a block diagram showing a configuration of an information system to which a program authentication method without a secret key according to a second embodiment of the present invention is applied.

【図4】第2の実施の形態に係る秘密鍵なしプログラム
認証方法が適用された情報システムの処理を示す流れ図
である。
FIG. 4 is a flowchart showing processing of an information system to which a program authentication method without a secret key according to a second embodiment is applied.

【図5】本発明の第3の実施の形態に係るプログラムI
D通信処理制御方法が適用された情報システムの構成を
示すブロック図である。
FIG. 5 is a program I according to a third embodiment of the present invention.
1 is a block diagram illustrating a configuration of an information system to which a D communication processing control method is applied.

【図6】第3の実施の形態に係るプログラムID通信処
理制御方法が適用された情報システムの処理を示す流れ
図である。
FIG. 6 is a flowchart showing processing of an information system to which a program ID communication processing control method according to a third embodiment is applied.

【図7】本発明の第4の実施の形態に係るプログラムI
D通信処理制御方法が適用された情報システムの構成を
示すブロック図である。
FIG. 7 shows a program I according to a fourth embodiment of the present invention.
1 is a block diagram illustrating a configuration of an information system to which a D communication processing control method is applied.

【図8】第4の実施の形態に係るプログラムID通信処
理制御方法が適用された情報システムの処理を示す流れ
図である。
FIG. 8 is a flowchart showing processing of an information system to which a program ID communication processing control method according to a fourth embodiment is applied.

【図9】本発明の第5の実施の形態に係るプログラムI
D通信処理制御方法が適用された情報システムの構成を
示すブロック図である。
FIG. 9 shows a program I according to a fifth embodiment of the present invention.
1 is a block diagram illustrating a configuration of an information system to which a D communication processing control method is applied.

【図10】第5の実施の形態に係るプログラムID通信
処理制御方法が適用された情報システムの処理を示す流
れ図である。
FIG. 10 is a flowchart showing processing of an information system to which a program ID communication processing control method according to a fifth embodiment is applied.

【図11】本発明の第6の実施の形態に係るプログラム
ID通信範囲制御方法が適用された情報システムの構成
を示すブロック図である。
FIG. 11 is a block diagram showing a configuration of an information system to which a program ID communication range control method according to a sixth embodiment of the present invention is applied.

【図12】第6の実施の形態に係るプログラムID通信
範囲制御方法が適用された情報システムの処理を示す流
れ図である。
FIG. 12 is a flowchart showing processing of an information system to which a program ID communication range control method according to a sixth embodiment is applied.

【図13】本発明の第7の実施の形態に係るプログラム
ID通信範囲制御方法が適用された情報システムの構成
を示すブロック図である。
FIG. 13 is a block diagram showing a configuration of an information system to which a program ID communication range control method according to a seventh embodiment of the present invention is applied.

【図14】第7の実施の形態に係るプログラムID通信
範囲制御方法が適用された情報システムの処理を示す流
れ図である。
FIG. 14 is a flowchart showing processing of an information system to which a program ID communication range control method according to a seventh embodiment is applied.

【図15】本発明の第8の実施の形態に係るプログラム
ID通信範囲制御方法が適用された情報システムの構成
を示すブロック図である。
FIG. 15 is a block diagram showing a configuration of an information system to which a program ID communication range control method according to an eighth embodiment of the present invention is applied.

【図16】第8の実施の形態に係るプログラムID通信
範囲制御方法が適用された情報システムの処理を示す流
れ図である。
FIG. 16 is a flowchart showing processing of an information system to which a program ID communication range control method according to an eighth embodiment is applied.

【図17】本発明の第9の実施の形態に係るプログラム
ID通信範囲制御方法が適用された情報システムの構成
を示すブロック図である。
FIG. 17 is a block diagram showing a configuration of an information system to which a program ID communication range control method according to a ninth embodiment of the present invention is applied.

【図18】第9の実施の形態に係るプログラムID通信
範囲制御方法が適用された情報システムの処理を示す流
れ図である。
FIG. 18 is a flowchart showing processing of an information system to which a program ID communication range control method according to a ninth embodiment is applied.

【図19】従来の情報システムの構成の一例を説明する
ブロック図である。
FIG. 19 is a block diagram illustrating an example of a configuration of a conventional information system.

【図20】従来の情報システムの構成の他の例を説明す
るブロック図である。
FIG. 20 is a block diagram illustrating another example of the configuration of a conventional information system.

【図21】従来の情報システムの構成の別の例を説明す
るブロック図である。
FIG. 21 is a block diagram illustrating another example of the configuration of a conventional information system.

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

11,…,91 携帯機器 12,…,92 親機器 111,…,911 組み込み機能部 112,…,912 プログラム 1120,…,9120 プロセス 1121,…,9121 プログラム本体 11221〜1122n,…,91221〜9122n
公開鍵 11231〜1123n,…,91231〜9123n
ハッシュ値 11241〜1124n,…,91241〜9124n
秘密鍵 1131,…,9131 秘密鍵 1132,…,9132 公開鍵 81511〜8151i,82511〜8251j 仮
想ソケット 81521〜8152k,82521〜8252l ソ
ケット S101,S201,S401,S501,S701,
S702,S801,S802,S901,S902
ハッシュ値確認ステップ S102,S202,S301,S402,S502,
S601,S703,S803,S903 通信要求発
生ステップ S103,S203,S403,S503 携帯機器認
証ステップ S104,S204,S404,S504 プログラム
出所由来判定ステップ S105,S205,S303 プログラム認証ステッ
プ S106,S206 プログラム不認証ステップ S302,S602 公開鍵獲得ステップ S304,S405,S505 通信・処理ステップ S305,S406,S506 通信・処理なしステッ
プ S603,S704 相互認証ステップ S604 公開鍵比較ステップ S605 相互認証・公開鍵一致判定ステップ S606,S706,S806,S906 通信許可ス
テップ S607,S707,S807,S907 通信不許可
ステップ S705,S805,S905 公開鍵一致判定ステッ
プ S804,S904 相互認証ステップ
, 91 Portable device 12, ..., 92 Parent device 111, ..., 911 Built-in function unit 112, ..., 912 Program 1120, ..., 9120 Process 1121, ..., 9121 Program body 11221 to 1122n, ..., 91221 to 9122n
Public keys 11231 to 1123n, ..., 91231 to 9123n
Hash values 11241 to 1124n, ..., 91241 to 9124n
, 9131 Private keys 1131 to 8151i, 82511 to 8251j Virtual sockets 81521 to 8152k, 82521 to 8252l Sockets S101, S201, S401, S501, S701,
S702, S801, S802, S901, S902
Hash value confirmation step S102, S202, S301, S402, S502,
S601, S703, S803, S903 Communication request generation step S103, S203, S403, S503 Mobile device authentication step S104, S204, S404, S504 Program origin origin determination step S105, S205, S303 Program authentication step S106, S206 Program non-authentication step S302 , S602 Public key acquisition step S304, S405, S505 Communication / processing step S305, S406, S506 No communication / processing step S603, S704 Mutual authentication step S604 Public key comparison step S605 Mutual authentication / public key match determination step S606, S706, S806 , S906 Communication permission step S607, S707, S807, S907 Communication non-permission step S705, S805, S905 The key match judgment step S804, S904 mutual authentication step

Claims (35)

【特許請求の範囲】[Claims] 【請求項1】 プログラムと、該プログラムを元にプロ
セスを生成し実行するプログラム実行・通信装置と、該
プログラム実行・通信装置と通信を行う通信・処理装置
とにより構成される情報システムにおいて、前記プログ
ラム実行・通信装置が、該プログラム実行・通信装置に
付随する公開鍵および秘密鍵と、前記プログラムを元に
生成および実行されるプロセスとを含み、前記プログラ
ムが、プログラム本体と、該プログラムの出所由来を表
す公開鍵と、前記プログラム本体に対し該公開鍵と対を
なす秘密鍵により行った署名とを含み、前記プログラム
実行・通信装置が、前記署名が前記プログラム本体と前
記プログラムの出所由来を表す公開鍵と対をなす秘密鍵
とによって生成されたものであるかどうかを確認する工
程と、前記プログラム実行・通信装置が前記プログラム
を元に生成されたプロセスの処理により前記通信・処理
装置と通信を行う以前に、前記通信・処理装置が、前記
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により前記プログラム実行・通信
装置の認証を行う工程と、前記署名が前記プログラム本
体と前記プログラムの出所由来を表す公開鍵と対をなす
秘密鍵とによって生成されたものであることが確認でき
た場合に、前記プログラム実行・通信装置が前記プログ
ラムを元に生成されたプロセスの処理により前記通信・
処理装置と通信を行う以前に、前記通信・処理装置が前
記プログラムの出所由来を表す公開鍵を得る工程と、前
記プログラム実行・通信装置の認証に成功し、かつ前記
プログラムの出所由来を表す公開鍵を得られた場合に、
前記通信・処理装置が該公開鍵を前記プログラムの出所
由来を表すと認証する工程とを含むことを特徴とする秘
密鍵なしプログラム認証方法。
1. An information system comprising: a program; a program execution / communication device for generating and executing a process based on the program; and a communication / processing device for communicating with the program execution / communication device. A program execution / communication device includes a public key and a secret key attached to the program execution / communication device, and a process generated and executed based on the program, wherein the program includes a program main body and a source of the program. Including a public key representing the origin and a signature performed on the program body with a private key paired with the public key, wherein the program execution / communication device determines that the signature is derived from the source of the program body and the program. Verifying that the key is generated by a public key to be represented and a secret key forming a pair with the private key. Before the communication / processing device communicates with the communication / processing device by the processing of the process generated based on the program, the communication / processing device determines whether the public key and the secret key associated with the program execution / communication device A step of performing authentication of the program execution / communication device by a public key method using a key, and the signature generated by the program body and a secret key paired with a public key indicating the origin of the program. If it is confirmed that there is, the program execution / communication device performs the communication / communication by processing a process generated based on the program.
Before communicating with a processing device, the communication / processing device obtains a public key indicating the origin of the program; and a public key indicating that the program execution / communication device has been successfully authenticated and the origin of the program has been identified. If you get the key,
Certifying that the communication / processing device indicates the origin of the program as the origin of the program.
【請求項2】 前記プログラム実行・通信装置が、前記
署名が前記プログラム本体と前記プログラムの出所由来
を表す公開鍵と対をなす秘密鍵とによって生成されたも
のであるかどうかを確認する工程において、前記署名が
前記プログラム本体をハッシュ関数でハッシングしたダ
イジェストを前記プログラムの出所由来を表す公開鍵と
対をなす秘密鍵で暗号化した署名値からなり、前記プロ
グラム実行・通信装置が、前記署名値を前記プログラム
の出所由来を表す公開鍵で復号してダイジェストを得る
とともに前記プログラム本体をハッシュ関数でハッシン
グしてダイジェストを得、両ダイジェストが一致するか
どうかを判定することを特徴とする請求項1記載の秘密
鍵なしプログラム認証方法。
2. The method according to claim 1, wherein the program execution / communication device checks whether the signature is generated by the program body and a public key representing a source of the program and a secret key forming a pair with the signature. Wherein the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a secret key paired with a public key representing the origin of the program, and wherein the program execution / communication device includes the signature value. Decrypting with a public key representing the origin of the program to obtain a digest, hashing the program body with a hash function to obtain a digest, and determining whether both digests match. Program authentication method without private key described.
【請求項3】 前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、前記通信・処理装置が、通信して
よい相手を示す公開鍵を備え、該通信してよい相手を示
す公開鍵と前記プログラム実行・通信装置に付随する公
開鍵とが一致するかどうかを判定し、一致する場合に前
記プログラム実行・通信装置を認証することを特徴とす
る請求項1または2記載の秘密鍵なしプログラム認証方
法。
3. The communication / processing device according to claim 1, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. The apparatus includes a public key indicating a partner with which communication is possible, and determines whether or not the public key indicating the partner with which communication is possible matches the public key attached to the program execution / communication apparatus. 3. The method according to claim 1, wherein the program execution / communication device is authenticated.
【請求項4】 前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、公開鍵によるワン・タイム・パス
ワード方式が用いられ、前記通信・処理装置は、前記プ
ログラム実行・通信装置にランダムな文字列を送り、前
記プログラム実行・通信装置は、該文字列を該プログラ
ム実行・通信装置に付随する秘密鍵で暗号化して前記通
信・処理装置に送り返し、前記通信・処理装置は、暗号
化された文字列を事前に保持する通信してよい相手を示
す公開鍵で復号し、復号した文字列と先に送った文字列
とが一致すれば、前記プログラム実行・通信装置を認証
することを特徴とする請求項1または2記載の秘密鍵な
しプログラム認証方法。
4. The method according to claim 1, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a private key attached to the program execution / communication device. A time password method is used, the communication / processing device sends a random character string to the program execution / communication device, and the program execution / communication device attaches the character string to the program execution / communication device; The communication / processing device encrypts the encrypted character string and sends it back to the communication / processing device. 3. The method according to claim 1, further comprising the step of: authenticating the program execution / communication device if the character string matches with the previously transmitted character string. Law.
【請求項5】 プログラムと、該プログラムを元にプロ
セスを生成し実行するプログラム実行・通信装置と、該
プログラム実行・通信装置と通信を行う通信・処理装置
とにより構成される情報システムにおいて、前記プログ
ラム実行・通信装置が、該プログラム実行・通信装置に
付随する公開鍵および秘密鍵と、前記プログラムを元に
生成および実行されるプロセスとを含み、前記プログラ
ムが、プログラム本体と、該プログラムの出所由来を表
す公開鍵群と、前記プログラム本体および前記公開鍵群
を組み合わせて作成されたデータに対し各公開鍵と対を
なす各秘密鍵により行った署名群とを含み、前記プログ
ラム実行・通信装置が、各署名が前記プログラム本体お
よび前記公開鍵群を組み合わせて作成されたデータと各
署名に対応する各公開鍵と対をなす各秘密鍵とによって
生成されたものであるかどうかを確認し、生成されたも
のであることが確認された署名に対応する公開鍵の集ま
りを得る工程と、前記プログラム実行・通信装置が前記
プログラムを元に生成されたプロセスの処理により前記
通信・処理装置と通信を行う以前に、前記通信・処理装
置が、前記プログラム実行・通信装置に付随する公開鍵
および秘密鍵を用いた公開鍵方式により前記プログラム
実行・通信装置の認証を行う工程と、前記生成されたも
のであることが確認された署名に対応する公開鍵が1つ
以上得られた場合に、前記プログラム実行・通信装置が
前記プログラムを元に生成されたプロセスの処理により
前記通信・処理装置と通信を行う以前に、前記通信・処
理装置が前記プログラムの出所由来を表す公開鍵を得る
工程と、前記プログラム実行・通信装置の認証に成功
し、かつ前記プログラムの出所由来を表す公開鍵を得ら
れた場合に、前記通信・処理装置が、前記プログラム実
行・通信装置による署名確認結果の各公開鍵を、前記プ
ログラムの出所由来を表すと認証する工程とを含むこと
を特徴とする秘密鍵なしプログラム認証方法。
5. An information system comprising: a program; a program execution / communication device for generating and executing a process based on the program; and a communication / processing device for communicating with the program execution / communication device. A program execution / communication device includes a public key and a secret key attached to the program execution / communication device, and a process generated and executed based on the program, wherein the program includes a program main body and a source of the program. The program execution / communication device, comprising: a public key group indicating the origin; and a signature group performed on data created by combining the program body and the public key group with each private key paired with each public key. However, each signature has data created by combining the program body and the public key group and each public key corresponding to each signature. A step of confirming whether the key is generated by an open key and each secret key forming a pair, and obtaining a set of public keys corresponding to the signatures confirmed to be generated; and executing the program. Before the communication device communicates with the communication / processing device by performing a process of the process generated based on the program, the communication / processing device exchanges a public key and a secret key associated with the program execution / communication device. Authenticating the program execution / communication device using the public key method used, and executing the program execution when at least one public key corresponding to the signature confirmed to be generated is obtained. Before the communication device communicates with the communication / processing device by processing a process generated based on the program, the communication / processing device determines the origin of the program. Obtaining a public key, and, if the authentication of the program execution / communication device is successful and the public key indicating the origin of the program is obtained, the communication / processing device sets the program execution / communication device Authenticating each public key resulting from the signature verification by indicating the origin of the program.
【請求項6】 前記プログラム実行・通信装置が、各署
名が前記プログラム本体および前記公開鍵群を組み合わ
せて作成されたデータと各署名に対応する各公開鍵と対
をなす各秘密鍵とによって生成されたものであるかどう
かを確認し、確認した署名に対応する公開鍵の集まりを
得る工程において、各署名が前記プログラム本体および
前記公開鍵群の組み合わせで作成されたデータをハッシ
ュ関数でハッシングしたダイジェストを前記プログラム
の出所由来を表す各公開鍵と対をなす各秘密鍵で暗号化
した各署名値からなり、前記プログラム実行・通信装置
が、各署名値を前記プログラムの出所由来を表す各公開
鍵でそれぞれ復号してダイジェスト群を得るとともに前
記プログラム本体および前記公開鍵群の組み合わせで作
成されたデータをハッシュ関数でハッシングしてダイジ
ェストを得、該ダイジェストと前記ダイジェスト群とが
一致するかどうかを判定することを特徴とする請求項5
記載の秘密鍵なしプログラム認証方法。
6. The program execution / communication device, wherein each signature is generated from data created by combining the program body and the public key group, and each private key paired with each public key corresponding to each signature. In the step of confirming whether or not the signature has been obtained, and obtaining a set of public keys corresponding to the confirmed signature, each signature hashes data created by a combination of the program body and the public key group with a hash function. The program execution / communication device converts each signature value from each public key representing the origin of the program to each digest value with each signature value encrypted with each secret key paired with each public key representing the source of the program. Each key is decrypted to obtain a digest group, and the data created by the combination of the program body and the public key group is processed. A hash function is used to obtain a digest, and it is determined whether or not the digest matches the digest group.
Program authentication method without private key described.
【請求項7】 前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、前記通信・処理装置が、通信して
よい相手を示す公開鍵を備え、該通信してよい相手を示
す公開鍵と前記プログラム実行・通信装置に付随する公
開鍵とが一致するかどうかを判定し、一致する場合に前
記プログラム実行・通信装置を認証することを特徴とす
る請求項5または6記載の秘密鍵なしプログラム認証方
法。
7. The communication / processing device according to claim 1, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. The apparatus includes a public key indicating a partner with which communication is possible, and determines whether or not the public key indicating the partner with which communication is possible matches the public key attached to the program execution / communication apparatus. 7. The method according to claim 5, wherein the program execution / communication device is authenticated.
【請求項8】 前記通信・処理装置が、前記プログラム
実行・通信装置に付随する公開鍵および秘密鍵を用いた
公開鍵方式により前記プログラム実行・通信装置の認証
を行う工程において、公開鍵によるワン・タイム・パス
ワード方式が用いられ、前記通信・処理装置は、前記プ
ログラム実行・通信装置にランダムな文字列を送り、前
記プログラム実行・通信装置は、該文字列を該プログラ
ム実行・通信装置に付随する秘密鍵で暗号化して前記通
信・処理装置に送り返し、前記通信・処理装置は、暗号
化された文字列を事前に保持する通信してよい相手を示
す公開鍵で復号し、復号した文字列と先に送った文字列
とが一致すれば、前記プログラム実行・通信装置を認証
することを特徴とする請求項5または6記載の秘密鍵な
しプログラム認証方法。
8. The method according to claim 8, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a private key attached to the program execution / communication device. A time password method is used, the communication / processing device sends a random character string to the program execution / communication device, and the program execution / communication device attaches the character string to the program execution / communication device; The communication / processing device encrypts the encrypted character string and sends it back to the communication / processing device. 7. The authentication method according to claim 5, wherein the authentication unit authenticates the program execution / communication device if the character string matches the sent character string. Law.
【請求項9】 プログラムと、該プログラムを元にプロ
セスを生成し実行するプログラム実行・通信装置と、該
プログラム実行・通信装置と通信を行う通信・処理装置
とにより構成される情報システムにおいて、前記プログ
ラムが、プログラム本体と、該プログラムの出所由来を
表すID群とを含み、前記プログラム実行・通信装置
が、前記プログラムを元に生成および実行されるプロセ
スを含み、前記プログラム実行・通信装置が前記プログ
ラムを元に生成されたプロセスの処理により前記通信・
処理装置と通信を行う以前に、前記通信・処理装置が、
前記プロセスの元となるプログラムの出所由来を表すI
D群の一部または全部を得る工程と、前記出所由来を表
すIDが1つ以上得られたときに、前記通信・処理装置
が前記プログラムを元に生成されたプロセスの処理によ
り前記プログラム実行・通信装置と通信を行う工程と、
通信によって発生した処理において、前記通信・処理装
置が、前記プログラム実行・管理装置から得られた前記
出所由来を表すID群を元にしたアクセス制御を行う工
程とを含むことを特徴とするプログラムID通信処理制
御方法。
9. An information system comprising: a program; a program execution / communication device for generating and executing a process based on the program; and a communication / processing device for communicating with the program execution / communication device. The program includes a program body and an ID group indicating the origin of the program, the program execution / communication device includes a process generated and executed based on the program, and the program execution / communication device includes The communication and communication by the process of the process generated based on the program
Before communicating with the processing device, the communication / processing device
I representing the source of the program that is the source of the process
A step of obtaining a part or all of the group D; and, when one or more IDs indicating the origin are obtained, the communication / processing device executes the program execution / processing by processing a process generated based on the program. Performing communication with the communication device;
A process performed by the communication, wherein the communication / processing device performs an access control based on an ID group indicating the origin derived from the program execution / management device. Communication processing control method.
【請求項10】 プログラムと、該プログラムを元にプ
ロセスを生成し実行するプログラム実行・通信装置と、
該プログラム実行・通信装置と通信を行う通信・処理装
置とにより構成される情報システムにおいて、前記プロ
グラムが、プログラム本体,該プログラムの出所由来を
表す公開鍵,および該公開鍵と対をなす秘密鍵を含み、
前記プログラム実行・通信装置が、前記プログラムを元
に生成および実行されるプロセスを含み、前記プログラ
ム実行・通信装置が前記プログラムを元に生成されたプ
ロセスの処理により前記通信・処理装置と通信を行う以
前に、前記通信・処理装置が、前記プログラム実行・通
信装置から該プログラム実行・通信装置に通信をさせる
プロセスの元となる前記プログラムの出所由来を表す公
開鍵を得る工程と、前記通信・処理装置が、前記プログ
ラムの出所由来を表す公開鍵および秘密鍵を用いた公開
鍵方式により前記プログラムの認証を行う工程と、前記
プログラムが認証されたときに、前記通信・処理装置
が、前記公開鍵を元にしたアクセス制御により前記プロ
グラム実行・通信装置と通信を行う工程とを含むことを
特徴とするプログラムID通信処理制御方法。
10. A program, a program execution / communication device for generating and executing a process based on the program,
In an information system comprising a communication / processing device for performing communication with the program execution / communication device, the program includes a program body, a public key indicating the origin of the program, and a secret key paired with the public key. Including
The program execution / communication device includes a process generated and executed based on the program, and the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program. Previously, said communication / processing device obtains a public key indicating a source of said program which is a source of a process for causing said program execution / communication device to communicate with said program execution / communication device; A step in which the device authenticates the program by a public key method using a public key and a secret key representing the origin of the program, and when the program is authenticated, the communication / processing device Performing communication with the program execution / communication device by access control based on the program. ID communication processing control method.
【請求項11】 前記通信・処理装置が、得られた公開
鍵について、前記プログラムの出所由来を表す公開鍵お
よび秘密鍵を用いた公開鍵方式により前記プログラムの
認証を行う工程において、公開鍵によるワン・タイム・
パスワード方式が用いられ、前記プログラム実行・通信
装置が、前記公開鍵を前記通信・処理装置に送り、前記
通信・処理装置が、前記プログラム実行・通信装置にラ
ンダムな文字列を送り、前記プログラム実行・通信装置
が、該文字列を前記秘密鍵で暗号化した文字列を前記通
信・処理装置に送り返し、前記通信・処理装置が、暗号
化された文字列を前記送られてきた公開鍵で復号し、復
号した文字列と先に送った文字列とが一致すれば、前記
プログラムを認証することを特徴とする請求項10記載
のプログラムID通信処理制御方法。
11. A step in which the communication / processing apparatus authenticates the obtained public key by a public key method using a public key and a secret key representing the origin of the program, and one time·
A password method is used, the program execution / communication device sends the public key to the communication / processing device, and the communication / processing device sends a random character string to the program execution / communication device, and executes the program execution. The communication device sends back a character string obtained by encrypting the character string with the secret key to the communication / processing device, and the communication / processing device decrypts the encrypted character string with the sent public key. 11. The program ID communication processing control method according to claim 10, wherein the program is authenticated if the decrypted character string matches the previously transmitted character string.
【請求項12】 プログラムと、該プログラムを元にプ
ロセスを生成し実行するプログラム実行・通信装置と、
該プログラム実行・通信装置と通信を行う通信・処理装
置とにより構成される情報システムにおいて、前記プロ
グラム実行・通信装置が、該プログラム実行・通信装置
に付随する公開鍵および秘密鍵と、前記プログラムを元
に生成および実行されるプロセスとを含み、前記プログ
ラムが、プログラム本体と、該プログラムの出所由来を
表す公開鍵と、前記プログラム本体に対し該公開鍵と対
をなす秘密鍵により行った署名とを含み、前記プログラ
ム実行・通信装置が、前記署名が前記プログラム本体と
前記プログラムの出所由来を表す公開鍵と対をなす秘密
鍵とによって生成されたものであるかどうかを確認する
工程と、前記プログラム実行・通信装置が前記プログラ
ムを元に生成されたプロセスの処理により前記通信・処
理装置と通信を行う以前に、前記通信・処理装置が、前
記プログラム実行・通信装置に付随する公開鍵および秘
密鍵を用いた公開鍵方式により前記プログラム実行・通
信装置の認証を行う工程と、前記署名が前記プログラム
本体と前記プログラムの出所由来を表す公開鍵と対をな
す秘密鍵とによって生成されたものであることが確認で
きた場合に、前記プログラム実行・通信装置が前記プロ
グラムを元に生成されたプロセスの処理により前記通信
・処理装置と通信を行う以前に、前記通信・処理装置が
前記プログラムの出所由来を表す公開鍵を得る工程と、
前記プログラム実行・通信装置の認証に成功し、かつ前
記プログラムの出所由来を表す公開鍵を得られた場合
に、前記通信・処理装置が、前記プログラム実行・通信
装置から前記プログラムの出所由来を表す公開鍵を得、
該公開鍵を元にしたアクセス制御により前記プログラム
実行・通信装置と通信を行う工程とを含むことを特徴と
するプログラムID通信処理制御方法。
12. A program, a program execution / communication device for generating and executing a process based on the program,
In an information system including a communication / processing device that performs communication with the program execution / communication device, the program execution / communication device includes a public key and a secret key attached to the program execution / communication device, The program includes a process that is originally generated and executed.The program includes a program main body, a public key representing the origin of the program, and a signature performed on the program main body with a private key paired with the public key. The program execution and communication device, the step of confirming whether the signature is generated by the program body and a secret key that is paired with a public key representing the origin of the program, the A program execution / communication device communicates with the communication / processing device by processing a process generated based on the program. A step in which the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a private key attached to the program execution / communication device; And a public key indicating the origin of the program and a secret key forming a pair with the public key, the program execution / communication device performs processing of a process generated based on the program. Before performing communication with the communication and processing device, the communication and processing device obtains a public key representing the origin of the program,
If the authentication of the program execution / communication device is successful and a public key indicating the origin of the program is obtained, the communication / processing device indicates the origin of the program from the program execution / communication device. Get the public key,
Performing a communication with the program execution / communication device by an access control based on the public key.
【請求項13】 前記プログラム実行・通信装置が、前
記署名が前記プログラム本体と前記プログラムの出所由
来を表す公開鍵と対をなす秘密鍵とによって生成された
ものであるかどうかを確認する工程において、前記署名
が前記プログラム本体をハッシュ関数でハッシングした
ダイジェストを前記プログラムの出所由来を表す公開鍵
と対をなす秘密鍵で暗号化した署名値からなり、前記プ
ログラム実行・通信装置が、前記署名値を前記プログラ
ムの出所由来を表す公開鍵で復号してダイジェストを得
るとともに前記プログラム本体をハッシュ関数でハッシ
ングしてダイジェストを得、両ダイジェストが一致する
かどうかを判定することを特徴とする請求項12記載の
プログラムID通信処理制御方法。
13. The step of the program execution / communication device confirming whether or not the signature is generated by the program body and a secret key paired with a public key indicating the origin of the program. Wherein the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a secret key paired with a public key representing the origin of the program, and wherein the program execution / communication device includes the signature value. Decrypting with a public key representing the origin of the program to obtain a digest, hashing the program body with a hash function to obtain a digest, and determining whether both digests match. The program ID communication processing control method described above.
【請求項14】 前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、前記通信・処理装置が、通信し
てよい相手を示す公開鍵を備え、前記プログラム実行・
通信装置に付随する公開鍵と前記通信してよい相手を示
す公開鍵とが一致するかどうかを判定することを特徴と
する請求項12または13記載のプログラムID通信処
理制御方法。
14. The communication / processing device according to claim 1, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. The device has a public key indicating a partner with whom the device can communicate, and
14. The program ID communication processing control method according to claim 12, wherein it is determined whether a public key attached to the communication device matches a public key indicating a partner with which communication is possible.
【請求項15】 前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、公開鍵によるワン・タイム・パ
スワード方式が用いられ、前記通信・処理装置は、前記
プログラム実行・通信装置にランダムな文字列を送り、
前記プログラム実行・通信装置は、該文字列を該プログ
ラム実行・通信装置に付随する秘密鍵で暗号化して前記
通信・処理装置に送り返し、前記通信・処理装置は、暗
号化された文字列を事前に保持する通信してよい相手を
示す公開鍵で復号し、復号した文字列と先に送った文字
列とが一致すれば、前記プログラム実行・通信装置を認
証することを特徴とする請求項12または13記載のプ
ログラムID通信処理制御方法。
15. The method according to claim 15, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. A time password method is used, the communication / processing device sends a random character string to the program execution / communication device,
The program execution / communication device encrypts the character string with a secret key attached to the program execution / communication device, and sends the encrypted character string back to the communication / processing device. 13. The program execution / communication device is authenticated if the decrypted character string matches a previously transmitted character string with a public key indicating a party with whom communication can be held and stored. Or the program ID communication processing control method according to 13.
【請求項16】 プログラムと、該プログラムを元にプ
ロセスを生成し実行するプログラム実行・通信装置と、
該プログラム実行・通信装置と通信を行う通信・処理装
置とにより構成される情報システムにおいて、前記プロ
グラム実行・通信装置が、該プログラム実行・通信装置
に付随する公開鍵および秘密鍵と、前記プログラムを元
に生成および実行されるプロセスとを含み、前記プログ
ラムが、プログラム本体と、該プログラムの出所由来を
表す公開鍵群と、前記プログラム本体および前記公開鍵
群を組み合わせて作成されたデータに対し各公開鍵と対
をなす各秘密鍵により行った署名群とを含み、前記プロ
グラム実行・通信装置が、各署名が前記プログラム本体
および前記公開鍵群を組み合わせて作成されたデータと
各署名に対応する各公開鍵と対をなす各秘密鍵とによっ
て生成されたものであるかどうかを確認し、生成された
ものであることが確認された署名に対応する公開鍵の集
まりを得る工程と、前記プログラム実行・通信装置が前
記プログラムを元に生成されたプロセスの処理により前
記通信・処理装置と通信を行う以前に、前記通信・処理
装置が、前記プログラム実行・通信装置に付随する公開
鍵および秘密鍵を用いた公開鍵方式により前記プログラ
ム実行・通信装置の認証を行う工程と、前記生成された
ものであることが確認された署名に対応する公開鍵が1
つ以上得られた場合に、前記プログラム実行・通信装置
が前記プログラムを元に生成されたプロセスの処理によ
り前記通信・処理装置と通信を行う以前に、前記通信・
処理装置が前記プログラムの出所由来を表す公開鍵を得
る工程と、前記プログラム実行・通信装置の認証に成功
し、かつ前記プログラムの出所由来を表す公開鍵を得ら
れた場合に、前記通信・処理装置が、前記プログラム実
行・通信装置による署名確認結果の公開鍵の集まりの一
部または全部を元にしたアクセス制御により前記プログ
ラム実行・通信装置と通信を行う工程とを含むことを特
徴とするプログラムID通信処理制御方法。
16. A program, a program execution / communication device for generating and executing a process based on the program,
In an information system including a communication / processing device that performs communication with the program execution / communication device, the program execution / communication device includes a public key and a secret key attached to the program execution / communication device, The program includes a process that is originally generated and executed, and the program generates a program body, a public key group indicating the origin of the program, and data generated by combining the program body and the public key group. The program execution / communication device includes a signature group performed by each private key paired with a public key, wherein each signature corresponds to data created by combining the program body and the public key group and each signature. Check if it was generated by each public key and each private key paired with it, and confirm that it was generated. Obtaining a set of public keys corresponding to the recognized signatures, and before the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program, A processing device for performing authentication of the program execution / communication device by a public key method using a public key and a private key attached to the program execution / communication device, and confirming that the generated device is the generated device. Public key corresponding to signature is 1
If more than one is obtained, before the program execution / communication device communicates with the communication / processing device by processing a process generated based on the program,
A processing device for obtaining a public key indicating the origin of the program; and, when the authentication of the program execution / communication device is successful and the public key indicating the origin of the program is obtained, the communication / processing is performed. Performing a communication with the program execution / communication device by an access control based on a part or all of a set of public keys of a signature confirmation result by the program execution / communication device. ID communication processing control method.
【請求項17】 前記プログラム実行・通信装置が、各
署名が前記プログラム本体および前記公開鍵群を組み合
わせて作成されたデータと各署名に対応する各公開鍵と
対をなす各秘密鍵とによって生成されたものであるかど
うかを確認する工程において、各署名が前記プログラム
本体および前記公開鍵群を組み合わせて作成されたデー
タをハッシュ関数でハッシングしたダイジェストを前記
プログラムの出所由来を表す各公開鍵と対をなす各秘密
鍵で暗号化した各署名値からなり、前記プログラム実行
・通信装置が、各署名値を各公開鍵でそれぞれ復号した
各ダイジェストと、前記プログラム本体および前記公開
鍵群を組み合わせて作成されたデータをハッシュ関数で
ハッシングして得られるダイジェストとが一致するかど
うかを判定することを特徴とする請求項16記載のプロ
グラムID通信処理制御方法。
17. The program execution / communication device, wherein each signature is generated from data created by combining the program body and the public key group and each private key paired with each public key corresponding to each signature. In the step of checking whether or not the signature has been obtained, each signature is a digest obtained by hashing data created by combining the program body and the public key group with a hash function with each public key representing the origin of the program. The program execution / communication device is configured by combining each digest obtained by decrypting each signature value with each public key, the program main body, and the public key group. Determining whether the digest obtained by hashing the created data with a hash function matches 17. The program ID communication processing control method according to claim 16, wherein:
【請求項18】 前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、前記通信・処理装置が、通信し
てよい相手を示す公開鍵を備え、前記プログラム実行・
通信装置に付随する公開鍵と前記通信してよい相手を示
す公開鍵とが一致するかどうかを判定することを特徴と
する請求項16または17記載のプログラムID通信処
理制御方法。
18. The communication / processing device according to claim 1, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. The device has a public key indicating a partner with whom the device can communicate, and
18. The program ID communication processing control method according to claim 16, wherein it is determined whether a public key attached to a communication device matches a public key indicating a partner with which communication is possible.
【請求項19】 前記通信・処理装置が、前記プログラ
ム実行・通信装置に付随する公開鍵および秘密鍵を用い
た公開鍵方式により前記プログラム実行・通信装置の認
証を行う工程において、公開鍵によるワン・タイム・パ
スワード方式が用いられ、前記通信・処理装置は、前記
プログラム実行・通信装置にランダムな文字列を送り、
前記プログラム実行・通信装置は、該文字列を該プログ
ラム実行・通信装置に付随する秘密鍵で暗号化して前記
通信・処理装置に送り返し、前記通信・処理装置は、暗
号化された文字列を事前に保持する通信してよい相手を
示す公開鍵で復号し、復号した文字列と先に送った文字
列とが一致すれば、前記プログラム実行・通信装置を認
証することを特徴とする請求項16または17記載のプ
ログラムID通信処理制御方法。
19. The method according to claim 19, wherein the communication / processing device authenticates the program execution / communication device by a public key method using a public key and a secret key attached to the program execution / communication device. A time password method is used, the communication / processing device sends a random character string to the program execution / communication device,
The program execution / communication device encrypts the character string with a secret key attached to the program execution / communication device, and sends the encrypted character string back to the communication / processing device. 17. The program execution / communication device is authenticated if the decrypted character string matches the previously transmitted character string, using a public key indicating a party with whom communication can be held. Or the program ID communication processing control method according to item 17.
【請求項20】 プログラムと、これらプログラムを元
にプロセスをそれぞれ生成し実行する複数のプログラム
実行・通信装置とにより構成される情報システムにおい
て、前記プログラムが、プログラム本体,および該プロ
グラムの出所由来を表すID群を含み、あるプログラム
を元にあるプログラム実行・通信装置が生成したあるプ
ロセスが、該プログラムまたは別のあるプログラムを元
に別のあるプログラム実行・通信装置が生成した別のあ
るプロセスと通信を行う前に、両プログラム実行・通信
装置が、相手プログラム実行・通信装置内のプロセスの
元となる前記プログラムの出所由来を表すID群の一部
または全部を得る工程と、前記出所由来を表すID群が
得られたときに、両プログラム実行・通信装置が、得ら
れた出所由来を表すID群と自プログラム実行・通信装
置内のプロセスの元となる前記プログラムの出所由来を
表すID群とを比較し、一致する前記プログラムの出所
由来を表すIDが1つ以上存在すれば通信路を開く工程
とを含むことを特徴とするプログラムID通信範囲制御
方法。
20. An information system comprising a program and a plurality of program execution / communication devices each of which generates and executes a process based on the program, wherein the program includes a program main body and an origin of the program. A process that includes a group of IDs and that is generated by a certain program execution / communication device based on a certain program is different from another process generated by another certain program execution / communication device based on the program or another certain program. Before performing communication, both program execution / communication devices obtain a part or all of an ID group representing the origin of the program that is a source of a process in the partner program execution / communication device; and When a group of IDs is obtained, both program execution / communication devices indicate the origins obtained. The ID group is compared with the ID group indicating the origin of the program which is the source of the process in the own program execution / communication device. If there is at least one matching ID indicating the origin of the program, the communication path is determined. A program ID communication range control method.
【請求項21】 プログラムと、各プログラムを元に各
プロセスを生成し実行する複数のプログラム実行・通信
装置とにより構成される情報システムにおいて、前記プ
ログラムが、プログラム本体,該プログラムの出所由来
を表す公開鍵,および該公開鍵と対をなす秘密鍵を含
み、あるプログラムを元にあるプログラム実行・通信装
置が生成したあるプロセスが、該プログラムまたは別の
あるプログラムを元に別のあるプログラム実行・通信装
置が生成した別のあるプロセスと通信を行う前に、両プ
ログラム実行・通信装置が、相手プログラム実行・通信
装置から相手プログラム実行・通信装置内のプロセスの
元となる前記プログラムの出所由来を表す公開鍵をそれ
ぞれ得る工程と、両プログラム実行・通信装置が、相手
プログラム実行・通信装置から得られた公開鍵と自プロ
グラム実行・通信装置内のプロセスの元となる前記プロ
グラムの出所由来を表す公開鍵とが一致するかどうかを
判定する工程と、両プログラム実行・通信装置が、相手
プログラム実行・通信装置内のプロセスの元となる前記
プログラムの出所由来を表す公開鍵および秘密鍵を用い
て相手プログラム実行・通信装置内のプロセスの元とな
るプログラムの相互認証を行う工程と、相手プログラム
実行・通信装置から得られた公開鍵と自プログラム実行
・通信装置内のプロセスの元となる前記プログラムの出
所由来を表す公開鍵とが一致し、かつ相手プログラム実
行・通信装置内のプロセスの元となるプログラムが相互
認証されたときに、両プログラム実行・通信装置が通信
路を開く工程とを含むことを特徴とするプログラムID
通信範囲制御方法。
21. An information system comprising a program and a plurality of program execution / communication devices for generating and executing each process based on each program, wherein the program represents a program body and a source of the program. A process that includes a public key and a secret key that is paired with the public key and that is generated by a program execution / communication device based on a certain program can be used to execute another program based on the program or another certain program. Before communicating with another process generated by the communication device, both program execution / communication devices determine the origin of the program that is the source of the process in the communication device from the execution of the other program / communication device. Obtaining the public keys to be represented, and the two program execution / communication devices Determining whether the public key obtained from the device matches the public key representing the source of the program that is the source of the process in the own program execution / communication device; and both program execution / communication devices, Mutual authentication of the program that is the source of the process in the other program execution and communication device using a public key and a secret key that represents the origin of the program in the other program execution and communication device, and The public key obtained from the partner program execution / communication device matches the public key indicating the origin of the program which is the source of the process in the own program execution / communication device, and the process in the partner program execution / communication device And when both programs are mutually authenticated, the two program execution / communication devices open a communication path. Program ID
Communication range control method.
【請求項22】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置内のプロセスの元となる前記
プログラムの出所由来を表す公開鍵および秘密鍵を用い
て相手プログラム実行・通信装置内のプロセスの元とな
るプログラムの相互認証を行う工程において、公開鍵に
よるワン・タイム・パスワード方式が用いられ、両プロ
グラム実行・通信装置が、自プログラム実行・通信装置
に付随する公開鍵を相手プログラム実行・通信装置に送
り、相手プログラム実行・通信装置にランダムな文字列
をそれぞれ送り、相手プログラム実行・通信装置が、該
文字列を相手プログラム実行・通信装置内のプロセスの
元となる前記プログラムの出所由来を表す公開鍵と対を
なす秘密鍵で暗号化した文字列を自プログラム実行・通
信装置に送り返し、自プログラム実行・通信装置が、暗
号化された文字列を対応する公開鍵で復号し、復号した
文字列と先に送った文字列とが一致すれば、相手プログ
ラム実行・通信装置通信装置内のプロセスの元となるプ
ログラムを認証することを特徴とする請求項21記載の
プログラムID通信範囲制御方法。
22. A process in a partner program execution / communication device using both a public key and a secret key indicating the origin of the program as a source of a process in the partner program execution / communication device. In the step of performing mutual authentication of the program that is the source of the program, a one-time password method using a public key is used, and both program execution / communication devices execute their own program execution / Sends a random character string to the partner device execution / communication device, respectively, and sends the character string to the partner program execution / communication device from the source of the program that is the source of the process in the communication device. A character string encrypted with a private key paired with a public key representing The own program execution / communication device decrypts the encrypted character string with the corresponding public key, and if the decrypted character string matches the previously transmitted character string, the other program execution / communication device communication device The program ID communication range control method according to claim 21, wherein a program serving as a source of the process is authenticated.
【請求項23】 プログラムと、各プログラムを元に各
プロセスを生成し実行する複数のプログラム実行・通信
装置とにより構成される情報システムにおいて、前記プ
ログラム実行・通信装置が、自プログラム実行・通信装
置に付随する公開鍵および秘密鍵と、相手プログラム実
行・通信装置に付随する公開鍵と、前記プログラムを元
に生成および実行されるプロセスとを含み、前記プログ
ラムが、プログラム本体と、該プログラムの出所由来を
表す公開鍵と、前記プログラム本体に対し該公開鍵と対
をなす秘密鍵により行った署名とを含み、あるプログラ
ムを元にあるプログラム実行・通信装置が生成したある
プロセスが、該プログラムまたは別のあるプログラムを
元に別のあるプログラム実行・通信装置が生成した別の
あるプロセスと通信を行う前に、両プログラム実行・通
信装置が、前記署名が前記プログラム本体と前記プログ
ラムの出所由来を表す公開鍵と対をなす秘密鍵とによっ
て生成されたものであるかどうかを確認する工程と、前
記通信を行う前に、両プログラム実行・通信装置が、相
手プログラム実行・通信装置に付随する公開鍵および秘
密鍵を用いた公開鍵方式により相手プログラム実行・通
信装置の認証を行う工程と、両プログラム実行・通信装
置が、前記署名が前記プログラム本体と前記プログラム
の出所由来を表す公開鍵と対をなす秘密鍵とによって生
成されたものであることが確認できた場合に、前記通信
を行う前に、前記公開鍵を相手プログラム実行・通信装
置に伝える工程と、両プログラム実行・通信装置が、相
手プログラム実行・通信装置から得られた公開鍵と自プ
ログラム実行・通信装置内のプロセスの元となる前記プ
ログラムの出所由来を表す公開鍵とが一致するかどうか
を判定する工程と、相手プログラム実行・通信装置内の
プロセスの元となるプログラムが相互認証され、かつ相
手プログラム実行・通信装置から得られた公開鍵と自プ
ログラム実行・通信装置内のプロセスの元となる前記プ
ログラムの出所由来を表す公開鍵とが一致したときに、
両プログラム実行・通信装置が通信路を開く工程とを含
むことを特徴とするプログラムID通信範囲制御方法。
23. An information system comprising a program and a plurality of program execution / communication devices for generating and executing each process based on each program, wherein the program execution / communication device includes a self-program execution / communication device. , A public key and a private key attached to the other party's program execution / communication device, and a process generated and executed based on the program. A public key indicating the origin and a signature performed on the program body by a secret key paired with the public key, and a process generated by a program execution / communication device based on a program causes the program or Communicates with another process created by another program execution / communication device based on another program Before performing, the two program execution and communication device, to confirm whether the signature is generated by the program body and a secret key that is paired with a public key representing the origin of the program and Prior to performing the communication, both program execution and communication device, a step of performing authentication of the other program execution and communication device by a public key method using a public key and a secret key attached to the other program execution and communication device, The two program execution / communication devices perform the communication when it is confirmed that the signature is generated by the program main body and a secret key that forms a pair with a public key indicating the origin of the program. Transmitting the public key to the other party's program execution / communication device; and transmitting the public key to the other party's program execution / communication device. Determining whether or not the public key obtained and the public key indicating the origin of the program that is the source of the process in the own program execution / communication device match; and Are mutually authenticated, and when the public key obtained from the partner program execution / communication device matches the public key indicating the origin of the program as the source of the process in the own program execution / communication device,
A step of both program execution / communication devices opening a communication path.
【請求項24】 両プログラム実行・通信装置が、前記
署名が前記プログラム本体と前記プログラムの出所由来
を表す公開鍵と対をなす秘密鍵とによって生成されたも
のであるかどうかを確認する工程において、前記署名が
前記プログラム本体をハッシュ関数でハッシングしたダ
イジェストを前記プログラムの出所由来を表す公開鍵と
対をなす秘密鍵で暗号化した署名値からなり、両プログ
ラム実行・通信装置が、前記署名値を前記プログラムの
出所由来を表す公開鍵で復号してダイジェストを得ると
ともに前記プログラム本体をハッシュ関数でハッシング
してダイジェストを得、両ダイジェストが一致するかど
うかを判定することを特徴とする請求項23または24
記載のプログラムID通信範囲制御方法。
24. A step in which both program execution / communication devices confirm whether or not the signature is generated by the program body and a public key indicating a source of the program and a secret key forming a pair. Wherein the signature comprises a signature value obtained by encrypting a digest obtained by hashing the program body with a hash function with a private key paired with a public key representing the origin of the program. 24. A digest is obtained by decrypting the program with a public key indicating the origin of the program, and a digest is obtained by hashing the program body with a hash function, and it is determined whether both digests match. Or 24
The program ID communication range control method described above.
【請求項25】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により相手プログラム実行・通信
装置の認証を行う工程において、両プログラム実行・通
信装置が、通信してよい相手を示す公開鍵を備え、該通
信してよい相手を示す公開鍵と相手プログラム実行・通
信装置に付随する公開鍵群の1つ以上の公開鍵とが一致
するかどうかを判定することを特徴とする請求項23ま
たは24記載のプログラムID通信範囲制御方法。
25. A step in which both program execution / communication apparatuses authenticate the other program execution / communication apparatus by a public key method using a public key and a secret key attached to the other program execution / communication apparatus. The communication device has a public key indicating a partner with which communication is possible, and the public key indicating the partner with which communication is possible is executed with one or more public keys of a public key group attached to the communication device. 25. The program ID communication range control method according to claim 23, wherein it is determined whether or not the program ID communication range is set.
【請求項26】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により相手プログラム実行・通信
装置の認証を行う工程において、公開鍵によるワン・タ
イム・パスワード方式が用いられ、自プログラム実行・
通信装置は、相手プログラム実行・通信装置から相手プ
ログラム実行・通信装置に付随する公開鍵を得、相手プ
ログラム実行・通信装置にランダムな文字列を送り、相
手プログラム実行・通信装置は、該文字列を相手プログ
ラム実行・通信装置に付随する秘密鍵で暗号化して自プ
ログラム実行・通信装置に送り返し、自プログラム実行
・通信装置は、暗号化された文字列を相手プログラム実
行・通信装置から得た前記公開鍵で復号し、復号した文
字列と先に送った文字列とが一致すれば、相手プログラ
ム実行・通信装置を認証することを特徴とする請求項2
3または24記載のプログラムID通信範囲制御方法。
26. A step in which both program execution / communication devices authenticate a partner program execution / communication device by a public key method using a public key and a secret key attached to the partner program execution / communication device. One-time password method is used, executing own program
The communication device obtains a public key attached to the partner program execution / communication device from the partner program execution / communication device, sends a random character string to the partner program execution / communication device, and executes the partner program execution / communication device with the character string. Is encrypted with a secret key attached to the partner program execution / communication device and sent back to the own program execution / communication device, and the own program execution / communication device obtains the encrypted character string from the partner program execution / communication device. 3. The communication device according to claim 2, wherein the decrypted character string matches with the previously transmitted character string by using a public key, and the other party's program execution / communication device is authenticated.
25. The program ID communication range control method according to 3 or 24.
【請求項27】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置の認証に成功し、かつ両プロ
グラム実行・通信装置による署名確認結果の公開鍵の集
まりに一致する公開鍵があるときに、プロセス間の通信
路を開く工程において、両プログラム実行・通信装置
が、通信路1つあたりに仮想的に複数の仮想通信路を形
成する通信装置と、前記プログラムの出所由来を表す公
開鍵毎に存在する仮想通信路用資源群と、通信路用資源
群とを含み、前記プログラムの出所由来を表す公開鍵が
得られた場合に、前記プログラムを元に生成されたプロ
セスが通信を行う際に、両プログラム実行・通信装置の
通信装置が、得られた出所由来を表す公開鍵に対応する
仮想通信路資源群の1つに通信路資源を割り当て、仮想
通信路資源を使い通信路を提供することを特徴とする請
求項26記載のプログラムID通信範囲制御方法。
27. When both program execution / communication devices succeed in authenticating the partner program execution / communication device and there is a public key that matches the set of public keys in the signature confirmation result by both program execution / communication devices. In the step of opening a communication path between processes, the two program execution / communication apparatuses are each provided with a communication apparatus that virtually forms a plurality of virtual communication paths per communication path, and a public key representing the origin of the program. When a public key indicating the origin of the program is obtained, the process includes a virtual communication path resource group and a communication path resource group existing in The communication device of the two program execution / communication devices allocates a communication channel resource to one of the virtual communication channel resources corresponding to the obtained public key indicating the origin, and performs communication using the virtual communication channel resource. 28. The program ID communication range control method according to claim 26, wherein a path is provided.
【請求項28】 プログラムと、各プログラムを元に各
プロセスを生成し実行する複数のプログラム実行・通信
装置とにより構成される情報システムにおいて、前記プ
ログラム実行・通信装置が、自プログラム実行・通信装
置に付随する公開鍵および秘密鍵と、相手プログラム実
行・通信装置に付随する公開鍵と、各プログラムを元に
生成および実行されるプロセスとを含み、各プログラム
が、プログラム本体と、該プログラムの出所由来を表す
公開鍵群と、前記プログラム本体および前記公開鍵群を
組み合わせて作成されたデータに対し各公開鍵と対をな
す各秘密鍵により行った署名群とを含み、両プログラム
実行・通信装置が、各署名が前記プログラム本体および
前記公開鍵群を組み合わせて作成されたデータと各署名
に対応する各公開鍵と対をなす各秘密鍵とによって生成
されたものであるかどうかを確認する工程と、両プログ
ラム実行・通信装置が、相手プログラム実行・通信装置
に付随する公開鍵および秘密鍵を用いた公開鍵方式によ
り相手プログラム実行・通信装置の認証を行う工程と、
両プログラム実行・通信装置が、自プログラム実行・通
信装置による署名確認結果の公開鍵の集まりを相手プロ
グラム実行・通信装置に伝え、自プログラム実行・通信
装置による署名確認結果の公開鍵の集まりと相手プログ
ラム実行・通信装置による署名確認結果の公開鍵の集ま
りとに一致する公開鍵があるかどうかを判定する工程
と、相手プログラム実行・通信装置の認証に成功し、か
つ両プログラム実行・通信装置による署名確認結果の公
開鍵の集まりに一致する公開鍵が1つ以上あるときに、
両プログラム実行・通信装置が、プロセス間の通信路を
開く工程とを含むことを特徴とするプログラムID通信
範囲制御方法。
28. An information system comprising a program, and a plurality of program execution / communication devices for generating and executing each process based on each program, wherein the program execution / communication device is its own program execution / communication device. , A public key associated with the partner program execution / communication device, and a process generated and executed based on each program. Each program includes a program itself and a source of the program. A program execution / communication device including a public key group indicating the origin and a signature group performed on data created by combining the program body and the public key group with each private key paired with each public key. Each signature is data created by combining the program body and the public key group, and each public key corresponding to each signature. And a step of confirming whether the program is generated by each of the secret keys forming a pair with each other. A step of executing the partner program execution and authentication of the communication device by a method,
Both program execution / communication devices inform the partner program execution / communication device of the set of public keys of the signature confirmation result by the own program execution / communication device, and the collection of public keys of the signature confirmation result by the own program execution / communication device and the partner A step of determining whether there is a public key that matches the public key set of the signature confirmation result by the program execution / communication device; and When there is at least one public key that matches the set of public keys in the signature confirmation result,
A step of opening the communication path between the processes by both of the program execution / communication devices.
【請求項29】 両プログラム実行・通信装置が、各署
名が前記プログラム本体および前記公開鍵群を組み合わ
せて作成されたデータと各署名に対応する各公開鍵と対
をなす各秘密鍵とによって生成されたものであるかどう
かを判定する工程において、各署名が前記プログラム本
体および前記公開鍵群を組み合わせて作成されたデータ
をハッシュ関数でハッシングしたダイジェストを前記プ
ログラムの出所由来を表す各公開鍵と対をなす各秘密鍵
で暗号化した各署名値からなり、相手プログラム実行・
通信装置が、各署名値を前記プログラムの出所由来を表
す各公開鍵でそれぞれ復号してダイジェスト群を得ると
ともに前記プログラム本体および前記公開鍵群で作成さ
れたデータをハッシュ関数でハッシングしてダイジェス
トを得、該ダイジェストと前記ダイジェスト群とが一致
するかどうかを判定することを特徴とする請求項28記
載のプログラムID通信範囲制御方法。
29. Both of the program execution / communication devices generate each signature from data created by combining the program body and the public key group, and each private key paired with each public key corresponding to each signature. In the step of determining whether the signature has been obtained, each signature is a digest obtained by hashing data created by combining the program body and the public key group with a hash function with each public key representing the origin of the program. It consists of each signature value encrypted with each pair of secret keys.
The communication device obtains a digest group by decrypting each signature value with each public key representing the origin of the program, and hashes the data created by the program body and the public key group with a hash function to generate a digest. 29. The program ID communication range control method according to claim 28, further comprising determining whether or not the digest matches the digest group.
【請求項30】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により相手プログラム実行・通信
装置の認証を行う工程において、両プログラム実行・通
信装置が、通信してよい相手を示す公開鍵を備え、該通
信してよい相手を示す公開鍵と相手プログラム実行・通
信装置に付随する公開鍵群の1つ以上の公開鍵とが一致
するかどうかを判定することを特徴とする請求項28ま
たは29記載のプログラムID通信範囲制御方法。
30. A step in which both program execution / communication devices authenticate the other program execution / communication device by a public key method using a public key and a secret key attached to the other program execution / communication device. The communication device has a public key indicating a partner with which communication is possible, and the public key indicating the partner with which communication is possible is executed with one or more public keys of a public key group attached to the communication device. 30. The program ID communication range control method according to claim 28, wherein it is determined whether or not to perform the communication.
【請求項31】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置に付随する公開鍵および秘密
鍵を用いた公開鍵方式により相手プログラム実行・通信
装置の認証を行う工程において、公開鍵によるワン・タ
イム・パスワード方式が用いられ、自プログラム実行・
通信装置は、相手プログラム実行・通信装置から相手プ
ログラム実行・通信装置に付随する公開鍵を得、相手プ
ログラム実行・通信装置にランダムな文字列を送り、相
手プログラム実行・通信装置は、該文字列を相手プログ
ラム実行・通信装置に付随する秘密鍵で暗号化して自プ
ログラム実行・通信装置に送り返し、自プログラム実行
・通信装置は、暗号化された文字列を相手プログラム実
行・通信装置から得た前記公開鍵で復号し、復号した文
字列と先に送った文字列とが一致すれば、相手プログラ
ム実行・通信装置を認証することを特徴とする請求項2
8または29記載のプログラムID通信範囲制御方法。
31. A step in which both of the program execution / communication devices authenticate the partner program execution / communication device by a public key method using a public key and a secret key attached to the partner program execution / communication device. One-time password method is used, executing own program
The communication device obtains a public key attached to the partner program execution / communication device from the partner program execution / communication device, sends a random character string to the partner program execution / communication device, and executes the partner program execution / communication device with the character string. Is encrypted with a secret key attached to the partner program execution / communication device and sent back to the own program execution / communication device, and the own program execution / communication device obtains the encrypted character string from the partner program execution / communication device. 3. The communication device according to claim 2, wherein the decrypted character string matches with the previously transmitted character string by using a public key, and the other party's program execution / communication device is authenticated.
30. The program ID communication range control method according to 8 or 29.
【請求項32】 両プログラム実行・通信装置が、相手
プログラム実行・通信装置の認証に成功し、かつ両プロ
グラム実行・通信装置による署名確認結果の公開鍵の集
まりに一致する公開鍵があるときに、プロセス間の通信
路を開く工程において、両プログラム実行・通信装置
が、通信路1つあたりに仮想的に複数の仮想通信路を形
成する通信装置と、前記プログラムの出所由来を表す公
開鍵毎に存在する仮想通信路用資源群と、通信路用資源
群とを含み、前記プログラムの出所由来を表す公開鍵が
1つ以上得られた場合に、前記プログラムを元に生成さ
れたプロセスが通信を行う際に、両プログラム実行・通
信装置の通信装置が、得られた出所由来を表す公開鍵に
対応する仮想通信路資源群の1つに通信路資源を割り当
て、仮想通信路資源を使い通信路を提供することを特徴
とする請求項31記載のプログラムID通信範囲制御方
法。
32. When both program execution / communication devices succeed in the authentication of the partner program execution / communication device and there is a public key that matches the set of public keys of the signature confirmation results by both program execution / communication devices. In the step of opening a communication path between processes, the two program execution / communication apparatuses are each provided with a communication apparatus that virtually forms a plurality of virtual communication paths per communication path, and a public key representing the origin of the program. When one or more public keys indicating the origin of the program are obtained, the process generated based on the program includes a virtual communication path resource group and a communication path resource group existing in The communication device of both program execution and communication devices allocates communication channel resources to one of the virtual communication channel resources corresponding to the obtained public key indicating the origin, and allocates the virtual communication channel resources. 32. The program ID communication range control method according to claim 31, wherein a communication channel is provided.
【請求項33】 仮想通信路用資源群が仮想的に定義し
たソケットであり、該仮想通信路資源群の一つ一つが該
仮想的に定義したソケットの各ポートに対応し、通信路
用資源群が通常のソケットであり、各通信路資源群の一
つ一つが該通常のソケット各ポートに対応することを特
徴とする請求項27または32記載のプログラムID通
信範囲制御方法。
33. The virtual communication path resource group is a virtually defined socket, and each of the virtual communication path resource group corresponds to each port of the virtually defined socket. 33. The program ID communication range control method according to claim 27, wherein the group is a normal socket, and each of the communication path resource groups corresponds to each port of the normal socket.
【請求項34】 プログラムと、該プログラムを元にプ
ロセスを生成し実行および通信するプログラム実行・通
信装置とにより構成される情報システムにおいて、前記
プログラム実行・通信装置が、前記プログラムを元に生
成および実行されるプロセスとを含み、前記プログラム
が、プログラム本体と、該プログラムの出所由来を表す
公開鍵と、通信路1つあたりに仮想的に複数の仮想通信
路を形成する通信装置と、前記プログラムの出所由来を
表す公開鍵毎に1つ以上存在する仮想通信路用資源と、
1つ以上の通信路用資源とを含み、前記プログラム実行
・通信装置が前記プログラムを元に生成されたプロセス
の処理により通信を行う際に、出所由来を表す公開鍵と
要求された仮想通信路用資源とを対にして仮想通信路と
対応させ、仮想通信路を使い通信路を提供する工程をを
含むことを特徴とする公開鍵毎通信路提供方法。
34. An information system comprising a program and a program execution / communication device for generating, executing and communicating a process based on the program, wherein the program execution / communication device generates and executes a process based on the program. A communication device that includes a process to be executed, the program itself, a public key indicating the origin of the program, a communication device that virtually forms a plurality of virtual communication paths per communication path, and the program A virtual communication path resource that is present at least once for each public key representing the origin of the
A public key indicating a source and a requested virtual communication path when the program execution / communication device performs communication by processing of a process generated based on the program, the communication path including one or more communication path resources; A method for providing a communication path for each public key, comprising the step of providing a communication path using a virtual communication path by pairing a communication resource with a virtual communication path.
【請求項35】 仮想通信路用資源群が仮想的に定義し
たソケットであり、該仮想通信路資源群の一つ一つが該
仮想的に定義したソケットの各ポートに対応し、通信路
用資源群が通常のソケットであり、各通信路資源群の一
つ一つが該通常のソケット各ポートに対応することを特
徴とする請求項34記載の公開鍵毎通信路提供方法。
35. The virtual communication path resource group is a virtually defined socket, and each of the virtual communication path resource groups corresponds to each port of the virtually defined socket. 35. The method according to claim 34, wherein the groups are ordinary sockets, and each of the communication path resource groups corresponds to each port of the ordinary socket.
JP2001250922A 2000-09-01 2001-08-22 Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key Pending JP2002152196A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001250922A JP2002152196A (en) 2000-09-01 2001-08-22 Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000-264850 2000-09-01
JP2000264850 2000-09-01
JP2001250922A JP2002152196A (en) 2000-09-01 2001-08-22 Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004314932A Division JP4158758B2 (en) 2000-09-01 2004-10-29 Program ID communication processing control method, program ID communication range control method, and public key communication path providing method

Publications (1)

Publication Number Publication Date
JP2002152196A true JP2002152196A (en) 2002-05-24

Family

ID=26599044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001250922A Pending JP2002152196A (en) 2000-09-01 2001-08-22 Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key

Country Status (1)

Country Link
JP (1) JP2002152196A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003098438A1 (en) * 2002-05-20 2003-11-27 Ntt Docomo, Inc. Data usage management electronic apparatus, method, program, and storage medium
WO2007007690A1 (en) * 2005-07-07 2007-01-18 Kabushiki Kaisha Toshiba Authentication system, device, and program
US7475244B2 (en) 2002-11-05 2009-01-06 Kabushiki Kaisha Toshiba Wireless communication device, portable terminal, communication control program and communication system
US8813253B2 (en) 2003-11-27 2014-08-19 Nagravision S.A. Method for the authentication of applications
WO2017044254A3 (en) * 2015-08-27 2017-04-27 Mastercard International Incorporated Method and system for enhanced validation of cryptograms in cloud-based systems

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8418253B2 (en) 2002-05-20 2013-04-09 Ntt Docomo, Inc. Application data usage management system for an electronic device
WO2003098438A1 (en) * 2002-05-20 2003-11-27 Ntt Docomo, Inc. Data usage management electronic apparatus, method, program, and storage medium
US7475244B2 (en) 2002-11-05 2009-01-06 Kabushiki Kaisha Toshiba Wireless communication device, portable terminal, communication control program and communication system
US9531681B2 (en) 2003-11-27 2016-12-27 Nagravision S.A. Method for the authentication of applications
US8813253B2 (en) 2003-11-27 2014-08-19 Nagravision S.A. Method for the authentication of applications
US9143888B2 (en) 2003-11-27 2015-09-22 Nagravision S.A. Method for the authentication of applications
WO2007007690A1 (en) * 2005-07-07 2007-01-18 Kabushiki Kaisha Toshiba Authentication system, device, and program
WO2017044254A3 (en) * 2015-08-27 2017-04-27 Mastercard International Incorporated Method and system for enhanced validation of cryptograms in cloud-based systems
US9825946B2 (en) 2015-08-27 2017-11-21 Mastercard International Incorporated Method and system for enhanced validation of cryptograms in cloud-based systems
JP2018536208A (en) * 2015-08-27 2018-12-06 マスターカード インターナシヨナル インコーポレーテツド Improved cryptographic verification method and system in cloud based system
US10187384B2 (en) 2015-08-27 2019-01-22 Mastercard International Incorporated Method and system for enhanced validation of cryptograms in cloud-based systems
US10476871B2 (en) 2015-08-27 2019-11-12 Mastercard International Incorporated Method and system for enhanced validation of cryptograms in cloud-based systems
JP2019204511A (en) * 2015-08-27 2019-11-28 マスターカード インターナシヨナル インコーポレーテツド Method and system for enhanced validation of cryptograms in cloud-based systems
JP2020184378A (en) * 2015-08-27 2020-11-12 マスターカード インターナシヨナル インコーポレーテツド Method and system for enhanced validation of cryptograms in cloud-based systems

Similar Documents

Publication Publication Date Title
CN111010410B (en) Mimicry defense system based on certificate identity authentication and certificate signing and issuing method
US10929524B2 (en) Method and system for verifying an access request
US9281949B2 (en) Device using secure processing zone to establish trust for digital rights management
CN100447798C (en) Method and system for using a portable computing device as a smart key device
CN1701561B (en) Authentication system based on address, device thereof, and program
US8724819B2 (en) Credential provisioning
CN101682505B (en) Method and system for secure communication
EP1395019A2 (en) Apparatus and method for providing authentication information for a secure group communication
JP5380583B1 (en) Device authentication method and system
CN112187466B (en) Identity management method, device, equipment and storage medium
WO2021190197A1 (en) Method and apparatus for authenticating biometric payment device, computer device and storage medium
CN114444134A (en) Data use authorization method, system and device
CN112632573A (en) Intelligent contract execution method, device and system, storage medium and electronic equipment
US7073062B2 (en) Method and apparatus to mutually authentication software modules
CN114338091B (en) Data transmission method, device, electronic equipment and storage medium
US7721100B2 (en) Granting an access to a computer-based object
JP2002152196A (en) Method for program authentication without secret key, program id communication processing control method, program id communication range control method, and method for providing communication line by open key
KR100726074B1 (en) Method And System Of Certifying Mobile Internet User
JP4158758B2 (en) Program ID communication processing control method, program ID communication range control method, and public key communication path providing method
JP2005278065A (en) Update system of key for authentication and update method and program for key for authentication
CN109936522B (en) Equipment authentication method and equipment authentication system
JP2008233965A (en) Portable terminal device and program thetreof, and alternation prevention system and alternation prevention method
KR101298216B1 (en) Authentication system and method using multiple category
US20230129128A1 (en) Secure and documented key access by an application
US20230308266A1 (en) Method and System for Onboarding an IOT Device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040901

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041029

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041201

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050124

A072 Dismissal of procedure [no reply to invitation to correct request for examination]

Free format text: JAPANESE INTERMEDIATE CODE: A072

Effective date: 20050614