JP2018136811A - Control system - Google Patents
Control system Download PDFInfo
- Publication number
- JP2018136811A JP2018136811A JP2017031708A JP2017031708A JP2018136811A JP 2018136811 A JP2018136811 A JP 2018136811A JP 2017031708 A JP2017031708 A JP 2017031708A JP 2017031708 A JP2017031708 A JP 2017031708A JP 2018136811 A JP2018136811 A JP 2018136811A
- Authority
- JP
- Japan
- Prior art keywords
- program
- key
- unit
- security key
- previous
- 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
Links
- 238000012795 verification Methods 0.000 claims description 22
- 230000004048 modification Effects 0.000 claims description 12
- 238000012986 modification Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 abstract description 20
- 241000700605 Viruses Species 0.000 abstract description 6
- 230000007850 degeneration Effects 0.000 abstract 1
- 230000015654 memory Effects 0.000 description 16
- 238000000034 method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000009385 viral infection Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
Images
Landscapes
- Testing And Monitoring For Control Systems (AREA)
Abstract
Description
この発明は、プラントを制御するための制御装置を有する制御システムにおいてプログラムの改竄を防止するための技術に関するものである。 The present invention relates to a technique for preventing falsification of a program in a control system having a control device for controlling a plant.
従来、制御システムは、プラントを制御するためのプログラムを実行する制御装置と、そのプログラムを作成して制御装置に転送するエンジニアリング装置によって構成される。一般的に、エンジニアリング装置からプログラムを転送する際には、あらかじめエンジニアリング装置に設定されたパスワード等により認証を行い、正しく認証された場合のみ転送を許可することによりプログラムの改竄の防止を行っている。他にもプログラムの改竄を防止する手法として、エンジニアリング装置から制御装置にプログラムを転送する際に、プログラムからダイジェストコードを作成し、記憶装置から読み出した前回転送したプログラムのダイジェストコードと比較して一致しなければ不正な変更と判断して転送を中止する手法が提案されている(例えば、特許文献1参照)。 Conventionally, a control system includes a control device that executes a program for controlling a plant, and an engineering device that creates the program and transfers the program to the control device. Generally, when a program is transferred from an engineering device, authentication is performed using a password set in the engineering device in advance, and the program is prevented from being falsified by permitting the transfer only when it is correctly authenticated. . Another method to prevent falsification of the program is to create a digest code from the program when transferring the program from the engineering device to the control device and compare it with the digest code of the previously transferred program read from the storage device. If not done, a method is proposed in which the transfer is judged to be an unauthorized change (see, for example, Patent Document 1).
近年、制御システムに対するサイバー攻撃の事例が発生しており、制御システムに対するセキュリティの要求が高まってきている。通常、制御システムにおける制御装置はインターネットには直接接続されず、制御システム内に閉じた制御ネットワークやローカルネットワークに接続されるのみのため、インターネット経由でのコンピュータウィルス感染の可能性は低い。しかし、USBメモリなどの電子媒体経由でのウィルス感染の可能性があり、他にも第三者によってエンジニアリング装置経由でプログラムを改竄される等が考えられる。これらによってプログラムを改竄されると、プラント全体に甚大な問題を引き起こしかねないため対策が必要である。 In recent years, cyber attacks on control systems have occurred, and security requirements for control systems are increasing. Usually, the control device in the control system is not directly connected to the Internet, but is only connected to a control network or a local network closed in the control system, so that the possibility of computer virus infection via the Internet is low. However, there is a possibility of virus infection via an electronic medium such as a USB memory, and it is also conceivable that a program is altered by a third party via an engineering device. If the program is altered by these, countermeasures are necessary because it can cause enormous problems for the entire plant.
特許文献1で提案されている手法は、エンジニアリング装置から制御装置にプログラムを転送する際に、プログラムをチェックして不正な変更と判断した場合に制御装置への転送を中止するものである。これは、一旦エンジニアリング装置に保存したプログラムが不正に変更されていないかをチェックするものである。コンピュータウィルスの場合はエンジニアリング装置を介さずにプログラムを改竄するため、この方法では制御装置に格納されたプログラムに対して改竄を検知したり、防止したりすることはできず、改竄された場合にはプラント全体への影響を抑えることはできない。 The technique proposed in Patent Document 1 is to stop the transfer to the control apparatus when the program is transferred from the engineering apparatus to the control apparatus and the program is checked to determine that the change is illegal. This is to check whether the program once stored in the engineering device has been illegally changed. In the case of a computer virus, the program is tampered without going through the engineering device, so this method cannot detect or prevent tampering with the program stored in the control device. Cannot reduce the impact on the entire plant.
この発明は上記のような課題を解決するためになされたものであり、コンピュータウィルスや第三者によるプログラムの改竄防止と、改竄されてもプラントに対する影響を最小限に抑えることを可能とする制御システムを得ることを目的とする。 The present invention has been made in order to solve the above-described problems, and prevents the computer virus or a third party from falsifying the program, and the control capable of minimizing the influence on the plant even if falsified. The purpose is to obtain a system.
この発明に係る制御システムは、
プラントを制御するためのプログラムを作成するエンジニアリング装置とこのエンジニアリング装置から転送された前記プログラムを実行する制御装置を備えた制御システムであって、
前記制御装置は、
前記エンジニアリング装置から転送された前記プログラムから一意に決まるハッシュ処理されたハッシュ値、あるいは前記エンジニアリング装置からの前記プログラムの初回送信時にユーザによって与えられたパスワード、であるセキュリティキーを算出するキー算出部、
前回のプログラムの実行により算出した前記セキュリティキーを記憶する前回キー記憶部、
今回のプログラムの実行により算出した前記セキュリティキーと、前回キー記憶部で記憶している前回のプログラムの実行時に算出した前記セキュリティキーと、を比較照合するキー照合部、を有し、
前記キー算出部で算出した前回のセキュリティキーがある場合においては、前記キー照合部で比較照合し、比較照合した結果が一致した場合には前記プログラムを実行し、比較照合した結果が不一致の場合には前記プログラムを実行するか否かを予め定められた条件に従って選択し、
前記キー算出部で算出した前回のセキュリティキーがない場合においては、前記キー照合部で比較照合せず、前記プログラムを実行するものである。
The control system according to the present invention includes:
A control system comprising an engineering device for creating a program for controlling a plant and a control device for executing the program transferred from the engineering device,
The controller is
A key calculation unit that calculates a security key that is a hash value that is uniquely hashed from the program transferred from the engineering device, or a password that is given by a user when the program is first transmitted from the engineering device;
A previous key storage unit for storing the security key calculated by executing the previous program;
A key verification unit that compares and collates the security key calculated by executing the current program and the security key calculated when the previous program stored in the previous key storage unit;
If there is a previous security key calculated by the key calculation unit, the key verification unit performs comparison and verification, and if the comparison and verification result matches, the program is executed, and the comparison and verification result does not match To select whether to execute the program according to a predetermined condition,
When there is no previous security key calculated by the key calculation unit, the key verification unit does not perform comparison verification and executes the program.
この発明によれば、プラントを制御するための制御装置を有する制御システムにおいてコンピュータウィルスや第三者によるプログラムの改竄防止と、改竄されてもプラントに対する影響を最小限に抑えることを可能とする制御システムを提供することができる。 According to the present invention, in a control system having a control device for controlling a plant, control of a computer virus or a program by a third party can be prevented, and the control that can minimize the influence on the plant even if tampered. A system can be provided.
実施の形態1.
以下、この発明の実施の形態1を図1に基づいて説明する。
図1は、この発明の実施の形態1による改竄防止機能付き制御装置を含む制御システムのブロック図である。
Embodiment 1 FIG.
A first embodiment of the present invention will be described below with reference to FIG.
FIG. 1 is a block diagram of a control system including a control device with a falsification preventing function according to Embodiment 1 of the present invention.
制御用プログラムを作成するエンジニアリング装置101は制御用プログラムを実行する制御装置201と通信ケーブル301で接続されている。エンジニアリング装置101は、ラダー言語を使用して制御プログラムを作成するプログラムエディタ102、作成したプログラムを機械語コードに変換するコンパイラ103、制御装置201を動作させるための制御用パラメータ105と機械語コードに変換した後のプログラムであるコード化プログラム104を制御装置に送信する送信部106を有している。なお、送信動作は、エンジニアリング装置101が有するプロセッサとメモリにより、このプロセッサがこのメモリに記憶されたプログラムを実行することにより実現される(図2参照)。
An
制御装置201はエンジニアリング装置101から送信されたプログラムと制御用パラメータを受信するための受信部202、受信したプログラムと制御用パラメータを保管し
ておく格納部203、送信されたプログラムから一意に決まるセキュリティキー205(ここで、セキュリティキーとは、プログラム保護のために与えられた原文を基にハッシュ処理されたハッシュ値であって、不可逆な一方向の関数処理を含むものである。なお、ハッシュ処理とは、与えられた原文から固定長の疑似乱数を生成する演算処理の手法である。この演算処理の手法は通常、ハッシュ関数、あるいは要約関数などと呼ばれる)を算出するキー算出部204、前回実行したプログラムのセキュリティキーである前回セキュリティキー207を記憶するための前回キー記憶部206、キー算出部204により算出したセキュリティキー205と前回記憶した前回セキュリティキー207を比較照合するためのキー照合部208を有している。
The
ユーザは前記エンジニアリング装置101のプログラムエディタ102にて制御用のプログラムを作成し、前記制御装置201を動作させるための制御用パラメータ105を登録する。作成したプログラムは、コンパイラ103により機械語コードに変換されたコード化プログラム104に変更され、制御用パラメータ105とともに送信部106により制御装置201に送信される。前記制御装置201は前記エンジニアリング装置101から送信されたコード化されたプログラムと制御用パラメータを受信して格納部203に格納する。
A user creates a control program in the
その後は、図3のフローチャートに示すとおりの動作を行う。
図3のフローチャートに示す制御装置201の動作について詳しく説明する。ステップS201で制御装置はコード化プログラム等を格納している格納部203を参照し、ステップS202で格納されたプログラムについてキー算出部204で当該プログラムのセキュリティキー205を算出する。このセキュリティキー205は、例えばプログラムのサイズや命令数などを使用してハッシュ処理を施し、プログラム(のみ)から一意に決まる値とする。また、エンジニアリング装置101から制御装置201に対してコード化プログラムと制御用パラメータを初回送信時に、ユーザがパスワードを付与する方法もある。この場合はパスワードをセキュリティキー205として使用することが可能である。
Thereafter, the operation as shown in the flowchart of FIG. 3 is performed.
The operation of the
次にステップS203で、前回キー記憶部206にて前回実行時のセキュリティキーである前回セキュリティキー207を参照する。前回キーが未登録であれば今回が初回実行とみなし、そのままプログラムを実行し、今回算出したセキュリティキーを前回キー記憶部206にて記憶する(ステップS205〜S206)。ステップS203で前回キーが登録されていた場合は、今回算出したセキュリティキー205と前回キー記憶部206で記憶した前回セキュリティキー207をキー照合部208で比較照合し、一致した場合はプログラムを実行する。不一致の場合はプログラムを実行しない(ステップS203〜S2
04、S207参照)。
In step S203, the previous
04, S207).
これはユーザまたは第三者が、エンジニアリング装置を使用してプログラムを改造した場合の動作であるが、インターネット経由でコンピュータウィルス等により改竄された場合も図3のフローチャートに沿って動作することで、改竄された不正なプログラムの実行を防止することが可能である。また、プログラムだけでなく制御用パラメータについても、同様にセキュリティキーを算出、前回実行時と比較することで制御用パラメータの改竄防止にも応用できる。 This is the operation when the user or a third party modifies the program using the engineering device, but also when it is altered by a computer virus or the like via the Internet, it operates according to the flowchart of FIG. It is possible to prevent execution of a falsified illegal program. Further, not only the program but also the control parameter can be applied to prevent falsification of the control parameter by calculating the security key in the same manner and comparing it with the previous execution.
実施の形態1によると、制御装置201はプログラムから一意に決まるセキュリティキー205を算出するキー算出部204を備え、これにより算出したセキュリティキー205と前回キー記憶部206にて記憶済みの前回実行プログラムの前回セキュリティキー207とをキー照合部208により比較照合し、不一致の場合はプログラムを実行しないため、第三者やコンピュータウィルス等により不正に改造されたプログラムの実行を防止することができる。なお、制御装置201の各構成要素である受信部202、格納部203、キー算出部204、セキュリティキー205、前回キー記憶部206、前回セキュリティキー207、キー照合部208のそれぞれの動作は、この制御装置201が有するプロセッサとメモリを用いて、当該プロセッサが当該メモリに記憶されたプログラムを実行することにより実現される(図2参照)。
According to the first embodiment, the
実施の形態2.
以下、この発明の実施の形態2を図4に基づいて説明する。
図4は、この発明の実施の形態2による制御システムを示すブロック図である。
Embodiment 2. FIG.
The second embodiment of the present invention will be described below with reference to FIG.
FIG. 4 is a block diagram showing a control system according to Embodiment 2 of the present invention.
図4では、図1と異なり、制御装置がプログラム実行中に改竄を検知した場合に、重故障または軽故障動作させるRAS(Reliability Availability and Serviceabilityの略
)機能を有するRAS部209をさらに備えている。その他の構成要素は実施の形態1で説明したものと同様である。また、エンジニアリング装置101は、制御装置がプログラム改竄を検知した場合に、重故障動作または軽故障動作のうち、どちらの動作をさせるかを設定する重軽故障パラメータ107を有している。この重軽故障パラメータは、各プログラム部品単位(ここで、プログラム部品とは、プログラム(全体)を機能別に小サイズ化したプログラムのことであって、例えば、コンピュータの機能を記憶機能、演算機能、制御機能、入出力機能に分け、機能ごとにまとめた場合の各プログラムのことを意味する)で設定することにより、改竄部位に応じた動作設定が可能である。
Unlike FIG. 1, FIG. 4 further includes a
実施の形態1では、実行しようとしているプログラムから算出したセキュリティキー205と記憶済みの前回セキュリティキー207を比較照合して、不一致の場合は実行しないようにしている。
In the first embodiment, the
しかし、プラント運用開始後に制御装置201が停止するとプラント全体に対する影響が大きいため、プログラム実行中に改竄を検知してもシステムへの影響が小さい場合(ここで、影響の大小については、その機能を停止した場合に制御装置全体としての動作が保証できるか否かにより判断する。例えば、一部の通信機能のみ停止させれば他の機能は通常通り動作するのであれば、影響は小さいとして軽故障とする等。)は、改竄部位のプログラム以外を継続実行できるようにすることが望ましい。そのため改竄を検知した際の動作を、プログラム部品単位でユーザにて設定できるようにする。
However, if the
制御装置201は設定した制御用パラメータに応じて動作させるためのRAS機能を有するRAS部209を備え、重故障設定したプログラム部品で改竄を検知した場合は、制御装置全体のプログラムを停止、軽故障設定したプログラム部品で改竄を検知した場合は、そのプログラム部品のみ停止して他のプログラムは実行することでシステムを縮退運転させる。
The
実施の形態2によると、エンジニアリング装置101は改竄部位に応じて重故障/軽故障を設定する重軽故障パラメータ107を有し、制御装置201はその設定に応じて動作させるRAS機能を有するRAS部209を備えている。これにより制御装置201がプログラム実行中に改竄を検知した場合でも、制御装置201を停止させずに機能縮退して継続運転すること(軽故障動作)が可能となるため、プラントへの影響を最小限に抑えることができる。なお、制御装置201の上記構成要素であるRAS部209の動作は、この制御装置201が有するプロセッサとメモリを用いて、当該プロセッサが当該メモリに記憶されたプログラムを実行することにより実現される(図2参照)。
According to the second embodiment, the
実施の形態3.
以下、この発明の実施の形態3を図5に基づいて説明する。
図5は、この発明の実施の形態3による制御システムを示すブロック図である。図5にお
いて、制御装置201においてプログラムの改竄を検知したことを他のプログラムに通知する通知部210を備えている点が図4に示したものと異なる。他は図4と同じであるので詳しい説明は省略する。
Embodiment 3 FIG.
The third embodiment of the present invention will be described below with reference to FIG.
FIG. 5 is a block diagram showing a control system according to Embodiment 3 of the present invention. 5 is different from that shown in FIG. 4 in that a
実施の形態2では、プログラムの改竄を検知した場合に重故障または軽故障動作を行い、軽故障となった場合は改竄を検知したプログラムのみの実行を停止する。一般的に制御装置のプログラムは複数のプログラム部品から構成され、改竄されたプログラム部品のみを停止した場合に、他のプログラム部品での制御に影響を与える可能性がある。 In the second embodiment, when a falsification of a program is detected, a major or minor fault operation is performed, and when a minor fault occurs, execution of only the program that has detected the falsification is stopped. In general, the program of the control device is composed of a plurality of program parts, and when only the altered program part is stopped, there is a possibility of affecting the control by other program parts.
そこで、あるプログラム部品で改竄を検知した場合には、内部メモリにその情報を格納して、他のプログラム部品に対して改竄を検知した旨を通知する通知部210を備える。これにより他のプログラム部品では通知された情報を参照することで、改竄されたプログラム部品の停止時に影響を受ける機能を連動して停止させる等の動作が可能となる。
Therefore, when a falsification is detected in a certain program part, the information is stored in the internal memory, and a
実施の形態3によると、制御装置201においてプログラム部品の改竄を検知したことを他のプログラム部品に通知する通知部210を備えている。これにより、他のプログラム部品でも影響のある機能を連動して停止させる等が可能となるため、改竄を検知した場合でも、より安全に縮退運転ができる。なお、制御装置201の上記構成要素である通知部210の動作は、この制御装置201が有するプロセッサとメモリを用いて、当該プロセッサが当該メモリに記憶されたプログラムを実行することにより実現される(図2参照)。
According to the third embodiment, the
実施の形態4.
以下、この発明の実施の形態4を図6に基づいて説明する。
図6は、この発明の実施の形態4による制御システムを示すブロック図である。図6において、図5に示したものと符号が同一のものは図5と同内容であるので、ここでは詳しい説明を省略する。
Embodiment 4 FIG.
A fourth embodiment of the present invention will be described below with reference to FIG.
FIG. 6 is a block diagram showing a control system according to Embodiment 4 of the present invention. In FIG. 6, the same reference numerals as those shown in FIG. 5 have the same contents as those in FIG.
図6では、エンジニアリング装置101は、制御装置201と同様に、プログラムからセキュリティキーを算出するキー算出部109を有している。エンジニアリング装置101は、改造前プログラム108からキー算出部109でセキュリティキー110を算出し、自動的に制御用パラメータとして登録して、送信部106で改造後のコード化プログラム104a(改造後のコード化プログラムは略して改造後プログラムとも呼ぶ)とともに制御装置201に送信する。
In FIG. 6, the
プログラムを改造する場合、それが正規の改造であることを制御装置に認識させる必要がある。そこで、エンジニアリング装置101にも、制御装置201と同様にプログラムからセキュティキーを算出するキー算出部109を備える。
When modifying a program, it is necessary to make the controller recognize that it is a legitimate modification. Therefore, the
エンジニアリング装置101にて、改造前プログラム108から算出したセキュリティキー110を制御用パラメータとして登録し、改造後のプログラムを転送する際に、この制御用パラメータも制御装置201に転送するようにする。制御装置201は受信部202により改造後のコード化プログラム104aと、改造前プログラム108から算出したセキュリティキー110を受信する。
In the
前回キー記憶部206により記憶している前回セキュリティキー207と、エンジニアリング装置101から転送されたセキュリティキー110をキー照合部208により比較照合し、一致する場合は正規な改造と判断し、改造後のコード化プログラム104aを採用する。不一致の場合は不正な改造と判断し、転送されたプログラムは採用しないものとする。
The
実施の形態4によると、エンジニアリング装置101にて改造前プログラム108から算出したセキュリティキー110により認証を行うことで、不正な改造と正規な改造を区別することができる。また、ユーザはセキュリティ認証するのにパスワード等を記憶しておく必要はないため、パスワード管理等の手間もかからない。なお、キー算出部109の動作は、エンジニアリング装置101が有するプロセッサとメモリにより、当該プロセッサが当該メモリに記憶されたプログラムを実行することにより実現される(図2参照)。
According to the fourth embodiment, by performing authentication using the
実施の形態5.
以下、この発明の実施の形態5を図7に基づいて説明する。
図7は、この発明の実施の形態5による制御システムを示すブロック図である。図7では、制御装置201において、前回実行したプログラムをバックアップとして保持する保持部211を備えている点が、図6に示したものと異なる。
Embodiment 5. FIG.
The fifth embodiment of the present invention will be described below with reference to FIG.
FIG. 7 is a block diagram showing a control system according to Embodiment 5 of the present invention. 7 is different from that shown in FIG. 6 in that the
実施の形態2では、プログラムの改竄を検知した場合に重故障または軽故障動作を行うが、復旧させるためには改竄されたプログラムを削除して、正しいプログラムをエンジニアリング装置から転送し直す必要があり、その際は一般的には制御装置201のリセット/ラン操作を伴うため設備を停止せざるを得ない。
In the second embodiment, when a falsification of a program is detected, a major or minor fault operation is performed. However, in order to recover, it is necessary to delete the falsified program and transfer the correct program from the engineering device again. In that case, since the reset / run operation of the
そこで、実施の形態5では、制御装置201において、前回実行したプログラムをバックアップとして保持する保持部211を備える。プログラムを実行した際に改竄を検知した場合には、保持したプログラムにてセキュリティキーの算出と、記憶済みのセキュリティキーとの照合を行い、一致する場合は保持したプログラムで実行するものとする。
Therefore, in the fifth embodiment, the
実施の形態5によると、前回実行したプログラムをバックアップとして保持する保持部211を備え、実行しようとしていたプログラムの改竄を検知した場合には、バックアップしたプログラムでの実行を可能とすることで、プログラムの改竄及びそれを復旧する際の設備停止が不要となり、プラント運用への影響を最小限にすることができる。なお、制御装置201の上記構成要素である保持部211の動作は、この制御装置201が有するプロセッサとメモリを用いて、当該プロセッサが当該メモリに記憶されたプログラムを実行することにより実現される(図2参照)。
According to the fifth embodiment, the
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。例えば、上記実施の形態1〜5においては、エンジニアリング装置101、あるいは制御装置201は、各1個のプロセッサとメモリを備えるものとして説明したが、これに限らず、複数のプロセッサあるいは複数のメモリを備え、これらが連携して上述の各動作を実行してもよい。
It should be noted that the present invention can be freely combined with each other within the scope of the invention, and each embodiment can be appropriately modified or omitted. For example, in the first to fifth embodiments, the
101 エンジニアリング装置、102 プログラムエディタ、103 コンパイラ、104 コード化プログラム、104a 改造後のコード化プログラム、105 制御用パラメータ、106 送信部、107 重軽故障パラメータ、108 改造前プログラム、201 制御装置、202 受信部、203 格納部、109、204 キー算出部、110、205 セキュリティキー、206 前回キー記憶部、207 前回セキュリティキー、208 キー照合部、209 RAS部、210 通知部、211 保持部、301 通信ケーブル
DESCRIPTION OF
Claims (5)
前記制御装置は、
前記エンジニアリング装置から転送された前記プログラムから一意に決まるハッシュ処理されたハッシュ値、あるいは前記エンジニアリング装置からの前記プログラムの初回送信時にユーザによって与えられたパスワード、であるセキュリティキーを算出するキー算出部、
前回のプログラムの実行により算出した前記セキュリティキーを記憶する前回キー記憶部、
今回のプログラムの実行により算出した前記セキュリティキーと、前回キー記憶部で記憶している前回のプログラムの実行時に算出した前記セキュリティキーと、を比較照合するキー照合部、を有し、
前記キー算出部で算出した前回のセキュリティキーがある場合においては、前記キー照合部で比較照合し、比較照合した結果が一致した場合には前記プログラムを実行し、比較照合した結果が不一致の場合には前記プログラムを実行するか否かを予め定められた条件に従って選択し、
前記キー算出部で算出した前回のセキュリティキーがない場合においては、前記キー照合部で比較照合せず、前記プログラムを実行することを特徴とする制御システム。 A control system comprising an engineering device for creating a program for controlling a plant and a control device for executing the program transferred from the engineering device,
The controller is
A key calculation unit that calculates a security key that is a hash value that is uniquely hashed from the program transferred from the engineering device, or a password that is given by a user when the program is first transmitted from the engineering device;
A previous key storage unit for storing the security key calculated by executing the previous program;
A key verification unit that compares and collates the security key calculated by executing the current program and the security key calculated when the previous program stored in the previous key storage unit;
If there is a previous security key calculated by the key calculation unit, the key verification unit performs comparison and verification, and if the comparison and verification result matches, the program is executed, and the comparison and verification result does not match To select whether to execute the program according to a predetermined condition,
When there is no previous security key calculated by the key calculation unit, the key verification unit executes the program without performing comparison verification.
前記制御装置は、前記プログラムの実行中に前記キー照合部の比較照合結果が不一致であることを検知した場合に、前記制御パラメータにより、前記プログラムを機能別に小サイズ化したプログラム部品ごとに当該プログラム部品の実行を停止するか継続するかを事前に設定し、この設定に応じて動作させるRAS機能を有するRAS部を備えたことを特徴とする請求項1に記載の制御システム。 The engineering device has a control parameter for setting whether to stop or continue the execution of the program when the comparison result of the key verification unit does not match,
When the control device detects that the comparison collation result of the key collation unit does not match during the execution of the program, the control device sets the program for each program component that is reduced in size according to function by the control parameter. 2. The control system according to claim 1, further comprising a RAS unit having a RAS function that sets in advance whether to stop or continue execution of a component and operates according to the setting.
前記プログラムから一意に決まるハッシュ処理されたハッシュ値であるセキュリティキーを算出するキー算出部を有し、前記プログラムによりキー算出部で算出したセキュリティキーを制御用パラメータとして登録し、前記プログラムから改造した改造後プログラムと共に前記制御装置に転送し、
前記制御装置は、
前記前回キー記憶部で記憶しているセキュリティキーと前記エンジニアリング装置から転送したセキュリティキーとを照合し、一致する場合には前記改造後プログラムを実行可能と判断することを特徴とする請求項1に記載の制御システム。 The engineering equipment is
A key calculation unit that calculates a security key that is a hash value that is uniquely hashed from the program is registered, the security key calculated by the key calculation unit by the program is registered as a control parameter, and the program is modified from the program Transfer to the control device together with the program after modification,
The controller is
The security key stored in the previous key storage unit and the security key transferred from the engineering device are collated, and if they match, it is determined that the modified program can be executed. The described control system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017031708A JP2018136811A (en) | 2017-02-23 | 2017-02-23 | Control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017031708A JP2018136811A (en) | 2017-02-23 | 2017-02-23 | Control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018136811A true JP2018136811A (en) | 2018-08-30 |
Family
ID=63366931
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017031708A Pending JP2018136811A (en) | 2017-02-23 | 2017-02-23 | Control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018136811A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7016837B2 (en) | 2019-06-20 | 2022-02-07 | オムロン株式会社 | Controller system |
JP7574367B2 (en) | 2019-06-27 | 2024-10-28 | キヤノン株式会社 | Information processing device, information processing method, and program |
-
2017
- 2017-02-23 JP JP2017031708A patent/JP2018136811A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7016837B2 (en) | 2019-06-20 | 2022-02-07 | オムロン株式会社 | Controller system |
JP7574367B2 (en) | 2019-06-27 | 2024-10-28 | キヤノン株式会社 | Information processing device, information processing method, and program |
US12316818B2 (en) | 2019-06-27 | 2025-05-27 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106775716B (en) | Trusted PLC (programmable logic controller) starting method based on measurement mechanism | |
US10963543B2 (en) | Secure communication between operating system and processes | |
CN108960830B (en) | Intelligent contract deployment method, device, equipment and storage medium | |
EP3270318B1 (en) | Dynamic security module terminal device and method for operating same | |
CN110276198B (en) | An embedded variable granularity control flow verification method and system based on probabilistic prediction | |
JP2019057167A (en) | Computer program, device and determining method | |
CN103500202A (en) | Security protection method and system for light-weight database | |
CN110502889B (en) | Login method, login device, computer readable storage medium and computer equipment | |
CN111143808B (en) | System security authentication method and device, computing equipment and storage medium | |
CN113226858A (en) | Information processing apparatus | |
US20200293666A1 (en) | Information processing apparatus, information processing method, and computer program product | |
US11574046B2 (en) | Protecting a software program against tampering | |
JP2018136811A (en) | Control system | |
CN108256351B (en) | File processing method and device, storage medium and terminal | |
CN119475308A (en) | A software protection system, method, storage medium, device and program product | |
Kopetz et al. | Dependability | |
US12340002B2 (en) | Monitoring range determination device, monitoring range determination method, and computer readable medium | |
CN117763578A (en) | Data tamper-proof system and method for financial audit | |
US20250013752A1 (en) | Method for detecting anomalies suggesting a manipulation during a secure starting operation of a software-controlled device | |
KR102036256B1 (en) | Android embedded system with enhanced security | |
CN116881944A (en) | Data processing method of application program, electronic equipment and storage medium | |
KR102086375B1 (en) | System and method for real time prevention and post recovery for malicious software | |
KR101885146B1 (en) | Method and apparatus for protecting an application | |
CN110597557B (en) | System information acquisition method, terminal and medium | |
CN108228219B (en) | Method and device for verifying BIOS validity during in-band refreshing of BIOS |