JP2017046268A - Communication device, transmission device, and reception device - Google Patents

Communication device, transmission device, and reception device Download PDF

Info

Publication number
JP2017046268A
JP2017046268A JP2015168751A JP2015168751A JP2017046268A JP 2017046268 A JP2017046268 A JP 2017046268A JP 2015168751 A JP2015168751 A JP 2015168751A JP 2015168751 A JP2015168751 A JP 2015168751A JP 2017046268 A JP2017046268 A JP 2017046268A
Authority
JP
Japan
Prior art keywords
communication
frame data
counter information
electronic signature
sequence number
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.)
Granted
Application number
JP2015168751A
Other languages
Japanese (ja)
Other versions
JP2017046268A5 (en
JP6480291B2 (en
Inventor
辰幸 大谷
Tatsuyuki Otani
辰幸 大谷
崇 小林
Takashi Kobayashi
崇 小林
俊樹 清水
Toshiki Shimizu
俊樹 清水
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2015168751A priority Critical patent/JP6480291B2/en
Publication of JP2017046268A publication Critical patent/JP2017046268A/en
Publication of JP2017046268A5 publication Critical patent/JP2017046268A5/ja
Application granted granted Critical
Publication of JP6480291B2 publication Critical patent/JP6480291B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a communication device that safely communicates data without impairing a real-time property in a control field.SOLUTION: A transmission port 12 of a transmission unit 4 in a transmission side communication device 2A transmits a communication frame data in which an encoded electronic signature including clocking counter information, a check code, a sequence number, and a random number is added to control communication data. An information extraction unit of a reception unit in a reception side communication device 2B decodes the electronic signature extracted from the communication frame data received by the reception port, and extracts the clocking counter information, check code, sequence number, and random number from the decoded electronic signature. A determination unit checks the extracted clocking counter information, check code, and sequence number, and permits a control device 3 to take in the control communication data if it determines that the communication frame data is normal.SELECTED DRAWING: Figure 3

Description

本発明は、例えば、プラント等の制御システムにおけるセキュアな制御通信を行うために好適な通信装置、送信装置及び受信装置に関する。   The present invention relates to a communication device, a transmission device, and a reception device suitable for performing secure control communication in a control system such as a plant.

近年、制御分野では、IoT(Internet Of Things)に代表される、情報と制御を融合したプラント制御ソリューションが世界的に注目されるようになっている。昨今では特にFA(Factory Automation)やPA(Process Automation)分野において、本プラント制御ソリューションの適用が拡大しつつある。   In recent years, in the control field, plant control solutions that fuse information and control, such as IoT (Internet Of Things), have been attracting worldwide attention. Nowadays, the application of this plant control solution is expanding especially in the field of FA (Factory Automation) and PA (Process Automation).

プラント制御ソリューションに用いられる技術は、プラント制御の稼動効率、及び生産効率を飛躍的に向上させると考えられる。一方で、情報系のネットワークを経由することで、プラント外部とプラント制御システムが従来以上に密接に結合するため、ネットワークにおいて新たなセキュリティホールの発生が懸念される。   The technology used for the plant control solution is considered to drastically improve the operation efficiency and the production efficiency of the plant control. On the other hand, since the outside of the plant and the plant control system are more closely coupled than before by passing through the information network, there is a concern that a new security hole may be generated in the network.

従来、情報処理分野では、悪意ある第三者からのセキュリティ攻撃に対して、AES(Advanced Encryption Standard)等に代表される暗号化技術を用いて財産となる情報を保護する技術が用いられていた。   Conventionally, in the information processing field, a technology that protects information as a property by using encryption technology represented by AES (Advanced Encryption Standard) or the like against a security attack from a malicious third party has been used. .

例えば、特許文献1には、通信装置間の認証方法として、計時情報に基づいて生成された乱数から共通鍵を使ってフレームを出力する方法が開示されている。   For example, Patent Literature 1 discloses a method for outputting a frame using a common key from a random number generated based on timekeeping information as an authentication method between communication devices.

特開2007−221204号公報JP 2007-221204 A

ところで、制御システムで用いられるネットワークには、刻々と変動する物理現象を数値化したプロセス入出力値が制御通信データとして伝送されることが大半であるため、情報処理システムとは異なり、データの秘匿が必ずしも要求されない。例えば、バルブの開閉情報は、データの秘匿性が高くない。一方、制御伝送では、各通信装置がリアルタイムでデータを送受信できることが必須である。   By the way, the network used in the control system mostly transmits process input / output values, which are quantified physical phenomena that change every moment, as control communication data. Is not necessarily required. For example, the valve opening / closing information is not highly confidential. On the other hand, in control transmission, it is essential that each communication device can transmit and receive data in real time.

しかし、特許文献1に開示された技術は、数学的に解読困難な形態に情報(乱数)をエンコード及びデコードすることでセキュリティを実現するため、計算機の処理に多くの時間を要する。その結果、特許文献1に開示されたような暗号化技術をリアルタイム性が重視される制御システムにそのまま流用することは困難であった。また、特許文献1に開示された技術では、攻撃者がデータフレームを取得してなりすましを行うような攻撃がされたとしても、特許文献1には有効な対策が開示されていなかった。   However, since the technology disclosed in Patent Document 1 realizes security by encoding and decoding information (random numbers) in a form that is difficult to decipher mathematically, it takes a lot of time for processing by a computer. As a result, it has been difficult to divert the encryption technology disclosed in Patent Document 1 as it is to a control system where real-time performance is important. Further, in the technique disclosed in Patent Document 1, even if an attacker makes an attack by acquiring a data frame and impersonating, an effective countermeasure is not disclosed in Patent Document 1.

本発明はこのような状況に鑑みて成されたものであり、リアルタイム性を損なうことなく安全にデータを通信することを目的とする。   The present invention has been made in view of such a situation, and an object thereof is to communicate data safely without impairing real-time performance.

本発明に係る通信装置は、電子署名生成部と送信ポートとを有する送信部と、受信ポートと情報抽出部と判定部とを有する受信部を備える。
送信部の電子署名生成部は、制御装置から受信する制御通信データに基づいて生成される第1のチェックコード、通信フレームデータの送信順を示す第1のシーケンス番号及び乱数を、それぞれ所定単位で分離し、所定の順序で並び替えたビット数列集合からなるブロックをエンコーダにより変換した電子署名を生成する。
送信ポートは、電子署名を制御通信データに付加した通信フレームデータを他の通信装置に送信する。
受信部の受信ポートは、他の通信装置から受信した通信フレームデータから電子署名を取り出す。
情報抽出部は、電子署名をデコーダにより逆変換したブロックから所定の順序とは逆順で第1のチェックコード、第1のシーケンス番号及び乱数を抽出する。
判定部は、抽出された第1のチェックコードと通信フレームデータの制御通信データから生成した第2のチェックコードを比較した結果と、抽出された第1のシーケンス番号と、前周期の通信フレームデータに付加された第2のシーケンス番号とを比較した結果とに基づいて、通信フレームデータを正常と判定した場合に、制御装置による制御通信データの取り込みを許可する。
A communication apparatus according to the present invention includes a transmission unit having an electronic signature generation unit and a transmission port, and a reception unit having a reception port, an information extraction unit, and a determination unit.
The electronic signature generation unit of the transmission unit includes a first check code generated based on control communication data received from the control device, a first sequence number indicating a transmission order of communication frame data, and a random number in predetermined units. An electronic signature is generated by converting a block composed of a set of bit sequences separated and rearranged in a predetermined order by an encoder.
The transmission port transmits communication frame data obtained by adding an electronic signature to control communication data to another communication device.
The reception port of the reception unit extracts an electronic signature from communication frame data received from another communication device.
The information extraction unit extracts the first check code, the first sequence number, and the random number in the reverse order from the predetermined order from the block obtained by reversely converting the electronic signature by the decoder.
The determination unit compares the extracted first check code with the second check code generated from the control communication data of the communication frame data, the extracted first sequence number, and the communication frame data of the previous period. When the communication frame data is determined to be normal based on the result of comparison with the second sequence number added to, the control device allows the control communication data to be captured.

本発明によれば、通信フレームデータに付加される電子署名には乱数が含まれており、受信部は通信フレームデータに対する改ざん等を速やかに検出することが可能である。このため、不正な通信フレームデータを検出した場合には、この通信フレームデータを破棄する等の対応により有効な制御通信データだけを取り込むことが可能となる。
上記した以外の課題、構成及び効果は、以下の実施の形態例の説明により明らかにされる。
According to the present invention, the electronic signature added to the communication frame data includes a random number, and the reception unit can quickly detect tampering with the communication frame data. For this reason, when invalid communication frame data is detected, only effective control communication data can be captured by taking measures such as discarding the communication frame data.
Problems, configurations, and effects other than those described above will be clarified by the following description of embodiments.

本発明の第1の実施の形態例に係る通信システムのシステム構成図である。1 is a system configuration diagram of a communication system according to a first exemplary embodiment of the present invention. 本発明の第1の実施の形態例に係る2つの通信装置の概略構成図である。It is a schematic block diagram of two communication apparatuses which concern on the 1st Example of this invention. 本発明の第1の実施の形態例に係る送信部の内部構成例を示すブロック図である。It is a block diagram which shows the internal structural example of the transmission part which concerns on the 1st Example of this invention. 本発明の第1の実施の形態例に係る通信フレームデータの構成図である。It is a block diagram of the communication frame data which concerns on the 1st Example of this invention. 本発明の第1の実施の形態例に係る送信部の各信号路における信号の流れを示すタイムチャートである。It is a time chart which shows the flow of the signal in each signal path of the transmission part which concerns on the 1st Example of this invention. 本発明の第1の実施の形態例に係る受信部の内部構成例を示すブロック図である。It is a block diagram which shows the internal structural example of the receiving part which concerns on the 1st Example of this invention. 本発明の第1の実施の形態例に係る認証判定回路の状態遷移の例を示す説明図である。It is explanatory drawing which shows the example of the state transition of the authentication determination circuit based on the 1st Example of this invention. 本発明の第2の実施の形態例に係る認証判定回路の状態遷移の例を示す説明図である。It is explanatory drawing which shows the example of the state transition of the authentication determination circuit based on the 2nd Example of this invention. 本発明の実施の形態の変形例に係る通信システムのシステム構成図である。It is a system configuration | structure figure of the communication system which concerns on the modification of embodiment of this invention.

以下、本発明を実施するための形態例について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。   DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments for carrying out the present invention will be described with reference to the accompanying drawings. In the present specification and drawings, components having substantially the same function or configuration are denoted by the same reference numerals, and redundant description is omitted.

[1.第1の実施の形態例]
図1は、通信システム1のシステム構成図である。
[1. First Embodiment]
FIG. 1 is a system configuration diagram of the communication system 1.

通信システム1は、ネットワークNに接続された複数の通信装置2A〜2Mを備える。通信装置2A〜2Mは、互いに通信することが可能である。図1の例では、通信装置2AがネットワークNを介して通信装置2Bに通信フレームデータを送信する様子と、通信装置2AがネットワークNを介して通信装置2Eから通信フレームデータを受信する様子が示されている。図1では、ネットワークNとしてリング型ネットワークの接続形態とした例を示すが、ネットワークNは他の接続形態としてもよい。   The communication system 1 includes a plurality of communication devices 2A to 2M connected to a network N. The communication devices 2A to 2M can communicate with each other. In the example of FIG. 1, the communication device 2A transmits communication frame data to the communication device 2B via the network N, and the communication device 2A receives communication frame data from the communication device 2E via the network N. Has been. Although FIG. 1 shows an example in which the network N is a ring network connection form, the network N may be another connection form.

図2は、2つの通信装置2A、2Bの概略構成図である。   FIG. 2 is a schematic configuration diagram of the two communication devices 2A and 2B.

通信装置2Aは、他の通信装置に対して通信フレームデータを送信したり、他の通信装置から通信フレームデータを受信したりする機能を有している。   The communication device 2A has a function of transmitting communication frame data to other communication devices and receiving communication frame data from other communication devices.

通信装置2Aは、制御装置3と、送信部4と、受信部5を備える。
通信装置2Aの制御装置3は、通信装置2Bに制御通信データを含む通信フレームデータを送信部4に出力し、受信部5が通信装置2Bから受信した制御通信データを受け取る。
通信装置2Aの送信部4は、制御装置3から入力した通信フレームデータを所定の処理により暗号化し、ネットワークNを介して通信装置2Bに通信フレームデータを送信する。この制御通信データには、例えばプラントの機器を制御するための命令、プラントからのプロセス入出力値が含まれる。
通信装置2Aの受信部5は、通信装置2Bより受信した暗号化された通信フレームデータを復号し、復号された通信フレームデータをチェックした結果が正常であれば制御装置3に制御通信データを出力する。
The communication device 2A includes a control device 3, a transmission unit 4, and a reception unit 5.
The control device 3 of the communication device 2A outputs communication frame data including control communication data to the communication device 2B to the transmission unit 4, and receives control communication data received by the reception unit 5 from the communication device 2B.
The transmission unit 4 of the communication device 2A encrypts the communication frame data input from the control device 3 by a predetermined process, and transmits the communication frame data to the communication device 2B via the network N. The control communication data includes, for example, a command for controlling plant equipment and a process input / output value from the plant.
The receiving unit 5 of the communication device 2A decrypts the encrypted communication frame data received from the communication device 2B, and outputs control communication data to the control device 3 if the result of checking the decrypted communication frame data is normal. To do.

通信装置2Bは、通信装置2Aと同様に、制御装置3と、送信部4と、受信部5を備える。
通信装置2Bの制御装置3は、制御通信データを含む通信フレームデータを送信部4に出力し、受信部5が通信装置2Aから受信した制御通信データを受け取る。
通信装置2Bの送信部4は、制御装置3から入力した通信フレームデータを所定の処理により暗号化し、ネットワークNを介して通信装置2Aに通信フレームデータを送信する。
通信装置2Bの受信部5は、通信装置2Aより受信した暗号化された通信フレームデータを復号し、復号された通信フレームデータをチェックした結果が正常であれば制御装置3に制御通信データを出力する。
The communication device 2B includes a control device 3, a transmission unit 4, and a reception unit 5, similarly to the communication device 2A.
The control device 3 of the communication device 2B outputs communication frame data including control communication data to the transmission unit 4, and receives the control communication data received by the reception unit 5 from the communication device 2A.
The transmission unit 4 of the communication device 2B encrypts the communication frame data input from the control device 3 by a predetermined process, and transmits the communication frame data to the communication device 2A via the network N.
The receiving unit 5 of the communication device 2B decrypts the encrypted communication frame data received from the communication device 2A, and outputs the control communication data to the control device 3 if the result of checking the decrypted communication frame data is normal. To do.

次に、送信部4、受信部5の構成例及び動作例について説明する。始めに、送信部について説明する。   Next, configuration examples and operation examples of the transmission unit 4 and the reception unit 5 will be described. First, the transmission unit will be described.

図3は、送信部4の内部構成例を示すブロック図である。
送信部4は、通信装置2Aの構成要素のうち、電子署名を生成する回路(電子署名生成部6)と、電子署名を通信フレームデータに付加して送信する回路(送信ポート12)とを抽出したものである。
FIG. 3 is a block diagram illustrating an internal configuration example of the transmission unit 4.
The transmission unit 4 extracts a circuit (electronic signature generation unit 6) that generates an electronic signature and a circuit (transmission port 12) that transmits the electronic signature by adding the electronic signature to communication frame data from the components of the communication device 2A. It is a thing.

始めに、送信部4の各部の構成を説明する。
送信部4は、フレーム送信制御回路11、送信ポート12、計時カウンタ回路13、チェックコード生成回路14、フレームシーケンス番号生成回路15、乱数生成器16、ブロック生成部17、マルチプレクサ18、変換テーブル19、PS変換回路20を備える。本実施の形態例では、送信部4内の送信ポート12を除く各構成要素をまとめて電子署名生成部6と呼ぶ。
First, the configuration of each unit of the transmission unit 4 will be described.
The transmission unit 4 includes a frame transmission control circuit 11, a transmission port 12, a time counter circuit 13, a check code generation circuit 14, a frame sequence number generation circuit 15, a random number generator 16, a block generation unit 17, a multiplexer 18, a conversion table 19, A PS conversion circuit 20 is provided. In the present embodiment, each component other than the transmission port 12 in the transmission unit 4 is collectively referred to as an electronic signature generation unit 6.

フレーム送信制御回路11は、制御装置3から信号路d1を通じて、制御通信データを含む通信フレームデータを取り込む。そして、フレーム送信制御回路11は、計時カウンタ回路13、チェックコード生成回路14、フレームシーケンス番号生成回路15、乱数生成器16、ブロック生成部17、マルチプレクサ18、PS変換回路20に所定の信号を送信し、各部の制御を行う。   The frame transmission control circuit 11 takes in communication frame data including control communication data from the control device 3 through the signal path d1. The frame transmission control circuit 11 transmits predetermined signals to the time counter circuit 13, the check code generation circuit 14, the frame sequence number generation circuit 15, the random number generator 16, the block generation unit 17, the multiplexer 18, and the PS conversion circuit 20. Then, each part is controlled.

ここで、通信フレームデータの構成について説明する。
図4は、通信フレームデータの構成例を示すフレームフォーマットである。
Here, the configuration of communication frame data will be described.
FIG. 4 is a frame format showing a configuration example of communication frame data.

本実施の形態例に係る通信フレームデータは、ヘッダ情報(通信ヘッダf1、IPヘッダf2、UDPヘッダf3)、制御装置3から受け取る制御通信データf4、電子署名f5、FCS(Frame Check Sequence)f6の各フィールドで構成される。ヘッダ情報は、送信される各通信フレームデータに共通して設けられるものであり、フレーム送信制御回路11によって生成される。また、通信フレームデータ内における電子署名f5の実装場所は限定されない。この電子署名f5には、符号化された計時カウンタ情報f11、チェックコードf12、シーケンス番号f13及び乱数f14が含まれる。以下の説明では、通信ヘッダf1、IPヘッダf2、UDPヘッダf3、制御通信データf4をまとめて「フレーム情報」と呼ぶ場合がある。   The communication frame data according to the present embodiment includes header information (communication header f1, IP header f2, UDP header f3), control communication data f4 received from the control device 3, electronic signature f5, and FCS (Frame Check Sequence) f6. Consists of each field. The header information is provided in common for each communication frame data to be transmitted, and is generated by the frame transmission control circuit 11. Also, the mounting location of the electronic signature f5 in the communication frame data is not limited. The electronic signature f5 includes encoded time counter information f11, a check code f12, a sequence number f13, and a random number f14. In the following description, the communication header f1, the IP header f2, the UDP header f3, and the control communication data f4 may be collectively referred to as “frame information”.

チェックコードf12は、ヘッダ情報と制御通信データf4をチェック範囲として生成される。このようなチェック範囲としたのは、チェックコードの目的は、制御通信データに改ざんがなされたことを検出するためである。
FCS f6は、フレーム情報と電子署名f5をチェック範囲として生成される。このようなチェック範囲としたのは、FCSの目的が、通信フレームデータのデータ化けを検出することであり、電子署名f5のデータ化けもその対象に含まれるからである。
以下の説明において、電子署名f5、FCS f6が付されていない状態のヘッダ情報及び制御通信データf4についても通信フレームデータと呼ぶ場合がある。
The check code f12 is generated using the header information and the control communication data f4 as a check range. The reason for the check range is that the purpose of the check code is to detect that the control communication data has been tampered with.
FCS f6 is generated using the frame information and electronic signature f5 as a check range. The reason for this check range is that the purpose of the FCS is to detect garbled communication frame data, and the garbled data of the electronic signature f5 is also included in the object.
In the following description, the header information and the control communication data f4 without the electronic signature f5 and FCS f6 may also be referred to as communication frame data.

再び図3の説明を続ける。
電子署名生成部6は、制御装置3から受信する制御通信データf4に基づいて生成されるチェックコードf12、通信フレームデータの送信順を示すシーケンス番号f13、及び乱数f14を、それぞれ所定単位で分離する。そして、これらの情報を所定の順序で並び替えたビット数列集合からなるブロックd8〜d10を変換テーブル19により変換した電子署名f5を生成する。
The description of FIG. 3 will be continued again.
The electronic signature generation unit 6 separates the check code f12 generated based on the control communication data f4 received from the control device 3, the sequence number f13 indicating the transmission order of the communication frame data, and the random number f14 in predetermined units. . Then, an electronic signature f5 is generated by converting the blocks d8 to d10 composed of the bit number sequence set obtained by rearranging these pieces of information in a predetermined order using the conversion table 19.

計時カウンタ回路13は、計時動作により送信部4における計時カウンタ情報f11を生成し、信号路d4に出力する。計時カウンタ回路13が生成する計時カウンタ情報f11は、他の通信装置が計時する計時カウンタ情報に同期させたものである。後述する図6に示す計時カウンタ回路37が他の通信装置との間で同期したことをもって、計時カウンタ回路37に計時カウンタ回路13を同期させることが可能である。   The time counter circuit 13 generates time counter information f11 in the transmission unit 4 by a time measuring operation and outputs it to the signal path d4. The time counter information f11 generated by the time counter circuit 13 is synchronized with the time counter information timed by other communication devices. It is possible to synchronize the time counter circuit 13 to the time counter circuit 37 when the time counter circuit 37 shown in FIG. 6 to be described later is synchronized with another communication device.

チェックコード生成回路14(第1のチェックコード生成部の一例)は、フレーム送信制御回路11から受け取ったヘッダ情報と制御通信データf4によりチェックコードf12を生成し、信号路d5に出力する。
フレームシーケンス番号生成回路15(シーケンス番号生成部の一例)は、通信フレームデータの送信順を示すシーケンス番号f13を生成し、信号路d6に出力する。このシーケンス番号f13は、前周期に送信された通信フレームデータのシーケンス番号(n−1)を“1”だけインクリメントした値(n)となる。
The check code generation circuit 14 (an example of a first check code generation unit) generates a check code f12 from the header information received from the frame transmission control circuit 11 and the control communication data f4, and outputs the check code f12 to the signal path d5.
The frame sequence number generation circuit 15 (an example of a sequence number generation unit) generates a sequence number f13 indicating the transmission order of communication frame data and outputs it to the signal path d6. The sequence number f13 is a value (n) obtained by incrementing the sequence number (n-1) of the communication frame data transmitted in the previous cycle by "1".

乱数生成器16(乱数生成部の一例)は、乱数f14を生成し、信号路d7に出力する。本実施の形態例に係る電子署名符号化方法は、乱数f14を用いて実現される。乱数生成器16が乱数を生成する方法として、例えば、M系列(LFSR)や、Xorshiftによる擬似乱数の生成方法が用いられる。他には、例えば、特許第4982750号公報に記載されるようなフリップフロップのメタスタビリティを利用したリングオシレータ型の真性乱数に準じる生成方法を用いてもよく、一つの方法に限定されない。ただし、電子署名符号化方法は、通信フレームデータの送信に際して、高速性を阻害せず、安価であるものが採用される。   The random number generator 16 (an example of a random number generation unit) generates a random number f14 and outputs it to the signal path d7. The electronic signature encoding method according to the present embodiment is realized using a random number f14. As a method for the random number generator 16 to generate a random number, for example, an M-sequence (LFSR) or a pseudo-random number generation method using Xorshift is used. In addition, for example, a generation method based on a ring oscillator type true random number using metastability of a flip-flop as described in Japanese Patent No. 4982750 may be used, and the method is not limited to one method. However, as the electronic signature encoding method, an inexpensive method that does not impair high speed when transmitting communication frame data is adopted.

ブロック生成部17は、計時カウンタ情報f11、チェックコードf12、シーケンス番号f13、及び乱数f14から単ビット単位、又は複数ビット単位で分離した単位固定長のビットを抽出する。そして、ブロック生成部17は、分離した単位固定長のビットを並び替えてまとめたビット数列集合からなる複数のブロックd8〜d10を生成する。   The block generation unit 17 extracts the unit fixed length bits separated from the time counter information f11, the check code f12, the sequence number f13, and the random number f14 in units of single bits or in units of multiple bits. Then, the block generation unit 17 generates a plurality of blocks d8 to d10 including a bit number sequence set obtained by rearranging the separated unit fixed length bits.

マルチプレクサ18(選択回路の一例)は、ブロック生成部17によって生成された複数のブロックd8〜d10のいずれかを順に選択して変換テーブル19に出力する。
変換テーブル19(エンコーダの一例)は、マルチプレクサ18から順に入力する複数のブロックd8〜d10を変換して符号化する。
PS(Parallel/Serial)変換回路20は、符号化されたビット数列集合をシリアルデータに変換して電子署名f5を生成し、この電子署名f5を送信ポート12に出力する。
このようにマルチプレクサ18、変換テーブル19、PS変換回路20は、複数のブロックd8〜d10を変換テーブル19により変換して電子署名f5を生成する符号化部21として用いられる。
The multiplexer 18 (an example of a selection circuit) sequentially selects any one of the plurality of blocks d8 to d10 generated by the block generation unit 17 and outputs the selected blocks to the conversion table 19.
The conversion table 19 (an example of an encoder) converts and encodes a plurality of blocks d8 to d10 that are sequentially input from the multiplexer 18.
A PS (Parallel / Serial) conversion circuit 20 converts the encoded bit sequence set into serial data to generate an electronic signature f5, and outputs the electronic signature f5 to the transmission port 12.
As described above, the multiplexer 18, the conversion table 19, and the PS conversion circuit 20 are used as an encoding unit 21 that converts a plurality of blocks d8 to d10 using the conversion table 19 to generate an electronic signature f5.

送信ポート12は、フレーム送信制御回路11から受け取った通信フレームデータ(ヘッダ情報及び制御通信データf4)に、電子署名f5と、送信ポート12が生成したFCS f6とを付加する。そして、送信ポート12は、ネットワークNを通じて通信装置2Bに通信フレームデータを送信する。   The transmission port 12 adds the electronic signature f5 and the FCS f6 generated by the transmission port 12 to the communication frame data (header information and control communication data f4) received from the frame transmission control circuit 11. The transmission port 12 transmits the communication frame data to the communication device 2B through the network N.

次に、送信部4の各部の動作について、図5のタイムチャートに即して説明する。
図5は、送信部4の各信号路における信号の流れを示すタイムチャートである。
Next, the operation of each unit of the transmission unit 4 will be described with reference to the time chart of FIG.
FIG. 5 is a time chart showing a signal flow in each signal path of the transmission unit 4.

通信装置2Aの通信フレームデータの送信処理は、制御装置3から送信部4になされる送信要求を契機として開始される。
フレーム送信制御回路11は、通信フレームデータの信号路d1経由で通信フレームデータを取り込みながら(図5A)、チェックコード生成回路14にチェックコード生成制御信号d3を発行する(図5B)。チェックコード生成回路14は、チェックコード生成制御信号d3を受けると、フレーム情報に基づいてチェックコードf12を生成する(図4、図5D)。
The communication frame data transmission process of the communication device 2A is started in response to a transmission request made from the control device 3 to the transmission unit 4.
The frame transmission control circuit 11 issues a check code generation control signal d3 to the check code generation circuit 14 (FIG. 5B) while capturing the communication frame data via the signal path d1 of the communication frame data (FIG. 5A). Upon receiving the check code generation control signal d3, the check code generation circuit 14 generates a check code f12 based on the frame information (FIGS. 4 and 5D).

なお、チェックコード生成回路14は、回路リソースが少なくて済むCRC(Cyclic Redundancy Check)を用いて、チェックコードf12を生成するが、CRC以外の方法によりチェックコードf12を生成してもよい。チェックコードf12の生成、及びチェック範囲は、図4に示す通り、通信ヘッダf1から制御通信データf4までを対象とする。   The check code generation circuit 14 generates the check code f12 using a CRC (Cyclic Redundancy Check) that requires less circuit resources, but may generate the check code f12 by a method other than CRC. The generation and check range of the check code f12 covers the communication header f1 to the control communication data f4 as shown in FIG.

チェックコード生成回路14がチェックコードf12を生成している間、フレーム送信制御回路11は、送信ポート12に対してネットワークNにフレーム情報を送信させる(図5K)。   While the check code generation circuit 14 is generating the check code f12, the frame transmission control circuit 11 causes the transmission port 12 to transmit frame information to the network N (FIG. 5K).

送信ポート12がフレーム情報を送信した後、送信ポート12への制御通信データf4の入力が完了するタイミングになると、フレーム送信制御回路11は、フレームシーケンス番号のインクリメント及びラッチ制御信号d2を発行する(図5C)。フレームシーケンス番号生成回路15は、フレームシーケンス番号のインクリメント及びラッチ制御信号d2が入力したタイミングで、現在のフレームシーケンス番号を“1”だけインクリメントする(図5F)。そして、フレームシーケンス番号生成回路15は、インクリメントされたフレームシーケンス番号を、フレームシーケンス番号の信号路d6に送出する。   When the input of the control communication data f4 to the transmission port 12 is completed after the transmission port 12 transmits the frame information, the frame transmission control circuit 11 issues an increment of the frame sequence number and a latch control signal d2 ( FIG. 5C). The frame sequence number generation circuit 15 increments the current frame sequence number by “1” at the timing at which the increment of the frame sequence number and the latch control signal d2 are input (FIG. 5F). Then, the frame sequence number generation circuit 15 sends the incremented frame sequence number to the signal path d6 of the frame sequence number.

計時カウンタ回路13が計時する動作は常時行われる(図5E)。このため、計時カウンタ情報の信号路d4には、計時カウンタ回路13が計時した計時カウンタ情報が常に流れている。同様に乱数生成器16が乱数を生成する動作についても常時行われる(図5G)。このため、乱数情報の信号路d7には、乱数生成器16が生成した乱数が常に流れている。   The time counting operation of the time counter circuit 13 is always performed (FIG. 5E). Therefore, the time counter information timed by the time counter circuit 13 always flows through the signal path d4 of the time counter information. Similarly, the operation in which the random number generator 16 generates a random number is always performed (FIG. 5G). For this reason, the random number generated by the random number generator 16 always flows through the signal path d7 of the random number information.

また、通信要求が発生し、フレームシーケンス番号のインクリメント及びラッチ制御信号d2が発行されると、ブロック生成部17は、信号路d4〜d7を流れる計時カウンタ情報、チェックコード、フレームシーケンス番号、乱数を取得する。そして、ブロック生成部17は、これらの情報を、それぞれ1ビット以上の単位で分離する。さらに、ブロック生成部17は、分離した計時カウンタ情報、チェックコード、フレームシーケンス番号、乱数を並べ替えたビット数列を生成し、このビット数列から任意長としたビット数列集合からなる複数のブロックd8〜d10に分割する。   When a communication request is generated and the frame sequence number increment and the latch control signal d2 are issued, the block generation unit 17 obtains the time counter information, check code, frame sequence number, and random number flowing through the signal paths d4 to d7. get. Then, the block generator 17 separates these pieces of information in units of 1 bit or more. Further, the block generation unit 17 generates a bit number sequence in which the separated time counter information, check code, frame sequence number, and random number are rearranged, and a plurality of blocks d8˜ Divide into d10.

複数のブロックd8〜d10には、それぞれ計時カウンタ情報、チェックコード、フレームシーケンス番号、乱数が共に1ビット以上格納されていることを要件とする。この要件を満足できるのであれば、ブロックのビット長の長さに上限も下限もない。1ブロックあたりの乱数のビット数が多いほど、後述する符号化コードの不規則変化の複雑性が増す。   The plurality of blocks d8 to d10 are required to store time counter information, check code, frame sequence number, and random number, respectively, at least 1 bit. If this requirement can be satisfied, there is no upper or lower limit to the bit length of the block. The greater the number of random bits per block, the greater the complexity of irregular changes in the encoded code, which will be described later.

複数のブロックd8〜d10は、各々に計時カウンタ情報の信号路d4の任意の1ビット、チェックコードの信号路d5の任意の1ビット、フレームシーケンス番号の信号路d6の任意の1ビット、及び乱数情報の信号路d7の3ビット(計6ビット)で構成される。
複数のブロックd8〜d10を構成する任意のビットは、送信側、受信側で同じ配置にしなければ、非可逆なコードとなり復号できなくなる。可逆性が保てるのであれば、任意のビットを複数個所のブロックに使っても良い。複数のブロックd8〜d10が不規則に変化できるパターンが多くなるほど、ネットワークNで観測される符号化コードの発生パターンも増し、通信フレームデータの暗号化強度をより高めることができる。
Each of the plurality of blocks d8 to d10 includes an arbitrary 1 bit of the signal path d4 of the clock counter information, an arbitrary 1 bit of the signal path d5 of the check code, an arbitrary 1 bit of the signal path d6 of the frame sequence number, and a random number It is composed of 3 bits (6 bits in total) of the information signal path d7.
Arbitrary bits constituting the plurality of blocks d8 to d10 are irreversible codes and cannot be decoded unless they are arranged in the same manner on the transmission side and the reception side. As long as reversibility can be maintained, arbitrary bits may be used in a plurality of blocks. As the number of patterns in which the plurality of blocks d8 to d10 can change irregularly increases, the generation pattern of the encoded code observed in the network N increases and the encryption strength of the communication frame data can be further increased.

続いて、フレーム送信制御回路11は、複数のブロックd8〜d10の選択制御信号d12を活性化させる(図5H)。これによりフレームシーケンス番号生成回路15は、フレームシーケンス番号のインクリメント及びラッチ制御信号d2に従い、N個の複数のブロックd8〜d10の現状態をラッチする。   Subsequently, the frame transmission control circuit 11 activates the selection control signal d12 of the plurality of blocks d8 to d10 (FIG. 5H). As a result, the frame sequence number generation circuit 15 latches the current states of the N blocks d8 to d10 in accordance with the increment of the frame sequence number and the latch control signal d2.

そして、マルチプレクサ18は、入力する複数のブロックd8〜d10の順番を切替えて、変換テーブル19に複数のブロックd8〜d10を出力する。変換テーブル19により、複数のブロックd8〜d10がそれぞれ符号化される。符号化された複数のブロックd8〜d10は、選択された符号化コードの信号路d14を通じて、変換テーブル19からPS変換回路20に出力される(図5I)。   Then, the multiplexer 18 switches the order of the plurality of blocks d8 to d10 to be input, and outputs the plurality of blocks d8 to d10 to the conversion table 19. A plurality of blocks d8 to d10 are encoded by the conversion table 19, respectively. The plurality of encoded blocks d8 to d10 are output from the conversion table 19 to the PS conversion circuit 20 through the signal path d14 of the selected encoded code (FIG. 5I).

変換テーブル19は、いわゆる「共通鍵」の扱いとなる。変換テーブル19の入力と出力の関係は、数学的な規則性を持たせる必要はなく、不規則な値で構わない。ただし、変換テーブル19によって変換されるデータは可逆性を持たせる必要がある。すなわち、変換テーブル19から出力されたデータは、逆変換により、元の入力データを復元できることが必要となる。このような変換テーブル19をRAM(Random Access Memory)やフラッシュROM(Read Only Memory)等の書き換え可能な記憶部に記憶させておくことで、定期的な内容変更に対応可能とする。これにより、変換テーブル19の情報が外部に漏えいした場合であっても、変換テーブル19を迅速に切り替えることによって外部からの攻撃によるデータの損失を必要最小限に抑えることが可能となる。   The conversion table 19 is a so-called “common key”. The relationship between the input and the output of the conversion table 19 does not need to have mathematical regularity, and may be an irregular value. However, the data converted by the conversion table 19 needs to have reversibility. That is, the data output from the conversion table 19 needs to be able to restore the original input data by inverse conversion. By storing such a conversion table 19 in a rewritable storage unit such as a RAM (Random Access Memory) or a flash ROM (Read Only Memory), it is possible to cope with periodic content changes. As a result, even if the information in the conversion table 19 leaks to the outside, it is possible to minimize the loss of data due to an attack from the outside by quickly switching the conversion table 19.

次に、フレーム送信制御回路11は、符号化コードのパラレルシリアル変換制御信号d13を活性化させる(図5J)。PS変換回路20は、符号化された各複数のブロックd8〜d10をパラレルデータからシリアルデータに変換する。シリアルデータに変換された各複数のブロックd8〜d10は、電子署名f5として送信ポート12に逐次送られる。また、電子署名f5は、フレーム送信制御回路11にも送られ、フレーム送信制御回路11によりFCS f6が生成される。   Next, the frame transmission control circuit 11 activates the parallel / serial conversion control signal d13 of the encoded code (FIG. 5J). The PS conversion circuit 20 converts each of the plurality of encoded blocks d8 to d10 from parallel data to serial data. Each of the plurality of blocks d8 to d10 converted into serial data is sequentially sent to the transmission port 12 as an electronic signature f5. The electronic signature f5 is also sent to the frame transmission control circuit 11, and the frame transmission control circuit 11 generates FCS f6.

送信ポート12は、シリアルデータに変換された各複数のブロックd8〜d10を、フレーム送信制御回路11から受信した通信フレームデータの末尾に電子署名f5として付加する。次に、送信ポート12は、通信フレームデータのフレーム情報及び電子署名f5をチェック範囲としてフレーム送信制御回路11により生成されたFCS f6を電子署名f5の末尾に付加する。そして、送信ポート12は、電子署名f5とFCS f6が付加された通信フレームデータを、ネットワークNを介して宛先の通信装置2Bに送信する。   The transmission port 12 adds each of the plurality of blocks d8 to d10 converted to serial data as an electronic signature f5 to the end of the communication frame data received from the frame transmission control circuit 11. Next, the transmission port 12 adds the FCS f6 generated by the frame transmission control circuit 11 to the end of the electronic signature f5 using the frame information of the communication frame data and the electronic signature f5 as a check range. Then, the transmission port 12 transmits the communication frame data to which the electronic signature f5 and FCS f6 are added to the destination communication device 2B via the network N.

次に、通信装置2Bの受信部5の構成例及び動作例について説明する。
図6は、受信部5の内部構成例を示すブロック図である。
Next, a configuration example and an operation example of the reception unit 5 of the communication device 2B will be described.
FIG. 6 is a block diagram illustrating an internal configuration example of the receiving unit 5.

受信部5は、通信装置2Bの構成要素のうち、受信した通信フレームデータから電子署名f5を取り出す回路(受信ポート31)と、電子署名f5を復号して各情報を抽出する回路(情報抽出部7)と、情報を判定する回路(判定部8)とを抽出したものである。電子署名f5を復号することにより、通信フレームデータから、計時カウンタ情報f11、チェックコードf12、シーケンス番号f13、乱数f14が抽出される。   The receiving unit 5 includes a circuit (reception port 31) that extracts the electronic signature f5 from the received communication frame data, and a circuit that decrypts the electronic signature f5 and extracts each piece of information (information extraction unit) among the components of the communication device 2B. 7) and a circuit for determining information (determination unit 8). By decoding the electronic signature f5, the time counter information f11, the check code f12, the sequence number f13, and the random number f14 are extracted from the communication frame data.

この受信部5は、受信ポート31、フレーム受信制御回路32、SP(Serial/Parallel)変換回路33、逆変換テーブル34、デマルチプレクサ35、ビット抽出部36を備える。また、受信部5は、計時カウンタ回路37、チェックコード生成回路39、シーケンス番号前周期記憶回路41、第1記憶回路43、第2記憶回路44を備える。本実施の形態例では、これらの回路をまとめて情報抽出部7と呼ぶ。   The reception unit 5 includes a reception port 31, a frame reception control circuit 32, an SP (Serial / Parallel) conversion circuit 33, an inverse conversion table 34, a demultiplexer 35, and a bit extraction unit 36. The receiving unit 5 includes a time counter circuit 37, a check code generation circuit 39, a sequence number previous cycle storage circuit 41, a first storage circuit 43, and a second storage circuit 44. In this embodiment, these circuits are collectively referred to as an information extraction unit 7.

また、受信部5は、第1判定回路38、第2判定回路40、第3判定回路42、第4判定回路45、認証判定回路46を備える。本実施の形態例では、第1判定回路38、第2判定回路40、第3判定回路42、第4判定回路45、認証判定回路46をまとめて判定部8と呼ぶ。   The receiving unit 5 includes a first determination circuit 38, a second determination circuit 40, a third determination circuit 42, a fourth determination circuit 45, and an authentication determination circuit 46. In the present embodiment, the first determination circuit 38, the second determination circuit 40, the third determination circuit 42, the fourth determination circuit 45, and the authentication determination circuit 46 are collectively referred to as the determination unit 8.

受信ポート31は、通信装置2Aが送信した通信フレームデータを、ネットワークNを介して受信し、フレーム受信制御回路32に通信フレームデータを出力すると共に、通信フレームデータから取り出した電子署名f5をSP変換回路33に出力する。   The reception port 31 receives the communication frame data transmitted by the communication device 2A via the network N, outputs the communication frame data to the frame reception control circuit 32, and SP-converts the electronic signature f5 extracted from the communication frame data. Output to the circuit 33.

フレーム受信制御回路32は、信号路d21を通じて、受信ポート31が受信した通信フレームデータを制御装置3に送信する。そして、フレーム受信制御回路32は、SP変換回路33、逆変換テーブル34、デマルチプレクサ35、ビット抽出部36、計時カウンタ回路37、チェックコード生成回路39、判定回路に所定のデータ、信号を送信し、各部の制御を行う。   The frame reception control circuit 32 transmits the communication frame data received by the reception port 31 to the control device 3 through the signal path d21. The frame reception control circuit 32 transmits predetermined data and signals to the SP conversion circuit 33, the inverse conversion table 34, the demultiplexer 35, the bit extraction unit 36, the time counter circuit 37, the check code generation circuit 39, and the determination circuit. Control each part.

情報抽出部7は、電子署名f5を逆変換テーブル34により逆変換したブロックd27〜d29から、送信部4の電子署名生成部6が行った所定の順序とは逆順でチェックコードf12、シーケンス番号f13、及び乱数f14を抽出する。   The information extraction unit 7 checks the check code f12 and the sequence number f13 in the reverse order from the predetermined order performed by the digital signature generation unit 6 of the transmission unit 4 from the blocks d27 to d29 obtained by reverse conversion of the electronic signature f5 by the reverse conversion table 34. , And a random number f14.

このとき、SP変換回路33は、受信ポート31から入力する電子署名f5をパラレルデータに変換する。
逆変換テーブル34(デコーダの一例)は、パラレルデータに変換された電子署名f5を復号する。
デマルチプレクサ35(分配回路の一例)は、逆変換テーブル34によって復号された電子署名f5を、ビット数列集合からなる複数のブロックd27〜d29に分配する。
このようにSP変換回路33、逆変換テーブル34、デマルチプレクサ35は、電子署名f5を逆変換テーブル34により逆変換して複数のブロックd27〜d29に復号する復号部30として用いられる。
At this time, the SP conversion circuit 33 converts the electronic signature f5 input from the reception port 31 into parallel data.
The inverse conversion table 34 (an example of a decoder) decrypts the electronic signature f5 converted into parallel data.
The demultiplexer 35 (an example of a distribution circuit) distributes the electronic signature f5 decrypted by the inverse conversion table 34 to a plurality of blocks d27 to d29 composed of a bit number sequence set.
As described above, the SP conversion circuit 33, the inverse conversion table 34, and the demultiplexer 35 are used as a decoding unit 30 that performs inverse conversion of the electronic signature f5 by the inverse conversion table 34 and decodes it into a plurality of blocks d27 to d29.

ビット抽出部36は、ブロックd27〜d29からそれぞれ単位固定長とした1ビット以上の任意ビットを抽出し、この任意ビットを所定の順序で並べ替えて、計時カウンタ情報f11、チェックコードf12、シーケンス番号f13、及び乱数f14を取り出す。取り出された計時カウンタ情報f11、チェックコードf12、シーケンス番号f13、及び乱数f14は、それぞれ信号路d30,d31,d32,d33に出力される。   The bit extraction unit 36 extracts one or more arbitrary bits each having a unit fixed length from the blocks d27 to d29, rearranges the arbitrary bits in a predetermined order, and counts time counter information f11, check code f12, sequence number f13 and random number f14 are extracted. The extracted time counter information f11, check code f12, sequence number f13, and random number f14 are output to signal paths d30, d31, d32, and d33, respectively.

そして、判定部8は、計時カウンタ情報、チェックコード、シーケンス番号の比較結果に基づいて、通信フレームデータを正常と判定した場合に、制御装置3による制御通信データの取り込みを許可する。具体的には、判定部8は、以下のような比較を行う。   Then, when the determination unit 8 determines that the communication frame data is normal based on the comparison result of the time counter information, the check code, and the sequence number, the determination unit 8 permits the control device 3 to capture the control communication data. Specifically, the determination unit 8 performs the following comparison.

計時カウンタ回路37(第2の計時カウンタ情報生成部の一例)は、計時動作によって生成した計時カウンタ情報(第2の計時カウンタ情報の一例)を第1判定回路38に出力する。
第1判定回路38(現周期差分判定部の一例)は、自身が計時する計時カウンタ情報と、他の通信装置によって計時された計時カウンタ情報とを比較する。例えば、第1判定回路38は、計時カウンタ回路37によって生成された計時カウンタ情報と、ビット抽出部36によってブロックd27〜d29から抽出された計時カウンタ情報f11との差が所定の誤差(第2の誤差の一例)の範囲内にあるか否かを判定する。そして、第1判定回路38は、判定結果を認証判定回路46に出力する。
The time counter circuit 37 (an example of the second time counter information generation unit) outputs the time counter information (an example of the second time counter information) generated by the time measurement operation to the first determination circuit 38.
The first determination circuit 38 (an example of the current cycle difference determination unit) compares the time counter information measured by itself with the time counter information timed by another communication device. For example, the first determination circuit 38 determines that the difference between the time counter information generated by the time counter circuit 37 and the time counter information f11 extracted from the blocks d27 to d29 by the bit extraction unit 36 is a predetermined error (second It is determined whether or not it is within a range of (example of error). Then, the first determination circuit 38 outputs the determination result to the authentication determination circuit 46.

チェックコード生成回路39(第2のチェックコード生成部の一例)は、受信ポート31が受信した通信フレームデータのフレーム情報に基づいて生成したチェックコード(第2のチェックコードの一例)を第2判定回路40に出力する。
第2判定回路40(チェックコード判定部の一例)は、通信フレームデータのチェックコードの改ざん有無を判定する。例えば、第2判定回路40は、チェックコード生成回路39によって生成されたチェックコードと、ビット抽出部36によってブロックd27〜d29から抽出されたチェックコードf12との相違を判定し、判定結果を認証判定回路46に出力する。
The check code generation circuit 39 (an example of a second check code generation unit) secondly determines a check code (an example of the second check code) generated based on the frame information of the communication frame data received by the reception port 31. Output to the circuit 40.
The second determination circuit 40 (an example of a check code determination unit) determines whether or not the check code of the communication frame data has been tampered with. For example, the second determination circuit 40 determines the difference between the check code generated by the check code generation circuit 39 and the check code f12 extracted from the blocks d27 to d29 by the bit extraction unit 36, and authenticates the determination result. Output to the circuit 46.

シーケンス番号前周期記憶回路41(シーケンス番号記憶部の一例)は、前周期の受信処理で電子署名f5から復号された前周期のシーケンス番号f13を記憶しており、前周期のシーケンス番号f13を第3判定回路42に出力する。
第3判定回路42(シーケンス番号判定部の一例)は、前周期と現周期の通信フレームデータに付加されたシーケンス番号の一致又は不一致を判定する。例えば、第3判定回路42は、シーケンス番号前周期記憶回路41に記憶された前周期の通信フレームデータから抽出されたシーケンス番号f13と、ビット抽出部36によって現周期の通信フレームデータから抽出されたシーケンス番号f13との相違を判定する。そして、第3判定回路42は、判定結果を認証判定回路46に出力する。
The sequence number previous cycle storage circuit 41 (an example of the sequence number storage unit) stores the sequence number f13 of the previous cycle decoded from the electronic signature f5 in the reception process of the previous cycle, and the sequence number f13 of the previous cycle is stored in the first cycle. 3 is output to the determination circuit 42.
The third determination circuit 42 (an example of a sequence number determination unit) determines whether the sequence numbers added to the communication frame data of the previous cycle and the current cycle match or do not match. For example, the third determination circuit 42 extracts the sequence number f13 extracted from the communication frame data of the previous cycle stored in the sequence number previous cycle storage circuit 41 and the communication frame data of the current cycle by the bit extraction unit 36. A difference from the sequence number f13 is determined. Then, the third determination circuit 42 outputs the determination result to the authentication determination circuit 46.

第1記憶回路43(第1の計時カウンタ情報記憶部の一例)は、現周期の通信フレームデータから抽出された計時カウンタ情報f11を記憶する。
第2記憶回路44(第2の計時カウンタ情報記憶部の一例)は、前周期の通信フレームデータから抽出された計時カウンタ情報f11を記憶する。
第1記憶回路43に格納された前周期の計時カウンタ情報f11は、受信ポート31が次の通信フレームデータを受信した際に、第2記憶回路44にシフトして格納される。そして、第1記憶回路43には、ブロックd27〜d29から抽出された現周期の計時カウンタ情報f11が格納される。
The first storage circuit 43 (an example of a first time counter information storage unit) stores time counter information f11 extracted from communication frame data in the current cycle.
The second storage circuit 44 (an example of a second time counter information storage unit) stores time counter information f11 extracted from the communication frame data of the previous cycle.
The clock counter information f11 of the previous period stored in the first storage circuit 43 is shifted and stored in the second storage circuit 44 when the reception port 31 receives the next communication frame data. The first memory circuit 43 stores the current period clock counter information f11 extracted from the blocks d27 to d29.

第4判定回路45(周期間差分判定部の一例)は、前周期と現周期の計時カウンタ情報f11の差分が許容誤差(第1の誤差の一例)の範囲内であるか否かを判定する。例えば、第4判定回路45は、第1記憶回路43に記憶される現周期の計時カウンタ情報f11と、第2記憶回路44にシフトされた前周期の計時カウンタ情報f11との差分が許容誤差の範囲内であるかを判定し、判定結果を認証判定回路46に出力する。   The fourth determination circuit 45 (an example of the inter-period difference determination unit) determines whether or not the difference between the previous period and the current period clock counter information f11 is within the range of an allowable error (an example of the first error). . For example, in the fourth determination circuit 45, the difference between the current period time counter information f11 stored in the first memory circuit 43 and the previous period time counter information f11 shifted to the second memory circuit 44 is an allowable error. It is determined whether it is within the range, and the determination result is output to the authentication determination circuit 46.

認証判定回路46(認証判定部の一例)は、第1判定回路38、第2判定回路40、第3判定回路42、第4判定回路45から入力した判定結果に基づいて、電子署名f5を認証し、制御通信データf4の取り込み許可又は不許可の判定を行う。認証判定回路46は、許可判定した場合には、制御装置3による制御通信データf4の取り込みを許可し、制御通信データf4の取り込みを不許可判定した場合には、通信フレームデータを破棄する。認証判定回路46が行う電子署名f5の認証処理の詳細な例は、図7にて後述する。そして、認証判定回路46は、判定結果を制御装置3に出力する。制御装置3は、この判定結果に基づいて、通信フレームデータから制御通信データを取り込む。   The authentication determination circuit 46 (an example of an authentication determination unit) authenticates the electronic signature f5 based on the determination results input from the first determination circuit 38, the second determination circuit 40, the third determination circuit 42, and the fourth determination circuit 45. Then, it is determined whether or not the control communication data f4 is captured. The authentication determination circuit 46 permits the control device 3 to capture the control communication data f4 when the permission determination is made, and discards the communication frame data when the control communication data f4 is determined not to be permitted. A detailed example of the authentication process of the electronic signature f5 performed by the authentication determination circuit 46 will be described later with reference to FIG. Then, the authentication determination circuit 46 outputs the determination result to the control device 3. The control device 3 takes in the control communication data from the communication frame data based on the determination result.

正規の通信装置2Aが送信した通信フレームデータであることを判定部8が認証するためには、以下の3つの要件(1)〜(3)を全て満たすことが必要である。
(1)受信部5は、通信フレームデータから抽出した計時カウンタ情報f11と、自身の計時カウンタ回路37が計時した計時カウンタ情報とを比較して計時カウンタ情報の差分を求め、この差分が予め決められた許容誤差の範囲内であること。
(2)通信フレームデータから抽出したチェックコードf12と、受信した通信フレームデータのフレーム情報に基づいて演算したチェックコードの内容が一致していること。
(3)現周期のシーケンス番号f13が、前周期の通信フレームデータに付されたシーケンス番号f13と同一でないこと。
なお、ビット抽出部36によって抽出された乱数f14は、ネットワークN上の暗号強度を高める目的で実装したデコイ(囮)であるため、破棄される。
In order for the determination unit 8 to authenticate that it is communication frame data transmitted by the regular communication device 2A, it is necessary to satisfy all of the following three requirements (1) to (3).
(1) The receiving unit 5 compares the time counter information f11 extracted from the communication frame data with the time counter information timed by its own time counter circuit 37 to obtain a time counter information difference, and this difference is determined in advance. Within the specified tolerance.
(2) The check code f12 extracted from the communication frame data matches the content of the check code calculated based on the frame information of the received communication frame data.
(3) The sequence number f13 of the current cycle is not the same as the sequence number f13 attached to the communication frame data of the previous cycle.
Note that the random number f14 extracted by the bit extraction unit 36 is a decoy (囮) implemented for the purpose of increasing the encryption strength on the network N, and is discarded.

以下、受信部5が行う通信フレームデータの受信処理の例について説明する。
フレーム受信制御回路32は、受信ポート31が通信フレームデータを受信開始したことを契機として、通信フレームデータの受信処理を開始し、チェックコード生成回路39に対してチェックコード生成制御信号d23を発行する。チェックコード生成回路39は、チェックコード生成制御信号d23を受けると、フレーム受信制御回路32から信号路d21を通じて受け取った通信フレームデータのフレーム情報に基づいてチェックコードf12を生成する。そして、フレーム受信制御回路32は、制御通信データf4の入力が完了するタイミングになると、チェックコード生成制御信号d23を取り下げ、チェックコード生成回路39によるチェックコードf12の生成を完了させる。
An example of communication frame data reception processing performed by the reception unit 5 will be described below.
The frame reception control circuit 32 starts reception processing of communication frame data when the reception port 31 starts receiving communication frame data, and issues a check code generation control signal d23 to the check code generation circuit 39. . Upon receiving the check code generation control signal d23, the check code generation circuit 39 generates a check code f12 based on the frame information of the communication frame data received from the frame reception control circuit 32 through the signal path d21. When the input of the control communication data f4 is completed, the frame reception control circuit 32 cancels the check code generation control signal d23 and completes the generation of the check code f12 by the check code generation circuit 39.

続いて、受信ポート31に電子署名f5が入力すると、この電子署名f5がフレーム受信制御回路32とSP変換回路33に出力される。フレーム受信制御回路32は、符合化コードのシリアルパラレル変換制御信号d24を活性化させると、SP変換回路33が符号化コード(電子署名f5)をパラレルデータに変換する。そして、SP変換回路33は、パラレルデータに変換された符号化コードを逆変換テーブル34(デコーダの一例)に逐次入力する。逆変換テーブル34に入力するパラレルデータ化された符号化コードは、ビット数列集合に復号される。   Subsequently, when the electronic signature f5 is input to the reception port 31, the electronic signature f5 is output to the frame reception control circuit 32 and the SP conversion circuit 33. When the frame reception control circuit 32 activates the serial / parallel conversion control signal d24 of the encoded code, the SP conversion circuit 33 converts the encoded code (electronic signature f5) into parallel data. Then, the SP conversion circuit 33 sequentially inputs the encoded code converted into the parallel data into the inverse conversion table 34 (an example of a decoder). The encoded code converted into parallel data and input to the inverse conversion table 34 is decoded into a bit sequence set.

符号化コードがビット数列集合に復号されると、フレーム受信制御回路32は、ビット数列集合をブロックに振り分けるための振り分け制御信号d25を活性化させる。デマルチプレクサ35(振り分け回路の一例)に振り分け制御信号d25を供給する。デマルチプレクサ35は、復号されたビット数列集合をN個の複数のブロックd27〜d29に振り分けて格納する。   When the encoded code is decoded into the bit number sequence set, the frame reception control circuit 32 activates a distribution control signal d25 for distributing the bit number sequence set into blocks. A distribution control signal d25 is supplied to the demultiplexer 35 (an example of a distribution circuit). The demultiplexer 35 distributes and stores the decoded bit sequence set into a plurality of N blocks d27 to d29.

複数のブロックd27〜d29へのビット数列集合の格納が完了すると、フレーム受信制御回路32は、ビット抽出部36にビット抽出信号d26を発行し、判定回路に認証判定実施信号d22を発行する。ビット抽出部36は、ビット抽出信号d26に従い、複数のブロックd27〜d29から、計時カウンタ情報f11、チェックコードf12、シーケンス番号f13に対応する任意ビットを信号路d30,d31,d32を通じて抽出する。なお、信号路d33を通じて抽出される乱数f14に対応するビットは破棄される。   When the storage of the bit sequence set in the plurality of blocks d27 to d29 is completed, the frame reception control circuit 32 issues the bit extraction signal d26 to the bit extraction unit 36 and issues the authentication determination execution signal d22 to the determination circuit. The bit extraction unit 36 extracts arbitrary bits corresponding to the time counter information f11, the check code f12, and the sequence number f13 through the signal paths d30, d31, and d32 from the plurality of blocks d27 to d29 according to the bit extraction signal d26. Note that the bit corresponding to the random number f14 extracted through the signal path d33 is discarded.

また、フレーム受信制御回路32から認証判定実施信号d22を受けた判定回路は、以下の判定処理を実施する。これらの判定処理の結果に応じて後述する図7に示すように認証判定回路46の状態が遷移する。   The determination circuit that has received the authentication determination execution signal d22 from the frame reception control circuit 32 performs the following determination processing. Depending on the results of these determination processes, the state of the authentication determination circuit 46 changes as shown in FIG.

次に、通信装置2B(自装置)と、通信装置2A(他装置)との間で行われる、計時カウンタ回路37が生成する計時カウンタ情報の同期方法について説明する。
本発明の実施の形態では、通信装置2A、2B間で同期が行われていない、いわゆる同期未完の状態では、電子署名による認証を行うことができない。
Next, a method of synchronizing the time counter information generated by the time counter circuit 37 performed between the communication device 2B (self device) and the communication device 2A (other device) will be described.
In the embodiment of the present invention, authentication by electronic signature cannot be performed in a so-called unsynchronized state where synchronization is not performed between the communication devices 2A and 2B.

しかし、計時カウンタ情報を同期するために用いられる情報を転送する通信フレームデータ自体にも電子署名認証が行えないと、計時カウンタ情報を同期するために用いられる情報が攻撃者によってなりすまされるセキュリティリスクがある。このため、計時カウンタ情報を同期するために用いられる情報についても電子署名認証を実施する必要がある。そこで、本実施の形態例において、同期が外れている同期未完状態の受信部5は、以下に示す判定方式により電子署名f15を認証する。   However, if the digital signature authentication cannot be performed on the communication frame data itself that transfers information used to synchronize the time counter information, the security risk that the information used to synchronize the time counter information is impersonated by an attacker. There is. For this reason, it is necessary to perform digital signature authentication for information used to synchronize time counter information. Therefore, in the present embodiment, the receiving unit 5 that is out of synchronization and in an incomplete synchronization state authenticates the electronic signature f15 by the following determination method.

この判定方式の前提として、計時カウンタ情報のマスタとなる通信装置(例えば、通信装置2A)は、予め決められた一定の任意周期で通信フレームデータを送出する必要がある。送出される通信フレームデータは、同期専用のものでも、通常の通信フレームデータを流用したものでも構わない。   As a premise of this determination method, a communication device (for example, the communication device 2A) serving as a master of time counter information needs to transmit communication frame data at a predetermined arbitrary cycle. The communication frame data to be transmitted may be dedicated for synchronization or may be obtained by diverting normal communication frame data.

同期未完状態の受信部5は、通信装置2Aから通信フレームデータを受信すると、SP変換回路33、逆変換テーブル34、デマルチプレクサ35、ビット抽出部36を介して復号された計時カウンタ情報f11を抽出する。同じく通信フレームデータから抽出されたチェックコードf12が第2判定回路40によって判定され、シーケンス番号f13が第3判定回路42によって判定された後、計時カウンタ情報f11が第1記憶回路43に一旦格納される。   When receiving the communication frame data from the communication device 2A, the reception unit 5 in the incomplete synchronization state extracts the time counter information f11 decoded through the SP conversion circuit 33, the inverse conversion table 34, the demultiplexer 35, and the bit extraction unit 36. To do. Similarly, after the check code f12 extracted from the communication frame data is determined by the second determination circuit 40 and the sequence number f13 is determined by the third determination circuit 42, the time counter information f11 is temporarily stored in the first storage circuit 43. The

次に、受信部5は、通信装置2Aから現周期(n+1周期)の通信フレームデータを受信すると再び復号処理を実施し、現周期目の通信フレームデータから計時カウンタ情報f11を抽出し、チェックコードf12及びシーケンス番号f13のチェックを実施する。情報抽出部7は、以下の第1及び第2要件を満たす場合に、現周期(n+1周期)の計時カウンタ情報f11を第1記憶回路43に記憶し、第1記憶回路43に記憶されていた前周期(n周期)の計時カウンタ情報f11を第2記憶回路44にシフトして格納する。第1要件は、通信フレームデータから抽出されたチェックコードf12と、通信フレームデータのフレーム情報から生成されたチェックコードが一致することである。第2要件は、通信フレームデータから抽出されたシーケンス番号f13と、シーケンス番号前周期記憶回路41に記憶された前周期のシーケンス番号f13とが異なっていることである。   Next, when receiving the communication frame data of the current cycle (n + 1 cycle) from the communication device 2A, the receiving unit 5 performs the decoding process again, extracts the time counter information f11 from the communication frame data of the current cycle, and checks the check code. Check f12 and sequence number f13. When the following first and second requirements are satisfied, the information extraction unit 7 stores the time counter information f11 of the current period (n + 1 period) in the first memory circuit 43 and is stored in the first memory circuit 43. The clock counter information f11 of the previous period (n period) is shifted and stored in the second memory circuit 44. The first requirement is that the check code f12 extracted from the communication frame data matches the check code generated from the frame information of the communication frame data. The second requirement is that the sequence number f13 extracted from the communication frame data is different from the sequence number f13 of the previous cycle stored in the sequence number previous cycle storage circuit 41.

そして、第4判定回路45は、第1記憶回路43と第2記憶回路44にそれぞれ格納された前周期と現周期の計時カウンタ情報f11の差分をフレーム送信間隔時間の許容誤差(第1の誤差の一例)の範囲と比較する。第4判定回路45は、この差分がフレーム送信間隔時間の許容誤差の範囲内に収まっていれば、計時カウンタ回路37を他の通信装置の計時カウンタ回路と同期しても良いと判断する。そして、計時カウンタ回路37は、第1記憶回路43に記憶される現周期の計時カウンタ情報f11を自身に複写することで、計時カウンタ情報f11に、計時カウンタ回路37が計時する計時カウンタ情報を同期することが可能となる。   Then, the fourth determination circuit 45 calculates the difference between the previous cycle and the current cycle time counter information f11 stored in the first storage circuit 43 and the second storage circuit 44, respectively, as an allowable error (first error in the frame transmission interval time). Compared with the range of (example). The fourth determination circuit 45 determines that the time counter circuit 37 may be synchronized with the time counter circuit of another communication device if the difference is within the allowable error range of the frame transmission interval time. Then, the time counter circuit 37 synchronizes the time counter information timed by the time counter circuit 37 to the time counter information f11 by copying the time counter information f11 of the current period stored in the first memory circuit 43 to itself. It becomes possible to do.

図7は、認証判定回路46の状態遷移の例を示す説明図である。   FIG. 7 is an explanatory diagram illustrating an example of state transition of the authentication determination circuit 46.

上述したように受信部5の計時カウンタ回路37は、マスタとなる通信装置との間で同期未完状態(非同期状態)と、同期状態の2つの状態を遷移する。そして、認証判定回路46は、計時カウンタ回路37が同期未完状態であれば、計時カウンタ回路37が同期未完状態から同期状態に遷移するまでに2段階の認証ステップ(第1及び第2の認証ステップ)を必要とする。
このように認証判定回路46が2段階の認証ステップを要するのは以下の理由による。
制御通信では、
ネットワークNに生じた一過性ノイズ等の外乱に通信フレームデータが晒されることにより、通信フレームデータの一部が一時的に欠損する現象(不確実性)が発生する場合がある。不確実性が発生すると、一過性ノイズによる前周期のフレーム欠損が原因となって、本来は正常に判定できるはずの現周期の通信フレームデータをも認証判定回路46が破棄する可能性がある。このように現周期の通信フレームデータを破棄する動作は、通信における一過性のエラー耐性を不必要に弱めることに他ならず、通信フレームデータを連続して送受信することができなくなるため許容できない。よって、受信部5は、計時カウンタ回路37が同期未完状態であれば、第1記憶回路43と第2記憶回路44を用いてマスタとなる通信装置との間で計時カウンタ回路37が生成する計時カウンタ情報を同期する同期処理を実施する。この同期処理において、受信部5の認証判定回路46は、2段階の認証ステップを採用する。第1の認証ステップは、第2判定回路40と第3判定回路42がいずれもOK判定であり、第4判定回路45がNG判定であれば、認証判定回路46の状態を認証未判定53から認証中間判定OK51に遷移することを認証する処理である。第2の認証ステップは、第2判定回路40、第3判定回路42、第4判定回路45がいずれもOK判定であれば、認証判定回路46の状態を認証未判定53から認証判定OK52に遷移することを認証する処理である。
以下に、マスタとなる他の通信装置によって生成される計時カウンタ情報と、受信部5の計時カウンタ回路37が生成する計時カウンタ情報との同期がされていない同期未完状態において、認証判定回路46が同期状態に遷移する状態遷移について説明する。
As described above, the time counter circuit 37 of the receiving unit 5 transitions between the synchronization incomplete state (asynchronous state) and the synchronous state with the master communication device. Then, if the time counter circuit 37 is in an incomplete synchronization state, the authentication determination circuit 46 has two authentication steps (first and second authentication steps) until the time counter circuit 37 transitions from the synchronization incomplete state to the synchronization state. ) Is required.
The reason why the authentication determination circuit 46 requires two authentication steps as described above is as follows.
In control communication,
When communication frame data is exposed to disturbance such as transient noise generated in the network N, a phenomenon (uncertainty) in which a part of the communication frame data is temporarily lost may occur. When the uncertainty occurs, the authentication determination circuit 46 may discard the communication frame data of the current cycle that should be normally determined due to the frame loss of the previous cycle due to transient noise. . The operation of discarding the communication frame data in the current cycle in this way is not only unnecessarily weakening the transient error tolerance in communication, but also cannot be allowed because communication frame data cannot be continuously transmitted and received. . Therefore, if the time counter circuit 37 is in an incomplete synchronization state, the reception unit 5 uses the first memory circuit 43 and the second memory circuit 44 to generate the time counter generated by the time counter circuit 37 between the master communication devices. A synchronization process for synchronizing counter information is performed. In this synchronization process, the authentication determination circuit 46 of the receiving unit 5 employs a two-step authentication step. In the first authentication step, if both the second determination circuit 40 and the third determination circuit 42 are OK determination and the fourth determination circuit 45 is NG determination, the state of the authentication determination circuit 46 is changed from the authentication non-determination 53 to the state. This is a process for authenticating the transition to the authentication intermediate determination OK51. In the second authentication step, if the second determination circuit 40, the third determination circuit 42, and the fourth determination circuit 45 are all OK, the state of the authentication determination circuit 46 is changed from the authentication non-determination 53 to the authentication determination OK 52. It is a process of authenticating
In the following, in the incomplete synchronization state in which the time counter information generated by the other communication device serving as the master and the time counter information generated by the time counter circuit 37 of the receiver 5 are not synchronized, the authentication determination circuit 46 The state transition that transitions to the synchronous state will be described.

本実施の形態例において認証判定回路46の状態は、計時カウンタ同期未完状態50と計時カウンタ同期状態60に分けられる。計時カウンタ同期未完状態50では、認証判定回路46が、認証中間判定OK51、認証判定OK52、認証未判定53、認証判定NG54の各状態を遷移する。また、計時カウンタ同期状態60では、認証判定回路46が、認証判定OK61、認証未判定62、認証未判定63の各状態を遷移する。   In the present embodiment, the state of the authentication determination circuit 46 is divided into a time counter synchronization incomplete state 50 and a time counter synchronization state 60. In the time counter synchronization incomplete state 50, the authentication determination circuit 46 transitions between the authentication intermediate determination OK51, the authentication determination OK52, the authentication not determination 53, and the authentication determination NG54. In the time counter synchronization state 60, the authentication determination circuit 46 transitions between the authentication determination OK 61, the authentication not determined 62, and the authentication not determined 63 states.

まず、計時カウンタ情報が同期未完である初期状態の認証未判定53から説明を始める。認証未判定53は、計時カウンタ同期未完状態50の中にあり、この時点では、計時カウンタ回路37が生成する計時カウンタ情報の許容誤差判定を行う第1判定回路38は機能していない。   First, the description will be started from the unauthenticated determination 53 in the initial state where the time counter information is incomplete. The authentication non-determination 53 is in the time counter synchronization incomplete state 50, and at this time, the first determination circuit 38 that performs the allowable error determination of the time counter information generated by the time counter circuit 37 does not function.

第2判定回路40は、信号路d31を通じて入力する、復号されたチェックコードf12と、チェックコード生成回路39が通信フレームデータから生成したチェックコードとを比較し、チェックコードが一致しているか否かを判定する(第2判定処理)。第2判定回路40は認証判定回路46に対して、チェックコードが一致していればOK判定を出力し、不一致であればNG判定を出力する。チェックコードが不一致であるとは、攻撃者によってフレーム情報が書き替えられた可能性があることを意味する。   The second determination circuit 40 compares the decoded check code f12 input through the signal path d31 with the check code generated from the communication frame data by the check code generation circuit 39, and determines whether the check codes match. Is determined (second determination process). The second determination circuit 40 outputs an OK determination to the authentication determination circuit 46 if the check codes match, and outputs an NG determination if they do not match. If the check codes do not match, it means that the attacker may have rewritten the frame information.

第3判定回路42は、信号路d32を通じて入力する、復号された現周期のシーケンス番号f13と、シーケンス番号前周期記憶回路41に記憶された前周期のシーケンス番号f13とを比較する。そして、第3判定回路42は、これらのシーケンス番号が不一致であるか否かを判定する(第3判定処理)。第3判定回路42は認証判定回路46に対して、シーケンス番号が不一致であればOK判定を出力し、一致していればNG判定を出力する。シーケンス番号が一致するとは、攻撃者がネットワークN上で通信フレームデータを窃取し、複写した可能性がある通信フレームデータを受信したことを意味する。   The third determination circuit 42 compares the decoded sequence number f13 of the current cycle input through the signal path d32 with the sequence number f13 of the previous cycle stored in the sequence number previous cycle storage circuit 41. Then, the third determination circuit 42 determines whether or not these sequence numbers do not match (third determination process). The third determination circuit 42 outputs an OK determination to the authentication determination circuit 46 if the sequence numbers do not match, and outputs an NG determination if they match. Matching sequence numbers means that the attacker has stolen communication frame data on the network N and received communication frame data that may have been copied.

第4判定回路45は、信号路d30を通じて入力する、第1記憶回路43に記憶された計時カウンタ情報と、第2記憶回路44に記憶された計時カウンタ情報との差分が許容誤差範囲内であるかを判定する(第4判定処理)。第4判定回路45は認証判定回路46に対して、計時カウンタ情報の差分が許容誤差の範囲内であればOK判定を出力し、範囲外であればNG判定を出力する。計時カウンタ情報の差分が許容誤差の範囲外であるとは、受信した通信フレームデータは定周期に受信したものではなく、制御通信データを利用できないことを意味する。なお、初期状態では、第1記憶回路43に計時カウンタ情報が格納されるものの、第2記憶回路44には何も格納されていないため、第4判定回路45はNG判定を出力する。   In the fourth determination circuit 45, the difference between the time counter information stored in the first memory circuit 43 and the time counter information stored in the second memory circuit 44, which is input through the signal path d30, is within an allowable error range. Is determined (fourth determination process). The fourth determination circuit 45 outputs an OK determination to the authentication determination circuit 46 if the time counter information difference is within the allowable error range, and outputs an NG determination if the difference is outside the range. That the difference in the time counter information is outside the allowable error range means that the received communication frame data is not received at regular intervals, and the control communication data cannot be used. In the initial state, the time counter information is stored in the first memory circuit 43, but nothing is stored in the second memory circuit 44. Therefore, the fourth determination circuit 45 outputs an NG determination.

第2判定回路40と第3判定回路42がそれぞれチェックコードとシーケンス番号の判定結果をOK判定とし、第4判定回路45が計時カウンタ情報をNGと判定したならば、認証判定回路46の状態は、認証未判定53から認証中間判定OK51に遷移する(第1の認証ステップ)。第2判定回路40又は第3判定回路42にてチェックコード又はシーケンス番号のいずれかをNGと判定したならば、認証判定回路46の状態は認証判定NG54に遷移する。このとき、認証判定回路46は、受信した通信フレームデータを破棄する。   If the second determination circuit 40 and the third determination circuit 42 determine that the check code and sequence number determination results are OK, respectively, and the fourth determination circuit 45 determines that the time counter information is NG, the state of the authentication determination circuit 46 is Then, the process proceeds from the authentication non-determination 53 to the authentication intermediate determination OK 51 (first authentication step). If the second determination circuit 40 or the third determination circuit 42 determines that either the check code or the sequence number is NG, the state of the authentication determination circuit 46 transitions to the authentication determination NG54. At this time, the authentication determination circuit 46 discards the received communication frame data.

認証中間判定OK51に遷移した後、認証判定回路46は認証判定報告信号d34を第1記憶回路43と第2記憶回路44に出力する。認証判定報告信号d34が入力すると、第1記憶回路43に格納されていた計時カウンタ情報が第2記憶回路44にシフトされる。
計時カウンタ情報がシフトされた後、受信した通信フレームデータは破棄され、認証判定回路46の状態は再び認証未判定53に戻る。
After the transition to the authentication intermediate determination OK 51, the authentication determination circuit 46 outputs the authentication determination report signal d 34 to the first storage circuit 43 and the second storage circuit 44. When the authentication determination report signal d34 is input, the time counter information stored in the first memory circuit 43 is shifted to the second memory circuit 44.
After the time counter information is shifted, the received communication frame data is discarded, and the state of the authentication determination circuit 46 returns to the authentication non-determination 53 again.

認証判定回路46の状態が認証判定NG54であれば、第1記憶回路43に格納されていた計時カウンタ情報は第2記憶回路44にシフトしない。この理由は、第2判定回路40又は第3判定回路42のいずれかがNGと判定したということは、受信した通信フレームデータが悪意ある第三者(攻撃者)によって送信されたことが明確であるからである。このため、受信した通信フレームデータに格納された計時カウンタ情報で第2記憶回路44を上書きしてはならず、受信した通信フレームデータは破棄された後、認証判定回路46の状態が認証未判定53に戻る。   If the state of the authentication determination circuit 46 is the authentication determination NG 54, the time counter information stored in the first storage circuit 43 is not shifted to the second storage circuit 44. The reason for this is that either the second determination circuit 40 or the third determination circuit 42 determines NG, and it is clear that the received communication frame data was transmitted by a malicious third party (attacker). Because there is. For this reason, the second storage circuit 44 should not be overwritten with the time counter information stored in the received communication frame data, and the received communication frame data is discarded, and the state of the authentication determination circuit 46 is not authenticated. Return to 53.

受信部5が次の周期の通信フレームデータを受信した際にも、現周期で通信フレームデータを受信したときと同様の受信処理が行われる。これにより、第4判定回路45は、第1記憶回路43に新たに格納された現周期の計時カウンタ情報と、第2記憶回路44にシフトして記憶される前周期の計時カウンタ情報との差分を比較することが可能となる。   When the receiving unit 5 receives the communication frame data of the next cycle, the same reception process as when the communication frame data is received in the current cycle is performed. As a result, the fourth determination circuit 45 makes a difference between the time counter information of the current cycle newly stored in the first memory circuit 43 and the time counter information of the previous cycle stored in the second memory circuit 44 after being shifted. Can be compared.

そして、第4判定回路45は、計時カウンタ情報の差分が許容誤差範囲内であれば、認証判定回路46にOK判定を出力する。同時に第2判定回路40、第3判定回路42もそれぞれ認証判定回路46にOK判定を出力すれば、認証判定回路46の状態は、認証未判定53から認証判定OK52に遷移する(第2の認証ステップ)。そして、認証判定回路46は、制御装置3に対して認証判定報告信号d34をOK出力する。これにより、制御装置3は、フレーム受信制御回路32から通信フレームデータの制御通信データf4を取り込むことができる。   Then, the fourth determination circuit 45 outputs an OK determination to the authentication determination circuit 46 if the difference of the time counter information is within the allowable error range. At the same time, if the second determination circuit 40 and the third determination circuit 42 also output OK determination to the authentication determination circuit 46, the state of the authentication determination circuit 46 transitions from the authentication non-determination 53 to the authentication determination OK 52 (second authentication). Step). The authentication determination circuit 46 then outputs an authentication determination report signal d34 to the control device 3 in an OK manner. Thereby, the control device 3 can fetch the control communication data f4 of the communication frame data from the frame reception control circuit 32.

