JP7226543B2 - 電子制御装置および通信システム - Google Patents

電子制御装置および通信システム Download PDF

Info

Publication number
JP7226543B2
JP7226543B2 JP2021524691A JP2021524691A JP7226543B2 JP 7226543 B2 JP7226543 B2 JP 7226543B2 JP 2021524691 A JP2021524691 A JP 2021524691A JP 2021524691 A JP2021524691 A JP 2021524691A JP 7226543 B2 JP7226543 B2 JP 7226543B2
Authority
JP
Japan
Prior art keywords
value
freshness
received
list
message
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
JP2021524691A
Other languages
English (en)
Other versions
JPWO2020246145A1 (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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Publication of JPWO2020246145A1 publication Critical patent/JPWO2020246145A1/ja
Application granted granted Critical
Publication of JP7226543B2 publication Critical patent/JP7226543B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • H04L63/126Applying verification of the received information the source of the received data
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Between Computers (AREA)

Description

関連出願の相互参照
本出願は、2019年6月4日に出願された日本特許出願番号2019-104708号に基づくもので、ここにその記載内容を援用する。
本出願は、電子制御装置(ECU:Electric Control Unit)のセキュリティを確保するためのメッセージの検証に関するものであり、主として車載の電子制御装置に用いるものである。
近年、自動車は駆動、制動に限らず、車内環境全般、あるいは通信などにも電子制御装置を用いた制御が用いられるようになってきている。また、運転そのものについても、運転者に対する運転サポートを行う安全運転支援システム、さらには運転者そのものが不要な自動運転システムの開発が活発になっている。これらの流れの中で、電子制御装置が接続された車内ネットワークへの不正アクセスが大きな問題となる。電子制御装置が悪意の第三者による不正アクセスによって不正に制御されると、自動車運転の安全性が脅かされることとなる。そこで、車載向け電子制御装置のセキュリティに関する様々な技術が提案されている。
不正アクセスの1つに、正規のメッセージを盗み取り、盗み取ったメッセージをそのまま送信して正規のメッセージになりすます、再生攻撃(replay attack)と呼ばれるものがある。このような再生攻撃に対しては、メッセージに付与されたカウンタやタイムスタンプを用いて、メッセージが正常なメッセージまたは再生攻撃による不正なメッセージのいずれかを判定する方法が提案されている。
例えば、特許文献1には、メッセージに付与されたカウント値と、受信側EUCが保持するカウント値とを比較することにより、再生攻撃による不正なメッセージを検出することが開示されている。特許文献1の手法によればさらに、カウンタが複数の種類のカウント値から構成されていることにより、送信側と受信側との間でカウント値のずれが生じにくくなり、また、カウント値のずれが生じた場合でも送信側と受信側との間で容易に再同期することが可能となる。
ところで、通信には、通信を開始する前に接続(コネクション)を確立するコネクション型通信と、接続を事前に確立せずに通信を行うコネクションレス型通信がある。コネクション型通信とは異なり、コネクションレス型通信ではパケットの受信順序は保証されないため、送信側でのパケットの送信順序と、受信側でのパケットの受信順序とが異なることが起こりうる。そのため、このようなコネクションレス型通信においてカウント値を用いたメッセージの正/不正判定を行うと、受信側がカウント値を連続して受信することができず、正常なメッセージを異常であると誤って判定する可能性がある。
これに対し、非特許文献1、2には、シーケンス番号の許容範囲(window)を設定し、送信側電子制御装置から送信されたメッセージに含まれるシーケンス番号が所定の許容範囲であるかどうかに基づいてメッセージの正/不正判定を行うことが記載されている。非特許文献1、2の許容範囲は、過去に受信したシーケンス番号の最大値、および当該最大値から所定の値を差し引いた値を用いて設定される。
特開2017-38365号
Datagram Transport Layer Security、https://tools.ietf.org/rfc/rfc4347.txt IP Encapsulating Security Payload (ESP)、https://tools.ietf.org/rfc/rfc2406.txt
このような許容範囲を設定することにより、受信順序の入れ替わりが発生した場合のメッセージの誤判定をある程度抑制することが可能となる。しかしながら、非特許文献1、2の技術では、実際の通信状況に応じた許容範囲を設定することができない。さらに、本発明者は、特許文献1のようにカウンタが複数の種類のカウント値から構成されている場合はカウンタの値が急激に変化することがあり、このような急激な変化が生じたタイミングで受信順序の入れ替わりが発生すると、非特許文献1、2に記載の許容範囲を利用しても誤判定が起こる可能性があることを知見した。
そこで、本開示の目的は、メッセージの正/不正を高い精度で判定することができる電子制御装置を提供することにある。
本開示の一態様による電子制御装置は、メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置から、前記メッセージおよび前記フレッシュネス値を受信する電子制御装置であって、前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、当該電子制御装置は、当該電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストを保存する保存部と、前記送信側電子制御装置から送信された前記メッセージおよび前記フレッシュネス値を受信する受信部と、前記受信部で受信した前記フレッシュネス値である受信値と前記FVリストとを比較するFV検証部と、前記FV検証部で比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記受信値を保持するように前記FVリストを更新するリスト更新部と、を備える。
本開示の他の態様による通信システムは、コネクションレス型通信を用いてメッセージを送信する送信側電子制御装置、および前記メッセージを受信する受信側電子制御装置で構成される通信システムであって、前記送信側電子制御装置は、前記メッセージ、および前記メッセージに付与され、予め設定された上位更新条件に従って更新される上位側ビットおよび予め設定された下位更新条件に従って更新される下位側ビットから構成されたフレッシュネス値を送信する送信部を備え、前記受信側電子制御装置は、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストを保存する保存部と、前記送信側電子制御装置から送信された前記メッセージおよび前記フレッシュネス値を受信する受信部と、前記受信部で受信した前記フレッシュネス値である受信値と前記FVリストとを比較するFV検証部と、前記FV検証部で比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記受信値を保持するように前記FVリストを更新するリスト更新部と、を備える。
本開示の他の態様によるメッセージ受信プログラムは、メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置から前記メッセージおよび前記フレッシュネス値を受信する受信側電子制御装置で実行されるメッセージ受信プログラムであって、前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、当該メッセージ受信プログラムは、前記送信側電子制御装置から送信された前記メッセージおよび前記フレッシュネス値を受信し、受信した前記フレッシュネス値である受信値と、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストとを比較し、前記受信値と前記FVリストとを比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記受信値を保持するように前記FVリストを更新する。
本開示の他の態様によるメッセージ受信方法は、メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置から前記メッセージおよび前記フレッシュネス値を受信する受信側電子制御装置で実行されるメッセージ受信方法であって、前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、当該メッセージ受信方法は、前記送信側電子制御装置から送信された前記メッセージおよび前記フレッシュネス値を受信し、受信した前記フレッシュネス値である受信値と、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストとを比較し、前記受信値と前記FVリストとを比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記受信値を保持するように前記FVリストを更新する。
本開示の電子制御装置、通信システム、メッセージ受信プログラム、及びメッセージ受信方法によれば、電子制御装置間の通信状況に応じて自動的に設定される許容範囲を用いてメッセージの正/不正を判定することができるため、判定の精度を高めることができる。また、フレッシュネス値の構成によってフレッシュネス値が急激に変化する場合にも、高い精度でメッセージの正/不正を判定することが可能となる。
図1は、実施形態1の通信システムおよび電子制御装置の構成を説明するブロック図であり、 図2は、実施形態1の通信システムで送受信されるフレームを説明する図であり、 図3は、実施形態1のフレッシュネス値を説明する図であり、 図4は、実施形態1の受信側電子制御装置の動作を説明する図であり、 図5は、実施形態1の受信済みフレッシュネス値リストを説明する図であり、 図6は、実施形態1の受信済みフレッシュネス値リストの他の例を説明する図であり、 図7は、実施形態2の通信システムおよび電子制御装置の構成を説明するブロック図であり、 図8は、実施形態2の受信側電子制御装置の動作を説明する図であり、 図9は、実施形態2の受信側電子制御装置の動作を説明する図である。
以下、本開示の実施形態について、図面を参照して説明する。
なお、以下に示す本発明とは、請求の範囲に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともダブルクォーテーション内の語句は、請求の範囲に記載された語句を意味し、同じく以下の実施形態に限定されるものではない。
請求の範囲の従属項に記載の構成および方法、従属項に記載の構成および方法に対応する実施形態の構成および方法、並びに請求の範囲に記載がなく実施形態のみに記載の構成および方法は、本発明においては任意の構成および方法である。請求の範囲の記載が実施形態の記載よりも広い場合における実施形態に記載の構成および方法も、本発明の構成および方法の例示であるという意味で、本発明においては任意の構成および方法である。いずれの場合も、請求の範囲の独立項に記載することで、本発明の必須の構成および方法となる。
実施形態に記載した効果は、本発明の例示としての実施形態の構成を有する場合の効果であり、必ずしも本発明が有する効果ではない。
複数の実施形態がある場合、各実施形態に開示の構成は各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。例えば一の実施形態に開示の構成を、他の実施形態に組み合わせても良い。また、複数の実施形態それぞれに開示の構成を集めて組み合わせても良い。
本開示に記載した知見や課題は公知の課題ではなく、本発明者が独自に知見したものであり、本開示の構成および方法と共に発明の進歩性を肯定する事実である。
なお、以下の実施形態は、主として自動車の車載用電子制御装置を例として説明するが、本発明は、特許請求の範囲で限定がない限り、車載用途以外の電子制御装置等を含むものである。
(実施形態1)
1.通信システムの構成
図1は、本実施形態の通信システム10を示している。通信システム10は、複数の“電子制御装置”、すなわち、メッセージを格納したフレームを送信する送信側電子制御装置(以下、送信側ECU)100、当該フレームを受信する受信側電子制御装置(以下、受信側ECU)200、およびこれらを接続する通信路からなる。以下の実施形態では、複数の電子制御装置が、Ethernet(登録商標)といったコネクションレス型の通信方式を用いてフレームを送受信することを前提として説明するが、この例に限定されるものではない。
ここで、“電子制御装置”とは、情報を取得又は処理することができ、かつ情報を他の装置との間で送信及び/又は受信できるものであればよく、車載用の電子制御装置の他、例えば、コンピュータ(パーソナルコンピュータ、組み込み型のマイクロコンピュータ等)、通信装置(携帯電話、スマートフォン、タブレット、基地局等)、回路基板、半導体モジュール、半導体などが挙げられ、完成品、半完成品、部品の形態のいずれも含むものである。
2.送信側ECUの構成
本実施形態の送信側ECU100は、メッセージ生成部101、FV生成部102、および送信部103を備える。送信側ECU100、およびこれを構成する個々の機能ブロックは、専用又は汎用の中央演算処理装置、メモリ、バス、およびメモリに展開されて実行されるプログラムによって実現されてもよく、また半導体モジュールや回路基板をはじめとする専用のハードウェアで実現されてもよい。後述の受信側ECU200も同様である。
メッセージ生成部101は、受信側ECU200に送信するメッセージ(MSG)を生成する。車両に搭載された車載用のECUの場合におけるメッセージの具体例として、車両を制御するための各種制御データが挙げられる。車載用以外のECUの場合は、例えばセンサー等で検知した検出データ、テキストデータ、音声データ、画像データ等が挙げられる。
ここで、電子制御装置間の通信では、通信方式毎に定められた最大データサイズ(MTU:Maximum Transmission Unit)を超えるデータを一度に送受信することができない。そのため、MTUを超えるデータは、MTU以下のサイズに分割する必要がある。そこで、メッセージ生成部101は、車両の制御データ等が所定のMTUを超える場合には、送信可能なサイズに分割して、分割メッセージを生成する。
以下に示す実施形態では、メッセージ生成部101がデータを分割して分割メッセージを生成する例を説明するが、制御データのサイズが最大データサイズ以下の場合には、メッセージ生成部101はデータを分割することなく受信側ECU200に送信してもよい。
FV生成部102は、後述の送信部103から送信されるフレームの送信回数または送信予定回数に応じて“フレッシュネス値”(FV:Freshness Value)を生成する。このフレッシュネス値は、予め設定された更新条件に従って更新される値である。FV生成部102は、例えば、フレームに格納されるメッセージに含まれるデータの種類に応じて設定されたメッセージID毎に送信回数をカウントすることにより、フレッシュネス値を生成する。例えば、メッセージID#1が付与されたフレームが4回送信された場合、メッセージ#1のフレッシュネス値は4(FV=4)となる。以下の実施形態では、フレームの送信回数をメッセージカウンタ(MsgCnt)と称する。なお、メッセージカウンタの更新条件(“下位側更新条件”に対応)は、送信側ECU100からのフレームの送信である。
ここで、“フレッシュネス値”とは、特定のフレームが送信側電子制御装置から送信された回数、又は受信側電子制御装置で受信された回数を示す値であり、カウンタ、シーケンス番号も含む概念である。また、絶対的な値の他、例えばある基準を設けて当該基準からカウントした相対的な値も含む。
FV生成部102は、フレームの送信回数に加えて、送信側ECUの“起動”回数を考慮したフレッシュネス値を生成してもよい。FV生成部102は、例えば、送信側ECUの起動回数、ウェイクアップ回数、リセット回数、あるいは、通信システム10を搭載する車両のイグニッションがOFFからONになった回数をカウントし、これらのカウント回数を示す値と、フレームの送信回数を示す値とを含むフレッシュネス値を生成する。以下の実施形態では、送信側ECUの起動回数をトリップカウンタ(TripCnt)と称する。トリップカウンタの更新条件(“上位側更新条件”に対応)は、送信側ECU100の起動である。なお、フレッシュネス値がトリップカウンタおよびメッセージカウンタから構成される場合、トリップカウンタが増加又は初期化する毎に、メッセージカウンタの値が初期化、すなわち、0にリセットされてもよい。
ここで、“起動”とは、電子制御装置が動作していない状態から動作可能な状態に変化することをいい、電子制御装置の電源が入って起動することはもちろん、スリープ状態にある電子制御装置がウェイクアップすることや、電子制御装置がリセットされた状態から復帰することも含まれる。また、“起動”回数とは、結果的に電子制御装置が起動した回数を示すものであればよく、必ずしも電子制御装置の起動回数をカウントすることによって得られる回数でなくともよい。例えば、電子制御装置を搭載したシステムや車両等が起動する回数をカウントすることによって、当該回数を得てもよい。
送信部103は、メッセージ生成部101で生成されたメッセージに、FV生成部102で生成されたフレッシュネス値を付与または挿入し、さらにヘッダを付与したフレームを送信する。送信先として特定の受信側ECU200を指定して送信してもよいが、送信先を指定せずにブロードキャストで送信してもよく、結果的に受信側ECU200で受信できるものであればよい。
通信システム10が車載システムの場合、フレッシュネス値の生成およびメッセージへのフレッシュネス値の付与は、例えば、車載電子制御ユニットの標準ソフトウェア・アーキテクチャを策定するAUTOSARのSecOC(Secure Onboard Communication)によって実現することができる。
図2は、送信側ECU100から送信されるフレームの例を説明する図である。図2のフレームは、分割メッセージ、FV生成部102で生成されたフレッシュネス値(FV)、トランスポート層で付与されるUDPヘッダ、ネットワーク層で付与されるIPヘッダ、およびデータリンク層で付与されるイーサネットヘッダ(Ethヘッダ)からそれぞれ構成されている。
図2では、分割メッセージ1~nおよびフレッシュネス値1~nが、フレーム1~nにそれぞれ格納されている。つまり、メッセージ生成部101は制御データを分割してn個の分割メッセージを生成するものである。また、これらの分割メッセージに付与されたフレッシュネス値1~nは連続する値である。そして、送信部103は、図2に示すフレームをフレーム1から順に送信する。
なお、図2は、コネクションレス型の通信方式を利用する場合のフレームを示しており、メッセージにはUDPヘッダが付与されている。しかしながら、コネクション型の通信方式を利用して通信を行う場合には、UDPヘッダに代えてTCPヘッダを付与してもよい。
図3はさらに、フレームに含まれるフレッシュネス値の構成の一例を示している。図3のフレッシュネス値は、トリップカウンタを示す上位側8ビット、およびメッセージカウンタを示す下位側8ビットとから構成されている。例えば、図に示すFV1は、トリップカウンタ“00001100”およびメッセージカウンタ“00100100”から構成されている。これに対し、FV2は、FV1と比較して、上8桁目のトリップカウンタが1増加しており、さらに、トリップカウンタの増加に伴ってメッセージカウンタの値が初期化され、新たに1からカウントを開始した状態を示している。図3に示すように上8桁目の値が増加した場合、フレッシュネス値全体の値としては最大2の8乗(2)増加することになる。
なお、図2のフレーム、および図3のフレッシュネス値はいずれも例示にすぎず、これらの構成に限定されるものではない。例えば、図3に示すフレッシュネス値は、メッセージカウンタを示す上位側ビットと、トリップカウンタを示す下位側ビットから構成されてもよい。あるいは、フレッシュネス値は、メッセージカウンタおよびトリップカウンタ以外の値から構成されてもよく、例えば、トリップカウンタまたはメッセージカウンタに代えて、一定時間ごとに値が増加または減少するカウンタから構成されてもよい。ただし、フレッシュネス値が2以上のカウンタから構成される場合には、上位側ビットを構成するカウンタと下位側ビットを構成するカウンタは、異なる更新条件によって更新される値であることが望ましい。
また、トリップカウンタやメッセージカウンタの値には、予め最大値が設定されていてもよい。このような場合、カウンタの値が最大値を超えると、つまり、最大値になった後に更新条件が発生すると、カウンタの値を初期化して再びカウントを始める。
3.受信側ECUの構成
本実施形態の受信側ECU200は、受信部201、保存部202、FV検証部203、およびリスト更新部204を備える。
受信部201は、送信側ECU100から送信されたフレームを受信する。このフレームは図2に示すフレームであり、すなわち、メッセージおよびメッセージに付与されたフレッシュネス値が格納されたフレームである。
上述したとおり、本実施形態では、コネクションレス型の通信方式を利用して電子制御装置間の通信を行う。そのため、送信側ECU100が図2に示すフレームをフレーム1から順に送信しても、通信路上でフレームの順序が入れ替わる可能性がある。つまり、受信部201は、図2に示すフレーム1よりも先にフレーム2やフレームnを受信することが起こりうる。
保存部202は、フラッシュメモリやハードディスク(HDD)等の不揮発性メモリ、またはDRAMやSRAM等の揮発性メモリであり、受信済みフレッシュネス値リスト(以下、FVリスト)を保存する。FVリストは、送信側ECU100から送信され受信部201にて受信したフレッシュネス値のうち、最も値の大きいフレッシュネス値から大きい順に“所定の”数のフレッシュネス値を示すリストである。なお、FVリストには、同一のフレッシュネス値を重複して保持しない。FVリストの中で、最も値の大きいものを基準値とし、最も値の小さいものを許容値とする。許容値は、通信路上でのフレームの順序入れ替わりを考慮し、フレッシュネス値の減少を許容するための値を指す。
ここで、“所定の”とは、常に一定の場合の他、条件に応じて一意に定まる場合も含む。
なお、保存部202は、メッセージID毎、メッセージの種別毎にFVリストを保存してもよい。この場合、FVリストに含まれるフレッシュネス値の個数は、メッセージIDやメッセージの種別に応じてFVリスト毎に異なってもよく、それぞれの個数は工場やディーラーで予め設定される。あるいは、後述するように、FVリストに含まれるフレッシュネス値の個数は、種々のパラメータに応じて経時的に変化する値であってもよい。
保存部202に保存されたFVリストは、後述するFV検証部203においてフレッシュネス値が正常であると判定された場合に、当該正常であると判定されたフレッシュネス値を保持するように更新される。そのため、通信システム10を搭載した車両が初めて起動した直後は送信側ECU100から送信されたフレッシュネス値はなく、当然のことながら、正常であると判定されたフレッシュネス値もない。また、保存部202が揮発性メモリである場合には、車両を新たに起動する、あるいはイグニッションをONした直後も同様である。そこで、工場やディーラーで設定された初期値が、FVリストの基準値として保存部202に予め保存されていてもよい。トリップカウンタの値が初期化される場合、保存部202に保存されるFVリストも同様に初期化され、初期値に戻される。
なお、フレッシュネス値がトリップカウンタとメッセージカウンタとから構成されている場合、フレッシュネス値のうちトリップカウンタの値を保存部202の不揮発性メモリに記憶し、メッセージカウンタの値を揮発性メモリに記憶してもよい。
FV検証部203は、受信部201で受信したフレッシュネス値(以下、受信値)と、保存部202に保存されたFVリストに含まれるフレッシュネス値とを比較する。比較した結果、受信値が、以下の第1の条件または第2の条件を満たす場合には、受信値は正常であり、検証結果はOKであると判定する。ここで、第1の条件とは受信値が基準値よりも大きい(基準値<受信値)ことである。また、第2の条件とは、受信値が基準値以下且つ許容値以上(許容値≦受信値≦基準値)であり、受信値がFVリストにないことである。これに対し、受信値が第1および第2の条件を満たさない場合、例えば、受信値が許容値よりも小さい場合(受信値<許容値)には、フレッシュネス値は正常ではなく、検証結果がNGであると判定する。
リスト更新部204は、FV検証部203が受信値は正常であると判定した場合に、正常であると判定された受信値を保持するようにFVリストを更新する。更新後のFVリストは、当該受信値を含むリストとなる。
なお、保存部202が複数のFVリストを保存している場合には、リスト更新部204は、受信値のメッセージIDに対応するFVリストを更新する。すなわち、受信側ECUは、検証結果がOKとなった場合、フレッシュネス値を保持し、メッセージIDに対応するFVリストを更新する。そして、FVリストには、これまで保持したフレッシュネス値の内、値の大きい方から数えてn(E_ReceivedFreshnessValueListSize)までの値が含まれる。
リスト更新部204はさらに、FVリストに含まれるフレッシュネス値の個数を、通信路におけるフレームの順序入れ替わりの発生状況、フレームの受信頻度、あるいは通信路の混雑状況といった通信システムの通信状況や、メッセージを分割した個数、分割メッセージのサイズに応じて適宜設定してもよい。例えば、リスト更新部204は、フレームの順序入れ替わりが発生している場合には、FVリストに含まれるフレッシュネス値の個数を増加させることによってフレッシュネス値の許容範囲を拡張し、フレームの順序入れ替わりが発生していない場合はフレッシュネス値の個数を維持または減少させることによって、フレッシュネス値の許容範囲を拡張しないようにする。なお、フレームの順序入れ替わりが発生しているか否かは、FV検証部203での比較検証結果に応じて、つまり、第1の条件または第2の条件であるかに応じて判定することができる。つまり、FV検証部203での検証結果が第1の条件の場合には順序入れ替わりは発生していないが、第2の条件の場合には順序入れ替わりが発生したと判定する。FVリストに含まれるフレッシュネス値の個数を通信状況に応じて変化させることにより、電子制御装置間の実際の通信状況に適したフレッシュネス値の許容範囲を設定することができる。
4.メッセージ受信方法、および同方法を実行するプログラム
図4を用いて、受信側ECU200で実行されるメッセージ受信方法を説明する。
なお、図4は電子制御装置におけるメッセージの受信方法を示すだけでなく、電子制御装置で実行されるプログラムの処理手順を示すものである。また、図4に示す処理の順序は、ある処理が次の処理の前提条件となっていなければ、適宜入れ替えることが可能である。以下の実施形態2においても同様である。
受信側ECU200は、以下の各ステップを実行する。
送信側ECUから送信されたメッセージ、およびメッセージに付与されたフレッシュネス値(FV)を受信する(S101)。次いで、S101で受信したフレッシュネス値である受信値と、保存部に保存されたFVリストの基準値および許容値とを比較する(S102)。
S102において比較した結果、受信値が基準値以下且つ許容値以上の場合にはさらに、受信値とFVリストとを比較し、受信値がFVリストにあるかどうかを判定する(S103)。そして、受信値が未受信でありFVリストにない場合には受信値は正常であると判定する(S104)。
また、S102において比較した結果、受信値が基準値よりも大きい場合にも、受信値は正常であると判定する(S104)。
そして、S104において受信値が正常であると判定されると、正常であると判定された受信値を保持するようにFVリストを更新する(S105)。
一方、S102において比較した結果、受信値が許容値よりも小さい場合は、受信値は正常ではないと判定する(S106)。
また、S103において比較した結果、受信値がFVリストにある場合にも、受信値は正常ではないと判定する(S106)。
そして、S106において受信値が正常ではないと判定されると、当該受信値が付与されたフレームを廃棄する(S107)。
図5は、本実施形態のFVリストの一例を示している。この例では、初期値として基準値および許容値が予め0に設定されている。また、FVリストが、基準値から数えて順に5個のフレッシュネス値を示す場合を示している。
図5(a)は車両を初めて起動した直後のFVリスト1を示している。FV検証部203で正常であると判定されたフレッシュネス値はまだないため、FVリスト1は初期値として設定された基準値および許容値(FV=0)のみを示している。
図5(a)に示すFVリスト1の状態でフレッシュネス値(FV=1)を受信した場合を検討する。受信値(FV=1)は基準値(FV=0)よりも大きいため、受信値は正常であると判定されFVリストが更新される。図5(b)は、FVリスト1を更新した後のFVリスト2を示している。FVリスト2では、最大のフレッシュネス値(FV=1)が基準値であり、最小のフレッシュネス値(FV=0)が許容値である。
次に、図5(b)に示すFVリスト2の状態でフレッシュネス値(FV=5)を受信した場合を検討する。受信値(FV=5)は、基準値(FV=1)以上の値である。そこで、受信値は正常であると判定されFVリストが更新される。図5(c)は、FVリスト2を更新した後のFVリスト3を示している。
さらに、図5(c)に示すFVリスト3の状態でフレッシュネス値(FV=3)を受信した場合、受信値(FV=3)は、基準値(FV=5)以下且つ許容値(FV=0)以上であり、FVリスト3にない値である。そこで、受信値は正常であると判定されFVリストが更新される。
図5(d)は、フレッシュネス値(FV=5)の後にさらにフレッシュネス値(FV=3,2,6,7)を受信し、受信値がそれぞれ正常であると判定されてFVリストが更新された後の状態を示している。図5(d)に示すFVリスト4では、最大のフレッシュネス値(FV=7)が基準値であり、最小のフレッシュネス値(FV=2)が許容値である。FVリスト4によれば、初期値(FV=0)や、FVリスト2及び3に記載されているフレッシュネス値(FV=1)がリストから除外されたことが分かる。
本実施形態において、第三者が、送信側ECU100が過去に送信したフレームを用いて再送攻撃をした場合、再送攻撃による不正なフレームに含まれるフレッシュネス値は、受信側ECU200が過去に受信した、受信側ECU200のFVリストに含まれるフレッシュネス値と等しいか、あるいは許容値未満の値のフレッシュネス値となる。
例えば、保存部202に保存された図5(d)に示すFVリスト4の状態で、第三者がフレッシュネス値(FV=6)を含むフレームを用いて再送攻撃をした場合、受信値はFVリストにある値と同じとなる。そのため、FV検証部203は、フレッシュネス値(FV=6)は正常ではないと判定することができ、ひいては、当該フレッシュネス値が付与されたメッセージは正常ではないと判定することができる。
また、第三者が、フレッシュネス値(FV=1)を含むフレームを用いて再送攻撃をした場合は、受信値はFVリストの許容値未満の値である。そのため、FV検証部203は、フレッシュネス値(FV=1)は正常ではないと判定することができ、ひいては、当該フレッシュネス値が付与されたメッセージは正常ではないと判定することができる。
また、本実施形態において、送信側ECU100が送信したフレームの順序が通信路上で入れ替わる場合、受信側ECU200は、既に受信したフレッシュネス値よりも値が小さいフレッシュネス値を受信することになる。図5に示す例では、送信側ECU100は、数値が小さいフレッシュネス値を格納したフレームから順番に送信するが、受信側ECU200はフレッシュネス値(FV=1)から順番に受信しておらず、例えば、フレッシュネス値(FV=5)の後にフレッシュネス値(FV=3)を受信している。しかしながら、本実施形態では、フレッシュネス値の減少を許容する許容値が設定されているため、通信路でフレームの順序が入れ替わった場合でも、正常なフレッシュネス値が誤って正常ではないと判定されるのを防ぐことができる。
図6はさらに、フレッシュネス値が、図3に示すようにトリップカウンタおよびメッセージカウンタから構成される場合のFVリストの例を示している。説明を容易にするため、図6では、フレッシュネス値を3桁の数値で表し、上位1桁がトリップカウンタ、下位2桁がメッセージカウンタを示している。つまり、図6に示すFVリストの基準値のフレッシュネス値(FV=201)は、他のフレッシュネス値(FV=120,119,118,117)よりもトリップカウンタが増加していることを示している。
トリップカウンタおよびメッセージカウンタから構成されたフレッシュネス値を格納したフレームの順序が通信路上で入れ替わる場合も、図5の場合と同様に処理が行われる。
例えば、送信側ECU100が、フレッシュネス値(FV=121)を送信した後に、当該フレッシュネス値からトリップカウンタが増加したフレッシュネス値(FV=201)を送信する。通信路上で順序が入れ替わった場合、受信側ECU200は、フレッシュネス値(FV=201)の後にフレッシュネス値(FV=121)を受信する。図6に示すFVリストは、フレッシュネス値(FV=201)の受信後、フレッシュネス値(FV=121)の受信前のリストを示している。この状態でフレッシュネス値(FV=121)を受信した場合、受信値は基準値(FV=201)以下且つ許容値(FV=117)以上であり、FVリストにないため、フレッシュネス値(FV=121)は正常であると判定される。
ここで、本実施形態との比較のために、本実施形態とは異なる許容範囲を利用してメッセージの正/不正を判定する場合を検討する。例えば、フレッシュネス値の許容範囲となるFVリストには許容値以上且つ基準値以下のフレッシュネス値が含まれており、基準値がこれまでに受信したフレッシュネス値のうち最も値の大きいものであり、許容値が、基準値から所定値を減算して求まる値(基準値-[E_FreshnessValueToleranceWindow])である場合を検討する。この場合、基準値と許容値の差異は常に一定となる。
例えば、送信側ECUと受信側ECUとの間でコネクションレス型通信を行っても、通信方式、通信路の混雑状況、通信性能といった通信状況によって、フレームの到達順序が入れ替わらない、あるいは、入れ替わりにばらつきが生じることが考えられる。しかしながら、上述した方法によれば基準値と許容値の差異は常に一定となるため、実際の通信状況に応じて適切な許容範囲を設定することは難しい。
また、例えば、受信側ECU200がフレッシュネス値(FV=201)を受信し、図6に示すFVリストに更新した後にフレッシュネス値(FV=121)を受信する場合を検討する。当該フレッシュネス値(FV=121)が正常であると判断されるためには、許容値を求めるために基準値から減算する所定値を“80”に設定して、FVリストの範囲を広くする必要がある。しかしながら、FVリストの範囲を広く設定した場合、セキュリティ性が低下するおそれがあり、さらに、FVリストを保存するメモリの負荷が増加する。また、所定値を小さくしてFVリストの範囲を狭く設定すると、順序が入れ替わったフレッシュネス値は正常ではないと誤判定される可能性が高くなる。例えば、図6の例で所定値を“10”に設定した場合、許容値は“191(201-10)”となるため、フレッシュネス値(FV=121)は正常ではないと判定されることになる。
これに対し、本実施形態によれば、FVリストをフレッシュネス値の個数を基準として設定することにより、通信状況に適した許容範囲を自動的に設定することが可能となる。
さらに、フレッシュネス値の構成によってフレッシュネス値が急激に増加する場合でも、正常なフレッシュネス値が誤判定されるのを防止することができる。
なお、上述した実施形態では、送信側ECU100から送信されるフレッシュネス値は増加する値であり、それに伴って、FVリストは、受信したフレッシュネス値のうち最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すリストである場合を説明した。しかしながら、送信側ECU100から送信されるフレッシュネス値は減少する値であってもよい。この場合、受信側ECU200が保存するFVリストは、受信したフレッシュネス値のうち最も値の小さいフレッシュネス値を基準値とし、基準値から小さい順に所定の数のフレッシュネス値を示すリストとしてもよい。この例では、許容値がFVリストの中で最も値の大きいフレッシュネス値となる。
(実施形態2)
実施形態1では、フレッシュネス値およびFVリストを利用して、第三者による再送攻撃を防ぎ、通信システムのセキュリティを高める構成を説明した。本実施形態ではさらに、フレッシュネス値に加えて認証子をメッセージに付与して通信システムのセキュリティ性を高める構成を、実施形態1との相違点を中心に説明する。図7は、実施形態2の通信システム11、および通信システム11を構成する送信側ECU110および受信側ECU210を示している。
1.送信側ECUの構成
図7の送信側ECU110は、図1に示す送信側ECU100の各構成に加えて、MAC生成部111を備えている。
MAC生成部111は、メッセージ生成部101で生成されたメッセージ(MSG)、およびFV生成部102で生成されたフレッシュネス値(FV)を用いて認証子(MAC:Message Authentication Code)を生成する。例えば、メッセージにフレッシュネス値を付与又は挿入したデータに対し、メモリ(図示せず)に保存されたMAC鍵を用いてMACアルゴリズムに基づき計算することにより認証子を生成する。
送信部103は、メッセージ生成部101で生成されたメッセージに、FV生成部102で生成されたフレッシュネス値、およびMAC生成部111で生成された認証子を付与又は挿入し、さらにヘッダを付与したフレームを送信する。
2.受信側ECUの構成
図7の受信側ECU210は、図1に示す受信側ECU200の各構成に加えて、検証用MAC生成部211およびMAC検証部212を備えている。
本実施形態の受信部201は、送信側ECU110から送信されたフレームを受信する。このフレームは、メッセージ、およびメッセージに付与又は挿入されたフレッシュネス値および認証子が格納されたフレームである。
本実施形態のFV検証部203は、実施形態1のFV検証部203と同様の処理を行い、フレッシュネス値が正常であると判定した場合、正常であると判定したフレッシュネス値を検証用フレッシュネス値(検証用FV)として後述する検証用MAC生成部211に出力する。
検証用MAC生成部211は、メモリ(図示せず)に保存されたMAC鍵を取得し、当該MAC鍵、受信部201で受信したフレームに格納されているメッセージ、およびFV検証部203から出力された検証用フレッシュネス値を用いて検証用認証子(検証用MAC)を生成する。例えば、受信部101が受信したメッセージに検証用フレッシュネス値を付与又は挿入したデータに対し、MAC鍵を用いてMACアルゴリズムに基づき計算することにより検証用認証子を生成する。なお、検証用MAC生成部211が使用するMAC鍵は、送信側ECUと予め共有する鍵である。
MAC検証部212は、受信部201で受信したフレームに格納されている認証子と、検証用MAC生成部211で生成した検証用認証子を比較して検証する。認証子と検証用認証子が一致した場合、認証子は正常であり検証結果が正常(OK)であると判定して受信したフレームの処理を行う。一致しない場合は、検証が正常ではない(NG)と判定して、受信したフレームを破棄する。
3.受信側ECUの動作
図8、9を参照して、本実施形態の受信側ECU210の動作を説明する。図4と同じ処理については、図4と同じ符号を付して説明を省略する。
本実施形態の受信側ECU210は、送信側ECU110から送信されたメッセージ、メッセージに付与されたフレッシュネス値、および認証子を受信する(S201)。
また、S104においてフレッシュネス値の受信値が正常であると判定されると、MAC検証を行う(S202)。MAC検証として、図9のサブルーチンに示す以下の処理を行う。
メモリに保存されたMAC鍵を取得する(S301)。
図8のS104において正常であると判定されたフレッシュネス値の受信値を検証用フレッシュネス値として取得する(S302)。
S301において取得したMAC鍵、S302において取得した検証用フレッシュネス値、および受信部201で受信したメッセージを用いて、検証用認証子を生成する(S303)。
図8のS201において受信した認証子と、S303において生成した検証用認証子とを比較する(S304)。
S304において比較した結果、認証子と検証用認証子とが一致する場合には、図9に示す処理を終了し、図8に示すS105の処理に進みFVリストを更新する。これに対し、認証子と検証用認証子とが一致しない場合には、図8に示すAに進み、フレームを廃棄する(S107)。
例えば、第三者が、送信側ECU110から送信されたフレームの中身を不正に改ざんした場合、フレームに格納された認証子と、受信側ECU210で生成した検証用認証子とは一致しなくなる。その結果、受信側ECU210は、不正に改ざんされたメッセージを検出することが可能となる。
本実施形態によれば、フレッシュネス値とFVリストを用いてメッセージの正/不正を高い精度で判定するとともに、フレッシュネス値の検証結果が正常の場合のみ認証子を用いた検証を行うことにより、負荷の大きい認証子の生成処理を抑制するとともに、通信システムのセキュリティ性を高めることが可能となる。
(総括)
以上、本開示の実施形態における電子制御装置の特徴について説明した。
実施形態で使用した用語は例示であるので、同義の用語、あるいは同義の機能を含む用語に置き換えてもよい。
実施形態の説明に用いたブロック図は、電子制御装置の構成を機能毎に分類および整理したものである。これらの機能ブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。また、機能を示したものであることから、かかるブロック図は方法の発明の開示としても把握できるものである。
各実施形態に記載した処理、フロー、および方法として把握できる機能ブロックについては、一のステップで他のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えても良い。
各実施形態、および請求の範囲で使用する“第1”“第2”の用語は、同種の2以上の構成や方法を区別するために使用しており、順序や優劣を限定するものではない。
電子制御装置の例として、部品や半完成品としては、半導体、電子回路、モジュール、あるいはECU(エレクトロニックコントロールユニット)が挙げられる。また完成品としては、ドライブレコーダ、カーナビゲーションシステム、スマートフォン、パーソナルコンピュータ、携帯電話、携帯情報端末が挙げられる。
加えて、本開示は、各実施形態で説明した構成および機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本発明を実現するためのプログラム、およびこれを実行可能な専用又は汎用CPUおよびメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(ハードディスク、USBメモリ、CD/BD、又は内部記憶装置(RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
本開示の電子制御装置等は、各実施形態で自動車に搭載される電子制御装置を念頭に置いて説明したが、自動二輪車、船舶、鉄道、航空機等、移動する移動体全般に適用することが可能でありこれらを含むものである。また、移動体に限らず、コンピュータを包含する製品全般に適用可能である。

Claims (10)

  1. メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置(100,110)から、前記メッセージおよび前記フレッシュネス値を受信する電子制御装置(200,210)であって、
    前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、
    当該電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストを保存する保存部(202)と、
    前記送信側電子制御装置から送信された前記メッセージ前記フレッシュネス値、および前記メッセージに付与された認証子(MAC)を受信する受信部(201)と、
    前記受信部で受信した前記フレッシュネス値である受信値と前記FVリストとを比較するFV検証部(203)と、
    前記FV検証部で比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記メッセージおよび前記受信値から検証用認証子(MAC)を生成する検証用MAC生成部(211)と、
    前記認証子と前記検証用認証子の同一性を検証するMAC検証部(212)と、
    記受信値が前記基準値以下且つ前記許容値以上であり、前記受信値が前記FVリストにない場合であってさらに前記認証子と前記検証用認証子とが同一の場合に、前記FVリストが前記受信値を保持するとともに、当該電子制御装置が過去に受信した前記フレッシュネス値のうち、前記基準値から大きい順に前記所定の数のフレッシュネス値を保持するように前記FVリストを更新するリスト更新部(204)と、
    を備える電子制御装置。
  2. 当該電子制御装置が起動する際の前記基準値および前記許容値の初期値は、前記送信側電子制御装置の起動後に最初に送信されるフレッシュネス値よりも小さい値として予め設定された値である、
    請求項1記載の電子制御装置。
  3. 前記リスト更新部はさらに、前記受信値が前記基準値よりも大きい場合に、前記受信値を保持するように前記FVリストを更新する、
    請求項1記載の電子制御装置。
  4. 前記上位側ビットは前記送信側電子制御装置の起動回数を示す値であり、前記下位側ビットは前記送信側電子制御装置による前記メッセージの送信回数を示す値である、
    請求項1記載の電子制御装置。
  5. 前記保存部は不揮発性メモリおよび揮発性メモリを有し、前記FVリストが保持する前記フレッシュネス値のうち、前記上位側ビットの値は前記不揮発性メモリに保存し、前記下位側ビットの値は前記揮発性メモリに保存する、
    請求項1記載の電子制御装置。
  6. 前記リスト更新部は、前記上位側ビットが初期化される場合、前記FVリストを初期化する、
    請求項2又は請求項5記載の電子制御装置。
  7. 前記リスト更新部はさらに、前記所定の数を前記FV検証部での検証結果に応じて設定する、
    請求項1記載の電子制御装置。
  8. コネクションレス型通信を用いてメッセージを送信する送信側電子制御装置(100,110)、および前記メッセージを受信する受信側電子制御装置(200,210)で構成される通信システム(10)であって、
    前記送信側電子制御装置は、
    前記メッセージ、および前記メッセージに付与され、予め設定された上位更新条件に従って更新される上位側ビットおよび予め設定された下位更新条件に従って更新される下位側ビットから構成されたフレッシュネス値を送信する送信部(103)を備え、
    前記受信側電子制御装置は、
    前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストを保存する保存部(202)と、
    前記送信側電子制御装置から送信された前記メッセージ前記フレッシュネス値、および前記メッセージに付与された認証子(MAC)を受信する受信部(201)と、
    前記受信部で受信した前記フレッシュネス値である受信値と前記FVリストとを比較するFV検証部(203)と、
    前記FV検証部で比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記メッセージおよび前記受信値から検証用認証子(MAC)を生成する検証用MAC生成部(211)と、
    前記認証子と前記検証用認証子の同一性を検証するMAC検証部(212)と、
    記受信値が前記基準値以下且つ前記許容値以上であり、前記受信値が前記FVリストにない場合であってさらに前記認証子と前記検証用認証子とが同一の場合に、前記FVリストが前記受信値を保持するとともに、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、前記基準値から大きい順に前記所定の数のフレッシュネス値を保持するように前記FVリストを更新するリスト更新部(204)と、を備える、
    通信システム。
  9. メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置(100,110)から前記メッセージおよび前記フレッシュネス値を受信する受信側電子制御装置(200,210)で実行されるメッセージ受信プログラムであって、
    前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、
    当該メッセージ受信プログラムは、
    前記送信側電子制御装置から送信された前記メッセージ前記フレッシュネス値、および前記メッセージに付与された認証子(MAC)を受信し、
    受信した前記フレッシュネス値である受信値と、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストとを比較し、
    比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記メッセージおよび前記受信値から検証用認証子(MAC)を生成し、
    前記認証子と前記検証用認証子の同一性を検証し、
    記受信値が前記基準値以下且つ前記許容値以上であり、前記受信値が前記FVリストにない場合であってさらに前記認証子と前記検証用認証子とが同一の場合に、前記FVリストが前記受信値を保持するとともに、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、前記基準値から大きい順に前記所定の数のフレッシュネス値を保持するように前記FVリストを更新する、
    メッセージ受信プログラム。
  10. メッセージおよび前記メッセージに付与されたフレッシュネス値をコネクションレス型通信を用いて送信する送信側電子制御装置(100,110)から前記メッセージおよび前記フレッシュネス値を受信する受信側電子制御装置(200,210)で実行されるメッセージ受信方法であって、
    前記フレッシュネス値は、予め設定された上位更新条件に従って更新される上位側ビット、および予め設定された下位更新条件に従って更新される下位側ビットから構成され、
    当該メッセージ受信方法は、
    前記送信側電子制御装置から送信された前記メッセージ前記フレッシュネス値、および前記メッセージに付与された認証子(MAC)を受信し、
    受信した前記フレッシュネス値である受信値と、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、最も値の大きいフレッシュネス値である基準値から大きい順に所定の数のフレッシュネス値を示すFVリストとを比較し、
    比較した結果、前記受信値が前記基準値以下且つ前記FVリストの中で最も値の小さいフレッシュネス値である許容値以上であり、前記受信値が前記FVリストにない場合に、前記メッセージおよび前記受信値から検証用認証子(MAC)を生成し、
    前記認証子と前記検証用認証子の同一性を検証し、
    記受信値が前記基準値以下且つ前記許容値以上であり、前記受信値が前記FVリストにない場合であってさらに前記認証子と前記検証用認証子とが同一の場合に、前記FVリストが前記受信値を保持するとともに、前記受信側電子制御装置が過去に受信した前記フレッシュネス値のうち、前記基準値から大きい順に前記所定の数のフレッシュネス値を保持するように前記FVリストを更新する、
    メッセージ受信方法。
JP2021524691A 2019-06-04 2020-04-15 電子制御装置および通信システム Active JP7226543B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2019104708 2019-06-04
JP2019104708 2019-06-04
PCT/JP2020/016512 WO2020246145A1 (ja) 2019-06-04 2020-04-15 電子制御装置および通信システム

Publications (2)

Publication Number Publication Date
JPWO2020246145A1 JPWO2020246145A1 (ja) 2020-12-10
JP7226543B2 true JP7226543B2 (ja) 2023-02-21

Family

ID=73652751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021524691A Active JP7226543B2 (ja) 2019-06-04 2020-04-15 電子制御装置および通信システム

Country Status (4)

Country Link
US (1) US11916904B2 (ja)
JP (1) JP7226543B2 (ja)
DE (1) DE112020002661T5 (ja)
WO (1) WO2020246145A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7396216B2 (ja) * 2020-06-26 2023-12-12 トヨタ自動車株式会社 サーバ、更新管理方法、更新管理プログラム及びソフトウェア更新装置
US20220158843A1 (en) * 2020-11-13 2022-05-19 Ford Global Technologies, Llc Diagnostic over ip authentication
JP7438924B2 (ja) 2020-12-15 2024-02-27 株式会社東芝 情報処理装置、方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010273225A (ja) 2009-05-22 2010-12-02 Fujitsu Ltd パケット送受信システム、パケット送受信装置、および、パケット送受信方法
JP2011160098A (ja) 2010-01-29 2011-08-18 Oki Electric Industry Co Ltd 通信システム及び通信装置
JP2012169829A (ja) 2011-02-14 2012-09-06 Honda Motor Co Ltd 通信システムおよび通信方法
WO2013140455A1 (ja) 2012-03-22 2013-09-26 富士通株式会社 アドホックネットワークシステム、ノード、および通信方法
JP2017200040A (ja) 2016-04-27 2017-11-02 日立オートモティブシステムズ株式会社 演算装置、認証システム、認証方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6473674B2 (ja) 2015-07-28 2019-02-20 ルネサスエレクトロニクス株式会社 通信端末およびプログラム
JP6555209B2 (ja) 2015-08-07 2019-08-07 株式会社デンソー 通信システム、管理ノード、通信ノード、カウンタ同期方法、カウント値配信方法、カウント値初期化方法、プログラム、記録媒体
US10630481B2 (en) * 2016-11-07 2020-04-21 Ford Global Technologies, Llc Controller area network message authentication
JP7190255B2 (ja) 2017-12-13 2022-12-15 アース製薬株式会社 匍匐害虫の忌避方法
US10791125B2 (en) * 2018-01-03 2020-09-29 Ford Global Technologies, Llc End-to-end controller protection and message authentication
US11528162B2 (en) * 2020-07-01 2022-12-13 Ford Global Technologies, Llc Detecting and resolving desynchronization of trip counter values in authenticated messages
CN112673656B (zh) * 2020-08-13 2022-08-09 华为技术有限公司 车载网络安全通信方法、装置和设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010273225A (ja) 2009-05-22 2010-12-02 Fujitsu Ltd パケット送受信システム、パケット送受信装置、および、パケット送受信方法
JP2011160098A (ja) 2010-01-29 2011-08-18 Oki Electric Industry Co Ltd 通信システム及び通信装置
JP2012169829A (ja) 2011-02-14 2012-09-06 Honda Motor Co Ltd 通信システムおよび通信方法
WO2013140455A1 (ja) 2012-03-22 2013-09-26 富士通株式会社 アドホックネットワークシステム、ノード、および通信方法
JP2017200040A (ja) 2016-04-27 2017-11-02 日立オートモティブシステムズ株式会社 演算装置、認証システム、認証方法

Also Published As

Publication number Publication date
JPWO2020246145A1 (ja) 2020-12-10
US20220094684A1 (en) 2022-03-24
DE112020002661T5 (de) 2022-03-24
US11916904B2 (en) 2024-02-27
WO2020246145A1 (ja) 2020-12-10

Similar Documents

Publication Publication Date Title
JP7226543B2 (ja) 電子制御装置および通信システム
US11529914B2 (en) Gateway device, vehicle network system, and transfer method
US10079685B2 (en) Method for manipulation protection of a bus system between at least two system components
US11005880B2 (en) System and method of blocking a computer attack on a means of transportation
EP3447971A1 (en) Update control apparatus, software update system and update control method
JP6525824B2 (ja) 中継装置
US20190306180A1 (en) System and method of generating rules for blocking a computer attack on a vehicle
US20170048241A1 (en) Transmission device, reception device, transmission method, and reception method
WO2019159593A1 (ja) 電子制御装置及び通信システム
US11245535B2 (en) Hash-chain based sender identification scheme
Nowdehi et al. In-vehicle CAN message authentication: An evaluation based on industrial criteria
WO2013128317A1 (en) Anti-replay counter measures
Boudguiga et al. A simple intrusion detection method for controller area network
US10554623B2 (en) On-board communication system
EP3547191B1 (en) System and method of generating rules for blocking a computer attack on a vehicle
KR101882694B1 (ko) Mac을 포함하는 can 메시지 송수신을 위한 방법 및 시스템
US11843477B2 (en) Anomaly determination method, anomaly determination device, and recording medium
CN111066001A (zh) 日志输出方法、日志输出装置以及程序
US12021999B2 (en) Devices and methods for the generating and authentication of at least one data packet to be transmitted in a bus system (BU), in particular of a motor vehicle
WO2017026360A1 (ja) 通信システム
EP3713190A1 (en) Secure bridging of controller area network buses
JP7234839B2 (ja) ゲートウェイ装置、異常監視方法、及び異常監視プログラム
EP3547192B1 (en) System and method of blocking a computer attack on a means of transportation
US10581609B2 (en) Log message authentication with replay protection
KR20150109202A (ko) 차량용 통신 데이터 인증 방법 및 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220906

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230123

R151 Written notification of patent or utility model registration

Ref document number: 7226543

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151