JP7631007B2 - 電子制御装置、車載制御システム、及び冗長機能制御方法 - Google Patents

電子制御装置、車載制御システム、及び冗長機能制御方法 Download PDF

Info

Publication number
JP7631007B2
JP7631007B2 JP2021009152A JP2021009152A JP7631007B2 JP 7631007 B2 JP7631007 B2 JP 7631007B2 JP 2021009152 A JP2021009152 A JP 2021009152A JP 2021009152 A JP2021009152 A JP 2021009152A JP 7631007 B2 JP7631007 B2 JP 7631007B2
Authority
JP
Japan
Prior art keywords
control device
function
electronic control
attack
redundant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021009152A
Other languages
English (en)
Other versions
JP2022113050A (ja
Inventor
桃伽 粕谷
裕紀 山▲崎▼
幹雄 片岡
伸義 森田
恒太 井手口
康広 藤井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2021009152A priority Critical patent/JP7631007B2/ja
Priority to PCT/JP2021/031408 priority patent/WO2022158020A1/ja
Priority to US18/273,338 priority patent/US20240140448A1/en
Publication of JP2022113050A publication Critical patent/JP2022113050A/ja
Application granted granted Critical
Publication of JP7631007B2 publication Critical patent/JP7631007B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/023Avoiding failures by using redundant parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/04Monitoring the functioning of the control system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Debugging And Monitoring (AREA)
  • Safety Devices In Control Systems (AREA)

Description

本発明は、電子制御装置、車載制御システム、及び冗長機能制御方法に関し、自動車の車載制御システムに搭載される電子制御装置、車載制御システム、及び冗長機能制御方法に適用して好適なものである。
従来、車載システムでは、システムの失陥時でも運転手の安全性を保障するために、何らかの失陥が発生した場合に備えて、運転を継続できるような冗長機能をシステム内に配置している。
上記のような車載システムの失陥に対応する技術として、例えば特許文献1には、故障によって電子制御装置の機能が正常に動作しなくなった場合でも自動車の走行を継続するために、正常時の機能(正常系)に加えて、正常時と同様の機能を冗長機能(冗長系)として備え、故障時には冗長機能を稼働させる方法が開示されている。
特開2005-332064号公報
ところで、近年では、車載ネットワークが外部ネットワーク(例えば、インターネットやWiFi(登録商標))に接続され、ユーザの利便性が向上した反面、従来の車載システムでは考えられていなかった車外からのサイバー攻撃(セキュリティ攻撃)によって電子制御装置(ECU:Electronic Control Unit)が失陥する危険性が指摘されるようになった。
しかし、特許文献1に開示された技術では、セキュリティ攻撃によって機能が停止する場合を考慮しておらず、自動車の走行を継続するために冗長系を稼働させることで、運転手を危険に晒す可能性があった。すなわち、セキュリティ攻撃によって正常系の機能が停止する場合には、正常系と同様の機能を有する冗長系もセキュリティ攻撃を受ける可能性があるが、特許文献1ではこのような危険性が考慮されていなかった。
本発明は以上の点を考慮してなされたもので、正常な動作ができない場合の原因がセキュリティ攻撃に起因するか否かを区別して適切な対処方法を決定することにより、安全性を確保しながら、車載制御システムによる自動車の走行制御(例えば自動運転)を継続できるようにするものであり、自動車の走行制御を維持しつつ、冗長系起動時のセキュリティ上の安全性を向上させることができる電子制御装置、車載制御システム、及び冗長機能制御方法を提案しようとするものである。
かかる課題を解決するため本発明においては、自動車の走行制御を行う車載制御システムに搭載され、第1の制御装置及び第2の制御装置を含む複数の制御装置と通信可能に接続される電子制御装置であって、前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定部と、前記攻撃判定部による判定結果に基づいて、前記第1の制御装置が担っていた機能と同様またはその一部の機能による冗長機能を、前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定部と、前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視部と、を備え、前記機能監視部が前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、前記冗長系実行判定部は、前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる電子制御装置が提供される。
また、かかる課題を解決するため本発明においては、自動車の走行制御を行う車載制御システムであって、所定の機能を有する第1の制御装置と、前記機能と同様またはその一部の機能による冗長機能を有する第2の制御装置と、を含む複数の制御装置と、前記複数の制御装置と通信可能に接続される電子制御装置と、を備え、前記電子制御装置が、前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定部と、前記攻撃判定部による判定結果に基づいて、前記第1の制御装置が担っていた前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定部と、前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視部と、を有し、前記機能監視部が前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、前記冗長系実行判定部は、前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる車載制御システムが提供される。
また、かかる課題を解決するため本発明においては、自動車の走行制御を行う車載制御システムに搭載され、第1の制御装置及び第2の制御装置を含む複数の制御装置と通信可能に接続される電子制御装置による冗長機能制御方法であって、前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定ステップと、前記攻撃判定ステップの判定結果に基づいて、前記第1の制御装置が担っていた機能と同様またはその一部の機能による冗長機能を、前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定ステップと、前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視ステップと、を備え、前記機能監視ステップにおいて前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、前記冗長系実行判定ステップでは、前記攻撃判定ステップによって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、前記攻撃判定ステップによって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる冗長機能制御方法が提供される。
本発明によれば、車載制御システムによる自動車の走行制御(例えば自動運転)を維持しつつ、冗長系起動時のセキュリティ上の安全性を向上させることができる。
本発明の第1の実施形態に係る車載制御システム10の構成例を示すブロック図である。 データの受信時に電子制御装置140が実行する受信時処理の処理手順例を示すフローチャートである。 故障処理の詳細な処理手順例を示すフローチャートである。 侵害推定度DB150の一例を示す図である。 攻撃判定DB151の一例を示す図である。 冗長系稼働先DB152の一例を示す図である。 本発明の第2の実施形態に係る車載制御システム20の構成例を示すブロック図である。 冗長系実行判定部246による処理の処理手順例を示すフローチャートである。 攻撃経路DB250の一例を示す図である。 車載制御システム20における電子制御装置の接続構成の別例を示すブロック図である。 図10の接続構成時の攻撃経路DB250Aの一例を示す図である。 本発明の第3の実施形態に係る車載制御システム30の構成例を示すブロック図である。 第3の実施形態における故障処理の詳細な処理手順例を示すフローチャートである。 再配置先DB350の一例を示す図である。
以下、図面を参照して、本発明の実施形態を詳述する。
(1)第1の実施形態
図1は、本発明の第1の実施形態に係る車載制御システム10の構成例を示すブロック図である。車載制御システム10は、自動車の走行を制御するためのシステムであって、例えば自動運転を制御するシステムである。車載制御システム10は、図1に示すように、電子制御装置110,120,130,140とスイッチ160とセンサ170とを備える。
電子制御装置110,120,130,140は、自動車の内部に搭載される電子制御装置の1つであり、具体的にはECUやゲートウェイである。各電子制御装置110~140において、プログラムやデータベースは、RAM(Random Access Memory)やフラッシュROM(Read Only Memory)等の一般的な記録媒体に保存されるとし、その一部が外部メモリに保存されていてもよい。
車載制御システム10内の構成要素は、通信バス11~14またはスイッチ160を介して通信可能に接続される。通信バス11~14は、車載制御システム10内部の電子制御装置110~140に接続され、適宜スイッチ160を用いて、バス型やスター型のネットワークを構築してもよい。通信バス11~14の規格は、CAN(Controller Area Network)やEthernet(登録商標)、LIN(Local Interconnect Network)などを用いるのが一般的である。以下では、一例として通信バス11,12,13にEthernetが利用されているものとして説明する。
具体的には図1の場合、電子制御装置110は、通信バス11及びスイッチ160を介して、電子制御装置120,130に接続され、通信バス14を介して複数のセンサ170に接続される。また、電子制御装置140は、通信バス12を介して電子制御装置130に接続され、通信バス13を介して電子制御装置120に接続される。なお、本例では、電子制御装置110はセンサ170と接続されることを想定しているが、電子制御装置110はその他の外部装置と接続されてもよい。
なお、図1の場合、車載制御システム10は、4つの電子制御装置110,120,130,140を備える構成とされているが、本実施形態あるいは後述する他の実施形態に係る車載制御システムは、4つの電子制御装置を備えることを必須とするものではなく、適宜、構成が変更されてもよい。例えば、電子制御装置110は、センサ170が電子制御装置120に接続されている場合には、電子制御装置110を構成から省くことができる。また、電子制御装置の機能が1乃至いくつかの電子制御装置に統合されていてもよい。例えば、電子制御装置130の機能が他の電子制御装置110,120,140で代替できる場合には、電子制御装置130を構成から省くことができる。
以下、車載制御システム10の各構成要素を詳しく説明する。
電子制御装置110は、センサ170で収集された収集データを受信し、収集データ及び電子制御装置110内部における異常を確認(検知)し、その検知結果を電子制御装置120,130に送信する機能を有する。電子制御装置110は、データ通信部111及び異常検知部112を備える。
データ通信部111は、センサ170から収集データを受信したり、所定のデータを通信バス11及びスイッチ160を介して電子制御装置120,130に送信したりする。データ通信部111が送信するデータには、異常検知部112による検知結果を示すデータ以外に、センサ170から受信した収集データが含まれてもよい。
異常検知部112は、故障検知機能1120及びセキュリティ異常検知機能1121からなり、収集データ及び電子制御装置110内部における異常を検知する。
故障検知機能1120は、電子制御装置110内部における故障を検知する機能である。故障検知機能1120は、上記故障の検知結果を示すデータとして故障検知情報を出力し、故障検知情報は、データ通信部111によって電子制御装置120,130に送信される。
セキュリティ異常検知機能1121は、センサ170からの収集データ及び電子制御装置110内部のセキュリティ上の異常を検知する機能である。セキュリティ異常検知機能1121は、上記異常の検知結果を示すデータとして異常検知情報を出力し、異常検知情報は、データ通信部111によって電子制御装置120,130に送信される。
電子制御装置120は、電子制御装置110からデータを受信し、受信データ及び電子制御装置120内部における異常を確認(検知)し、その検知結果を電子制御装置140に送信する機能と、電子制御装置110から受信したデータを電子制御装置140に転送する機能とを有する。電子制御装置120は、データ通信部121、主系の情報処理部122及び異常検知部123を備える。
データ通信部121は、データ通信部111と同様に、データの送受信を行う機能を有する。さらに、データ通信部121は、電子制御装置110から受信した故障検知情報及び異常検知情報を、通信バス13を介して電子制御装置140に転送する機能も有する。
主系の情報処理部122は、電子制御装置110から受信したデータを処理する機能を有する。
異常検知部123は、故障検知機能1230及びセキュリティ異常検知機能1231からなり、異常検知部112と同様の機能を有する。すなわち、故障検知機能1230は、電子制御装置120内部における故障を検知する機能であり、上記故障の検知結果を示すデータとして故障検知情報を出力する。また、セキュリティ異常検知機能1231は、センサ170からの収集データ及び電子制御装置120内部のセキュリティ上の異常を検知する機能であり、上記異常の検知結果を示すデータとして異常検知情報を出力する。異常検知部123の各機能によって出力された故障検知情報及び異常検知情報は、データ通信部121によって、通信バス13を介して電子制御装置140に送信される。
電子制御装置130は、電子制御装置110からデータを受信し、所定のデータ処理を行い、その処理結果を電子制御装置140に送信する機能と、電子制御装置110から受信したデータを電子制御装置140に転送する機能とを有する。電子制御装置130は、データ通信部131及び冗長系の情報処理部132を備える。電子制御装置130は、電子制御装置120において主系の情報処理部122の機能が停止した際に、冗長系(情報処理部132)を稼働させる装置である。但し、電子制御装置130の情報処理部132で行われるデータ処理は、電子制御装置120の情報処理部122で行われるデータ処理とは異なるものであってもよい。
データ通信部131は、データ通信部111,121と同様にデータの送受信を行う機能を有する。さらに、データ通信部131は、電子制御装置110から受信した故障検知情報及び異常検知情報を、通信バス12を介して電子制御装置140に転送する機能を有してもよい。
冗長系の情報処理部132は、主系の情報処理部122におけるデータ処理において故障やセキュリティ攻撃によって正規の処理が困難な状況と判断された際に、情報処理部122の機能の冗長機能として、当該機能と同様またはその一部の機能を代替する機能を有する。
電子制御装置140は、電子制御装置120または電子制御装置130から受信した故障検知情報や異常検知情報を集約し、集約した情報を用いて電子制御装置110,120が攻撃されているか否か、及び正規の動作をしているか否かを判断し、それらの判断結果を用いて、冗長系の情報処理部132の稼働の可否を決定する機能を有する。
電子制御装置140は、機能監視部141、データ通信部142、データ解析部143、侵害推定度算出部144、攻撃判定部145、冗長系実行判定部146、冗長系管理部147、侵害推定度データベース(DB)150、攻撃判定データベース(DB)151、及び冗長系稼働先データベース(DB)152を備える。
機能監視部141は、車載制御システム10内の電子制御装置110,120,130の動作を監視し、機能代替が必要な状況になっていないかを判断する機能を有する。監視方法の一例としては、予め設定された所定時間における対象の電子制御装置からのデータの受信状況に基づいて監視する方法や、電子制御装置140から各電子制御装置に対して動作を確認するデータを送信することによって監視する方法等がある。
データ通信部142は、データ通信部111,121,131と同様に、データの送受信を行う機能を有する。
データ解析部143は、データ通信部142が受信したデータの種別を判定する機能を有する。受信データの種別は、少なくとも、故障検知情報、異常検知情報、及び制御情報に分類することができる。また、受信したデータが異常検知情報である場合、データ解析部143は、異常を検知した電子制御装置の特定も行う。
侵害推定度算出部144は、電子制御装置140が受信した異常検知情報を用いて、各電子制御装置が攻撃されているか否かを判断する際に使用する侵害推定度を計算し、その計算結果に基づいて、電子制御装置140が保持する侵害推定度を更新する機能を有する。侵害推定度の計算には、侵害推定度DB150(詳細は図4を参照)が用いられ、各電子制御装置における侵害推定度は、攻撃判定DB151(詳細は図5を参照)に格納される。侵害推定度の計算方法の一例として、異常検知情報や攻撃種別ごとに侵害推定度を加算する方法が挙げられる。
攻撃判定部145は、侵害推定度算出部144で計算された侵害推定度を用いて、各電子制御装置が攻撃されているか否かを判定する攻撃判定の機能を有する。攻撃判定の具体的な判定基準例としては、侵害推定度が事前に定めた閾値を超えたことや、事前に定義した特定の異常検知情報を受信したこと等が挙げられる。各電子制御装置に対する攻撃判定の結果を表す情報、攻撃判定情報として攻撃判定DB151に登録される。
冗長系実行判定部146は、対象とする電子制御装置への攻撃判定の結果に基づいて、該当電子制御装置に対する冗長系を起動させるか否かを判定する機能を有する。冗長系起動の判定には、攻撃判定DB151に格納されている攻撃判定情報を用いる。なお、冗長系起動時のルールを詳細に定義したい場合には、冗長系機能のルールを別途データベースに定義するようにしてもよい。ルールの具体例としては、複数機能において冗長系の稼働が必要となった場合には、冗長系を起動させないといったルールが挙げられる。
冗長系管理部147は、冗長系実行判定部146によって冗長系を稼働させると判定された際に、冗長系の稼働先を決定し、稼働先の電子制御装置に対して、稼働の指示を出す機能を有する。冗長系稼働先の決定には、冗長系稼働先DB152(詳細は図6を参照)が用いられる。
侵害推定度DB150は、電子制御装置140が各電子制御装置110~130から受信する異常検知情報に対する侵害推定度を格納する。侵害推定度DB150は、データ通信部142が異常検知情報を受信し、侵害推定度算出部144が侵害推定度を計算し更新する場合に利用される。侵害推定度DB150のデータ構造は、後述する図4において説明される。
攻撃判定DB151は、各電子制御装置110~130に対する攻撃判定情報及び侵害推定度を格納する。攻撃判定DB151のデータ構造は、後述する図5において説明される。
冗長系稼働先DB152は、各電子制御装置110~130である機能が故障した場合に起動させる、冗長系の稼働先に関する情報を格納する。冗長系稼働先DB152は、冗長系管理部147が冗長系の稼働先に稼働指示を出す際に利用される。冗長系稼働先DB152のデータ構造は、後述する図6において説明される。
スイッチ160は、受信した情報を適切な電子制御装置に向けて転送する機能を有する装置である。具体的には例えば、スイッチ160は、電子制御装置110から通信バス11を介して送信された情報を通信バス11を介して電子制御装置120及び電子制御装置130に転送することができるが、通常時(主系の稼働時)には電子制御装置120を転送先とし、冗長系の稼働時には電子制御装置130を転送先に変更する等を可能とする。なお、スイッチ160は、電子制御装置(例えば電子制御装置110)に含まれるとしてもよい。
センサ170は、車載制御システム10による自動運転の制御に必要な情報を収集する機能を有する各種センサであって、具体的には例えば、カメラ、レーダー、またはLiDAR(Light Detection And Ranging)等である。なお、センサ170は、攻撃のエントリーポイントとなり得る、インターネットやBluetooth(登録商標)との接続機能等でもよい。
図2は、データの受信時に電子制御装置140が実行する受信時処理の処理手順例を示すフローチャートである。図2では、電子制御装置140が電子制御装置120からデータを受信した場合の処理手順を示しているが、同様に、車載制御システム10の他の電子制御装置(例えば電子制御装置130)からデータを受信した場合の処理にも適用することができる。
図2によればまず、ステップS200において、電子制御装置140に電源が入力され、電子制御装置140の稼働後、各電子制御装置110~140(及びセンサ170)の間でデータのやり取りが開始される。なお、ステップS201以下の処理は、電子制御装置140の稼働時に、定期的あるいは所定の契機で繰り返し実行されると考えてよい。所定の契機とは例えば、他の電子制御装置からのデータを受信したとき、想定されたタイミングでデータを受信しなかったとき、同期のためのデータを電子制御装置140から他の電子制御装置に送信したとき、等が挙げられる。
ステップS201では、電子制御装置140の機能監視部141が、冗長系を起動させる可能性がある電子制御装置(本例では、電子制御装置120)を対象として、機能代替が必要な状況になっていないかを確認する。ここで確認する状況は、具体的には例えば、一定期間の間、対象の電子制御装置(該当電子制御装置)からデータを受信できていない状況や、電子制御装置140から機能代替が必要か否かの問い合わせを行った結果、該当電子制御装置から機能代替が必要であるとのレスポンスを受信した状況が挙げられる。電子制御装置140が該当電子制御装置の機能代替が必要であると判断した場合は(ステップS201のYES)、ステップS209に進み、該当電子制御装置の機能代替が必要ないと判断した場合は(ステップS201のNO)、ステップS202に進む。
ステップS202では、電子制御装置140は、電子制御装置120からデータを受信する。
次のステップS203では、データ解析部143が、ステップS202で受信したデータが故障検知情報であるか否かを確認する。受信データが故障検知情報である場合は(ステップS203のYES)、ステップS201に移行し、機能代替が必要な状況であるか否かを確認する。受信データが故障検知情報ではない場合は(ステップS203のNO)、ステップS204に移行する。
ステップS204では、データ解析部143が、ステップS202で受信したデータが異常検知情報であるか否かを確認する。受信データが異常検知情報である場合は(ステップS204のYES)、ステップS205に移行する。受信データが異常検知情報ではない場合は(ステップS204のNO)、ステップS203の確認結果と合わせると受信データが制御情報であることを意味するため、ステップS208に移行し、受信データで指示されている処理を実施し、今回の受信時処理を終了する。
ステップS205では、侵害推定度算出部144が、ステップS202で受信したデータに対して侵害推定度を計算し、侵害推定度DB150に格納された侵害推定度を更新する。侵害推定度算出部144は、異常を検知した電子制御装置の制御情報、及び異常検知情報に基づいて、侵害推定度DB150を用いて侵害推定度を計算し更新する。例えば、電子制御装置120から受信したデータであっても、電子制御装置110で異常を検知した場合には、電子制御装置110に関する侵害推定度が更新される。なお、侵害推定度の計算方法の一例として、異常検知情報を受信するごとに、侵害推定度を加算する方法等が挙げられる。
次のステップS206では、攻撃判定部145が、ステップS205で侵害推定度が導出された電子制御装置(該当電子制御装置)が攻撃されているか否かを判定するために、当該侵害推定度が所定の閾値以上であるか否かを判定する。上記所定の閾値を決定する方法としては例えば、電子制御装置140が受信した異常検知情報の回数や重要度に基づいて事前に決定する方法が挙げられる。侵害推定度が閾値以上である場合は(ステップS206のYES)、ステップS207に移行し、侵害推定度が閾値未満である場合は(ステップS206のNO)、ステップS201に移行する。
ステップS207では、攻撃判定部145は、ステップS206で侵害推定度が閾値以上であった該当電子制御装置が攻撃されているとする攻撃判定をし、攻撃判定の結果を攻撃判定DB151に登録する。なお、攻撃判定した際には、データの破棄や該当電子制御装置におけるリプログラムミングを禁止する等の処理を実施するようにしてもよい。ステップS207の処理後はステップS201に移行する。
一方、前述したように、ステップS201において電子制御装置140が該当電子制御装置の機能代替が必要であると判断した場合は(ステップS201のYES)、ステップS209の処理が行われる。ステップS209では、冗長系実行判定部146が、攻撃判定DB151を参照して、機能代替を必要とする該当電子制御装置が攻撃判定されているか否かを確認する。事前にステップS207の処理が実行されて該当電子制御装置が攻撃判定されていた場合は、攻撃判定DB151に攻撃判定が登録されているので、この場合(ステップS209のYES)、冗長系実行判定部146は、該当電子制御装置の冗長系を起動させないと判定し、ステップS210に移行する。一方、該当電子制御装置が攻撃判定されていない場合(ステップS209のNO)、冗長系実行判定部146は、該当電子制御装置の冗長系を起動させると判定し、ステップS211に移行する。
ステップS210では、電子制御装置140(例えば冗長系管理部147)は、該当電子制御装置に対するセキュリティ処理を実施する。前述したように、セキュリティ処理が実施される場合は、冗長系の電子制御装置130(情報処理部132)は稼働されない。具体的なセキュリティ処理としては、例えば、所定のデータを受け付けないように設定を変更したり、機能を制限した縮退運転に移行したり、管理センタへ異常を通知したりする等が挙げられ、これら複数の処理を実施するようにしてもよい。なお、セキュリティ処理は、例えば冗長系管理部147によって実施されるとしたが、電子制御装置140が備える任意の処理部によって実施されるとしてもよい。
ステップS211では、電子制御装置140(例えば冗長系管理部147)は、該当電子制御装置に対する故障処理を実施する。故障処理においては、例えば、電子制御装置120の主系の情報処理部122に対して故障処理を行う場合、情報処理部122の機能の冗長機能として、当該機能と同様またはその一部の機能を他の電子制御装置で稼働させる。図1の例では、主系の情報処理部122と同様の機能を持つ電子制御装置130の情報処理部132に機能を代替する。故障処理の具体的な処理手順例については、図3を参照して後述する。なお、故障処理は、例えば冗長系管理部147によって実施されるとしたが、電子制御装置140が備える任意の処理部によって実施されるとしてもよい。
以上のように、電子制御装置140では、他の電子制御装置からデータを受信した場合に、図2に示す処理が行われることにより、受信データの種別やその内容から故障やセキュリティ攻撃の状況に応じて、電子制御装置の機能を代替させる等の適切な処理を実施することができる。
図3は、故障処理の詳細な処理手順例を示すフローチャートである。故障処理は、図2のステップS211において電子制御装置140(例えば冗長系管理部147)によって実施される処理である。
故障処理の実施が決定すると、まず、冗長系管理部147が、冗長系稼働先DB152を用いて、冗長系の稼働先(起動先)を決定する(ステップS300)。
次に、冗長系管理部147は、冗長系稼働のための準備を行い、ステップS300で決定した冗長系の稼働先に対して、稼働の指示を出す(ステップS301)。ステップS300で決定した冗長系の稼働先が電子制御装置140以外の構成である場合には、冗長系管理部147は、当該稼働先を備える電子制御装置に対して、稼働指示を送信する。
図4は、侵害推定度DB150の一例を示す図である。侵害推定度DB150は、侵害推定度の計算に用いられる情報を格納するものであり、具体的には図4の場合、電子制御装置名1500、異常検知情報1501、及び侵害推定度1502のデータ項目を含んで構成される。
電子制御装置名1500には、異常検知情報を検知する可能性がある電子制御装置名が記載され、電子制御装置における故障や異常を検知する機能を有する異常検知部(例えば異常検知部112,123)を備える全ての電子制御装置の名称が登録される。
異常検知情報1501には、電子制御装置140が受信した異常検知情報の種別が記載される。本実施形態では、図2のステップS207において攻撃判定がなされた後に実施する対処方法を、異常検知情報の種別に応じて異なるように設定してもよい。
侵害推定度1502には、異常が検知された電子制御装置(電子制御装置名1500)と異常検視情報の種別(異常検知情報1501)との組み合わせに応じて決定される侵害推定度が記載される。侵害推定度1502は、異常検知情報の重要度に応じて事前に割り当てられており(重要度が高いほど侵害推定度も高い)、その重要度は、例えば異常の生じやすさや、異常による被害の甚大さに基づいて決定される。
図5は、攻撃判定DB151の一例を示す図である。攻撃判定DB151は、侵害推定度算出部144によって計算された侵害推定度、及び攻撃判定部145によって判定された攻撃判定の結果を表す情報を、各電子制御装置について格納するものであり、具体的には図5の場合、電子制御装置名1510、攻撃判定情報1511、及び侵害推定度1512のデータ項目を含んで構成される。
電子制御装置名1510には、電子制御装置名1500と同様に、異常検知情報を検知する可能性がある電子制御装置名が記載される。
攻撃判定情報1511には、電子制御装置が攻撃されたか否かに関する攻撃判定の結果を表す情報が格納される。攻撃判定情報1511の一例として、攻撃判定がされていない場合(すなわち、通常時)には「0」が登録されており、図2のステップS207で攻撃判定された場合には「1」が登録されるとする。
侵害推定度1512には、侵害推定度算出部144によって計算された侵害推定度が格納される。格納された侵害推定度1512は、攻撃判定の際に利用される。なお、侵害推定度1512は、電子制御装置140が異常検知情報を受信するごとに、異常検知情報が検知された該当電子制御装置の侵害推定度が計算されて更新される。
具体的には、図5の攻撃判定DB151は、電子制御装置110において「周期検知エラー」の異常が検知され、電子制御装置120において「Data Formatエラー」の異常が検知された場合の一例を示している。また、侵害推定度1512の初期値を「0」とし、攻撃判定の基準とする閾値を「6.0」とする。このとき、図4の侵害推定度DB150を参照すると、電子制御装置110で検知された「周期検知エラー」に対応する侵害推定度1502は「5.25」であるため、攻撃判定DB151において、電子制御装置110の侵害推定度1512には「5.25」が登録される。そして「5.25」の侵害推定度1512は閾値「6.0」未満であることから攻撃判定されず、電子制御装置110の攻撃判定情報1511は「0」となる。一方、図4の侵害推定度DB150を参照すると、電子制御装置120で検知された「Data Formatエラー」に対応する侵害推定度1502は「6.98」であるため、攻撃判定DB151において電子制御装置120の侵害推定度1512には「6.98」が登録される。そして「6.98」の侵害推定度1512は閾値「6.0」以上であることから攻撃判定され、電子制御装置120の攻撃判定情報1511は「1」となる。
図6は、冗長系稼働先DB152の一例を示す図である。冗長系稼働先DB152は、冗長系の稼働先に関する情報を格納するものであり、具体的には図6の場合、各電子制御装置に実装されている処理名1520及び冗長系稼働先1521のデータ項目を含んで構成される。
処理名1520には、車載制御システム10内の電子制御装置に実装されている処理名が格納される。但し、処理名1520に格納される処理名は、事前の設計段階において、異常が発生した場合に冗長系を稼働させる可能性がある処理として設計された処理に限られる。図6では、処理名1520に、電子制御装置120に実装されている主系の情報処理部122が登録されている例が示されている。
冗長系稼働先1521には、処理名1520に登録された処理で故障が生じて正規の動作が実施できなくなった場合に、冗長系を稼働させる電子制御装置の情報が登録される。図6の冗長系稼働先1521では、冗長系の情報処理部132が実装された電子制御装置130に「○」印が付けられることにより、電子制御装置130が情報処理部122の冗長系起動先として登録されている例が示されている。
具体的には、電子制御装置120で情報処理部122が提供する機能が故障した場合に、図3に示した故障処理の実施が決定された場合、冗長系管理部147は、図6の冗長系稼働先DB152を参照することにより、冗長系稼働先として電子制御装置130を決定することができる。そして、冗長系管理部147は、この電子制御装置130に対して、稼働指示を送信することにより、主系の情報処理部122に代替して、冗長系の情報処理部132を稼働させることができる。
以上に説明したように、本実施形態に係る車載制御システム10によれば、異常検知部112,123を備える電子制御装置110,120(図示は省略したが、電子制御装置130も、異常検知部を備えることによって、含めることができる)において、センサ170で収集されたデータまたは電子制御装置内部における異常(セキュリティ異常、故障)を検知し、電子制御装置140が、それらの検知結果に基づいて、各電子制御装置におけるセキュリティ異常及び故障の発生の有無と、機能代替の必要性とを判定することができる。特に、電子制御装置140は、各電子制御装置においてセキュリティ異常が発生した場合には、セキュリティ異常による影響の度合いを示す侵害推定度を算出し、その算出結果に基づいて、該当電子制御装置がセキュリティ攻撃を受けているかの攻撃判定を行うことができる。そして、電子制御装置140は、電子制御装置において異常(セキュリティ異常または故障)が発生して、機能代替が必要と判断した場合には、その異常の種別に応じて、セキュリティ処理または故障処理を実施することができる。その結果、車載制御システム10は、冗長系がダメージを受けない故障が主系の機能で発生した場合は、故障処理によって、故障した主系に代替して冗長系の機能を稼働させることができる一方、冗長系も同様の攻撃を受ける可能性があるセキュリティ異常が主系の機能で発生した場合は、セキュリティ処理によって、冗長系に代替稼働させずに、セキュリティ攻撃に特化した対応を実施することができる。すなわち、本実施形態に係る車載制御システム10(電子制御装置140)は、各電子制御装置において正常な動作が行えない原因がセキュリティ攻撃に起因するか否かを区別して、適切な対処方法を決定できることにより、車載制御システム10による制御の安全性を確保しながら、車載制御システム10による走行制御(例えば、自動車の自動運転制御)を可能な限り継続して提供することができるため、車載制御システムによる自動車の走行制御(例えば自動運転)を維持しつつ、冗長系起動時のセキュリティ上の安全性を向上させることができる。
(2)第2の実施形態
図7は、本発明の第2の実施形態に係る車載制御システム20の構成例を示すブロック図である。第1の実施形態に係る車載制御システム10との相違点として、第2の実施形態に係る車載制御システム20は、攻撃経路を考慮した冗長系稼働への切り替えを可能とする。図1に示した車載制御システム10の構成と比較すると、図7に示した車載制御システム20は、電子制御装置140に代えて電子制御装置240を備える点で異なる。電子制御装置240は、冗長系実行判定部146とは異なる処理を実行する冗長系実行判定部246と、攻撃経路データベース(DB)250とを備える点で、電子制御装置140とは異なる。なお、第2の実施形態に係る車載制御システム20において、第1の実施形態に係る車載制御システム10と共通する構成には同一の番号を付し、説明を省略する。
冗長系実行判定部246は、冗長系機能を稼働したい電子制御装置とは別の電子制御装置に対する侵害推定度を考慮した上で、冗長系機能を稼働させるか否かを判定する機能を有する。冗長系実行判定部246による処理の具体的な処理手順は、後述する図8において説明される。
攻撃経路DB250は、車載制御システム20における、エントリーポイントから保護資産までの攻撃経路を格納する。攻撃経路DB250は、冗長系実行判定部246が冗長系を稼働させるか否かを判定する際に利用される。なお、保護資産の一例として、自動車の制御に関する機能が挙げられる。攻撃経路DB250のデータ構造は、後述する図9において説明される。
図8は、冗長系実行判定部246による処理の処理手順例を示すフローチャートである。図8では、図2に示した処理と同様の処理については、同一のステップ番号を付して詳細な説明を省略する。なお、図8に示す処理のうち、ステップS201は、冗長系実行判定部246ではなく、機能監視部141によって実行される。
図8によればまず、ステップS201において、機能監視部141が、冗長系を起動させる可能性がある電子制御装置を対象として、機能代替が必要な状況になっていないかを確認する。そしてステップS201において機能代替が必要であると判断された場合は、図2のステップS209で説明したように、冗長系実行判定部146が、攻撃判定DB151を参照して、機能代替を必要とする該当電子制御装置が攻撃判定されているか否かを確認する。図8では、このステップS209において、機能代替を必要とする該当電子制御装置が攻撃判定されている状況であるとして、以降の処理が示されている。
次のステップS800では、冗長系実行判定部246は、攻撃判定DB151を参照し、侵害推定度1512が「0」ではない電子制御装置が存在するか否かを確認する。攻撃判定DB151に登録された全ての電子制御装置(電子制御装置名1510)において侵害推定度1512が「0」である場合には(ステップS800のNO)、ステップS211に移行し、図2で説明した故障処理が実施される。一方、攻撃判定DB151において侵害推定度1512が「0」ではない電子制御装置(電子制御装置名1510)が少なくとも1つ登録されている場合には(ステップS800のYES)、ステップS801に移行する。
ステップS801では、冗長系実行判定部246が、攻撃経路DB250を用いて、ステップS800で確認した侵害推定度が「0」以外の電子制御装置に関連する攻撃経路を攻撃経路情報2500から特定する(図9参照)。
次のステップS802では、冗長系実行判定部246がステップS801で特定した攻撃経路のなかに機能代替を実施したい該当電子制御装置が含まれるか否かを確認する。経路のなかに機能代替を実施したい該当電子制御装置が含まれていない場合は(ステップS802のNO)、ステップS211に移行し、故障処理が実施される。一方、経路のなかに機能代替を実施したい該当電子制御装置が含まれる場合は(ステップS802のYES)、ステップS210に移行し、セキュリティ処理が実施される。
以上のように、電子制御装置240では、他の電子制御装置からデータを受信したときに、ある電子制御装置において機能代替が必要で、かつ攻撃判定された場合に、ステップS800~S802の処理が実行された結果、異常の状態に応じて、ステップS210のセキュリティ処理またはステップS211の故障処理を実施することができる。このとき特に、冗長系実行判定部246は、侵害推定度が「0」以外の電子制御装置に関する攻撃経路のなかに、機能代替が必要な電子制御装置が含まれている場合に、セキュリティ処理の実施を決定する。なお、図2でも説明したように、ステップS210で実施されるセキュリティ処理では、該当電子制御装置の冗長系は起動されず、ステップS211で実施される故障処理では、該当電子制御装置の冗長系が起動及び稼働される。この結果、車載制御システム20(電子制御装置240)は、攻撃経路を考慮した冗長系稼働への切り替えを実現することができる。
また、本実施形態における故障処理の別の処理手順としては例えば、冗長系実行判定部146は、ステップS801において、攻撃判定DB151を参照して、機能代替を実施したい該当電子制御装置を含む攻撃経路を全て特定し、ステップS802において、特定した攻撃経路上に侵害推定度が「0」以外の電子制御装置が存在するか否かを判定するようにしてもよい。このようなステップS801~S802の処理手順でも、冗長系実行判定部146は、セキュリティ攻撃を受けている電子制御装置を含む攻撃経路上(セキュリティ攻撃を受ける可能性がある経路上)に、機能代替を実施したい該当電子制御装置が存在するか否かを確認することができる。
図9は、攻撃経路DB250の一例を示す図である。攻撃経路DB250は、車載制御システム20におけるエントリーポイントから保護資産までの攻撃経路を格納するものであり、具体的には図9の場合、攻撃経路情報2500のデータ項目を含んで構成される。なお、攻撃経路とは、セキュリティ攻撃が行われた場合に、当該攻撃が伝わる経路を示すものであり、一般的には、装置間の接続経路に概ね一致する。
攻撃経路情報2500には、エントリーポイントから保護資産までの攻撃経路を示す情報が登録される。具体的には、図9の攻撃経路DB250には、センサ(例えばセンサ170の1つ)をエントリーポイントとし、走行制御に関する電子制御装置(電子制御装置110~140)を保護資産とするとき、センサから電子制御装置140までの2通りの攻撃経路が、攻撃経路情報2500として登録されている。なお、図9の攻撃経路情報2500における「通信11」~「通信14」は、通信バス11~通信バス14に対応する。
なお、第2の実施形態に係る車載制御システム20が冗長系稼働への切り替えの際に考慮することができる攻撃経路は、図7の接続構成に限定されるものではなく、様々な接続構成に適用することができる。以下では、車載制御システム20が、図7よりも複雑な電子制御装置の接続構成である場合を例に挙げて、冗長系稼働への切り替えを説明する。
図10は、車載制御システム20における電子制御装置の接続構成の別例を示すブロック図である。図10に示した車載制御システム20は、図7に示したよりも多くの電子制御装置が接続されて構成されている。なお、各電子制御装置の間を接続する通信21~通信25は、それぞれ、通信バスによって形成される通信経路である。
図10において、例えば、電子制御装置260,270,280,290はそれぞれ、電子制御装置110,120,130と同様の機能を有する電子制御装置とする。図10に示したように、電子制御装置260は、通信21を介して電子制御装置120に接続される。電子制御装置120は、通信21を介して電子制御装置260に接続され、通信22を介して電子制御装置240に接続される。電子制御装置240は、通信22を介して電子制御装置120に接続され、通信23を介して電子制御装置270に接続され、通信25を介して電子制御装置290に接続される。電子制御装置270は、通信23を介して電子制御装置240に接続される。電子制御装置280は、通信24を介して電子制御装置290に接続される。電子制御装置290は、通信24を介して電子制御装置280に接続され、通信25を介して電子制御装置240に接続される。
図11は、図10の接続構成時の攻撃経路DB250Aの一例を示す図である。図11の攻撃経路DB250Aでは、電子制御装置270に走行制御に関連する機能が含まれていると仮定しており、その攻撃経路情報2500Aには、エントリーポイント(電子制御装置260,280)から保護資産(電子制御装置270)までの攻撃経路が登録されている。
ここで、図11の攻撃経路DB250Aを用いて、図8のステップS800~S802の処理手順を具体的に示すことにより、2通りの状況(第1の状況、第2の状況)において、電子制御装置120を代替する冗長系を稼働させるか否かの処理フローを説明する。
まず、第1の状況は、ステップS800において、電子制御装置120は攻撃判定されていないが、電子制御装置260の侵害推定度が「0」ではない状況を想定する。このとき、ステップS800は、上記想定により、侵害推定度が「0」ではない電子制御装置260が存在するため、ステップS801に移行し、電子制御装置240の冗長系実行判定部246が、図11の攻撃経路DB250Aを参照して、攻撃経路を特定する。具体的には、ステップS801では、電子制御装置260に関連する攻撃経路として、攻撃経路情報2500Aのデータ行の1行目のレコードが特定される。次のステップS802では、ステップS801で特定した攻撃経路のなかに、機能代替を実施したい電子制御装置120が含まれていることから、冗長系実行判定部246は「YES」と判定する。すなわち、機能代替を実施したい電子制御装置120が電子制御装置260の攻撃経路上に存在することから、ステップS210に移行し、冗長系を稼働させず、セキュリティ処理が実施される。ここで、同様の第1の状況について、図2の処理フローに従って第1の実施形態における処理を確認すると、電子制御装置120が攻撃判定されていないことから、ステップS209で冗長系実行判定部146がNOと判定し、冗長系の起動(故障処理の実施)が決定されてしまう。しかし、第2の実施形態では、上述したように図8の処理フローを実行することで、攻撃経路上に存在する電子制御装置で微かでもセキュリティ攻撃の兆候を検知した(「0」以外の侵害推定度が計算されている)場合には、冗長系を稼働させる措置を選択しないため、第1の実施形態よりも冗長系起動時のセキュリティ上の安全性を高めることができる。
次に、第2の状況は、ステップS800において、電子制御装置120が攻撃判定されておらず、電子制御装置280の侵害推定度が「0」ではない状況を想定する。このとき、ステップS800は、上記想定により、侵害推定度が「0」ではない電子制御装置280が存在するため、ステップS801に移行し、電子制御装置240の冗長系実行判定部246が、図11の攻撃経路DB250Aを参照して、攻撃経路を特定する。具体的には、ステップS801では、電子制御装置280に関連する攻撃経路として、攻撃経路情報2500Aのデータ行の2行目のレコードが特定される。次のステップS802では、ステップS801で特定した攻撃経路のなかに、機能代替を実施したい電子制御装置120が含まれていないことから、冗長系実行判定部246は「NO」と判定する。すなわち、第2の状況では、第1の状況とは異なり、機能代替を実施したい電子制御装置120が電子制御装置280の攻撃経路上に存在しないことから、ステップS211に移行し、冗長系を稼働させる故障処理が実施される。言い換えると、第2の状況では、電子制御装置280において侵害推定度が「0」ではなく、何らかのセキュリティ攻撃を受けていたとしても、電子制御装置120に代替する状況系の稼働には影響を及ぼすことがないため、セキュリティ上の安全性を維持しながら、冗長系への切り替えが可能となる。
以上のように、第2の実施形態に係る車載制御システム20では、セキュリティ攻撃と故障とが同時期に発生した場合、攻撃由来である可能性がある故障に対しては(第1の状況)、冗長系を稼働させないようにする一方で、攻撃由来ではない故障に対しては(第2の状況)、冗長系を稼働させることが可能なため、例えば電子制御装置270による走行制御の機能を継続して提供することができる。
(3)第3の実施形態
図12は、本発明の第3の実施形態に係る車載制御システム30の構成例を示すブロック図である。第1または第2の実施形態に係る車載制御システム10,20と比べると、第3の実施形態に係る車載制御システム30は、設計段階で冗長系の稼働先が決定(特定)されておらず、冗長系を稼働しようとするときに、電子制御装置340の再配置管理部341が再配置先データベース(DB)350を用いて冗長系の再配置先(稼働先)を決定する必要がある点を特徴とする。この冗長系の再配置先の候補は複数用意することができる。また、第3の実施形態では、第2の実施形態と同様に、攻撃経路を考慮した冗長系稼働への切り替えを可能にする。なお、第3の実施形態に係る車載制御システム30において、第1または第2の実施形態に係る車載制御システム10,20と共通する構成には同一の番号を付し、説明を省略する。
図12に示したように、車載制御システム30は、車載制御システム10の電子制御装置140や車載制御システム20の電子制御装置240に代えて、電子制御装置340を備える。この電子制御装置340は、冗長系管理部147を持たず、新たに、再配置管理部341、冗長系候補の情報処理部342、及び再配置先データベース(DB)350を備えて構成される。また、車載制御システム10等では電子制御装置130が冗長系の情報処理部132を備えていたが、車載制御システム30では、電子制御装置330が冗長系候補の情報処理部331を備えて構成される。
再配置管理部341は、再配置先DB350、攻撃判定DB151、及び攻撃経路DB250を用いて、主系の情報処理部122を代替する冗長系の再配置先(稼働先)を決定する。冗長系の再配置先として複数の候補が存在する場合、再配置管理部341は、リソースに余裕がある電子制御装置や、データのルーティングが少ない(短い)電子制御装置を優先して、冗長系の再配置先(稼働先)を決定する。この他にも、攻撃経路上に存在しない電子制御装置等の条件を組み合わせて、より適切な冗長系の稼働先を決定するようにしてもよい。
電子制御装置330が備える冗長系候補の情報処理部331、及び電子制御装置340が備える冗長系候補の情報処理部342は、電子制御装置120における主系の情報処理部122が正規の動作ができなくなった場合の冗長系の稼働先の候補である。情報処理部331,342では、情報処理部122と同様またはその一部の機能(冗長機能)を代替する機能を有する。
再配置先DB350は、主系の情報処理部に対応する冗長系の再配置先(稼働先)の候補について、設計段階における定義を格納する。第3の実施形態では、冗長系の再配置先は1つに確定されておらず、複数の候補を用意することができるため、再配置先DB350に定義された複数の候補のうちから、再配置管理部341によって1つの再配置先が決定される。再配置先DB350のデータ構造は、後述する図14において説明される。
図13は、第3の実施形態における故障処理の詳細な処理手順例を示すフローチャートである。図13に示す故障処理は、第3の実施形態において、図2または図8で示したステップS211の故障処理の際に、再配置管理部341が実施する処理である。
主系の情報処理部122に対する故障判定の後、故障処理の実施が決定すると、まず、再配置管理部341が、情報処理部122の機能に代替する冗長機能を再配置する電子制御装置を決定する(ステップS1300)。再配置先の決定には、再配置先DB350及び攻撃経路DB250が用いられる。そして攻撃経路DB250を参照して攻撃経路の候補が特定できる場合、特定した攻撃経路上にある電子制御装置には、冗長系を再配置しないとする。
次いで、再配置管理部341は、冗長系稼働のための準備を行い、ステップS1300で決定した冗長系の再配置先に対して、冗長系の稼働指示を送信する(ステップS1301)。
図14は、再配置先DB350の一例を示す図である。再配置先DB350は、設計段階で定義された冗長系の再配置先の候補を格納するものであり、具体的には図14の場合、処理名3500及び再配置先3501のデータ項目を含んで構成される。
処理名3500には、車載制御システム30内の電子制御装置に実装されている処理名が格納される。但し、処理名3500に格納される処理名は、事前の設計段階において、異常が発生した場合に冗長系を稼働させる可能性がある処理として設計された処理に限られる。図14では、処理名3500に、電子制御装置120に実装されている主系の情報処理部122が登録されている例が示されている。
再配置先3501には、処理名3500に登録された処理で故障が生じて正規の動作が実施できなくなった場合の、冗長系の再配置先の候補が登録される。図14の再配置先3501では、情報処理部331が実装された電子制御装置330と、情報処理部342が実装された電子制御装置340とに「○」印が付けられることにより、電子制御装置330,340が情報処理部122の冗長系の再配置先の候補として登録されている例が示されている。
以上のように、第3の実施形態に係る車載制御システム30では、冗長系の再配置が前提とされたシステム構成において、ある電子制御装置で故障が発生した場合に、設計段階で定義された再配置先の候補のうちから、故障発生時の状況に応じて適切な再配置先を決定し、当該再配置先で冗長系を稼働させることができるため、セキュリティ上の安全性を維持しながら冗長系への切り替えが可能となる。
なお、本発明は上記した各実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した各実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、図面において制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
10,20,30 車載制御システム
11~14,21~25 通信バス
110,120,130,140,240,260,270,280,290,330,340 電子制御装置
111,121,131,142 データ通信部
112,123 異常検知部
122,132,331,342 情報処理部
141 機能監視部
143 データ解析部
144 侵害推定度算出部
145 攻撃判定部
146,246 冗長系実行判定部
147 冗長系管理部
150 侵害推定度データベース(DB)
151 攻撃判定データベース(DB)
152 冗長系稼働先データベース(DB)
160 スイッチ
170 センサ
250,250A 攻撃経路データベース(DB)
341 再配置管理部
350 再配置先データベース(DB)
1120,1230 故障検知機能
1121,1231 セキュリティ異常検知機能

Claims (8)

  1. 自動車の走行制御を行う車載制御システムに搭載され、第1の制御装置及び第2の制御装置を含む複数の制御装置と通信可能に接続される電子制御装置であって、
    前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定部と、
    前記攻撃判定部による判定結果に基づいて、前記第1の制御装置が担っていた機能と同様またはその一部の機能による冗長機能を、前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定部と、
    前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視部と、を備え、
    前記機能監視部が前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、
    前記冗長系実行判定部は、
    前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、
    前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる
    ことを特徴とする電子制御装置。
  2. 前記各制御装置においてセキュリティ攻撃が生じた可能性を示す侵害推定度を算出する侵害推定度算出部をさらに備え、
    前記攻撃判定部は、前記侵害推定度算出部によって算出された侵害推定度に基づいて、前記各制御装置におけるセキュリティ攻撃の有無を判定する
    ことを特徴とする請求項1に記載の電子制御装置。
  3. 前記第1の制御装置で検知されたセキュリティ異常を示す異常検知情報を受信するデータ通信部をさらに備え、
    前記侵害推定度算出部は、前記データ通信部が受信した前記異常検知情報に基づいて、前記第1の制御装置における前記侵害推定度を算出する
    ことを特徴とする請求項に記載の電子制御装置。
  4. 前記車載制御システム内で想定されるセキュリティ攻撃の攻撃経路を示す攻撃経路情報をさらに有し、
    前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が有ると判定されたとき、
    前記冗長系実行判定部は、
    前記攻撃経路情報に基づいて、前記セキュリティ攻撃による影響を受ける可能性がある前記攻撃経路を特定し、前記特定した攻撃経路上に前記第2の制御装置が存在するか否かを判定し、
    前記攻撃経路上に前記第2の制御装置が存在しない場合には、当該第2の制御装置に前記冗長機能を代替して実行させる一方、前記攻撃経路上に前記第2の制御装置が存在する場合には、当該第2の制御装置に前記冗長機能を代替して実行させない
    ことを特徴とする請求項に記載の電子制御装置。
  5. 前記第1の制御装置による前記機能ごとに、対応する前記冗長機能を代替して実行し得る前記第2の制御装置の候補が予め定義され、
    前記冗長系実行判定部が、前記第1の制御装置による前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させると判定した場合に、前記定義された候補の何れに前記冗長機能を代替して実行させるか、を管理する再配置管理部をさらに備える
    ことを特徴とする請求項1に記載の電子制御装置。
  6. 前記冗長機能を代替して実行する前記第2の制御装置には、自電子制御装置を含めることができる
    ことを特徴とする請求項1に記載の電子制御装置。
  7. 自動車の走行制御を行う車載制御システムであって、
    所定の機能を有する第1の制御装置と、前記機能と同様またはその一部の機能による冗長機能を有する第2の制御装置と、を含む複数の制御装置と、
    前記複数の制御装置と通信可能に接続される電子制御装置と、
    を備え、
    前記電子制御装置が、
    前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定部と、
    前記攻撃判定部による判定結果に基づいて、前記第1の制御装置が担っていた前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定部と、
    前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視部と、を有し、
    前記機能監視部が前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、
    前記冗長系実行判定部は、
    前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、
    前記攻撃判定部によって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる
    ことを特徴とする車載制御システム。
  8. 自動車の走行制御を行う車載制御システムに搭載され、第1の制御装置及び第2の制御装置を含む複数の制御装置と通信可能に接続される電子制御装置による冗長機能制御方法であって、
    前記複数の制御装置の各制御装置におけるセキュリティ攻撃の有無を判定する攻撃判定ステップと、
    前記攻撃判定ステップの判定結果に基づいて、前記第1の制御装置が担っていた機能と同様またはその一部の機能による冗長機能を、前記第2の制御装置に代替して実行させるか否かを判定する冗長系実行判定ステップと、
    前記各制御装置の動作を監視し、前記各制御装置による前記機能の代替が必要な状況になっていないかを判断する機能監視ステップと、を備え、
    前記機能監視ステップにおいて前記第1の制御装置による前記機能の代替が必要な状況になっていると判断したとき、
    前記冗長系実行判定ステップでは、
    前記攻撃判定ステップによって前記第1の制御装置においてセキュリティ攻撃が無いと判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させ、
    前記攻撃判定ステップによって前記第1の制御装置においてセキュリティ攻撃が有ると判定された場合には、前記機能に対応する前記冗長機能を前記第2の制御装置に代替して実行させずに、前記第1の制御装置に対する所定のセキュリティ処理を実施させる
    ことを特徴とする冗長機能制御方法。
JP2021009152A 2021-01-22 2021-01-22 電子制御装置、車載制御システム、及び冗長機能制御方法 Active JP7631007B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021009152A JP7631007B2 (ja) 2021-01-22 2021-01-22 電子制御装置、車載制御システム、及び冗長機能制御方法
PCT/JP2021/031408 WO2022158020A1 (ja) 2021-01-22 2021-08-26 電子制御装置、車載制御システム、及び冗長機能制御方法
US18/273,338 US20240140448A1 (en) 2021-01-22 2021-08-26 Electronic Control Device, On-Vehicle Control System, and Redundant Function Control Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021009152A JP7631007B2 (ja) 2021-01-22 2021-01-22 電子制御装置、車載制御システム、及び冗長機能制御方法

Publications (2)

Publication Number Publication Date
JP2022113050A JP2022113050A (ja) 2022-08-03
JP7631007B2 true JP7631007B2 (ja) 2025-02-18

Family

ID=82549659

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021009152A Active JP7631007B2 (ja) 2021-01-22 2021-01-22 電子制御装置、車載制御システム、及び冗長機能制御方法

Country Status (3)

Country Link
US (1) US20240140448A1 (ja)
JP (1) JP7631007B2 (ja)
WO (1) WO2022158020A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7517223B2 (ja) * 2021-03-29 2024-07-17 株式会社デンソー 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
JP7659953B2 (ja) * 2022-12-07 2025-04-10 パナソニックオートモーティブシステムズ株式会社 セキュリティ装置、セキュリティ方法およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017081290A (ja) 2015-10-26 2017-05-18 日立オートモティブシステムズ株式会社 車両制御装置、車両制御システム
JP2019125344A (ja) 2018-01-12 2019-07-25 パナソニックIpマネジメント株式会社 車両用システム及び制御方法
US20190312892A1 (en) 2018-04-05 2019-10-10 Electronics And Telecommunications Research Institute Onboard cybersecurity diagnostic system for vehicle, electronic control unit, and operating method thereof
US20190337526A1 (en) 2016-10-06 2019-11-07 Red Bend Ltd. Systems and methods for handling a vehicle ecu malfunction
WO2020246031A1 (ja) 2019-06-07 2020-12-10 三菱電機株式会社 車載制御装置および車載制御システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7441272B2 (en) * 2004-06-09 2008-10-21 Intel Corporation Techniques for self-isolation of networked devices
WO2016085861A1 (en) * 2014-11-26 2016-06-02 Howard University Computer control system security
JP6918269B2 (ja) * 2019-03-12 2021-08-11 三菱電機株式会社 攻撃推定装置、攻撃制御方法、および攻撃推定プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017081290A (ja) 2015-10-26 2017-05-18 日立オートモティブシステムズ株式会社 車両制御装置、車両制御システム
US20190337526A1 (en) 2016-10-06 2019-11-07 Red Bend Ltd. Systems and methods for handling a vehicle ecu malfunction
JP2019125344A (ja) 2018-01-12 2019-07-25 パナソニックIpマネジメント株式会社 車両用システム及び制御方法
US20190312892A1 (en) 2018-04-05 2019-10-10 Electronics And Telecommunications Research Institute Onboard cybersecurity diagnostic system for vehicle, electronic control unit, and operating method thereof
WO2020246031A1 (ja) 2019-06-07 2020-12-10 三菱電機株式会社 車載制御装置および車載制御システム

Also Published As

Publication number Publication date
WO2022158020A1 (ja) 2022-07-28
US20240140448A1 (en) 2024-05-02
JP2022113050A (ja) 2022-08-03

Similar Documents

Publication Publication Date Title
JP6964277B2 (ja) 通信遮断システム、通信遮断方法及びプログラム
JP6585019B2 (ja) ネットワーク監視装置、ネットワークシステムおよびプログラム
JP6723955B2 (ja) 情報処理装置及び異常対処方法
JP2013161235A (ja) ストレージ装置、ストレージ装置の制御方法及びストレージ装置の制御プログラム
US9143416B2 (en) Expander device
JP7631007B2 (ja) 電子制御装置、車載制御システム、及び冗長機能制御方法
WO2021084961A1 (ja) 分析装置及び分析方法
WO2020246031A1 (ja) 車載制御装置および車載制御システム
CN113993752B (zh) 电子控制单元和计算机可读取的记录介质
CN101790722B (zh) 监视与共享媒介连接的航空电子系统的设备与方法
JP6918067B2 (ja) 制御装置および制御方法
JP2023122636A (ja) 車両のソフトウェアの改竄の軽減
JP4500346B2 (ja) ストレージシステム
JP7408033B2 (ja) 車載制御装置
KR101884636B1 (ko) 서비스 기능 체인의 고가용성을 위한 분산적인 서비스 기능 장애 복구를 위한 방법 및 시스템
CN113710558B (zh) 车辆控制装置以及计算机程序
KR20080082605A (ko) 기술적 장치, 특히 차량을 위한 통신 시스템
US12255985B2 (en) Method for authentic data transmission between control devices of a vehicle, arrangement with control devices, computer program, and vehicle
CN115668191A (zh) 控制系统
WO2023223515A1 (ja) 攻撃経路推定システム、攻撃経路推定装置、攻撃経路推定方法及びプログラム
JP2011126327A (ja) 車載制御装置
US11609999B2 (en) Control system
JP7471532B2 (ja) 制御装置
JP7630613B2 (ja) 制御装置
JP7773498B2 (ja) 攻撃分析装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20220603

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240827

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250205

R150 Certificate of patent or registration of utility model

Ref document number: 7631007

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150