なお、認証判定報告信号d34は、計時カウンタ回路37にも入力される。これにより、計時カウンタ回路37が計時する計時カウンタ情報は、受信した通信フレームデータから抽出された計時カウンタ情報f11の値で書き換えられる。これにより、送信側の通信装置2Aと、受信側の通信装置2Bは、計時カウンタ情報の同期を完了する。   The authentication determination report signal d34 is also input to the time counter circuit 37. Thereby, the time counter information timed by the time counter circuit 37 is rewritten with the value of the time counter information f11 extracted from the received communication frame data. Thereby, the communication device 2A on the transmission side and the communication device 2B on the reception side complete the synchronization of the time counter information.

通信フレームデータの受信処理と、計時カウンタ情報の同期処理が完了すると、認証判定回路46の状態は、計時カウンタ同期状態60の中の認証未判定62に遷移する。以降の受信処理では、第4判定回路45ではなく第1判定回路38が動作し、認証処理を引き継ぐことになる。   When the communication frame data reception process and the time counter information synchronization process are completed, the state of the authentication determination circuit 46 transitions to the authentication non-determination 62 in the time counter synchronization state 60. In the subsequent reception process, not the fourth determination circuit 45 but the first determination circuit 38 operates and takes over the authentication process.

第1判定回路38では、信号路d30を通じて入力する、受信した通信フレームデータから復号された計時カウンタ情報f11と、計時カウンタ回路37が出力する計時カウンタ情報とを比較し、計時カウンタ情報の誤差が許容誤差範囲内であるかを判定する。   In the first determination circuit 38, the time counter information f11 decoded from the received communication frame data input through the signal path d30 is compared with the time counter information output from the time counter circuit 37, and an error in the time counter information is detected. It is determined whether it is within the allowable error range.

