IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社オートネットワーク技術研究所の特許一覧 ▶ 住友電装株式会社の特許一覧 ▶ 住友電気工業株式会社の特許一覧

特許7115536車載通信システム、スイッチ装置、検証方法および検証プログラム
<>
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図1
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図2
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図3
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図4
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図5
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図6
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図7
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図8
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図9
  • 特許-車載通信システム、スイッチ装置、検証方法および検証プログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-08-01
(45)【発行日】2022-08-09
(54)【発明の名称】車載通信システム、スイッチ装置、検証方法および検証プログラム
(51)【国際特許分類】
   H04L 12/28 20060101AFI20220802BHJP
【FI】
H04L12/28 200Z
H04L12/28 100A
【請求項の数】 12
(21)【出願番号】P 2020502819
(86)(22)【出願日】2018-12-14
(86)【国際出願番号】 JP2018046201
(87)【国際公開番号】W WO2019167384
(87)【国際公開日】2019-09-06
【審査請求日】2021-05-21
(31)【優先権主張番号】P 2018034044
(32)【優先日】2018-02-28
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】395011665
【氏名又は名称】株式会社オートネットワーク技術研究所
(73)【特許権者】
【識別番号】000183406
【氏名又は名称】住友電装株式会社
(73)【特許権者】
【識別番号】000002130
【氏名又は名称】住友電気工業株式会社
(74)【代理人】
【識別番号】110000682
【氏名又は名称】特許業務法人ワンディーIPパートナーズ
(72)【発明者】
【氏名】呉 ダルマワン
(72)【発明者】
【氏名】浦山 博史
(72)【発明者】
【氏名】萩原 剛志
(72)【発明者】
【氏名】藪内 靖弘
【審査官】宮島 郁美
(56)【参考文献】
【文献】特開2017-005617(JP,A)
【文献】特開2010-220066(JP,A)
【文献】特開2017-147695(JP,A)
【文献】特開2013-168865(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/28,12/44-12/46
(57)【特許請求の範囲】
【請求項1】
複数の機能部と、
前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備え、
前記スイッチ装置は、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う、車載通信システム。
【請求項2】
前記スイッチ装置は、前記機能部間の通信の関係を示す中継情報を用いて前記中継処理を行い、前記検証処理として、前記不正機能部の通信相手の前記機能部を前記中継情報に基づいて特定し、特定した前記機能部を検証する、請求項1に記載の車載通信システム。
【請求項3】
前記スイッチ装置は、前記検証処理として、前記検証処理において異常であると判定された前記機能部である異常機能部の通信相手の前記機能部である2次機能部をさらに検証する、請求項1または請求項2に記載の車載通信システム。
【請求項4】
前記車載通信システムは、複数の前記スイッチ装置を備え、
前記スイッチ装置は、前記不正機能部および前記検証処理において異常であると判定された前記機能部である異常機能部の少なくともいずれか一方を示すリストを保持する、請求項1から請求項3のいずれか1項に記載の車載通信システム。
【請求項5】
前記スイッチ装置は、前記異常機能部の通信相手の前記機能部である2次機能部が他の前記スイッチ装置に接続されている場合、前記他のスイッチ装置に前記リストを与えて前記2次機能部を検証させる処理を行う、請求項4に記載の車載通信システム。
【請求項6】
前記スイッチ装置は、前記リストを更新するたびに更新後の前記リストを他の前記スイッチ装置へ送信する、請求項4または請求項5に記載の車載通信システム。
【請求項7】
前記スイッチ装置は、前記検証処理において、前記機能部から記憶データの検証用データを取得し、取得した前記検証用データを用いて前記機能部を検証する、請求項1から請求項6のいずれか1項に記載の車載通信システム。
【請求項8】
前記スイッチ装置は、前記検証処理において、前記機能部から記憶データの認証用データを取得し、取得した前記認証用データを用いて前記機能部を検証する、請求項1から請求項6のいずれか1項に記載の車載通信システム。
【請求項9】
車載通信システムにおいて用いられるスイッチ装置であって、
複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、
前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部とを備える、スイッチ装置。
【請求項10】
複数の機能部と、前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備える車載通信システムにおける検証方法であって、
前記スイッチ装置が、前記機能部による不正通信の検知結果を取得するステップと、
前記スイッチ装置が、不正通信が検知された前記機能部である不正機能部の通信相手の前記機能部へ確認要求を送信するステップと、
前記不正機能部の通信相手の前記機能部が、前記確認要求に対する応答情報を前記スイッチ装置へ送信するステップと、
前記スイッチ装置が、前記応答情報に基づいて、前記通信相手の前記機能部を検証する検証処理を行うステップとを含む、検証方法。
【請求項11】
複数の機能部間の通信データを中継する中継処理を行うスイッチ装置における検証方法であって、
前記機能部による不正通信の検知結果を取得するステップと、
前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行うステップとを含む、検証方法。
【請求項12】
スイッチ装置において用いられる検証プログラムであって、
コンピュータを、
複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、
前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部、
として機能させるための、検証プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、車載通信システム、スイッチ装置、検証方法および検証プログラムに関する。
この出願は、2018年2月28日に出願された日本出願特願2018-34044号を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
【背景技術】
【0002】
特許文献1(特開2017-123639号公報)には、以下のような不正検知方法が開示されている。すなわち、バスを介して通信を行う複数の電子制御ユニットを備える車載ネットワークシステムにおいて不正状態が発生したことを検知するための不正検知方法であって、第1識別子を有するフレームと、第1識別子とは異なる識別子を有するフレームとの内容の関係についての条件である第1条件を示す不正検知ルール情報を用いて、前記バスから受信されたフレームの集合が当該第1条件を満たすか否かを判定し、当該第1条件が満たされない場合に不正状態が発生したと検知する。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-123639号公報
【発明の概要】
【0004】
(1)本開示の車載通信システムは、複数の機能部と、前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備え、前記スイッチ装置は、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う。
【0005】
(9)本開示のスイッチ装置は、車載通信システムにおいて用いられるスイッチ装置であって、複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部とを備える。
【0006】
(10)本開示の検証方法は、複数の機能部と、前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備える車載通信システムにおける検証方法であって、前記スイッチ装置が、前記機能部による不正通信の検知結果を取得するステップと、前記スイッチ装置が、不正通信が検知された前記機能部である不正機能部の通信相手の前記機能部へ確認要求を送信するステップと、前記不正機能部の通信相手の前記機能部が、前記確認要求に対する応答情報を前記スイッチ装置へ送信するステップとを含む。
【0007】
(11)本開示の検証方法は、複数の機能部間の通信データを中継する中継処理を行うスイッチ装置における検証方法であって、前記機能部による不正通信の検知結果を取得するステップと、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行うステップとを含む。
【0008】
(12)本開示の検証プログラムは、スイッチ装置において用いられる検証プログラムであって、コンピュータを、複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部、として機能させるためのプログラムである。
【0009】
本開示の一態様は、このような特徴的な処理部を備える車載通信システムとして実現され得るだけでなく、かかる特徴的な処理をコンピュータに実行させるためのプログラムとして実現され得る。また、本開示の一態様は、車載通信システムの一部または全部を実現する半導体集積回路として実現され得る。
【0010】
本開示の一態様は、このような特徴的な処理部を備えるスイッチ装置として実現され得るだけでなく、スイッチ装置の一部または全部を実現する半導体集積回路として実現され得る。
【図面の簡単な説明】
【0011】
図1図1は、本発明の実施の形態に係る車載通信システムの構成を示す図である。
図2図2は、本発明の実施の形態に係る車載通信システムにおける各装置のVID、MACアドレスおよびIPアドレスの一例を示す図である。
図3図3は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。
図4図4は、本発明の実施の形態に係るスイッチ装置における中継情報の一例を示す図である。
図5図5は、本発明の実施の形態に係る車載通信システムにおける機能部の構成の一例を示す図である。
図6図6は、本発明の実施の形態に係る管理リストの一例を示す図である。
図7図7は、本発明の実施の形態に係るスイッチ装置における中継情報の他の例を示す図である。
図8図8は、本発明の実施の形態に係るスイッチ装置の保持するチェック値テーブルの一例を示す図である。
図9図9は、本発明の実施の形態に係る車載通信システムにおいて不正通信を検証する処理のシーケンスを示す図である。
図10図10は、本発明の実施の形態に係るスイッチ装置が不正通信を検証する検証処理を行う際の動作手順を定めたフローチャートである。
【発明を実施するための形態】
【0012】
従来、車載ネットワークにおけるセキュリティを向上させるための車載ネットワークシステムが開発されている。
【0013】
[本開示が解決しようとする課題]
特許文献1に記載の車載ネットワークでは、車載ECU(Electronic Control Unit)間で送受信される通信データを中継する通信ゲートウェイが設けられる。
【0014】
車載ネットワークにおいて不正状態が発生した場合に適切に対処可能な技術が望まれる。
【0015】
本開示は、上述の課題を解決するためになされたもので、その目的は、車載ネットワークにおける不正に対して対処する機能を向上させることが可能な車載通信システム、スイッチ装置、検証方法および検証プログラムを提供することである。
【0016】
[本開示の効果]
本開示によれば、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0017】
[本願発明の実施形態の説明]
最初に、本発明の実施形態の内容を列記して説明する。
【0018】
(1)本発明の実施の形態に係る車載通信システムは、複数の機能部と、前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備え、前記スイッチ装置は、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う。
【0019】
このような構成により、機能部におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部の通信相手の機能部の検証を行い、被害が拡大することを抑制することができる。したがって、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0020】
(2)好ましくは、前記スイッチ装置は、前記機能部間の通信の関係を示す中継情報を用いて前記中継処理を行い、前記検証処理として、前記不正通信が検知された前記機能部である不正機能部の通信相手の前記機能部を前記中継情報に基づいて特定し、特定した前記機能部を検証する。
【0021】
このような構成により、不正通信を行った機能部と通信を行う機能部を正しくかつ容易に特定し、検証することができる。
【0022】
(3)好ましくは、前記スイッチ装置は、前記検証処理として、前記検証処理において異常であると判定された前記機能部である異常機能部の通信相手の前記機能部である2次機能部をさらに検証する
【0023】
このように段階的に検証を行う構成により、不正または異常状態である可能性がある機能部を特定し、被害が拡大する前に適切な処置を行うことができる。
【0024】
(4)好ましくは、前記車載通信システムは、複数の前記スイッチ装置を備え、前記スイッチ装置は、前記不正機能部および前記検証処理において異常であると判定された前記機能部である異常機能部の少なくともいずれか一方を示すリストを保持する。
【0025】
このような構成により、特定した機能部が示されたリストを用いて各種の処置を容易に行うことができる。
【0026】
(5)より好ましくは、前記スイッチ装置は、前記異常機能部の通信相手の前記機能部である2次機能部が他の前記スイッチ装置に接続されている場合、前記他のスイッチ装置に前記リストを与えて前記2次機能部を検証させる処理を行う。
【0027】
このような構成により、自己のスイッチ装置と直接接続されていない機能部に対して、他のスイッチ装置経由で検証処理を行うことができる。
【0028】
(6)より好ましくは、前記スイッチ装置は、前記リストを更新するたびに更新後の前記リストを他の前記スイッチ装置へ送信する。
【0029】
このような構成により、特定した機能部の情報をスイッチ装置間において常時共有し、より広い範囲の検証処理を行うことができる。
【0030】
(7)好ましくは、前記スイッチ装置は、前記検証処理において、前記機能部から記憶データの検証用データを取得し、取得した前記検証用データを用いて前記機能部を検証する。
【0031】
このような構成により、スイッチ装置において、機能部のファームウェアの改ざん等の異常を検知することができる。
【0032】
(8)好ましくは、前記スイッチ装置は、前記検証処理において、前記機能部から記憶データの認証用データを取得し、取得した前記認証用データを用いて前記機能部を検証する。
【0033】
このような構成により、より簡易な処理でファームウェアの改ざん等の異常を検知することができる。
【0034】
(9)本発明の実施の形態に係るスイッチ装置は、車載通信システムにおいて用いられるスイッチ装置であって、複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部とを備える。
【0035】
このような構成により、機能部におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部の通信相手の機能部の検証を行い、被害が拡大することを抑制することができる。したがって、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0036】
(10)本発明の実施の形態に係る検証方法は、複数の機能部と、前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備える車載通信システムにおける検証方法であって、前記スイッチ装置が、前記機能部による不正通信の検知結果を取得するステップと、前記スイッチ装置が、不正通信が検知された前記機能部である不正機能部の通信相手の前記機能部へ確認要求を送信するステップと、前記不正機能部の通信相手の前記機能部が、前記確認要求に対する応答情報を前記スイッチ装置へ送信するステップとを含む。
【0037】
このような構成により、機能部におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部の通信相手の機能部の検証を行い、被害が拡大することを抑制することができる。したがって、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0038】
(11)本発明の実施の形態に係る検証方法は、複数の機能部間の通信データを中継する中継処理を行うスイッチ装置における検証方法であって、前記機能部による不正通信の検知結果を取得するステップと、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行うステップとを含む。
【0039】
このような構成により、機能部におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部の通信相手の機能部の検証を行い、被害が拡大することを抑制することができる。したがって、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0040】
(12)本発明の実施の形態に係る検証プログラムは、スイッチ装置において用いられる検証プログラムであって、コンピュータを、複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部、として機能させるためのプログラムである。
【0041】
このような構成により、機能部におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部の通信相手の機能部の検証を行い、被害が拡大することを抑制することができる。したがって、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0042】
以下、本発明の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。また、以下に記載する実施の形態の少なくとも一部を任意に組み合わせてもよい。
【0043】
[構成および基本動作]
図1は、本発明の実施の形態に係る車載通信システムの構成を示す図である。
【0044】
図1を参照して、車載通信システム301は、スイッチ装置101A,101Bと、機能部111C,111D,111E,111Fとを備える。車載通信システム301は、車両1に搭載される。
【0045】
以下、スイッチ装置101A,101Bの各々を、スイッチ装置101とも称する。また、機能部111C,111D,111E,111Fの各々を、機能部111とも称する。
【0046】
なお、車載通信システム301は、2つのスイッチ装置101を備える構成に限らず、1つ、または3つ以上のスイッチ装置101を備える構成であってもよい。
【0047】
なお、車載通信システム301は、4つの機能部111を備える構成に限らず、2つ、3つ、4つまたは6つ以上の機能部111を備える構成であってもよい。
【0048】
機能部111は、たとえば、自動運転ECU(Electronic Control Unit)、運転支援装置およびセンサ等であり、スイッチ装置101と通信を行うことが可能である。
【0049】
車両1の車載ネットワークにおける各スイッチ装置101および各機能部111の接続関係は、たとえば固定されている。
【0050】
スイッチ装置101および機能部111は、たとえば、車載のイーサネット(登録商標)通信用のケーブル(以下、イーサネットケーブルとも称する。)10により互いに接続されている。
【0051】
スイッチ装置101および機能部111は、イーサネットケーブル10を用いて互いに通信する。スイッチ装置101および機能部111間では、たとえば、IEEE802.3に従うイーサネットフレームを用いて通信データのやり取りが行われる。
【0052】
図2は、本発明の実施の形態に係る車載通信システムにおける各装置のVID、MACアドレスおよびIPアドレスの一例を示す図である。
【0053】
図2を参照して、車載ネットワークにおいて、たとえば、機能部111C,111Dと機能部111E,111Fとは、互いに異なるVLAN(Virtual Local Area Network)に属する。
【0054】
この例では、機能部111C,111Dの属するVLANのID(以下、VIDとも称する。)は、1である。また、機能部111E,111Fの属するVIDは、2である。
【0055】
スイッチ装置101および機能部111は、固有のMAC(Media Access Control)アドレスおよびIP(Internet Protocol)アドレスを有する。
【0056】
再び図1を参照して、スイッチ装置101は、車載ネットワークにおける各機能部111間のデータを中継する中継処理を行う。
【0057】
より詳細には、スイッチ装置101は、たとえば、レイヤ2、およびレイヤ2よりも上位のレイヤ3に従って中継処理を行うことが可能である。
【0058】
具体的には、車載ネットワークでは、たとえば、IPプロトコルに従って、IPパケットを用いて情報の送受信が行われる。IPパケットは、イーサネットフレームに格納されて伝送される。
【0059】
スイッチ装置101は、車載ネットワークにおけるデータを中継処理する。具体的には、スイッチ装置101は、各機能部111間で伝送されるイーサネットフレームを中継する。
【0060】
詳細には、スイッチ装置101は、複数のレイヤを有する通信プロトコルに従って動作する。より詳細には、スイッチ装置101は、L2(レイヤ2)スイッチとして機能することが可能であり、同じVLANに属する機能部111間で伝送されるイーサネットフレームを中継する。
【0061】
また、スイッチ装置101は、L3(レイヤ3)中継装置としても機能することが可能であり、異なるVLANに属する機能部111間のイーサネットフレームを中継する。
【0062】
具体的には、機能部111CがIPパケットを機能部111Dへ送信する場合、このIPパケットには、送信元IPアドレスおよび送信先IPアドレスとして、IP-CおよびIP-Dがそれぞれ含まれる。
【0063】
機能部111Cは、自己と機能部111Dとが同じVLANに属していることから、1、MAC-CおよびMAC-Dを、VID、送信元MACアドレスおよび送信先MACアドレスとしてそれぞれイーサネットフレームに書き込む。
【0064】
機能部111Cは、IPパケットを格納したイーサネットフレームをスイッチ装置101Aへ送信する。
【0065】
スイッチ装置101Aは、機能部111Cからイーサネットフレームを受信すると、受信したイーサネットフレームに対してレイヤ2のスイッチ処理を行うことで、イーサネットフレームを機能部111Dへ送信する。
【0066】
また、機能部111CがIPパケットを機能部111Eへ送信する場合、このIPパケットには、送信元IPアドレスおよび送信先IPアドレスとして、IP-CおよびIP-Eがそれぞれ含まれる。
【0067】
機能部111Cは、自己と機能部111Eとが異なるVLANに属していることから、1、デフォルトゲートウェイであるスイッチ装置101AのMACアドレスすなわちMAC-A、およびMAC-Cを、VID、送信先MACアドレスおよび送信元MACアドレスとしてそれぞれイーサネットフレームに書き込む。
【0068】
機能部111Cは、IPパケットを格納したイーサネットフレームをスイッチ装置101Aへ送信する。
【0069】
スイッチ装置101Aは、機能部111Cからイーサネットフレームを受信すると、受信したイーサネットフレームに対してレイヤ3の中継処理を行うことで、イーサネットフレームを機能部111Eへ送信する。
【0070】
[課題]
スイッチ装置101Aは、たとえば、通常と異なるタイミングでデータが送信される等の不正通信を検知することができる。この場合、スイッチ装置101Aは、たとえば機能部111Cと不正通信を検知すると、機能部111Cとの通信を停止する等の処置を行う。
【0071】
しかしながら、この場合、スイッチ装置101Aに接続されている機能部111Dおよびスイッチ装置101Bは、不正通信の影響により不具合を生じる可能性がある。また、スイッチ装置101Bに接続されている機能部111Eおよび機能部111Fも不具合を生じる可能性がある。
【0072】
これに対して、本発明の実施の形態に係るスイッチ装置では、以下のような構成および動作により、上記課題を解決する。
【0073】
[スイッチ装置の構成]
【0074】
図3は、本発明の実施の形態に係る車載通信システムにおけるスイッチ装置の構成を示す図である。
【0075】
図3を参照して、スイッチ装置101は、スイッチ部51と、制御部52と、記憶部53と、複数の通信ポート54と、検証部55とを備える。
【0076】
一例として、図1に示すスイッチ装置101Aは、スイッチ部51Aと、制御部52Aと、記憶部53Aと、複数の通信ポート54Aと、検証部55Aとを備える。スイッチ装置101Bは、スイッチ部51Bと、制御部52Bと、記憶部53Bと、複数の通信ポート54Bと、検証部55Bとを備える。
【0077】
スイッチ装置101における通信ポート54は、たとえばイーサネットケーブル10を接続可能な端子である。なお、通信ポート54は、集積回路の端子であってもよい。
【0078】
複数の通信ポート54の各々は、イーサネットケーブル10を介して複数の機能部111のうちのいずれか1つに接続されている。また、複数の通信ポート54の各々は、たとえばVLANと対応付けられている。
【0079】
スイッチ部51は、機能部111間の通信の関係を示す中継情報を用いて通信データを中継する中継処理を行う。記憶部53は、中継すべき通信データを保持する。
【0080】
図4は、本発明の実施の形態に係るスイッチ装置における中継情報の一例を示す図である。
【0081】
図4を参照して、中継情報Tab1は、通信データの送信元と送信先との対応関係を示す。中継情報Tab1には、送信元IPアドレスであるIP-Cに対応する送信先IPアドレスとしてIP-Dが登録され、送信元IPアドレスであるIP-Dに対応する送信先IPアドレスとしてIP-Eが登録されている。
【0082】
制御部52は、スイッチ部51における中継処理を監視することにより、スイッチ部51において中継される通信データの通信経路を取得して中継情報Tab1に登録する。スイッチ装置101は、中継情報Tab1を記憶部53に保存している。
【0083】
より詳細には、スイッチ部51は、たとえば、L2スイッチとして動作し、同じVLANに属する機能部111間のイーサネットフレームを中継する。
【0084】
具体的には、スイッチ部51は、たとえば、通信ポート54のポート番号とVLANのIDおよび接続先装置のMACアドレスとの対応関係を示すアドレステーブルを保持する。
【0085】
たとえば、スイッチ装置101Aにおいて、スイッチ部51Aは、機能部111Cからイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部53Aに保存するとともにイーサネットフレームの宛先MACアドレスを確認する。
【0086】
このとき、制御部52Aは、スイッチ部51Aが機能部111Cから対応の通信ポート54A経由で受信したイーサネットフレームを記憶部53Aに保存したことを確認すると、記憶部53Aに保存されたイーサネットフレームに含まれる送信元IPアドレスおよび送信先IPアドレス、すなわち、それぞれ送信元IPアドレスとして機能部111CのIPアドレス、および送信先IPアドレスとして機能部111DのIPアドレスを確認する。
【0087】
そして、制御部52Aは、確認したそれぞれのIPアドレスを、「送信元IPアドレス」および「送信先IPアドレス」として中継情報Tab1に登録する。
【0088】
なお、中継情報Tab1では、「送信元IPアドレス」および「送信先IPアドレス」を用いて通信経路が登録されたが、これに限らず、「受信元MACアドレス」および「送信先MACアドレス」、または「受信元の通信ポート54Aのポート番号」および「送信先の通信ポート54Aのポート番号」を用いて通信経路が登録されてもよい。
【0089】
スイッチ部51Aは、アドレステーブルを参照することにより、確認した宛先MACアドレスに対応する通信ポート54Aを特定する。ここでは、スイッチ部51は、機能部111Dに接続される通信ポート54Aを特定する。
【0090】
そして、スイッチ部51は、当該イーサネットフレームを記憶部53Aから取得し、取得したイーサネットフレームを、特定した通信ポート54A経由で機能部111Dへ送信する。
【0091】
また、スイッチ部51は、たとえば、L3スイッチまたはL4スイッチとして動作し、異なるVLANに属する機能部111間の通信データを中継する。
【0092】
具体的には、スイッチ部51は、たとえばVLANのIDとネットワークアドレスとの対応関係を示すネットワークテーブルを保持する。また、スイッチ部51は、たとえば、IPアドレスとMACアドレスとの対応関係を示すARP(Address Resolution Protocol)テーブルをVLANのIDごとに保持する。
【0093】
たとえば、スイッチ装置101Aにおいて、スイッチ部51Aは、機能部111Dからイーサネットフレームを受信すると、宛先MACアドレスが自己のMACアドレスであることを確認し、受信したイーサネットフレームからIPパケットを取り出す。
【0094】
スイッチ部51Aは、ネットワークテーブルを参照することにより、IPパケットに含まれる宛先IPアドレスに対応するVLANのIDを特定する。
【0095】
そして、スイッチ部51Aは、特定したVLANのIDに対応するARPテーブルを参照することにより、宛先IPアドレスに対応するVLANのゲートウェイのMACアドレスを取得する。
【0096】
スイッチ部51Aは、取得したMACアドレスを宛先MACアドレスとして含みかつ当該IPパケットを含むイーサネットフレームを作成して記憶部53に保存する。
【0097】
このとき、制御部52Aは、スイッチ部51Aがイーサネットフレームを記憶部53Aに保存したことを確認すると、記憶部53Aに保存されたイーサネットフレームに含まれる送信元IPアドレスおよび送信先IPアドレス、すなわち、それぞれ送信元IPアドレスとして機能部111DのIPアドレス、および送信先IPアドレスとして機能部111EのIPアドレスを確認する。
【0098】
そして、制御部52Aは、「送信先IPアドレス」および「送信先IPアドレス」として、それぞれ機能部111DのIPアドレスおよび機能部111EのIPアドレスを中継情報Tab1に登録する。
【0099】
スイッチ部51Aは、アドレステーブルを参照することにより、当該宛先MACアドレスに対応する通信ポート54すなわちスイッチ装置101Bに接続される通信ポート54を特定する。
【0100】
そして、スイッチ部51Aは、当該イーサネットフレームを記憶部53から取得し、取得したイーサネットフレームを、特定した通信ポート54経由でスイッチ装置101Bへ送信する。
【0101】
スイッチ装置101Bは、スイッチ装置101Aから送信されたイーサネットフレームに対して、L2スイッチとして動作し、機能部111Eへイーサネットフレームを中継する。
【0102】
また、スイッチ装置101は、機能部111による不正通信を検知した場合、自己に接続されている他の機能部111、すなわち不正通信が検知された機能部111である不正機能部を検証する検証処理を行う。
【0103】
より詳細には、制御部52は、通常と異なるタイミングでデータが送信される等の不正通信を検知することができる。制御部52は、不正通信を検知すると、不正通信を検知した旨および不正通信が検知された通信ポート54のポート番号を示す情報を検証部55へ出力する。
【0104】
検証部55は、スイッチ部51が保持するアドレステーブルを参照し、不正通信が検知された通信ポート54のポート番号から接続先の機能部111のMACアドレスを取得する。
【0105】
そして、検証部55は、スイッチ部51が保持するARPテーブルを参照し、取得したMACアドレスに対応するIPアドレスを取得する。
【0106】
そして、検証部55は、検証処理として、記憶部53において保存されている中継情報Tab1に基づいて、不正機能部の通信相手の機能部111を特定する。
【0107】
以下、このような不正機能部の通信相手である不正機能部以外の機能部111を、1次機能部とも称する。
【0108】
より詳細には、検証部55は、記憶部53において保存されている中継情報Tab1を参照して、取得したIPアドレスすなわち不正機能部のIPアドレスが送信元IPアドレスとして登録されている通信経路の送信先IPアドレスを取得することにより、1次機能部を特定する。
【0109】
検証部55は、特定した1次機能部を検証する。たとえば、検証部55Aは、図1に示す機能部111Cが不正機能部であり、かつ対応する送信先IPアドレスとして機能部111DのIPアドレスが中継情報Tab1に登録されている場合、機能部111Dを検証する。すなわち、検証部55は、機能部111Dが異常であるか否かを判定する。
【0110】
具体的には、検証部55Aは、たとえば、リセットコマンドを含むイーサネットフレームを生成してスイッチ部51Aへ出力する。
【0111】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスとしてMAC-AおよびMAC-Dをそれぞれイーサネットフレームに書き込む。
【0112】
スイッチ部51Aは、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54Aを特定し、特定した通信ポート54Aを介して、検証部55Aから受けたイーサネットフレームを機能部111Dへ送信する。
【0113】
機能部111Dは、リセットコマンドを含むイーサネットフレームを受信して、再起動する。
【0114】
図5は、本発明の実施の形態に係る車載通信システムにおける機能部の構成の一例を示す図である。
【0115】
図5を参照して、機能部111は、プロセッサ21と、FROM(Flash Read Only Memory)26と、DRAM(Dynamic Random Access Memory)27と、通信部28とを備える。プロセッサ21は、内蔵ハードウェア(HW)22と、コア部23と、セキュアROM24とを含む。
【0116】
内蔵ハードウェア22は、たとえば、暗号アクセラレータ等のセキュリティ専用のハードウェアであり、FROM26に保存されたデータが正当であるか否かを検証する。
【0117】
FROM26には、たとえばデータおよびアプリケーションプログラム等を含む対象データTD911と、検証値VV911とが格納されている。FROM26に保存されたデータは書き換え可能である。
【0118】
セキュアROM24は、対象データTD911の検証に用いる第1の暗号鍵が保存され、プロセッサ21の外部からアクセスできない記憶領域である。
【0119】
より詳細には、セキュアROM24は、内蔵ハードウェア22からのアクセスだけが許可されたセキュアな記憶領域である。第1の暗号鍵は、たとえば製品の出荷時にセキュアROM24に格納される。
【0120】
セキュアROM24に格納された第1の暗号鍵は、内蔵ハードウェア22しか取得できず、また、書き換えることができない。
【0121】
より詳細には、セキュアROM24には、機能部111の製造時において、鍵生成ツールによって生成された第1の暗号鍵の一例である検証鍵VK11が検証値検証鍵として格納されている。
【0122】
また、セキュアROM24には、生成鍵GK1が、検証鍵VK11に対応する検証値生成鍵として格納されている。
【0123】
コア部23は、たとえば、機能部111Dが再起動すると、対象データTD911の検証要求を内蔵ハードウェア22へ出力する。
【0124】
内蔵ハードウェア22は、コア部23から検証要求を受けると、受けた検証要求に従って、セキュアROM24から検証鍵VK11および生成鍵GK1を取得する。
【0125】
また、内蔵ハードウェア22は、検証要求に従って、FROM26から対象データTD911および検証値VV911を取得する。
【0126】
内蔵ハードウェア22は、取得した対象データTD911、検証鍵VK11、生成鍵GK1および検証値VV911を用いて対象データTD911を検証する。
【0127】
より詳細には、内蔵ハードウェア22は、生成鍵GK1および対象データTD911からハッシュ関数HF1を用いて対象データTD911のダイジェストを生成する。また、内蔵ハードウェア22は、検証鍵VK11を用いて検証値VV911を復号化することによってダイジェストを生成する。
【0128】
内蔵ハードウェア22は、生成した各ダイジェストを照合し、これらが一致している場合、対象データTD911が正当であると判断し、また、これらが一致しない場合、対象データTD911が不正であると判断する。
【0129】
たとえば、不正通信の影響により、FROM26保存されたファームウェア等のデータが改ざんされた場合、各ダイジェストは一致しないため、内蔵ハードウェア22は、自己の機能部111の異常を検知することができる。
【0130】
そして、内蔵ハードウェア22は、判断結果を示す検証結果情報を、たとえば、FROM26に保存するとともにコア部23へ出力する。
【0131】
コア部23は、内蔵ハードウェア22から検証結果情報を受けると、FROM26から対象データTD911を取得する。
【0132】
コア部23は、ブートローダーおよびOSプログラムを実行することにより、OSプログラムに従って動作し自己の機能部111を初期状態に遷移させる。
【0133】
たとえば、機能部111Dが初期状態に遷移すると、機能部111Dは、スイッチ装置101Aとの通信が可能となる。
【0134】
スイッチ装置101Aは、機能部111との通信が可能になることにより、機能部111による再起動の完了を検知する。そして、スイッチ装置101Aは、機能部111Dに確認要求を送信する。
【0135】
より詳細には、検証部55Aは、検証結果情報を要求する旨を示す検証結果要求を確認要求として含むイーサネットフレームを生成してスイッチ部51Aへ出力する。
【0136】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスをそれぞれイーサネットフレームに書き込み、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54を特定し、特定した通信ポート54を介して、検証部55Aから受けたイーサネットフレームを機能部111Dへ送信する。
【0137】
機能部111Dにおける通信部28は、スイッチ装置101Aから検証結果要求を含むイーサネットフレームを受信すると、イーサネットフレームに含まれる検証結果要求を取得し、プロセッサ21へ出力する。
【0138】
プロセッサ21におけるコア部23は、通信部28から検証結果要求を受けると、検証結果情報をFROM26から取得して通信部28へ出力する。
【0139】
通信部28は、コア部23から受けた検証結果情報を含むイーサネットフレームを生成してスイッチ装置101Aへ送信する。
【0140】
スイッチ装置101Aは、機能部111Dから送信されたイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部53Aに保存する。
【0141】
検証部55Aは、記憶部53Aに保存されたイーサネットフレームに含まれる検証結果情報を確認することにより、機能部111Dが異常であるか否かを判定する。
【0142】
スイッチ装置101Aは、検証処理において異常であると判定された機能部111である異常機能部および不正通信が検知された機能部111である不正機能部の少なくともいずれか一方を示すリストを保持する。以下、このようなリストを管理リストとも称する。
【0143】
より詳細には、スイッチ装置101Aにおいて、検証部55Aは、スイッチ部51Aが保持するアドレステーブルを参照し、不正通信を検知した通信ポート54Aのポート番号から接続先の機能部111のMACアドレスを取得して管理リストを作成するか、または取得したMACアドレスを作成済みの管理リストに登録することにより管理リストを更新し、当該管理リストを記憶部53Aに保存する。
【0144】
また、検証部55Aは、異常機能部のMACアドレスを管理リストに登録することにより、管理リストを更新する。
【0145】
図6は、本発明の実施の形態に係る管理リストの一例を示す図である。
【0146】
図6を参照して、管理リストには、たとえば図1に示す機能部111Cおよび機能部111Dの各々のMACアドレスであるMAC-CおよびMAC-Dが登録されている。
【0147】
たとえば、機能部111Cは、不正機能部であり、機能部111Dは、異常機能部である。
【0148】
検証部55Aは、管理リストを更新するたびに更新後の管理リストを他のスイッチ装置へ送信する。たとえば、図1に示すスイッチ装置101Aは、スイッチ装置101Bに接続されているため、更新後の管理リストAをスイッチ装置101Bへ送信する。
【0149】
より詳細には、検証部55Aは、更新後の管理リストAを含むイーサネットフレームを生成してスイッチ部51へ出力する。更新後の管理リストAには、たとえば図6に示すように、不正機能部として機能部111Cが登録され、異常機能部として機能部111Dが登録されている。
【0150】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスとしてMAC-AおよびMAC-Bをそれぞれイーサネットフレームに書き込む。
【0151】
スイッチ部51Aは、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54Aを特定し、特定した通信ポート54Aを介して、検証部55Aから受けたイーサネットフレームをスイッチ装置101Bへ送信する。
【0152】
スイッチ装置101Bにおいて、スイッチ部51Bは、スイッチ装置101Aから管理リストAを含むイーサネットフレームを受信すると、受信したイーサネットフレームに含まれる管理リストAを記憶部53Bに保存する。
【0153】
なお、検証部55は、スイッチ装置101Bが既に管理リストBを記憶部53Bに保存していた場合、管理リストAおよび管理リストBのマージを行うことにより新たな管理リストCを作成する。
【0154】
スイッチ装置101Bは、作成した管理リストCをスイッチ装置101A等の他のスイッチ装置101へ送信する。
【0155】
また、スイッチ装置101Aは、検証処理において異常であると判定された機能部111である異常機能部の通信相手の機能部111である2次機能部が他のスイッチ装置101に接続されている場合、他のスイッチ装置101に管理リストを与えて2次機能部を検証させる処理を行う。
【0156】
具体的には、たとえば、検証部55Aは、管理リストAに異常機能部として登録されている機能部111Dの通信相手を特定する。
【0157】
検証部55Aは、管理リストAを参照して機能部111DのMACアドレスを取得する。検証部55Aは、ARPテーブルを参照し、取得したMACアドレスに対応するIPアドレスを取得する。検証部55Aは、図4に示す中継情報Tab1を参照することにより、取得したIPアドレスが送信元IPアドレスとして登録されている通信経路の、送信先IPアドレスである機能部111EのIPアドレスを取得する。
【0158】
検証部55Aは、アドレステーブル、ARPテーブル、およびネットワークテーブルを参照して、送信先IPアドレスに対応する機能部111Eがスイッチ装置101Aに接続されておらずスイッチ装置101Bに接続されていることを確認する。
【0159】
そして、検証部55Aは、管理リストAをスイッチ装置101Bへ送信する。より詳細には、検証部55Aは、管理リストAを含むイーサネットフレームを生成してスイッチ部51へ出力する。
【0160】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスとしてMAC-AおよびMAC-Bをそれぞれイーサネットフレームに書き込む。
【0161】
スイッチ部51Aは、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54Aを特定し、特定した通信ポート54Aを介して、検証部55Aから受けたイーサネットフレームをスイッチ装置101Bへ送信する。
【0162】
スイッチ装置101Bにおいて、スイッチ部51Bは、スイッチ装置101Aから管理リストAを含むイーサネットフレームを受信して、イーサネットフレームに含まれる管理リストAを記憶部53Bに保存する。
【0163】
検証部55Bは、記憶部53Bに保存された管理リストAを参照し、管理リストAに登録されている不正機能部および異常機能部に相当するMACアドレスを取得する。検証部55Bは、ARPテーブルを参照し、取得したMACアドレスに対応するIPアドレスを取得する。そして、検証部55Bは、取得したIPアドレスが記憶部53Bに保存されている中継情報Tab2において送信元IPアドレスとして登録されている機能部111を検索する。
【0164】
図7は、本発明の実施の形態に係るスイッチ装置における中継情報の他の例を示す図である。
【0165】
図7を参照して、記憶部53Bに保存されている中継情報Tab2には、送信元IPアドレスとしてIP-D、および送信先IPアドレスとしてIP-Eが登録されている。
【0166】
具体的には、検証部55Bは、管理リストAに異常機能部として機能部111Dが登録されているため、中継情報Tab2を参照して、IP-Dが送信元IPアドレスとして登録されているかを検索する。
【0167】
検証部55Bは、IP-Dが送信元IPアドレスとして登録されている通信経路の送信先IPアドレスであるIP-Eを取得することにより、機能部111Eを2次機能部と特定する。
【0168】
そして、検証部55Bは、検証処理として、2次機能部と特定した機能部111Eをさらに検証する。検証部55Bは、機能部111Eの検証処理において、機能部111Eが異常であると判定した場合、機能部111Eを異常機能部として管理リストAに登録することにより、管理リストAを更新する。
【0169】
そして、検証部55Bは、更新後の管理リストAをスイッチ装置101Aへ送信する。
【0170】
また、検証部55Bは、上記と同様の処理により、異常機能部と特定した機能部111Eの2次機能部を検索する。そして、検証部55Bは、2次機能部が存在した場合、当該2次機能部を検証する。
【0171】
検証部55Bは、管理リストAに登録されているすべての異常機能部に対する2次機能部を検証するまで、上記処理を継続する。
【0172】
なお、検証部55Bは、上記の検証処理が終了した後に管理リストを作成し、不正機能部および異常機能部を登録してもよい。
【0173】
[変形例1]
スイッチ装置101は、検証処理において、機能部111から記憶データの検証用データを取得し、取得した検証用データを用いて当該機能部111を検証する。
【0174】
車載通信システム301では、スイッチ装置101は、たとえば機能部111が図5に示すセキュアROM24を含まない場合、機能部111から記憶データの検証用データを取得し、取得した検証用データを用いて当該機能部111を検証する。
【0175】
より詳細には、スイッチ装置101は、たとえば機能部111の製造時、および機能部のファームウェアの更新時等において、機能部111のファームウェアの書き込みを行う。
【0176】
スイッチ装置101は、ハッシュ関数を用いて、書き込むファームウェアのハッシュ値を算出する。また、スイッチ装置101は、書き込むファームウェアのチェックサムを算出する。
【0177】
スイッチ装置101は、算出したハッシュ値およびチェックサムを機能部111と関連付けて記憶部53に保持する。
【0178】
図8は、本発明の実施の形態に係るスイッチ装置の保持するチェック値テーブルの一例を示す図である。
【0179】
図8を参照して、たとえば、スイッチ装置101Aが機能部111Cに書き込んだファームウェアのハッシュ値およびチェックサムは、それぞれHASH-CおよびSUM-Cであり、スイッチ装置101Aが機能部111Dに書き込んだファームウェアのハッシュ値およびチェックサムは、それぞれHASH-DおよびSUM-Dである。
【0180】
スイッチ装置101Aは、検証処理において、たとえば機能部111Dにリセットコマンドを送信して機能部111Dを強制的に再起動させる。
【0181】
機能部111Dは、再起動が完了して初期状態に遷移すると、スイッチ装置101Aとの通信が可能となる。
【0182】
スイッチ装置101Aは、機能部111Dとの通信が可能になることにより、機能部111Dによる再起動の完了を検知する。そして、スイッチ装置101Aは、機能部111Dに確認要求を送信する。
【0183】
より詳細には、検証部55Aは、検証用データを要求する旨の検証用データ要求を確認要求として含むイーサネットフレームを生成してスイッチ部51Aへ出力する。
【0184】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスそれぞれイーサネットフレームに書き込み、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54を特定し、特定した通信ポート54を介して、検証部55Aから受けたイーサネットフレームを機能部111Dへ送信する。
【0185】
機能部111Dにおける通信部28は、スイッチ装置101Aから検証用データ要求を含むイーサネットフレームを受信すると、イーサネットフレームに含まれる検証用データ要求を取得し、プロセッサ21へ出力する。
【0186】
プロセッサ21におけるコア部23は、通信部28から検証用データ要求を受けると、たとえばFROM26に保存されている検証用データである自己に書き込まれたファームウェアのハッシュ値およびチェックサムを取得して通信部28へ出力する。
【0187】
通信部28は、コア部23から受けた検証用データを含むイーサネットフレームを生成してスイッチ装置101Aへ送信する。
【0188】
スイッチ装置101Aは、機能部111Dから送信されたイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部53Aに保存する。
【0189】
検証部55Aは、記憶部53Aに保存されたイーサネットフレームに含まれるハッシュ値およびチェックサムを取得する。
【0190】
検証部55Aは、取得したハッシュ値およびチェックサムと記憶部53Aに保存されたチェック値テーブルのハッシュ値およびチェックサムをそれぞれ照合する。
【0191】
検証部55Aは、照合したハッシュ値およびチェックサムが一致しない場合、対応する機能部111を異常であると判定する。
【0192】
[変形例2]
スイッチ装置101は、検証処理において、機能部111から記憶データの認証用データを取得し、取得した認証用データを用いて当該機能部111を検証する。
【0193】
より詳細には、たとえば、スイッチ装置101Aは、検証処理において、機能部111Dにリセットコマンドを送信して機能部111Dを強制的に再起動させる。
【0194】
機能部111Dは、再起動が完了して初期状態に遷移すると、スイッチ装置101Aとの通信が可能となる。
【0195】
スイッチ装置101Aは、機能部111Dとの通信が可能になることにより、機能部111Dによる再起動の完了を検知する。そして、スイッチ装置101Aは、機能部111Dに確認要求を送信する。
【0196】
より詳細には、スイッチ装置101Aは、所定のプロトコルを用いて、たとえばIDおよびパスワードによる認証を要求する。
【0197】
より詳細には、検証部55Aは、認証用データを要求する旨の認証用データ要求を確認要求として含むイーサネットフレームを生成してスイッチ部51Aへ出力する。
【0198】
スイッチ部51Aは、送信元MACアドレスおよび送信先MACアドレスそれぞれイーサネットフレームに書き込み、アドレステーブルを参照することにより、送信先MACアドレスに対応する通信ポート54を特定し、特定した通信ポート54を介して、検証部55Aから受けたイーサネットフレームを機能部111Dへ送信する。
【0199】
機能部111Dにおける通信部28は、スイッチ装置101Aから認証用データ要求を含むイーサネットフレームを受信すると、イーサネットフレームに含まれる認証用データ要求を取得し、プロセッサ21へ出力する。
【0200】
プロセッサ21におけるコア部23は、通信部28から認証用データ要求を受けると、たとえばFROM26に保存されている認証用データであるIDおよびパスワードを取得して通信部28へ出力する。
【0201】
通信部28は、コア部23から受けた認証用データを含むイーサネットフレームを生成してスイッチ装置101Aへ送信する。
【0202】
スイッチ装置101Aは、機能部111Dから送信されたイーサネットフレームを受信すると、受信したイーサネットフレームを記憶部53Aに保存する。
【0203】
検証部55Aは、保存されたイーサネットフレームに含まれるIDおよびパスワードを取得し、取得したIDおよびパスワードを用いて、機能部111Dの認証を行う。検証部55Aは、再認証できない場合、機能部111Dを異常であると判定する。
【0204】
[動作の流れ]
車載通信システム301における各装置は、コンピュータを備え、当該コンピュータにおけるCPU等の演算処理部は、以下のシーケンス図またはフローチャートの各ステップの一部または全部を含むプログラムを図示しないメモリからそれぞれ読み出して実行する。これら複数の装置のプログラムは、それぞれ、外部からインストールすることができる。これら複数の装置のプログラムは、それぞれ、記録媒体に格納された状態で流通する。
【0205】
図9は、本発明の実施の形態に係る車載通信システムにおいて不正通信を検証する処理のシーケンスを示す図である。図9は、スイッチ装置101Aおよびスイッチ装置101Bが不正通信を検証する処理を代表的に示す。
【0206】
図9を参照して、まず、スイッチ装置101Aは、自己の通信ポート54において不正通信を検知する(ステップS101)。
【0207】
次に、スイッチ装置101Aは、不正通信における送信元である不正機能部を機能部111Cと特定する(ステップS102)。
【0208】
次に、スイッチ装置101Aは、中継情報Tab1を参照して1次機能部を検索し、機能部111Dを1次機能部と特定する(ステップS103)。
【0209】
次に、スイッチ装置101Aは、機能部111Dへリセットコマンドを送信する。(ステップS104)。
【0210】
次に、機能部111Dは、受信したリセットコマンドにより再起動する。機能部111Dは、再起動が完了して初期状態に遷移すると、スイッチ装置101Aとの通信が可能となる(ステップS105)。
【0211】
次に、スイッチ装置101Aは、機能部111Dによる再起動の完了を検知すると、検証結果情報、検証用データまたは認証用データの各種データを要求する確認要求を機能部111Dへ送信する(ステップS106)。
【0212】
次に、機能部111Dは、検証結果情報、検証用データまたは認証用データをスイッチ装置101Aへ送信する(ステップS107)。
【0213】
次に、スイッチ装置101Aは、検証結果情報、検証用データまたは認証用データを確認することにより、機能部111Dが異常機能部であると判定する(ステップS108)。
【0214】
次に、スイッチ装置101Aは、異常機能部の通信相手の機能部111である2次機能部を検索し、機能部111Eを2次機能部と特定する(ステップS109)。
【0215】
次に、スイッチ装置101Aは、中継情報Tab1を参照して機能部111Eがスイッチ装置101Bに接続されていることを確認し、不正機能部である機能部111C、および異常機能部である機能部111Dを管理リストに登録する(ステップS110)。
【0216】
次に、スイッチ装置101Aは、管理リストをスイッチ装置101Bへ送信する(ステップS111)。
【0217】
次に、スイッチ装置101Bは、受信した管理リスト、および中継情報Tab2を参照して1次機能部、および2次機能部を検索することにより、機能部111Eを2次機能部と特定する(ステップS112)。
【0218】
次に、スイッチ装置101Bは、機能部111Eへリセットコマンドを送信する。(ステップS113)。
【0219】
次に、機能部111Eは、受信したリセットコマンドにより再起動する。機能部111Eは、再起動が完了して初期状態に遷移すると、スイッチ装置101Bとの通信が可能となる(ステップS114)。
【0220】
次に、スイッチ装置101Bは、機能部111Eによる再起動の完了を検知すると、検証結果情報、検証用データまたは認証用データの各種データを要求する確認要求を機能部111Eへ送信する(ステップS115)。
【0221】
次に、機能部111Eは、検証結果情報、検証用データまたは認証用データをスイッチ装置101Bへ送信する(ステップS116)。
【0222】
次に、スイッチ装置101Bは、検証結果情報、検証用データまたは認証用データを確認することにより、機能部111Eが異常機能部であると判定する(ステップS117)。
【0223】
次に、スイッチ装置101Bは、機能部111Eを管理リストに登録する(ステップS118)。
【0224】
次に、スイッチ装置101Bは、管理リストをスイッチ装置101Aへ送信する(ステップS119)。
【0225】
図10は、本発明の実施の形態に係るスイッチ装置が不正通信を検証する検証処理を行う際の動作手順を定めたフローチャートである。
【0226】
図10を参照して、まず、スイッチ装置101は、自己の通信ポート54において不正通信を検知する(ステップS201)。
【0227】
次に、スイッチ装置101は、不正通信における送信元である不正機能部を特定する(ステップS202)。
【0228】
次に、スイッチ装置101は、中継情報Tab1を参照し、1次機能部を検索する(ステップS203)。
【0229】
次に、スイッチ装置101は、1次機能部が存在しない場合(ステップS203でNO)、管理リストを生成または更新し(ステップS209)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0230】
一方、スイッチ装置101は、1次機能部が存在し(ステップS203でYES)、かつ1次機能部が他のスイッチ装置101に接続されている場合(ステップS204でNO)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0231】
一方、スイッチ装置101は、1次機能部が自己のスイッチ装置101に接続されている場合(ステップS204でYES)、1次機能部を検証する(ステップS205)。
【0232】
次に、スイッチ装置101は、検証処理において、1次機能部が正常であると判定した場合(ステップS205でNO)、管理リストを生成または更新し(ステップS209)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0233】
一方、スイッチ装置101は、検証処理において、1次機能部が異常であると判定した場合(ステップS205でYES)、中継情報Tab1を参照し、異常機能部の通信相手の機能部111である2次機能部を検索する(ステップS206)。
【0234】
次に、スイッチ装置101は、2次機能部が存在しない場合(ステップS206でNO)、管理リストを生成または更新し(ステップS209)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0235】
一方、スイッチ装置101は、2次機能部が存在し(ステップS206でYES)、かつ2次機能部が他のスイッチ装置101に接続されている場合(ステップS207でNO)、管理リストを生成または更新し(ステップS209)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0236】
一方、スイッチ装置101は、2次機能部が自己のスイッチ装置101に接続されている場合(ステップS207でYES)、2次機能部を検証する(ステップS208)。
【0237】
次に、スイッチ装置101は、検証処理において、2次機能部が正常であると判定した場合(ステップS208でNO)、管理リストを生成または更新し(ステップS209)、管理リストを他のスイッチ装置101へ送信する(ステップS210)。
【0238】
一方、スイッチ装置101は、検証処理において、2次機能部が異常であると判定した場合(ステップS208でYES)、中継情報Tab1を参照し、異常機能部の通信相手の機能部111である2次機能部を検索する(ステップS206)。
【0239】
なお、本発明の実施の形態に係るスイッチ装置では、制御部52が不正通信を検知する構成であるとしたが、これに限定するものではない。スイッチ装置101は、たとえば自己に接続された他のスイッチ装置101または機能部111から不正通信を検知した旨の情報を取得する構成であってもよい。この場合、制御部52は、不正通信を検知した旨の情報を取得すると、当該情報を検証部55へ出力する。
【0240】
また、本発明の実施の形態に係るスイッチ装置では、検証部55は、検証処理として、機能部111が異常であるか否かを判定する構成であるとしたが、これに限定するものではない。検証部55は、検証処理として、機能部111が異常である可能性を判定する構成であってもよい。
【0241】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、中継情報に基づいて1次機能部を特定し、当該1次機能部を検証する構成であるとしたが、これに限定するものではない。スイッチ装置101は、中継情報を用いず、たとえば自己に接続されているすべての機能部111を検証する構成であってもよい。
【0242】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、2次機能部をさらに検証する構成であるとしたが、これに限定するものではない。スイッチ装置101は、1次機能部の検証にとどめる構成であってもよい。
【0243】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、管理リストを保持する構成であるとしたが、これに限定するものではない。スイッチ装置101は、管理リストを保持せずに検証処理を行う構成であってもよい。
【0244】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、管理リストを自己に接続されている他のスイッチ装置101に送信し、他のスイッチ装置101に接続されている機能部111を検証させる構成であるとしたが、これに限定するものではない。スイッチ装置101は、他のスイッチ装置101へ管理リストを送信しない構成であってもよい。
【0245】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、管理リストを更新するたびに管理リストを他のスイッチ装置へ送信する構成であるとしたが、これに限定するものではない。スイッチ装置101は、所定のタイミングで管理リストを他のスイッチ装置へ送信する構成であってもよい。
【0246】
ところで、車載ネットワークにおいて不正状態が発生した場合に適切に対処可能な技術が望まれる。
【0247】
これに対して、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、複数の機能部111間の通信データを中継する中継処理を行う。そして、スイッチ装置101は、機能部111による不正通信が検知された場合、不正通信が検知された機能部111である不正機能部以外の機能部111を検証する検証処理を行う。
【0248】
このような構成により、機能部111におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部111の通信相手の機能部111の検証を行い、被害が拡大することを抑制することができる。
【0249】
したがって、本発明の実施の形態に係る車載通信システムでは、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0250】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、機能部111間の通信の関係を示す中継情報を用いて中継処理を行い、検証処理として、不正通信が検知された機能部111である不正機能部の通信相手の機能部111を中継情報に基づいて特定し、特定した機能部111を検証する。
【0251】
このような構成により、不正通信を行った機能部111と通信を行う機能部111を正しくかつ容易に特定し、検証することができる。
【0252】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、検証処理として、当該検証処理において異常であると判定された機能部111である異常機能部の通信相手の機能部111である2次機能部をさらに検証する。
【0253】
このように段階的に検証を行う構成により、不正または異常状態である可能性がある機能部111を特定し、被害が拡大する前に適切な処置を行うことができる。
【0254】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、不正通信が検知された機能部111である不正機能部および検証処理において異常であると判定された機能部111である異常機能部の少なくともいずれか一方を示す管理リストを保持する。
【0255】
このような構成により、特定した機能部111が示された管理リストを用いて各種の処置を容易に行うことができる。
【0256】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、検証処理において異常であると判定された機能部111である異常機能部の通信相手の機能部111である2次機能部が他のスイッチ装置101に接続されている場合、他のスイッチ装置101に管理リストを与えて2次機能部を検証させる処理を行う。
【0257】
このような構成により、自己のスイッチ装置101と直接接続されていない機能部111に対して、他のスイッチ装置101経由で検証処理を行うことができる。
【0258】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、管理リストを更新するたびに更新後の管理リストを他のスイッチ装置101へ送信する。
【0259】
このような構成により、特定した機能部111の情報をスイッチ装置101間において常時共有し、より広い範囲の検証処理を行うことができる。
【0260】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、検証処理において、機能部111から記憶データの検証用データを取得し、取得した検証用データを用いて機能部111を検証する。
【0261】
このような構成により、スイッチ装置101において、機能部111のファームウェアの改ざん等の異常を検知することができる。
【0262】
また、本発明の実施の形態に係る車載通信システムでは、スイッチ装置101は、検証処理において、機能部111から記憶データの認証用データを取得し、取得した認証用データを用いて機能部111を検証する。
【0263】
このような構成により、より簡易な処理でファームウェアの改ざん等の異常を検知することができる。
【0264】
また、本発明の実施の形態に係るスイッチ装置では、スイッチ部51は、複数の機能部間の通信データを中継する中継処理を行う。検証部55は、機能部111による不正通信が検知された場合、不正通信が検知された機能部111である不正機能部以外の機能部111を検証する検証処理を行う。
【0265】
このような構成により、機能部111におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部111の通信相手の機能部111の検証を行い、被害が拡大することを抑制することができる。
【0266】
したがって、本発明の実施の形態に係るスイッチ装置では、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0267】
また、本発明の実施の形態に係る車載通信システムにおける検証方法では、まず、スイッチ装置101が、機能部111による不正通信の検知結果を取得する。次に、スイッチ装置101が、不正通信が検知された機能部111である不正機能部の通信相手の機能部111へ確認要求を送信する。次に、当該不正機能部の通信相手の機能部111が、確認要求に対する応答情報をスイッチ装置101へ送信する。
【0268】
このような構成により、機能部111におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部111の通信相手の機能部111の検証を行い、被害が拡大することを抑制することができる。
【0269】
したがって、本発明の実施の形態に係る車載通信システムにおける検証方法では、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0270】
また、本発明の実施の形態に係るスイッチ装置における検証方法では、まず、機能部111による不正通信の検知結果を取得する。次に、機能部111による不正通信が検知された場合、不正通信が検知された機能部111である不正機能部以外の機能部111を検証する検証処理を行う。
【0271】
このような構成により、機能部111におけるファームウェアの不正な書き換え等により不正通信が行われた場合、不正または異常状態である可能性がある当該機能部111の通信相手の機能部111の検証を行い、被害が拡大することを抑制することができる。
【0272】
したがって、本発明の実施の形態に係るスイッチ装置における検証方法では、車載ネットワークにおける不正に対して対処する機能を向上させることができる。
【0273】
上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0274】
以上の説明は、以下に付記する特徴を含む。
[付記1]
複数の機能部と、
前記機能部間の通信データを中継する中継処理を行う1または複数のスイッチ装置とを備え、
前記スイッチ装置は、前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行い、
前記スイッチ装置は、前記検証処理として、確認要求を前記不正機能部以外の機能部へ送信し、前記不正機能部以外の機能部から自己のデータが正当であるか否かの判断結果を示す情報を受信する、車載通信システム。
【0275】
[付記2]
車載通信システムにおいて用いられるスイッチ装置であって、
複数の機能部間の通信データを中継する中継処理を行うスイッチ部と、
前記機能部による不正通信が検知された場合、不正通信が検知された前記機能部である不正機能部以外の前記機能部を検証する検証処理を行う検証部とを備え、
前記検証部は、前記検証処理として、確認要求を前記スイッチ部経由で前記不正機能部以外の機能部へ送信し、
前記スイッチ部は、前記不正機能部以外の機能部から自己のデータが正当であるか否かの判断結果を示す情報を受信する、スイッチ装置。
【符号の説明】
【0276】
1 車両
10 イーサネットケーブル
21 プロセッサ
22 内蔵HW
23 コア部
24 セキュアROM
26 FROM
27 DRAM
28 通信部
51 スイッチ部
52 制御部
53 記憶部
54 通信ポート
55 検証部
101 スイッチ装置
111 機能部
301 車載通信システム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10