JP6420176B2 - 通信システムおよび通信装置 - Google Patents

通信システムおよび通信装置 Download PDF

Info

Publication number
JP6420176B2
JP6420176B2 JP2015036298A JP2015036298A JP6420176B2 JP 6420176 B2 JP6420176 B2 JP 6420176B2 JP 2015036298 A JP2015036298 A JP 2015036298A JP 2015036298 A JP2015036298 A JP 2015036298A JP 6420176 B2 JP6420176 B2 JP 6420176B2
Authority
JP
Japan
Prior art keywords
packet
communication device
value
received
counter
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
JP2015036298A
Other languages
English (en)
Other versions
JP2016158204A (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics 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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2015036298A priority Critical patent/JP6420176B2/ja
Priority to US14/965,683 priority patent/US10142311B2/en
Priority to EP16155754.1A priority patent/EP3062476B1/en
Priority to KR1020160021719A priority patent/KR20160104565A/ko
Priority to CN201610107953.7A priority patent/CN105933277B/zh
Publication of JP2016158204A publication Critical patent/JP2016158204A/ja
Application granted granted Critical
Publication of JP6420176B2 publication Critical patent/JP6420176B2/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
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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
    • H04L9/3242Cryptographic 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 involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/3247Cryptographic 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 involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信システムおよび通信装置に関し、特にネットワーク上の通信パケットにメッセージ認証コード(MAC:Message Authentication Code)の一部を含む通信に好適に利用できるものである。
自動車の制御システムを始めとして、様々な分野において、セキュリティの重要性及びニーズが高まっている。これに対応するため組み込み機器の分野においては、対象製品そのものが物理的に攻撃される機会が多いため、耐タンパ性の高い、ハードウェアセキュリティモジュール(HSM:Hardware Security Module)にセキュリティ機能を集約する傾向がある。
自動車の制御システムは、例えばCAN(Controller Area Network)などの車載ネットワークに接続された複数の電子制御ユニット(ECU:Electronic Control Unit)から構成される。このような自動車の制御システムに対する攻撃には、CANでやり取りされるメッセージの漏洩、メッセージの改竄、偽のメッセージの配信などがあり、これを防ぐために、ECU間の通信にはCANパケットにその正当性を証明する情報を付加する手法などが提案されている。
特許文献1には、CANプロトコルを変更せずにメッセージ認証コード(MAC)によるメッセージ認証を行う技術が開示されている。CANに接続されている各ECUにおいてCANIDごとにメッセージが送信された回数をカウントする。メッセージを送信したECUはメインメッセージのデータフィールド及びCANIDと、CANIDに対応するカウンタ値とからMACを生成して、MACメッセージとして送信する。メインメッセージを受信したECUは、メインメッセージに含まれるデータフィールド及びCANIDと、CANIDに対応するカウンタ値とからMACを生成して、MACメッセージに含まれるMACとの比較を行い、メインメッセージの正当性を検証することができる。
非特許文献1には、上記特許文献1に記載される技術を改良した、CANパケットの認証技術が開示されている。CANパケットの大きさには制限があるので、算出されたMAC値の一部のビットのみをCANパケットに包含させる。送信側ECUでは、送信パケットカウンタの上位L−1−nビットをMACの算出に使用し、下位nビットを算出されたMAC値から抽出される一部のビット(Xsビット)のフレーム位置を示すために使用する。即ち、送信側ECUでは、メインメッセージと、送信側と受信側とで共有される秘密の情報と、送信パケットカウンタの上位L−1−nビットとからMAC値を算出し、そのMAC値から送信パケットカウンタの下位nビットで指定されるフレーム位置のXsビットを抽出して、メインメッセージに付加してCANパケットを構成する。受信側ECUでは、受信パケットカウンタの送信側と同じ上位L−1−nビットをMACの算出に使用し、下位nビットを算出されたMAC値から抽出される一部のビット(Xrビット)のフレーム位置を示すために使用する。即ち、受信側ECUでは、受信したCANパケット中のメインメッセージと、送信側と共有する秘密の情報と、受信パケットカウンタの上位L−1−nビットとからMAC値を算出し、そのMAC値から受信パケットカウンタの下位nビットで指定されるフレーム位置のXrビットを抽出する。受信したCANパケット中のMAC値Xsビットと、自身が算出したMAC値のうちのXrビットとを比較し、一致すれば受信したCANパケットを正当なものと認証する。
特開2013−98719号公報
竹森敬祐、溝口誠一郎、川端秀明、窪田歩、「セキュアブート+認証による車載制御システムの保護」、情報処理学会研究報告 高度交通システムとスマートコミュニティ(ITS)、2014-ITS-58、情報処理学会、2014年9月12日
特許文献1及び非特許文献1について本発明者が検討した結果、以下のような新たな課題があることがわかった。
非特許文献1には、送信側と受信側のECUがそれぞれセキュアエレメントと呼ばれるHSMを備えており、MACの生成などを行うため、この部分の耐タンパ性は担保されているが、パケットカウンタをHSMの外側に備えるため、ECU内部でHSMにデータを入出力する通信経路の秘匿性・完全性の確保が十分でないことがわかった。例えばセキュリティ機能を備えないホストプロセッサとHSMとを通信路で接続してECUを構成すると、仮に、ホストプロセッサ側でソフトウェアを用いて暗号化を行い、秘匿性を確保したとしても、ホストプロセッサとHSM間の通信経路にプロービング等を行い、古い情報を流す、いわゆるリプレイアタックに対しての耐性が低いことがわかった。
このような課題を解決するための手段を以下に説明するが、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
一実施の形態によれば、下記の通りである。
すなわち、ネットワークで相互接続されパケットを送受する複数の装置を含む通信システムであって、パケットを送受する装置はそれぞれ通信相手に対応するパケットカウンタを備える。対応するパケットカウンタには、初期値として同じ乱数値が与えられ、パケットの送受信に伴ってそれぞれ更新される。メッセージを送信する側の装置は、前記メッセージに基づいてメッセージ認証符号(MAC値)を生成し、その一部を自身のパケットカウンタのカウント値に基づいて抜き出して分割メッセージ認証符号(分割MAC値)とし、前記メッセージに付加してパケットを生成してネットワークに送信する。パケットを受信した装置は、受信したパケットに含まれるメッセージに基づいてメッセージ認証符号(MAC値)を生成し、その一部を自身のパケットカウンタのカウント値に基づいて抜き出し、受信したパケットに含まれる分割メッセージ認証符号(分割MAC値)と比較することによってメッセージ認証を行う。
前記一実施の形態によって得られる効果を簡単に説明すれば下記のとおりである。
すなわち、パケットカウンタのカウント値を外部から観測または推定することが難しくなり、複数の装置間の通信経路(ネットワーク)の秘匿性や安全性を向上することができる。
図1は、通信装置の構成例及びその通信装置を含んで構成される通信システムの構成例を示すブロック図である。 図2は、通信装置が電子制御ユニット(ECU)であり、そのECUを車載ネットワーク(CAN)で相互に接続して構成される通信システムの構成例を示すブロック図である。 図3は、通信システムが通信装置としての複数のECUをCANで相互接続して構成され、その1つの通信装置(ECU)が、HOSTと耐タンパ性を備えるハードウェアセキュリティモジュール(HSM)で構成される、構成例を示すブロック図である。 図4は、実施形態1における通信フローの一例を示すフロー図である。 図5は、パケットカウンタのゆらぎを吸収するためのフローの一例を示すフロー図である。 図6は、パケットカウンタのインクリメント値を乱数にするためのフローの一例を示すフロー図である。 図7は、実施形態2における通信フローの一例を示すフロー図である。 図8は、HOSTにも暗号機能が搭載される、ECUの構成例を示すブロック図である。 図9は、実施形態3における通信フローの一例を示すフロー図である。
実施の形態について詳述する。
〔実施形態1〕<パケットカウンタを乱数で初期化>
図1は、通信装置の構成例及びその通信装置を含んで構成される通信システムの構成例を示すブロック図である。通信システム10は、ネットワーク5で相互接続され、そのネットワーク5を介してパケットを送受信する第1通信装置1_2と第2通信装置1_1とを含んで構成される。ネットワーク5には、他の通信装置がさらに接続されていてもよい。また、ネットワーク5は階層化されたネットワークであって、第1通信装置1_2と第2通信装置1_1との間に中継装置を含んで構成されても良い。また、ネットワークは有線・無線を問わず、パケットを伝送可能な何らかの通信路であればよい。
第1通信装置1_2と第2通信装置1_1は、パケットカウンタ6_2と6_1をそれぞれ備える。パケットカウンタ6_2と6_1には、初期値として同じ乱数値が与えられ、第1通信装置1_2と第2通信装置1_1との間のパケットの送受信に伴ってそれぞれ更新される。第1通信装置1_2から第2通信装置1_1へのパケットの伝送と、逆方向の第2通信装置1_1から第1通信装置1_2へのパケットの伝送とについてそれぞれ別のパケットカウンタが設けられていても良い。送信側がパケットを送信するときに自身のパケットカウンタを更新すると、受信側もこれに合わせてそのパケットを受信したときに自身パケットカウンタを更新するように構成し、互いのパケットカウンタが同じカウント値を保持するように制御される。このとき、1パケットの送受信に対応するパケットカウンタの増分値(インクリメント値)は、必ずしも1には限られず、パケットの送受に応じて互いのパケットカウンタに同じカウント値が保持される限り、任意の値を取り得る。
第1通信装置1_2は、第2通信装置1_1宛てに送信するメッセージと、メッセージ認証符号(MAC値)を生成するための秘密の情報が与えられており、パケット生成部20とMAC生成部21と分割MAC値生成部22とを備える。パケット生成部20とMAC生成部21と分割MAC値生成部22とは、第1通信装置1_2が備えるプロセッサ上でソフトウェアを実行することによって実現される機能ブロックである。ソフトウェアによって実現される代わりに、全部または一部を、専用ハードウェアによって実現しても良い。
第1通信装置1_2は、第2通信装置1_1宛てにメッセージを伝送するときに、そのメッセージと秘密の情報に基づいてMAC生成部21においてMAC値を生成する。分割MAC値生成部22は、生成されたMAC値から、パケットカウンタ6_2のカウント値に基づいて指定される、一部分のビット位置(フレーム位置)のデータを抜き出して分割MAC値とする。パケット生成部20は、メッセージと分割MAC値とを含むパケットを生成して、第2通信装置1_1宛てにネットワーク5に送信する。
第2通信装置1_1は、MAC値を認証するための秘密の情報が与えられており、パケット分割部30とMAC生成部31と分割MAC値生成部32と比較・認証部33とを備える。パケット分割部30とMAC生成部31と分割MAC値生成部32と比較・認証部33とは、第2通信装置1_1が備えるプロセッサ上でソフトウェアを実行することによって実現される機能ブロックである。ソフトウェアによって実現される代わりに、全部または一部を、専用ハードウェアによって実現しても良い。
第2通信装置1_1は、第1通信装置1_2からネットワーク5を経由してパケットを受信したとき、パケット分割部30によってそのパケットからメッセージと分割MAC値を抽出する。MAC生成部31は、受信したパケットから抽出されたメッセージと、秘密の情報と、パケットカウンタ6_1のカウント値とから、MAC値を生成する。分割MAC値生成部32は、生成されたMAC値から、パケットカウンタ6_1のカウント値に基づいて指定される、一部分のビット位置(フレーム位置)のデータを抜き出して分割MAC値とする。比較・認証部33は、パケット分割部30によって受信したパケットから抽出された分割MAC値と、MAC生成部31と分割MAC値生成部32によって生成された分割MAC値とを比較し、比較結果に基づいて、受信したメッセージを認証する。ここで、受信したメッセージが認証されるのは、受信したパケットから抽出された分割MAC値と内部で生成された分割MAC値とが完全に一致する場合には限られない。「パケットカウンタのゆらぎを吸収」に後述するように、送信側と受信側でパケットカウンタのカウント値にずれが生じている場合にも、メッセージ認証を成功と判定させることもできる。
パケットカウンタ6_1と6_2の初期値として乱数値が与えられることにより、そのカウント値を外部から観測または推定することが難しくなり、第1通信装置1_2と第2通信装置1_1との間の通信経路(ネットワーク5)の秘匿性や安全性を向上することができる。
ここで、図1には、第1通信装置1_2がメッセージの送信側であり、第2通信装置1_1が受信側である場合に限って説明したが、メッセージの伝送方向は逆方向でも双方向でも良い。その場合には、第1通信装置1_2が、パケット分割部、受信したパケットから抽出されるメッセージからMAC値を生成するMAC生成部、分割MAC値生成部、及び、比較・認証部をさらに備えてもよく、また、第2通信装置1_1が、パケット生成部、MAC生成部、及び、分割MAC値生成部をさらに備えてもよい。
〔CANに接続されるECU間通信への適用〕
上述の第1及び第2通信装置をそれぞれECUとし、ネットワーク5を車載ネットワーク(CAN)とすることによって、通信システムを構成することができる。
図2は、通信装置が電子制御ユニット(ECU)であり、そのECUを車載ネットワーク(CAN)で相互に接続して構成される通信システムの構成例を示すブロック図である。複数のECUである、ECU−A(2_A)、ECU−B(2_B)、及び、ECU−C(2_C)が、CAN5に接続されている。ECU−A(2_A)はパケットカウンタAB(6_AB)とパケットカウンタAC(6_AC)とを備え、ECU−B(2_B)はパケットカウンタBA(6_BA)とパケットカウンタBC(6_BC)とを備え、ECU−C(2_C)はパケットカウンタCA(6_CA)とパケットカウンタCB(6_CB)とを備える。パケットカウンタAB(6_AB)とパケットカウンタBA(6_BA)とは、ECU−A(2_A)とECU−B(2_B)との間のパケット通信に対応して設けられている。同様に、パケットカウンタAC(6_AC)とパケットカウンタCA(6_CA)とは、ECU−A(2_A)とECU−C(2_C)との間のパケット通信、パケットカウンタBC(6_BC)とパケットカウンタCB(6_CB)とは、ECU−B(2_B)とECU−C(2_C)との間のパケット通信に、それぞれ対応して設けられている。それぞれECUが1:1のパケット通信を行う場合には、そのパケット通信を行うECUどうしのパケットカウンタが、同じ乱数値によって初期化される。ブロードキャストなど1:多のパケット通信を行う場合には、その1:多のパケット通信に参加するすべてのECUどうしのパケットカウンタが、同じ乱数値によって初期化される。
これにより、CANによって相互接続される電子制御ユニット(ECU)間の通信の秘匿性や安全性を向上することができる。
〔HOST−HSM間通信への適用〕
上述の第1及び第2通信装置の間の通信を、ECUを構成するホストプロセッサ(HOST)とハードウェアセキュリティモジュール(HSM)との間の通信に適用することができる。「背景技術」において述べたように、自動車の制御システムを始めとする、セキュリティの重要性及びニーズが高い組み込み機器においては、対象の機器そのものが物理的に攻撃される機会が多いため、耐タンパ性の高いHSMを設けて、これにセキュリティ機能を集約する傾向がある。
図3は、通信システムが通信装置としての複数のECUをCANで相互接続して構成され、その1つのECUが、HOSTと耐タンパ性を備えるHSMとを含んで構成される、構成例を示すブロック図である。図2と同様に、複数のECUがCAN5_2に接続され得るが、ECU−A(2_A)とECU−B(2_B)のみがCAN5_2に接続されている例が示され、ECU−A(2_A)が、ネットワーク5_1によって相互接続される、HOST4と耐タンパ性を備えるHSM3とを備えて構成される例である。
HOST4は、CPU11_2と、CAN5_2とのインターフェース(I/F)12_3と、ネットワーク5_1とのインターフェース(I/F)12_2と、ROM15_2と、RAM16_2とが、互いにバス17_2に接続されて構成されている。HSM3は、CPU11_1と、ネットワーク5_1とのインターフェース(I/F)12_1と、ROM15_1と、RAM16_1と、暗号IP(Crypt IP)13_1と、乱数発生回路(RNG)14_1とが、互いにバス17_1に接続されて構成されている。暗号IP13は、耐タンパ性を備える暗号通信に関わるデータ処理を実行する回路モジュールであり、公知の耐タンパ機能を実装することによって構成することができる。例えば、秘匿すべきパラメータを外部から観測することができないように記憶し、所定の暗号演算を実行する際に、演算時間や消費電力の変動波形にデータ依存性が現れないようにするなど、暗号通信に対する攻撃からの防御措置が講じられている。
HOST4におけるROM15_2には、CPU11_2で実行されることにより、上述のパケット生成部20、MAC生成部21及び分割MAC値生成部22として機能する、プログラムが格納されている。HSM3におけるROM15_1には、11_1で実行されることにより、上述のパケット分割部30、MAC生成部31、分割MAC値生成部32及び比較・認証部33として機能する、プログラムが格納されている。HOST4とHSM3との間のネットワーク5_1を介するパケット通信は、HOST4内のRAM16_2に保持されるパケットカウンタHOST−HSM(6_2)とHSM3内のRAM16_1に保持されるパケットカウンタHSM−HOST(6_1)とを使って実行される。一方、ECU−A(2_A)とECU−B(2_B)との間のCAN5_2を介するパケット通信は、ECU−A(2_A)のHSM3内のRAM16_1に保持されるパケットカウンタAB(6_3)と、ECU−B(2_B)が備えるパケットカウンタBA(6_4)とを使って実行される。パケットカウンタAB(6_3)は、HOST4内のRAM16_2に保持されてもよいが、HSM3内のRAM16_1に保持される方が、耐タンパ性が高い。パケットカウンタHOST−HSM(6_2)、パケットカウンタHSM−HOST(6_1)及びパケットカウンタAB(6_3)は、HOST4内のRAM16_2またはHSM3内のRAM16_1に保持される代わりに、専用のカウンタによって実現されてもよい。
HOST4とHSM3との間のネットワーク5_1を介するパケット通信に、上述の図1を引用して説明した通信を適用することにより、HSMでない一般のHOSTとHSMの間の通信経路(ネットワーク)の秘匿性や安全性を向上することができる。
ここで、HOST4とHSM3の構成として図3に示されるのは、一例に過ぎない。ネットワーク5_1は、CAN、SPI(Serial Peripheral Interface)など任意の通信路で形成され得る。HOST4とHSM3において、バス17_1、17_2はそれぞれ階層化されてもよい。また、HOST4は、実際に用いられるアプリケーションに応じて、図示されている機能ブロック以外の機能ブロック、例えば、割り込み制御回路、ダイレクトメモリコントローラ、タイマ、その他のペリフェラルなどを適宜含んで構成されても良い。HSM3も同様である。HSM3としては、CPU11_1が搭載される構成例を示したが、シーケンサで代用してもよい。HSM3は耐タンパ性を備えていることが望ましいが、単に、図3に示される構成要素を備えていている半導体デバイスであれば良い。特に制限されないが、HOST4とHSM3とは、それぞれ例えば、公知のCMOS(Complementary Metal-Oxide-Semiconductor field effect transistor)LSI(Large Scale Integrated circuit)の製造技術を用いて、シリコンなどの単一半導体基板上に形成される。このように、HOST4とHSM3とがそれぞれ別の半導体チップに形成され、互いがネットワーク5_1によって通信される場合に、ネットワーク5_1を観測することによる攻撃に対して、パケットカウンタを乱数値によって初期化することにより、通信の秘匿性や安全性を向上することができる。一方、HOST4とHSM3とが同一の半導体チップ上に混載されても良い。このとき、ネットワーク5_1が半導体チップの外に引き出されないように構成すれば、通信の秘匿性と安全性をさらに向上することができる。
〔乱数値はHSMで生成し、暗号化してHOSTに伝送〕
図3に例示されるECU−A(2_A)の動作について説明する。
図4は、本実施形態1における通信フローの一例を示すフロー図である。HOST4とHSM3によってそれぞれ実行される処理ステップと、送受信されるデータの内容が、上から下に向かう時系列に沿って示される。
まず、HOST4とHSM3がそれぞれ起動される(システムON)。HSM3は、乱数R1を乱数発生回路(RNG)14_1で生成し、暗号IP(Crypt IP)13_1によって共通鍵CKを使って暗号化する。共通鍵CKを使って暗号化された乱数R1を「CK(R1)」と表記する。HSM3は、生成した乱数R1をパケットカウンタHSM−HOST(6_1)に初期値としてセットする。HSM3は、暗号化された乱数CK(R1)を、ネットワーク5_1を介してHOST4へ送付する。HOST4では、事前にHSM3と共有してある共通鍵CKを用いて、暗号化された乱数CK(R1)を復号する。その段階で、HOST4は、復号された乱数R1をパケットカウンタHOST−HSM(6_2)の初期値とし、1パケット分のインクリメントを行う。即ちHOST4は、パケットカウンタHOST−HSM(6_2)の値をR2=R1+1に更新する。HOST4は、HSM3に対して、署名生成、署名検証、その他暗号に関わる処理を要求する際に、リクエストメッセージ(Request msg)を生成するとともに、そのメッセージとパケットカウンタHOST−HSM(6_2)のカウンタ値であるR2からMAC値を生成して、メッセージに付加する。MAC値は、一般的なCMAC(Cipher based Message Authentication Code)等の技術を用いて生成することができる。HOST4は、リクエストメッセージ(Request)とMAC値を含むパケットを生成して、HSM3に送付する。パケットを受信したHSM3では、それに含まれるMAC値からメッセージの正当性を検証(MAC値検証)した後、メッセージの処理を実行し、その結果(Result)をHOST4に送付する。このとき、パケットカウンタHSM−HOST(6_1)の値をR3=R2+1に更新する。この処理間の通信メッセージは、共通鍵CKで暗号化される。MAC値検証の際に、受信したメッセージと自身のパケットカウンタHSM−HOST(6_1)のカウンタ値から生成されるMAC値と受信したMAC値とが相違する場合には、不正処理に移行する。不正処理には、後述の「パケットカウンタのゆらぎを吸収」する処理が含まれてもよい。これにより、メッセージのなりすましを防ぐ事が可能となり、通信の秘匿性や安全性を向上させることができる。
ここで、HOST4とHSM3においてそれぞれ実行されるMAC値の生成は、送受信される対象のメッセージと、それぞれのパケットカウンタHOST−HSM(6_2)とHSM−HOST(6_1)のカウント値に基づく演算処理である。ここで、HOST4とHSM3がさらに秘密の情報を共有し、これをそれぞれのMAC値生成の演算に寄与させるように構成してもよい。これにより、通信の秘匿性や安全性をより向上させることができる。
〔パケットカウンタのゆらぎを吸収〕
上述のMAC値検証においては、パケットカウンタHOST−HSM(6_2)とHSM−HOST(6_1)のカウント値が同期していることが前提となる。ここで、「同期」とは、必ずしも同時に同じ値を取ることを指すのではなく、ある程度の時間差を持って同じ値に更新されても良いし、さらには、互いに異なる値であっても、一定の規則に従うことによって相互に対応する値を取ってもよい。即ち、送信側でのMAC値生成に使用されたカウント値が、受信側で再現することができ、同じMAC値を生成することができればよい。
しかしながら、通信エラーなどに起因して、パケットカウンタHOST−HSM(6_2)とHSM−HOST(6_1)との間で、同期が外れる場合がある。このパケットカウンタの同期はずれを、「パケットカウンタのゆらぎ」と呼ぶことにする。このようなパケットカウンタのゆらぎは、システムが正常に動作している場合にも発生し得るので、ある程度の幅までは吸収することが望ましい。一方、通信の秘匿性・安全性が優先されるシステムにおいては、ゆらぎを外部からの攻撃と判断して、即座に防御措置を講ずることが望ましい場合もある。どちらを採用するかは、システム設計におけるHSM3及びHOST4のセキュリティポリシーに依存する。
図5は、パケットカウンタのゆらぎを吸収するためのフローの一例を示すフロー図である。
上述のHSM3におけるMAC値検証の際に、受信したMAC値が、受信したメッセージと自身のパケットカウンタHSM−HOST(6_1)のカウンタ値から生成されるMAC値と相違する場合(MACの不一致検出)に、不正処理として即時に動作を停止させる場合(即時Stopの場合)と、ゆらぎを吸収する処理に移行する場合(検証する場合)とのいずれかを採り得る。前者は、通信の秘匿性・安全性が優先されるシステムにおいて、ゆらぎを外部からの攻撃と判断して、即座に防御措置を講ずる場合に採用され、後者は、パケットカウンタのゆらぎを吸収する場合に採用される。
即時Stopの場合、HSM3からHOST4に対して異常を通知し、HSM3は実行中の処理を中断または終了する。
検証する場合、図5にはパケットカウンタのゆらぎを±1パケットまで許容する例が示されている。MACの不一致検出の後、パケットカウンタHSM−HOST(6_1)のカウンタ値のデクリメントを実施し、再びMAC検証を行う。このステップで生成されたMAC値が受信したMAC値と一致したときには、正常なメッセージであると判断して、メッセージの処理に移行する。不一致の場合には、カウンタ値のインクリメントを2回実施し、もう1度MAC検証を行う。このステップで生成されたMAC値が受信したMAC値と一致したときには、正常なメッセージであると判断して、メッセージの処理に移行する。不一致の場合には、HSM3からHOST4に対して異常を通知し、HSM3は実行中の処理を中断または終了する。
ここで、デクリメント値とインクリメント値は、必ずしも1である必要はなく、後述の実施形態2に記載されるように、別の乱数値などであってもよい。また、パケットカウンタのゆらぎを±1パケットよりも広い範囲まで許容するように変更することもできる。即ち、当該受信パケットよりi個(iは任意の整数)だけ以前に受信した受信パケットからj個(jは任意の整数)だけ以降に受信する受信パケットまでに、それぞれ対応する複数のカウント値に基づいて生成される複数のMAC値と、受信したMAC値とを比較して、繰り返しMAC検証を行う。少なくとも1個のMAC値が一致したときは、正常なメッセージであると判断して、メッセージの処理に移行し、すべて不一致の場合には、HSM3からHOST4に対して異常を通知し、HSM3は実行中の処理を中断または終了する。iとjの値は、システムのセキュリティポリシーに依存して任意に設定することができる。iとjの値が大きければ大きいほど、リプレイアタックが容易となるため、iとjの値はともに3以下であることが望ましい。また、ゆらぎの幅が小さい時には、正常なメッセージであると判断して、メッセージの処理に移行するとしても、ゆらぎの幅がある程度大きい時には、即時に停止する処理に移行する代わりに、何らかの警告を発し、別の方法でセキュリティ強化を図るなどの防御手段を採りながら、メッセージの処理に移行するなどの中庸の処理に移行することもできる。
ここでは、パケットカウンタのゆらぎを吸収する構成及び方法について、パケットカウンタHSM−HOST(6_1)とHOST−HSM(6_2)の初期値を乱数に設定する、本実施形態1の一変形例として説明したが、パケットカウンタの初期値は、必ずしも乱数である必要はない。パケットカウンタが従来技術と同様に、1または0に初期化される場合にも、同じ構成及び方法を適用することができ、同様の効果を得ることができる。またここでは、ECU2を構成するHOST4とHSM3との間の通信を例にとって説明したが、任意の通信装置間の通信にも同様に適用することができる。例えば、CANで接続されるECU間の通信に適用することもできる。
〔実施形態2〕<パケットカウンタのインクリメント値も乱数>
実施形態1について図4を引用して説明した例では、パケットカウンタHSM−HOST(6_1)とHOST−HSM(6_2)のインクリメント値を1とする単純な増加であるため、攻撃者が次のカウンタ値を類推しやすくなる可能性がある。そのため、インクリメントする値をランダム(乱数)にする事で、攻撃者が次のカウンタ値を類推する事を困難にする事が有効である。
図6は、パケットカウンタのインクリメント値を乱数にするためのフローの一例を示すフロー図である。
パケットカウンタHSM−HOST(6_1)とHOST−HSM(6_2)の初期値となる乱数R1(初期カウンター)を、例えばSHA256などの不可逆圧縮関数を用いて圧縮する。その際に得られた固定値の最後の1桁を抽出し、インクリメントする数値S1とする。このS1を乱数R1に加算して得られるR2(=R1+S1)を次のカウンタ値とする。さらに次のカウンタ値の生成は、このR2から例えばSHA256などの不可逆圧縮関数を用いて生成したS2を用いてインクリメントする。このような方式を用いる事により、カウンタの増加数の類推が困難となる。
図7は、実施形態2における通信フローの一例を示すフロー図である。図4と同様に、HOST4とHSM3によってそれぞれ実行される処理ステップと、送受信されるデータの内容が、上から下に向かう時系列に沿って示される。
まず、HOST4とHSM3がそれぞれ起動される(システムON)。HSM3は、乱数R1を乱数発生回路(RNG)14_1で生成し、暗号IP(Crypt IP)13_1によって共通鍵CKを使って暗号化する。HSM3は、生成した乱数R1をパケットカウンタHSM−HOST(6_1)に初期値としてセットする。HSM3は、暗号化された乱数CK(R1)を、ネットワーク5_1を介してHOST4へ送付する。HOST4では、受信した、暗号化された乱数CK(R1)を、共通鍵CKを用いて復号する。その段階で、HOST4はパケットカウンタHOST−HSM(6_2)の初期値とし、1パケット分のインクリメントを行う。即ちHOST4は、パケットカウンタHOST−HSM(6_2)の値をR2=R1+S1に更新する。HOST4は、HSM3に対してリクエストメッセージ(Request msg)を生成するとともに、そのメッセージとパケットカウンタHOST−HSM(6_2)のカウンタ値であるR2からMAC値を生成して、メッセージに付加する。HOST4は、リクエストメッセージ(Request)とMAC値を含むパケットを生成して、HSM3に送付する。パケットを受信したHSM3では、それに含まれるMAC値からメッセージの正当性を検証(MAC値検証)した後、メッセージの処理を実行し、その結果(Result)をHOST4に送付する。このとき、パケットカウンタHSM−HOST(6_1)の値をR3=R2+S2に更新する。この処理間の通信メッセージは、共通鍵CKで暗号化される。
図4に示されるフローとの違いは、インクリメント値が図5を引用して上述したように、乱数とされている点である。これより、次のパケットに対応する、パケットカウンタHOST−HSM(6_2)とHSM−HOST(6_1)をカウント値の類推が困難となり、通信の秘匿性や安全性をさらに向上させることができる。
本実施形態2では、ECU2を構成するHOST4とHSM3との間の通信を例にとって説明したが、任意の通信装置間の通信にも同様に適用することができる。例えば、CANで接続されるECU間の通信に適用することもできる。
〔実施形態3〕<HOSTにも暗号機能を搭載>
以上の実施形態1及び2における、図3に例示される構成例に基づいた説明では、HOST4とHSM3との間の通信は、あらかじめ共有していた共通鍵CKを用いて暗号化する方式を示した。これに対して、HOST4に暗号機能が搭載されている場合、或いは、HOST4のCPU11_2にて暗号の計算処理が可能な場合には、公開鍵暗号方式を用いて双方を認証した後に、共通鍵CKの交換を行う事が可能である。
図8は、HOST4にも暗号機能が搭載される、ECU2の構成例を示すブロック図である。ECU2は、図3に示されるECU−A(2_A)に対応する。HOST4は、図3に示されるECU−A(2_A)に搭載されるHOST4と同様に、互いにバス17_2に接続される、CPU11_2と、CAN5_2とのインターフェース(I/F)12_3と、ネットワーク5_1とのインターフェース(I/F)12_2と、ROM15_2と、RAM16_2とを備え、さらに暗号IP(Crypt IP)13_2を備える点で異なる。暗号IP13_2は、図3に示される暗号IP13_1と同様に、耐タンパ性を備える暗号通信に関わるデータ処理を実行する回路モジュールである。ネットワーク5_1及びHSM3は、図3に示されるECU−A(2_A)に搭載される、ネットワーク5_1及びHSM3と同様である。HOST4に暗号IP13_2が追加されている点以外は、実施形態1での説明がそのまま適用できるので、重複した説明は控える。
ECU2の動作について説明する。
図9は、本実施形態3における通信フローの一例を示すフロー図である。HOST4とHSM3によってそれぞれ実行される処理ステップと、送受信されるデータの内容が、図4、7と同様に、上から下に向かう時系列に沿って示される。
まず、HOST4とHSM3がそれぞれ起動される(システムON)。HOST4は、暗号IP13_2によって公開鍵Ppと秘密鍵Psを生成し、生成した公開鍵PpをHSM3に送付する。HSM3は、乱数発生回路(RNG)14_1によって乱数RCを生成し、暗号IP13_1によって受信した公開鍵Ppを使って暗号化する。公開鍵Ppを使って暗号化された乱数RCを、「Pp(RC)」と表記する。HSM3は、暗号化された乱数Pp(RC)を、チャレンジデータとしてHOST4に送付する。HOST4は、受信したチャレンジデータを、暗号IP13_2によって秘密鍵Psを用いて復号し、レスポンスデータを生成し、HSM3に送付する。HSM3では期待値比較を行って受信したレスポンスデータを検証し、HOST4が真正な通信装置であることを確認する。
その後、HSM3は、乱数R1を乱数発生回路(RNG)14_1で生成し、暗号IP13_1によって共通鍵CKを使って暗号化する。以降のフローは、図7を引用して説明した実施形態2のフローと同様であるので、説明を省略する。以降のフローを、図4を引用して説明した実施形態1のフローと同様とすることもできる。
これにより、パケットカウンタの初期値とされる乱数値を不正に取得しようとする攻撃に対する耐性が向上し、HSM3とHOST4との間の通信経路(ネットワーク)の秘匿性や安全性を向上することができる。
本実施形態3では、ECU2を構成するHOST4とHSM3との間の通信を例にとって説明したが、任意の通信装置間の通信にも同様に適用することができる。例えば、CANで接続されるECU間の通信に適用することもできる。
上述のチャレンジで利用された乱数RCをHOST4とHSM3間の共通鍵CKとして用いる事により、鍵交換シーケンスを省略する事ができるが、別途、共通鍵CKを交換するシーケンスを追加しても良い。
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
1 通信装置
2 電子制御ユニット(ECU:Electronic Control Unit)
3 ハードウェアセキュリティモジュール(HSM:Hardware Security Module)
4 ホスト(HOST)
5 ネットワーク
6 パケットカウンタ
10 通信システム
11 CPU(Central Processing Unit)
12 インターフェース(I/F)
13 暗号IP(Crypt IP)
14 乱数発生回路(RNG:Random Number Generator)
15 ROM(Read Only Memory)
16 RAM(Random Access Memory)
17 バス
20 パケット生成部
21 MAC生成部
22 分割MAC生成部
30 パケット分割部
31 MAC生成部
32 分割MAC生成部
33 比較・認証部

Claims (16)

  1. ネットワークで相互接続され、前記ネットワークを介してパケットを送受可能な第1装置と第2装置とを含み、
    前記第1及び第2装置は、それぞれ第1及び第2パケットカウンタを備え、
    前記第1及び第2パケットカウンタは、初期値として同じ乱数値が与えられ、パケットの送受信に伴ってそれぞれ更新され、
    前記第1装置は、前記第2装置にメッセージを伝送するときに、前記メッセージに基づいてメッセージ認証符号を生成し、その一部を前記第1パケットカウンタのカウント値に基づいて抜き出して分割メッセージ認証符号とし、前記メッセージと前記分割メッセージ認証符号とを含むパケットを生成して、前記ネットワークを介して前記第2装置に送信し、
    前記第2装置は、前記パケットを受信したとき、受信したパケットに含まれるメッセージに基づいてメッセージ認証符号を生成し、その一部を前記第2パケットカウンタのカウント値に基づいて抜き出し、受信したパケットに含まれる前記分割メッセージ認証符号と比較することによってメッセージ認証を行
    前記第1及び第2装置は、パケットの送受信ごとに、それぞれ、自身のパケットカウンタのカウンタ値から同じ計算方法で生成される値を増分値として、自身のパケットカウンタを更新する、
    通信システム。
  2. 請求項1において、前記第1または第2装置のうちのいずれか一方は、前記乱数値を生成し、自身のパケットカウンタの初期値として設定するとともに暗号化して他方に伝送し、他方は暗号を復号して前記乱数値を復元して自身のパケットカウンタの初期値として設定する、
    通信システム。
  3. 請求項2において、前記暗号化は、共通鍵暗号方式に則る暗号化である、
    通信システム。
  4. 請求項3において、前記第1及び第2装置は、前記乱数値をそれぞれのパケットカウンタの前記暗号化のために送受信する前に、公開鍵暗号方式に則ったチャレンジ/レスポンス認証を実行する、
    通信システム。
  5. 請求項において、前記第1及び第2装置は、それぞれ、自身のパケットカウンタのカウンタ値に、同じ不可逆圧縮関数を作用させて得られる値に基づいて、前記増分値を算出する、
    通信システム。
  6. 請求項1において、前記パケットを受信したとき、
    前記第2装置により、受信パケットに含まれるメッセージに基づいて生成したメッセージ認証符号から、前記第2パケットカウンタのカウント値に基づいて抜き出された前記一部を、中央ビット列とし、
    前記第2装置は、当該受信パケットよりi個(iは任意の整数)だけ以前に受信した受信パケットからj個(jは任意の整数)だけ以降に受信する受信パケットまでに、それぞれ対応する複数のカウント値に基づいて生成される複数のMAC値における当該カウント値に基づく位置から、当該メッセージ認証符号の複数のビット列をさらに抜き出し、
    前記第2装置は、前記中央ビット列及び前記複数のビット列のそれぞれを、当該受信パケットに含まれる分割メッセージ認証符号と比較し、少なくとも1個のビット列が一致したときに、当該受信パケットを正当なパケットとして認証する、
    通信システム。
  7. 請求項において、前記i及び前記jをともに1とする、
    通信システム。
  8. 請求項1において、前記第1及び第2装置の少なくとも一方は、ハードウェアセキュリティモジュールを備える、
    通信システム。
  9. 請求項1において、前記第1及び第2装置は、それぞれ電子制御ユニットであり、前記ネットワークは車載ネットワークである、
    通信システム。
  10. 第1パケットカウンタを備える他の通信装置とネットワークで接続され、前記ネットワークを介してパケットを送受可能であり、前記他の通信装置から受信したパケットのメッセージ認証を行う、通信装置であって、
    前記第1パケットカウンタと対応し、前記他の通信装置との間でパケットが送受信されるのに伴って更新される、第2パケットカウンタと、ハードウェアセキュリティモジュールとを備え、
    前記ハードウェアセキュリティモジュールによって生成した乱数を、前記第2パケットカウンタの初期値として設定するとともに、前記乱数を前記第1パケットカウンタの初期値とさせるために前記他の通信装置に対して暗号化して伝送し、
    前記他の通信装置から受信するパケットは、前記他の通信装置が、伝送するメッセージに基づいてメッセージ認証符号を生成し、その一部を前記第1パケットカウンタのカウント値に基づいて抜き出して分割メッセージ認証符号とし、前記メッセージと前記分割メッセージ認証符号とを含んで生成したものであり、
    当該通信装置は、前記他の通信装置からパケットを受信したとき、受信したパケットに含まれるメッセージに基づいてメッセージ認証符号を生成し、その一部を前記第2パケットカウンタのカウント値に基づいて抜き出し、受信したパケットに含まれる前記分割メッセージ認証符号と比較することによってメッセージ認証を行
    当該通信装置及び前記他の通信装置は、パケットの送受信ごとに、それぞれ、自身のパケットカウンタのカウンタ値から同じ計算方法で生成される値を増分値として、自身のパケットカウンタを更新する、
    通信装置。
  11. 請求項10において、前記暗号化は、共通鍵暗号方式に則る暗号化である、
    通信装置。
  12. 請求項11において、前記通信装置は、前記乱数を前記他の通信装置に送信する前に、前記他の通信装置との間で、公開鍵暗号方式に則ったチャレンジ/レスポンス認証を実行する、
    通信装置。
  13. 請求項10において、当該通信装置及び前記他の通信装置は、それぞれ、自身のパケットカウンタのカウンタ値に、同じ不可逆圧縮関数を作用させて得られる値に基づいて、前記増分値を算出する、
    通信装置。
  14. 請求項10において、前記パケットを受信したとき、
    受信パケットに含まれるメッセージに基づいて生成したメッセージ認証符号から、前記第2パケットカウンタのカウント値に基づいて抜き出された前記一部を、中央ビット列とし、
    当該通信装置は、当該受信パケットよりi個(iは任意の整数)だけ以前に受信した受信パケットからj個(jは任意の整数)だけ以降に受信する受信パケットまでに、それぞれ対応する複数のカウント値に基づいて生成される複数のMAC値における当該カウント値に基づく位置から、当該メッセージ認証符号の複数のビット列をさらに抜き出し、
    当該通信装置は、前記中央ビット列及び前記複数のビット列のそれぞれを、当該受信パケットに含まれる分割メッセージ認証符号と比較し、少なくとも1個のビット列が一致したときに、当該受信パケットを正当なパケットとして認証する、
    通信装置。
  15. 請求項14において、前記i及び前記jをともに1とする、
    通信装置。
  16. 請求項10において、当該通信装置と前記通信装置は、車載ネットワークに接続される電子制御ユニットを構成する通信装置であり、当該通信装置と前記通信装置とを相互に接続する前記ネットワークは、前記車載ネットワークと同一又は異なるネットワークである、
    通信装置。
JP2015036298A 2015-02-26 2015-02-26 通信システムおよび通信装置 Active JP6420176B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2015036298A JP6420176B2 (ja) 2015-02-26 2015-02-26 通信システムおよび通信装置
US14/965,683 US10142311B2 (en) 2015-02-26 2015-12-10 Communication system and communication device
EP16155754.1A EP3062476B1 (en) 2015-02-26 2016-02-15 Communication system
KR1020160021719A KR20160104565A (ko) 2015-02-26 2016-02-24 통신 시스템 및 통신 장치
CN201610107953.7A CN105933277B (zh) 2015-02-26 2016-02-26 通信系统和通信设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015036298A JP6420176B2 (ja) 2015-02-26 2015-02-26 通信システムおよび通信装置

Publications (2)

Publication Number Publication Date
JP2016158204A JP2016158204A (ja) 2016-09-01
JP6420176B2 true JP6420176B2 (ja) 2018-11-07

Family

ID=55357943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015036298A Active JP6420176B2 (ja) 2015-02-26 2015-02-26 通信システムおよび通信装置

Country Status (5)

Country Link
US (1) US10142311B2 (ja)
EP (1) EP3062476B1 (ja)
JP (1) JP6420176B2 (ja)
KR (1) KR20160104565A (ja)
CN (1) CN105933277B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12028350B2 (en) 2021-03-31 2024-07-02 Hyundai Motor Company Apparatus for electronic control of vehicle, apparatus for gateway and vehicle including the same

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105981345B (zh) * 2013-09-27 2019-06-18 瑞典爱立信有限公司 Wi-fi/分组核心网接入的合法侦听
DE102014208855A1 (de) * 2014-05-12 2015-11-12 Robert Bosch Gmbh Verfahren zum Durchführen einer Kommunikation zwischen Steuergeräten
JP6454614B2 (ja) * 2015-07-10 2019-01-16 日立オートモティブシステムズ株式会社 車載システム、その制御装置および制御方法
JP6332194B2 (ja) * 2015-08-07 2018-05-30 株式会社デンソー 通信装置、通信方法、及び通信プログラム
JP6260064B2 (ja) * 2016-03-14 2018-01-17 Kddi株式会社 通信ネットワークシステム及び車両
DE102016206630A1 (de) * 2016-04-20 2017-11-09 Robert Bosch Gmbh Verfahren und Vorrichtung zur Vermeidung von Manipulation einer Datenübertragung
JP6260067B1 (ja) * 2016-08-09 2018-01-17 Kddi株式会社 管理システム、鍵生成装置、車載コンピュータ、管理方法、及びコンピュータプログラム
US10530748B2 (en) 2016-10-24 2020-01-07 Fisher-Rosemount Systems, Inc. Publishing data across a data diode for secured process control communications
US10270745B2 (en) * 2016-10-24 2019-04-23 Fisher-Rosemount Systems, Inc. Securely transporting data across a data diode for secured process control communications
JP6409849B2 (ja) * 2016-10-31 2018-10-24 トヨタ自動車株式会社 通信システム及び通信方法
JP6915717B2 (ja) * 2016-11-10 2021-08-04 トヨタ自動車株式会社 通信システム
JP6683105B2 (ja) * 2016-11-10 2020-04-15 トヨタ自動車株式会社 通信システム
JP6683106B2 (ja) * 2016-11-10 2020-04-15 トヨタ自動車株式会社 通信システム
US10705820B2 (en) * 2017-02-02 2020-07-07 Ford Global Technologies, Llc Method and apparatus for secure multi-cycle vehicle software updates
JP6760185B2 (ja) * 2017-03-31 2020-09-23 住友電気工業株式会社 中継装置、検知方法および検知プログラム
GB2561256A (en) * 2017-04-05 2018-10-10 Stmicroelectronics Grenoble2 Sas Apparatus for use in a can system
IT201700050153A1 (it) * 2017-05-09 2018-11-09 St Microelectronics Srl Modulo hardware di sicurezza, relativo sistema di elaborazione, circuito integrato e dispositivo
US10791125B2 (en) * 2018-01-03 2020-09-29 Ford Global Technologies, Llc End-to-end controller protection and message authentication
US10789364B2 (en) * 2018-05-02 2020-09-29 Nxp B.V. Method for providing an authenticated update in a distributed network
DE102019117229A1 (de) 2019-06-26 2020-12-31 Infineon Technologies Ag Kommunikationsvorrichtung und -verfahren zum authentifizieren einer nachricht
KR102703747B1 (ko) * 2019-09-17 2024-09-06 현대자동차주식회사 차량장치 및 그의 멀티미디어 스트림 동기화 방법
JP7156257B2 (ja) * 2019-11-21 2022-10-19 トヨタ自動車株式会社 車両通信装置、通信異常の判定方法及びプログラム
IT201900023544A1 (it) * 2019-12-10 2021-06-10 Fpt Ind Spa Metodo e sistema di scambio di dati su una rete per incrementare misure di sicurezza della rete, veicolo comprendente tale sistema
JP2020123960A (ja) * 2020-03-26 2020-08-13 トヨタ自動車株式会社 通信システム
US12009945B2 (en) 2020-09-29 2024-06-11 Nissan Motor Co., Ltd. Communication system, relay device, reception device, and communication control method
DE102021000645B3 (de) 2021-02-09 2022-08-11 Mercedes-Benz Group AG Verfahren zur Überprüfung von kryptografischen Geheimnissen auf Gleichheit
US11792007B2 (en) 2021-03-17 2023-10-17 Ford Global Technologies, Llc System and method for a vehicle network
US20220407716A1 (en) * 2021-06-21 2022-12-22 Motional Ad Llc Authenticated point cloud data
KR20230108594A (ko) * 2022-01-11 2023-07-18 현대자동차주식회사 차량의 보안 키 제어 방법
DE102023204562A1 (de) * 2023-05-16 2024-11-21 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zur Erhöhung einer Sicherheit einer Kommunikation zwischen Infrastruktur und Kraftfahrzeug
US20250007722A1 (en) * 2023-06-28 2025-01-02 International Business Machines Corporation Multi-part transaction integrity protection and encryption

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5943328A (en) * 1996-08-13 1999-08-24 Lucent Technologies Inc. Frame counter for synchronized communication
US6918035B1 (en) * 1998-07-31 2005-07-12 Lucent Technologies Inc. Method for two-party authentication and key agreement
US7725719B2 (en) * 2005-11-08 2010-05-25 International Business Machines Corporation Method and system for generating ciphertext and message authentication codes utilizing shared hardware
US7681050B2 (en) * 2005-12-01 2010-03-16 Telefonaktiebolaget L M Ericsson (Publ) Secure and replay protected memory storage
US8195949B2 (en) * 2008-02-29 2012-06-05 Red Hat, Inc. Mechanism for generating message sequence order numbers
CN101626373B (zh) * 2008-07-11 2012-06-06 华为技术有限公司 超宽带系统的报文处理方法、装置和系统
CN101771973B (zh) * 2008-12-29 2012-08-29 中国移动通信集团公司 数据短信的处理方法、设备及系统
CA2697687C (en) * 2010-03-24 2014-02-18 Diversinet Corp. Method and system for secure communication using hash-based message authentication codes
JP5770602B2 (ja) * 2011-10-31 2015-08-26 トヨタ自動車株式会社 通信システムにおけるメッセージ認証方法および通信システム
US9106936B2 (en) * 2012-01-25 2015-08-11 Altera Corporation Raw format image data processing
CN102917313B (zh) * 2012-10-17 2015-05-27 重庆邮电大学 一种适用于无线传感器网络广播认证的方法
JP6199335B2 (ja) * 2014-06-05 2017-09-20 Kddi株式会社 通信ネットワークシステム及びメッセージ検査方法
US9032501B1 (en) * 2014-08-18 2015-05-12 Bionym Inc. Cryptographic protocol for portable devices

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12028350B2 (en) 2021-03-31 2024-07-02 Hyundai Motor Company Apparatus for electronic control of vehicle, apparatus for gateway and vehicle including the same

Also Published As

Publication number Publication date
EP3062476A1 (en) 2016-08-31
EP3062476B1 (en) 2019-04-10
US10142311B2 (en) 2018-11-27
US20160255065A1 (en) 2016-09-01
CN105933277B (zh) 2020-08-25
CN105933277A (zh) 2016-09-07
KR20160104565A (ko) 2016-09-05
JP2016158204A (ja) 2016-09-01

Similar Documents

Publication Publication Date Title
JP6420176B2 (ja) 通信システムおよび通信装置
Aman et al. A privacy-preserving and scalable authentication protocol for the internet of vehicles
US11606341B2 (en) Apparatus for use in a can system
JP6915095B2 (ja) コントローラエリアネットワークバスベースのセキュリティ通信方法、装置、およびシステム
CN109600350B (zh) 用于车辆网络中的控制器间的安全通信的系统和方法
Siddiqui et al. Secure communication over CANBus
EP2456121B1 (en) Challenge response based enrollment of physical unclonable functions
US10397195B2 (en) Method and system for shared key and message authentication over an insecure shared communication medium
Hazem et al. Lcap-a lightweight can authentication protocol for securing in-vehicle networks
Mundhenk et al. Lightweight authentication for secure automotive networks
Wang et al. NOTSA: Novel OBU with three-level security architecture for internet of vehicles
US11308240B2 (en) Cryptographic circuit and data processing
CN106357681A (zh) 一种车载远程诊断服务的安全接入与保密通信方法
Yu et al. EC-SVC: Secure CAN bus in-vehicle communications with fine-grained access control based on edge computing
CN104767618A (zh) 一种基于广播的can总线认证方法及系统
CN119652525B (zh) 一种IPSec混合抗量子计算安全方法及电子设备
Halabi et al. A lightweight synchronous cryptographic hash chain solution to securing the vehicle CAN bus
CN102255727B (zh) 改进的基于用户自定义算法环境的防攻击智能卡认证方法
Siddiqui et al. A secure communication framework for ecus
CN119697630A (zh) 一种新型智能网联汽车对称加密方法
JP4597060B2 (ja) 車両制御装置間ネットワーク
CN112765686A (zh) 芯片内算法密钥的防功耗攻击架构及方法
Siddiqui et al. Secure intra-vehicular communication over CANFD
US12489606B2 (en) Symmetric key generation, authentication and communication between a plurality of entities in a network
Horvat et al. Protection of CAN communication on embedded platform using symmetric encryption

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20170330

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171127

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180918

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181011

R150 Certificate of patent or registration of utility model

Ref document number: 6420176

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150