フレーム受信制御回路32により認証判定実施信号d22が発行されたタイミングで、第1判定回路38、第2判定回路40、第3判定回路42の全ての判定結果がOKであれば、認証判定回路46の状態は、認証未判定62から認証判定OK61に遷移する。そして、認証判定回路46は、制御装置3に認証判定報告信号d34をOK出力することで、通信フレームデータの受信処理と計時カウンタ回路37の同期処理を同時に行う。また、制御装置3は、フレーム受信制御回路32から通信フレームデータの制御通信データf4を取り込むことができる。   If all the determination results of the first determination circuit 38, the second determination circuit 40, and the third determination circuit 42 are OK at the timing when the authentication determination execution signal d22 is issued by the frame reception control circuit 32, the authentication determination circuit 46 The state changes from authentication not determined 62 to authentication determination OK 61. Then, the authentication determination circuit 46 outputs the authentication determination report signal d34 to the control device 3, thereby simultaneously performing the communication frame data reception process and the time counter circuit 37 synchronization process. Further, the control device 3 can fetch the control communication data f4 of the communication frame data from the frame reception control circuit 32.

第1判定回路38、第2判定回路40、第3判定回路42の判定結果に一つでもNGがあると、認証判定回路46の状態は、認証未判定62において認証判定NG63に遷移し、認証判定回路46は受信した通信フレームデータを破棄する。   If at least one of the determination results of the first determination circuit 38, the second determination circuit 40, and the third determination circuit 42 is NG, the state of the authentication determination circuit 46 transitions to the authentication determination NG 63 when the authentication is not determined 62, and the authentication The determination circuit 46 discards the received communication frame data.

