JP2018133743A - 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム - Google Patents

監視装置、通信システム、車両、監視方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP2018133743A
JP2018133743A JP2017027280A JP2017027280A JP2018133743A JP 2018133743 A JP2018133743 A JP 2018133743A JP 2017027280 A JP2017027280 A JP 2017027280A JP 2017027280 A JP2017027280 A JP 2017027280A JP 2018133743 A JP2018133743 A JP 2018133743A
Authority
JP
Japan
Prior art keywords
electronic device
monitoring
frame
ecu
information
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.)
Granted
Application number
JP2017027280A
Other languages
English (en)
Other versions
JP6782446B2 (ja
Inventor
吉治 今本
Yoshiharu Imamoto
吉治 今本
安齋 潤
Jun Anzai
潤 安齋
正人 田邉
Masato Tanabe
正人 田邉
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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co 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 Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to JP2017027280A priority Critical patent/JP6782446B2/ja
Priority to US15/879,758 priority patent/US10723361B2/en
Publication of JP2018133743A publication Critical patent/JP2018133743A/ja
Application granted granted Critical
Publication of JP6782446B2 publication Critical patent/JP6782446B2/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/04Monitoring the functioning of the control system
    • 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/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
    • 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/0205Diagnosing or detecting failures; Failure detection models
    • B60W2050/021Means for detecting failure or malfunction
    • 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
    • B60W50/045Monitoring control system parameters
    • B60W2050/046Monitoring control system parameters involving external transmission of data to or from the vehicle, e.g. via telemetry, satellite, Global Positioning System [GPS]
    • 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
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Human Computer Interaction (AREA)
  • Mechanical Engineering (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Small-Scale Networks (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)

Abstract

【課題】バス型ネットワーク上の電子機器の正当性を効率的に検査する。【解決手段】監視ECU26は、被検査ECU18から送信されたフレームについて、その正常性を判定するための監視基準を記憶する。監視ECU26は、被検査ECU18から送信された第1のIDのフレームを受信した場合、当該フレームに基づいて、上記監視基準と照合するための情報である照合情報を生成する。監視ECU26は、検査ECU24から送信された第2のIDのフレームが受信された場合、監視基準と照合情報とに基づく情報であって、被検査ECU18が正当か否かを確認可能な情報を検査ECU24へ送信する。【選択図】図1

Description

本発明は、データ処理技術に関し、特に監視装置、通信システム、車両、監視方法、およびコンピュータプログラムに関する。
近年、自動車には、多数の電子制御ユニット(Electronic Control Unit、以下「ECU」と呼ぶ。)が搭載されている。これらのECUを繋ぐネットワークは車載ネットワークと呼ばれる。車載ネットワークには多数の規格が存在するが、広く普及した規格としてCAN(Controller Area Network)がある。
車載ネットワーク内のECUが、書き換え要求元である他のECUが正当か否かを、当該他のECUに対する認証結果を基に判断する車載ネットワークシステムが提案されている(例えば、特許文献1参照)。
特開2012−104049号公報
自動運転の有効化に際し、車載ネットワーク上の各ECUが正常な状態にあるかを検査すべきことがあるが、特許文献1の技術では、各ECUにTPM(Trusted Platform Module)等のセキュリティチップを搭載する必要がある。この結果、各ECUにおける部品点数の増加を招くことがあり、また、車載ネットワークにおけるトラフィックの増加を招くことがある。
本発明はこうした状況に鑑みてなされたものであり、1つの目的は、バス型ネットワーク上の電子機器の正当性を効率的に検査する技術を提供することにある。
上記課題を解決するために、本発明のある態様の監視装置は、バス型ネットワークを介して、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、バス型ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える。
本発明の別の態様は、通信システムである。この通信システムは、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、監視装置と、がバス型ネットワークを介して接続された通信システムであって、監視装置は、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、バス型ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える。
本発明のさらに別の態様は、車両である。この車両は、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、監視装置と、がバス型の車載ネットワークを介して接続された車両であって、監視装置は、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、車載ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える。
本発明のさらに別の態様は、監視方法である。この方法は、バス型ネットワークを介して、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する監視装置が、バス型ネットワークからフレームを受信し、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、基準と照合するための情報である照合情報を生成し、第2の電子機器から送信された第2のIDのフレームが受信された場合、基準と照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する。
なお、以上の構成要素の任意の組合せ、本発明の表現を、コンピュータプログラム、コンピュータプログラムを記録した記録媒体などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、バス型ネットワーク上の電子機器の正当性を効率的に検査することができる。
実施例の車両の構成を示す図である。 図1の検査ECUの機能構成を示すブロック図である。 図1の監視ECUの機能構成を示すブロック図である。 監視基準の例を示す図である。 監視ECUの動作を示すフローチャートである。 図5のS16の監視基準更新処理の詳細を示すフローチャートである。 検査ECUの動作を示すフローチャートである。 表示部の例を示す図である。 実施例における監視ECUと検査ECUとの相互作用を示すシーケンス図である。 変形例における監視ECUと検査ECUとの相互作用を示すシーケンス図である。
実施例の構成を説明する前に概要を説明する。自動運転の有効化および無効化にあたり、車両の電子系(言い換えれば車載ネットワーク)が正常な状態にあるか、例えばマルウェア等が動作していないかを検査すべきことがある。車載ネットワーク上のECUが正常な状態にあるかを検査するために、これまでは、TCG(Trusted Computing Group)のアテステーション(Attestation)が実施されることがあった。アテステーションは、デバイス上で起動されたソフトウェアのハッシュ値を根拠に、デバイスの完全性を検証する技術である。
しかし、車載ネットワーク上の複数のECUが正常な状態にあるかを検査するためには、各ECUにTPM等の信頼の起点になるモジュール(例えばセキュリティチップ)を搭載する必要があり、各ECUにおける部品点数の増加、および、車載ネットワークにおけるトラフィックの増加を招くことがあった。また、アテステーションはECUの起動時の正当性を判定するものであり、ECU起動後にマルウェアが混入した場合は検出ができないという問題もあった。
そこで、実施例では、バス型の車載ネットワーク上で、各ECUの正当性を検証する監視装置を提案する。この監視装置は、監視ルールにしたがって車載ネットワークのバスを流れるメッセージを監視し、各ECUに代わってアテステーション要求に応答する。すなわち、実施例では、“バスに接続された各ECUが予め定められたメッセージルールに則って通信している”ことを根拠に各ECUの正当性を検証する監視装置を信頼の起点として、バスに接続された各ECUの正当性を判断可能にする技術を提案する。
図1は、実施例の車両10の構成を示す。車両10は、ADAS(Advanced Driver Assistance Systems)12、HMI(Human Machine Interface)装置20、被検査ECU18a、被検査ECU18b、被検査ECU18c、被検査ECU18d(総称する場合「被検査ECU18」と呼ぶ。)、監視ECU26を備える。図1の各装置は、バス型の車載ネットワークであるCAN28を介して接続され、車載ネットワークシステムを構成する。
後述するように、監視ECU26は、CAN28およびインターネットを介して、車外に設けられた情報処理装置であるサーバ29と通信する。サーバ29には、被検査ECU18に対する最新の監視基準が登録される。サーバ29は、登録された最新の監視基準を車両10へ提供する。
複数の被検査ECU18のそれぞれは、車両10の自動運転時にADAS12による制御対象となるECUであり、正常性が検査されるべきECUである。複数の被検査ECU18は、例えば、エンジンECU、ブレーキECU、ステアリングECU、トランスミッションECUであってもよい。
ADAS12は、車両10の自動運転を制御するシステムである。ADAS12は、センサ14a、センサ14b、センサ14c等の複数のセンサと、ADAS−ECU16を備える。複数のセンサは、例えば、加速度センサ、ジャイロセンサ、ソナー、カメラを含む。ADAS−ECU16は、複数のセンサからの入力データに基づいて、自動運転における複数のアクチュエータの動作内容を決定し、決定した内容にてアクチュエータを動作させるよう複数の被検査ECU18を制御する。
HMI装置20は、車両10の乗員に対して各種情報を提示し、車両10の乗員により入力された指示を受け付ける。HMI装置20は、カーナビゲーション装置、IVI(In-Vehicle Infotainment)装置であってもよい。HMI装置20は、表示部22と検査ECU24を含む。表示部22は、各種情報を表示するディスプレイおよびランプを含む。検査ECU24は、ADAS有効化ECUとも言え、被検査ECU18の正常性が確認された場合に、ADASの有効化(すなわち自動運転開始)の指示をADAS−ECU16へ送信する。検査ECU24の機能の詳細は後述する。
監視ECU26は、所定の監視ルールに基づいて、CAN28のバスを流れるメッセージ(「フレーム」または「パケット」とも言え、以下「フレーム」と呼ぶ。)を監視し、被検査ECU18に代わって検査ECU24からのアテステーション要求に応答する。監視ECU26は、専用機器として実装されてもよい。また、CAN28の複数のバス間でフレームを中継するCGW(Central GateWay)のECU、または、複数のバスに亘ってフレームを監視するCMI(Centralized Monitoring and Interceptor)のECUに、監視ECU26の機能を含む監視モジュールが組み込まれてもよい。その場合、CGWのECUまたはCMIのECUが監視ECU26として動作してもよい。監視ECU26の機能の詳細は後述する。
図2は、図1の検査ECU24の機能構成を示すブロック図である。検査ECU24は、公開鍵記憶部30、通信部32、指示受付部34、診断要求送信部36、診断応答確認部38、自動運転指示部40、表示制御部42を備える。
本明細書のブロック図において示される各ブロックは、ハードウェア的には、コンピュータのCPU・メモリをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。例えば、図2の各ブロックに対応するモジュールを含むコンピュータプログラムが、検査ECU24のメモリに格納されてもよい。検査ECU24のCPUは、そのコンピュータプログラムを適宜実行することにより、各ブロックの機能を発揮してもよい。
公開鍵記憶部30は、予め定められた監視ECU26の公開鍵を記憶する。通信部32は、所定の通信プロトコルにしたがって外部装置と通信する。実施例では、通信部32は、監視ECU26に対する診断要求フレームをCAN28へ出力し、また、監視ECU26から出力された診断応答フレームをCAN28から受信する。また、通信部32は、自動運転の開始を指示するメッセージをADAS−ECU16へ送信する。なお、検査ECU24とADAS−ECU16は、図1のように直接接続されてもよく、CAN28を介して通信してもよい。
指示受付部34は、所定のボタンや液晶ディスプレイ等を介して入力された乗員の指示を受け付ける。自動運転指示部40は、自動運転開始を指示するデータを、通信部32を介してADAS−ECU16へ送信する。表示制御部42は、表示部22における表示内容を制御する。
診断要求送信部36は、被検査ECU18の正常性を確認するための診断要求フレームを、通信部32を介して監視ECU26へ送信する。診断要求送信部36は、診断要求フレームに、診断要求フレームに対して予め割り当てられたメッセージIDと、動的に生成したチャレンジ(乱数値)とを設定する。診断要求送信部36は、指示受付部34により自動運転開始の指示が受け付けられた場合に、診断要求フレームを監視ECU26へ送信してもよい。
診断応答確認部38は、診断要求フレームに対する応答である診断応答フレームのデータを通信部32から取得する。診断応答フレームは、被検査ECU18が正常か否かを示す診断情報と、監視ECU26による署名とを含む。診断応答確認部38は、診断応答フレームを署名により検証する。なお、実施例では、被検査ECU18が正常か否かを監視ECU26が判定するが、変形例として、被検査ECU18が正常か否かを検査ECU24が判定してもよい。
署名は、診断要求フレームで送信したチャレンジと、診断情報とに基づいて生成したハッシュ値を、監視ECU26の秘密鍵で暗号化したデータであってもよい。診断応答確認部38は、(1)公開鍵記憶部30に記憶された監視ECU26の公開鍵により署名を復号したデータを取得するとともに、(2)診断要求フレームで送信したチャレンジと、診断応答フレームの診断情報との合成データのハッシュ値を取得してもよい。診断応答確認部38は、(1)で取得したデータと、(2)で取得したハッシュ値とが一致する場合に、診断応答フレームの検証に成功した(すなわち診断応答フレームが改ざんされていない)と判定してもよい。
診断応答確認部38は、診断応答フレームの検証に成功した場合、診断情報が示す被検査ECU18の正当性に関する情報、言い換えれば、CAN28の正常性に関する情報を所定の記憶領域に格納する。また、診断情報が、被検査ECU18が正当であること、言い換えれば、CAN28が正常であることを示す場合、診断応答確認部38は、自動運転開始を指示するデータを自動運転指示部40からADAS−ECU16へ送信させる。その一方、診断情報が、被検査ECU18が異常であることを示す場合、診断応答確認部38は、自動運転開始を指示するデータを自動運転指示部40がADAS−ECU16へ送信することを禁止する。
また、診断応答確認部38は、表示制御部42を介して、被検査ECU18の正当性に関する情報を所定のディスプレイまたはランプに表示させる。例えば、診断情報が、被検査ECU18が正当であることを示す場合、診断応答確認部38は、その旨をディスプレイに表示させてもよく、所定のランプを第1の色彩(例えば緑色)で点灯させてもよい。また、診断情報が、被検査ECU18が異常であることを示す場合、診断応答確認部38は、その旨をディスプレイに表示させてもよく、所定のランプを第2の色彩(例えば赤色)で点灯させてもよい。また、診断情報を未取得の状態であり、すなわち、被検査ECU18の正当性が不明であれば、診断応答確認部38は、その旨をディスプレイに表示させてもよく、所定のランプを第3の色彩(例えば黄色)で点灯させてもよい。
図3は、図1の監視ECU26の機能構成を示すブロック図である。監視ECU26は、秘密鍵記憶部50、監視基準記憶部52、診断情報記憶部54、通信部56、監視部58、応答部64、監視基準更新部66、起動処理部68を備える。監視部58は、照合情報生成部60と判定部62を含む。
秘密鍵記憶部50は、予め定められた監視ECU26の秘密鍵を記憶する。監視基準記憶部52は、複数の被検査ECU18のそれぞれから送信されたフレームの正常性を検査するための基準(正常性を判定する規則または条件とも言え、以下「監視基準」と呼ぶ。)を記憶する。図4は、監視基準の例を示す。実施例における監視基準は、CAN28のトラフィックの正常状態を定義したデータである。監視基準は、メッセージID(フレームID、CAN−IDとも言える)、フレーム送信元である被検査ECU18のID、MAC値(Message Authentication Code)の有無、コミットメントの有無、送信周期、フレーム数、認証アルゴリズムを含む。
コミットメントは、ハッシュチェーンによる認証がなされる場合に、フレームに付加されたハッシュ値と照合するデータである。例えば、被検査ECU18aから送信されるフレームに、或るデータに対してn回(nは正の整数)ハッシュ演算を繰り返した結果のハッシュ値が付加される場合、コミットメントは、被検査ECU18aから事前に送信された上記或るデータに対してn+1回ハッシュ演算を繰り返した結果のハッシュ値であってもよい。ハッシュ関数は一方向性を持つため、フレームに付加されたハッシュ値に対してハッシュ演算を1回実行した結果がコミットメントに一致する場合、コミットメントの送信装置とフレームの送信装置とは同じであることが保障される。コミットメントが「有り」の場合、監視基準記憶部52は、そのメッセージIDに対応づけてコミットメントを別途記憶する。
送信周期は、或るメッセージIDの先のフレームを受信してから、同じメッセージIDの次のフレームを受信するまでの時間である。平均周期、下限周期、上限周期のいずれであってもよい。フレーム数は、単位時間(例えば10秒)において受信されるフレームの個数である。
なお、図4に示す監視基準の項目は一例である。例えば、監視基準は、フレームの内容、例えば車両10の走行(または運転)の態様を示すデータの範囲や上限等を規定する項目を含んでもよい。また、監視基準は、過去に受信された他のフレームの内容(車両走行の態様等)との関係を規定する項目を含んでもよい。言い換えれば、監視基準は、複数のフレームの内容の組み合わせや状態遷移を規定する項目を含んでもよい。例えば、高速走行時において正常と見なすステアリング角度の範囲を規定する項目を含んでもよい。また、監視基準は、図4には不図示の統計状態を含んでもよい。
図3に戻り、診断情報記憶部54は、後述の判定部62による判定結果を含む診断情報を記憶する。診断情報は、複数の被検査ECU18の中に異常なECUが存在するか否か、例えば、マルウェアの混入等により監視基準を逸脱した通信を行っているECUが存在するか否かを示す情報を含んでもよい。また、診断情報は、異常と判定されたECUのIDおよび/またはフレームのIDを含んでもよい。また、診断情報は、CAN28が正常状態(すなわち全ての被検査ECU18が正常)、または、CAN28が異常状態(少なくとも1つの被検査ECU18が異常)であることを示す情報を含んでもよい。
通信部56は、CAN28を流れるフレームをCAN28のバスから受信する。また、通信部56は、応答部64から出力された診断応答フレームをCAN28のバスへ出力する。
監視部58は、通信部56により受信されたフレームが、複数の被検査ECU18のいずれかから送信されたフレームであり、言い換えれば、監視基準に定められたIDを含むフレームである場合、受信されたフレームを検査対象フレームとして識別する。監視部58は、検査対象フレームと、そのメッセージIDに対応する監視基準との照合処理を実行する。
監視部58は、照合情報生成部60と判定部62を含む。照合情報生成部60は、検査対象フレームのデータに基づいて、監視基準と照合するための情報である照合情報を生成する。判定部62は、照合情報生成部60により生成された照合情報を、検査対象フレームのメッセージIDに対応する監視基準に照合することにより、検査対象フレームの送信元である被検査ECU18が正当か否かを判定する。
実施例の照合情報生成部60は、検査対象フレームについて、(1)MAC値を含むか否か、(2)コミットメント(ハッシュチェーンのハッシュ値)を含むか否か、(3)同一IDのフレームが過去に受信されてからの時間間隔、(4)同一IDのフレームの単位時間における受信個数、(5)MAC値を含む場合のMAC認証(メッセージ認証)の結果、(6)ハッシュチェーンのハッシュ値を含む場合のハッシュチェーン認証の結果を含む照合情報を生成する。
実施例の判定部62は、以下の全ての条件が満たされた場合に、検査対象フレームの送信元の被検査ECU18が正常状態(言い換えれば正当性がある)と判定する。少なくとも1つの条件が満たされなければ、判定部62は、被検査ECU18が異常状態と判定する。変形例として、判定部62は、未知のECUが検出されている場合、すなわち、条件を満たさないフレームが受信された場合も、異常状態と判定してもよい。
実施例において必須となる条件は以下の4つである。(1)監視基準がMAC値有りの場合に、検査対象フレームがMAC値を含むこと。(2)監視基準がコミットメント有りの場合に、検査対象フレームがハッシュチェーンのハッシュ値を含むこと。(3)同一IDのフレームが過去に受信されてからの時間間隔と、監視基準の送信周期との差が所定の範囲内であること。(4)同一IDのフレームの単位時間における受信個数と、監視基準のフレーム数との差が所定の範囲内であること。判定部62は、CAN28を流れるフレームが正しい状態にあると判断するのに十分となる時間まで計測する。
上記の条件(3)(4)は、監視基準の値以上であること、または監視基準の値以下であることを条件としてもよい。また、監視基準には、正常と見なす範囲、もしくは異常と見なす範囲が規定されてもよい。監視基準の認証アルゴリズムにMACが含まれる場合、(5)MAC認証に成功したことが条件に追加される。また、監視基準の認証アルゴリズムにハッシュチェーンが含まれる場合、(6)検査対象フレームのハッシュ値と、予め記憶されたコミットメントとに基づくハッシュチェーン認証に成功したことが条件に追加される。また、(7)CAN−IDから観測される運転状態の遷移または相関、(8)ECUが受信したフレームに対して正常なフレームを応答しているか、がさらに条件に追加されてもよい。なお、上記条件(1)〜(8)の一部を用いて異常状態を判定してもよく、また、これらの条件は任意の組み合わせが可能である。
判定部62は、検査対象フレームに対する判定結果を示す診断情報を診断情報記憶部54に格納する。判定部62は、検査対象フレームの送信元である被検査ECU18を正常状態と判定した場合、被検査ECU18が正常状態である(言い換えれば正当性がある)ことを示す診断情報を記録する。また、判定部62は、検査対象フレームの送信元である被検査ECU18を異常状態と判定した場合、被検査ECU18が異常状態であることを示す診断情報を記録する。
応答部64は、通信部56により受信されたフレームが、診断要求フレームに割り当てられたIDが付与されたフレームである場合、当該フレームを検査ECU24から送信された診断要求フレームと識別する。応答部64は、診断要求フレームへの応答として、監視基準記憶部52の監視基準と、照合情報生成部60により生成された照合情報とに基づく診断情報であり、被検査ECU18が正当(言い換えれば正常状態)か否かを確認可能な診断情報を検査ECU24へ送信する。実施例の応答部64は、診断要求フレームが受信された場合に、診断情報記憶部54に記憶された診断情報を含む診断応答フレームを通信部56からCAN28へ出力させる。
応答部64は、診断情報フレームに署名を付加する。具体的には、応答部64は、診断要求フレームに付加されたチャレンジと診断情報とを合成したデータを所定のハッシュ関数へ入力してハッシュ値を取得する。応答部64は、秘密鍵記憶部50に記憶された監視ECU26の秘密鍵でハッシュ値を暗号化したデータを署名として診断情報フレームに付加する。
監視基準更新部66は、所定の条件が満たされた場合に、サーバ29と連携して、監視基準記憶部52に記憶された監視基準を更新する。実施例における監視基準の更新タイミングは、(1)新たな被検査ECU18の追加時、(2)監視ECU26または被検査ECU18のファームウェア更新時、(3)車両10のメンテナンス時である。監視基準更新部66は、上記更新タイミングに至ったことを自動的に検出した場合、もしくは、監視基準の更新指示を外部装置(車両10に接続されたメンテナンス作業者の端末等)から受信した場合に、サーバ29へアクセスし、最新の監視基準をダウンロードする。
なお、更新タイミングの自動検出について、例えば、監視基準更新部66は、監視基準等に定められていない新規のメッセージIDが付与されたフレームを受信した場合に、新たな被検査ECU18が追加されたことを検出し、サーバ29へアクセスしてもよい。
起動処理部68は、監視ECU26の起動時に、公知のセキュアブートを実行する。また、起動処理部68は、監視モジュール(例えば監視部58のモジュール)と、監視基準記憶部52に記憶された監視基準の両方を署名に基づいて検証する。例えば、起動処理部68は、監視部58のプログラムのデータから生成したハッシュ値と、署名が示すハッシュ値とが一致するかを検証し、また、監視基準のデータから生成したハッシュ値と、署名が示すハッシュ値とが一致するかを検証し、両者とも一致することを条件として、監視ECU26の起動を正常に完了してもよい。これにより、監視ECU26の起動時の完全性を確立することができる。
なお、起動処理部68は、上記の処理に代えて、もしくは上記の処理に加えて、監視ECU26に搭載されたTPMにおける、特殊な更新操作でのみ書き換え可能な記憶領域(Platform Configuration Register:PCR)に、監視部58のプログラムのデータから生成したハッシュ値を格納してもよい。さらに、起動処理部68は、上記PCRに、監視基準のデータから生成したハッシュ値を格納してもよい。これにより、監視ECU26における監視モジュールと監視基準の正当性を外部装置において検証可能になる。なお、起動処理部68は、セキュアブートに代えて、トラステッドブートを実行してもよい。
以上の構成による監視ECU26および検査ECU24の動作を説明する。
図5は、監視ECU26の動作を示すフローチャートである。起動処理部68は、車両10のイグニッションがオンになり、監視ECU26の電源がオンになると、セキュアブートを実行し(S10)、監視部58および監視基準の正当性を検証する(S12)。監視基準の更新条件が満たされると(S14のY)、監視基準更新部66は、後述の監視基準更新処理を実行する(S16)。監視基準の更新条件が満たされなければ(S14のN)、S16をスキップする。
通信部56は、CAN28のバスからフレームを受信する(S18)。受信フレームが検査対象フレームであれば(S20のY)、照合情報生成部60は、検査対象フレームに基づいて照合情報を生成する。判定部62は、検査対象フレームに対応する監視基準と照合情報とを照合することにより、検査対象フレームの正当性を検証し、言い換えれば、検査対象フレームの送信元である被検査ECU18の正当性を検証する(S22)。判定部62は、被検査ECU18の正当性の検証結果を診断情報として診断情報記憶部54に保存する(S24)。
受信フレームが検査対象フレームでなく(S20のN)、診断要求フレームであれば(S26のY)、応答部64は、診断情報記憶部54に保存された診断情報と署名とを含む診断応答フレームを検査ECU24へ送信する(S28)。受信フレームが診断要求フレームでもなければ(S26のN)、S28をスキップする。監視ECU26の電源がオフに切り替わる等の所定の終了条件が満たされると(S30のY)、監視ECU26は監視状態を終了し(S32)、本図のフローを終了する。終了条件が満たされなければ(S30のN)、S18に戻る。
図6は、図5のS16の監視基準更新処理の詳細を示すフローチャートである。監視基準更新部66は、サーバ29へ接続し(S40)、サーバ29が新たな監視基準を保持している場合、その新たな監視基準をダウンロードする(S42)。新たな監視基準は、監視基準記憶部52に保存済の既存の監視基準より作成日時が新しいものであってもよい。サーバ29から新たな監視基準を取得した場合(S44のY)、監視基準更新部66は、その新たな監視基準を監視基準記憶部52に保存することにより、監視基準を更新する(S46)。
サーバ29から新たな監視基準を取得せず(S44のN)、ユーザ指定の監視基準の保存が要求された場合(S48のY)、監視基準更新部66は、ユーザ指定の監視基準を監視基準記憶部52に保存することにより、監視基準を更新する(S46)。ユーザ指定の監視基準の保存が要求されなければ(S48のN)、S46をスキップする。ユーザ指定の監視基準は、ユーザ(運転者等)が独自に作成した監視基準でもよく、SDカード等の所定の記録メディアに格納されてもよい。監視基準更新部66は、その記録メディアから監視基準を読み出して監視基準記憶部52に保存してもよい。この場合、ユーザ自身が作成した監視基準をユーザの自己責任の下、異常検知に使用する。
なお、車両10にサードパーティの装置を追加した場合、その装置に対する監視基準を監視基準記憶部52に追加してもよい。この場合、追加される監視基準に対して、装置のベンダによる署名が付加されている場合、もしくは、署名がなくてもユーザが所定の操作(許諾ボタンを押す等)を行った場合に、上記サードパーティ装置に対する監視基準を監視基準記憶部52に追加してもよい。
図7は、検査ECU24の動作を示すフローチャートである。検査ECU24は、電源がオンになると、セキュアブートを実行する(S50)。起動時点では診断応答を未受信であるため、診断応答確認部38は、CAN(言い換えれば被検査ECU18)の状態が未定である旨を所定の記憶領域(ログ等)に記録する(S52)。表示制御部42は、CANの状態が未定であることを示す情報を表示部22に表示させる。図8は、表示部の例を示す。ダッシュボード70内のタコメーター72の近傍に表示部22としてのランプ74が設けられてもよい。CANの状態が未定であるとき、表示制御部42は、ランプ74を黄色で点灯させてもよい。
図7に戻り、診断要求送信部36は、チャレンジ(乱数値)を含む診断要求フレームを監視ECU26へ送信する(S54)。診断要求フレームの送信から所定時間内に診断応答フレームを未受信であれば(S56のN)、診断応答確認部38は、所定のタイムアウト処理を実行し(S58)、CANの状態が異常である旨を所定の記憶領域に記録する(S60)。表示制御部42は、CANの状態が異常であることを示す情報を表示部22に表示させる。例えば、表示制御部42は、図8のランプ74を赤色で点灯させてもよい。
診断要求フレームの送信から所定時間内に診断応答フレームを受信した場合(S56のY)、診断応答確認部38は、診断応答フレーム内の診断情報を確認する(S62)。被検査ECU18が異常である旨を示す診断情報であれば(S64のN)、診断応答確認部38は、CAN(言い換えれば被検査ECU18)の状態が異常である旨を所定の記憶領域に記録する(S60)。その一方、被検査ECU18が正常である旨を示す診断情報であれば(S64のY)、診断応答確認部38は、CANの状態が正常である旨を所定の記憶領域に記録する(S66)。表示制御部42は、CANの状態が正常であることを示す情報を表示部22に表示させる。例えば、表示制御部42は、図8のランプ74を緑色で点灯させてもよい。電源がオフに切り替わる等の所定の終了条件が満たされると(S68のY)、本図のフローを終了する。終了条件が満たされなければ(S68のN)、S54に戻る。
図7には不図示だが、被検査ECU18が正常であることを示す診断応答フレームを受信し(S64のY)、かつ、指示受付部34により自動運転開始の指示が受け付けられた場合、自動運転指示部40は、自動運転開始の指示を示す信号をADAS−ECU16へ送信する。また、診断情報が被検査ECU18の異常を示す場合(S64のN)、指示受付部34により自動運転開始の指示が受け付けられても、自動運転指示部40は、自動運転開始の指示を示す信号をADAS−ECU16へ送信することを抑制する。自動運転指示部40は、自動運転開始の指示後に、被検査ECU18の異常を示す診断情報が受信された場合、自動運転終了の指示を示す信号をADAS−ECU16へ送信してもよい。
図9は、実施例における監視ECU26と検査ECU24との相互作用を示すシーケンス図である。監視ECU26は、CAN28のバスを流れるフレームの監視を開始する(S100)。検査ECU24は、チャレンジC1を生成し(S102)、チャレンジC1を含む診断要求1を監視ECU26へ送信する(S104)。監視ECU26は、被検査ECU18が正常か否かを示す診断情報と署名とを含む診断応答1を検査ECU24へ送信する(S106)。監視ECU26は、CAN28のバスを流れるフレームの監視を継続する(S108)。検査ECU24は、診断応答1の署名を検証し(S110)、診断応答1の診断情報に応じた処理を実行する(S112)。すなわち、被検査ECU18が正常である場合の第1の処理、または、被検査ECU18が異常である場合の第2の処理を選択的に実行する。
S112から所定時間後に、検査ECU24は、チャレンジC2を生成し(S114)、チャレンジC2を含む診断要求2を監視ECU26へ送信する(S116)。監視ECU26は、被検査ECU18が正常か否かを示す診断情報と署名とを含む診断応答2を検査ECU24へ送信する(S118)。検査ECU24は、診断応答2の署名を検証し(S120)、診断応答2の診断情報に応じた処理を実行する(S122)。以降、監視ECU26と検査ECU24は、図9に示す相互作用を繰り返す。
実施例の監視ECU26によると、被検査ECU18にTPM等のセキュリティチップを搭載することなく、被検査ECU18の外部から被検査ECU18の正当性を検証することができる。これにより、被検査ECU18の部品点数を低減でき、また、被検査ECU18の開発コストおよび製造コストを低減できる。
また、監視ECU26は、CAN28を流れるメッセージを監視するため、被検査ECU18の起動完了後、被検査ECU18がデータ処理を実行中に、被検査ECU18の正当性を検証することができる。これにより、被検査ECU18の起動完了後に、被検査ECU18にマルウェアが混入して、被検査ECU18が不正な挙動を行う場合も、被検査ECU18の異常を検知することができる。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素あるいは各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
変形例を説明する。監視ECU26応答部64は、監視部58が被検査ECU18の異常を検知しない間、言い換えれば、被検査ECU18の異常を示す診断情報が未生成の間、被検査ECU18が正常であることを示すハッシュチェーンのデータを自律的かつ定期的に検査ECU24へ送信してもよい。図10は、変形例における監視ECU26と検査ECU24との相互作用を示すシーケンス図である。同図のS130〜S134は、図9のS100〜S104と同じであるため説明を省略する。
監視ECU26の応答部64は、被検査ECU18が正常か否かを示す診断情報、署名、ハッシュチェーン用のハッシュデータ(例えば診断情報に対するハッシュ演算を1000回繰り返したものであり、ここでは「H1000」と呼ぶ。)を含む診断応答1を検査ECU24へ送信する(S136)。以降のS138〜S142の処理は、図9のS108〜S112と同じであるが、検査ECU24は、診断応答1に付加されたH1000をコミットメントとして記憶しておく。
監視ECU26の応答部64は、S136後、所定時間(例えば3分等)の経過を検出すると、診断情報記憶部54に記憶された診断情報を確認し、被検査ECU18の異常が検知されていないかを確認する。被検査ECU18の正常状態が維持されていれば、応答部64は、ハッシュチェーン用のハッシュデータを含む正常状態継続メッセージを検査ECU24へ送信する(S144)。このハッシュデータは、S136で送信した診断情報に対するハッシュ演算を999回繰り返したものであり、ここでは「H999」と呼ぶ。また、正常状態継続メッセージは、当該メッセージを示すIDが設定されたCANのフレームとも言える。
正常状態継続メッセージ送信後、監視ECU26の監視部58は、CAN28を流れるフレームの監視を継続する(S146)。検査ECU24の診断応答確認部38は、正常状態継続メッセージを受信すると、当該メッセージ内のH999の正当性を検証する(S148)。具体的には、診断応答確認部38は、H999に対してハッシュ演算を1回実行した結果が、コミットメントとして記憶したH1000に一致する場合にH999が正当と判定する。正常状態継続メッセージには署名が付与されないが、ハッシュチェーンにより正常状態継続メッセージの送信元が監視ECU26であることが保障される。診断応答確認部38は、被検査ECU18が正常状態であることに応じた処理を実行する(S150)。
図10には不図示だが、S144後、上記所定時間の経過を検出する都度、監視ECU26の応答部64は、新たな正常状態継続メッセージ(H998を含む)を検査ECU24へ送信する。また、図10には不図示だが、被検査ECU18の異常が検出された場合、監視ECU26の応答部64は、正常状態継続メッセージの送信を中止する。それとともに、応答部64は、前回の正常状態継続メッセージの送信から上記所定時間が経過したか否かにかかわらず、被検査ECU18の異常を示す診断応答フレームを検査ECU24へ直ちに送信してもよい。
この変形例によると、検査ECU24と監視ECU26間で署名が付与されたデータを送受信することに比べて、署名の通信コストおよび検証コストを低減することができる。
別の変形例を説明する。この変形例では、複数の被検査ECU18の中に、自発的にはフレームを送信しない被検査ECU18(いわゆる読み取り専用のECUであり、ここでは「特殊被検査ECU」と呼ぶ。)が存在する場合の監視ECU26の構成を説明する。監視ECU26の監視部58は、要求送信部をさらに含む。要求送信部は、所定の応答メッセージ(例えば認証メッセージ等)を要求する要求フレームを特殊被検査ECUへ送信する。
監視基準には、特殊被検査ECUから送信される応答フレーム(例えば認証メッセージ等)の正常性を検査するための内容(MACの有無等)が規定される。判定部62は、要求フレームに応じて特殊被検査ECUから送信された応答フレームの正常性を、監視基準にしたがって判定することにより、特殊被検査ECUが正当か否かを判定する。例えば、チャレンジレスポンス認証により、特殊被検査ECUが正当か否かを判定してもよい。この変形例によると、自発的にはフレームを送信しない被検査ECU18の正当性を外部から検証することができる。
さらに別の変形例を説明する。上記実施例では言及していないが、監視ECU26は、フレームの受信状況と受信したフレームの態様とに基づいて、新たな監視基準を生成する監視基準生成部をさらに備えてもよい。例えば、自動運転時に制御対象となる新たな被検査ECU18が車両10に追加された場合、監視ECU26は、その新たな被検査ECU18が送信するフレームであり、監視基準に未定義のIDを含むフレームを受信することになる。このとき、監視基準生成部は、監視基準に未定義のIDを含むフレームの形式、および受信頻度等に基づいて、当該フレーム用の監視基準を含む新たな監視基準を生成してもよい。監視基準更新部66は、監視基準生成部により生成された新たな監視基準をサーバ29へアップロードする。監視基準更新部66は、その新たな監視基準がサーバ29により認証された場合に、その新たな監視基準を監視基準記憶部52へ保存し、既存の監視基準に置き換えてもよい。
さらに別の変形例を説明する。上記実施例では、被検査ECU18の正当性を監視ECU26が判定した。変形例では、被検査ECU18の正当性を検査ECU24が判定してもよい。被検査ECU18の診断応答確認部38は、実施例の判定部62と同等の判定部を含んでもよい。この変形例の監視ECU26は、検査ECU24に対して、被検査ECU18が正当か否かを確認可能となる情報を提供する。
具体的には、監視ECU26の監視部58は、監視基準に規定されたIDを持つ1つ以上の検査対象フレームを所定の記憶領域(「フレーム記憶部」と呼ぶ。)に逐次記憶してもよい。監視ECU26の応答部64は、診断要求フレームが受信されると、フレーム記憶部に記憶された1つ以上の検査対象フレームのデータと、各検査対象フレームのIDに対応する監視基準(「対応監視基準」と呼ぶ。)とを含む診断応答フレームを検査ECU24へ送信してもよい。検査ECU24の判定部は、検査対象フレームのデータと対応監視基準とに基づいて、検査対象フレームの送信元である被検査ECU18の正当性を判定してもよい。
上記実施例に記載の技術は、車載ネットワークシステムに制限されず、CAN等のバス型ネットワーク、言い換えれば、ブロードキャスト型の通信が行われるネットワークを介してデータが送受信される装置およびシステムに広く適用可能である。例えば、工場、工作機械、ロボット等の装置およびシステムにも広く適用可能である。
なお、実施例および変形例に記載の技術は、以下の項目によって特定されてもよい。
[項目1]
バス型ネットワークを介して、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、バス型ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える監視装置。
この監視装置によると、検査対象となる第1の電子機器に、TPM等のセキュリティチップを搭載することなく、第1の電子機器の外部から第1の電子機器の正当性を検証することができる。また、この監視装置は、バス型ネットワークを流れるメッセージを監視するため、第1の電子機器が起動を完了してデータ処理を実行中でも、第1の電子機器の正当性を検証することができる。
[項目2]
生成部により生成された照合情報を、記憶部に記憶された基準に照合することにより、第1の電子機器が正当か否かを判定する判定部をさらに備えてもよい。応答部は、第1の電子機器が正当か否かを確認可能な情報として、判定部による判定結果を送信してもよい。
この態様によると、監視装置が第1の電子機器の正当性を判定するため、第2の電子機器における処理負荷を低減することができる。
[項目3]
所定の条件が満たされた場合に、外部のサーバと連携して、記憶部に記憶された基準を更新する更新部をさらに備えてもよい。
この態様によると、第1の電子機器から送信されたフレームに対する監視基準を適切な内容に維持することができる。
[項目4]
第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、監視装置と、がバス型ネットワークを介して接続された通信システムである。監視装置は、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、バス型ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える。
この通信システムによると、検査対象となる第1の電子機器に、TPM等のセキュリティチップを搭載することなく、第1の電子機器の外部から第1の電子機器の正当性を検証することができる。また、監視装置は、バス型ネットワークを流れるメッセージを監視するため、第1の電子機器が起動を完了してデータ処理を実行中でも、第1の電子機器の正当性を検証することができる。
[項目5]
第2の電子機器は、第1の電子機器が正当か否かを示す情報を所定の表示装置に表示させてもよい。この態様によると、第1の電子機器の状態を分かり易くユーザに提示することができる。
[項目6]
第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、監視装置と、がバス型の車載ネットワークを介して接続された車両である。監視装置は、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、車載ネットワークからフレームを受信する受信部と、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、第2の電子機器から送信された第2のIDのフレームが受信された場合、記憶部に記憶された基準と、生成部により生成された照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する応答部と、を備える。
この車両によると、検査対象となる第1の電子機器に、TPM等のセキュリティチップを搭載することなく、第1の電子機器の外部から第1の電子機器の正当性を検証することができる。また、監視装置は、バス型ネットワークを流れるメッセージを監視するため、第1の電子機器が起動を完了してデータ処理を実行中でも、第1の電子機器の正当性を検証することができる。
[項目7]
バス型ネットワークを介して、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する監視装置が、バス型ネットワークからフレームを受信し、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、基準と照合するための情報である照合情報を生成し、第2の電子機器から送信された第2のIDのフレームが受信された場合、基準と照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信する監視方法。
この監視方法によると、検査対象となる第1の電子機器に、TPM等のセキュリティチップを搭載することなく、第1の電子機器の外部から第1の電子機器の正当性を検証することができる。また、この監視方法によると、バス型ネットワークを流れるメッセージを監視するため、第1の電子機器が起動を完了してデータ処理を実行中でも、第1の電子機器の正当性を検証することができる。
[項目8]
バス型ネットワークを介して、第1の電子機器と、第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する監視装置に、バス型ネットワークからフレームを受信し、第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、基準と照合するための情報である照合情報を生成し、第2の電子機器から送信された第2のIDのフレームが受信された場合、基準と照合情報とに基づく情報であって、第1の電子機器が正当か否かを確認可能な情報を第2の電子機器へ送信することを実行させるためのコンピュータプログラム。
このコンピュータプログラムによると、検査対象となる第1の電子機器に、TPM等のセキュリティチップを搭載することなく、第1の電子機器の外部から第1の電子機器の正当性を検証することができる。また、このコンピュータプログラムによると、バス型ネットワークを流れるメッセージを監視するため、第1の電子機器が起動を完了してデータ処理を実行中でも、第1の電子機器の正当性を検証することができる。
上述した実施例および変形例の任意の組み合わせもまた本発明の実施の形態として有用である。組み合わせによって生じる新たな実施の形態は、組み合わされる実施例および変形例それぞれの効果をあわせもつ。また、請求項に記載の各構成要件が果たすべき機能は、実施例および変形例において示された各構成要素の単体もしくはそれらの連携によって実現されることも当業者には理解されるところである。
10 車両、 18 被検査ECU、 24 検査ECU、 26 監視ECU、 29 サーバ、 52 監視基準記憶部、 56 通信部、 60 照合情報生成部、 62 判定部、 64 応答部、 66 監視基準更新部。

Claims (8)

  1. バス型ネットワークを介して、第1の電子機器と、前記第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、
    前記第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、
    前記バス型ネットワークからフレームを受信する受信部と、
    前記第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、前記記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、
    前記第2の電子機器から送信された第2のIDのフレームが受信された場合、前記記憶部に記憶された基準と、前記生成部により生成された照合情報とに基づく情報であって、前記第1の電子機器が正当か否かを確認可能な情報を前記第2の電子機器へ送信する応答部と、
    を備える監視装置。
  2. 前記生成部により生成された照合情報を、前記記憶部に記憶された基準に照合することにより、前記第1の電子機器が正当か否かを判定する判定部をさらに備え、
    前記応答部は、前記第1の電子機器が正当か否かを確認可能な情報として、前記判定部による判定結果を送信する、
    請求項1に記載の監視装置。
  3. 所定の条件が満たされた場合に、外部のサーバと連携して、前記記憶部に記憶された基準を更新する更新部をさらに備える、
    請求項1または2に記載の監視装置。
  4. 第1の電子機器と、
    前記第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、
    監視装置と、がバス型ネットワークを介して接続された通信システムであって、
    前記監視装置は、
    前記第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、
    前記バス型ネットワークからフレームを受信する受信部と、
    前記第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、前記記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、
    前記第2の電子機器から送信された第2のIDのフレームが受信された場合、前記記憶部に記憶された基準と、前記生成部により生成された照合情報とに基づく情報であって、前記第1の電子機器が正当か否かを確認可能な情報を前記第2の電子機器へ送信する応答部と、
    を備える通信システム。
  5. 前記第2の電子機器は、前記第1の電子機器が正当か否かを示す情報を所定の表示装置に表示させる請求項4に記載の通信システム。
  6. 第1の電子機器と、
    前記第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器と、
    監視装置と、がバス型の車載ネットワークを介して接続された車両であって、
    前記監視装置は、
    前記第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する記憶部と、
    前記車載ネットワークからフレームを受信する受信部と、
    前記第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、前記記憶部に記憶された基準と照合するための情報である照合情報を生成する生成部と、
    前記第2の電子機器から送信された第2のIDのフレームが受信された場合、前記記憶部に記憶された基準と、前記生成部により生成された照合情報とに基づく情報であって、前記第1の電子機器が正当か否かを確認可能な情報を前記第2の電子機器へ送信する応答部と、
    を備える車両。
  7. バス型ネットワークを介して、第1の電子機器と、前記第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、前記第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する監視装置が、
    前記バス型ネットワークからフレームを受信し、
    前記第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、前記基準と照合するための情報である照合情報を生成し、
    前記第2の電子機器から送信された第2のIDのフレームが受信された場合、前記基準と前記照合情報とに基づく情報であって、前記第1の電子機器が正当か否かを確認可能な情報を前記第2の電子機器へ送信する、
    監視方法。
  8. バス型ネットワークを介して、第1の電子機器と、前記第1の電子機器が正当か否かに応じた処理を実行すべき第2の電子機器とに接続された監視装置であって、前記第1の電子機器から送信されたフレームについて、その正常性を判定するための基準を記憶する監視装置に、
    前記バス型ネットワークからフレームを受信し、
    前記第1の電子機器から送信された第1のIDのフレームが受信された場合、当該フレームに基づいて、前記基準と照合するための情報である照合情報を生成し、
    前記第2の電子機器から送信された第2のIDのフレームが受信された場合、前記基準と前記照合情報とに基づく情報であって、前記第1の電子機器が正当か否かを確認可能な情報を前記第2の電子機器へ送信する、
    ことを実行させるためのコンピュータプログラム。
JP2017027280A 2017-02-16 2017-02-16 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム Active JP6782446B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017027280A JP6782446B2 (ja) 2017-02-16 2017-02-16 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム
US15/879,758 US10723361B2 (en) 2017-02-16 2018-01-25 Monitoring apparatus, communication system, vehicle, monitoring method, and non-transitory storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017027280A JP6782446B2 (ja) 2017-02-16 2017-02-16 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2018133743A true JP2018133743A (ja) 2018-08-23
JP6782446B2 JP6782446B2 (ja) 2020-11-11

Family

ID=63106261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017027280A Active JP6782446B2 (ja) 2017-02-16 2017-02-16 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム

Country Status (2)

Country Link
US (1) US10723361B2 (ja)
JP (1) JP6782446B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992530A (zh) * 2021-10-20 2022-01-28 潍柴动力股份有限公司 波特率识别方法、装置、电子设备和存储介质
JP2022513496A (ja) * 2018-12-17 2022-02-08 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング 演算装置および演算装置の作動方法
JP7109621B1 (ja) 2021-05-06 2022-07-29 三菱電機株式会社 制御システム
WO2022255005A1 (ja) * 2021-05-31 2022-12-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 監視システム、監視方法、監視装置および機能制限装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11025428B2 (en) * 2016-05-05 2021-06-01 Neustar, Inc. Systems and methods for enabling trusted communications between controllers
EP3444742B1 (en) * 2017-08-16 2021-06-16 Veoneer Sweden AB A driver assistance apparatus and method
US10841284B2 (en) * 2018-05-30 2020-11-17 Lear Corporation Vehicle communication network and method
DE102018220324A1 (de) * 2018-11-27 2020-05-28 Audi Ag Verfahren zur Überwachung eines Datenübertragungssystems, Datenübertragungssystem und Kraftfahrzeug
CN109709937B (zh) * 2018-12-28 2020-12-01 北京经纬恒润科技有限公司 电子控制单元功能配置方法、装置及电子控制单元
GB2592924A (en) * 2020-03-10 2021-09-15 Daimler Ag Method for detecting a fraud device in a communication network of a vehicle
KR20230016493A (ko) * 2021-07-26 2023-02-02 현대자동차주식회사 차량 제어 장치 그 제어 방법
CN114244747B (zh) * 2021-11-12 2023-11-17 潍柴动力股份有限公司 一种报文健康监控方法、装置及ecu
KR20240026754A (ko) * 2022-08-22 2024-02-29 현대자동차주식회사 차량 네트워크 내의 통신 채널 상태를 진단하는 방법 및 시스템

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3450808B2 (ja) * 2000-08-25 2003-09-29 株式会社東芝 電子機器及び接続制御方法
JP2004336619A (ja) * 2003-05-12 2004-11-25 Sony Corp 機器間認証システム及び機器間認証方法、通信機器、並びにコンピュータ・プログラム
JP5395036B2 (ja) 2010-11-12 2014-01-22 日立オートモティブシステムズ株式会社 車載ネットワークシステム

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022513496A (ja) * 2018-12-17 2022-02-08 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング 演算装置および演算装置の作動方法
JP7372975B2 (ja) 2018-12-17 2023-11-01 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング 演算装置および演算装置の作動方法
US11960611B2 (en) 2018-12-17 2024-04-16 Robert Bosch Gmbh Efficient distribution of processes between a vehicle control computing device and a cryptographic module, and method for operation thereof
JP7109621B1 (ja) 2021-05-06 2022-07-29 三菱電機株式会社 制御システム
JP2022172517A (ja) * 2021-05-06 2022-11-17 三菱電機株式会社 制御システム
WO2022255005A1 (ja) * 2021-05-31 2022-12-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 監視システム、監視方法、監視装置および機能制限装置
WO2022254521A1 (ja) * 2021-05-31 2022-12-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 監視システム、監視方法、監視装置および機能制限装置
CN113992530A (zh) * 2021-10-20 2022-01-28 潍柴动力股份有限公司 波特率识别方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US20180229739A1 (en) 2018-08-16
JP6782446B2 (ja) 2020-11-11
US10723361B2 (en) 2020-07-28

Similar Documents

Publication Publication Date Title
JP6782446B2 (ja) 監視装置、通信システム、車両、監視方法、およびコンピュータプログラム
EP3690643B1 (en) Vehicle-mounted device upgrading method and related device
KR102310252B1 (ko) 자동차 운전자 보조 시스템에 관련된 방법
US11397801B2 (en) System and method for controlling access to an in-vehicle communication network
CN107925600B (zh) 安全处理方法以及服务器
US9866570B2 (en) On-vehicle communication system
US9916151B2 (en) Multiple-stage secure vehicle software updating
JP6807906B2 (ja) 車両へのコンピュータ攻撃を阻止するためのルールを生成するシステムおよび方法
US9577997B2 (en) Authentication system and authentication method
US11107300B2 (en) Driving management system, vehicle, and information processing method
US20200057630A1 (en) Method and Apparatus for Wirelessly Updating Software for Vehicle
WO2018135098A1 (ja) 監視装置、監視方法およびコンピュータプログラム
JP2015079440A (ja) 修正プログラム確認方法、修正プログラム確認プログラム、及び情報処理装置
WO2018207243A1 (ja) 車載認証システム、車載認証方法および車載認証プログラム
JP2018160786A (ja) 監視装置、監視方法およびコンピュータプログラム
CN112153646B (zh) 认证方法、设备及系统
JP6782444B2 (ja) 監視装置、監視方法およびコンピュータプログラム
US20180310173A1 (en) Information processing apparatus, information processing system, and information processing method
EP3320475A1 (en) A method and a system for reliable computation of a program
US20230336356A1 (en) Data storage device, data storage method, and non-transitory computer readable storage medium
US11966458B2 (en) Authentication method, authentication system, and authentication device
US20220239472A1 (en) Service-oriented architecture in a vehicle
US20220303139A1 (en) Method for installing a computing component and associated electronic device
CN117294450A (zh) 一种车辆证书更新系统、方法、计算机设备及存储介质
CN117195216A (zh) 车辆校验方法、相关装置及系统

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180416

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200910

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: 20200915

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201002

R151 Written notification of patent or utility model registration

Ref document number: 6782446

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

SZ03 Written request for cancellation of trust registration

Free format text: JAPANESE INTERMEDIATE CODE: R313Z03