JP5835090B2 - Malfunction prevention device for plural devices and malfunction prevention method for plural devices - Google Patents
Malfunction prevention device for plural devices and malfunction prevention method for plural devices Download PDFInfo
- Publication number
- JP5835090B2 JP5835090B2 JP2012109015A JP2012109015A JP5835090B2 JP 5835090 B2 JP5835090 B2 JP 5835090B2 JP 2012109015 A JP2012109015 A JP 2012109015A JP 2012109015 A JP2012109015 A JP 2012109015A JP 5835090 B2 JP5835090 B2 JP 5835090B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- information
- unit
- executable
- 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.)
- Expired - Fee Related
Links
Images
Description
この発明は、複数の装置の誤動作を防止する技術に関するものである。 The present invention relates to a technique for preventing malfunction of a plurality of devices.
プログラム動作可能な装置において、そのプログラムのバージョンアップについて、装置ユーザが、インターネット上などからバージョンアップされたプログラムを入手してアップデートを行うことができる。しかし、そのプログラムは通常、実行可能な(動作保証されている)装置の構成やハードウェアバージョンが決まっており、保証されていないバージョンのプログラムを装置に書き込んでしまうと装置が動作しない。 In an apparatus capable of operating a program, the user of the apparatus can update the version of the program by obtaining the upgraded program from the Internet or the like. However, the configuration and hardware version of a device that can be executed (guaranteed) are determined for the program, and the device does not operate if a non-guaranteed version of the program is written to the device.
これにより、装置とプログラムの組合せをチェックして、プログラムの誤動作を防止する方法として、装置の個体識別情報とプログラムから作成されたハッシュコードと比較して、その比較結果に応じて組込み装置上でのプログラムの実行を制限する方法がある(例えば、特許文献1参照)。 As a method of checking the combination of the device and the program and preventing malfunction of the program, the device identification information is compared with the hash code created from the program, and the embedded device is operated according to the comparison result. There is a method for restricting the execution of this program (see, for example, Patent Document 1).
このように暗号化された装置の個体識別情報とプログラムから生成したダイジェスト(ハッシュ値)を装置で実行する際に、装置の個体識別情報と装置内のプログラムから再生成したダイジェストをと、復号化したダイジェストとを比較チェックする方法では、あらかじめ装置とプログラムの関連付けを行うことで、プログラムの改ざんと不正コピーを防止することが目的である。このため、異なる機能を持った複数の装置を組合せて構成する場合において、複数の装置の組みあわせの中で実行可能なプログラムかどうかを判断することができない問題がある。 When the device's encrypted device identification information and the digest (hash value) generated from the program are executed by the device, the device's individual identification information and the digest regenerated from the program in the device are decrypted. The purpose of the comparison check with the digest is to prevent the program from being altered and illegally copied by associating the device with the program in advance. For this reason, when a plurality of devices having different functions are combined and configured, there is a problem that it is not possible to determine whether the program is executable in the combination of the plurality of devices.
本発明は上記のような問題点を解決するためになされたもので、異なる機能を持った複数の装置を組合せて構成する場合において、複数の装置の組みあわせの中で実行可能なプログラムかどうかを判断することを目的とする。 The present invention has been made to solve the above-mentioned problems, and in the case where a plurality of devices having different functions are combined to constitute a program that can be executed in a combination of a plurality of devices. The purpose is to judge.
この発明は、通信可能に接続された自他複数の装置の各々の種類が識別できる装置情報を用いて装置構成IDを生成する装置構成ID生成手段と、各々の装置が記憶するプログラムから一方向性関数を用いて生成されたプログラムダイジェストと装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成手段と、各々の装置で動作するプログラムの組合せで、実行可能なプログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断手段を備えたことを特徴とする。 The present invention is one-way from a device configuration ID generating unit that generates a device configuration ID using device information that can identify each type of a plurality of devices that are communicably connected, and a program stored in each device. The program digest generated using the sex function and the device configuration ID are executed by a combination of the execution feasibility judgment information generating means for generating the feasibility judgment information using the one-way function and the program operating on each device. Program execution feasibility judgment means for judging whether or not there is a match with the execution feasibility judgment information generated using the executable program information indicating the combination of possible program execution feasibility judgment information It is provided with.
この発明は、通信可能に接続された自他複数の装置の各々の種類が識別できる装置情報を用いて装置構成IDを生成する装置構成ID生成手段と、各々の装置が記憶するプログラムから一方向性関数を用いて生成されたプログラムダイジェストと装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成手段と、各々の装置で動作するプログラムの組合せで、実行可能なプログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断手段を備えたので、複数の装置を構成する装置の種類情報の組み合わせで実行可能なプログラムの組合せかどうかを判断するので、プログラムの誤動作を防止することができる。 The present invention is one-way from a device configuration ID generating unit that generates a device configuration ID using device information that can identify each type of a plurality of devices that are communicably connected, and a program stored in each device. The program digest generated using the sex function and the device configuration ID are executed by a combination of the execution feasibility judgment information generating means for generating the feasibility judgment information using the one-way function and the program operating on each device. Program execution feasibility judgment means for judging whether or not there is a match with the execution feasibility judgment information generated using the executable program information indicating the combination of possible program execution feasibility judgment information Because it is determined whether it is a combination of programs that can be executed by a combination of type information of devices constituting a plurality of devices. It is possible to prevent the malfunction of the program.
実施の形態1.
実施の形態1では複数の装置の構成または組み合わせに応じて実行可能なプログラムであることを確認するための誤動作防止装置について説明する。
In the first embodiment, a malfunction preventing apparatus for confirming that a program is executable according to the configuration or combination of a plurality of apparatuses will be described.
図1は実施の形態1における複数の装置と複数の装置の構成または組み合わせに応じて実行可能なプログラムであることを確認するための誤動作防止装置を示す図である。 FIG. 1 is a diagram illustrating a malfunction prevention apparatus for confirming that a program is executable according to the configuration or combination of a plurality of apparatuses and a plurality of apparatuses in the first embodiment.
誤動作防止装置100は、複数の他装置101、102、103と通信可能に接続されている。
誤動作防止装置100の構成について説明する。
装置情報抽出要求部1は、接続されている全ての装置の装置情報を収集するために他装置101、102、103に対して、装置情報の収集を要求する。
装置情報記憶部2aは、装置の種別、接続順番、型番、ハードウェアバージョンなどの、誤動作防止装置100の製品の種類が識別可能な装置情報を格納する。
The
The configuration of the
The device information
The device
装置情報抽出部3aは、装置情報記憶部2aに格納されている情報を抽出する。
プログラム記憶部4aは、誤動作防止装置100の動作を制御するためのソフトウェア(プログラム)を格納する。
プログラムダイジェスト生成部5aは、プログラム記憶部4aに格納されたソフトウェア(プログラム)に対して一方向性関数(ハッシュ関数)を用いてプログラムのダイジェスト(ハッシュ値)を生成する。
The device
The program storage unit 4 a stores software (program) for controlling the operation of the
The program
装置構成ID生成部7は、装置情報抽出要求部1にて収集した他装置101、102、103の装置情報と、装置情報抽出部3aから取得した誤動作防止装置100の装置情報に基づいて、他の装置の組み合わせと識別可能な符号である装置構成ID(identificationの略)を生成する。
実行可否判断情報生成部8は、装置構成ID生成部7で生成した装置構成IDと誤動作防止装置100のプログラムダイジェスト生成部5a、と他装置101、102、103のプログラムダイジェスト生成部5bにて生成したプログラムのダイジェストから一方向性関数を用いての誤動作防止装置100と他装置101、102、103との組合せにて動作可能なプログラムであるかどうかを判断するための実行可否判断情報を生成する。
The device configuration
The executability determination information generation unit 8 is generated by the device configuration ID generated by the device configuration
実行可能プログラム情報記憶部9は、誤動作防止装置100と他装置101、102、103にて動作するプログラムまたはプログラムのバージョンの組合せで実行可能な、プログラム実行可否判断情報の組合せを示す実行可能プログラム情報を格納する。
実行可能プログラム情報記憶部9には、実行可否判断情報生成部8にて生成される実行可否判断情報と同じフォーマットの情報が、実行可能な全てのプログラムの組合せ数だけリスト化されて格納されている。
プログラム実行可否判断部10は、実行可否判断情報生成部8にて生成した実行可否判断情報と実行可能プログラム情報記憶部9に格納されている実行可能プログラム情報とを比較し、実行可能プログラム情報記憶部9に一致する情報が見つかった場合はプログラムの実行可と判断し、見つからなかった場合は実行不可と判断する。
The executable program information storage unit 9 is executable program information indicating a combination of program execution feasibility determination information that can be executed by a combination of a program or a program version that operates in the
In the executable program information storage unit 9, information in the same format as the execution availability determination information generated by the execution availability determination information generation unit 8 is stored in a list by the number of combinations of all executable programs. Yes.
The program
実行可否判断結果通知部11は、プログラム実行可否判断部10にて判断されたプログラムの実行可否の判断結果をプログラム実行部12a及び他装置101、102、103のプログラム実行部12bに通知する。
プログラム実行部12aは、実行可否判断結果通知部11からの通知を受けてプログラム実行可否判断部10の判断結果に基づいて判断結果が実行可能と判断された場合にのみ、制御プログラム記憶部4aに記憶されたプログラムを読み出し、実行する。
The execution feasibility judgment
The
次に他装置101、102、103の構成について説明する。尚、以下説明する他装置101の構成については、同様の機能が他装置102及び103に含まれているものとする。
装置情報記憶部2bは、装置の種別、接続順番、型番、ハードウェアバージョンなどの、他装置の製品の種類が識別可能な装置情報を格納する。
Next, the configuration of the
The device information storage unit 2b stores device information such as device type, connection order, model number, and hardware version that can identify the product type of another device.
装置情報抽出部3bは、装置情報記憶部2bに格納されている情報を抽出する。
プログラム記憶部4bは、他装置101の動作を制御するためのソフトウェア(プログラム)を格納する。
プログラムダイジェスト生成部5bは、プログラム記憶部4aに格納されたソフトウェア(プログラム)に対して一方向性関数(ハッシュ関数)を用いてプログラムのダイジェスト(ハッシュ値)を生成する。
The device information extraction unit 3b extracts information stored in the device information storage unit 2b.
The program storage unit 4b stores software (program) for controlling the operation of the
The program digest generation unit 5b generates a program digest (hash value) using a one-way function (hash function) for the software (program) stored in the program storage unit 4a.
要求受付部6は、誤動作防止装置100の装置情報抽出要求部1からの要求の受け取りと、要求内容の解析および受け取った要求内容に応じて、装置情報抽出部3bに装置情報の抽出と回答の命令や、プログラムダイジェスト生成部5bにプログラムのダイジェストの生成と回答の命令を出すと共に、装置情報抽出部3bからの装置情報とプログラムダイジェスト生成部5bからのプログラムのダイジェストを誤動作防止装置100の装置情報抽出要求部1に伝送する。
The request reception unit 6 receives the request from the device information
プログラム実行部12bは、誤動作防止装置100の実行可否判断結果通知部11からの通知を受けて、誤動作防止装置100のプログラム実行可否判断部10の判断結果に基づいて判断結果が実行可能と判断された場合にのみ、制御プログラム記憶部4bに記憶されたプログラムを読み出し、実行する。
The
次に動作について説明する。
図2は、実施の形態1における複数の装置と複数の装置の構成または組み合わせに応じて実行可能なプログラムであることを確認するための誤動作防止装置と他装置の動作を示すフローチャートである。
Next, the operation will be described.
FIG. 2 is a flowchart showing the operation of the malfunction preventing apparatus and other apparatuses for confirming that the program is executable according to the configuration or combination of the plurality of apparatuses and the plurality of apparatuses in the first embodiment.
ステップS101において、誤動作防止装置100と他装置101、102、103とが各々プログラムの実行を開始する前に誤動作防止装置100の装置情報抽出要求部1は、他装置101、102、103に対して装置の種別、接続順番、型番、ハードウェアバージョンなどの装置情報を要求する。
また、この時、誤動作防止装置100は、他装置101、102、103他装置の接続順番または、接続されている装置の数を確認する。この接続順番と接続されている装置の数については、図1の装置構成ID生成部にて生成される装置構成IDに利用してもよい。
In step S101, before the
At this time, the
ステップS102において装置情報抽出要求部1からの指示を受け取った他装置101、102、103の要求受付部6は、装置情報抽出部3bに、装置情報記憶部2bに格納されている他装置の種別や型番、ハードウェアバージョンといった装置情報を抽出するよう指示し、装置情報を得る。
他装置の種別とは、他装置の機能を意味するものであり、例えば装置内のCPUや通信機能、データ表示機能、データ管理機能が該当する。
要求受付部6は、抽出した装置情報を誤動作防止装置100の装置情報抽出要求部1に返す。
Upon receiving the instruction from the device information
The type of the other device means a function of the other device, and corresponds to, for example, a CPU, a communication function, a data display function, and a data management function in the device.
The request reception unit 6 returns the extracted device information to the device information
ステップS103において、装置構成ID生成部7は、装置情報抽出要求部1にある要求受付部6より受け取った装置情報と、装置情報抽出部3aに要求して得た、装置情報記憶部2aに格納されている誤動作防止装置100の装置情報とから、他装置の接続順番と装置数などの情報を利用して装置構成IDを生成する。装置構成IDの生成方法には様々な方法が考えられる。装置の種別には、あらかじめ識別情報を割り当てておくこととし、装置情報記憶部2a、2bにはこの識別情報が格納されていることとしてもよい。装置構成IDは、接続されている装置の数と装置の種別に割り当てられている識別情報によって示した装置の接続順番と装置の型番をつなぎ合わせてもよい。要は誤動作防止装置100だけではなく、他装置101、102、103に一部または全ての装置情報を用いて装置構成IDを生成することで、正常動作が確認できた複数装置とその各々がもつ複数プログラム情報を管理し、接続されている装置の変更があったことを認知できるようにすることである。
In step S103, the device configuration
ステップS104において、実行可否判断情報生成部8は、他装置101、102、103の要求受付部6に対して他装置101、102、103各々のプログラムのダイジェストの生成を要求する。
ステップ105において、要求を受けた要求受付部6はプログラムダイジェスト生成部5bに対してプログラムのダイジェスト生成を指示する。プログラムダイジェスト生成部5bは、プログラム記憶部4bに格納されているプログラムから一方向性関数を用いてプログラムのダイジェスト(ハッシュ値)を生成し、生成したプログラムのダイジェストを要求受付部6に返す。
In step S <b> 104, the executability determination information generation unit 8 requests the request reception unit 6 of the
In
ステップS106において、実行可否判断生成部8は、要求受付部6に返された他装置101、102、103各々プログラムのダイジェストと、プログラム記憶部4aに格納されたプログラムからプログラムダイジェスト生成部5aが生成したプログラムダイジェストと、装置構成ID生成部7が生成した装置構成IDとを用いて実行可否判断情報を一方向性関数を用いて生成する。
誤動作防止装置100だけではなく、他装置101、102、103に一部または全ての装置情報を用いて実行可否判断情報を生成することで、正常動作が確認できた複数装置とその各々がもつ複数プログラム情報を管理し、接続されている装置の変更だけではなく各々のプログラムの変更があったことも認知できるようにすることである。
In step S106, the execution possibility determination generation unit 8 generates the program digest
In addition to the
ステップS107において、プログラム実行可否判断部10は、実行可否判断情報生成部8にて生成した実行可否判断情報と実行可能プログラム情報記憶部9に格納されている接続されている装置の組合せに応じて実行可能なプログラムの組合せを示す実行可能プログラム情報とを比較チェックして、一致する実行可能プログラム情報の有無を確認することで、実行可能なプログラムの組合せか否かを確認する。
なお、実行可能プログラム情報記憶部9に格納されている実行可能プログラム情報は、誤動作防止装置100の製品出荷時にあらかじめ搭載されるプログラムが固定の場合には、実行可否判断情報生成部8にて実施したアルゴリズムと同じ方法にて実行可能なプログラムの全ての組合せに対する実行可能プログラム情報を生成し、格納しておいても良い。また、製品出荷時にあらかじめ搭載されるプログラムが固定されておらず、ユーザがプログラムをインストールして設定する場合には、通信回線を用いて実行可能プログラム情報をダウンロードし、格納してもよい。
In step S <b> 107, the program
The executable program information stored in the executable program information storage unit 9 is executed by the executable determination information generating unit 8 when a program installed in advance at the time of product shipment of the
実行可能なプログラムの組み合わせである場合には、ステップS108において、プログラムの実行が可能であると判断し、プログラム実行可否判断部10が、プログラムの実行可否判断結果を実行可否判断結果通知部11に伝え、実行可否判断結果通知部11が、他装置101、102、103のプログラム実行部12b及び誤動作防止装置100のプログラム実行部12aに対して、プログラムの実行可否の判断結果を通知する。その判断結果に基づいて、他装置101、102、103のプログラム実行部12bまたは誤動作防止装置100のプログラム実行部12aは、プログラムを実行する。
If it is a combination of executable programs, it is determined in step S108 that the program can be executed, and the program execution
実行可能なプログラムの組み合わせでない場合には、ステップS109において、プログラムの実行が不可能であると判断し、プログラム実行可否判断部10が、プログラムの実行可否判断結果を実行可否判断結果通知部11に伝え、実行可否判断結果通知部11が、他装置101、102、103のプログラム実行部12b及び誤動作防止装置100のプログラム実行部12aに対して、プログラムの実行可否の判断結果を通知する。その判断結果に基づいて、他装置101、102、103のプログラム実行部12bまたは誤動作防止装置100のプログラム実行部12aは、プログラムの実行を中止する。
If it is not a combination of executable programs, it is determined in step S109 that the program cannot be executed, and the program execution
したがって、この実施の形態における誤動作防止装置は、誤動作防止装置100及び通信可能に接続された他の複数の装置101、102、103の種類が個別識別できる装置情報を用いて装置構成IDを生成する装置構成ID生成部7と、誤動作防止装置100及び通信可能に接続された他の複数の装置101、102、103が各々記憶するプログラムから一方向性関数を用いて生成されたプログラムダイジェストと装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成部8と、誤動作防止装置100と他装置101、102、103にて各々で動作するプログラムの組合せで実行可能な、プログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断部10を備えたので、複数の装置を構成する装置の種類情報の組み合わせで実行可能なプログラムの組合せかどうかを判断するので、プログラムの誤動作を防止することができる。
Therefore, the malfunction prevention apparatus in this embodiment generates the apparatus configuration ID using the apparatus information that can individually identify the types of the
実施の形態2.
実施の形態1では、複数の装置の組み合わせにおいて動作可能な実行可能プログラム情報に基づいてプログラムの誤動作を防止することとしていたが、本実施の形態では、組み合わせられた複数の装置のみでプログラムを実行可能としたい場合において、複数の装置の構成情報とプログラムのダイジェスト以外に各装置の個体識別情報も組合せて、組込み装置で実行可能なプログラムの組合せを実行前にチェックし、プログラムの誤動作を防止するための機能について説明する。
Embodiment 2. FIG.
In the first embodiment, the malfunction of the program is prevented based on the executable program information operable in a combination of a plurality of devices. However, in the present embodiment, the program is executed only by the plurality of combined devices. If you want to make it possible, in addition to the configuration information of multiple devices and the digest of the program, combine the individual identification information of each device to check the combination of programs that can be executed on the embedded device before execution to prevent program malfunction The function for this is demonstrated.
図3は実施の形態2における複数の装置と複数の装置の構成または組み合わせに応じて実行可能なプログラムであることを確認するための誤動作防止装置を示す図である。
基本的には実施の形態1と同じであるため、構成、動作の異なる部分についてのみ説明する。
FIG. 3 is a diagram showing a malfunction prevention device for confirming that the program is executable according to the configuration or combination of a plurality of devices and a plurality of devices in the second embodiment.
Since it is basically the same as that of the first embodiment, only different parts of the configuration and operation will be described.
本実施の形態の概要としては、実施の形態1と同様に、複数の装置の構成に応じて実行可能なプログラムの組合せをチェックする際に、誤動作防止装置100と他装置101、102、103のそれぞれの個体識別情報(例えば製造番号)も組合せて装置構成ID、実行可否判断情報、を生成し、プログラム実行可否判断部10にて判断した結果に基づいてプログラムの実行を制御するプログラムの誤動作防止装置である。
As an overview of the present embodiment, as in the first embodiment, when checking a combination of programs that can be executed according to the configuration of a plurality of devices, the
図3において、誤動作防止装置100の装置情報抽出部3aは、装置情報記憶部2aに格納されている情報を抽出と、装置個体識別情報記憶部13aに格納されている装置個体識別情報を抽出する。
装置個体識別情報記憶部13aは、誤動作防止装置100を個体識別するためのあらかじめ設定されている装置個体識別情報を格納するものであり、装置個体識別情報は例えば、製造番号やMACアドレスなど装置個体を識別できる情報であればなんでも良い。
In FIG. 3, the device
The device individual identification information storage unit 13a stores preset device individual identification information for individual identification of the
同様に、他装置101、102、103の装置情報抽出部3bは、装置情報記憶部2bに格納されている情報を抽出と、装置個体識別情報記憶部13bに格納されている装置個体識別情報を抽出する。
装置個体識別情報記憶部13bは、他装置101、102、103を個体識別するためのあらかじめ設定されている装置個体識別情報を格納するものであり、装置個体識別情報は例えば、製造番号やMACアドレスなど装置個体を識別できる情報であればなんでも良い。
Similarly, the device information extraction unit 3b of the
The device individual identification information storage unit 13b stores preset device individual identification information for individual identification of the
次に動作について説明する。
図4は、実施の形態2における複数の装置と複数の装置の構成または組み合わせに応じて実行可能なプログラムであることを確認するための誤動作防止装置と他装置の動作を示すフローチャートである。
ステップS201において、誤動作防止装置100と他装置101、102、103とが各々プログラムの実行を開始する前に誤動作防止装置100の装置情報抽出要求部1は、他装置101、102、103に対して装置の種別、接続順番、型番、ハードウェアバージョンなどの装置情報と、装置個体識別情報を要求する。
また、この時、誤動作防止装置100は、他装置101、102、103他装置の接続順番または、接続されている装置の数を確認する。この接続順番と接続されている装置の数については、図1の装置構成ID生成部にて生成される装置構成IDに利用してもよい。
Next, the operation will be described.
FIG. 4 is a flowchart showing operations of the malfunction prevention apparatus and other apparatuses for confirming that the program is executable according to the configuration or combination of the plurality of apparatuses and the plurality of apparatuses in the second embodiment.
In step S201, before the
At this time, the
ステップS202において装置情報抽出要求部1からの指示を受け取った他装置101、102、103の要求受付部6は、装置情報抽出部3bに、装置情報記憶部2bに格納されている他装置の種別や型番、ハードウェアバージョンといった装置情報を抽出するよう指示し、装置情報を得ると共に、装置個体識別情報記憶部13bに格納されている装置個体識別情報の抽出を指示し、装置個体識別情報を得る。
要求受付部6は、抽出した装置情報を誤動作防止装置100の装置情報抽出要求部1に返す。
Upon receiving the instruction from the device information
The request reception unit 6 returns the extracted device information to the device information
ステップS203において、装置構成ID生成部7は、装置情報抽出要求部1にある要求受付部6より受け取った装置情報及び装置個体識別情報と、装置情報抽出部3aに要求して得た、装置情報記憶部2aに格納されている誤動作防止装置100の装置情報と装置個体識別情報記憶部13aに格納されている装置個体識別情報とから、他装置の接続順番と装置数などの情報を利用して装置構成IDを生成する。
In step S203, the device configuration
ステップS204において、実行可否判断情報生成部8は、他装置101、102、103の要求受付部6に対して他装置101、102、103各々のプログラムのダイジェストの生成を要求する。
ステップS205において、要求を受けた要求受付部6はプログラムダイジェスト生成部5bに対してプログラムのダイジェスト生成を指示する。プログラムダイジェスト生成部5bは、プログラム記憶部4bに格納されているプログラムから一方向性関数を用いてプログラムのダイジェスト(ハッシュ値)を生成し、生成したプログラムのダイジェストを要求受付部6に返す。
In step S <b> 204, the executability determination information generation unit 8 requests the request reception unit 6 of the
In step S205, the request receiving unit 6 that has received the request instructs the program digest generating unit 5b to generate a digest of the program. The program digest generation unit 5b generates a program digest (hash value) from the program stored in the program storage unit 4b using a one-way function, and returns the generated program digest to the request reception unit 6.
ステップS206において、実行可否判断生成部8は、要求受付部6に返された他装置101、102、103各々プログラムのダイジェストと、プログラム記憶部4aに格納されたプログラムからプログラムダイジェスト生成部5aが生成したプログラムダイジェストと、装置構成ID生成部7が生成した装置構成IDとを用いて実行可否判断情報を一方向性関数を用いて生成する。
In step S206, the execution possibility determination generation unit 8 generates the program digest
ステップS207において、プログラム実行可否判断部10は、実行可否判断情報生成部8にて生成した実行可否判断情報と実行可能プログラム情報記憶部9に格納されている接続されている装置の組合せに応じて実行可能なプログラムの組合せを示す実行可能プログラム情報とを比較チェックして、一致する実行可能プログラム情報の有無を確認することで、実行可能なプログラムの組合せか否かを確認する。
なお、実行可能プログラム情報記憶部9に格納されている実行可能プログラム情報は、誤動作防止装置100の製品出荷時にあらかじめ搭載されるプログラムが固定の場合には、実行可否判断情報生成部8にて実施したアルゴリズムと同じ方法にて実行可能なプログラムの全ての組合せと、使用される装置個別情報とを組み合わせた実行可能プログラム情報を生成し、格納しておく。
In step S <b> 207, the program execution
The executable program information stored in the executable program information storage unit 9 is executed by the executable determination information generating unit 8 when a program installed in advance at the time of product shipment of the
実行可能なプログラムの組み合わせである場合には、ステップS208において、プログラムの実行が可能であると判断し、プログラム実行可否判断部10が、プログラムの実行可否判断結果を実行可否判断結果通知部11に伝え、実行可否判断結果通知部11が、他装置101、102、103のプログラム実行部12b及び誤動作防止装置100のプログラム実行部12aに対して、プログラムの実行可否の判断結果を通知する。その判断結果に基づいて、他装置101、102、103のプログラム実行部12bまたは誤動作防止装置100のプログラム実行部12aは、プログラムを実行する。
If it is a combination of executable programs, it is determined in step S208 that the program can be executed, and the program execution
実行可能なプログラムの組み合わせでない場合には、ステップS209において、プログラムの実行が不可能であると判断し、プログラム実行可否判断部10が、プログラムの実行可否判断結果を実行可否判断結果通知部11に伝え、実行可否判断結果通知部11が、他装置101、102、103のプログラム実行部12b及び誤動作防止装置100のプログラム実行部12aに対して、プログラムの実行可否の判断結果を通知する。その判断結果に基づいて、他装置101、102、103のプログラム実行部12bまたは誤動作防止装置100のプログラム実行部12aは、プログラムの実行を中止する。
If it is not a combination of executable programs, in step S209, it is determined that the program cannot be executed, and the program execution
したがって、この実施の形態における誤動作防止装置は、誤動作防止装置100及び通信可能に接続された他の複数の装置101、102、103の種類と装置固体とが識別できる装置情報を用いて装置構成IDを生成する装置構成ID生成部7と、誤動作防止装置100及び通信可能に接続された他の複数の装置101、102、103が各々記憶するプログラムから一方向性関数を用いて生成されたプログラムダイジェストと装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成部8と、誤動作防止装置100と他装置101、102、103にて各々で動作するプログラムの組合せで実行可能な、プログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断部10を備えたので、複数の装置を構成する装置の個体識別情報の組み合わせで実行可能なプログラムの組合せかどうかを判断するので、プログラムの誤動作を防止することができる。
Therefore, the malfunction prevention apparatus in this embodiment uses the apparatus configuration ID using the apparatus information that can identify the
実施の形態3.
本実施の形態では、実施の形態1または2における複数の装置の構成の組み合わせに応じて実行可能なプログラムの組合せをチェックするために利用する実行可能プログラム情報記憶部9に格納されている実行可能プログラム情報を更新するための機能について説明する。
図5は実施の形態3における誤動作防止装置100の構成図である。
以下構成について説明するが、実施の形態1または2と異なる部分についてのみ説明する。
Embodiment 3 FIG.
In the present embodiment, the executable program stored in the executable program information storage unit 9 used to check the combination of executable programs according to the combination of the configurations of the plurality of apparatuses in the first or second embodiment. A function for updating program information will be described.
FIG. 5 is a configuration diagram of the
The configuration will be described below, but only the parts different from the first or second embodiment will be described.
図5において、更新データ取得部14は誤動作防止装置100と他装置101、102、103の構成の組み合わせに応じて実行可能なプログラムの組合せである実行可能プログラム情報を更新するために必要な情報(更新データ)を取得する。
実行可能プログラム情報更新部15は、更新データ取得部14で取得した実行可能プログラム情報の更新に必要な情報(更新データ)を実行可能プログラム情報記憶部9に更新する。
In FIG. 5, the update data acquisition unit 14 is information necessary for updating executable program information that is a combination of programs that can be executed according to the combination of the configurations of the
The executable program
実行可能プログラム情報を更新する際の動作について説明する。
更新データ取得部14は、誤動作防止装置100へのユーザからの指示に従い実行可能プログラム情報の更新に必要な更新データを取得する。取得する方法としては、例えば、誤動作防止装置100にてメモリカードの読み込みができる場合はそのメモリカードから取得する方法や、ネットワークを経由して実行可能プログラム情報の更新に必要な更新データを取得する方法が考えられる。更新データ取得部14は、取得した更新データを実行可能プログラム情報更新部15に渡す。
An operation when updating executable program information will be described.
The update data acquisition unit 14 acquires update data necessary for updating executable program information in accordance with an instruction from the user to the
次に、実行可能プログラム情報更新部15は、受け取った更新データに基づいて、実行可能プログラム情報記憶部9に可能されている実行可能プログラム情報を更新する。
尚、実施の形態2の場合は、使用される誤動作防止装置100及び他装置101,102,103が限定されているため、実行可能プログラム情報更新部15は、それらの装置固体情報も含めて更新される実行可能プログラム情報を生成し、実行可能プログラム情報を更新する。
Next, the executable program
In the case of the second embodiment, since the
なお、実行可能プログラム情報記憶部9に実行可能プログラム情報を格納する際、実行可能プログラム情報のバージョンや作成日時の情報も格納しておくこととする。実行可能プログラム情報更新部15は、実行可能プログラム情報記憶部9の実行可能プログラム情報を更新する前に、実行可能プログラム情報記憶部9内の実行可能プログラムと更新データの作成日やバージョンとをチェックして、更新データの方が新しいことを確認してから更新することとし、更新データの方が古い場合は実行可能プログラム情報を更新できないこととする。
Note that when the executable program information is stored in the executable program information storage unit 9, the version of the executable program information and the creation date and time information are also stored. The executable program
したがって、この実施の形態における誤動作防止装置は、誤動作防止装置100と他装置101、102、103にて各々で動作するプログラムの組合せで実行可能な、プログラム実行可否判断情報の組合せを示す実行可能プログラム情報を格納する実行可能プログラム情報記憶部と、実行可能プログラム情報の更新するためのデータを取得する更新データ取得部と、取得された更新データを用いて更新された実行可能プログラム情報を生成し、実行可能プログラム情報記憶部に格納された実行可能プログラム情報を更新する実行可能プログラム情報更新部を備えたので、複数の装置を構成する装置の個体識別情報の組み合わせに対応する実行可能なプログラムの組合せを更新することができる。
Therefore, the malfunction preventing apparatus in this embodiment is an executable program that indicates a combination of program execution feasibility determination information that can be executed by a combination of programs that operate in the
1 装置情報抽出要求部
2a、2b 装置情報記憶部
3a、3b 装置情報抽出部
4a、4b プログラム記憶部
5a、5b プログラムダイジェスト生成部
6 要求受付部
7 装置構成ID生成部
8 実行可否判断情報生成部
9 実行可能プログラム情報記憶部
10 プログラム実行可否判断部
11 実行可否判断結果通知部
12a、12b プログラム実行部
13a、13b 装置個体識別情報記憶部
14 更新データ取得部
15 実行可能プログラム情報更新部
100 誤動作防止装置
101 他装置
102 他装置
103 他装置
DESCRIPTION OF
Claims (4)
前記各々の装置が記憶するプログラムから一方向性関数を用いて生成された前記プログラムダイジェストと前記装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成手段と、
前記各々の装置で動作するプログラムの組合せで実行可能なプログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて前記生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断手段と、
を備えたことを特徴とする誤動作防止装置。 A device configuration ID generating means for generating a device configuration ID using device information that can identify each type of the plurality of devices connected to each other in a communicable manner;
Executeability determination information generating means for generating executability determination information using the unidirectional function for the program digest generated from a program stored in each device using the unidirectional function and the device configuration ID; ,
It is determined whether there is a match with the generated execution determination information using executable program information indicating a combination of program execution determination information executable by a combination of programs operating on each of the devices. Program execution availability determination means for determining whether or not the program can be executed,
An apparatus for preventing malfunction.
を備えたことを特徴とする請求項1に記載の誤動作防止装置。 A device configuration ID generating means for generating a device configuration ID using device information capable of identifying each kind of the plurality of devices and other devices connected to be communicable with each other; and
The malfunction prevention apparatus according to claim 1, further comprising:
前記実行可能プログラム情報の更新するためのデータを取得する更新データ取得手段と、
前記取得された更新データを用いて更新された実行可能プログラム情報を生成し、実行可能プログラム情報記憶手段に格納された実行可能プログラム情報を更新する実行可能プログラム情報更新手段と、
を備えたことを特徴とする請求項1または2に記載の誤動作防止装置。 Executable program information storage means for storing executable program information according to claim 1;
Update data acquisition means for acquiring data for updating the executable program information;
Executable program information updating means for generating executable program information updated using the acquired update data and updating executable program information stored in the executable program information storage means;
The malfunction prevention apparatus according to claim 1 or 2, further comprising:
前記各々の装置が記憶するプログラムから一方向性関数を用いて生成された前記プログラムダイジェストと前記装置構成IDとを一方向性関数を用いて実行可否判断情報を生成する実行可否判断情報生成ステップと、
前記各々の装置で動作するプログラムの組合せで実行可能なプログラム実行可否判断情報の組合せを示す実行可能プログラム情報を用いて前記生成された実行可否判断情報に一致するものがあるか否かを判断することでプログラム実行可否判断を行うプログラム実行可否判断ステップと、
を有する誤動作防止方法。 A device configuration ID generating step for generating a device configuration ID using device information that can identify each type of the plurality of devices connected to each other in a communicable manner;
An execution possibility determination information generating step for generating execution determination information using the one-way function for the program digest generated from the program stored in each of the apparatuses using the one-way function and the device configuration ID; ,
It is determined whether there is a match with the generated execution determination information using executable program information indicating a combination of program execution determination information executable by a combination of programs operating on each of the devices. A program execution availability determination step for determining whether or not the program can be executed,
A method for preventing malfunction .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012109015A JP5835090B2 (en) | 2012-05-11 | 2012-05-11 | Malfunction prevention device for plural devices and malfunction prevention method for plural devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012109015A JP5835090B2 (en) | 2012-05-11 | 2012-05-11 | Malfunction prevention device for plural devices and malfunction prevention method for plural devices |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013235525A JP2013235525A (en) | 2013-11-21 |
JP5835090B2 true JP5835090B2 (en) | 2015-12-24 |
Family
ID=49761578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012109015A Expired - Fee Related JP5835090B2 (en) | 2012-05-11 | 2012-05-11 | Malfunction prevention device for plural devices and malfunction prevention method for plural devices |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5835090B2 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4676724B2 (en) * | 2003-08-12 | 2011-04-27 | 株式会社リコー | Information processing apparatus, information processing method, information processing program, and recording medium |
-
2012
- 2012-05-11 JP JP2012109015A patent/JP5835090B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013235525A (en) | 2013-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10397212B2 (en) | Information device, data processing system, data processing method, and non-transitory storage medium for executing content upon authentication | |
TWI380216B (en) | System and method for automated operating system installation | |
JP2011070674A5 (en) | ||
US20160360059A1 (en) | Management system, information processing apparatus, and non-transitory computer-readable medium | |
US20220004379A1 (en) | System and method for secure peer deployment of software to networked devices | |
JP6127719B2 (en) | Information processing system, information processing apparatus, license management method, and program | |
US8266178B2 (en) | Management apparatus, information processing apparatus, and method therefor | |
WO2018134937A1 (en) | IoT DATA COLLECTION SYSTEM, IoT DATA COLLECTION METHOD, MANAGEMENT DEVICE, MANAGEMENT PROGRAM, AGENT DEVICE, AND AGENT PROGRAM | |
JP2013239098A (en) | System, device, and program for processing information | |
JP2020086469A (en) | Information processing apparatus and control method thereof, and program | |
US10922387B2 (en) | Method and control system for controlling an execution of a software application on an execution platform | |
JP5835090B2 (en) | Malfunction prevention device for plural devices and malfunction prevention method for plural devices | |
JP6390696B2 (en) | License information management apparatus, license information management method, and program | |
JP2007316938A (en) | License management program, method for controlling use of software, license check program, and license check setup program | |
JP6065791B2 (en) | Control program and information processing terminal | |
JP5659926B2 (en) | Computer system and operating system startup method | |
JP7151419B2 (en) | Alternate Server, Method and Program | |
JP2011145827A (en) | Virtual bus system and device management method | |
JP2010049643A (en) | Information processing system, information processing method, and program | |
CN111666556A (en) | Device installation system, device installation method, and electronic device | |
JP2008310395A (en) | Information collection system, method of collecting log information, removable medium, and removable medium control program | |
JP6617551B2 (en) | SETTING VALUE MANAGEMENT DEVICE, COMPUTER DEVICE, METHOD, AND PROGRAM | |
JP6370231B2 (en) | Software updating apparatus, method and program | |
JP7341376B2 (en) | Information processing device, information processing method, and information processing program | |
JP6379688B2 (en) | Mobile communication terminal, server, information processing system, information processing method, and SIM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20140327 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140930 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150430 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150519 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150527 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151006 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151019 |
|
LAPS | Cancellation because of no payment of annual fees |