正常な通信が継続している限り、計時カウンタ回路37は定期的に認証判定報告信号d34を認証判定回路46から受信し、計時カウンタ情報の同期を行う。しかし、計時カウンタ情報のズレが許容できなくなるほど、認証判定報告信号d34の受信が滞ると、計時カウンタ回路37は計時カウンタ同期タイムアウト発生信号d35を認証判定回路46に出力する。計時カウンタ回路37から計時カウンタ同期タイムアウト発生信号d35を受けると、認証判定回路46の状態は、認証未判定62から計時カウンタ同期未完状態50の認証未判定53に遷移する。これにより再び計時カウンタ情報の同期処理が行われることとなる。   As long as normal communication continues, the time counter circuit 37 periodically receives the authentication determination report signal d34 from the authentication determination circuit 46, and synchronizes the time counter information. However, when the reception of the authentication determination report signal d34 is delayed so that the deviation of the time counter information becomes unacceptable, the time counter circuit 37 outputs the time counter synchronization timeout occurrence signal d35 to the authentication determination circuit 46. When receiving the time counter synchronization timeout occurrence signal d35 from the time counter circuit 37, the state of the authentication determination circuit 46 changes from the authentication non-determination 62 to the authentication non-determination 53 of the time counter synchronization incomplete state 50. As a result, the clock counter information is synchronized again.

