(57)【要約】  タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラ（３００）は、複数のブランチにそれぞれ接続され信号を送受信する複数のトランシーバ部（３０１ａ、３０１ｂ、３０１ｃ、３０１ｄ）と、タイムスロットとブランチとの対応を示す所定のルールを保持するルーティングテーブル保持部（３０５）と、非転送条件に合致する場合を除き、第１ブランチから受信した信号をその他のブランチへ転送するためにルーティングするルーティング部（３０２）とを備える。非転送条件は、第１ブランチについて上記の所定のルールが守られていないことと、タイムスロットにおいて、第１ブランチとは別の第２ブランチから受信した信号をその他のブランチへ転送するためのルーティングを既に開始していることとを含む。
2020022445.tif 000002
【特許請求の範囲】
【請求項１】
タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、
前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、
前記セキュアスターカプラは、
ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、
前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、
前記複数のトランシーバ部の一である第１トランシーバ部は、前記複数のブランチのうちで前記第１トランシーバ部が接続されている第１ブランチのバスから受信された物理信号を変換して第１デジタル信号を取得し、
前記ルーティング部は、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のトランシーバ部のうちの前記第１トランシーバ部以外のトランシーバ部へルーティングし、
前記第１トランシーバ部以外のトランシーバ部は、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチの前記バスへ送信し、
前記非転送条件は、前記第１ブランチ又は前記第１トランシーバ部について前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む、
セキュアスターカプラ。
【請求項２】
前記通信装置と通信を行うための通信制御部をさらに備え、
前記通信制御部は、前記第１デジタル信号をデコードしてフレームとして解釈し、前記フレームの情報と、前記第１デジタル信号の転送元である前記第１ブランチ又は前記第１トランシーバ部を示す識別子を対応付けて受信フレーム情報として保持する受信フレーム情報保持部とを備え、
前記通信制御部は、前記受信フレーム情報を前記通信装置へ通知する、
請求項１に記載のセキュアスターカプラ。
【請求項３】
前記複数のブランチのそれぞれの異常度を保持するブランチ異常度保持部をさらに備え、
前記ルーティング部は、前記複数のブランチの一である第３ブランチに接続されている、前記複数のトランシーバ部の一である第３トランシーバ部から受信した物理信号を変換して取得された第３デジタル信号について前記所定のルールが守られていない場合に、前記第３ブランチの異常度を増加させ、
前記ルーティング部は、前記第３ブランチの異常度が所定値以上であるときは、前記第３デジタル信号を前記複数のトランシーバ部のうちの前記第３トランシーバ部以外のトランシーバ部へ転送しない、
請求項２に記載のセキュアスターカプラ。
【請求項４】
前記ルーティング部は、前記フレームに前記通信ネットワークに利用されている通信プロトコル上のエラー発生の検知し、前記第３トランシーバ部から受信した前記第３デジタル信号について前記所定のルールが守られている場合に前記通信プロトコル上のエラーを検知したとき、前記第３ブランチの異常度を増加させる、
請求項３に記載のセキュアスターカプラ。
【請求項５】
タイムスロットとフレームに含まれるペイロードの値との適切又は不適切な対応を示す不正基準リストを保持する不正基準リスト保持部をさらに備え、
前記ルーティング部は、転送が未完了のデジタル信号を解釈したフレームについて、前記不正基準リストとの照合を行い、
前記ルーティング部は、前記照合の結果、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切である場合に、前記転送が未完了のデジタル信号の転送を停止する、
請求項２から４のいずれか一項に記載のセキュアスターカプラ。
【請求項６】
前記通信ネットワークは車載ネットワークであり、
前記セキュアスターカプラは、前記車載ネットワークを搭載する車両の状態を示す車両情報を保持する車両状態保持部をさらに備え、
前記通信制御部は、前記通信装置から受信する情報を用いて前記車両情報を更新し、
前記ルーティング部は、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切であると前記照合の結果判断し、かつ、前記車両情報が示す前記車両の状態が所定の条件を満たしている場合に、前記転送が未完了のデジタル信号の転送を停止する、
請求項５に記載のセキュアスターカプラ。
【請求項７】
タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、
前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、
前記フレーム転送方法は、
ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、
前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、
前記受信ステップでは、前記複数のブランチの一である第１ブランチの前記バスから受信された物理信号を変換して第１デジタル信号を取得し、
前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチへルーティングし、
前記送信ステップでは、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記第１ブランチ以外のブランチの前記バスへ送信し、
前記非転送条件は、前記第１ブランチについて前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を、前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む、
フレーム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、スター型トポロジの通信ネットワークにおける不正なフレームの送信を防止するセキュアスターカプラに関する。
【背景技術】
【０００２】
近年、自動車の車載システムには、電子制御ユニット（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ、以下、ＥＣＵ）と呼ばれる装置が多数配置されている。これらのＥＣＵをつなぐ通信ネットワークを車載ネットワークと呼ばれる。車載ネットワークには、多数の規格が存在する。その中でも現在主流となっているＣｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（以下ＣＡＮ（登録商標））よりも高速かつ高信頼のプロトコルとして設計された、ＦｌｅｘＲａｙ（登録商標）という規格が存在する。【０００３】
ＦｌｅｘＲａｙでは、２本のより線の電圧差により“０”の値と“１”の値を表す。バスに接続されているＥＣＵはノードと呼ばれ、バスに接続されている各ノードは、フレームと呼ばれるメッセージを送受信する点はＣＡＮと共通している。一方で、イベントトリガの通信方式が採用されているＣＡＮに対し、ＦｌｅｘＲａｙではタイムトリガー方式であるＴｉｍｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ（以下、ＴＤＭＡ）が採用されている。ＦｌｅｘＲａｙの車載ネットワークでは、各フレームは事前に定義されたタイミング及び順番で送信される。【０００４】
一方、セキュリティに関しては、ＣＡＮの車載ネットワークでは、攻撃者がバスにアクセスし、不正なフレームを送信することでＥＣＵを不正に制御するといった脅威が存在し、このような脅威に対するセキュリティ対策が検討されている。【０００５】
例えば特許文献１では、車載ネットワーク監視装置を提案しており、フレームが予め規定された通信間隔でバスに送信されているかを検出し、規定された通信間隔から外れるフレームを不正と判断することで、不正なフレームによる制御を防止する方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５６６４７９９号公報
【特許文献２】特許第４８７１３９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ＦｌｅｘＲａｙの車載ネットワークでは、予め規定された通信間隔で通信が行われるため、ある特定の識別子（ＩＤ）を持つフレームの受信間隔は一定となり、特許文献１のような不正検知手法を適用することはできない。【０００８】
また、ＦｌｅｘＲａｙでは、設計容易性の観点からスター型のネットワークトポロジが利用されることが多い。特許文献２では、タイムスケジュールに応じて転送元のブランチをスイッチするインテリジェントスターカプラが開示されている。インテリジェントスターカプラにより、フレームの送信が本来は予定されていないブランチからの攻撃フレームの注入を防ぐことが可能になるが、攻撃が試行されたことを把握することはできない。さらに特許文献２のインテリジェントスターカプラでは、送信が本来予定されているブランチに存在する不正なノードからの不正なフレームの注入を防ぐことはできない。【０００９】
本開示は、上記課題を解決するため、スター型トポロジにより設計されているタイムトリガー方式のプロトコルを採用している通信ネットワークにおいて不正なフレームの送信箇所を把握することで、不正なフレームへの対処を可能にするフレーム転送方法及びセキュアスターカプラを提供し、より安全な通信ネットワークシステムを実現することを目的とする。
【課題を解決するための手段】
【００１０】
本開示の一態様に係るセキュアスターカプラは、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記セキュアスターカプラは、ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、前記複数のトランシーバ部の一である第１トランシーバ部は、前記複数のブランチのうちで前記第１トランシーバ部が接続されている第１ブランチのバスから受信された物理信号を変換して第１デジタル信号を取得し、前記ルーティング部は、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のトランシーバ部のうちの前記第１トランシーバ部以外のトランシーバ部へルーティングし、前記第１トランシーバ部以外のトランシーバ部は、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第１ブランチ又は前記第１トランシーバ部について前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む。【００１１】
また、本開示の一態様に係るフレーム転送方法は、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記フレーム転送方法は、ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、前記受信ステップでは、前記複数のブランチの一である第１ブランチの前記バスから受信された物理信号を変換して第１デジタル信号を取得し、前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチへルーティングし、前記送信ステップでは、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記第１ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第１ブランチについて前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を、前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む。【００１２】
なお、これらの包括的又は具体的な態様は、システム、集積回路、コンピュータプログラム又はコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、装置、システム、方法、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【００１３】
本開示によれば、タイムトリガー方式を採用しているスター型トポロジの通信ネットワークに対しても、不正なフレームの送信箇所を把握することで不正なフレームへの対処を可能とする。これにより、通信ネットワークシステム全体として、安全な状態をより確実に維持することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、実施の形態１、２における車載ネットワークシステムの全体構成を示すブロック図である。
【図２】図２は、実施の形態１、２におけるＦｌｅｘＲａｙのサイクルを説明するための図である。
【図３】図３は、実施の形態１、２におけるＦｌｅｘＲａｙフレームのフォーマットを示す図である。
【図４】図４は、実施の形態１、２におけるＥＣＵの機能的な構成を示すブロック図である。
【図５】図５は、実施の形態１におけるセキュアスターカプラの構成例を示すブロック図である。
【図６】図６は、実施の形態１における不正検知ＥＣＵの機能的な構成の例を示すブロック図である。
【図７】図７は、実施の形態１、２における通信用設定パラメータ保持部に格納される通信用設定パラメータの一例を示す図である。
【図８】図８は、実施の形態１、２における受信フレーム情報保持部に格納される受信フレーム情報の一例を示す図である。
【図９】図９は、実施の形態１、２におけるルーティングテーブル保持部に格納されるルーティングテーブルの一例を示す図である。
【図１０】図１０は、実施の形態１、２におけるフレーム情報保持部に格納されるフレーム情報の一例を示す図である。
【図１１】図１１は、実施の形態１、２におけるフレームルール保持部に格納されるフレームルールの一例を示す図である。
【図１２】図１２は、実施の形態１、２におけるブランチ異常度保持部に格納されるブランチ異常度の一例を示す図である。
【図１３】図１３は、実施の形態１、２における受信履歴保持部に格納される受信履歴の一例を示す図である。
【図１４】図１４は、実施の形態１におけるセキュアスターカプラの動作の手順例を示すフローチャートである。
【図１５】図１５は、実施の形態１における不正検知ＥＣＵの動作の手順例を示すフローチャートである。
【図１６】図１６は、実施の形態２におけるセキュアスターカプラの機能的な構成の例を示すブロック図である。
【図１７】図１７は、実施の形態２における不正検知ＥＣＵの機能的な構成の例を示すブロック図である。
【図１８】図１８は、実施の形態２におけるブラックリスト保持部に格納されるブラックリストの一例を示す図である。
【図１９】図１９は、実施の形態２における車両状態保持部に格納される車両状態の一例を示す図である。
【図２０】図２０は、実施の形態２におけるセキュアスターカプラのフレーム受信時の動作の手順例を示すフローチャートである。
【図２１】図２１は、実施の形態２における不正検知ＥＣＵの動作の手順例を示すフローチャートである。
【発明を実施するための形態】
【００１５】
本開示の一実施態様のセキュアスターカプラは、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるセキュアスターカプラであって、前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチが前記セキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記セキュアスターカプラは、ルーティングルール保持部と、ルーティング部と、前記複数のブランチのいずれかにそれぞれ接続されている複数のトランシーバ部とを備え、前記ルーティングルール保持部は、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチ又は前記複数のトランシーバ部のうちで前記送信元ブランチに接続されたトランシーバ部の対応を示した所定のルールを保持し、前記複数のトランシーバ部の一である第１トランシーバ部は、前記複数のブランチのうちで前記第１トランシーバ部が接続されている第１ブランチのバスから受信された物理信号を変換して第１デジタル信号を取得し、前記ルーティング部は、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のトランシーバ部のうちの前記第１トランシーバ部以外のトランシーバ部へルーティングし、前記第１トランシーバ部以外のトランシーバ部は、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第１ブランチ又は前記第１トランシーバ部について前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む。これにより、ルーティングルールに合致しないブランチにて送信された不正なフレームであっても、セキュアスターカプラにより他のブランチへの転送が防止され、通信ネットワークの安全性が向上する。
【００１６】
また、前記通信装置と通信を行うための通信制御部をさらに備え、前記通信制御部は、前記第１デジタル信号をデコードしてフレームとして解釈し、前記フレームの情報と、前記第１デジタル信号の転送元である前記第１ブランチ又は前記第１トランシーバ部を示す識別子を対応付けて受信フレーム情報として保持する受信フレーム情報保持部とを備え前記通信制御部は、前記受信フレーム情報を前記通信装置へ通知してもよい。これにより、セキュアスターカプラが受信したフレームが送信されたブランチを、セキュアスターカプラの外部の装置が容易に把握することが可能となり、不正なフレームの発生原因の特定が容易になり得る。
【００１７】
また、前記複数のブランチのそれぞれの異常度を保持するブランチ異常度保持部をさらに備え、前記ルーティング部は、前記複数のブランチの一である第３ブランチに接続されている、前記複数のトランシーバ部の一である第３トランシーバ部から受信した物理信号を変換して取得された第３デジタル信号について前記所定のルールが守られていない場合に、前記第３ブランチの異常度を増加させ、前記ルーティング部は、前記第３ブランチの異常度が所定値以上であるときは、前記第３デジタル信号を前記複数のトランシーバ部のうちの前記第３トランシーバ部以外のトランシーバ部へ転送しないとしてもよい。これにより、不正なフレームを送信したと反復的に判断されたブランチから送信されるフレームの転送の防止が可能となり得る。
【００１８】
また、前記ルーティング部は、前記フレームに前記通信ネットワークに利用されている通信プロトコル上のエラー発生の検知し、前記第３トランシーバ部から受信した前記第３デジタル信号について前記所定のルールが守られている場合に前記通信プロトコル上のエラーを検知したとき、前記第３ブランチの異常度を増加させてもよい。これにより、ルーティングルールに従った転送を行うことで車載ネットワークの安全性を保ちながら、不正なフレームの送信が試行されている可能性の高いブランチを把握し、このブランチから送信されるフレームの転送を阻止することが可能となり得る。
【００１９】
また、タイムスロットとフレームに含まれるペイロードの値との適切又は不適切な対応を示す不正基準リストを保持する不正基準リスト保持部をさらに備え、前記ルーティング部は、転送が未完了のデジタル信号を解釈したフレームについて、前記不正基準リストとの照合を行い、前記ルーティング部は、前記照合の結果、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切である場合に、前記転送が未完了のデジタル信号の転送を停止してもよい。これにより、ルーティングルールに合致する不正なフレームであっても、フレームに含まれるペイロードから検知して、その転送の防止が可能となり得る。
【００２０】
また、前記通信ネットワークは車載ネットワークであり、前記セキュアスターカプラは、前記車載ネットワークを搭載する車両の状態を示す車両情報を保持する車両状態保持部をさらに備え、前記通信制御部は、前記通信装置から受信する情報を用いて前記車両情報を更新し、前記ルーティング部は、前記フレームが受信されたタイムスロットと前記フレームに含まれるペイロードの値との対応が不適切であると前記照合の結果判断し、かつ、前記車両情報が示す前記車両の状態が所定の条件を満たしている場合に、前記転送が未完了のデジタル信号の転送を停止してもよい。これにより、通信ネットワークが車載のネットワークの場合、走行状態などの車両状態に応じて、不正なフレームの転送禁止の有無を切り替えることで、運転者にとって危険な状況における不正フレームによる走行の安全性への悪影響を防止しつつ、安全な状況においては車載ネットワークシステムへの介入による先進的な機能の停止を抑えることが可能となる。
【００２１】
また、本開示の一実施態様のフレーム転送方法は、タイムスロットに基づくタイムトリガー方式の通信ネットワークにおけるフレーム転送方法であって、前記通信ネットワークにおいて、１以上の通信装置及び１つのバスをそれぞれ含む複数のブランチがセキュアスターカプラを通じて接続され、かつ、前記通信装置は所定のタイムスロット内でフレームを送受信し、前記フレーム転送方法は、ルーティングルール保持ステップと、受信ステップと、ルーティングステップと、送信ステップとを含み、前記ルーティングルール保持ステップでは、タイムスロットと、当該タイムスロットで前記セキュアスターカプラが転送すべき物理信号を送信する送信元ブランチとの対応に関する所定のルールを保持し、前記受信ステップでは、前記複数のブランチの一である第１ブランチの前記バスから受信された物理信号を変換して第１デジタル信号を取得し、前記ルーティングステップでは、非転送条件に合致する場合を除き、前記第１デジタル信号を、前記複数のブランチのうちの前記第１ブランチ以外のブランチへルーティングし、前記送信ステップでは、ルーティングされた前記第１デジタル信号を変換して取得する物理信号を、前記第１ブランチ以外のブランチの前記バスへ送信し、前記非転送条件は、前記第１ブランチについて前記所定のルールが守られていないという第１条件と、現在のタイムスロットにおいて既に、前記複数のブランチのうちの前記第１ブランチとは別の第２ブランチから受信された物理信号を変換して取得された第２デジタル信号を、前記複数のブランチのうちの前記第２ブランチ以外のブランチへルーティングしているという第２条件を含む。これにより、ルーティングルールに合致しないブランチにて送信された不正なフレームであっても、セキュアスターカプラにより他のブランチへの転送が防止され、通信ネットワークの安全性が向上する。
【００２２】
以下、実施の形態に係るセキュアスターカプラについて、図面を参照しながら説明する。ここで示す実施の形態は、いずれも包括的又は具体的な例を示すものである。したがって、以下の実施の形態で示される数値、構成要素、構成要素の配置及び接続形態、並びに、ステップ（工程）及びステップの順序等は一例であって、本開示に係る発明を限定するものではない。また、各図は模式図であり、必ずしも厳密に図示されたものではない。
【００２３】
（実施の形態１）
［１．システムの構成］
ここでは、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームの送信元であるブランチとを示す情報に基づいて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ＥＣＵについて、図面を参照しながら説明する。
【００２４】
［１．１  車載ネットワークシステムの全体構成］
図１は、本開示に係る車載ネットワークシステム１０の全体構成の例を示すブロック図である。車載ネットワークシステム１０は、ＦｌｅｘＲａｙプロトコルによる通信に用いられるバスであるバス１００ａ、１００ｂ、１００ｃ及び１００ｄと、各バスに接続されるＥＣＵであるＥＣＵ２００ａ、２００ｂ、２００ｃ及び２００ｄと、各ＥＣＵの制御対象であるステアリング２１０、ギア２２０、ブレーキ２３０及びカメラ２４０と、各バス間を接続するセキュアスターカプラ３００と、セキュアスターカプラ３００と通信線１１０により接続される不正検知ＥＣＵ３１０とから構成される。ＥＣＵ２００ａ〜２００ｄは、それぞれバス１００ａ〜１００ｄを通じてフレームの送受信を行うことで車両の制御を実現する。不正検知ＥＣＵ３１０は、車載ネットワークシステム１０における不正なフレームの発生を検知するために、セキュアスターカプラ３００を通じてバス１００ａ〜１００ｄを観測する。ＥＣＵ２００ａ〜２００ｄ及び不正検知ＥＣＵ３１０は、本実施の形態における通信装置の例である。また、バス１００ａ〜１００ｄのいずれにも同じ信号が流れるよう、セキュアスターカプラ３００が信号の整形を行い、各ＥＣＵは、バス１００ａ〜１００ｄを通じて同期をとっている。本開示では、各バス及び当該バスに接続されるＥＣＵのことを指してブランチとも呼ぶ。また本開示では、当該バスを含むブランチの識別子の例として、便宜的に各バスの参照符号と同じ文字列を用いることがある。
【００２５】
［１．２  ＦｌｅｘＲａｙサイクル］
ＦｌｅｘＲａｙ通信では、４つのセグメントからなるサイクル（Ｃｙｃｌｅ）と呼ばれる動作の周期が繰り返される。ひとつのＦｌｅｘＲａｙネットワーク全体（クラスタともいう）に含まれる各ノードは、サイクルの長さ及び開始時刻を示すグローバルタイムと各々固有のローカルタイムとの差を測定し補正することで同期通信を実現している。
【００２６】
図２は、ＦｌｅｘＲａｙ通信のサイクルを示す図である。ＦｌｅｘＲａｙの通信はこのサイクルを繰り返して実行される。各ノードは、サイクルの繰り返し回数（サイクルカウント）を同期して保持している。サイクルカウントの値（図２における、ｎ＋０、ｎ＋１）は０から６３まで１ずつインクリメントし、６３の次のサイクルではいったんリセットされて再び０となる。
【００２７】
各サイクルは、静的セグメント（Ｓｔａｔｉｃ  ｓｅｇｍｅｎｔ）、動的セグメント（Ｄｙｎａｍｉｃ  ｓｅｇｍｅｎｔ）、シンボルウィンドウ（Ｓｙｍｂｏｌ  ｗｉｎｄｏｗ）、ネットワークアイドルタイム（ＮＩＴ）の４つのセグメントで構成される。各セグメントの時間長は予め設計されたパラメータによってクラスタで共通であるため、１サイクルの時間長もクラスタで共通である。なお、動的セグメント及びシンボルウィンドウはオプションである。各ノードは静的セグメント及び動的セグメントにおいてフレームを送信する。静的セグメント及び動的セグメントは、タイムスロット又はスロットと呼ばれる１つのフレームを送信することができる一定の時間を単位として構成される。
【００２８】
静的セグメントは複数のスロットから構成され、各サイクルは静的セグメントで開始する。静的セグメント内のスロットの個数及び各スロットの長さはクラスタ内で共通である。スロットには先頭から順に１ずつインクリメントする番号（スロット番号）が付されており、各スロット内で送信されるフレームには、フレームの識別子（Ｆｒａｍｅ  ＩＤ、以下ではフレームＩＤとも表記する）としてこのスロット番号が用いられる。静的セグメント内のスロットを静的スロット（又は静的タイムスロット）とも呼び、静的セグメント内で送信されるフレームを静的フレームとも呼ぶ。各静的スロットでは、予め定められたＥＣＵが、予め定められたサイクルでは常にフレームを送信する。静的フレームは、ペイロード長がクラスタ内で共通である。
【００２９】
動的セグメントはミニスロットと呼ばれるスロットから構成され、各サイクルで静的セグメントの次に位置する。ただし、上述のとおり必須ではない。ミニスロットにも静的セグメントのスロットと同じく先頭から順に１ずつインクリメントする番号（スロット番号）が付されている。各ＥＣＵには、フレームを送信するタイミング（ミニスロット）が予め定められているが、静的セグメントと異なり、予め定められたサイクル毎にフレームを送信する必要はない。動的セグメント内のスロットを動的スロット（又は動的タイムスロット）とも呼び、動的セグメント内で送信されるフレームを動的フレームとも呼ぶ。動的フレームのペイロード長は、０〜２５４の任意の値をとることができる。つまり、動的スロットの長さは可変である。
【００３０】
シンボルウィンドウは、シンボルと呼ばれる信号の送受信を行う時間帯である。
【００３１】
ネットワークアイドルタイムは、通信を行わない時間帯であり、各サイクルの最後に必ず設けられる。ネットワークアイドルタイムでは、各ＥＣＵはデータの送信を行わずに同期処理等を行い、ネットワークは文字どおりアイドル状態である。
【００３２】
なお、ＦｌｅｘＲａｙプロトコルでは、送信先又は送信元を示す識別子は存在しない。送信ノードは、上述のように予め定められた送信タイミング（スロット）に、予め定められた内容のフレームをバスに送信する。そして受信ノードは、予め決められた受信タイミング（スロット）にのみバスからフレームを受信する。また、静的セグメント又は動的セグメントの同一の番号のスロットであっても、サイクルによって異なる内容のフレームの通信を実現する「サイクルマルチプレキシング」と呼ばれる方法も用いられる。
【００３３】
また、ＦｌｅｘＲａｙプロトコルでは、ＣＡＮのように全てのノードが１つのバスに接続されるバス型のネットワークトポロジだけでなく、スターカプラを介したスター型、バス型とスター型とのハイブリッド型のネットワークトポロジで通信ネットワークを設計することが可能である。
【００３４】
［１．３  フレームフォーマット］
図３は、ＦｌｅｘＲａｙプロトコルのフレームフォーマットを示す図である。このフォーマットは、静的フレーム及び動的フレームで共通である。フレームは、ヘッダセグメント（Ｈｅａｄｅｒ  ｓｅｇｍｅｎｔ）、ペイロードセグメント（Ｐａｙｌｏａｄ  ｓｅｇｍｅｎｔ）、トレーラーセグメント（Ｔｒａｉｌｅｒ  ｓｅｇｍｅｎｔ）の３つのセグメントから構成される。なお、本開示ではそれぞれヘッダ、ペイロード、トレーラーとも呼ぶことがある。
【００３５】
ヘッダセグメントはＲｅｓｅｒｖｅｄ  ｂｉｔから始まり、続いてフレームの属性（種別）に関するメタ情報としての、Ｐａｙｌｏａｄ  ｐｒｅａｍｂｌｅ  ｉｎｄｉｃａｔｏｒ、Ｎｕｌｌ  ｆｒａｍｅ  ｉｎｄｉｃａｔｏｒ、Ｓｙｎｃ  ｆｒａｍｅ  ｉｎｄｉｃａｔｏｒ、Ｓｔａｒｔｕｐ  ｆｒａｍｅ  ｉｎｄｉｃａｔｏｒがそれぞれ１ビットずつ含まれる。そしてさらに１１ビットのＦｒａｍｅ  ＩＤ、７ビットのＰａｙｌｏａｄ  ｌｅｎｇｔｈ、１１ビットのＨｅａｄｅｒ  ＣＲＣが続き、最後の６ビットのＣｙｃｌｅ  ｃｏｕｎｔまでで構成される。
【００３６】
Ｆｒａｍｅ  ＩＤに用いられているのは上述のスロット番号であって、スロットＩＤとも呼ばれ、静的セグメント又は動的セグメントにおけるフレームの送信タイミング及びフレームの内容に応じた種類を識別するために用いられる。
【００３７】
Ｐａｙｌｏａｄ  ｌｅｎｇｔｈは当該フレームのペイロードの長さを示し、最大値は１２７である。ペイロードセグメントにはＰａｙｌｏａｄ  ｌｅｎｇｔｈの値に２をかけたバイト数のデータが格納される。
【００３８】
Ｈｅａｄｅｒ  ＣＲＣは、Ｓｙｎｃ  ｆｒａｍｅ  ｉｎｄｉｃａｔｏｒからＰａｙｌｏａｄ  ｌｅｎｇｔｈまでの値から計算されるＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）である。
【００３９】
Ｃｙｃｌｅ  ｃｏｕｎｔには、クラスタにおける現在のサイクルの繰り返し回数を示す値（０〜６３）が格納される。
【００４０】
ペイロードセグメントには、フレームの正味のデータが含まれ、最大で２５４バイトである。
【００４１】
トレーラーセグメントには、ヘッダ及びペイロードの全体を含んだ値から計算されるＣＲＣが格納されている。
【００４２】
［１．４  ＥＣＵ（不正検知ＥＣＵを除く）の構成］
図４は、ＥＣＵ２００ａの機能的な構成の例を示すブロック図である。なお、ＥＣＵ２００ｂ、ＥＣＵ２００ｃ及びＥＣＵ２００ｄもＥＣＵ２００ａと共通の構成であってよく、説明を省略する。
【００４３】
ＥＣＵ２００ａは、フレーム送受信部２０１と、フレーム解釈部２０２と、外部機器制御部２０３と、フレーム生成部２０４と、通信用設定パラメータ保持部２０５とを備える。なお、ＥＣＵ２００ａは、例えばプロセッサ及びメモリを含むマイクロコントローラを備え、ここに挙げた構成要素は、メモリに記憶される１個又は複数個のプログラムをプロセッサが実行することで実現される機能的な構成要素である。ＥＣＵ２００ｂ、ＥＣＵ２００ｃ及びＥＣＵ２００ｄについても同様である。
【００４４】
フレーム送受信部２０１は、バス１００ａから受信した物理信号をデジタル信号に変換してフレームのデータを取得する（フレームの受信）。フレーム送受信部２０１は通信用設定パラメータ保持部２０５に保持される、通信用設定パラメータを参照しながら、クラスタである車載ネットワークシステム１０に含まれる他のＥＣＵと同期することで、他のＥＣＵが送信したフレームを正しく受信することができる。また、フレーム送受信部２０１は、フレーム生成部２０４からの送信フレーム要求に従って、フレームを物理信号に変換し、予め定められたタイミング（スロット）でこの物理信号をバス１００ａに送信する（フレームの送信）。
【００４５】
フレーム解釈部２０２は、フレーム送受信部２０１から通知される受信したフレームのペイロードを解釈し、ペイロードの内容に応じてＥＣＵ２００ａに接続されるステアリング２１０の制御を実行させるための通知を外部機器制御部２０３へ出す。この通知によって、例えば、他のＥＣＵから通知される車両の速度の情報に基いてフレーム解釈部２０２が判断した走行状態に応じたステアリングのアシスト制御が実現される。また例えば、自動駐車モード時に、図示しない自動駐車ＥＣＵから受信するステアリング操作指示信号に基づくステアリングの自動操舵が実現される。
【００４６】
外部機器制御部２０３は、ＥＣＵ２００ａに接続されるステアリング２１０の制御を行う。また、外部機器制御部２０３は、ステアリング２１０の状態を監視し、その状態を他のＥＣＵに通知するためのフレーム送信をフレーム生成部に要求する。ステアリング２１０の状態とは、例えば、ステアリング２１０の転舵角（ステアリング角度）である。
【００４７】
フレーム生成部２０４は、外部機器制御部２０３からの要求に基いてフレームを生成し、フレーム送受信部２０１へ当該フレームの送信を要求する。
【００４８】
通信用設定パラメータ保持部２０５は、バス１００ａから受信した物理信号をデジタル信号に正しく変換するためのパラメータが保持されている。このパラメータは、車載ネットワークシステム１０内で共通である。したがって、他のＥＣＵでも同じものが保持される。通信用設定パラメータの詳細は、図７に示す一例を用いて後述する。
【００４９】
［１．５  セキュアスターカプラの構成］
図５は、セキュアスターカプラ３００の構成の例を示す図である。セキュアスターカプラ３００は、トランシーバ部３０１ａ、３０１ｂ、３０１ｃ及び３０１ｄと、ルーティング部３０２と、ＥＣＵインターフェース部３０３と、受信フレーム情報保持部３０４と、ルーティングテーブル保持部３０５とを備える。
【００５０】
トランシーバ部３０１ａはバス１００ａに接続され、バス１００ａから受信した物理信号をデジタル信号に変換し、このデジタル信号をルーティング部３０２へ通知する。また、ルーティング部３０２から通知されたデジタル信号を物理信号へ変換し、この物理信号をバス１００ａへ送信する。同様に、トランシーバ部３０１ｂはバス１００ｂに、トランシーバ部３０１ｃはバス１００ｃに、トランシーバ部３０１ｄはバス１００ｄに接続される。トランシーバ部３０１ｂ〜３０１ｅの各々は、接続されるバスから受信する物理信号に対してトランシーバ部３０１ａと同様に機能する。
【００５１】
ルーティング部３０２は、トランシーバ部３０１ａから通知されたデジタル信号を、トランシーバ部３０１ａを除くトランシーバ部３０１ｂ、３０１ｃ及び３０１ｄへルーティングする。同様に、トランシーバ部３０１ｂから通知されたデジタル信号を、ルーティング部３０２は、トランシーバ部３０１ｂを除く各トランシーバ部へルーティングする。ルーティング部３０２はさらに、ルーティング中のデジタル信号と、当該デジタル信号をどのブランチから受信しているかを示す情報（受信ブランチ情報）とをＥＣＵインターフェース部３０３へ通知する。また、ルーティング部３０２は、ＥＣＵインターフェース部３０３から受信する指示に従って、ルーティングテーブル保持部３０５が格納しているルーティングテーブルに基いて、スロット番号（スロットＩＤ）と、当該スロット番号が示すタイムスロットで転送されるべき信号を送信するブランチである送信元ブランチ（又は送信元ブランチに接続されているトランシーバ部）との対応を設定する。ルーティング部３０２は、各スロット番号のタイムスロットにおいて、設定されている対応する送信元ブランチから受信された信号をその他のブランチへルーティングする。スロット番号に対応していないブランチから受信された信号はルーティング部３０２で無視され、つまりセキュアスターカプラ３００による他のブランチへの転送が実行されない。また、スロット番号と送信元ブランチとの対応が設定されていないタイムスロットにおいては、ルーティング部３０２は、最初に受信された信号を、当該信号を送信したブランチ以外のブランチへルーティングする。なお、ブランチとトランシーバ部とは、トランシーバ部が接続されるバスを仲立ちとして対応する関係にあり、一方を識別して指すことで他方を識別して指すことに代えることができる。この対応関係に基づいて、本開示では、例えばルーティング部３０２が信号をあるブランチ（のバス）に接続されるトランシーバ部へルーティングすることを、当該ブランチへルーティングするとも表現することもあり、その逆もある。また例えば、信号の送信元であるブランチを、当該ブランチ（のバス）に接続されるトランシーバ部を用いて指すこともある。
【００５２】
ＥＣＵインターフェース部３０３は、ルーティング部３０２からデジタル信号と受信ブランチ情報とを通知されると、当該デジタル信号をデコードして受信フレームとして解釈し、この受信フレームの情報を受信ブランチ情報とを対応付けて受信フレーム情報保持部３０４に保存する。また、不正検知ＥＣＵ３１０からの要求に従って、受信フレーム情報保持部３０４に格納されている受信フレーム情報及び受信ブランチ情報を不正検知ＥＣＵ３１０に通知する。さらにＥＣＵインターフェース部３０３は、不正検知ＥＣＵ３１０からの指示を解釈して、ルーティングテーブル保持部３０５に格納されている、各スロットで転送すべき信号の送信元である送信元ブランチを示すルーティングテーブルの書換、及びルーティング部３０２の制御への、この書換後の設定の反映を実行する。
【００５３】
受信フレーム情報保持部３０４には、上述の受信フレームの情報と受信ブランチ情報とが対応付けられて保持されている。図８に受信フレーム情報保持部３０４に格納されている受信フレームの情報の一例を示す。この例では、各行において、ブランチを示す識別子（図中の１００ｂ、１００ａ、１００ｃ）と、各ブランチから受信された信号に基づく受信フレームの情報とが対応付けられている。なお、本開示では、このように受信フレームの情報と受信ブランチ情報とが対応付けられたものについても受信フレーム情報と称する。受信フレーム情報の詳細は、図８に示すこの例を用いて後述する。
【００５４】
ルーティングテーブル保持部３０５は、各スロットで転送すべき信号を送信するブランチである送信元ブランチを示したテーブルを格納している。図９にルーティングテーブル保持部３０５に格納されているルーティングテーブルの一例を示す。ルーティングテーブルの詳細は、図９に示すこの例を用いて後述する。
【００５５】
［１．６  不正検知ＥＣＵ３１０の構成］
図６は、不正検知ＥＣＵ３１０の機能的な構成の例を示すブロック図である。
【００５６】
不正検知ＥＣＵ３１０は、スターカプラ通信制御部３１１、不正検知部３１２、フレーム生成部３１３、通信用設定パラメータ保持部２０５、フレーム情報保持部３１４、フレームルール保持部３１５、ブランチ異常度保持部３１６、及び受信履歴保持部３１７を備える。なお、ＥＣＵ２００ａと同様の構成要素には、同じ番号を付与して説明を省略する。不正検知ＥＣＵ３１０もまた、例えばプロセッサ及びメモリを含むマイクロコントローラを備え、ここに挙げた構成要素は、メモリに記憶される１個又は複数個のプログラムをプロセッサが実行することで実現される機能的な構成要素である。
【００５７】
スターカプラ通信制御部３１１は、セキュアスターカプラ３００との通信インターフェースであり、通信用設定パラメータ保持部２０５に格納されている通信用設定パラメータに基づいてセキュアスターカプラ３００の設定を行う。セキュアスターカプラ３００の設定には、スロットと送信元ブランチとの対応を示したテーブルに基づくルーティングの制御情報も含まれ得る。また、セキュアスターカプラ３００が受信したフレームの情報である上記の受信フレーム情報をセキュアスターカプラ３００から受信し、不正検知部３１２へ通知する。フレーム生成部３１３からフレームの送信を要求されると、スターカプラ通信制御部３１１は、このフレームの内容をセキュアスターカプラ３００へ通知する。
【００５８】
不正検知部３１２は、スターカプラ通信制御部３１１から通知される、受信ブランチの情報を含む受信フレーム情報に基づいて、受信フレームが不正なフレームであるか否かを判断する。この判断では、不正検知部３１２は、まず、フレーム情報保持部３１４に格納されているスロットＩＤと送信元ブランチとの対応を示すテーブルを参照して、実際の受信フレームのフレームＩＤと受信ブランチとの対応が正しいかを判断する。受信フレームのフレームＩＤと受信ブランチとの対応が正しい場合、不正検知部３１２は、フレームルール保持部３１５に格納されている受信フレームのペイロードの内容に応じた種別ごとのルールと、受信履歴保持部３１７に保持されている受信履歴とをさらに参照し、ペイロードの内容がこのルールから外れる受信フレームを不正であると判断する。受信フレームが不正であると判断した場合、不正検知部３１２はさらに、不正なフレームが送信されていることを他のＥＣＵに通知するためのフレームの送信を、フレーム生成部３１３に要求する。あわせて、不正検知部３１２は、ブランチ異常度保持部３１６に格納されている各ブランチの異常度のうち、不正なフレームを送信したブランチの値を増加させる。またさらに不正検知部３１２は、今後このブランチから送信される不正なフレームが他のブランチへ転送されることを防ぐために、セキュアスターカプラ３００のＥＣＵインターフェース部３０３へ、ルーティングテーブルの書換、及びこの書換後の設定のルーティング部３０２の制御への反映の指示を、スターカプラ通信制御部３１１を介して通知する。
【００５９】
フレーム情報保持部３１４は、各ＥＣＵが送信するフレームの（又はスロットの）ＩＤ、送信元のブランチ等の情報であるフレーム情報を格納している。フレーム情報保持部３１４に格納されるフレーム情報の一例を図１０に示し、詳細は後述する。
【００６０】
フレームルール保持部３１５は、不正検知部３１２が受信フレームを不正であるか否かの判断に用いるルールを格納している。フレームルール保持部３１５に格納されるフレームルールの一例を図１１に示し、詳細は後述する。
【００６１】
ブランチ異常度保持部３１６は、不正なフレームの受信数に基づくブランチごとの異常度を格納している。ブランチ異常度保持部３１６に格納されるブランチ異常度の一例を図１２に示し、詳細は後述する。
【００６２】
受信履歴保持部３１７は、受信フレームに関する情報、例えばペイロードが示す値、フレームの属性などのメタ情報、フレームの受信数を格納している。受信履歴保持部３１７に格納される受信履歴の一例を図１３に示し、詳細は後述する。
【００６３】
［１．７  通信用設定パラメータ］
図７は、通信用設定パラメータ保持部２０５に格納されている通信用設定パラメータの一例を示している。通信用設定パラメータとしては、データ転送の速度が１０Ｍｂｐｓであることと、静的セグメントのスロットＩＤ（すなわち各スロットで送受信されるフレームのフレームＩＤ）が１〜５０であること、動的セグメントのスロットＩＤ（同じく、すなわちフレームＩＤ）が５１〜１００であることを示している。また、静的フレームのペイロード長が８（つまり１６バイト）であることも示されている。クラスタでは、これらのパラメータの値は、ＥＣＵ全てに共有されており、これらのパラメータの値に基づいてＦｌｅｘＲａｙフレームの送受信が実現される。なお、図７に示す通信用設定パラメータの値は一例に過ぎず、別の値であっても構わない。また、上述した通信用設定パラメータも一例に過ぎず、図７に記載のないパラメータ（例えば、各セグメントの長さ、スロットの長さ等）が含まれていてもよいし、逆に、図７に記載されているパラメータの全てが必須というわけではない。
【００６４】
［１．８  受信フレーム情報］
図８は、セキュアスターカプラ３００が備える受信フレーム情報保持部３０４に格納される受信フレーム情報の一例を示している。
【００６５】
図８に示す例では、リスト形式で上から順に最新の受信フレームの情報が保持されている。受信フレームの情報は、セキュアスターカプラ３００で受信されたフレームごとに、どのブランチから受信されたかの情報である受信ブランチ、受信フレームを示す信号を受信したタイムスロットのＩＤ（受信スロットＩＤ）、サイクルカウント、ペイロード長、ペイロードに含まれるデータ、Ｐａｙｌｏａｄ  ｐｒｅａｍｂｌｅ  ｉｎｄｉｃａｔｏｒのフラグ状態、フレームが正しく受信されたかを示すエラーフラグが保持されている。
【００６６】
［１．９  ルーティングテーブル］
図９は、セキュアスターカプラ３００が備えるルーティングテーブル保持部３０５に格納されるルーティングテーブルの一例を示している。
【００６７】
図９のルーティングテーブルは、スロットＩＤ、Ｃｙｃｌｅ  ｏｆｆｓｅｔ及びＣｙｃｌｅ  ｒｅｃｅｐｔｉｏｎの組み合わせにより決定される特定のタイミングと、当該タイミングで転送されるべき信号を送信する送信元ブランチを規定するルール（ルーティングルールともいう）を行ごとに示す。例えば１行目は、スロットＩＤが１、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが１のタイミングにおける送信元ブランチを、１００ｃの識別子で示す。ルーティング部３０２は、このタイミングでこの識別子が示すブランチのバス（バス１００ｃ）から信号を受信すると、当該信号が他のブランチへ転送されるようにルーティングする。また、このタイミングでバス１００ｃ以外から受信された信号があった場合も、ルーティング部３０２は当該信号を無視する（ルーティングしない）。同様に、２行目に示されるルールでは、スロットＩＤが３、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが２の組み合わせにより決定されるタイミングにおける送信元ブランチは、識別子が１００ａのブランチである。また、３行目に示されるルールでは、スロットＩＤが９９、Ｃｙｃｌｅ  ｏｆｆｓｅｔが１、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが２のタイミングにおける送信元ブランチは、識別子が１００ｂのブランチである。このようなルーティングルールを示すルーティングテーブルを備えるルーティングテーブル保持部３０５は、本実施の形態におけるルーティングルール保持部の例である。
【００６８】
［１．１０  フレーム情報］
図１０は、不正検知ＥＣＵ３１０が備えるフレーム情報保持部３１４に格納されるフレーム情報の一例を示している。
【００６９】
図１０に示す例では、テーブルの各行に１件のフレーム情報として、スロットＩＤ、Ｃｙｃｌｅ  ｏｆｆｓｅｔ、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎ、フレーム名、及びフレームに含まれるペイロードが示す情報の種類が保持されている。Ｃｙｃｌｅ  ｏｆｆｓｅｔ及びＣｙｃｌｅ  ｒｅｃｅｐｔｉｏｎは、サイクル多重化（サイクルマルチプレキシング）と呼ばれる、同じスロットＩＤであってもサイクルによって異なる内容（種類）のデータを含むフレームを送受信する方法が用いられるときに対象のフレームを抽出するために必要な情報である。例えばスロットＩＤが９９のフレームとしてはＤ、Ｅ、Ｆ、Ｇの４つのフレーム名が存在し、それぞれカメラ情報１、カメラ情報２、カメラ情報３、カメラ情報４の異なる内容の情報をペイロードに含み、異なるサイクルにおいて送受信される。
【００７０】
例えばカメラ情報１ではＣｙｃｌｅ  ｏｆｆｓｅｔが０で、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４である。これは、カメラ情報１のデータをペイロードに含むフレームであるフレームＤの送信が、サイクルカウントが０のサイクルからスタートして、４サイクルごと実行されることを意味する。つまりフレームＤは、サイクルカウントが、０、４、８、１２、１６、・・・、５２、５６、６０のサイクル内のスロットＩＤが９９のスロットで送信される。同様に、カメラ情報２を含むフレームＥは、サイクルカウントが１、５、９、・・・５３、５７、６１のサイクル内の、スロットＩＤが９９のスロットで送信される。カメラ情報３を含むフレームＦは、サイクルカウントが２、６、１０、・・・、５４、５８、６２のサイクル内のスロットＩＤが９９のスロットで送信される。カメラ情報４を含むフレームＧは、サイクルカウントが３、７、１１、・・・、５５、５９、６３のサイクル内のスロットＩＤが９９のスロットで送信される。上記のようにして内容の異なるフレームを異なるサイクル内の同一スロットＩＤのスロットで送信するのが、サイクル多重化（サイクルマルチプレキシング）である。
【００７１】
また、各フレーム情報にはさらに、当該フレームの車載ネットワークシステム１０の設計上の送信元である送信元ＥＣＵと、送信元ＥＣＵが接続されるブランチを示す情報が含まれている。このようなフレーム情報が示すのは、いわば、車載ネットワークシステム１０におけるフレームの送受信のスケジュールである。
【００７２】
図１０に例示されるフレーム情報の中身についてさらに具体的に説明する。
【００７３】
図１０のテーブルの１行目は、スロットＩＤが１のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが１（つまり全てのサイクルで同一内容のデータを含むフレームが送信される）のスケジュールで、フレーム名がＡのフレームが送信されること、フレームＡのペイロードの内容、つまりペイロードが示す情報は速度に関する情報であること、送信元ＥＣＵは２００ｃであり、ブランチは１００ｃであることを示している。同テーブルの２行目は、スロットＩＤが２のスロットでは、フレームが送信されないことを示している。また、同テーブルの３行目は、スロットＩＤが３のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが２（つまりサイクルカウントが偶数のサイクルでのみ送信される）のスケジュールで、フレーム名がＢのフレームが送信されること、フレームＢのペイロードが示す情報はステアリング角度であること、送信元ＥＣＵは２００ａであり、ブランチは１００ａであることを示している。また、同テーブルのさらに下の行では、スロットＩＤが９８のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが１、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが２（つまりサイクルカウントが奇数のときのみ送信される）のスケジュールで、フレーム名がＣのフレームが送信されること、フレームＣのペイロードが示す情報はギア状態（シフトレバー又はセレクターのポジション）であること、送信元ＥＣＵは２００ｂであり、ブランチは１００ｂであることを示している。さらに次の行では、スロットＩＤが９９のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４のスケジュールで、フレーム名がＤのフレームが送信されること、フレームＤのペイロードが示すのは、カメラ情報１と呼ばれる所定の情報であること、送信元ＥＣＵは２００ｄであり、ブランチは１００ｄであることを示している。さらに次の行では、スロットＩＤが９９のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが１、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４のスケジュールで、フレーム名がＥのフレームが送信されること、フレームＥのペイロードが示すのは、カメラ情報２と呼ばれる所定の情報であること、送信元ＥＣＵは２００ｄであり、ブランチは１００ｄであることを示している。さらに次の行では、スロットＩＤが９９のスロットでは、Ｃｙｃｌｅ  ｏｆｆｓｅｔが２、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４のスケジュールで、フレーム名がＦのフレームが送信されること、フレームＦのペイロードが示すのは、カメラ情報３と呼ばれる所定の情報であること、送信元ＥＣＵが２００ｄであり、ブランチが１００ｄであることを示している。最下行では、スロットＩＤが９９のスロットで、Ｃｙｃｌｅ  ｏｆｆｓｅｔが３、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４のスケジュールで、フレーム名がＧのフレームが送信されること、フレームＧのペイロードが示すのは、カメラ情報４と呼ばれる所定の情報であること、送信元ＥＣＵは２００ｄであり、ブランチが１００ｄであることを示している。なお、図７の通信用設定パラメータに含まれるＩＤによれば、フレームＡ及びＢは静的セグメント内で送信される静的フレームであり、フレームＣからフレームＧは��的セグメント内で送信される動的フレームである。
【００７４】
［１．１１  フレームルール］
図１１は、不正検知ＥＣＵ３１０が備えるフレームルール保持部３１５に格納されるフレームルールの一例を示した図である。図１１に示す例では、テーブルの各行においてフレーム名で特定されるフレームの種別ごとに受信ルールが設定されている。
【００７５】
フレームＡに関しては、ペイロード長は８で固定であり、受信ルールとしては、今回受信したフレームＡのペイロードが示す速度と前回受信したフレームＡが示す速度との差分が０．５ｋｍ／ｈ以上である場合に不正なフレームであると判断される。フレームＢに関しては、ペイロード長は８で固定であり、受信ルールとしては、今回受信したフレームＢのペイロードが示すステアリング角度と前回受信したフレームＢのペイロードが示すステアリング角度との差分が３０度以上である場合に不正なフレームであると判断される。
【００７６】
なお、不正検知ＥＣＵ３１０は、受信したフレームが受信ルールに適合するかだけでなく、ペイロード長が正しいかに基づいてフレームが不正であるか否かを判断してもよい。
【００７７】
［１．１２  ブランチ異常度］
図１２は、不正検知ＥＣＵ３１０が備えるブランチ異常度保持部３１６に格納されるブランチ異常度の一例である。図１２に示す例では、テーブルの各行においてブランチごとの異常度が保持されている。ブランチ異常度は、不正検知部３１２による判断の結果に基づく不正なフレームの受信のたびに、当該フレームを送信したブランチの異常度が１ずつ増加される。図１２に示す例では、識別子「１００ａ」で識別されるブランチの異常度は０、識別子「１００ｂ」で識別されるブランチの異常度は０、識別子「１００ｃ」で識別されるブランチの異常度は０、識別子「１００ｄ」で識別されるブランチの異常度は２０である。
【００７８】
［１．１３  受信履歴］
図１３は、不正検知ＥＣＵ３１０が備える受信履歴保持部３１７に格納される受信履歴の一例である。図１３に示す例では、テーブル内にフレーム名で特定されるフレームの種別ごとの、ペイロードが示す前回受信値及び車両状態が保持されている。前回受信値は、受信時刻（μｓ）と併せて保持されている。この例では、車両の速度を示すフレームＡの前回受信値は４０．５ｋｍ／ｈであり、前回の受信時刻が１２１００μｓである。また、ステアリング角度を示すフレームＢの前回受信値は５度であり、前回受信時刻は８１００である。また、ギア状態を示すフレームＣの前回受信値はドライブ状態であり、前回の受信時刻は１２４００μｓである。また、カメラ情報１を示すフレームＤの前回受信値は、前方車両の検知を示しており、前回の受信時刻は１４４０μｓである。また、カメラ情報２を示すフレームＥの前回受信値は歩行者検知を示しており、受信時刻は５４８０μｓである。また、カメラ情報３を示すフレームＦの前回受信値はレーン検知状態を示しており、受信時刻は９５２０μｓである。また、カメラ情報４を示すフレームＧの前回受信値は、後方のカメラが未起動であることを示しており、受信時刻は１３５６０μｓである。車両状態の情報は、フレームＡが示す車両の速度が０ｋｍ／ｈより大きい場合には「走行中」に更新され、０ｋｍ／ｈの場合には「停止中」に更新される。なお、上記の前回受信値は、例えばフレームの受信の度に、該当する値が不正検知部３１２によって更新される。
【００７９】
なお、この例では受信時刻が保持されているが、受信時刻は必須ではない。また、受信時刻が、基準となる所定の時刻からの経過時間を示すμｓ単位で表されているが、時間を表す単位であればよい。例えば、ＦｌｅｘＲａｙプロトコルで用いられる内部クロックから算出されるマイクロティックの個数が用いられて、マイクロティックを用いて定義されるマクロティックの個数が用いられてもよい。
【００８０】
［１．１４  セキュアスターカプラの動作］
次に、上記の様に構成されている車載ネットワークシステム１０における、各情報及びルールを用いたセキュアスターカプラ３００の動作の手順について例を用いて説明する。なお、セキュアスターカプラ３００の動作は、セキュアスターカプラ３００の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ３００の各構成要素による処理の説明をもって、セキュアスターカプラ３００の動作の説明であると理解されたい。
【００８１】
図１４は、セキュアスターカプラ３００の動作の手順例を示すフローチャートである。
【００８２】
セキュアスターカプラ３００において、ルーティング部３０２が、トランシーバ部３０１ａ〜３０１ｄのいずれかのブランチから信号を受信しているかを判断する（Ｓ１００１）。信号が受信されている場合（Ｓ１００１でＹｅｓ）、ルーティング部３０２は、ルーティングテーブル保持部３０５に格納されているルーティングテーブルに、当該信号を受信している現在のタイミング（スロット）に対応するルーティングルールが存在するか否かを判断する（Ｓ１００２）。対応するルーティングルールが存在する場合（Ｓ１００２でＹｅｓ）、ルーティング部３０２は、このルーティングルールに照らして、信号を受信したスロットと、この信号を送信したブランチとの対応が適切であるかを確認する（Ｓ１００３）。対応するルーティングルールが存在しない場合（Ｓ１００２でＮｏ）、ルーティング部３０２は、他のブランチから信号を受信中かを確認する（Ｓ１００６）。
【００８３】
ステップＳ１００３にて、フレームを受信したスロットと受信したフレームを送信したブランチとの対応が適切である場合（Ｓ１００３でＹｅｓ）、ルーティング部３０２は、この信号を、受信したフレームを送信したブランチ以外のブランチへルーティングして、トランシーバ部から送信させる（Ｓ１００４）。また、ＥＣＵインターフェース部３０３によって、この受信した信号からフレームが解釈され、受信フレームが受信フレーム情報保持部３０４に格納される（Ｓ１００５）。フレームを受信したスロットと受信したフレームを送信したブランチとの対応が適切でない場合（Ｓ１００３でＮｏ）、セキュアスターカプラ３００の処理は終了する。
【００８４】
ステップＳ１００６にて、他のブランチから信号を受信していない場合（Ｓ１００６でＮｏ）、セキュアスターカプラ３００では上述のステップＳ１００４及びＳ１００５以降の処理が実行される。他のブランチから、信号を受信している場合（Ｓ１００６でＹｅｓ）、セキュアスターカプラ３００の処理は終了する。
【００８５】
ステップＳ１００１にて、信号を受信していない場合（Ｓ１００１でＮｏ）、ＥＣＵインターフェース部３０３は、不正検知ＥＣＵ３１０から通知があったかを判断する（Ｓ１００７）。通知を受けていない場合（Ｓ１００７でＮｏ）、セキュアスターカプラ３００の処理は、Ｓ１００１に戻る。通知を受けている場合（Ｓ１００７でＹｅｓ）、ＥＣＵインターフェース部３０３が、この通知の内容が、他のＥＣＵへのアラートなどのためのフレームの送信要求であるか否かを判断する（Ｓ１００８）。フレームの送信要求である場合（Ｓ１００８でＹｅｓ）、ＥＣＵインターフェース部３０３は、各トランシーバ部から全ブランチにフレームを送信させて（Ｓ１００９）、セキュアスターカプラ３００の処理が終了する。通知内容がフレームの送信要求でない場合（Ｓ１００８でＮｏ）、ＥＣＵインターフェース部３０３が、通知はルーティングテーブル（図中ＲＴ）の更新・設定の反映の要求であるとして、ルーティングテーブルを更新し、設定を反映させて（Ｓ１０１０）、セキュアスターカプラ３００の処理が終了する。
【００８６】
なお、セキュアスターカプラ３００の上述の動作において、ステップＳ１００１で信号を受信したスロットとこの信号を送信したブランチとの対応が適切でないこと（Ｓ１００３でＮｏ）が、及び他のブランチから信号を受信していること（Ｓ１００６でＹｅｓ）が、それぞれ本実施の形態における非転送条件の第１条件及び第２条件の例である。
【００８７】
［１．１５  不正検知ＥＣＵの動作］
次に、上記の様に構成されている車載ネットワークシステム１０における、各情報、ルール及び受信履歴を用いた不正検知ＥＣＵ３１０の動作の手順について例を用いて説明する。なお、不正検知ＥＣＵ３１０の動作は、不正検知ＥＣＵ３１０の構成要素による処理の実行によって実現される。したがって、以下の不正検知ＥＣＵ３１０の各構成要素による処理の説明をもって、不正検知ＥＣＵ３１０の動作の説明であると理解されたい。
【００８８】
図１５は、不正検知ＥＣＵ３１０の動作の手順例を示すフローチャートである。
【００８９】
不正検知ＥＣＵ３１０において、スターカプラ通信制御部３１１がセキュアスターカプラ３００から受信フレーム情報を受信する（Ｓ１１０１）。不正検知部３１２は、受信フレーム情報が示す受信ブランチと受信スロットＩＤとの組み合わせが、フレーム情報保持部３１４に格納されているフレーム情報（図１０）が示すスロットＩＤと送信元ブランチとの組み合わせに適合するかを確認する（Ｓ１１０２）。フレーム情報に適合する場合（Ｓ１１０２でＹｅｓ）、不正検知部３１２は、当該受信フレーム情報が示す受信フレームの内容（ペイロード）が、フレームルール保持部３１５に格納されているフレームルール（図１１）に含まれる対応するものに適合するかをさらに確認する（Ｓ１１０３）。対応するフレームルールに適合する場合（Ｓ１１０３でＹｅｓ）、不正検知ＥＣＵ３１０の処理は終了する。
【００９０】
受信ブランチと受信スロットＩＤとの組み合わせがフレーム情報に適合しない（Ｓ１１０２でＮｏ）場合、又は受信フレームの内容が、対応するフレームルールに適合しない場合（Ｓ１１０３でＮｏ）、不正検知部３１２は、この受信ブランチの異常度（図１２）を１増加させる（Ｓ１１０４）。さらに不正検知部３１２は、受信ブランチの累積された異常度が所定値以上であるかを判断する（Ｓ１１０５）。所定値以上である場合（Ｓ１１０５でＹｅｓ）、当該ブランチからの不正である可能性が高いフレームの送信を抑制するために、不正検知部３１２は、スターカプラ通信制御部３１１を介してセキュアスターカプラ３００のルーティングテーブルの更新を行う（Ｓ１１０６）。異常度が所定値未満の場合（Ｓ１１０５でＮｏ）、又はルーティングテーブルの更新後、不正検知ＥＣＵ３１０の処理は終了する。
【００９１】
なお、ルーティングテーブルの更新（Ｓ１１０６）は、例えば異常度が所定値以上であるとステップＳ１１０５で判断した受信ブランチが送信元ブランチであるルーティングルールを削除することで実行されてもよい。またはルーティングテーブルに、各ルーティングルールについて転送可否であることを示すフラグがさらに含まれてもよい。
【００９２】
（実施の形態２）
［２．システムの構成］
次に、本開示の一実施の形態として、スター型トポロジの車載ネットワークを監視し、送受信される各フレームと、各フレームで転送されるべき信号を送信する送信元ブランチを示す情報と、さらにブラックリストを用いて不正なフレームの送信を検知し、又はその転送を防止するセキュアスターカプラ及び不正検知ＥＣＵについて、図面を参照しながら説明する。実施の形態１と同様の機能を有する構成要素は同じ参照符号を付与し、説明を省略する。
【００９３】
なお、上記のセキュアスターカプラ及び不正検知ＥＣＵが用いられる車載ネットワークシステムの構成は、図１に示す車載ネットワークシステム１０において、セキュアスターカプラ３００及び不正検知ＥＣＵ３１０を、本実施の形態に係るセキュアスターカプラ１３００及び不正検知ＥＣＵ１３１０にそれぞれ置換し、その他は共通でよいため、図示及び説明を省略する。また、図２に示されるＦｌｅｘＲａｙのサイクル、図３に示されるＦｌｅｘＲａｙフレームのフォーマット、図４に示されるＥＣＵの機能的な構成、並びに図７〜図１３に示されるパラメータ、情報及びルール等も本実施の形態に適用可能であり、再度の図示及び説明は省略する。
【００９４】
［２．１  セキュアスターカプラの構成］
図１６は、セキュアスターカプラ１３００の機能的な構成の例を示す図である。セキュアスターカプラ１３００は、トランシーバ部３０１ａ、３０１ｂ、３０１ｃ、３０１ｄ、ルーティング部１３０２、ＥＣＵインターフェース部１３０３、受信フレーム情報保持部３０４、ルーティングテーブル保持部３０５、ブラックリスト保持部１３０６、ブランチ異常度保持部３１６、及び車両状態保持部１３０７を備える。なお、セキュアスターカプラ１３００は、例えばプロセッサ及びメモリを含むマイクロコントローラ、並びに入出力回路を備える。セキュアスターカプラ１３００のここに挙げた構成要素は、入力回路で信号の入力を受け、当該信号に対してプロセッサがメモリに記憶される１個又は複数個のプログラムを実行して行う判断の結果に応じて出力回路から所定のバスへ向けて信号が出力されるまでの処理を実現する機能的な構成要素である。
【００９５】
ルーティング部１３０２は、トランシーバ部３０１ａから通知されたデジタル信号を、トランシーバ部３０１ａを除くトランシーバ部３０１ｂ、３０１ｃ及び３０１ｄへルーティングする。同様に、トランシーバ部３０１ｂから通知されたデジタル信号を、ルーティング部１３０２は、トランシーバ部３０１ｂを除く各トランシーバ部へルーティングする。ルーティング部１３０２はさらに、ルーティング中のデジタル信号と、当該デジタル信号をどのブランチから受信しているかを示す受信ブランチ情報とをＥＣＵインターフェース部１３０３へ通知する。また、ルーティング部１３０２は、ルーティングテーブル保持部３０５に格納されているルーティングテーブルに基いて、スロット番号（スロットＩＤ）と、送信元ブランチ（又は送信元ブランチに接続されているトランシーバ部）との対応を設定する。ルーティング部１３０２は、各スロット番号のタイムスロットにおいて、設定されている対応する送信元ブランチから受信された信号をその他のブランチへルーティングする。設定されていない送信元ブランチから受信された信号はルーティング部１３０２で無視され、つまりセキュアスターカプラ３００による他のブランチへの転送が実行されない。スロット番号と送信元ブランチとの対応が設定されていないタイムスロットにおいては、ルーティング部１３０２は、最初に受信された信号を、当該信号を送信したブランチ以外のブランチへルーティングする。
【００９６】
また、ルーティング部１３０２は、ルーティング中、つまり転送が未完了の信号をデコードしてフレームを取得し、当該フレームの内容がブラックリスト保持部１３０６に保持されているブラックリストに合致しているかを判断する。ルーティング部１３０２は、さらにブランチ異常度保持部３１６に格納されているブランチ異常度、及び車両状態保持部１３０７に格納されている車両状態を参照する。ルーティング中の信号が示すフレームの内容がブラックリストに合致し、かつ、参照して取得したブランチ異常度及び車両状態が、ブラックリストの有効化条件を満たす場合、ルーティング部１３０２は信号のルーティングを停止する。つまり、セキュアスターカプラ１３００による当該信号の他のブランチへの転送が停止される。これにより、不正なフレームを送信するＥＣＵが、ルーティングテーブルが含むルーティングルールに合致するブランチに存在している場合であっても、このＥＣＵから送信されるフレームはペイロード値に基づいて不正と判定される。したがって、不正なフレーム（信号）の転送が防止される。
【００９７】
また、ルーティング部１３０２は、各ブランチから受信した信号をデコードしてフレームを取得し、当該フレームに各ブランチにおいてプロトコル上のエラーが発生しているか否かを確認するエラー検知処理を行う。ルーティングルールが有効なスロットにおいて受信されたフレームにエラーが発生している場合、このフレームを送信したブランチについての、ブランチ異常度保持部３１６に格納されているブランチの異常度を増加させる。これは、不正なフレーム送信が試行されているブランチを把握する目的で実行される。ある特定のスロットで所定のフレームを送信する正規のＥＣＵと、当該スロットにて不正なフレームを送信しようとするＥＣＵとが異なるブランチに含まれる場合には、セキュアスターカプラ１３００において、ルーティングルールに合致しないブランチからの不正なフレームの送信であるとして無視される。つまり、不正なフレームの転送は防止される。しかしながら、これだけでは不正なフレームを送信したブランチは特定されない。正規のＥＣＵから送信されるフレームは、セキュアスターカプラ１３００によってその他のブランチに転送される。この転送されたこのフレームと、不正なＥＣＵから送信されたフレームとが衝突を起こすことで、不正なＥＣＵを含むブランチのみエラー状態となり、このエラー状態がルーティング部１３０２によって検知される。
【００９８】
ＥＣＵインターフェース部１３０３は、ルーティング部３０２からデジタル受信した信号と、受信ブランチ情報とを通知されると、当該デジタル信号をデコードして受信フレームとして解釈し、この受信フレームの情報と受信ブランチ情報とを対応付けて受信フレーム情報保持部３０４に保存する。また、不正検知ＥＣＵ１３１０からの要求に従って、受信フレーム情報保持部３０４に格納されている、受信フレームの情報及び受信ブランチ情報を不正検知ＥＣＵ１３１０に通知する。さらにＥＣＵインターフェース部１３０３は、不正検知ＥＣＵ１３１０からの指示を解釈して、ルーティングテーブル保持部３０５に格納されている、各スロットで転送すべき信号を送信する送信元ブランチを示すルーティングテーブルの書換、及びブラックリスト保持部１３０６に格納されているブラックリストの更新、ブランチ異常度保持部３１６に格納されているブランチ異常度の更新、及び車両状態保持部１３０７に格納されている車両状態の更新を実行する。
【００９９】
ブラックリスト保持部１３０６は、ルーティング部１３０２によって参照され、転送中の信号の転送を停止させるか否かの判断に用いられるブラックリストを格納している。ブラックリスト保持部１３０６が保持するブラックリストの一例を図１８に示し、詳細は後述する。
【０１００】
車両状態保持部１３０７は、ルーティング部１３０２によって参照され、ブラックリスト保持部１３０６に格納されるブラックリストを有効化する条件として用いられる車両状態を格納している。図１９に車両状態保持部１３０７が保持する車両状態の一例を示す。図１９の例では、車両状態は走行中であることを示している。
【０１０１】
［２．２  不正検知ＥＣＵの構成］
図１７は、不正検知ＥＣＵ１３１０の機能的な構成の例を示すブロック図である。
【０１０２】
不正検知ＥＣＵ１３１０は、スターカプラ通信制御部１３１１と、不正検知部１３１２と、フレーム生成部３１３と、通信用設定パラメータ保持部２０５と、フレーム情報保持部３１４と、フレームルール保持部３１５と、受信履歴保持部３１７とを備える。
【０１０３】
スターカプラ通信制御部１３１１は、セキュアスターカプラ１３００との通信インターフェースであり、通信用設定パラメータ保持部２０５に格納されている通信用設定パラメータに基づいてセキュアスターカプラ１３００の設定を行う。セキュアスターカプラ１３００の設定には、スロットと送信元ブランチとの対応を示したテーブルに基づくルーティングの制御情報、及びブラックリストも含まれ得る。さらに、セキュアスターカプラ１３００が受信したフレームに基づいて決定される走行状態等の車両状態の更新通知、ブランチ異常度の増加に関する通知を行う。また、セキュアスターカプラ１３００が受信したフレームの情報である上記の受信フレーム情報を受信し、不正検知部１３１２へ通知する。フレーム生成部３１３からフレームの送信を要求されると、スターカプラ通信制御部１３１１は、このフレームの内容をセキュアスターカプラ１３００へ通知する。
【０１０４】
不正検知部１３１２は、スターカプラ通信制御部１３１１から通知される、受信ブランチの情報を含む受信フレーム情報に基づいて、受信フレームが不正なフレームであるかを判断する。この判断では、不正検知部１３１２は、まず、フレーム情報保持部３１４に格納されているスロットＩＤと送信元ブランチとの対応を示すテーブルを参照して、実際の受信フレームのフレームＩＤと受信ブランチとの対応が正しいかを確認する。受信フレームのフレームＩＤと受信ブランチとの対応が正しい場合は、不正検知部１３１２は、フレームルール保持部３１５に格納されている受信フレームのペイロードの内容に応じた種別ごとのルールと、受信履歴保持部３１７に保持されている受信履歴とをさらに参照し、ペイロードの内容がこのルールから外れる受信フレームを不正であると判断する。受信フレームが不正であると判断した場合は、不正検知部３１２はさらに、不正なフレームが送信されていることを他のＥＣＵに通知するアラートのためのフレームの送信を、フレーム生成部３１３に要求する。あわせて、不正検知部３１２はスターカプラ通信制御部１３１１に、受信ブランチが異常であることを通知する。またさらに、不正検知部１３１２は、今後このブランチから送信される不正なフレームが他のブランチへ転送されることを防ぐために、セキュアスターカプラ１３００のＥＣＵインターフェース部１３０３へ、ルーティングテーブルの書換を通知する。
【０１０５】
［２．３  ブラックリスト］
図１８は、ブラックリスト保持部１３０６に格納されるブラックリストの一例である。図１８のブラックリストは、スロットＩＤ、Ｃｙｃｌｅ  ｏｆｆｓｅｔ、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎの組み合わせにより決定される特定のスロットで受信されるフレームごとの、受信ブランチ、ペイロードの値を及びブラックリスト有効化条件を行ごとに示す。例えば１行目は、スロットＩＤが２０、Ｃｙｃｌｅ  ｏｆｆｓｅｔが３、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが４のスケジュールで受信されるフレームについては、受信ブランチが１００ｄであって、ペイロードの値が＊＊５＊・・・である場合に、車両状態が「走行中」である場合に当該フレームはブラックリストに合致し、かつブランチ異常度が３０より大きいことを条件として転送が中止されることを示す。ここで、ブラックリストの欄の「＊」は、ペイロードで対応するビットが示す値がドントケアであることを意味する。つまりこの例では、上位２バイト目の上位４ビットが示す値が５であるペイロードのフレームを受信した場合にブラックリストに合致することを示している。同様に２行目は、スロットＩＤが１０、Ｃｙｃｌｅ  ｏｆｆｓｅｔが０、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎが２のスケジュールで受信されるフレームについては、受信ブランチが１００ａであって、ペイロードの値がＦＦ  １１  ＊＊・・・である場合に当該フレームはブラックリストに合致し、ブラックリストに合致したフレーム(を示す信号)は常に転送が中止されることを示している。
【０１０６】
［２．４  セキュアスターカプラの動作］
次に、上記の各情報及びルール等を用いたセキュアスターカプラ１３００の動作の手順について例を用いて説明する。なお、セキュアスターカプラ１３００の動作は、セキュアスターカプラ１３００の構成要素による処理の実行によって実現される。したがって、以下のセキュアスターカプラ１３００の各構成要素による処理の説明をもって、セキュアスターカプラ１３００の動作の説明であると理解されたい。
【０１０７】
図２０はセキュアスターカプラ１３００のフレーム受信時の動作の手順例を示すフローチャートである。
【０１０８】
セキュアスターカプラ１３００は、フレーム（を示す信号）の受信を開始する（Ｓ２００１）。
【０１０９】
ルーティング部１３０２は、ルーティングテーブル保持部３０５に格納されているルーティングテーブルに、当該信号を受信している現在のスロットに対応するルーティングルール（図中、ＲＲ）が存在するか否かを判断する（Ｓ２００２）。対応するルーティングルールが存在する場合（Ｓ２００２でＹｅｓ）、ルーティング部１３０２は、ステップＳ２００３の判断を実行する。そうでない場合（Ｓ２００２でＮｏ）、セキュアスターカプラ１３００は、ステップＳ２０１１の判断を実行する。
【０１１０】
ルーティング部１３０２は、ステップＳ２００３では、当該信号を受信しているスロットと受信ブランチとの関係が、対応するルーティングルールに合致しているかを確認する。ルーティングルールに合致している場合（Ｓ２００３でＹｅｓ）、ルーティング部１３０２は、受信している信号を受信ブランチ以外のブランチへ転送するルーティングを開始する（Ｓ２００４）。そうでない場合（Ｓ２００３でＮｏ）、セキュアスターカプラ１３００は、受信ブランチの異常度を増加させて（Ｓ２００８）、セキュアスターカプラ１３００の処理は終了する。
【０１１１】
また、ルーティング部１３０２は、ルーティング開始後に、転送が未完了の信号のデコードを行い、デコードによって取得したフレームが、ブラックリスト保持部１３０６に格納されるブラックリストに合致しているか否かの判断を行う（Ｓ２００５）。ブラックリストに合致している場合（Ｓ２００５でＹｅｓ）、ルーティング部１３０２はルーティングを停止し（Ｓ２００９）、セキュアスターカプラ１３００の処理を終了する。フレームがブラックリストに合致しない場合（Ｓ２００５でＮｏ）、ルーティング部１３０２は、信号の転送を完了させる（Ｓ２００６）。
【０１１２】
ステップＳ２００６の後、ルーティング部１３０２は、各ブランチでのエラー発生状況を確認する（Ｓ２００７）。全てのブランチでエラーが無ければ（Ｓ２００７でＮｏ）、転送は正常に完了したとして、セキュアスターカプラ１３００の処理は終了する。エラーの発生したブランチが存在する場合（Ｓ２００７でＹｅｓ）、ルーティング部１３０２は、不正なフレームの送信がなされていた可能性があるとして、エラーが発生したブランチの異常度を増加させ（Ｓ２０１０）、セキュアスターカプラ１３００の処理は終了する。
【０１１３】
ルーティング部１３０２は、ステップＳ２０１１では、現在のスロットで他のブランチから受信している信号を転送のためにルーティング中であるか否かを確認する。ルーティング中でない場合（Ｓ２０１１でＮｏ）は、Ｓ２００４を実行する。ルーティング中である場合（Ｓ２０１１でＹｅｓ）、ルーティング部１３０２は受信していた信号を無視し、セキュアスターカプラ１３００の処理は終了する。
【０１１４】
［２．５  フレーム受信時の不正検知ＥＣＵの動作］
次に、上記の各情報及びルール等を用いた不正検知ＥＣＵ１３１０の動作の手順について例を用いて説明する。なお、不正検知ＥＣＵ１３１０の動作は、不正検知ＥＣＵ１３１０の構成要素による処理の実行によって実現される。したがって、以下の不正検知ＥＣＵ１３１０の各構成要素による処理の説明をもって、不正検知ＥＣＵ１３１０の動作の説明であると理解されたい。
【０１１５】
図２１は、不正検知ＥＣＵ１３１０のフレーム受信時の動作の手順例を示すフローチャートである。
【０１１６】
不正検知ＥＣＵ１３１０において、スターカプラ通信制御部１３１１がフレーム受信の通知をセキュアスターカプラ１３００から受けると、不正検知部１３１２は、受信フレームの受信スロットＩＤ、ペイロード情報、及び受信ブランチに関する受信フレーム情報を取得（Ｓ２１０１）する。不正検知部１３１２は、フレーム情報保持部３１４に格納されているフレーム情報を参照し、当該受信フレーム情報が示す受信ブランチと受信スロットＩＤとの組み合わせが適切であるか否かを判断する（Ｓ２１０２）。組み合わせが適切である場合（Ｓ２１０２でＹｅｓ）、不正検知部１３１２は、ステップＳ２１０３を実行する。対応が適切でない場合（Ｓ２１０２でＮｏ）、不正検知部１３１２は、この受信ブランチの異常度を増加させるようにセキュアスターカプラ１３００へ通知を行い（Ｓ２１０６）、処理を終了する。
【０１１７】
ステップＳ２１０３では、不正検知部１３１２は、フレームルール保持部３１５に格納されているフレームルールを参照し、受信フレームが対応するフレームルールに適合するか否かを判断する。フレームルールに適合する場合（Ｓ２１０３でＹｅｓ）、不正規のフレームを受信したとして、不正検知部１３１２は、受信履歴保持部３１７に格納されている受信履歴を更新し（Ｓ２１０４）、車両状態の更新通知をセキュアスターカプラ１３００に行い（Ｓ２１０５）、不正検知ＥＣＵ１３１０の処理は終了する。フレームルールに適合しない場合（Ｓ２１０３でＮｏ）、不正なフレームを受信したとして、不正検知ＥＣＵ１３１０は、受信ブランチの異常度を増加させるようにセキュアスターカプラ１３００へ通知を行い（Ｓ２１０６）、不正検知ＥＣＵ１３１０の処理は終了する。
【０１１８】
［３．  変形例及び補足事項］
本開示の一又は複数の態様に係るフレーム転送方法及びセキュアスターカプラは、上記の各実施の形態の説明に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が想到する各種の変形を上記の実施の形態に施したものも、本開示の態様に含まれてもよい。下記に、そのような変形の例、及び実施の形態の説明へのその他の補足事項を挙げる。
【０１１９】
（１）上記の各実施の形態は、図１に示したスター型のネットワークトポロジにおける例を用いて説明したが、適用可能なネットワークトポロジをこの例に限るものではない。例えば、バス型、又はスター型とバス型とのハイブリッド型などのネットワークトポロジにも本開示のセキュアスターカプラ等は適用できる。
【０１２０】
（２）上記の各実施の形態では、別個の物として説明されるセキュアスターカプラと不正検知ＥＣＵとは一体的に実現されてもよいし、また、一方の機能的構成要素の一部が他方に組み込まれてもよい。これにより部品点数の削減につながる。この場合、上述のセキュアスターカプラの動作において各構成要素によって実行される各ステップは、不正検知ＥＣＵで実行されるステップとなり得る。また、上述の不正検知ＥＣＵの動作において各構成要素によって実行される各ステップは、セキュアスターカプラで実行されるステップとなり得る。なお、セキュアスターカプラと不正検知ＥＣＵとを一体的に実現するものであっても、本開示では便宜的にセキュアスターカプラと称するが、本開示に係るセキュアスターカプラの構成要素と不正検知ＥＣＵの構成要素とを組み合わせて備えるものは、その呼称に拘わらず本開示の技術的範囲に含まれる。
【０１２１】
（３）上記の実施の形態では、セキュアスターカプラと不正検知ＥＣＵとが通信を行っていたが、不正検知ＥＣＵは必須の構成要素ではない。例えば予めルーティングテーブル保持部及び通信用設定パラメータ保持部の内容をセキュアスターカプラに埋め込んでおき、運用開始当初は必要最小限の機能のみを実現してもよい。これにより、通信ネットワーク上の通信装置の数を削減でき、コスト低下に効果的である。
【０１２２】
（４）上記の実施の形態では、不正なフレームが発生したか否か、又はフレームが不正であるか否かという不正検知処理以降について詳細に述べていないが、この処理の結果の利用例について補足する。例えば、不正検知処理において得られる、不正なフレームのヘッダに含まれる情報、ペイロード値、受信時刻、受信時の車両状態等（これら情報の少なくとも一部を指して、以下では不正フレーム情報ともいう）がログに保存されておいてもよい。また、車載ネットワーク上の他のＥＣＵに不正なフレームの発生又は不正フレーム情報が通知されてもよいし、外部のサーバへ当該車両での不正なフレームの発生又は不正フレーム情報が通知されてもよい。また、当該車両のユーザインタフェースを介して運転者へ車載ネットワークに不正なフレームの発生又は不正フレーム情報が通知されてもよい。また、ゲートウェイ又はドメインコントローラが不正検知部を備える場合は、当該不正フレームを転送しない、又は不正なフレームであることを示す情報を付加して転送する等の処理を実行してもよい。
【０１２３】
（５）上記の各実施の形態では、フレーム情報、フレームルールを平文で保持されているが、暗号化して保持されていてもよい。
【０１２４】
（６）上記の各実施の形態では、異常度をブランチごとに保持していたが、フレームごとに異常度を保持していてもよい。これにより、異常度の高いフレームのみを遮断することが可能となり、車両への影響の抑止に効果的である。
【０１２５】
（７）上記の各実施の形態では、フレームルールにはそれぞれ１つの受信ルールが設定されている（図１１）が、２つ以上が設定されていてよい。また、受信ルールが設定されていない個別フレームルールが存在してもよい。例えば、重要性の高い第二種別のフレームにのみ受信ルールを設定することで、フレームの重要度に応じたチェックが可能となり、車載ネットワークの安全性の向上に効果的である。
【０１２６】
（８）上記の各実施の形態では、動的フレームに関してフレームルールが設定されていない（図１１）が、動的フレームに関してもフレームルールが設定されていてもよい。例えば、前回受信値からの変化量に関するルール設定されてもよい。
【０１２７】
（９）上記の各実施の形態では、セキュアスターカプラは不正検知ＥＣＵからフレームの送信要求を受け、他ブランチにフレームを送信可能であったが、送信しないものであってもよい。これによりセキュアスターカプラの機能削減ができ、コストの削減に効果的である。
【０１２８】
（１０）上記の各実施の形態では、フレーム情報保持部に格納されるフレーム情報にフレーム名が保持されている（図１０）が、フレーム名は必須ではない。
【０１２９】
（１１）上記の各実施の形態では、フレーム情報保持部に格納されるフレーム情報について、１つのフレームが保持するペイロード情報は１種類１件であるが、（図１０）これに限定されない。１つのフレームが２種類以上又は同種の情報を複数件保持してもよいし、ペイロード情報が無くてもよい。また、複数件のペイロード情報が保持される場合には、ペイロードセグメントでの各件のフィールドを示す情報（フィールドの位置、長さ、単位等）が含まれていてもよい。
【０１３０】
（１２）上記の各実施の形態では、受信履歴（図１３）の前回受信値はフレーム名ごとに１信号相当分だけ保持しているが、複数信号相当分保持してもよいし。また、ペイロード値をそのまま保持してもよい。
【０１３１】
（１３）上記の各実施の形態では、受信履歴（図１３）に含まれる車両状態は、走行中か停止中の２状態のみであったが、車両状態はこの２状態に限らない。例えば、イグニッションオン状態、アクセサリーオン状態、低速走行状態、高速走行状態、ステアリング操舵状態、ギア状態、若しくは先進運転支援機能オンオフ状態、又はこれらを組み合わせた状態を取り得る。
【０１３２】
（１４）上記の実施の形態２では、ブラックリスト（図１８）は予め保持しているものを使用する例を示したが、ブラックリストは、使用開始後も更新される動的なものであってもよい。例えば、不正検知ＥＣＵが不正であると検知したフレームのペイロード値を保持しておき、同じＩＤ、Ｃｙｃｌｅ  ｒｅｃｅｐｔｉｏｎ、Ｃｙｃｌｅ  ｏｆｆｓｅｔのスロットに送信されるフレームにて不正を所定回数以上検知したときに、これらのフレーム間でペイロード値が一致するフィールドを用いてブラックリストを更新してもよい。これにより、予めブラックリストに登録されていない、より新しい攻撃パターンの不正なフレームのルーティングを防止できるようになり、安全性の向上に効果的である。
【０１３３】
（１５）上記の実施の形態２では、ルーティング部は信号をデコードして取得するフレームのエラーを検出する機能を備えるが、エラー検出の機能はルーティング部（セキュアスターカプラ）内で実行されなくてよい。例えば、セキュアスターカプラに接続する不正検知ＥＣＵが任意の２ブランチの信号を受信可能にし、不正検知ＥＣＵが備えるデコーダ部でエラーの検出が行われてもよい。
【０１３４】
（１６）上記の実施の形態２では、ブラックリスト（図１８）に合致するフレーム（信号）の転送が停止されるが、ブラックリストに合致するフレーム（信号）の転送停止以外の処理が行われてもよい。例えば、フレームに含まれるＣＲＣの値を書き換えるなどしてもよい。転送された信号が、他の受信するＥＣＵに有効なフレームとして認識されて処理されることを防止することができる対処方法であればよい。
【０１３５】
（１７）上記の実施の形態２では、タイムスロットとフレームに含まれるペイロードの値との不適切な対応を示すブラックリスト（図１８）に合致するフレーム（信号）の転送が停止されるが、これに限定されない。タイムスロットとフレームに含まれるペイロードの値との適切な対応を示すホワイトリストに合致しない信号の転送を停止してもよい。このようなブラックリスト及びホワイトリストは上記の実施の形態２及び本変形例における不正基準リストの例であり、ブラックリスト保持部は不正基準リスト保持部の例である。
【０１３６】
（１８）上記の実施の形態２では、車両状態及びブランチ異常度は、ブラックリスト（図１８）の有効化条件に用いられていたが、ルーティングルール（図９）の有効化条件に用いてもよい。これにより、不正なＥＣＵの存在するブランチからのフレーム送信を無効化でき効果的である。
【０１３７】
（１９）上記の実施の形態２では、車両状態保持部に保持されているのは車両の走行状態であるが（図１９）、これに限定されない。例えば上記のイグニッションオン状態などでもよいし、各ＥＣＵから通知される所定の状態、例えばＥＣＵに接続される外部機器の状態を示すフラグであってもよい。これによりフラグに応じてブラックリストの有効化が可能となり、車両の多様な状態により柔軟に対応することができる。
【０１３８】
（２０）上記の実施の形態では、車載ネットワークとしてＦｌｅｘＲａｙプロトコルを用いていたが、これに限るものではない。例えば、ＣＡＮ、ＣＡＮ−ＦＤ（ＣＡＮ  ｗｉｔｈ  Ｆｒｅｘｉｂｌｅ  Ｄａｔａ  Ｒａｔｅ）、Ｅｔｈｅｒｎｅｔ（登録商標）、ＬＩＮ（Ｌｏｃａｌ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｎｅｔｗｏｒｋ）、ＭＯＳＴ（Ｍｅｄｉａ  Ｏｒｉｅｎｔｅｄ  Ｓｙｓｔｅｍｓ  Ｔｒａｎｓｐｏｒｔ）などを用いてもよい。あるいはこれらのネットワークをサブネットワークとして、組み合わせたネットワークであってもよい。特にタイムトリガー方式を採用しているネットワークに対して有効である。また、実施の形態は車載ネットワークに含まれるセキュアスターカプラ及びセキュアスターカプラで実行される不正フレームの転送防止方法を例に用いて説明しているが、本開示の態様に係るセキュアスターカプラ等は、車載ネットワーク以外の通信ネットワークにも適用可能である。
【０１３９】
（２１）上記の実施の形態における各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。ＲＡＭ又はハードディスクユニットには、コンピュータプログラムが記録されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【０１４０】
（２２）上記の実施の形態における各装置は、構成する構成要素の一部又は全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。ＲＡＭには、コンピュータプログラムが記録されている。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、システムＬＳＩは、その機能を達成する。
【０１４１】
また、上記の各装置を構成する構成要素の各部は、個別に１チップ化されていても良いし、一部又は全てを含むように１チップ化されてもよい。
【０１４２】
また、ここでは、システムＬＳＩとしたが、集積度の違いにより、ＩＣ、ＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【０１４３】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０１４４】
（２３）上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なＩＣカード又は単体のモジュールから構成されているとしてもよい。ＩＣカード又はモジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。ＩＣカード又はモジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、ＩＣカード又はモジュールは、その機能を達成する。このＩＣカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
【０１４５】
（２４）本開示は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、コンピュータプログラムからなるデジタル信号であるとしてもよい。
【０１４６】
また、本開示は、コンピュータプログラム又はデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されているデジタル信号であるとしてもよい。
【０１４７】
また、本開示は、コンピュータプログラム又はデジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【０１４８】
また、本開示は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、上記コンピュータプログラムを記録しており、マイクロプロセッサは、コンピュータプログラムに従って動作するとしてもよい。
【０１４９】
また、プログラム又はデジタル信号を記録媒体に記録して移送することにより、又はプログラム又はデジタル信号を、ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【０１５０】
（２５）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０１５１】
本開示に係る技術は、通信ネットワーク、特にタイムトリガー方式を採用しているネットワークにおいて、サイバー攻撃などによる不正なフレームへの対処を可能にするために利用することができる。
【符号の説明】
【０１５２】
１０  車載ネットワークシステム
１００ａ、１００ｂ、１００ｃ、１００ｄ  バス
２００ａ、２００ｂ、２００ｃ、２００ｄ  ＥＣＵ
２０１  フレーム送受信部
２０２  フレーム解釈部
２０３  外部機器制御部
２０４  フレーム生成部
２０５  通信用設定パラメータ保持部
２１０  ステアリング
２２０  ギア
２３０  ブレーキ
２４０  カメラ
３００、１３００  セキュアスターカプラ
３０１ａ、３０１ｂ、３０１ｃ、３０１ｄ  トランシーバ部
３０２、１３０２  ルーティング部
３０３、１３０３  ＥＣＵインターフェース部
３０４  受信フレーム情報保持部
３０５  ルーティングテーブル保持部
３１０、１３１０  不正検知ＥＣＵ
３１１、１３１１  スターカプラ通信制御部
３１２、１３１２  不正検知部
３１３  フレーム生成部
３１４  フレーム情報保持部
３１５  フレームルール保持部
３１６  ブランチ異常度保持部
３１７  受信履歴保持部
１３０６  ブラックリスト保持部
１３０７  車両状態保持部
【図１】
2020022445.tif 000003
【図２】
2020022445.tif 000004
【図３】
2020022445.tif 000005
【図４】
2020022445.tif 000006
【図５】
2020022445.tif 000007
【図６】
2020022445.tif 000008
【図７】
2020022445.tif 000009
【図８】
2020022445.tif 000010
【図９】
2020022445.tif 000011
【図１０】
2020022445.tif 000012
【図１１】
2020022445.tif 000013
【図１２】
2020022445.tif 000014
【図１３】
2020022445.tif 000015
【図１４】
2020022445.tif 000016
【図１５】
2020022445.tif 000017
【図１６】
2020022445.tif 000018
【図１７】
2020022445.tif 000019
【図１８】
2020022445.tif 000020
【図１９】
2020022445.tif 000021
【図２０】
2020022445.tif 000022
【図２１】
2020022445.tif 000023
【国際調査報告】
2020022445.tif 000024
2020022445.tif 000025
2020022445.tif 000026
2020022445.tif 000027