(57)【要約】【課題】通信のセキュリティ性と、送受信のための処理負荷及びバス負荷の低減とを、両立させる。【解決手段】メッセージに添付された認証子によりメッセージ認証を行う通信装置は、Ｓ３２０にて、受信予定の全てのメッセージについて認証に成功したと判定すると、Ｓ３３０にて、他の通信装置に対して、当該通信装置宛のメッセージに認証子を添付することが不要なことを示す不要通知を送信し、Ｓ３４０にて、当該通信装置では認証処理を行うことなく受信メッセージを取り込むようにする非認証設定を行う。また、他の通信装置からの前記不要通知を受信すると、その不要通知の送信元を宛先とするメッセージについて、認証子の算出及び添付を行うことなく送信する非添付設定を行う。そして、伝送路に新たな機器が接続されたと判定すると、上記非認証設定及び非添付設定を解除する。【選択図】図５
2019114916.tif 000002
【特許請求の範囲】
【請求項１】
複数の通信装置の間でのメッセージの認証が、該メッセージに添付された認証子を用いて行われる通信システム（１）において、前記各通信装置として用いられる通信装置（１１〜１４）であって、
メッセージを送信する場合に、送信対象のメッセージから所定のアルゴリズムにより認証子を算出して、該算出した認証子を前記送信対象のメッセージに添付する算出添付処理を行い、前記認証子が添付された前記メッセージを、当該メッセージの宛先へと送信する処理を行うように構成された送信処理部（Ｓ１１０〜Ｓ１５０）と、
当該通信装置宛のメッセージが受信された場合に、当該受信されたメッセージである受信メッセージの正当性を、当該受信メッセージに添付されている認証子を用いて判定する認証処理を行い、該認証処理により正当と判定したならば、当該受信メッセージを所定の記憶領域に取り込むように構成された受信処理部（Ｓ２１０〜Ｓ２５０）と、
当該通信装置が起動してから所定の認証不要条件が成立したか否かを判定するように構成された不要判定部（Ｓ３２０）と、
前記不要判定部により前記認証不要条件が成立したと判定された場合に、他の通信装置に対して、当該通信装置宛のメッセージに前記認証子を添付することが不要なことを示す不要通知を送信すると共に、前記受信処理部が前記認証処理を行うことなく前記受信メッセージを前記記憶領域に取り込むようにさせる非認証設定を行うように構成された第１設定部（Ｓ３３０，Ｓ３４０）と、
他の通信装置から送信された前記不要通知が受信されると、当該不要通知の送信元の通信装置を宛先とするメッセージについて、前記送信処理部が前記算出添付処理を行うことなく、当該メッセージを送信する処理を行うようにさせる非添付設定を行うように構成された第２設定部（Ｓ４２０，Ｓ４３０）と、
前記通信システムの伝送路（１０）に、新たな機器が接続されたか否かを判定するように構成された接続判定部（Ｓ５１０，Ｓ６１０〜Ｓ６３０）と、
前記接続判定部により新たな機器が接続されたと判定された場合に、前記非認証設定と前記非添付設定とを、解除するように構成された解除部（Ｓ５２０）と、
を備える通信装置。
【請求項２】
請求項１に記載の通信装置であって、
前記認証不要条件には、当該通信装置が受信する予定の全てのメッセージが前記認証処理により正当と判定された、という条件が含まれる、
通信装置。
【請求項３】
請求項１又は請求項２に記載の通信装置（１１）であって、
前記接続判定部（Ｓ６１０〜Ｓ６３０）は、
前記伝送路のインピーダンスを測定し、該測定値に基づいて、前記伝送路に新たな機器が接続されたか否かを判定するように構成されている、
通信装置。
【請求項４】
請求項３に記載の通信装置であって、
当該通信装置は、車両に搭載される通信システムを構成する通信装置であり、
前記接続判定部は、
当該通信装置を含む前記通信システムの前記車両への組み付けが、完了したときに測定された前記伝送路のインピーダンス値と、前記測定値とを比較することにより、前記伝送路に新たな機器が接続されたか否かを判定するように構成されている、
通信装置。
【請求項５】
請求項３に記載の通信装置であって、
前記接続判定部は、
前記測定値が、予め定められた複数の基準範囲の何れかに入っているか否かを判定し、前記測定値が前記複数の基準範囲の何れにも入っていないと判定した場合に、前記伝送路に新たな機器が接続されたと判定するように構成されている、
通信装置。
【請求項６】
請求項３ないし請求項５の何れか１項に記載の通信装置であって、
前記接続判定部による判定結果を、他の通信装置に通知するように構成された結果通知部（Ｓ６５０）を、更に備える、
通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、メッセージ認証の機能を有する通信装置に関する。
【背景技術】
【０００２】
例えば、車両に搭載される通信システムにおけるセキュリティ対策の手法として、ＭＡＣと呼ばれる認証子を用いたメッセージ認証がある。ＭＡＣは、「Message Authentication Code」の略であり、即ち、メッセージ認証コードの略である。
【０００３】
認証子を用いたメッセージ認証では、送信側において、送信対象のメッセージから所定のアルゴリズで認証子が算出され、この算出された認証子が送信対象のメッセージに添付される。そして、送信側からは、認証子が添付されたメッセージが送信される。受信側においては、受信されたメッセージから、送信側と同じアルゴリズムで認証子が算出される。そして、算出された認証子と、受信されたメッセージに添付されていた認証子とが比較され、両方の認証子が一致すれば、受信されたメッセージが適正な通信装置から送信されたものである（即ち、正当）と判定される。逆に、両方の認証子が一致しない場合には、受信されたメッセージが不正な通信装置から送信されたものである（即ち、正当でない）と判定される。
【０００４】
一方、例えば下記の特許文献１には、データ傍受を防止するための技術の一部として、通信バスにノードが接続されたことを、通信バスのインピーダンスの測定値に基づいて検出することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−８３８７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
認証子を用いたメッセージ認証を行う通信装置では、メッセージの送信と受信とのそれぞれにおいて認証子を算出することとなり、送受信のための処理負荷が大きくなる。また、メッセージに認証子が添付されるため、通信システムにおける伝送路に流れるデータ量（即ち、バス負荷）も大きくなる。
【０００７】
そこで、本開示の１つの局面は、通信のセキュリティ性と、送受信のための処理負荷及びバス負荷の低減とを、両立させることが可能な通信装置を提供する。
【課題を解決するための手段】
【０００８】
本開示の１つの態様による通信装置が用いられる通信システム（１）では、複数の通信装置の間でのメッセージの認証が、該メッセージに添付された認証子を用いて行われる。
そして、本開示の１つの態様による通信装置（１１〜１４）は、送信処理部（Ｓ１１０〜Ｓ１５０）と、受信処理部（Ｓ２１０〜Ｓ２５０）と、不要判定部（Ｓ３２０）と、第１設定部（Ｓ３３０，Ｓ３４０）と、第２設定部（Ｓ４２０，Ｓ４３０）と、接続判定部（Ｓ５１０，Ｓ６１０〜Ｓ６３０）と、解除部（Ｓ５２０）と、を備える。
【０００９】
送信処理部は、メッセージを送信する場合に、送信対象のメッセージから所定のアルゴリズムにより認証子を算出して、該算出した認証子を送信対象のメッセージに添付する算出添付処理を行い、この認証子が添付されたメッセージを、当該メッセージの宛先へと送信する処理を行う。
【００１０】
受信処理部は、当該通信装置宛のメッセージが受信された場合に、当該受信されたメッセージである受信メッセージの正当性を、当該受信メッセージに添付されている認証子を用いて判定する認証処理を行い、該認証処理により正当と判定したならば、当該受信メッセージを所定の記憶領域に取り込む。
【００１１】
不要判定部は、当該通信装置が起動してから所定の認証不要条件が成立したか否かを判定する。
第１設定部は、不要判定部により認証不要条件が成立したと判定された場合に、他の通信装置に対して、当該通信装置宛のメッセージに認証子を添付することが不要なことを示す不要通知を送信すると共に、受信処理部が前記認証処理を行うことなく受信メッセージを前記記憶領域に取り込むようにさせる非認証設定を行う。
【００１２】
第２設定部は、他の通信装置から送信された前記不要通知が受信されると、当該不要通知の送信元の通信装置を宛先とするメッセージについて、送信処理部が前記算出添付処理を行うことなく、当該メッセージを送信する処理を行うようにさせる非添付設定を行う。
【００１３】
接続判定部は、当該通信装置が接続されている通信システムの伝送路に、新たな機器が接続されたか否かを判定する。
解除部は、接続判定部により新たな機器が接続されたと判定された場合に、第１設定部による非認証設定と第２設定部による非添付設定とを、解除する。
【００１４】
このような通信装置を複数用いて通信システムを構成した場合の作用について説明する。ここでは、通信システムにおける通信装置が、通信装置Ａと通信装置Ｂとの２つであるとして説明するが、通信装置の数は３つ以上であっても同様である。
【００１５】
各通信装置Ａ，Ｂにおいて、不要判定部により認証不要条件が成立したと判定されるまでは、送信処理部がメッセージの送信時に算出添付処理を行い、受信処理部がメッセージの受信時に認証処理を行う。このため、例えば、通信装置Ａから通信装置Ｂ宛てのメッセージが送信される場合、通信装置Ａでは、算出添付処理が行われて、認証子が添付されたメッセージが送信される。そして、通信装置Ａからのメッセージを受信した通信装置Ｂでは、受信メッセージに対して認証処理が行われ、この認証処理により正当と判定されれば、受信メッセージが所定の記憶領域に取り込まれる。つまり、各通信装置Ａ，Ｂでは、メッセージの送受信に関して、認証子を用いたメッセージ認証用の処理が行われる。
【００１６】
その後、例えば通信装置Ａにおいて、不要判定部により認証不要条件が成立したと判定されたとする。
すると、通信装置Ａでは、第１設定部により、通信装置Ｂに対して不要通知が送信されると共に、非認証設定が行われる。このため、通信装置Ａにおいて、受信処理部は、認証処理を行うことなく受信メッセージを所定の記憶領域に取り込むようになる。また、通信装置Ｂでは、通信装置Ａからの不要通知を受信することにより、第２設定部が、非添付設定を行う。このため、通信装置Ｂにおいて、送信処理部は、通信装置Ａ宛てのメッセージを、算出添付処理を行うことなく、つまり、認証子を算出して添付することなく、送信するようになる。よって、通信装置Ｂから通信装置Ａへのメッセージの転送は、メッセージ認証用の処理無しで実施されるようになる。
【００１７】
同様に、通信装置Ｂにおいて、不要判定部により認証不要条件が成立したと判定されたならば、通信装置Ａから通信装置Ｂへのメッセージの転送が、メッセージ認証用の処理無しで実施されるようになる。
【００１８】
よって、通信システムにおける全ての通信装置で認証不要条件が成立すると、全ての通信装置間のメッセージが、メッセージ認証用の処理無しで転送されることとなる。このため、各通信装置において送受信のための処理負荷が低減される。更に、伝送路に流れるメッセージに認証子が添付されなくなるため、バス負荷も低減される。
【００１９】
その後、伝送路に新たな機器が接続され、このことが各通信装置Ａ，Ｂにおける接続判定部によって判定されると、各通信装置Ａ，Ｂにおいて、第１設定部による非認証設定と第２設定部による非添付設定とが、解除される。
【００２０】
よって、各通信装置Ａ，Ｂは、メッセージの送受信に関して、メッセージ認証用の処理を行う状態に戻る。このため、伝送路に不正な機器が接続された場合に、通信のセキュリティ性が確保される。
【００２１】
以上のことから、本開示の１つの態様による通信装置によれば、通信のセキュリティ性と、送受信のための処理負荷及びバス負荷の低減とを、両立させることができる。
尚、この欄及び特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本開示の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００２２】
【図１】実施態様の通信システムの構成を示すブロック図である。
【図２】ＣＡＮフレームを説明する説明図。
【図３】送信時処理を表すフローチャートである。
【図４】受信時処理を表すフローチャートである。
【図５】第１の切替制御処理を表すフローチャートである。
【図６】第２の切替制御処理を表すフローチャートである。
【図７】認証復帰処理を表すフローチャートである。
【図８】機器接続検出処理を表すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、図面を参照しながら、本開示の実施形態を説明する。
［１．通信システムの全体構成］
図１に示す実施態様の通信システム１は、例えば車両に搭載される通信システムであり、伝送路１０を介して互いに通信する複数の通信装置として、複数（例えば４つ）の電子制御装置（以下、ＥＣＵ）１１〜１４を備える。ＥＣＵは、「Electronic Control Unit」の略である。通信システム１における通信プロトコルは、例えばＣＡＮである。このため、伝送路１０は、２本の信号線を備えたＣＡＮバスである。ＣＡＮは、「Controller Area Network」の略であり、登録商標である。
【００２４】
ＥＣＵ１１〜１４は、ＣＡＮの通信フレームであるＣＡＮフレームによって通信されるメッセージの正当性を、認証子としてのＭＡＣ（即ち、メッセージ認証コード）に基づいて判断する。
【００２５】
図２に示すように、ＭＡＣは、ＣＡＮフレームのデータフィールドに、転送対象の制御データとともに配置される。また、ＣＡＮフレームの先頭には、データの内容を識別するためのＩＤ（即ち、ＣＡＮ−ＩＤ）が配置される。ＩＤにより、ＣＡＮフレームの宛先も特定される。ＣＡＮフレームに含まれる転送対象の制御データは、ＥＣＵ１１〜１４間でやりとりされるメッセージに該当する。このため、以下では、ＣＡＮフレームに含まれて転送される制御データのことを、メッセージという。尚、通信プロトコルは、ＣＡＮ以外であっても良い。また、通信装置としてのＥＣＵの数は、４以外であっても良い。
【００２６】
［２．各ＥＣＵに共通の構成］
図１に示すように、各ＥＣＵ１１〜１４は、当該ＥＣＵの動作を司る演算部として、マイクロコンピュータ（以下、マイコン）２１を備える。
【００２７】
マイコン２１は、ＣＰＵと、例えばＲＡＭ又はＲＯＭ等の半導体メモリ（以下、メモリ）と、を有する。マイコン２１が果たす各機能は、上記ＣＰＵが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現される。この例では、上記メモリが、プログラムを格納した非遷移的実体的記録媒体に該当する。このプログラムが実行されることで、プログラムに対応する方法が実行される。
【００２８】
また、マイコン２１は、受信されたメッセージ（即ち、制御データ）が記憶される記憶領域（以下、受信データ領域）３０を備える。受信データ領域３０に記憶されたメッセージは、制御対象の制御に使用される。受信データ領域３０は、例えば、マイコン２１に備えられたＲＡＭの一部の記憶領域である。
【００２９】
尚、マイコン２１が果たす機能の一部又は全部は、一つあるいは複数のハードウェアを用いて実現されても良い。例えば、上記機能がハードウェアである電子回路によって実現される場合、その電子回路は、デジタル回路、又はアナログ回路、あるいはこれらの組合せによって実現されても良い。
【００３０】
更に、各ＥＣＵ１１〜１４は、記憶部２２と、伝送路１０に接続されたトランシーバ２４と、マイコン２１とトランシーバ２４との間に設けられた通信コントローラ２３と、を備える。
【００３１】
記憶部２２は、例えば書き換え可能な不揮発性メモリによって構成されている。記憶部２２には、ＭＡＣの算出に用いられる暗号鍵が、予め記憶されている。暗号鍵は、各ＥＣＵ１１〜１４に共通の共通鍵である。
【００３２】
通信コントローラ２３は、マイコン２１とトランシーバ２４との間におけるデータ信号の入出力を、ＣＡＮプロトコルに基づき実施する。トランシーバ２４は、マイコン２１から通信コントローラ２３を介して与えられるハイ又はローの信号（即ち、送信信号）に応じて、伝送路１０の電位を変化させる送信動作と、伝送路１０の電位をハイ又はローの受信信号に変換して通信コントローラ２３に出力する受信動作と、を行う。
【００３３】
よって、マイコン２１から通信コントローラ２３に出力されるデータは、通信コントローラ２３及びトランシーバ２４を介して伝送路１０に出力される。そして、伝送路１０に流れるデータは、トランシーバ２４及び通信コントローラ２３を介して、マイコン２１に入力される。
【００３４】
また、マイコン２１は、ＭＡＣ演算部３１と、認証部３２とを備える。
ＭＡＣ演算部３１は、当該ＥＣＵからメッセージを送信する場合に、送信対象のメッセージと、記憶部２２内の暗号鍵とから、所定の暗号化アルゴリズムにより、ＭＡＣを算出する。例えば、メッセージとしての制御データとＭＡＣとの各データ長は、４バイトである。算出されたＭＡＣは、図２に示したように、送信対象のメッセージに添付される。具体的には、送信対象のメッセージと、算出されたＭＡＣとが、ＣＡＮフレームのデータフィールドに配置される。そして、ＣＡＮフレームの先頭には、当該ＣＡＮフレームの宛先、即ち、当該フレームに含まれるメッセージの宛先を、特定可能なＩＤが配置される。よって、各ＥＣＵ１１〜１４から伝送路１０には、ＣＡＮフレームが、「ＩＤ→メッセージ→ＭＡＣ」の順で送出される。受信側は、ＣＡＮフレームにおける先頭のＩＤにより、当該ＣＡＮフレームの宛先を判別する。
【００３５】
また、当該ＥＣＵ宛のＣＡＮフレームがトランシーバ２４及び通信コントローラ２３を介してマイコン２１に入力された場合、即ち、当該ＥＣＵ宛のメッセージが受信された場合には、受信メッセージの正当性を判定する認証処理が、ＭＡＣ演算部３１と認証部３２により実施される。受信メッセージとは、受信されたメッセージのことであり、本実施形態では、受信されたＣＡＮフレームに含まれているメッセージである。
【００３６】
当該ＥＣＵ宛のメッセージが受信された場合、ＭＡＣ演算部３１は、受信メッセージからＭＡＣを算出する。詳しくは、ＭＡＣ演算部３１は、受信メッセージと記憶部２２内の暗号鍵とから、上記暗号化アルゴリズムにより、ＭＡＣを算出する。
【００３７】
そして、認証部３２が、ＭＡＣ演算部３１にて受信メッセージから算出されたＭＡＣと、受信されたＭＡＣとを比較することにより、受信メッセージの正当性を判断する。つまり、認証部３２は、受信メッセージから算出されたＭＡＣと、受信されたＭＡＣとが、一致していれば、受信メッセージが正当なものであると判定するが、２つのＭＡＣが不一致ならば、受信メッセージは正当なものではないと判定する。尚、受信されたＭＡＣとは、受信されたＣＡＮフレームに含まれていたＭＡＣであり、即ち、受信メッセージに添付されていたＭＡＣである。また、認証部３２により正当と判定された受信メッセージは、前述の受信データ領域３０に取り込まれて、制御対象の制御に使用される。
【００３８】
［３．上記２．以外の構成］
図１に示すように、ＥＣＵ１１〜１４のうちの１つ（例えばＥＣＵ１１）は、インピーダンス測定部２５を備える。
【００３９】
インピーダンス測定部２５は、マイコン２１からの指令に従って、伝送路１０のインピーダンスを測定し、その測定結果をマイコン２１に出力する。インピーダンス測定部２５は、例えば、伝送路１０に所定の周波数及び振幅の交流電圧を印加して、伝送路１０に流れる電流と伝送路１０の電圧とを測定し、その測定した電流及び電圧の値から、伝送路１０のインピーダンスを算出する。このようなインピーダンス測定部２５については、例えば前述の特許文献１に記載されている。そして、ＥＣＵ１１のマイコン２１は、インピーダンス測定部２５によるインピーダンスの測定値に基づいて、伝送路１０に新たな機器が接続されたか否かを判定する。尚、電流及び電圧の値からインピーダンスを算出する処理は、マイコン２１で実施されても良い。
【００４０】
［４．各ＥＣＵに共通の処理］
次に、各ＥＣＵ１１〜１４のマイコン２１が実行する処理について、図３〜図６を用いて説明する。
【００４１】
［４−１．送信時処理］
マイコン２１は、メッセージを送信するタイミングにて、図３の送信時処理を行う。
図３に示すように、マイコン２１は、送信時処理を開始すると、Ｓ１１０にて、メッセージの宛先のＥＣＵについて、後述する図６のＳ４３０により非添付設定がされているか否かを判定する。非添付設定とは、ＭＡＣの算出及び添付を行うことなくメッセージを送信する、という設定である。そして、この非添付設定は、他のＥＣＵ毎に存在する設定である。非添付設定の有無は、例えば、他のＥＣＵ毎について設けられた非添付設定フラグがオンかオフかによって判別される。
【００４２】
マイコン２１は、Ｓ１１０にて、非添付設定がされていないと判定した場合には、Ｓ１２０に進み、送信対象のメッセージと、記憶部２２内の暗号鍵とから、暗号化アルゴリズムにより、ＭＡＣを算出する。このＳ１２０の処理は、ＭＡＣ演算部３１による処理である。
【００４３】
マイコン２１は、次のＳ１３０にて、Ｓ１２０で算出されたＭＡＣを、送信対象のメッセージに添付する処理を行う。具体的には、マイコン２１は、送信するＣＡＮフレームのデータフィールドに、メッセージとＭＡＣとを図２のように配置する処理を行う。Ｓ１２０及びＳ１３０の処理は、ＭＡＣを算出してメッセージに添付する処理（以下、算出添付処理）である。
【００４４】
そして、マイコン２１は、次の１４０にて、Ｓ１３０の処理によりＭＡＣが添付されたメッセージを当該メッセージの宛先へと送信する処理を行う。具体的には、マイコン２１は、Ｓ１４０では、送信するＣＡＮフレームの先頭に前述のＩＤを付加し、当該ＩＤが付加されたＣＡＮフレームのデータ列を、通信コントローラ２３に出力する。ＣＡＮフレームは、通信コントローラ２３に出力されることで、トランシーバ２４により伝送路１０へと送出される。そして、その後、マイコン２１は、当該送信時処理を終了する。
【００４５】
また、マイコン２１は、上記Ｓ１１０にて、メッセージの宛先のＥＣＵについて非添付設定がされていると判定した場合には、Ｓ１５０に進む。
マイコン２１は、Ｓ１５０では、ＭＡＣの算出及び添付を行うことなく、送信対象のメッセージを送信する処理を行う。具体的には、マイコン２１は、Ｓ１５０では、送信するＣＡＮフレームのデータフィールドに、ＭＡＣを配置することなく、メッセージを配置する。そして、Ｓ１４０と同様に、送信するＣＡＮフレームの先頭にＩＤを付加し、当該ＩＤが付加されたＣＡＮフレームのデータ列を、通信コントローラ２３に出力する。その後、マイコン２１は、当該送信時処理を終了する。
【００４６】
尚、Ｓ１４０とＳ１５０のそれぞれでは、マイコン２１から通信コントローラ２３に、データフィールドのデータ列が出力されると共に、付加するＩＤが指示され、通信コントローラ２３にて、ＣＡＮフレームの先頭にＩＤを付加する処理が実施されても良い。
【００４７】
［４−２．受信時処理］
マイコン２１は、トランシーバ２４及び通信コントローラ２３により、当該ＥＣＵ宛のＣＡＮフレームが受信された場合、即ち、当該ＥＣＵ宛のメッセージが受信された場合に、図４の受信時処理を行う。
【００４８】
図４に示すように、マイコン２１は、受信時処理を開始すると、Ｓ２１０にて、後述する図５のＳ３４０により非認証設定がされているか否かを判定する。非認証設定とは、ＭＡＣ演算部３１及び認証部３２による認証処理を行うことなく、受信メッセージを受信データ領域３０に取り込む、という設定である。非認証設定の有無は、例えば、非認証設定フラグがオンかオフかによって判別される。
【００４９】
マイコン２１は、Ｓ２１０にて、非認証設定がされていないと判定した場合には、Ｓ２２０に進み、受信メッセージと、記憶部２２内の暗号鍵とから、暗号化アルゴリズムにより、ＭＡＣを算出する。このＳ２２０の処理は、ＭＡＣ演算部３１による処理である。
【００５０】
マイコン２１は、次のＳ２３０にて、Ｓ２２０で受信メッセージから算出されたＭＡＣと、受信されたＭＡＣとを比較して、両ＭＡＣが一致しているか否かを判定する。このＳ２３０の処理は、認証部３２による処理である。
【００５１】
マイコン２１は、上記Ｓ２３０にて、両ＭＡＣが一致していると判定した場合には、受信メッセージが正当なものであると判定して、Ｓ２４０に進み、受信メッセージを受信データ領域３０に取り込む（即ち、記憶する）。その後、マイコン２１は、当該受信時処理を終了する。
【００５２】
また、マイコン２１は、上記Ｓ２３０にて、両ＭＡＣが一致していないと判定した場合には、受信メッセージが正当なものではないと判定して、Ｓ２５０に進み、受信メッセージを破棄する。その後、マイコン２１は、当該受信時処理を終了する。
【００５３】
また、マイコン２１は、上記Ｓ２１０にて、非認証設定がされていると判定した場合には、Ｓ２２０及びＳ２３０の認証処理を行うことなく、Ｓ２４０に進み、受信メッセージを受信データ領域３０に取り込む。その後、マイコン２１は、当該受信時処理を終了する。
【００５４】
［４−３．第１の切替制御処理］
マイコン２１は、起動すると、図５に示す第１の切替制御処理を行う。尚、マイコン２１は、例えば、車両の電源がオンされてＥＣＵ１１〜１４に動作用電力が供給されると、起動する。また、第１の切替制御処理は、他の処理と例えばマルチタスクの形で並列的に実施される。
【００５５】
図５に示すように、マイコン２１は、第１の切替制御処理を開始すると、Ｓ３１０にて、非認証設定を解除する。例えば、前述の非認証設定フラグをオフにする。つまり、図４の受信時処理においてＳ２２０及びＳ２３０の認証処理が実施されるようにする。
【００５６】
マイコン２１は、次のＳ３２０にて、当該ＥＣＵが通信システム１における他のＥＣＵから受信する予定の全てのメッセージについて、上記Ｓ２２０及びＳ２３０の認証処理により、認証に成功したか否かを判定する。認証に成功したとは、正当と判定された、ということである。マイコン２１は、このＳ３２０にて、受信予定の全メッセージについて認証に成功したと判定するまで待つ。
【００５７】
そして、マイコン２１は、上記Ｓ３２０にて、受信予定の全メッセージについて認証に成功したと判定した場合には、認証不要条件が成立したと判定して、Ｓ３３０進む。
マイコン２１は、Ｓ３３０では、当該ＥＣＵ宛のメッセージにＭＡＣを添付することが不要なことを示す不要通知を、通信システム１における他のＥＣＵに送信する。
【００５８】
尚、不要通知も、例えばＣＡＮフレームとして送信される。不要通知としてのＣＡＮフレームに付加されるＩＤは、通信システム１における他の全てのＥＣＵが宛先となるＩＤである。また、不要通知としてのＣＡＮフレームのデータフィールドには、データとして、例えば、当該ＣＡＮフレームが不要通知であることを示すデータと、当該ＣＡＮフレームの送信元を特定可能なデータとが配置される。更に、そのデータフィールドには、ＭＡＣも配置される。
【００５９】
そして、マイコン２１は、次のＳ３４０にて、非認証設定を行う。例えば、前述の非認証設定フラグをオンにする。その後、マイコン２１は、当該第１の切替制御処理を終了する。
【００６０】
つまり、マイコン２１は、Ｓ３２０にて認証不要条件が成立したと判定すると、他のＥＣＵに不要通知を送信して、当該ＥＣＵ宛のメッセージにＭＡＣを添付しないようにさせ、その上で、非認証設定を行う。
【００６１】
［４−４．第２の切替制御処理］
マイコン２１は、起動すると、図６に示す第２の切替制御処理を行う。第２の切替制御処理も、第１の切替制御処理と同様に、他の処理と例えばマルチタスクの形で並列的に実施される。
【００６２】
図６に示すように、マイコン２１は、第２の切替制御処理を開始すると、Ｓ４１０にて、他のＥＣＵ毎の非添付設定を全て解除する。例えば、他のＥＣＵ毎に対応して設けられた非添付設定フラグを全てオフにする。つまり、図３の送信時処理において、Ｓ１２０〜Ｓ１４０の処理が実施されるようにする。
【００６３】
マイコン２１は、次のＳ４２０にて、他のＥＣＵが送信した前述の不要通知を受信したか否かを判定する。マイコン２１は、このＳ４２０にて、他のＥＣＵからの不要通知を受信したと判定するまで待つ。
【００６４】
そして、マイコン２１は、上記Ｓ４２０にて、他のＥＣＵからの不要通知を受信したと判定した場合には、Ｓ４３０に進み、受信した不要通知の送信元ＥＣＵについての非添付設定を行う。例えば、不要通知の送信元ＥＣＵに対応する非添付設定フラグをオンする。そして、マイコン２１は、その後、Ｓ４２０に戻る。
【００６５】
このため、マイコン２１は、他のＥＣＵからの不要通知を受信すると、その不要通知の送信元ＥＣＵを宛先とするメッセージについては、ＭＡＣの算出及び添付を行うことなく宛先へと送信する処理（即ち、図３のＳ１５０）を行うようになる。
【００６６】
［４−５．認証復帰処理］
マイコン２１は、図７に示す認証復帰処理を、例えば一定時間毎に実施する。
図７に示すように、マイコン２１は、認証復帰処理を開始すると、Ｓ５１０にて、伝送路１０に新たな機器が接続されたか否か（以下、機器接続の有無）を判定する。
【００６７】
尚、インピーダンス測定部２５を備えるＥＣＵ１１のマイコン２１は、後述する図８の機器接続検出処理を実施することにより、機器接続の有無を判定する。このため、ＥＣＵ１１のマイコン２１は、Ｓ５１０では、機器接続検出処理の判定結果を参照することで、機器接続の有無を判定する。また、インピーダンス測定部２５を備えないＥＣＵ１２〜１４のマイコン２１は、Ｓ５１０では、ＥＣＵ１１から送信される後述の機器接続通知に基づいて、機器接続の有無を判定する。
【００６８】
マイコン２１は、上記Ｓ５１０にて、伝送路１０に新たな機器が接続されていないと判定した場合には、そのまま当該認証復帰処理を終了する。
また、マイコン２１は、上記Ｓ５１０にて、伝送路１０に新たな機器が接続された（即ち、機器接続あり）と判定した場合は、Ｓ５２０に進む。そして、マイコン２１は、Ｓ５２０では、図５のＳ３４０による非認証設定と、図６のＳ４３０による非添付設定とを、全て解除し、その後、当該認証復帰処理を終了する。尚、Ｓ５２０の解除処理が行われると、その後のマイコン２１の動作中において、図５及び図６の各処理は実施されなくなる。
【００６９】
［５．機器接続検出処理］
ＥＣＵ１１のマイコン２１は、図８に示す機器接続検出処理を、例えば一定時間毎に実施する。
【００７０】
図８に示すように、ＥＣＵ１１のマイコン２１は、機器接続検出処理を開始すると、Ｓ６１０にて、伝送路１０のインピーダンスをインピーダンス測定部２５によって測定する。
【００７１】
ＥＣＵ１１のマイコン２１は、次のＳ６２０にて、例えば記憶部２２から、予め記憶されている判定値を読み出す。判定値は、伝送路１０のインピーダンスの初期値である。判定値は、例えば、車両の製造工場において、通信システム１の車両への組み付けが完了したときに測定された、伝送路１０のインピーダンス値である。判定値としてのインピーダンス値の測定には、インピーダンス測定部２５が用いられても良いし、車両製造ラインに設けられた測定装置が用いられて良い。
【００７２】
そして、ＥＣＵ１１のマイコン２１は、次のＳ６３０にて、Ｓ６１０で測定されたインピーダンスの測定値と、判定値とを比較することにより、機器接続の有無を判定する。具体的には、Ｓ６３０では、測定値と判定値との差、即ち「測定値−判定値」が、所定値以上であるか否かが判定され、差が所定値以上であれば、「機器接続あり」と判定される。
【００７３】
ＥＣＵ１１のマイコン２１は、次のＳ６４０にて、Ｓ６３０での判定結果が「機器接続あり」であるか否かを判定し、判定結果が「機器接続あり」でなければ、当該機器接続検出処理を終了するが、判定結果が「機器接続あり」であれば、Ｓ６５０に進む。
【００７４】
ＥＣＵ１１のマイコン２１は、Ｓ６５０では、機器接続通知を他のＥＣＵ１２〜１４に送信し、その後、当該機器接続検出処理を終了する。機器接続通知も、前述の不要通知と同様にＣＡＮフレームとして送信される。
【００７５】
他のＥＣＵ１２〜１４のマイコン２１は、ＥＣＵ１１からの機器接続通知を受信すると、図７のＳ５１０にて「機器接続あり」と判定することとなる。尚、機器接続通知は、機器接続検出処理の判定結果として、「機器接続あり」を示す通知となっているが、「機器接続の有無」を示す通知としても良い。
【００７６】
［６．作用と効果］
ＥＣＵ１１〜１４が起動してから、ＥＣＵ１１〜１４の何れかにおいて、図５のＳ３２０で「ＹＥＳ」と判定されるまで、即ち、認証不要条件が成立したと判定されるまでは、各ＥＣＵ１１〜１４において、メッセージの送受信に関してメッセージ認証用の処理が行われる。つまり、メッセージの送信に関しては、図３のＳ１２０及びＳ１３０の算出添付処理が行われて、メッセージがＭＡＣと共に送信され、メッセージの受信に関しては、図４のＳ２２０及びＳ２３０の認証処理が行われる。
【００７７】
その後、例えばＥＣＵ１１において、図５のＳ３２０で認証不要条件が成立したと判定されたとする。
すると、ＥＣＵ１１では、図５のＳ３３０，Ｓ３４０により、他のＥＣＵ１２〜１４に対して不要通知が送信されると共に、非認証設定が行われる。ＥＣＵ１２〜１３では、ＥＣＵ１１からの不要通知を受信することにより、図６のＳ４３０にて、ＥＣＵ１１についての非添付設定が行われる。このため、ＥＣＵ１２〜１４において、ＥＣＵ１１宛てのメッセージについては、図３のＳ１２０及びＳ１３０の算出添付処理が行われず、ＭＡＣが添付されずに送信される。そして、ＥＣＵ１１では、他のＥＣＵ１２〜１４から当該ＥＣＵ１１宛てのメッセージを、図４のＳ２２０及びＳ２３０の認証処理を行うことなく、受信データ領域３０に取り込むようになる。
【００７８】
よって、ＥＣＵ１２〜１４からＥＣＵ１１へのメッセージの転送が、メッセージ認証用の処理無しで実施されるようになる。
同様に、例えばＥＣＵ１２において、図５のＳ３２０で認証不要条件が成立したと判定されると、ＥＣＵ１１，１３，１４からＥＣＵ１２へのメッセージの転送が、メッセージ認証用の処理無しで実施されるようになる。
【００７９】
よって、全てのＥＣＵ１１〜１４において、図５のＳ３２０で認証不要条件が成立したと判定されると、全てのＥＣＵ１１〜１４間のメッセージが、メッセージ認証用の処理無しで転送されるようになる。
【００８０】
このため、各ＥＣＵ１１〜１４における送受信のための処理負荷が低減される。更に、伝送路１０に流れるメッセージにＭＡＣが添付されなくなり、バス負荷も低減される。
その後、伝送路１０に新たな機器が接続されたとする。
【００８１】
すると、ＥＣＵ１１においては、図８の機器接続検出処理により、「機器接続あり」と判定されて、他のＥＣＵ１２〜１３への機器接続通知が送信されると共に、図７のＳ５１０で「機器接続あり」と判定されて、図７のＳ５２０により、非認証設定と非添付設定とが解除される。そして、ＥＣＵ１２〜１４においても、ＥＣＵ１１からの機器接続通知が受信されることにより、図７のＳ５１０で「機器接続あり」と判定されて、図７のＳ５２０により、非認証設定と非添付設定とが解除される。
【００８２】
よって、各ＥＣＵ１１〜１４は、メッセージの送受信に関して、メッセージ認証用の処理を行う状態に戻る。このため、伝送路１０に不正な機器が接続された場合に、通信のセキュリティ性が確保される。
【００８３】
このように、ＥＣＵ１１〜１４によれば、通信のセキュリティ性と送受信のための処理負荷及びバス負荷の低減とを両立させることができる、という効果が得られる。
更に、以上詳述した実施形態によれば、下記の効果も奏する。
【００８４】
図５のＳ３２０では、メッセージ認証を実施しなくする認証不要条件として、受信予定の全メッセージについて認証処理により認証に成功した、という条件が成立したか否かが判定される。
【００８５】
このため、通信相手の全てのＥＣＵの正当性が確認されてから、その通信相手との間のメッセージ認証を止めるようにすることができ、セキュリティ性を確保することができる。
【００８６】
尚、変形例として、マイコン２１は、図５のＳ３２０では、例えば、受信予定の全メッセージについて２回以上である所定回以上ずつ認証に成功したか否かを、判定するようになっていても良い。また、マイコン２１は、図５のＳ３２０では、例えば、起動してから一定時間が経過したか否かを判定しても良い。この一定時間としては、例えば、受信予定の全メッセージの受信を完了すると想定される時間以上に設定することができる。
【００８７】
ＥＣＵ１１では、マイコン２１が図８の処理を行うことで、伝送路１０のインピーダンスを測定すると共に、その測定値に基づいて、伝送路１０への機器接続の有無を判定する。このため、ＥＣＵ１１では、機器接続の有無を、他のＥＣＵからの通知に依らずに、当該ＥＣＵ１１単独で判定することができる。
【００８８】
また、ＥＣＵ１１から他のＥＣＵ１２〜１４へは、機器接続の有無の判定結果を示す通知として、機器接続通知が送信される。このため、ＥＣＵ１２〜１４では、図８の処理を行わなくても、図７のＳ５１０にて機器接続の有無を判定することができる。
【００８９】
また、ＥＣＵ１１のマイコン２１は、図８のＳ６３０では、通信システム１の車両への組み付けが完了したときに測定された伝送路１０のインピーダンス値である判定値と、インピーダンスの測定値とを比較することにより、機器接続の有無を判定する。このため、機器接続の有無の判定精度を高くすることができる。
【００９０】
尚、ＥＣＵ１１〜１４では、マイコン２１が行う処理のうち、Ｓ１１０〜Ｓ１５０が、送信処理部としての処理に相当し、Ｓ２１０〜Ｓ２５０が、受信処理部としての処理に相当する。そして、Ｓ３２０が、不要判定部としての処理に相当し、Ｓ３３０，Ｓ３４０が、第１設定部としての処理に相当し、Ｓ４２０，Ｓ４３０が、第２設定部としての処理に相当する。また、ＥＣＵ１１では、Ｓ５１０，Ｓ６１０〜Ｓ６３０が、接続判定部としての処理に相当し、Ｓ６５０が、結果通知部としての処理に相当する。また、ＥＣＵ１２〜１４では、Ｓ５１０が、接続判定部としての処理に相当する。そして、ＥＣＵ１１〜１４では、Ｓ５２０が、解除部としての処理に相当する。
【００９１】
［７．他の実施形態］
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【００９２】
例えば、通信システム１における各ＥＣＵ１１〜１４がインピーダンス測定部２５を備え、各ＥＣＵ１１〜１４のマイコン２１が、図８のＳ６１０〜Ｓ６３０の処理を行っても良い。
また、図８のＳ６２０では、インピーダンスの判定値として、複数の基準範囲が読み出されても良い。そして、図８のＳ６３０では、Ｓ６１０で測定されたインピーダンスの測定値が、複数の基準範囲の何れかに入っているか否かが判定され、インピーダンスの測定値が複数の基準範囲の何れにも入っていなければ、「機器接続あり」と判定されても良い。このように構成されたＥＣＵによれば、伝送路１０のインピーダンスの標準値が異なる複数通りの通信システム、具体的には、例えばＥＣＵの数が異なる複数通りの通信システムに、対応することができるようになる。
【００９３】
また、上記実施形態における１つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、１つの構成要素が有する１つの機能を、複数の構成要素によって実現したりしても良い。また、複数の構成要素が有する複数の機能を、１つの構成要素によって実現したり、複数の構成要素によって実現される１つの機能を、１つの構成要素によって実現したりしても良い。また、上記実施形態の構成の一部を省略しても良い。尚、特許請求の範囲に記載した文言から特定される技術思想に含まれるあらゆる態様が本開示の実施形態である。
【００９４】
また、上述したＥＣＵの他、当該ＥＣＵを構成要素とする通信システム、当該ＥＣＵとしてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、通信方法など、種々の形態で本開示を実現することもできる。
【符号の説明】
【００９５】
１…通信システム、１０…伝送路、１１〜１４…ＥＣＵ
【図１】
2019114916.tif 000003
【図２】
2019114916.tif 000004
【図３】
2019114916.tif 000005
【図４】
2019114916.tif 000006
【図５】
2019114916.tif 000007
【図６】
2019114916.tif 000008
【図７】
2019114916.tif 000009
【図８】
2019114916.tif 000010