以上説明した第1の実施の形態例に係る通信システム1によれば、通信フレームデータを送信する度に、乱数f14を用いて電子署名f5を生成する。この乱数f14は、通信フレームデータの制御通信データf4とは何の関連もないため、ネットワークN上に出現する電子署名f5の内容が不規則に変化する。このため、第三者の盗聴による電子署名f5の解読を困難とすることができる。   According to the communication system 1 according to the first embodiment described above, the electronic signature f5 is generated using the random number f14 every time communication frame data is transmitted. Since the random number f14 has nothing to do with the control communication data f4 of the communication frame data, the contents of the electronic signature f5 appearing on the network N change irregularly. For this reason, it is possible to make it difficult to decrypt the electronic signature f5 by eavesdropping by a third party.

また、攻撃者が通信フレームデータをキャプチャし、なりすましによってキャプチャした通信フレームデータを通信装置に連続発行して制御システムの動作を停滞させるリスクに対応可能である。この場合、通信フレームデータに格納された電子署名f5内の計時カウンタがフリーズ状態で受信部5に受信され続ける。このため、受信部5は、計時カウンタ情報を比較処理することにより、フリーズ状態の計時カウンタ情報を許容誤差の範囲外と判定し、通信フレームデータを破棄することができる。   Further, it is possible to cope with the risk that the attacker captures the communication frame data and continuously issues the communication frame data captured by impersonation to the communication device to stagnate the operation of the control system. In this case, the time counter in the electronic signature f5 stored in the communication frame data is continuously received by the receiving unit 5 in a frozen state. For this reason, the receiving unit 5 can determine that the time counter information in the frozen state is out of the allowable error range by comparing the time counter information, and discard the communication frame data.

