(57)【特許請求の範囲】
【請求項１】
送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを生成する送信情報生成手段、
前記フレームの情報を暗号化して生成した認証情報を前記フレームに付与する認証情報付与手段、及び
前記認証情報付与手段により前記認証情報が付された前記フレームを通信線へ出力し、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）プロトコルに従って前記フレームを送信するとともに、受信した前記フレームの前記ＥＯＦに含まれるビット列より取得した１ビットが所定の信号であるかを判定し、前記所定の信号である場合に、受信した前記フレームを破棄するＣＡＮ通信手段を有する通信装置と、
前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを判定する認証情報判定手段、及び
前記認証情報判定手段により前記認証情報が正しいものでないと判定された場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力する情報破棄手段を有する通信制御装置と
を設けたことを特徴とする通信システム。
【請求項２】
前記通信装置及び前記通信制御装置は、鍵情報を共有し、
前記通信装置の認証情報付与手段は、前記鍵情報に基づいて、前記フレームの情報を暗号化して、認証情報を生成し、
前記通信制御装置の前記認証情報判定手段は、前記鍵情報に基づいて前記フレームに含まれる前記認証情報の判定を行うようにしてあること
を特徴とする請求項１に記載の通信システム。
【請求項３】
前記複数の通信装置は、それぞれ異なる前記鍵情報を有し、
前記通信制御装置は、各通信装置の前記鍵情報を有していること
を特徴とする請求項２に記載の通信システム。
【請求項４】
複数の通信装置が接続された共通の通信線に接続され、
前記通信線へ出力された認証情報が付与され、送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを取得する取得手段、
前記取得手段が、前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを判定する認証情報判定手段、及び
前記認証情報判定手段により前記認証情報が正しいものでないと判定された場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力する情報破棄手段
を備えることを特徴とする通信制御装置。
【請求項５】
複数の通信装置が共通の通信線を介して接続された通信システムにて、前記通信線に対する不正な情報送信を防止する不正情報送信防止方法であって、
各通信装置は、他の通信装置へ送信するフレームに認証情報を付与して前記通信線へ出力し、
前記通信線へ出力された、送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを通信制御装置が取得し、
前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを前記通信制御装置が判定し、
前記認証情報が正しいものでないと判定した場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力する
ことを特徴とする不正情報送信防止方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＥＣＵ（Electronic Control Unit）などの複数の通信装置が共通の通信線で接続された通信システム、このシステムにおいて不正な情報送信を防止する通信制御装置及び不正情報送信防止方法に関する。
【背景技術】
【０００２】
従来、車両に搭載された複数の通信装置間の通信には、ＣＡＮ（Controller Area Network）の通信プロトコルが広く採用されている。ＣＡＮの通信プロトコルでは、共通のＣＡＮバスに複数の通信装置が接続されるため、複数の通信装置が同時的に情報送信を行って衝突が発生した場合には、各通信装置にて調停処理（アービトレーション）が行われ、優先度の高い情報送信が実行される。アービトレーションを行うために、各通信装置は、ＣＡＮバスに送信信号の出力を行うと同時に、ＣＡＮバスの信号レベルの検出を行い、自らが出力した送信信号に対して、検出した信号の信号レベルがレセシブ（劣性値）からドミナント（優性値）に変化した場合、通信の衝突が発生したと判断し、送信処理を停止する。ＣＡＮバス上の信号はレセシブよりドミナントが優位であるため、通信の衝突が発生してもドミナントを出力した電子機器は送信処理を継続して行うことができる。
【０００３】
特許文献１においては、分岐接続された２線式ＣＡＮ通信回路の分岐回路毎の異常診断を行う異常診断装置が提案されている。この異常診断装置は、ＣＡＮ通信線の各分岐回路とコネクタ接続される検査用の分岐回路と、該分岐回路を接続するジョイント回路を有する分岐接続回路と、各分岐回路をジョイント回路から切り離す分離手段と、前記分離手段で切り離された分岐回路の電位を測定する電位測定手段と、前記電位測定手段と前記分岐回路とを接続する接続手段と、前記電位測定手段と接続し、測定された電位より異常判定を行う異常判定手段とを備えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１１１２９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
車両のＣＡＮバスには、悪意のある機器が接続される可能性がある。悪意のある機器は、例えばＣＡＮバスに対して不正な情報送信を繰り返し行うことによって、このＣＡＮバスに接続された他のＥＣＵを誤動作させる虞がある。
【０００６】
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、共通の通信線に対して不正な情報送信がなされた場合であっても、この通信線に接続された通信装置の誤動作などを防止し得る通信システム、通信制御装置及び不正情報送信防止方法を提供することにある。
【課題を解決するための手段】
【０００７】
本発明に係る通信システムは、送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを生成する送信情報生成手段、前記フレームの情報を暗号化して生成した認証情報を前記フレームに付与する認証情報付与手段、及び前記認証情報付与手段により前記認証情報が付された前記フレームを通信線へ出力し、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）プロトコルに従って前記フレームを送信するとともに、受信した前記フレームの前記ＥＯＦに含まれるビット列より取得した１ビットが所定の信号であるかを判定し、前記所定の信号である場合に、受信した前記フレームを破棄するＣＡＮ通信手段を有する通信装置と、前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを判定する認証情報判定手段、及び前記認証情報判定手段により前記認証情報が正しいものでないと判定された場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力する情報破棄手段を有する通信制御装置とを設けたことを特徴とする。
【０００８】
また、本発明に係る通信システムは、前記通信装置及び前記通信制御装置は、鍵情報を共有し、前記通信装置の認証情報付与手段は、前記鍵情報に基づいて、前記フレームの情報を暗号化して、認証情報を生成し、前記通信制御装置の前記認証情報判定手段は、前記鍵情報に基づいて前記フレームに含まれる前記認証情報の判定を行うようにしてあることを特徴とする。
【０００９】
また、本発明に係る通信システムは、前記複数の通信装置は、それぞれ異なる前記鍵情報を有し、前記通信制御装置は、各通信装置の前記鍵情報を有していることを特徴とする。
【００１０】
また、本発明に係る通信制御装置は、複数の通信装置が接続された共通の通信線に接続され、前記通信線へ出力された認証情報が付与され、送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを取得する取得手段、前記取得手段が、前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを判定する認証情報判定手段、及び前記認証情報判定手段により前記認証情報が正しいものでないと判定された場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力する情報破棄手段を備えることを特徴とする。
【００１１】
また、本発明に係る不正情報送信防止方法は、複数の通信装置が共通の通信線を介して接続された通信システムにて、前記通信線に対する不正な情報送信を防止する不正情報送信防止方法であって、各通信装置は、他の通信装置へ送信するフレームに認証情報を付与して前記通信線へ出力し、前記通信線へ出力された、送信する情報の開始を示すＣＡＮヘッダと、前記送信する情報を格納するデータフィールドと、前記データフィールドに続くＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）フィールドと、前記ＣＲＣフィールドに続く前記送信する情報の終了を示す特定のビット列を含むＥＯＦ（Ｅｎｄ  ｏｆ  Ｆｒａｍｅ）とを含むフレームを通信制御装置が取得し、前記フレームの前記ＣＡＮヘッダ、前記データフィールド、前記ＣＲＣフィールドまでを取得した際に、前記ＣＡＮヘッダ及び前記データフィールドを暗号化して生成した情報を、前記フレームに付与された前記認証情報と比較することで前記認証情報が正しいものであるか否かを前記通信制御装置が判定し、前記認証情報が正しいものでないと判定した場合に、前記通信装置に不正な前記フレームを破棄させるための所定の信号を前記フレームの前記ＥＯＦの出力期間中に出力することを特徴とする。
【００１２】
本発明においては、共通の通信線に対して複数の通信装置と通信制御装置とを接続する。各通信装置は、フレームに認証情報を付与して通信線へ出力することにより、他の通信装置への情報送信を行う。なお本発明では、他の通信装置からの情報を受信した通信装置は、受信情報に含まれる認証情報の正否を判定する必要はない。
通信制御装置は、通信線に対するフレームの送信を監視しており、フレームの送信が行われた場合にはフレームを取得して、取得したフレームに含まれる認証情報の正否を判定する。認証情報が正しいものであれば、通信制御装置は、このフレーム送信に対して何ら処理を行う必要はない。認証情報が正しいものでない場合、フレームが悪意のある機器による不正なものである可能性があるため、通信制御装置は、通信装置に破棄させる処理を行う。
これにより、各通信装置では認証情報の正否を判定することなく、不正な情報が各通信装置にて受信されることを防止できる。
【００１３】
また本発明においては、フレームを破棄させるため、通信装置がフレームのＥＯＦの出力期間中に、通信制御装置が所定の信号を通信線へ出力する。これによりフレームが正規のものではなくなり、各通信装置はこの情報の受信を中止するため、フレームが破棄される。
【００１４】
また本発明においては、通信装置及び通信制御装置が鍵情報を共有し、認証情報の生成及び判定等の処理を行う。これにより、鍵情報を有していない悪意のある機器は認証情報を生成することができないため、通信制御装置がより確実に不正な情報送信を防止することができる。
【００１５】
また本発明においては、通信システムに含まれる複数の通信装置は、それぞれ異なる鍵情報を有する。これにより鍵情報の漏えいなどによる悪影響を低減することができる。各通信装置は、他の通信装置の送信情報に含まれる認証情報の判定を行う必要がないため、他の通信装置の鍵情報を有している必要はない。これに対して通信制御装置は、フレームの破棄を行う対象とすべき全ての通信装置についての鍵情報を有している。通信制御装置は、情報の送信元の通信装置に対応する鍵情報を用いてフレームに含まれる認証情報の正否を判定する。
【発明の効果】
【００１６】
本発明による場合は、通信装置が送信情報に付した認証情報に基づいて通信制御装置が送信情報の正否を判定し、送信情報が正しいものでない場合には、通信制御装置が送信情報のＥＯＦの出力期間中に、通信制御装置がこの情報を通信装置に破棄させる構成とすることにより、悪意のある機器により共通の通信線に対して不正な情報送信がなされた場合であっても、送信情報の全てが出力される前に送信された情報を破棄させることで通信装置が誤動作することを未然に防止できる。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態に係る通信システムの構成を示す模式図である。
【図２】ＥＣＵの構成を示すブロック図である。
【図３】監視装置の構成を示すブロック図である。
【図４】鍵情報テーブルの構成を説明する模式図である。
【図５】本実施の形態に係る通信システムの監視処理の概要を説明するための模式図である。
【図６】各ＥＣＵによる送信フレームの生成方法を説明するための模式図である。
【図７】ＥＣＵが行う情報送信処理の手順を示すフローチャートである。
【図８】監視装置が行う監視処理の手順を示すフローチャートである。
【図９】監視装置が行う監視処理の手順を示すフローチャートである。
【図１０】ＥＣＵが行う情報受信処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００１８】
＜システム構成＞
図１は、本実施の形態に係る通信システムの構成を示す模式図である。本実施の形態に係る通信システムは、車両１に搭載された複数のＥＣＵ３と、１つの監視装置５とを備えて構成されている。ＥＣＵ３及び監視装置５は、車両１に敷設された共通の通信線を介して接続され、相互にデータを送受信することができる。本実施の形態においては、この通信線をＣＡＮバスとし、ＥＣＵ３及び監視装置５は、ＣＡＮプロトコルに従った通信を行う。ＥＣＵ３は、例えば車両１のエンジンの制御を行うエンジンＥＣＵ、車体の電装品の制御を行うボディＥＣＵ、ＡＢＳ（Antilock Brake System）に関する制御を行うＡＢＳ−ＥＣＵ、又は、車両１のエアバッグの制御を行うエアバッグＥＣＵ等のように、種々の電子制御装置であってよい。監視装置５は、車内ネットワークに対する不正なデータ送信を監視する装置である。監視装置５は、監視専用の装置として設けられてもよく、例えばゲートウェイなどの装置に監視の機能を付加した構成であってもよく、また例えばいずれか１つのＥＣＵ３に監視の機能を付加した構成であってもよい。
【００１９】
図２は、ＥＣＵ３の構成を示すブロック図である。なお図２においては、車両１に設けられたＥＣＵ３について、通信及び不正監視等に関するブロックを抜き出して図示してある。これらのブロックは各ＥＣＵ３に共通である。本実施の形態に係るＥＣＵ３は、処理部３１、記憶部３２及びＣＡＮ通信部３３等を備えて構成されている。処理部３１は、ＣＰＵ（Central Processing Unit）又はＭＰＵ（Micro-Processing Unit）等の演算処理装置を用いて構成されている。処理部３１は、記憶部３２などに記憶されたプログラムを読み出して実行することにより、車両１に係る種々の情報処理又は制御処理等を行う。
【００２０】
記憶部３２は、フラッシュメモリ又はＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）等の不揮発性のメモリ素子を用いて構成されている。記憶部３２は、処理部３１が実行するプログラム、及び、これにより行われる処理に必要な種々のデータが記憶されている。なお記憶部３２に記憶されるプログラム及びデータは、ＥＣＵ３毎に異なる。また本実施の形態において記憶部３２は、処理部３１が行う認証情報の生成処理に用いられる鍵情報３２ａが記憶されている。本実施の形態においてはＣＡＮバスに複数のＥＣＵ３が接続されているが、各ＥＣＵ３が記憶部３２に記憶する鍵情報３２ａは、それぞれ異なるものであってもよい。
【００２１】
ＣＡＮ通信部３３は、ＣＡＮの通信プロトコルに従って、ＣＡＮバスを介した他のＥＣＵ３又は監視装置５との通信を行う。ＣＡＮ通信部３３は、処理部３１から与えられた送信用の情報を、ＣＡＮの通信プロトコルに従った送信信号に変換し、変換した信号をＣＡＮバスへ出力することで他のＥＣＵ３又は監視装置５への情報送信を行う。ＣＡＮ通信部３３は、ＣＡＮバスの電位をサンプリングすることによって、他のＥＣＵ３又は監視装置５が出力した信号を取得し、この信号をＣＡＮの通信プロトコルに従って２値の情報に変換することで情報の受信を行い、受信した情報を処理部３１へ与える。
【００２２】
本実施の形態においてＥＣＵ３の処理部３１には、認証情報生成部４１及び送信フレーム生成部４２等が設けられている。認証情報生成部４１及び送信フレーム生成部４２は、ハードウェアの機能ブロックとして構成されるものであってもよく、ソフトウェアの機能ブロックとして構成されるものであってもよい。認証情報生成部４１は、他のＥＣＵ３へ送信すべき情報と記憶部３２の鍵情報３２ａとを用いて認証情報を生成する処理を行う。送信フレーム生成部４２は、他のＥＣＵ３へ送信すべき情報及び認証情報生成部４１が生成した認証情報を基に、本実施の形態における通信に適した送信用のフレーム（メッセージ）を生成する処理を行う。送信フレーム生成部４２が生成した送信フレームをＣＡＮ通信部３３へ与えることにより、他のＥＣＵ３への情報送信を行うことができる。
【００２３】
図３は、監視装置５の構成を示すブロック図である。監視装置５は、処理部５１、記憶部５２及びＣＡＮ通信部５３等を備えて構成されている。処理部５１は、ＣＰＵ又はＭＰＵ等の演算処理装置を用いて構成され、記憶部５２に記憶されたプログラムを読み出して実行することにより、車両１のＥＣＵ３の挙動及び通信等を監視する処理を行う。
【００２４】
記憶部５２は、フラッシュメモリ又はＥＥＰＲＯＭ等のデータ書き換え可能な不揮発性のメモリ素子を用いて構成されている。本実施の形態において記憶部５２は、ＣＡＮバスに接続された全てのＥＣＵ３の鍵情報を含む鍵情報テーブル５２ａを記憶している。図４は、鍵情報テーブル５２ａの構成を説明する模式図である。監視装置５が記憶部５２に記憶する鍵情報テーブル５２ａは、各ＥＣＵ３を識別し得るＩＤと、ＥＣＵ３が有する鍵情報とが対応付けられている。本実施の形態において各ＥＣＵ３が送信する送信フレームには、ＩＤが含まれている。各ＥＣＵ３には予め一又は複数のＩＤがそれぞれ割り当てられており、２つ以上のＥＣＵ３に対して同一のＩＤが割り当てられることはないものとする。監視装置５は、ＥＣＵ３の送信フレームに含まれるＩＤに基づいて、鍵情報テーブル５２ａから１つの鍵情報を取得することができる。
【００２５】
ＣＡＮ通信部５３は、ＣＡＮの通信プロトコルに従って、ＣＡＮバスを介したＥＣＵ３との通信を行う。ＣＡＮ通信部５３は、処理部５１から与えられた送信用の情報を、ＣＡＮの通信プロトコルに従った送信信号に変換し、変換した信号をＣＡＮバスへ出力することでＥＣＵ３への情報送信を行う。ＣＡＮ通信部５３は、ＣＡＮバスの電位をサンプリングすることによって、ＥＣＵ３が出力した信号を取得し、この信号をＣＡＮの通信プロトコルに従って２値の情報に変換することで情報の受信を行い、受信した情報を処理部５１へ与える。
【００２６】
本実施の形態において監視装置５の処理部５１には、認証情報判定部６１及び送信情報破棄処理部６２等が設けられている。認証情報判定部６１及び送信情報破棄処理部６２は、ハードウェアの機能ブロックとして構成されるものであってもよく、ソフトウェアの機能ブロックとして構成されるものであってもよい。認証情報判定部６１は、ＥＣＵ３が送信した送信フレームに含まれる認証情報が正しいものであるか否かを判定する処理を行う。送信情報破棄処理部６２は、不正な送信フレームを検出した場合に、各ＥＣＵ３にこの送信フレームを破棄させるための処理を行う。
【００２７】
＜監視処理＞
本実施の形態に係る通信システムは、ＣＡＮバスに対する不正な情報送信を監視する機能を有している。図５は、本実施の形態に係る通信システムの監視処理の概要を説明するための模式図である。車両１のＣＡＮバスに対しては、悪意のある機器１００（図５において破線で示す）が不正に接続される可能性がある。悪意のある機器１００は、例えば不正なメッセージをＣＡＮバスに対して送信する。不正なメッセージには、例えば正規のＥＣＵ３を誤動作させるような制御指示又はセンサ検知結果等を含む可能性がある。本実施の形態に係る監視装置５は、ＣＡＮバスに対するメッセージ送信を監視している。監視装置５は、ＣＡＮバスに対してメッセージが送信された場合、このメッセージが正規のＥＣＵ３が送信したものであるか否かを判定する。メッセージが不正なものであると判定した場合、監視装置５は、悪意のある機器１００によるメッセージ送信が完了する前に（ＥＣＵ３によるメッセージ受信が完了する前に）、ＣＡＮバスに対して所定の信号を出力することによって、ＥＣＵ３にこのメッセージを破棄させる。
【００２８】
図６は、各ＥＣＵ３による送信フレームの生成方法を説明するための模式図である。本実施の形態に係る通信システムにて送受信されるフレーム（メッセージ）には、ＣＡＮヘッダ、データフィールド、認証情報、ＣＲＣ（Cyclic Redundancy Check）フィールド、ＡＣＫフィールド及びＥＯＦ（End Of Frame）を含んで構成されている。ＣＡＮヘッダは、従来のＣＡＮプロトコルにおけるＳＯＦ（Start Of Frame）、アービトレーションフィールド及びコントロールフィールド等を含むものであり、上述したＥＣＵ３を識別し得るＩＤを含んでいる。データフィールドは、例えばＥＣＵ３に対する制御指示又はセンサ検知結果等のように、ＥＣＵ３間で授受すべき情報の本体が格納される。
【００２９】
ＣＲＣフィールド、ＡＣＫフィールド及びＥＯＦは、従来のＣＡＮプロトコルにて用いられるものと同じであるため詳細な説明は省略する。ＣＲＣフィールドは、誤り検出を行うための情報を格納する。ＡＣＫフィールドは、このフレームを受信するＥＣＵ３による受信応答のためのフィールドである。ＥＯＦは、フィールドの終了を示す特定のビット列である。
【００３０】
本実施の形態に係るフレームには、従来のＣＡＮプロトコルと互換するものの、一部に認証情報を含んでいる。認証情報は、このフレームが正当なものであるか否かを監視装置５が判定するために用いられる情報である。ＥＣＵ３の認証情報生成部４１は、送信フレームに含まれるＣＡＮヘッダ及びデータを、記憶部３２に記憶した鍵情報３２ａを用いて暗号化することにより認証情報を生成する。本実施の形態においては、例えばＨＭＡＣ（ＳＨＡ−２５６）のアルゴリズムを用いて、５１２ビット程度の鍵情報３２ａに基づき、２５６ビットのメッセージ認証符号（ＭＡＣ）を生成する。ＥＣＵ３の送信フレーム生成部４２は、認証情報生成部４１が生成した２５６ビットのＭＡＣを認証情報として送信フレームに付し、ＣＡＮ通信部３３へ送信フレームを与えることで、他のＥＣＵ３へのフレームの送信を行う。
【００３１】
なお本実施の形態において、図６に示したフレームを受信したＥＣＵ３は、受信フレームに含まれる認証情報の正否を確認する必要はない。このため各ＥＣＵ３は、他のＥＣＵ３と鍵情報を共有していない。
【００３２】
ＥＣＵ３のＣＡＮ通信部３３は、送信フレームを構成する複数ビットの情報を、ＣＡＮヘッダ側からＥＯＦまで順にＣＡＮバスへ出力する。監視装置５は、ＣＡＮバスへ出力された情報を順次取得し、送信フレームのＣＲＣフィールドまでを取得した際に、ＣＲＣフィールドの情報に基づく誤り検出を行う。送信フレームに誤りがない場合、監視装置５の認証情報判定部６１は、送信フレームに含まれる認証情報の正否を判定する。認証情報判定部６１は、受信済みのＣＡＮヘッダからＩＤを取得して記憶部５２の鍵情報テーブル５２ａを参照し、ＩＤに対応する鍵情報を取得する。認証情報判定部６１は、取得した鍵情報と、受信済みのＣＡＮヘッダ及びデータフィールドとに基づき、ＥＣＵ３の認証情報生成部４１と同じアルゴリズムにより認証情報を生成する。認証情報判定部６１は、自らが生成した認証情報と、ＣＡＮバスに送信された送信フレームに含まれる認証情報とを比較し、両認証情報が一致した場合にこの送信フレームが正当なものであると判定する。両認証情報が一致しない場合、認証情報判定部６１は、送信フレームが正当なものではないと判定する。なお認証情報判定部６１は、送信フレームのＣＲＣフィールドの最終ビットがＣＡＮバスに出力されてから、ＥＯＦの最終ビットがＣＡＮバスに出力されるまでの間に判定処理を完了する。
【００３３】
ＣＡＮバスに出力された送信フレームが正当なものではないと認証情報判定部６１が判定した場合、監視装置５の送信情報破棄処理部６２は、ＣＡＮバスに接続されたＥＣＵ３にこの送信フレームを破棄させるための処理を行う。送信情報破棄処理部６２は、この送信フレームのＥＯＦの出力期間中に、ＣＡＮバスに対してエラーフレームを送信する。このエラーフレームにより、ＣＡＮバスに接続された全てのＥＣＵ３は、受信中の不正なフレームを破棄する。
【００３４】
＜フローチャート＞
以下、本実施の形態に係る通信システムのＥＣＵ３及び監視装置５が行う処理を、フローチャートを用いて説明する。図７は、ＥＣＵ３が行う情報送信処理の手順を示すフローチャートである。ＥＣＵ３の処理部３１は、自らに与えられたＩＤ及びセンサの検知結果など他のＥＣＵ３へ送信すべき情報等に基づき、ＣＡＮヘッダ及びデータフィールドを生成する（ステップＳ１）。処理部３１の認証情報生成部４１は、記憶部３２に記憶された鍵情報３２ａを読み出す（ステップＳ２）。認証情報生成部４１は、ステップＳ１にて生成したＣＡＮヘッダ及びデータフィールドと、ステップＳ２にて読み出した鍵情報３２ａとに基づいて、所定のアルゴリズムにより認証情報を生成する（ステップＳ３）。処理部３１は、ＣＡＮヘッダ、データフィールド及び認証情報に対する誤り検出を行うためのＣＲＣフィールドを生成する（ステップＳ４）。処理部３１は、これまでに生成したＣＡＮヘッダ、データフィールド、認証情報及びＣＲＣフィールドを結合して送信フレームを生成し（ステップＳ５）、ＣＡＮ通信部３３へ与える。
【００３５】
ＥＣＵ３のＣＡＮ通信部３３は、送信フレームのＣＡＮヘッダから送信を開始する。ＣＡＮ通信部３３は、送信フレームの未送信部分から１ビットを取得し、この１ビットに応じた信号をＣＡＮバスへ出力する（ステップＳ６）。ＣＡＮ通信部３３は、例えばアービトレーションによる送信停止など、送信処理を中断する要因が発生したか否かを判定する（ステップＳ７）。中断要因が発生した場合（Ｓ７：ＹＥＳ）、ＣＡＮ通信部３３は、エラー処理などを行って（ステップＳ８）、情報送信処理を終了する。中断要因が発生していない場合（Ｓ７：ＮＯ）、ＣＡＮ通信部３３は、与えられた送信フレームの全ビットについて出力を完了したか否かを判定する（ステップＳ９）。全ビットの出力を完了していない場合（Ｓ９：ＮＯ）、ＣＡＮ通信部３３は、ステップＳ６へ処理を戻し、送信フレームの次のビットの出力を行う。全ビットの出力を完了している場合（Ｓ９：ＹＥＳ）、ＣＡＮ通信部３３は、情報送信処理を終了する。
【００３６】
図８及び図９は、監視装置５が行う監視処理の手順を示すフローチャートである。監視装置５のＣＡＮ通信部５３は、ＣＡＮバスの電位を周期的にサンプリングしている。ＣＡＮ通信部５３は、ＣＡＮバスの電位変化に基づき、ＣＡＮバスに対する情報送信が開始されたか否かを判定する（ステップＳ２１）。情報送信が開始されていない場合（Ｓ２１：ＮＯ）、ＣＡＮ通信部５３は、情報送信が開始されるまで待機する。情報送信が開始された場合（Ｓ２１：ＹＥＳ）、ＣＡＮ通信部５３は、ＣＡＮバスの電位に基づいて送信フレームの１ビットを取得する（ステップＳ２２）。ＣＡＮ通信部５３は、取得した１ビットがＣＲＣフィールドの最終ビットに相当するものであるか否かを判定する（ステップＳ２３）。ＣＲＣフィールドの最終ビットでない場合（Ｓ２３：ＮＯ）、ＣＡＮ通信部５３は、ステップＳ２２へ処理を戻し、送信フレームの各ビットの取得を繰り返して行う。ＣＲＣフィールドの最終ビットである場合（Ｓ２３：ＹＥＳ）、ＣＡＮ通信部５３は、これまでに取得した情報を処理部５１へ与える。
【００３７】
処理部５１は、ＣＡＮ通信部５３から与えられた情報（送信フレーム）を基に、ＣＲＣフィールドの判定を行う（ステップＳ２４）。処理部５１は、送信フレームのＣＡＮヘッダ〜認証情報に基づいて算出したＣＲＣと、送信フレームのＣＲＣフィールドに格納されたＣＲＣとの値を比較することで、送信フレームに誤りがあるか否かを判定する（ステップＳ２５）。送信フレームに誤りがある場合（Ｓ２５：ＹＥＳ）、処理部５１は、処理を終了する。なおＣＲＣフィールドに基づいて送信フレームに誤りがあると判断される場合、他のＥＣＵ３においても同様の判断がなされ、この送信フレームは各ＥＣＵ３において破棄される。
【００３８】
送信フレームに誤りがない場合（Ｓ２５：ＮＯ）、処理部５１の認証情報判定部６１は、送信フレームのＣＡＮヘッダに含まれるＩＤを取得する（ステップＳ２６）。認証情報判定部６１は、取得したＩＤを基に記憶部５２の鍵情報テーブル５２ａを参照し、ＩＤに対応する鍵情報を取得する（ステップＳ２７）。認証情報判定部６１は、取得した送信フレームのＣＡＮヘッダ及びデータフィールドと、ステップＳ２７にて取得した鍵情報とに基づいて、所定のアルゴリズムにより認証情報を生成する（ステップＳ２８）。認証情報判定部６１は、送信フレームから認証情報を取得し（ステップＳ２９）、取得した認証情報と、ステップＳ２８にて生成した認証情報とが一致するか否かを判定する（ステップＳ３０）。両認証情報が一致する場合（Ｓ３０：ＹＥＳ）、処理部５１は、処理を終了する。両認証情報が一致しない場合（Ｓ３０：ＮＯ）、処理部５１の送信情報破棄処理部６２は、ＣＡＮ通信部５３にてエラーフレームをＣＡＮバスへ出力し（ステップＳ３１）、処理を終了する。
【００３９】
図１０は、ＥＣＵ３が行う情報受信処理の手順を示すフローチャートである。ＥＣＵ３のＣＡＮ通信部３３は、まず、ＣＡＮバスに対して出力された送信フレームを１ビットずつ取得していき、送信フレームのＣＡＮヘッダからＡＣＫフィールドまでの受信処理を行う（ステップＳ４１）。なお図示は省略するが、ＥＣＵ３は、ＣＲＣフィールドまで受信した際に誤りの有無を検知する処理を行う。
【００４０】
その後、ＣＡＮ通信部３３は、ＣＡＮバスに対して出力された送信フレームのＥＯＦの１ビットを取得する（ステップＳ４２）。ＣＡＮ通信部３３は、取得した１ビットがＥＯＦではなく監視装置５が出力したエラーフレームであるか否かを判定する（ステップＳ４３）。エラーフレームである場合（Ｓ４３：ＹＥＳ）、ＣＡＮ通信部３３は、これまでに受信したフレームを破棄して（ステップＳ４４）、受信処理を終了する。
【００４１】
エラーフレームでない場合（Ｓ４３：ＮＯ）、ＣＡＮ通信部３３は、ＥＯＦの受信を完了したか否かを判定する（ステップＳ４５）。ＥＯＦの受信を完了していない場合（Ｓ４５：ＮＯ）、ＣＡＮ通信部３３は、ステップＳ４２へ処理を戻し、ＥＯＦの受信を継続する。ＥＯＦの受信を完了した場合（Ｓ４５：ＹＥＳ）、処理部３１は、ＣＡＮ通信部３３が受信したフレームのデータフィールドから必要なデータを取得し（ステップＳ４６）、取得したデータに応じた処理を行って（ステップＳ４７）、処理を終了する。
【００４２】
＜まとめ＞
以上の構成の本実施の形態に係る通信システムは、共通のＣＡＮバスに対して複数のＥＣＵ３と監視装置５とを接続する。各ＥＣＵ３は、他のＥＣＵ３へ送信すべきデータに認証情報を付した送信フレームをＣＡＮ通信部３３にてＣＡＮバスへ出力することにより、他のＥＣＵ３への情報送信を行う。なお本実施の形態においては、他のＥＣＵ３からのフレームを受信したＥＣＵ３は、受信フレームに含まれる認証情報の正否を判定する必要はない。監視装置５は、ＣＡＮバスに対するフレームの送信を監視しており、フレームの送信が行われた場合にはこれを取得して、取得したフレームに含まれる認証情報の正否を判定する。認証情報が正しいものであれば、監視装置５は、このフレームに対して何ら処理を行う必要はない。認証情報が正しいものでない場合、送信フレームが悪意のある機器１００による不正なものである可能性があるため、監視装置５は、この送信フレームをＥＣＵ３に破棄させる処理を行う。これにより、各ＥＣＵ３では認証情報の正否を判定することなく、不正なフレームが各ＥＣＵ３にて受信されることを防止できる。
【００４３】
また本実施の形態においては、各ＥＣＵ３に送信フレームを破棄させるため、送信フレームのＥＯＦの最終ビットがＣＡＮバスへ出力される前に、監視装置５がエラーフレームをＣＡＮバスへ出力する。これにより各ＥＣＵ３は、この送信フレームの受信を中止し、送信フレームが破棄される。
【００４４】
また本実施の形態においては、監視装置５とＥＣＵ３とが鍵情報を共有し、認証情報の生成及び判定を行う。これにより鍵情報を有していない悪意のある機器１００は認証情報を生成することができないため、不正なフレームの送信を監視装置５がより確実に防止することができる。
【００４５】
また本実施の形態においては、ＣＡＮバスに接続された複数のＥＣＵ３は、それぞれ異なる鍵情報を有している。これにより鍵情報の漏えいなどによる悪影響を低減することができる。各ＥＣＵ３は、他のＥＣＵ３の送信フレームに含まれる認証情報の正否を判定する必要がないため、他のＥＣＵ３の鍵情報を有している必要はない。これに対して監視装置５は、全てのＥＣＵ３についての鍵情報を有しており、記憶部５２に鍵情報テーブル５２ａとして管理している。監視装置５は、送信フレームに含まれるＩＤに基づいて送信元のＥＣＵ３を判別し、対応する鍵情報を鍵情報テーブル５２ａから読み出して、送信フレームに含まれる認証情報の正否を判定することができる。
【００４６】
なお本実施の形態においては、ＥＣＵ３及び監視装置５がＣＡＮのプロトコルに従った通信を行う構成としたが、これに限るものではなく、ＣＡＮ以外のプロトコルによる通信を行う構成としてもよい。また本実施の形態においては、車両１に搭載された通信システムを例に説明を行ったが、通信システムは車両１に搭載されるものに限らず、例えば飛行機又は船舶等の移動体に搭載されるものであってよく、また例えば移動体ではなく工場、オフィス又は学校等に設置されるものであってもよい。また本実施の形態にて示したフレームの構成は、一例であって、これに限るものではない。また通信システム中に監視装置５を設けるのではなく、いずれか１つのＥＣＵ３が本実施の形態に係る監視装置５の監視機能を備える構成であってもよい。またＥＣＵ３及び監視装置５の間での鍵情報の共有方法は、どのような方法を採用してもよい。またＥＣＵ３及び監視装置５が鍵情報を用いて行う暗号処理は、どのようなアルゴリズムのものであってもよい。また認証情報の生成処理及び送信フレーム破棄の処理等を処理部５１が行う構成としたが、これに限るものではなく、その一部又は全部の処理をＣＡＮ通信部５３が行う構成としてもよい。
【符号の説明】
【００４７】
１  車両
３  ＥＣＵ
５  監視装置
３１  処理部
３２  記憶部
３２ａ  鍵情報
３３  ＣＡＮ通信部
４１  認証情報生成部
４２  送信フレーム生成部
５１  処理部
５２  記憶部
５２ａ  鍵情報テーブル
５３  ＣＡＮ通信部
６１  認証情報判定部
６２  送信情報破棄処理部
１００  悪意のある機器
【図１】
0006348150.tif 000002
【図２】
0006348150.tif 000003
【図３】
0006348150.tif 000004
【図４】
0006348150.tif 000005
【図５】
0006348150.tif 000006
【図６】
0006348150.tif 000007
【図７】
0006348150.tif 000008
【図８】
0006348150.tif 000009
【図９】
0006348150.tif 000010
【図１０】
0006348150.tif 000011