WO2020178879A1 - スレーブ装置およびスレーブプログラム - Google Patents
スレーブ装置およびスレーブプログラム Download PDFInfo
- Publication number
- WO2020178879A1 WO2020178879A1 PCT/JP2019/008012 JP2019008012W WO2020178879A1 WO 2020178879 A1 WO2020178879 A1 WO 2020178879A1 JP 2019008012 W JP2019008012 W JP 2019008012W WO 2020178879 A1 WO2020178879 A1 WO 2020178879A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- slave
- frame
- authentication code
- message authentication
- unit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2854—Wide area networks, e.g. public data networks
- H04L12/2856—Access arrangements, e.g. Internet access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3242—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Power Engineering (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
ライン接続型ネットワークでは、1個のマスタとN個のスレーブがライン状に接続される。
マスタは、各スレーブから送信されたフレームを受信すると、フレームに付与されたMACを検証することによって、フレーム中のデータの完全性を検証する。
この場合、マスタはN個のスレーブ分のN個のMACを検証する必要がある。そのため、MAC検証にかかるマスタの負荷が大きい。
フレーム連結方式では、各スレーブは、物理的に隣接するスレーブからフレームを受信するとフレーム中のデータに自身のデータを連結する。
各スレーブは、連結後のデータに対するMACをフレームに付与し、フレームを中継する。一方、マスタは、物理的に隣接するスレーブからフレームを受信すると、フレームに付与された1つのMACを検証する。これにより、フレーム中の各スレーブのデータの完全性が検証される。したがって、マスタによって検証されるMACの数が減るため、MAC検証にかかるマスタの負荷が削減される。
但し、特許文献2では、署名として主にCRCが想定されている。そして、特許文献2には、送信データに付与する署名を、受信した署名に基づいて生成する集約署名生成方法に関する技術のみが開示されている。CRCはCyclic Redundancy Checkの略称である。
一方、受信したMACは送信するMACの算出に直接使用することはできない。
各スレーブは、自身のデータと他のスレーブのデータとの連結データに対してMACを算出する。連結データに対するMACの計算量は、自身のデータに対するMACの計算量に比べて大きい。つまり、MAC付与にかかる各スレーブの負荷が増大する。そして、各スレーブにおいてフレームの中継遅延が増大する。
一般的に、制御システムでは通信周期制約が要求される。そのため、マスタは、各スレーブからのフレームの受信を通信周期制約を満たすように完了させる必要がある。しかし、各スレーブにおいてフレームの中継遅延が増大すると、フレームを中継するスレーブの数だけ中継遅延が累積されて通信周期制約を満たせなくなる可能性がある。
下流側に配置されているスレーブから、上流側に配置されているマスタへのフレームを受信する受信部と、
受信されたフレームに含まれるメッセージ認証符号である受信メッセージ認証符号を用いて、前記受信メッセージ認証符号を算出するための計算式の一部を計算して得られる途中計算結果を算出する途中計算結果算出部と、
受信されたフレームに含まれる送信データ列に、前記マスタへ送信する送信データを連結する送信データ連結部と、
連結後の送信データ列に対するメッセージ認証符号を前記途中計算結果を用いて算出するメッセージ認証符号算出部と、
前記連結後の送信データ列を含み、且つ、前記途中計算結果を用いて算出されたメッセージ認証符号を前記受信メッセージ認証符号の代わりに含んだフレームを上流側へ送信する送信部と、を備える。
ライン接続型ネットワークが採用される制御システム100について、図1から図10に基づいて説明する。
図1に基づいて、制御システム100の構成を説明する。
制御システム100は、マスタ101と複数のスレーブ(s_1~s_N)とを備え、特定の制御を実現する。「N」は2以上の整数である。
マスタ101から最も遠くに配置されたスレーブをスレーブs_1と称する。
マスタ101から最も近くに配置されたスレーブをスレーブs_Nと称する。
スレーブs_1から数えて(i-1)番目のスレーブをスレーブs_i-1と称し、スレーブs_1から数えてi番目のスレーブをスレーブs_iと称する。「i」は2以上(N-1)以下の整数である。
スレーブを特定しない場合、それぞれをスレーブ102と称する。
ライン接続型ネットワークにおいて、マスタ101が位置する側を「上流側」と呼び、スレーブs_1が位置する側を「下流側」と呼ぶ。
つまり、スレーブs_Nは最上流のスレーブ102であり、スレーブs_1は最下流のスレーブ102である。
スレーブ装置200は、スレーブ102として機能するコンピュータであり、プロセッサ201とメモリ202と補助記憶装置203と通信装置204といったハードウェアを備える。これらのハードウェアは、信号線を介して互いに接続されている。
ICは、Integrated Circuitの略称である。
CPUは、Central Processing Unitの略称である。
DSPは、Digital Signal Processorの略称である。
GPUは、Graphics Processing Unitの略称である。
RAMは、Random Access Memoryの略称である。
ROMは、Read Only Memoryの略称である。
HDDは、Hard Disk Driveの略称である。
通信装置204は、上流側インタフェース205と下流側インタフェース206とを備える。上流側インタフェース205は、ライン接続型ネットワークの上流側に接続される通信インタフェースである。下流側インタフェース206は、ライン接続型ネットワークの下流側に接続される通信インタフェースである。
スレーブ装置200の通信は、通信装置204によって実現される。
補助記憶装置203には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
プロセッサ201は、OSを実行しながら、スレーブプログラムを実行する。
OSは、Operating Systemの略称である。
メモリ202は記憶部290として機能する。但し、補助記憶装置203、プロセッサ201内のレジスタおよびプロセッサ201内のキャッシュメモリなどの記憶装置が、メモリ202の代わりに、又は、メモリ202と共に、記憶部290として機能してもよい。
通信管理部220は、受信部221と受付部222と通常中継部223と送信部224と連結中継部230とを備える。
連結中継部230は、検証部231を備える。
連結中継部230は、さらに、分離部232と途中計算結果算出部233と送信データ連結部234とMAC算出部235とフレーム生成部236とを備える。
「MAC」は、メッセージ認証符号の略称である。具体的なメッセージ認証符号は、ブロック暗号に基づくメッセージ認証符号(CMAC)である。
記憶部290には、共通鍵291および副鍵292などが予め記憶される。
共通鍵291は、MACを算出するための計算式(MAC計算式)で用いられる共通鍵である。それぞれのスレーブ102において同じ共通鍵291が用いられる。
副鍵292は、共通鍵291に対応する副鍵である。それぞれのスレーブ102において同じ副鍵292が用いられる。
マスタ装置300は、マスタ101として機能するコンピュータであり、プロセッサ301とメモリ302と補助記憶装置303と通信装置304といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ302は揮発性の記憶装置である。メモリ302は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ302はRAMである。メモリ302に記憶されたデータは必要に応じて補助記憶装置303に保存される。
補助記憶装置303は不揮発性の記憶装置である。例えば、補助記憶装置303は、ROM、HDDまたはフラッシュメモリである。補助記憶装置303に記憶されたデータは必要に応じてメモリ302にロードされる。
通信装置304は、通信インタフェース305を備える。通信インタフェース305は、ライン接続型ネットワークに接続される。
マスタ装置300の通信は、通信装置304によって実現される。
補助記憶装置303には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ302にロードされて、プロセッサ301によって実行される。
プロセッサ301は、OSを実行しながら、マスタプログラムを実行する。
メモリ302は記憶部390として機能する。但し、補助記憶装置303、プロセッサ301内のレジスタおよびプロセッサ301内のキャッシュメモリなどの記憶装置が、メモリ302の代わりに、又は、メモリ302と共に、記憶部390として機能してもよい。
制御システム100の動作は制御方法に相当する。また、制御方法の手順は制御プログラムの手順に相当する。
スレーブ装置200の動作の手順はスレーブプログラムの手順に相当する。マスタ装置300の動作の手順はマスタプログラムの手順に相当する。
スレーブ装置200の送信処理は、アプリケーション部210において送信データが発生したときに実行される。
アプリケーション部210は、送信データを生成し、送信要求と送信データとの組を出力する。送信要求と送信データとの組は、通信管理部220に入力される。
送信要求には、送信データの宛先を特定する情報(宛先情報)が含まれる。
送信データの宛先が他スレーブ102である場合、処理はステップS103に進む。
送信データの宛先がマスタ101である場合、処理はステップS104に進む。
そして、送信部224は、生成したフレームを他スレーブ102へ送信する。
制御システム100の構成情報データが記憶部290に予め記憶される。制御システム100の構成情報データは制御システム100の構成を示す。
送信部224は、制御システム100の構成情報データに基づいて、他スレーブ102が上流側のスレーブ102と下流側のスレーブ102とのいずれであるかを判定する。
他スレーブが上流側のスレーブである場合、送信部224は、生成したフレームを上流側へ送信する。
他スレーブが下流側のスレーブである場合、送信部224は、生成したフレームを下流側へ送信する。
スレーブ装置200の受信処理は、フレームがスレーブ装置200に到達したときに実行される。
受信したフレームの宛先が自スレーブ102である場合、処理はステップS120に進む。
受信したフレームの宛先が他スレーブ102である場合、処理はステップS130に進む。
受信したフレームの宛先がマスタ101である場合、処理はステップS140に進む。
通常受信処理(S120)は、自スレーブ宛てのフレームを受信したときに実行される従来の処理である。
例えば、スレーブ装置200は以下のように動作する。
受信部221は、自スレーブ102宛てのフレームを記憶部290に記憶し、アプリケーション部210に受信を通知する。
アプリケーション部210は、自スレーブ102宛てのフレームを処理する。
通常中継処理(S130)は、他スレーブ宛てのフレームを受信したときに実行される従来の処理である。
例えば、スレーブ装置200は以下のように動作する。
受信部221は、他スレーブ102宛てのフレームを通常中継部223に受け渡す。
通常中継部223は、受け渡されたフレームを他スレーブ102へ送信する。
制御システム100の構成情報データが記憶部290に予め記憶される。制御システム100の構成情報データは制御システム100の構成を示す。
通常中継部223は、制御システム100の構成情報データに基づいて、他スレーブ102が上流側のスレーブ102と下流側のスレーブ102とのいずれであるかを判定する。
他スレーブ102が上流側のスレーブ102である場合、通常中継部223は、受け渡されたフレームを上流側へ送信する。
他スレーブ102が下流側のスレーブ102である場合、通常中継部223は、受け渡されたフレームを下流側へ送信する。
連結中継処理(S140)は、下流側のスレーブ102からマスタ101宛てのフレームを受信したときに実行される処理である。
受信部221は、マスタ101宛てのフレームを連結中継部230に受け渡す。受け渡されたフレームを「受信フレーム」と称する。また、受信フレームに付与されているMACを「受信MAC」と称する。
主フレームは、受信フレームから受信MACを除いた部分であり、送信データ列を含む。
送信データ列は、1つ以上のスレーブ102からマスタ101へ送信される1つ以上の送信データである。
受信MACは、受信フレームの中の主フレームに対するMACである。
ステップS142の後、処理はステップS143およびステップS144に進む。
受信MACの途中計算結果とは、受信MACを計算するための計算式の一部を計算することによって得られる値である。
受信MACの途中計算結果を算出する方法については後述する。
ステップS143の後、処理はステップS145に進む。
そして、送信データ連結部234は、取得した送信データを主フレームの中の送信データ列に連結する。
ステップS144の後、処理はステップS145に進む。
連結後の主フレームは、ステップS144によって得られる主フレームであり、連結後の送信データ列を含む。
連結後の主フレームに対するMACを算出する方法については後述する。
連結後の主フレームに対するMACを「送信MAC」と称する。
送信フレームは、連結後の送信データ列を含み、且つ、受信MACの代わりに送信MACを含んでいる。
受信MACが正常であると判定された場合、処理は終了する。
受信MACが異常であると判定された場合、処理はステップS148に進む。
送信部224は、マスタ101宛ての異常通知フレームを生成し、異常通知フレームを上流側へ送信する。
異常通知フレームは、受信MACの異常を通知するためのフレームである。
「hd」は、マスタ101宛てのフレームのヘッダである。
「d_x」は、スレーブxの送信データである。
「MAC_x」は、スレーブxによって送信フレームに付与されるMACである。
フレーム112は、スレーブs_i-1の送信フレームである。フレーム112のMAC_i-1は、送信データ列{d_1,・・・,d_i-1}に対するMACである。
フレーム113は、スレーブs_iの送信フレームである。フレーム113のMAC_iは、送信データ列{d_1,・・・,d_i-1,d_i}に対するMACである。
フレーム114は、スレーブs_Nの送信フレームである。フレーム114のMAC_Nは、送信データ列{d_1,・・・,d_i-1,d_i,・・・,d_N}に対するMACである。
説明を簡潔にするため、各スレーブ102の送信データのビット数がブロックサイズBの倍数であるものとする。
受信MACを算出したスレーブ102がスレーブs_i-1であり、受信MACの途中計算結果を算出するスレーブ102がスレーブs_iであるものとする。つまり、受信MACがMAC_i-1であるものとする(図10参照)。
「E(b)」は、共通鍵291を用いて暗号化されたビット列bである。
{ri1,・・・,rip}は、ビット列rixの集合である。ビット列rixの集合は、受信フレームに含まれる送信データ列{d_1,・・・,d_i-1}をブロックサイズBでp分割することによって得られる。
「subkey」は、副鍵292である。
丸の中に「+」が記された記号は、XOR演算を意味する。「XOR」は排他的論理和を意味する。
つまり、途中計算結果算出部233は、1回の復号演算と1回のXOR演算とによって、途中計算結果t_i-1を算出する。
送信MACを算出するスレーブ102がスレーブs_iであるものとする。つまり、送信MACがMAC_iであるものとする(図10参照)。
{vi1,・・・,viq}は、ビット列viyの集合である。ビット列viyの集合は、スレーブs_iの送信データをブロックサイズBでq分割することによって得られる。
式(1-4)の一部を「t_i-1」に置き換えると、式(1-5)が得られる。
途中計算結果t_i-1を用いて送信MACを算出することにより、式(1-4)の一部の計算を省略することができる。つまり、p-1回の暗号化演算とp-2回のXOR演算とを省略することができる。
マスタ装置300は、ライン接続型ネットワークにおける従来のマスタと同様の動作をする。
マスタ装置300にフレームが到達すると、通信管理部320はフレームを受信する。受信されたフレームを受信フレームと称する。
そして、通信管理部320は、受信フレームのMACを検証する。
受信フレームが通常フレームである場合、通信管理部320は、受信フレームを記憶部390に記憶し、通常フレームの受信をアプリケーション部310に通知する。アプリケーション部310は受信フレームを処理する。
受信フレームが異常通知フレームである場合、通信管理部320は、中継異常をアプリケーション部310に通知する。アプリケーション部310は中継異常用の処理を行う。
実施の形態1により、受信フレームに含まれるMAC_i-1から逆算される途中計算結果を利用して、スレーブs_iにおけるMAC_iを算出することができる。そのため、ライン型接続ネットワークにおけるマスタ・スレーブ間の通信にフレーム連結方式およびMACを適用した際にも、各スレーブのMAC付与負荷を削減できる。その結果、各スレーブにおいてフレームの中継遅延が減少する。そして、通信周期制約を満たすことが可能となる。
制御システム100に要求される制約時間以内に最下流のスレーブ102からマスタ101にフレームが届くようにするための形態について、主に実施の形態1と異なる点を図11から図16に基づいて説明する。
制御システム100の構成は、実施の形態1における構成と同じである(図1参照)。
通信管理部220は、さらに、連結判定部225を備える。他の構成は、実施の形態1における構成と同じである(図3参照)。
記憶部290には、共通鍵291と副鍵292との他に、対象アドレス293が予め記憶される。つまり、スレーブ装置200には対象アドレス293が設定される。
対象アドレス293は、データ連結の対象となるフレームの送信元アドレスとして設定されるアドレスである。
対象アドレス293の詳細について後述する。
マスタ装置300は、さらに、区分管理部330を備える。他の構成は、実施の形態1における構成と同じである(図6参照)。
区分管理部330は、区分決定部331とアドレス設定部332とを備える。
スレーブ装置200の送信処理は、実施の形態1における送信処理と同じである(図7参照)。
ステップS111およびステップS112は、実施の形態1で説明した通りである(図8参照)。
受信したフレームの宛先がマスタ101である場合、処理はステップS201に進む。
具体的には、連結判定部225は、受信されたフレームの送信元アドレスを対象アドレス293と比較する。送信元アドレスが対象アドレス293と一致する場合、連結判定部225は、データ連結が可能であると判定する。送信元アドレスが対象アドレス293と一致しない場合、連結判定部225は、データ連結が不可であると判定する。
データ連結が可能であると判定された場合、処理はステップS140に進む。連結中継処理(S140)は、実施の形態1で説明した通りである(図9参照)。
データ連結が不可であると判定された場合、処理はステップS130に進む。ステップS130において、送信部224は、受信されたフレームを上流側へ送信する。
複数のスレーブ102は、1つ以上のスレーブ群に区分される。スレーブ群は1つ以上のスレーブ102である。それぞれのスレーブ群における通信時間は制約時間未満になる。通信時間とは、それぞれのスレーブ群における最下流のスレーブ102からマスタ101にフレームが届くまでに要する時間である。制約時間は、制御システム100に要求される通信周期制約で定められる時間である。
スレーブ装置200が属するスレーブ群の中でスレーブ装置200の下流側でスレーブ装置200と隣接するスレーブ102を「仮想隣接スレーブ」と称する。つまり、仮想隣接スレーブは、スレーブ装置200が属するスレーブ群の中で下流側インタフェース206からのホップ数が最小となるスレーブ102である。一方、スレーブ装置200の下流側インタフェース206と物理的に直接接続されているスレーブ102を「物理隣接スレーブ」と称する。
対象アドレス293は、仮想隣接スレーブのアドレスである。つまり、仮想隣接スレーブから送信されたマスタ101宛てのフレームを受信した場合、スレーブ装置200は連結中継処理(S140)を行う。また、物理隣接スレーブ(仮想隣接スレーブを除く)から送信されたマスタ101宛てのフレームを受信した場合、スレーブ装置200は通常中継処理(S130)を行う。
区分決定部331は、制約時間に基づいて複数のスレーブ102を1つ以上のスレーブ群に区分する。区分決定部331の処理の具体例について後述する。
アドレス設定部332は、1つ以上のスレーブ群からスレーブ装置200が属するスレーブ群を選択し、選択したスレーブ群からスレーブ装置200の仮想隣接スレーブを選択する。そして、アドレス設定部332は、スレーブ装置200と通信することによって、仮想隣接スレーブのアドレス(対象アドレス293)をスレーブ装置200に設定する。
区分決定部331は、複数のスレーブ102を1つ以上のスレーブ群に区分する近似解法を用いる。但し、区分決定部331は、他の近似解法または厳密解法を用いてもよい。
ステップS211において、区分決定部331は、区分集合Cと各連結区分cjのスレーブ集合SC(cj)とを初期化する。
区分集合Cは、M個の連結区分{c1,・・・,cM}である。「M」は1以上N以下の整数である。「N」はスレーブ102の数である。
連結区分cjは、データ連結を行うか否かを判定するための区分であり、スレーブ群に相当する。
スレーブ集合SC(cj)は、連結区分cjに属する1つ以上のスレーブ102である。
S = {s_1,・・・,s_N}
最大通信時間Dmaxは、区分集合Cにおける通信時間Drcv(cj)の最大値である。
通信時間Drcv(cj)は、連結区分cjにおいて最下流のスレーブ102がフレームの送信処理を開始してからスレーブ102にフレームが届くまでに要する時間である。
区分集合Cに含まれる連結区分cjの数が多くなるほど通信時間Drcv(cj)は短くなる。区分集合Cが1つの連結区分cjで構成される場合、通信時間Drcv(cj)は最大となる。
通信時間Drcv(cj)は、連結区分cjに属する各スレーブ102の送信データサイズ、各送信データサイズに応じたMAC演算時間、および、各送信データサイズに応じたフレーム中継時間などの各種パラメータに基づいて算出される。各種パラメータは記憶部390に予め記憶される。
最大通信時間Dmaxが制約時間Tc未満である場合、区分決定処理は終了する。
最大通信時間Dmaxが制約時間Tc以上である場合、処理はステップS214に進む。
連結区分c|c|+1の追加は、式(2-3)で表すことができる。
まず、区分決定部331は、各連結区分cjにおける通信時間Drcv(cj)を算出する。
次に、区分決定部331は、最小の通信時間Drcv(cj)に対応する連結区分cjを選択する。
そして、区分決定部331は、選択した連結区分cjにスレーブs_iを追加する。
実施の形態2では、通信周期制約に応じて複数のスレーブ102が複数に区分される。そして、区分ごとに送信データの連結が行われる。そのため、累積中継遅延を削減できる。その結果、通信周期制約を満たすことができる。
図17に基づいて、スレーブ装置200のハードウェア構成を説明する。
スレーブ装置200は処理回路209を備える。
処理回路209は、アプリケーション部210と通信管理部220とを実現するハードウェアである。
処理回路209は、専用のハードウェアであってもよいし、メモリ202に格納されるプログラムを実行するプロセッサ201であってもよい。
ASICは、Application Specific Integrated Circuitの略称である。
FPGAは、Field Programmable Gate Arrayの略称である。
このように、処理回路209はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
マスタ装置300は処理回路309を備える。
処理回路309は、アプリケーション部310と通信管理部320と区分管理部330とを実現するハードウェアである。
処理回路309は、専用のハードウェアであってもよいし、メモリ202に格納されるプログラムを実行するプロセッサ201であってもよい。
このように、処理回路309はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
Claims (8)
- 下流側に配置されているスレーブから、上流側に配置されているマスタへのフレームを受信する受信部と、
受信されたフレームに含まれるメッセージ認証符号である受信メッセージ認証符号を用いて、前記受信メッセージ認証符号を算出するための計算式の一部を計算して得られる途中計算結果を算出する途中計算結果算出部と、
受信されたフレームに含まれる送信データ列に、前記マスタへ送信する送信データを連結する送信データ連結部と、
連結後の送信データ列に対するメッセージ認証符号を前記途中計算結果を用いて算出するメッセージ認証符号算出部と、
前記連結後の送信データ列を含み、且つ、前記途中計算結果を用いて算出されたメッセージ認証符号を前記受信メッセージ認証符号の代わりに含んだフレームを上流側へ送信する送信部と、
を備えるスレーブ装置。 - 各フレームのメッセージ認証符号は、ブロック暗号に基づくメッセージ認証符号アルゴリズムによって算出される値であり、
前記途中計算結果算出部は、前記受信メッセージ認証符号に対して前記計算式で用いられる鍵と同じ共通鍵を用いて行われる復号演算と、前記復号演算によって得られる値と前記共通鍵に対応する副鍵との排他的論理和を求める排他的論理和演算と、を行うことによって、前記排他的論理和演算によって得られる値を前記途中計算結果として算出する
請求項1に記載のスレーブ装置。 - 前記スレーブ装置は、さらに、受信されたフレームの送信元アドレスに基づいてデータ連結の可否を判定する連結判定部を備え、
前記送信部は、データ連結が可能であると判定された場合に、前記連結後の送信データ列と前記途中計算結果を用いて算出されたメッセージ認証符号とを含んだフレームを上流側へ送信し、データ連結が不可であると判定された場合に、受信されたフレームを上流側へ送信する
請求項1または請求項2に記載のスレーブ装置。 - 前記スレーブ装置には、データ連結の対象となるフレームの送信元アドレスとして対象アドレスが設定され、
前記連結判定部は、受信されたフレームの送信元アドレスが前記対象アドレスと一致する場合にデータ連結が可能であると判定する
請求項3に記載のスレーブ装置。 - 前記スレーブ装置は、制御システムを前記マスタと共に構成する複数のスレーブのうちの1つのスレーブであり、
前記複数のスレーブは、1つ以上のスレーブ群に区分され、
前記対象アドレスは、前記スレーブ装置が属するスレーブ群の中で前記スレーブ装置の下流側で前記スレーブ装置と隣接するスレーブのアドレスである
請求項4に記載のスレーブ装置。 - それぞれのスレーブ群における最下流のスレーブから前記マスタにフレームが届くまでに要する時間が前記制御システムに要求される制約時間未満になる
請求項5に記載のスレーブ装置。 - 前記マスタが、前記制約時間に基づいて前記複数のスレーブを前記1つ以上のスレーブ群に区分し、前記スレーブ装置と通信することによって前記スレーブ装置に前記対象アドレスを設定する
請求項6に記載のスレーブ装置。 - 下流側に配置されているスレーブから、上流側に配置されているマスタへのフレームを受信する受信処理と、
受信されたフレームに含まれるメッセージ認証符号である受信メッセージ認証符号を用いて、前記受信メッセージ認証符号を算出するための計算式の一部を計算して得られる途中計算結果を算出する途中計算結果算出処理と、
受信されたフレームに含まれる送信データ列に、前記マスタへ送信する送信データを連結する送信データ連結処理と、
連結後の送信データ列に対するメッセージ認証符号を前記途中計算結果を用いて算出するメッセージ認証符号算出処理と、
前記連結後の送信データ列を含み、且つ、前記途中計算結果を用いて算出されたメッセージ認証符号を前記受信メッセージ認証符号の代わりに含んだフレームを上流側へ送信する送信処理部と、
をコンピュータに実行させるためのスレーブプログラム。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE112019006762.1T DE112019006762T5 (de) | 2019-03-01 | 2019-03-01 | Slave-vorrichtung und slave-programm |
KR1020217026452A KR20210110388A (ko) | 2019-03-01 | 2019-03-01 | 슬레이브 장치 및 슬레이브 프로그램 |
PCT/JP2019/008012 WO2020178879A1 (ja) | 2019-03-01 | 2019-03-01 | スレーブ装置およびスレーブプログラム |
CN201980093219.1A CN113519142A (zh) | 2019-03-01 | 2019-03-01 | 从站装置及从站程序 |
JP2021503236A JP6906726B2 (ja) | 2019-03-01 | 2019-03-01 | スレーブ装置およびスレーブプログラム |
TW108129995A TW202034668A (zh) | 2019-03-01 | 2019-08-22 | 從屬裝置及從屬程式產品 |
US17/375,611 US20210344503A1 (en) | 2019-03-01 | 2021-07-14 | Slave device and computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/008012 WO2020178879A1 (ja) | 2019-03-01 | 2019-03-01 | スレーブ装置およびスレーブプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/375,611 Continuation US20210344503A1 (en) | 2019-03-01 | 2021-07-14 | Slave device and computer readable medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020178879A1 true WO2020178879A1 (ja) | 2020-09-10 |
Family
ID=72338245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/008012 WO2020178879A1 (ja) | 2019-03-01 | 2019-03-01 | スレーブ装置およびスレーブプログラム |
Country Status (7)
Country | Link |
---|---|
US (1) | US20210344503A1 (ja) |
JP (1) | JP6906726B2 (ja) |
KR (1) | KR20210110388A (ja) |
CN (1) | CN113519142A (ja) |
DE (1) | DE112019006762T5 (ja) |
TW (1) | TW202034668A (ja) |
WO (1) | WO2020178879A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006311394A (ja) * | 2005-04-28 | 2006-11-09 | Toyota Industries Corp | 無線通信装置 |
JP5393528B2 (ja) * | 2010-02-22 | 2014-01-22 | 三菱電機株式会社 | 通信装置及びプログラム |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5393528A (en) | 1992-05-07 | 1995-02-28 | Staab; Robert J. | Dissolvable device for contraception or delivery of medication |
FR2806859A1 (fr) * | 2000-03-21 | 2001-09-28 | Sts | Procede, automate, dispositif informatique et reseau pour la transmission certifiee de documents |
US7995994B2 (en) * | 2006-09-22 | 2011-08-09 | Kineto Wireless, Inc. | Method and apparatus for preventing theft of service in a communication system |
CN101753312B (zh) * | 2010-02-03 | 2013-05-29 | 北京融通高科科技发展有限公司 | 一种电网设备的安全认证方法、装置及一种负控终端 |
JP5143198B2 (ja) * | 2010-08-24 | 2013-02-13 | 株式会社バッファロー | ネットワーク中継装置 |
JP6013988B2 (ja) * | 2013-07-18 | 2016-10-25 | 日本電信電話株式会社 | データ収集システム、データ収集方法、ゲートウェイ装置及びデータ集約プログラム |
JP6199335B2 (ja) * | 2014-06-05 | 2017-09-20 | Kddi株式会社 | 通信ネットワークシステム及びメッセージ検査方法 |
JP6190404B2 (ja) * | 2014-06-05 | 2017-08-30 | Kddi株式会社 | 受信ノード、メッセージ受信方法およびコンピュータプログラム |
CN109313763B (zh) * | 2016-03-31 | 2023-02-28 | 比特飞翔区块链株式会社 | 层次型网络系统以及用于层次型网络系统的节点 |
CN106656714A (zh) * | 2017-02-10 | 2017-05-10 | 广东工业大学 | 一种基于EtherCAT总线的通信协议方法及系统 |
EP3654579A1 (en) * | 2018-11-13 | 2020-05-20 | Koninklijke Philips N.V. | Methods and devices for providing message authentication code suitable for short messages |
-
2019
- 2019-03-01 KR KR1020217026452A patent/KR20210110388A/ko active IP Right Grant
- 2019-03-01 CN CN201980093219.1A patent/CN113519142A/zh not_active Withdrawn
- 2019-03-01 WO PCT/JP2019/008012 patent/WO2020178879A1/ja active Application Filing
- 2019-03-01 JP JP2021503236A patent/JP6906726B2/ja active Active
- 2019-03-01 DE DE112019006762.1T patent/DE112019006762T5/de not_active Withdrawn
- 2019-08-22 TW TW108129995A patent/TW202034668A/zh unknown
-
2021
- 2021-07-14 US US17/375,611 patent/US20210344503A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006311394A (ja) * | 2005-04-28 | 2006-11-09 | Toyota Industries Corp | 無線通信装置 |
JP5393528B2 (ja) * | 2010-02-22 | 2014-01-22 | 三菱電機株式会社 | 通信装置及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP6906726B2 (ja) | 2021-07-21 |
TW202034668A (zh) | 2020-09-16 |
CN113519142A (zh) | 2021-10-19 |
US20210344503A1 (en) | 2021-11-04 |
DE112019006762T5 (de) | 2021-10-28 |
KR20210110388A (ko) | 2021-09-07 |
JPWO2020178879A1 (ja) | 2021-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6139804B2 (ja) | 再暗号化鍵生成装置、再暗号化装置、暗号化装置、復号装置及びプログラム | |
Charles et al. | Securing network-on-chip using incremental cryptography | |
CA2827519C (en) | Incorporating data into cryptographic components of an ecqv certificate | |
JP2001051596A (ja) | データ生成装置およびデータ検証装置ならびにその方法 | |
JP2013539295A (ja) | メッセージ復元を伴うデジタル署名の認証された暗号化 | |
JP2007535001A (ja) | 霞暗号処理を実行する装置及び方法 | |
CN106789087B (zh) | 确定消息的数据摘要、基于多方的数字签名的方法及系统 | |
JP5047198B2 (ja) | 秘密計算システム、秘密計算方法、秘密計算装置、検証装置、およびプログラム | |
Shih et al. | Traceability for Vehicular Network Real-Time Messaging Based on Blockchain Technology. | |
Jayaraman et al. | Decentralized certificate authorities | |
JP7238977B2 (ja) | 匿名署名システム及び匿名署名方法 | |
WO2020178879A1 (ja) | スレーブ装置およびスレーブプログラム | |
JP2023522119A (ja) | ブロックチェーンネットワークにおけるポイズニングされたトランザクションによるブロック伝搬 | |
JP5512601B2 (ja) | 情報共有システム、方法、装置及びプログラム | |
US11552782B2 (en) | Securing system-on-chip (SoC) using incremental cryptography | |
JP6273224B2 (ja) | 暗号化システム、暗号化装置、復号装置、暗号化方法 | |
US9401809B2 (en) | Composite system, method, and storage medium | |
JP5178269B2 (ja) | 復号装置及びプログラム | |
CN111245617B (zh) | 一种基于ecdsa的双重门限签名方法 | |
US20240080204A1 (en) | A lightweight fault countermeasure for stateful hash-based cryptography | |
JPWO2020058806A5 (ja) | ||
CN116781307A (zh) | 支持用于密码/认证实现的可调谐对准的方法和装置 | |
JP5869053B2 (ja) | ハッシュアルゴリズムにおける圧縮演算を行うための装置および方法 | |
Wiemer et al. | Enabling Secure Communication for Automotive Endpoint-ECUs through Lightweight-Cryptography | |
JP2009175196A (ja) | 暗号化装置及び復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19917866 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021503236 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 20217026452 Country of ref document: KR Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19917866 Country of ref document: EP Kind code of ref document: A1 |