また、攻撃者が計時カウンタ情報の許容誤差範囲の時間内で高速に通信フレームデータをキャプチャし、電子署名f5だけをそのままにして、制御通信データf4を改ざんする場合がある。この場合であっても、受信部5はチェックコードf12が不一致であることにより、通信フレームデータを破棄することができる。   Further, there is a case where the attacker captures the communication frame data at high speed within the allowable error range of the time counter information, and falsifies the control communication data f4 while leaving only the electronic signature f5. Even in this case, the receiving unit 5 can discard the communication frame data because the check code f12 does not match.

また、高速に動作する攻撃者が、過負荷状態にする目的で時間局所的にキャプチャした通信フレームデータを連続発行した場合には、シーケンス番号f13がインクリメントされずにフリーズして見えるため、シーケンス番号チェックにより、通信フレームデータを破棄することができる。   In addition, when an attacker operating at high speed continuously issues communication frame data captured locally for the purpose of overloading, the sequence number f13 appears to be frozen without being incremented. The communication frame data can be discarded by the check.

以上の認証処理は、FCSチェックを通過した通信フレームデータに対して実施される。このため、認証破棄される通信フレームデータを検知するということは、人為的に不正介入した第三者が存在している可能性があると判断することができる。   The above authentication process is performed on communication frame data that has passed the FCS check. For this reason, detecting communication frame data whose authentication is discarded may determine that there is a possibility that a third party who has artificially intervened illegally exists.

よって、システム管理者は、認証破棄状態の検知が単位時間あたりに頻発するようであればセキュリティ攻撃を受けているとみなす。そして、攻撃を受けていると疑われる通信装置2A〜2Mのいずれかを制御システムからの切り離し、それに準ずる縮退運転、運転系の切替え、又は制御システム自体を一旦停止する、等の保全措置を講じることができる。   Therefore, the system administrator considers that a security attack has been received if the detection of the authentication cancellation state frequently occurs per unit time. Then, any one of the communication devices 2A to 2M suspected of being attacked is disconnected from the control system, and a decrementing operation corresponding to the communication device, switching of the operating system, or temporarily stopping the control system itself is taken. be able to.

また、本実施の形態例は、シンプル、かつ小規模なハードリソースで実現可能であり、FPGA(Field Programmable Gate Array)等に容易に実装できる。本実施の形態例に係る機能をソフトウェアにより実装することも可能であるが、ハードウェアであれば、通常のフレーム処理と認証処理を並列に実施できるため、時間的なオーバヘッドが皆無となる。また、ハードウェアで実現する際、認証判定回路46の機能をOSI参照モデルでいうレイヤ2以下で実装可能なため、過負荷攻撃があったとしてもレイヤ3以上の処理が圧迫されることがない、といった特徴をもつ。   In addition, the present embodiment can be realized with a simple and small-scale hardware resource, and can be easily implemented in an FPGA (Field Programmable Gate Array) or the like. Although the functions according to the present embodiment can be implemented by software, if hardware, normal frame processing and authentication processing can be performed in parallel, so there is no time overhead. In addition, since the function of the authentication determination circuit 46 can be implemented in the layer 2 or lower referred to in the OSI reference model when realized by hardware, even if there is an overload attack, processing in the layer 3 or higher is not compressed. , Has the characteristics.

また、電子文書に署名を付加する方式として、ISO/IEC18014で標準化された電子文書のタイムスタンプサービスを用いたものがある。このサービスでは、TSA(Time-Stamping Authority)が電子文書のハッシュ値とタイムスタンプを結合させたタイムスタンプトークンを生成し、発行することで電子文書作成日付の信頼性を保証することができる。このサービスでは電子署名f5を生成するために「計時」を用いる点で本実施の形態例に係る動作と類似しているが、本実施の形態例に係る受信部5では受信したデータの有効期限を認証判定条件に設けている点が異なる。つまり、電子署名f5の効力に、時間局在性を持たせている点が本発明の特徴である。例えば、電子署名f5に符号化された計時カウンタ情報f11が含まれることにより、計時カウンタ情報f11の許容範囲外となるタイミングで受信した通信フレームデータは破棄される。これにより古い制御通信データを含む通信フレームデータを制御装置3が取り込むことがなくなり、制御装置3が誤った処理を行わなくなる。   As a method for adding a signature to an electronic document, there is a method using a time stamp service of an electronic document standardized by ISO / IEC18014. In this service, a time-stamping authority (TSA) generates a time-stamp token that combines a hash value and a time stamp of an electronic document, and issues the time-stamping certificate to guarantee the reliability of the electronic document creation date. This service is similar to the operation according to the present embodiment in that “time keeping” is used to generate the electronic signature f5. However, the receiving unit 5 according to the present embodiment uses the expiration date of the received data. Is different from the authentication judgment condition. That is, the feature of the present invention is that the time signature is given to the effectiveness of the electronic signature f5. For example, by including the time counter information f11 encoded in the electronic signature f5, the communication frame data received at a timing outside the allowable range of the time counter information f11 is discarded. As a result, the control device 3 does not capture communication frame data including old control communication data, and the control device 3 does not perform erroneous processing.

また、本実施の形態例に係る認証処理は、制御システムの直接的なリスクである「制御停止、停滞」、及び「制御の暴走」を防止することをセキュリティ要件として掲げる。そして、本認証処理は、リアルタイム性を損なうことなく悪意ある第三者からの「過負荷アクセス攻撃」、「偽装アクセス攻撃(データ改ざん)」から制御システムを保護することが可能となる。また、フレーム情報に対して、乱数によってランダマイズされた計時情報付きの電子署名f5を付加することで、制御システムを保護することが可能となる。   In addition, the authentication process according to the present embodiment has a security requirement to prevent “control stoppage and stagnation” and “control runaway” that are direct risks of the control system. This authentication process can protect the control system from an “overload access attack” and a “spoofed access attack (data alteration)” from a malicious third party without impairing real-time performance. Further, the control system can be protected by adding an electronic signature f5 with time information randomized by random numbers to the frame information.

なお、送受信に際して通信フレームデータに秘匿を要する任意のデータがある場合、任意のデータのみを暗号化対象に含めれば、データの一部だけを暗号化する「部分暗号」に本実施の形態例に係る方法を応用可能である。このとき、送信部4の電子署名生成部6は、制御通信データf4の一部を電子署名f5に含ませることで、制御通信データf4の一部をも暗号化対象とする。そして、受信部5の判定部8は、電子署名f5を復号して得た制御通信データf4の一部を通信フレームデータの判定に用いないようにする。これにより秘匿を要するデータだけを暗号化し、復号することが可能となる。   In addition, when there is arbitrary data that needs to be concealed in the communication frame data at the time of transmission / reception, if only arbitrary data is included in the encryption target, “partial encryption” that encrypts only a part of the data is included in this embodiment. Such a method can be applied. At this time, the electronic signature generation unit 6 of the transmission unit 4 includes a part of the control communication data f4 in the electronic signature f5 so that a part of the control communication data f4 is also an encryption target. Then, the determination unit 8 of the reception unit 5 does not use a part of the control communication data f4 obtained by decrypting the electronic signature f5 for determination of communication frame data. This makes it possible to encrypt and decrypt only the data that needs to be concealed.

[2.第2の実施の形態例]
次に、本発明の第2の実施の形態例に係る受信部5の動作例について説明する。
図8は、第2の実施の形態例に係る認証判定回路46の状態遷移の例を示す説明図である。ここでは、計時カウンタ情報の同期を考慮しない方法について説明する。
[2. Second embodiment]
Next, an operation example of the receiving unit 5 according to the second embodiment of the present invention will be described.
FIG. 8 is an explanatory diagram illustrating an example of state transition of the authentication determination circuit 46 according to the second embodiment. Here, a method that does not consider synchronization of time counter information will be described.

この場合、送信部4は、計時カウンタ回路13を備えていない。ブロック生成部17は、チェックコードf12、シーケンス番号f13、及び乱数f14からそれぞれ単ビット単位、又は複数ビット単位で分離した単位固定長のビットを並べ替えてブロックd8〜d10を生成する。そして、符号化部21は、ブロックd8〜d10に基づいて、電子署名f5を生成する。   In this case, the transmission unit 4 does not include the time counter circuit 13. The block generation unit 17 generates blocks d8 to d10 by rearranging the unit fixed length bits separated from the check code f12, the sequence number f13, and the random number f14 in units of single bits or in units of multiple bits. Then, the encoding unit 21 generates an electronic signature f5 based on the blocks d8 to d10.

また、受信部5は、計時カウンタ回路37、第1判定回路38を備えていない。このため、情報抽出部7は、第2判定回路40、第3判定回路42、第4判定回路45により所定の判定を行い、認証判定回路46は、これらの判定回路の判定結果に基づいて状態が遷移し、通信フレームデータに対する処理を行う。   The receiver 5 does not include the time counter circuit 37 and the first determination circuit 38. Therefore, the information extraction unit 7 performs a predetermined determination by the second determination circuit 40, the third determination circuit 42, and the fourth determination circuit 45, and the authentication determination circuit 46 determines the state based on the determination results of these determination circuits. Transitions and performs processing on communication frame data.

認証判定回路46の状態は、認証中間判定OK71、認証判定OK72、認証未判定73、認証判定NGの各状態を遷移する。初期状態である認証未判定73から認証中間判定OK71、認証判定OK72、認証判定NG74に遷移する条件は、図7に示した認証未判定53から認証中間判定OK51、認証判定OK52、認証判定NG54に遷移する条件と同じである。   The state of the authentication determination circuit 46 transitions between authentication intermediate determination OK 71, authentication determination OK 72, authentication non-determination 73, and authentication determination NG. The conditions for transition from the authentication undetermined 73 that is the initial state to the authentication intermediate determination OK 71, the authentication determination OK 72, and the authentication determination NG 74 are from the authentication undetermined 53 to the authentication intermediate determination OK 51, the authentication determination OK 52, and the authentication determination NG 54 shown in FIG. Same as the transition condition.

ただし、図8では計時カウンタ情報の同期状態60に該当する状態がなく、代わりに認証判定OK72から認証未判定73に遷移する遷移条件が追加された点が異なる。この遷移条件は、フレーム受信処理と、第1記憶回路43の前周期の計時カウンタ情報f11を、第2記憶回路44にシフトする処理が完了した時である。以降、他の通信装置から通信フレームデータを受信する通信間隔時間が、第4判定回路45が判定する許容誤差範囲内であれば、認証判定回路46は、認証未判定73と認証判定OK72の状態遷移を繰り返す。   However, FIG. 8 is different in that there is no state corresponding to the synchronization state 60 of the time counter information, and a transition condition for transition from the authentication determination OK 72 to the authentication non-determination 73 is added instead. This transition condition is when the frame reception process and the process of shifting the time counter information f11 of the previous cycle of the first storage circuit 43 to the second storage circuit 44 are completed. Thereafter, if the communication interval time for receiving communication frame data from another communication device is within the allowable error range determined by the fourth determination circuit 45, the authentication determination circuit 46 determines whether the authentication is not determined 73 and the authentication determination OK 72. Repeat the transition.

このように計時カウンタ情報の許容誤差の範囲を広くしても支障がないと運用者が判断できるのであれば、通信装置間の同期をとることなく、通信フレームデータの送受信に必要とされるセキュリティを実現することが可能となる。   In this way, if the operator can determine that there is no problem even if the tolerance range of the time counter information is widened, the security required for transmission / reception of communication frame data without synchronization between the communication devices. Can be realized.

本実施の形態例によれば、計時カウンタ回路37及び第1判定回路38の実装が不要となるため、受信部5を構成するハードウェアの実装が簡素化されて製造コストを低減することができる。   According to the present embodiment, it is not necessary to mount the time counter circuit 37 and the first determination circuit 38. Therefore, mounting of the hardware configuring the receiving unit 5 is simplified, and the manufacturing cost can be reduced. .

なお、本実施の形態例において、先述した一過性ノイズによるフレーム欠損の影響を第4判定回路45にて予め考慮しておく必要がある。具体的には許容誤差を大きくしなければならなくなる点である。例えば、通信フレームデータの受信間隔がTミリ秒とする。一過性のノイズがないときは、第1記憶回路43と第2記憶回路44に格納された計時カウンタ情報の差分は常にTミリ秒程度となるため、第4判定回路45には、Tミリ秒に多少のマージンを加えた値でよい。しかし、一過性ノイズがN回連続する可能性があると想定した場合には、この許容誤差をN×Tミリ秒にマージンを加えた値にしなくてはならず、電子署名f5の有効期限である時間局在性が弱くなることにつながる。この点に注意すれば、本実施の形態例においても十分に実用性が高いと言える。   In the present embodiment, the fourth determination circuit 45 needs to consider the influence of the frame loss due to the transient noise described above in advance. Specifically, the tolerance must be increased. For example, assume that the communication frame data reception interval is T milliseconds. When there is no transient noise, the difference between the time counter information stored in the first memory circuit 43 and the second memory circuit 44 is always about T milliseconds. A value with a slight margin added to seconds is sufficient. However, when it is assumed that there is a possibility that the transient noise may continue N times, this tolerance must be set to a value obtained by adding a margin to N × T milliseconds, and the expiration date of the electronic signature f5 This leads to a weak temporal localization. If attention is paid to this point, it can be said that the present embodiment is sufficiently practical.

[3.変形例]
なお、上述した第1及び第2の実施の形態例に係る送信部4及び受信部5は、それぞれ送信機能だけを有する送信装置、受信機能だけを有する受信装置として用いてもよい。
図9は、通信システム1Aのシステム構成図を示す。
通信システム1Aは、送信装置9と受信装置10を備えており、送信装置9から受信装置10に通信フレームデータを片方向に送受信する。
送信装置9は、制御装置3と送信部4を備え、ネットワークNを介して受信装置10に通信フレームデータを送信する。
受信装置10は、制御装置3と受信部5を備え、ネットワークNを介して送信装置9から通信フレームデータを受信する。
このような構成とした通信システム1Aであっても、通信フレームデータを安全に送受信することが可能である。
[3. Modified example]
The transmission unit 4 and the reception unit 5 according to the first and second exemplary embodiments described above may be used as a transmission device having only a transmission function and a reception device having only a reception function, respectively.
FIG. 9 shows a system configuration diagram of the communication system 1A.
The communication system 1A includes a transmission device 9 and a reception device 10, and transmits and receives communication frame data from the transmission device 9 to the reception device 10 in one direction.
The transmission device 9 includes a control device 3 and a transmission unit 4, and transmits communication frame data to the reception device 10 via the network N.
The receiving device 10 includes a control device 3 and a receiving unit 5, and receives communication frame data from the transmitting device 9 via the network N.
Even in the communication system 1A configured as described above, it is possible to safely transmit and receive communication frame data.

また、電子署名生成部6は、複数の変換テーブル19を有し、電子署名f5を生成するために用いられた変換テーブル19に関する情報を電子署名f5に付加する。そして、情報抽出部7は、複数の逆変換テーブル34を有し、電子署名f5に付加された変換テーブル19に関する情報に基づいて選択した逆変換テーブル34を用いて電子署名f5を復号する。このように複数の変換テーブル19と、複数の逆変換テーブル34を用いることにより、一つの変換テーブル19、逆変換テーブル34の情報が外部に流出したとしても、直ちに他の変換テーブル19、逆変換テーブル34に切替えて処理を継続することができる。   The electronic signature generation unit 6 has a plurality of conversion tables 19, and adds information related to the conversion table 19 used to generate the electronic signature f5 to the electronic signature f5. The information extraction unit 7 includes a plurality of reverse conversion tables 34, and decrypts the electronic signature f5 using the reverse conversion table 34 selected based on the information about the conversion table 19 added to the electronic signature f5. By using a plurality of conversion tables 19 and a plurality of reverse conversion tables 34 in this way, even if information of one conversion table 19 and reverse conversion table 34 leaks to the outside, another conversion table 19 and reverse conversion are immediately Processing can be continued by switching to the table 34.

また、本発明は上述した実施の形態例に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
例えば、上述した実施の形態例は本発明を分かりやすく説明するために装置及びシステムの構成を詳細且つ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態例の構成の一部を他の実施の形態例の構成に置き換えることは可能であり、さらにはある実施の形態例の構成に他の実施の形態例の構成を加えることも可能である。また、各実施の形態例の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
Further, the present invention is not limited to the above-described embodiments, and various other application examples and modifications can be taken without departing from the gist of the present invention described in the claims.
For example, the above-described embodiments are detailed and specific descriptions of the configuration of the apparatus and the system in order to explain the present invention in an easy-to-understand manner, and are not necessarily limited to those having all the configurations described. Absent. In addition, a part of the configuration of an embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of an embodiment. Is also possible. Moreover, it is also possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.
Further, the control lines and information lines indicate what is considered necessary for the explanation, and not all the control lines and information lines on the product are necessarily shown. Actually, it may be considered that almost all the components are connected to each other.

1…通信システム、2A〜2M…通信装置、3…制御装置、4…送信部、5…受信部、6…電子署名生成部、7…情報抽出部、8…判定部、12…送信ポート、21…符号化部、30…復号部、31…受信ポート
DESCRIPTION OF SYMBOLS 1 ... Communication system, 2A-2M ... Communication apparatus, 3 ... Control apparatus, 4 ... Transmission part, 5 ... Reception part, 6 ... Digital signature production | generation part, 7 ... Information extraction part, 8 ... Determination part, 12 ... Transmission port, 21 ... Encoding unit, 30 ... Decoding unit, 31 ... Reception port

Claims (12)

他の通信装置に対して通信フレームデータを送信する送信部と、
前記他の通信装置から前記通信フレームデータを受信する受信部と、を備え、
前記送信部は、
制御装置から受信する制御通信データに基づいて生成される第1のチェックコード、前記通信フレームデータの送信順を示す第1のシーケンス番号、及び乱数を、それぞれ所定単位で分離し、所定の順序で並び替えたビット数列集合からなるブロックをエンコーダにより変換した電子署名を生成する電子署名生成部と、
前記電子署名を前記制御通信データに付加した前記通信フレームデータを他の通信装置に送信する送信ポートと、を有し、
前記受信部は、
前記他の通信装置から受信した前記通信フレームデータから前記電子署名を取り出す受信ポートと、
前記電子署名をデコーダにより逆変換した前記ブロックから前記所定の順序とは逆順で前記第1のチェックコード、前記第1のシーケンス番号、及び前記乱数を抽出する情報抽出部と、
抽出された前記第1のチェックコードと前記通信フレームデータの前記制御通信データから生成された第2のチェックコードを比較した結果と、抽出された前記第1のシーケンス番号と、前周期の前記通信フレームデータに付加された第2のシーケンス番号とを比較した結果とに基づいて、前記通信フレームデータを正常と判定した場合に、前記制御装置による前記制御通信データの取り込みを許可する判定部と、を有する
通信装置。
A transmission unit for transmitting communication frame data to another communication device;
A receiving unit for receiving the communication frame data from the other communication device,
The transmitter is
The first check code generated based on the control communication data received from the control device, the first sequence number indicating the transmission order of the communication frame data, and the random number are separated in predetermined units, respectively. An electronic signature generation unit for generating an electronic signature obtained by converting a block consisting of a rearranged bit number sequence set by an encoder;
A transmission port for transmitting the communication frame data obtained by adding the electronic signature to the control communication data to another communication device;
The receiver is
A receiving port for extracting the electronic signature from the communication frame data received from the other communication device;
An information extraction unit that extracts the first check code, the first sequence number, and the random number from the block obtained by inversely transforming the electronic signature by a decoder in a reverse order to the predetermined order;
A result of comparing the extracted first check code with the second check code generated from the control communication data of the communication frame data, the extracted first sequence number, and the communication in the previous period A determination unit that allows the control device to capture the control communication data when the communication frame data is determined to be normal based on a result of comparison with the second sequence number added to the frame data; A communication device.
前記電子署名生成部は、
前記制御通信データから前記第1のチェックコードを生成する第1のチェックコード生成部と、
前記通信フレームデータが送信される度にインクリメントされる前記第1のシーケンス番号を生成するシーケンス番号生成部と、
前記乱数を生成する乱数生成部と、
前記第1のチェックコード、前記第1のシーケンス番号、及び前記乱数からそれぞれ単ビット単位、又は複数ビット単位で分離した単位固定長のビットを並べ替えて前記ブロックを生成するブロック生成部と、
前記ブロックを前記エンコーダにより変換して前記電子署名を生成する符号化部と、を備える
請求項1に記載の通信装置。
The electronic signature generation unit
A first check code generation unit that generates the first check code from the control communication data;
A sequence number generator that generates the first sequence number that is incremented each time the communication frame data is transmitted;
A random number generator for generating the random number;
A block generation unit that generates the block by rearranging the unit fixed length bits separated from each of the first check code, the first sequence number, and the random number in units of single bits or in units of multiple bits;
The communication device according to claim 1, further comprising: an encoding unit that converts the block by the encoder to generate the electronic signature.
前記電子署名生成部は、第1の計時カウンタ情報を生成する第1の計時カウンタ情報生成部を備え、
前記ブロック生成部は、前記第1の計時カウンタ情報、前記第1のチェックコード、前記第1のシーケンス番号、及び前記乱数からそれぞれ単ビット単位、又は複数ビット単位で分離した単位固定長のビットを並べ替えて前記ブロックを生成する
請求項2に記載の通信装置。
The electronic signature generation unit includes a first time counter information generation unit that generates first time counter information,
The block generation unit includes unit fixed length bits separated from the first time counter information, the first check code, the first sequence number, and the random number in units of single bits or in units of multiple bits, respectively. The communication apparatus according to claim 2, wherein the blocks are generated by rearranging.
前記電子署名生成部は、複数の前記エンコーダを有し、前記電子署名を生成するために用いられた前記エンコーダに関する情報を前記電子署名に付加する
請求項3に記載の通信装置。
The communication apparatus according to claim 3, wherein the electronic signature generation unit includes a plurality of encoders and adds information related to the encoder used to generate the electronic signature to the electronic signature.
前記情報抽出部は、
前記電子署名を前記デコーダにより逆変換して、前記ブロックに復号する復号部と、
前記ブロックから抽出した前記単位固定長のビットを前記所定の順序で並べ替えて、前記第1のチェックコード、前記第1のシーケンス番号、及び前記乱数を取り出すビット抽出部と、
前記通信フレームデータの前記制御通信データに基づいて前記第2のチェックコードを生成する第2のチェックコード生成部と、
前周期の前記通信フレームデータから取り出された前記第1のシーケンス番号を記憶するシーケンス番号記憶部と、
現周期の前記通信フレームデータから抽出された前記第1の計時カウンタ情報を記憶する第1の計時カウンタ情報記憶部と、
前周期の前記通信フレームデータから抽出された前記第1の計時カウンタ情報を記憶する第2の計時カウンタ情報記憶部と、を備え、
前記判定部は、
前記通信フレームデータから抽出された第1のチェックコードと、前記通信フレームデータの前記制御通信データから生成された第2のチェックコードとの相違を判定するチェックコード判定部と、
現周期の前記通信フレームデータから抽出された前記通信フレームデータの送信順を示す第1のシーケンス番号と、前記シーケンス番号記憶部に記憶された、前周期の前記通信フレームデータから抽出された前記第2のシーケンス番号との相違を判定するシーケンス番号判定部と、
前記第1の計時カウンタ情報記憶部に記憶される現周期の前記第1の計時カウンタ情報と、前記第2の計時カウンタ情報記憶部にシフトされた前周期の前記第1の計時カウンタ情報との差分が第1の誤差の範囲内であるかを判定する周期間差分判定部と、
前記チェックコード判定部、前記シーケンス番号判定部及び前記周期間差分判定部の判定結果が正常であれば、前記制御装置による前記制御通信データの取り込みを許可し、前記判定結果が異常であれば、前記通信フレームデータを破棄する認証判定部と、を備える
請求項1に記載の通信装置。
The information extraction unit includes:
A decrypting unit that reversely transforms the electronic signature by the decoder and decrypts the electronic signature;
A bit extraction unit for rearranging the unit fixed-length bits extracted from the block in the predetermined order to extract the first check code, the first sequence number, and the random number;
A second check code generation unit that generates the second check code based on the control communication data of the communication frame data;
A sequence number storage unit for storing the first sequence number extracted from the communication frame data of the previous period;
A first time counter information storage unit for storing the first time counter information extracted from the communication frame data of the current period;
A second time counter information storage unit that stores the first time counter information extracted from the communication frame data of the previous period,
The determination unit
A check code determination unit that determines a difference between a first check code extracted from the communication frame data and a second check code generated from the control communication data of the communication frame data;
A first sequence number indicating the transmission order of the communication frame data extracted from the communication frame data of the current cycle, and the first sequence number extracted from the communication frame data of the previous cycle stored in the sequence number storage unit A sequence number determination unit for determining a difference from the sequence number of 2;
The first clock counter information of the current cycle stored in the first clock counter information storage unit and the first clock counter information of the previous cycle shifted to the second clock counter information storage unit An inter-period difference determining unit that determines whether the difference is within the first error range;
If the determination results of the check code determination unit, the sequence number determination unit, and the inter-period difference determination unit are normal, the control device allows the control communication data to be taken in. If the determination result is abnormal, The communication apparatus according to claim 1, further comprising: an authentication determination unit that discards the communication frame data.
前記情報抽出部は、第2の計時カウンタ情報を生成する第2の計時カウンタ情報生成部を備え、
前記判定部は、前記通信フレームデータから抽出された前記第1の計時カウンタ情報と、前記第2の計時カウンタ情報との差が第2の誤差範囲内にあるか否かを判定する現周期差分判定部を備え、
前記認証判定部は、前記現周期差分判定部、前記チェックコード判定部及び前記シーケンス番号判定部の判定結果に基づいて前記通信フレームデータに対する処理を行う
請求項5に記載の通信装置。
The information extraction unit includes a second time counter information generation unit that generates second time counter information.
The determination unit determines whether or not a difference between the first time counter information extracted from the communication frame data and the second time counter information is within a second error range. It has a judgment part,
The communication apparatus according to claim 5, wherein the authentication determination unit performs processing on the communication frame data based on determination results of the current cycle difference determination unit, the check code determination unit, and the sequence number determination unit.
前記第1のチェックコード及び前記第2のチェックコードが一致し、かつ前記第1のシーケンス番号及び前記第2のシーケンス番号が異なっている場合に、前記情報抽出部は、前記第1の計時カウンタ情報記憶部に記憶される前周期の前記計時カウンタ情報を前記第2の計時カウンタ情報記憶部にシフトし、現周期の前記計時カウンタ情報を前記第1の計時カウンタ情報記憶部に記憶する
請求項6に記載の通信装置。
When the first check code and the second check code match and the first sequence number and the second sequence number are different, the information extraction unit includes the first time counter. The clock counter information of the previous cycle stored in the information storage unit is shifted to the second clock counter information storage unit, and the clock counter information of the current cycle is stored in the first clock counter information storage unit. 6. The communication device according to 6.
マスタとなる前記他の通信装置によって生成された前記第1の計時カウンタ情報と、前記第2の計時カウンタ情報との同期がされていない同期未完状態であり、
前記第1の計時カウンタ情報記憶部に記憶される現周期の前記第1の計時カウンタ情報と、前記第2の計時カウンタ情報記憶部にシフトされた前周期の前記第1の計時カウンタ情報との差分が前記第1の誤差の範囲内である場合に、
前記第2の計時カウンタ情報生成部は、前記第1の計時カウンタ情報記憶部に記憶される現周期の前記第1の計時カウンタ情報を自身に複写することで、前記第1の計時カウンタ情報に前記第2の計時カウンタ情報を同期させる
請求項7に記載の通信装置。
The first time counter information generated by the other communication device as a master and the second time counter information are not synchronized, and are in an incomplete synchronization state;
The first clock counter information of the current cycle stored in the first clock counter information storage unit and the first clock counter information of the previous cycle shifted to the second clock counter information storage unit If the difference is within the first error range,
The second clock counter information generation unit copies the first clock counter information of the current period stored in the first clock counter information storage unit to the first clock counter information. The communication apparatus according to claim 7, wherein the second time counter information is synchronized.
前記情報抽出部は、複数の前記デコーダを有し、前記電子署名に付加された前記エンコーダに関する情報に基づいて選択した前記デコーダを用いて前記電子署名を復号する
請求項8に記載の通信装置。
The communication apparatus according to claim 8, wherein the information extraction unit includes a plurality of the decoders, and decodes the electronic signature using the decoder selected based on information on the encoder added to the electronic signature.
前記電子署名生成部は、前記制御通信データの一部を含めて生成された前記電子署名を符号化し、
前記判定部は、前記電子署名を復号して得た前記制御通信データの一部を前記通信フレームデータの判定に用いない
請求項1に記載の通信装置。
The electronic signature generation unit encodes the electronic signature generated including a part of the control communication data,
The communication apparatus according to claim 1, wherein the determination unit does not use a part of the control communication data obtained by decrypting the electronic signature for determining the communication frame data.
制御装置から受信する制御通信データに基づいて生成される第1のチェックコード、通信フレームデータの送信順を示す第1のシーケンス番号及び乱数を、それぞれ所定単位で分離し、所定の順序で並び替えたビット数列集合からなるブロックをエンコーダにより変換した電子署名を生成する電子署名生成部と、
前記電子署名を前記制御通信データに付加した前記通信フレームデータを他の通信装置に送信する送信ポートと、を備える
送信装置。
The first check code generated based on the control communication data received from the control device, the first sequence number indicating the transmission order of the communication frame data, and the random number are each separated in a predetermined unit and rearranged in a predetermined order. An electronic signature generating unit that generates an electronic signature obtained by converting a block consisting of a set of bit sequences by an encoder;
A transmission port configured to transmit the communication frame data obtained by adding the electronic signature to the control communication data to another communication device.
他の通信装置によって送信された通信フレームデータを受信し、前記通信フレームデータから電子署名を取り出す受信ポートと、
前記電子署名をデコーダにより逆変換したブロックから、前記他の通信装置が前記通信フレームデータに基づいて生成された第1のチェックコード、第1のシーケンス番号及び乱数を並び替えた所定の順序とは逆順で、前記第1のチェックコード、前記第1のシーケンス番号、及び前記乱数を抽出する情報抽出部と、
抽出された前記第1のチェックコードと前記通信フレームデータの制御通信データから生成された第2のチェックコードを比較した結果と、抽出された前記第1のシーケンス番号と、前周期の前記通信フレームデータに付加された第2のシーケンス番号とを比較した結果とに基づいて、前記通信フレームデータを正常と判定した場合に、制御装置による前記制御通信データの取り込みを許可する判定部と、を備える
受信装置。
A reception port that receives communication frame data transmitted by another communication device and extracts an electronic signature from the communication frame data;
What is the predetermined order in which the first check code, the first sequence number, and the random number generated by the other communication device based on the communication frame data are rearranged from the block obtained by inversely converting the electronic signature by the decoder? An information extractor for extracting the first check code, the first sequence number, and the random number in reverse order;
The result of comparing the extracted first check code with the second check code generated from the control communication data of the communication frame data, the extracted first sequence number, and the communication frame of the previous period A determination unit that permits the control device to capture the control communication data when the communication frame data is determined to be normal based on a result of comparison with the second sequence number added to the data. Receiver device.
JP2015168751A 2015-08-28 2015-08-28 Communication device, transmission device, and reception device Active JP6480291B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015168751A JP6480291B2 (en) 2015-08-28 2015-08-28 Communication device, transmission device, and reception device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015168751A JP6480291B2 (en) 2015-08-28 2015-08-28 Communication device, transmission device, and reception device

Publications (3)

Publication Number Publication Date
JP2017046268A true JP2017046268A (en) 2017-03-02
JP2017046268A5 JP2017046268A5 (en) 2017-10-19
JP6480291B2 JP6480291B2 (en) 2019-03-06

Family

ID=58212227

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015168751A Active JP6480291B2 (en) 2015-08-28 2015-08-28 Communication device, transmission device, and reception device

Country Status (1)

Country Link
JP (1) JP6480291B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02177742A (en) * 1988-12-28 1990-07-10 Fujitsu Ltd Communication privacy system
JP2002529779A (en) * 1998-10-30 2002-09-10 サイエンス アプリケーションズ インターナショナル コーポレイション Agile network protocol for secure communication with guaranteed system availability
JP2010510539A (en) * 2006-11-17 2010-04-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Encryption method for white box implementation
JP2014146868A (en) * 2013-01-28 2014-08-14 Hitachi Automotive Systems Ltd Network device and data transmission reception system
JP2015114907A (en) * 2013-12-12 2015-06-22 日立オートモティブシステムズ株式会社 Network device and network system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02177742A (en) * 1988-12-28 1990-07-10 Fujitsu Ltd Communication privacy system
JP2002529779A (en) * 1998-10-30 2002-09-10 サイエンス アプリケーションズ インターナショナル コーポレイション Agile network protocol for secure communication with guaranteed system availability
JP2010510539A (en) * 2006-11-17 2010-04-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Encryption method for white box implementation
JP2014146868A (en) * 2013-01-28 2014-08-14 Hitachi Automotive Systems Ltd Network device and data transmission reception system
JP2015114907A (en) * 2013-12-12 2015-06-22 日立オートモティブシステムズ株式会社 Network device and network system

Also Published As

Publication number Publication date
JP6480291B2 (en) 2019-03-06

Similar Documents

Publication Publication Date Title
CN101631080B (en) Industrial Ethernet switch based on EPA protocol and message forwarding method
CN103581173B (en) Safe data transmission method, system and device based on industrial Ethernet
Khurana et al. Design principles for power grid cyber-infrastructure authentication protocols
US8520839B2 (en) Data transmitter with a secure and efficient signature
US20100180123A1 (en) Procedure and architecture for the protection of real time data
CN105009507A (en) Generating a key derived from a cryptographic key using a physically unclonable function
CN113824705B (en) Safety reinforcement method for Modbus TCP (transmission control protocol)
US9515989B1 (en) Methods and apparatus for silent alarm channels using one-time passcode authentication tokens
Musa et al. Secure security model implementation for security services and related attacks base on end-to-end, application layer and data link layer security
Jin et al. Snapshotter: Lightweight intrusion detection and prevention system for industrial control systems
Zou et al. The study of secure CAN communication for automotive applications
WO2012140144A1 (en) Method and system for improving the synchronization of stream ciphers
Cherifi et al. A practical implementation of unconditional security for the IEC 60780-5-101 SCADA protocol
Pérez-Resa et al. Chaotic encryption applied to optical Ethernet in industrial control systems
Kornaros et al. Trustnet: ensuring normal-world and trusted-world can-bus networking
Yang et al. An effective intrusion-resilient mechanism for programmable logic controllers against data tampering attacks
JP6480291B2 (en) Communication device, transmission device, and reception device
CN109886011B (en) Safety protection method and device
Luo et al. Security enhancement mechanism of modbus TCP protocol
Shreejith et al. Zero latency encryption with FPGAs for secure time-triggered automotive networks
US20150220755A1 (en) Solution for security, safe and time integrity communications in automotive environments
Castiglione et al. Towards a lawfully secure and privacy preserving video surveillance system
Koopman et al. Integrity in embedded control networks
WO2016111079A1 (en) Log collection system and log collection method
CN105429755A (en) Reliable remote control system and method based on digital signature

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180827

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: 20190205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190207

R150 Certificate of patent or registration of utility model

Ref document number: 6480291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150