JPWO2018142504A1 - 暗号鍵配信システム、鍵配信ecu、鍵受信ecu、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法 - Google Patents

暗号鍵配信システム、鍵配信ecu、鍵受信ecu、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法 Download PDF

Info

Publication number
JPWO2018142504A1
JPWO2018142504A1 JP2018565137A JP2018565137A JPWO2018142504A1 JP WO2018142504 A1 JPWO2018142504 A1 JP WO2018142504A1 JP 2018565137 A JP2018565137 A JP 2018565137A JP 2018565137 A JP2018565137 A JP 2018565137A JP WO2018142504 A1 JPWO2018142504 A1 JP WO2018142504A1
Authority
JP
Japan
Prior art keywords
key
ecu
encryption key
encryption
unit
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
JP2018565137A
Other languages
English (en)
Other versions
JP6693577B2 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2018142504A1 publication Critical patent/JPWO2018142504A1/ja
Application granted granted Critical
Publication of JP6693577B2 publication Critical patent/JP6693577B2/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
    • 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/083Key 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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/083Key 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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key 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) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/84Vehicles

Abstract

鍵更新に要するデータ量を削減できる暗号鍵配信システム等を提供する。暗号鍵を送信する鍵配信ECU(100)と、暗号鍵を受信する鍵受信ECU(200)とを有する暗号鍵配信システム(1)において、鍵配信ECUは、鍵受信ECUに、暗号鍵を送信する(133)。また、鍵配信ECUは、鍵受信ECUから送信された検証データと、自装置内に保持する共通鍵と鍵受信ECUの識別子とから算出された暗号鍵の検証データとが一致するかを判定した結果に基づいて、鍵受信ECUへの暗号鍵の送信完了を判定する(134)。また、鍵受信ECUは、受信した暗号鍵を自装置内に記録し、受信した暗号鍵の検証データを自装置内に保持する共通鍵と自装置の識別子とから算出して鍵配信ECUへ送信する(231)。

Description

本発明は、暗号鍵配信システム、鍵配信ECU、鍵受信ECU、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法に関する。
自動車等に搭載される、CAN(Controller Area Network)を通じて接続された複数のECU(Electronic Control Unit)の間で、セキュアなデータ転送を行う技術が知られている。例えば、送信側ECUが、メッセージのデータフィールド及びメッセージIDと、メッセージが送信された回数を示すカウント値とから生成されるMAC(Message Authentication Code)を送信する技術が知られている。
また、ECU間で暗号鍵を共有する技術も知られている。暗号鍵を更新する場合、暗号鍵を配信するマスタECUは、鍵更新のターゲットECUのID(Identifier)であるUID及び鍵のスロットを示すメッセージであるM1を送信する。また、マスタECUは、リプレイ防止カウンタと各種フラグ、及び暗号化した新しい鍵を暗号化で構成されるメッセージであるM2と、M1、M2に対して演算されたMACであるM3とをさらに送信する。
この場合において、暗号鍵を受信するターゲットECUは、M1、M2及びM3を受信すると、まずM3を用いてM1及びM2のMAC検証を行う。MAC検証の結果がOKであった場合、ターゲットECUは、暗号鍵を復号して、暗号鍵のスロットに記憶する。また、ターゲットECUは、自装置のUIDと、暗号鍵のスロットと、暗号化したリプレイ防止カウンタで構成されるメッセージであるM4を生成し、M4のMACであるM5と併せてマスタECUに送信する。マスタMCUは、受信したM5を用いて、受信したM4のMAC検証を行う。
特開2013−098719号公報
菅島、岡、ヴィオム,「セキュアかつ効率的な車載鍵管理の提案」電子情報通信学会論文2016
しかし、上記技術においては、暗号鍵を受信したことを示す情報はデータサイズが大きいため、鍵更新に要する通信量が増大する場合がある。例えば、上記技術において、ターゲットECUからマスタECUに送信されるM4は32バイト、M5は16バイトであり、CANの1パケットで送信できるサイズである8バイトよりも大きい。
一つの側面では、鍵更新に要するデータ量を削減できる暗号鍵配信システム、鍵配信ECU、鍵受信ECU、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法を提供することを目的とする。
一つの態様において、暗号鍵を送信する鍵配信ECUと、暗号鍵を受信する鍵受信ECUとを有する暗号鍵配信システムにおいて、鍵配信ECUは、鍵受信ECUに、暗号鍵を送信する。また、鍵配信ECUは、鍵受信ECUから送信された検証データと、自装置内に保持する共通鍵と鍵受信ECUの識別子とから算出された暗号鍵の検証データとが一致するかを判定した結果に基づいて、鍵受信ECUへの暗号鍵の送信完了を判定する。また、鍵受信ECUは、受信した暗号鍵を自装置内に記録し、受信した暗号鍵の検証データを自装置内に保持する共通鍵と自装置の識別子とから算出して鍵配信ECUへ送信する。
一つの態様によれば、鍵更新に要するデータ量を削減できる。
図1は、実施例1における暗号鍵配信システムの一例を示す図である。 図2Aは、実施例1における暗号鍵配信処理の一例を示す図である。 図2Bは、実施例1における暗号鍵配信処理の一例を示す図である。 図2Cは、実施例1における暗号鍵配信処理の一例を示す図である。 図2Dは、実施例1における暗号鍵配信処理の一例を示す図である。 図2Eは、実施例1における暗号鍵配信処理の一例を示す図である。 図2Fは、実施例1における暗号鍵配信処理の一例を示す図である。 図3は、実施例1における暗号鍵配信処理の一例を示すシーケンス図である。 図4は、実施例1における暗号鍵送信処理の一例を示すフローチャートである。 図5は、実施例1における暗号鍵受信処理の一例を示すフローチャートである。 図6は、実施例1における配信検証処理の一例を示すフローチャートである。 図7は、実施例1における総当たり比較処理の一例を示す図である。 図8は、ECUのハードウェア構成の一例を示す図である。
以下に、本願の開示する暗号鍵配信システム、鍵配信ECU、鍵受信ECU、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
まず、本実施例における暗号鍵配信システムの一例について、図1を用いて説明する。図1は、実施例1における暗号鍵配信システムの一例を示す図である。図1に示すように、本実施例における暗号鍵配信システム1は、マスタECU100と、ターゲットECU200aと、ターゲットECU200bと、ターゲットECU200cとを含む。なお、以下において、ターゲットECU200a、ターゲットECU200b及びターゲットECU200cを区別せずに表現する場合に「ターゲットECU200」と表記する場合がある。マスタECU100と、ターゲットECU200とは、例えばCANなどのネットワークNによって相互に通信可能に接続されている。
本実施例におけるマスタECU100は、ターゲットECUに対して暗号鍵を配信する装置である。マスタECU100は、例えばプロセッサとメモリとを有するコンピュータにより実現できる。なお、マスタECU100は、鍵配信ECUの一例である。
本実施例におけるターゲットECU200は、マスタECU100が配信した暗号鍵を受信する装置である。ターゲットECU200も、マスタECU100と同様に、例えばプロセッサとメモリとを有するコンピュータにより実現できる。図1に示すように、ターゲットECU200は、通信部210と、記憶部220と、制御部230とを有する。なお、ターゲットECU200は、鍵受信ECUの一例である。また、以下において、各ターゲットECU200の各機能ブロックを区別して表現する場合に、例えば「記憶部220a」、「記憶部220c」と表記する場合がある。
[暗号鍵配信処理]
次に、暗号鍵配信システム1において、マスタ鍵を配信する処理について、図2A乃至図2Fを用いて説明する。図2A乃至図2Fは、実施例1における暗号鍵配信処理の一例を示す図である。図2Aに示すように、マスタECU100(MASTER ECU)は、ターゲットECU200a(ECU A)、ターゲットECU200b(ECU B)及びターゲットECU200c(ECU C)と、ネットワークNを通じて通信可能に接続されている。なお、マスタ鍵は、暗号鍵の一例である。
なお、各ターゲットECU200には、ターゲットECU200を一意に識別するID(Identifier)であるUIDが付与されている。例えば、図2Aに示すように、ターゲットECU200aのUIDは「UID_A」であり、ターゲットECU200cのUIDは「UID_C」である。また、UIDは、例えば各ターゲットECU200の記憶部220a及び220cに記憶される。なお、UIDは、鍵受信ECUの識別子の一例である。
また、各ターゲットECU200は、マスタECU100から配信されたマスタ鍵を、所定の鍵スロットに格納する。さらに、本実施例において、マスタECU100及びターゲットECU200は、再送攻撃を検知するための情報であるリプレイ用カウンタ値をそれぞれ格納する。
まず、図2Aに示すように、ターゲットECU200のうち、ターゲットECU200a及びターゲットECU200cの2つが、マスタECU100に対してマスタ鍵更新要求を送信する(1.マスタ鍵更新要求)。なお、図2Aに示すように、ターゲットECU200bはマスタ鍵更新要求を送信しない。また、この場合において、マスタ鍵更新要求を送信するターゲットECU200と、マスタECU100とは、新しいマスタ鍵の配信に用いる仮マスタ鍵を予め共有する。なお、仮マスタ鍵は、共通鍵の一例である。
マスタECU100は、マスタ鍵更新要求を受信すると、マスタ鍵更新要求を送信したターゲットECU200であるターゲットECU200a及びターゲットECU200cを特定する。次に、マスタECU100は、ターゲットECU200a及びターゲットECU200cのそれぞれについて、新しいマスタ鍵を生成する(2.新しいマスタ鍵生成)。なお、マスタECU100は、生成したメッセージ等を、ECUリスト格納部121に逐次記憶する。
次に、マスタECU100は、マスタ鍵更新要求を送信したターゲットECU200のUIDと、各ターゲットECU200の鍵スロットを用いて、メッセージM1を生成する。また、マスタECU100は、リプレイ用カウンタ値と、その他のマスタ鍵配信処理に用いる各種のフラグと、仮マスタ鍵で暗号化された新しいマスタ鍵とを用いて、メッセージM2を生成する(3.M1、M2生成)。メッセージM1は、例えば図2Aに示す「★」印を付された情報を用いて生成される。また、メッセージM2は、例えば図2Aに示す「●」印を付された情報を用いて生成される。
図2Bに移って、マスタECU100は、メッセージM1とメッセージM2とを連結したデータM1+M2のMACを生成する(4.M1+M2のMAC生成(M3))。マスタECU100は、事前に保持する仮マスタ鍵であるMASTER_ECU_KEYを用いてMACを生成する。そして、マスタECU100は、生成したメッセージM1及びメッセージM2、並びに生成したMACであるM3(MAC_A)をターゲットECU200aに送信する(5.M1、M2、M3送信)。なお、以下においては、マスタECU100とターゲットECU200aとの間の処理について説明するが、マスタECU100とターゲットECU200cとの間についても、同様の処理を行うものとする。
図2Cに移って、マスタECU100は、自らが保持するターゲットECU200aのUID「UID_A」と「鍵スロットA」と「カウンタ値A」とを用いて、ターゲットECU200aに対応するM4を生成する。次に、マスタECU100は、MASTER_ECU_KEYを用いて、生成したM4のMACであるM5(MAC_A)を生成する(6.M4のMAC生成(M5))。
マスタECU100は、マスタ鍵更新要求を送信した全てのターゲットECU200について、同様にM5を生成し、生成した全てのM5を比較候補表格納部122に格納する(7.比較候補表生成)。
次に、ターゲットECU200によるマスタ鍵受信処理について説明する。なお、以下においてはターゲットECU200aにおける処理について説明するが、ターゲットECU200cについても同様の処理を行うものとする。また、マスタ鍵更新要求を送信していないターゲットECU200bは、マスタ鍵を受信しないため、同様の処理は行わない。
まず、ターゲットECU200aは、マスタECU100からM1、M2及びM3を受信すると、まず、M2に含まれるカウンタ値が正当であるかを検証する(8.カウンタ値検証)。カウンタ値が正当であることを検証した場合、ターゲットECU200は、受信したM1とM2とを連結したデータM1+M2のMACであるM3(MAC_A’)を生成する(9.M1+M2のMAC生成)。なお、ターゲットECU200も、マスタECU100と同様に、事前に保持する仮マスタ鍵であるMASTER_ECU_KEYを用いて、MACを生成する。
図2Dに移って、ターゲットECU200aは、マスタECU100から受信したM3(MAC_A)と、生成したM3(MAC_A’)とが一致するか否かを検証する(10.生成したM3と、受信したM3とを検証)。M3(MAC_A)とM3(MAC_A’)とは、いずれも同一のMASTER_ECU_KEYを用いて生成されているため、2つのM3が一致しない場合、ターゲットECU200aは、受信したM3が正当ではないことを検証できる。ターゲットECU200aは、M3が正当であることを検証した場合、受信したM2を仮マスタ鍵で復号して、新しいマスタ鍵を鍵スロットAに記憶する(11.マスタ鍵格納(仮マスタ鍵でM2を復号))。
図2Eに移って、ターゲットECU200aは、自装置のUIDである「UID_A」と、鍵スロットである「鍵スロットA」と、カウンタ値Aとを用いて、メッセージM4を生成する。次に、ターゲットECU200aは、MASTER_ECU_KEYを用いて、生成したM4のMACであるM5(MAC_A’)を生成する(12.M4のMAC生成(M5))。なお、メッセージM4は、暗号鍵のデータセットの一例であり、M5は暗号鍵の検証データの一例である。
そして、ターゲットECU200aは、M5だけをマスタECU100に送信する(13.M5送信)。この際、ターゲットECU200aは、M4は送信しない。
図2Fに移って、M5を受信したマスタECU100は、受信したM5(MAC_A’)をECUリスト格納部121に記憶する。このとき、マスタECU100は、メッセージM4をターゲットECU200から受信しないので、M5を送信したターゲットECU200がどのUIDに対応するターゲットECU200であるかを特定できない。そこで、マスタECU100は、ターゲットECU200から受信したM5(MAC_A’)と、比較候補表に格納されたM5のいずれかとが一致するか否かを検証する(14.生成したM5と、受信したM5とを検証)。すなわち、マスタECU100は、受信したM5を、比較候補表格納部122に格納された比較候補表のM5と総当たり比較で比較する。
受信したM5(MAC_A’)と、比較候補表のM5(MAC_A)とは、M3(MAC_A)及びM3(MAC_A’)と同様に、いずれも事前に保持するマスタ鍵であるMASTER_ECU_KEYを用いて生成されている。このため、マスタECU100は、受信したM5(MAC_A’)と一致するM5(MAC_A)が比較候補表に格納されていない場合、すなわち受信したM5が比較候補表のいずれのM5とも一致しない場合、受信したM5が正当ではないことを検証できる。
マスタECU100は、受信したM5(MAC_A’)と一致するM5(MAC_A)が比較候補表に格納されている場合、すなわち受信したM5(MAC_A’)が正当であることを検証した場合、比較候補表からM5(MAC_A)を削除する。これにより、マスタECU100は、ターゲットECU200aに対するマスタ鍵配信処理が正常に完了したことを確認できる(15.検証されたM5を比較候補表から削除)。マスタECU100は、マスタ鍵更新要求を送信した全てのターゲットECU200から受信したM5が正当であることが検証されるまで、処理14.及び15.を繰り返す。すなわち、マスタECU100は、比較候補表に格納された全てのM5が削除された場合、処理を完了する。
このように、本実施例における暗号鍵配信システムにおいて、CANの暗号鍵更新の配信先ECUは、配信された暗号鍵に対応するデータセットを送信せず検証データのみを送信し、配信元ECUは受信した検証データを自ら保持する検証データと照合する。これにより、通信量を削減できる。
[機能ブロック]
次に、図1に戻って、各装置の機能ブロックについて説明する。図1に示すように、マスタECU100は、通信部110と、記憶部120と、制御部130とを有する。通信部110は、制御部130から出力されたデータを、ネットワークNを通じてターゲットECU200に送信する。また、通信部110は、ネットワークNを通じてターゲットECU200から受信したデータを、制御部130に出力する。
記憶部120は、例えば制御部130が実行するプログラム、仮マスタ鍵などの各種データなどを記憶する。また、記憶部120は、ECUリスト格納部121、比較候補表格納部122及びログ格納部123を有する。記憶部120は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリなどの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
ECUリスト格納部121は、図2Aに示すように、各ターゲットECU200に関する情報を記憶する。図2Aに示すように、ECUリスト格納部121は、ターゲットECU200のUIDと、鍵スロットに関する情報と、カウンタ値とを対応付けて記憶する。また、ECUリスト格納部121は、図2Eに示すように、各ターゲットECU200について、M3と、M5とをさらに記憶する。なお、図2Aに示すように、ECUリスト格納部121は、マスタ鍵更新要求を送信していないターゲットECU200の情報を記憶してもよい。ECUリスト格納部121に記憶される情報は、後に説明する取得部131により事前に登録され、また取得部131及び後に説明する生成部132により順次更新される。
比較候補表格納部122は、図2Eに示すように、マスタECU100が生成した、マスタ鍵更新要求を送信したターゲットECU200それぞれに対応するM5を記憶する。また、図2Fに示すように、比較候補表格納部122に記憶されたM5は、後に説明する検証部134が、受信したM5(MAC_A’)が正当であることを検証した場合に削除される。比較候補表格納部122に記憶される情報は、後に説明する生成部132により登録され、また検証部134により順次削除される。
ログ格納部123は、暗号鍵配信処理における各種のイベントに関する情報などのログを記憶する。例えば、ログ格納部123は、受信したM5の正当性の検証結果などを記憶する。ログ格納部123に記憶される情報は、例えば検証部134により登録される。ログ格納部123については、詳細な図示を省略する。
図1に戻って、制御部130は、マスタECU100の全体的な処理を司る処理部であり、例えばプロセッサなどである。この制御部130は、取得部131、生成部132、暗号鍵出力部133及び検証部134を有する。なお、取得部131、生成部132、暗号鍵出力部133及び検証部134は、プロセッサが有する電子回路の一例やプロセッサが実行するプロセスの一例である。
取得部131は、通信部110を通じて、ターゲットECU200からマスタ鍵更新要求を受信し、生成部132に暗号鍵の生成指示を出力する。また、取得部131は、通信部110を通じて、ターゲットECU200からM5を受信し、検証部134に受信したM5の検証指示を出力する。
生成部132は、取得部131から暗号鍵の生成指示の出力を受けると、暗号鍵を生成する。また、生成部132は、予めECUリスト格納部121に記憶されたターゲットECU200のUID及び鍵スロットに関する情報を用いて、メッセージM1を生成する。生成部132は、仮マスタ鍵を用いてマスタ鍵を暗号化し、カウンタ値と、各種のフラグと、暗号化されたマスタ鍵とを用いて、メッセージM2を生成する。生成部132は、生成したM1とM2を連結したデータのMACであるM3を生成する。そして、生成部132は、生成したM1、M2及びM3を、暗号鍵出力部133に出力する。
さらに、生成部132は、予めECUリスト格納部121に記憶されたターゲットECU200のUID、鍵スロットに関する情報及びカウンタ値を用いて、ターゲットECU200に関するM4を生成する。そして、生成部132は、生成したM4のMACであるM5を生成し、比較候補表格納部122に記憶する。
暗号鍵出力部133は、生成部132から出力されたM1、M2及びM3を、通信部110を通じて、ターゲットECU200に送信する。
検証部134は、取得部131から検証指示の出力を受けると、受信したM5が、比較候補表格納部122に記憶されたM5のいずれかと一致するか否かを検証する。検証部134は、受信したM5が、比較候補表格納部122に記憶されたM5のいずれにも一致しない場合、受信したM5が正当ではないことを検証し、受信したM5を破棄する。検証部134は、受信したM5が、比較候補表格納部122に記憶されたM5のいずれに一致した場合、受信したM5が正当であることを検証し、比較候補表格納部122から受信したM5と一致するM5を削除する。なお、検証部134は、受信したM5の検証結果を、ログ格納部123に記憶する。
次に、図1に示すように、ターゲットECU200は、通信部210と、記憶部220と、制御部230とを有する。通信部210は、制御部130から出力されたデータを、ネットワークNを通じてマスタECU100に送信する。また、通信部210は、ネットワークNを通じてマスタECU100から受信したデータを、制御部230に出力する。
記憶部220は、例えば制御部230が実行するプログラム、仮マスタ鍵などの各種データなどを記憶する。また、記憶部220は、カウンタ221及び鍵スロット222を有する。記憶部220は、RAM、ROM、フラッシュメモリなどの半導体メモリ素子や、HDDなどの記憶装置に対応する。
カウンタ221は、図2Cの符号221aに示すように、再送攻撃を検知するための情報であるリプレイ用カウンタ値を記憶する。鍵スロット222は、図2Dの符号222aに示すように、マスタECU100から配信されたマスタ鍵を記憶する。
制御部230は、ターゲットECU200の全体的な処理を司る処理部であり、例えばプロセッサなどである。この制御部230は、出力部231、暗号鍵取得部232及び暗号鍵検証部233を有する。なお、出力部231、暗号鍵取得部232及び暗号鍵検証部233は、プロセッサが有する電子回路の一例やプロセッサが実行するプロセスの一例である。
出力部231は、通信部210を通じて、マスタECU100にマスタ鍵更新要求を送信する。出力部231は、例えば図示しないターゲットECU200のユーザによる指示があった、所定のイベントが発生した、又は所定の時間が経過したなどのタイミングで、マスタ鍵更新要求を出力する。また、出力部231は、通信部210を通じて、マスタECU100に、暗号鍵検証部233から出力されるM5を送信する。
暗号鍵取得部232は、マスタECU100から送信されるM1、M2及びM3を、通信部210を通じて取得し、暗号鍵検証部233に出力する。
暗号鍵検証部233は、暗号鍵取得部232からM1、M2及びM3の出力を受けると、M2を仮マスタ鍵で復号し、カウンタ221を参照して、カウンタ値が正当であるか検証する。暗号鍵検証部233は、カウンタ値が正当ではないことを検証した場合、受信したM1、M2及びM3を破棄する。
暗号鍵検証部233は、カウンタ値が正当であることを検証した場合、M1及びM2のMACを生成する。そして、暗号鍵検証部233は、生成したMACと、受信したM3とが一致するか否かを判定する。
暗号鍵検証部233が生成するMACと、マスタECU100から受信するM3とは、いずれも同じM1及びM2並びに仮マスタ鍵を用いて生成されている。これにより、暗号鍵検証部233は、生成したMACと、受信したM3とが一致しない場合、受信したM3が正当ではないことを検証できる。
暗号鍵検証部233は、生成したMACと、受信したM3とが一致しない場合、受信したM1、M2及びM3を破棄する。一方、暗号鍵検証部233は、生成したMACと、受信したM3とが一致する場合、M2から新しいマスタ鍵を復号して、鍵スロット222に記憶する。また、暗号鍵検証部233は、自装置のUIDと、カウンタ221のカウンタ値と、鍵スロット222に関する情報とを用いて、メッセージM4を生成する。そして、暗号鍵検証部233は、生成したメッセージM4のMACであるM5を生成し、出力部231に出力する。
[処理の流れ]
次に、本実施例における暗号鍵配信システム1による暗号鍵配信処理について説明する。図3は、実施例1における暗号鍵配信処理の一例を示すシーケンス図である。図3に示すように、ターゲットECU200であるECU_A及びECU_Cの出力部231は、マスタECU100に鍵更新要求を送信する(S1)。
マスタECU100の取得部131は、鍵更新要求を受信すると、生成部132に暗号鍵の生成指示を出力する。生成部132は、ECUリスト格納部121を参照して鍵更新要求を送信したターゲットECU200を特定する(S2)。また、生成部132は、ターゲットECU200に配信する新たなマスタ鍵を生成する(S3)。
次に、生成部132は、ECUリスト格納部121に記憶された情報を用いて、メッセージM1及びM2を生成する(S4)。そして、生成部132は、生成したM1とM2を連結したデータのMACであるM3を生成し、生成したM1、M2及びM3を、暗号鍵出力部133に出力する(S5)。暗号鍵出力部133は、生成部132から出力されたM1、M2及びM3を、鍵更新要求を送信したターゲットECU200であるECU_A及びECU_Cに送信する(S6)。
また、生成部132は、ECUリスト格納部121に記憶されたターゲットECU200のUIDと、暗号鍵のスロットと、カウンタ値とを用いて、メッセージM4を生成する。そして、生成部132は、M4のMAC(M5)を生成して、比較候補表格納部122に記憶する(S7)。
ターゲットECU200の暗号鍵取得部232は、マスタECU100からM1、M2及びM3を受信し、暗号鍵検証部233に出力する。暗号鍵検証部233は、暗号鍵取得部232から出力されたM2を復号し、カウンタ221を参照して、カウンタ値が正当であるか否かを検証する(S8)。暗号鍵検証部233は、カウンタ値が正当であることを検証した場合、出力されたM1及びM2のMACを生成する(S9)。そして、暗号鍵検証部233は、生成したMACと、出力されたM3とが一致するか否かを検証する(S10)。
暗号鍵検証部233は、生成したMACと、出力されたM3とが一致することを検証した場合、M2を復号して得られる新たなマスタ鍵を鍵スロット222に格納する(S11)。次に、暗号鍵検証部233は、自装置のUIDと、暗号鍵のスロットと、カウンタ値とを用いて、メッセージM4を生成する。そして、暗号鍵検証部233は、M4のMACであるM5を生成し(S12)、出力部231に出力する。出力部231は、暗号鍵検証部233から出力されたM5を、マスタECU100に送信する(S13)。なお、この際、出力部231は、メッセージM4は送信しない。
マスタECU100の取得部131は、ターゲットECU200からM5を受信し、検証部134に出力する。次に、検証部134は、取得部131から出力されたM5と一致するか否かを検証する(S14)。検証部134は、生成したM4のMAC(M5)と、取得部131から出力されたM5とが一致することを検証した場合、比較候補表格納部122に記憶されたM4のMAC(M5)を削除する(S15)。
次に、各装置における処理について、図4乃至図6を用いて説明する。図4は、実施例1における暗号鍵送信処理の一例を示すフローチャートである。図4に示すように、マスタECU100の取得部131は、ターゲットECU200から鍵更新要求を受信するまで待機する(S100:No)。取得部131は、通信部110を通じて鍵更新要求を受信すると(S100:Yes)、生成部132に暗号鍵の生成指示を出力する。生成部132は、ECUリスト格納部121を参照して、鍵更新要求を送信したターゲットECU200のUID及び鍵スロットを特定する(S101)。
次に、生成部132は、ECUリスト格納部121を参照して、ターゲットECU200のカウンタ値を取得する(S102)。次に、生成部132は、新しいマスタ鍵を生成し(S103)、仮マスタ鍵を用いて新しいマスタ鍵を暗号化する(S104)。
次に、生成部132は、ECUリスト格納部121を参照して、メッセージM1及びM2を生成する(S105)。さらに、生成部132は、生成したメッセージM1及びM2のMACであるM3を生成する(S106)。そして、生成部132は、生成したM1及びM2並びにM3を、暗号鍵出力部133に出力する。暗号鍵出力部133は、生成部132から出力されたM1及びM2並びにM3を、通信部110を通じて鍵更新要求を送信したターゲットECU200に送信する(S107)。
次に、生成部132は、ECUリスト格納部121を参照して、M5を送信したターゲットECU200のUIDと、暗号鍵のスロットと、カウンタ値とを用いて、メッセージM4を生成する。次に、生成部132は、生成したM4のMACを生成する(S108)。そして、生成部132は、生成したM4のMACを比較候補表格納部122に記憶し、比較候補表を生成する(S109)。以上の処理により、マスタECU100から、鍵更新要求を送信したターゲットECU200に対して、新しいマスタ鍵が送信される。
次に、ターゲットECU200によるデータ受信処理について、図5を用いて説明する。図5は、実施例1における暗号鍵受信処理の一例を示すフローチャートである。図5に示すように、鍵更新要求を送信したターゲットECU200の暗号鍵取得部232は、マスタECU100からM1及びM2並びにM3を受信するまで待機する(S200:No)。暗号鍵取得部232は、M1及びM2並びにM3を受信すると(S200:Yes)、M1及びM2並びにM3を暗号鍵検証部233に出力する。
暗号鍵検証部233は、暗号鍵取得部232から出力されたM2を復号する。次に、暗号鍵検証部233は、カウンタ221を参照し、復号したM2に含まれるカウンタ値が正当であるか否かを検証する(S201)。暗号鍵検証部233は、カウンタ値が正当ではないことを検証した場合(S201:No)、メッセージM1、M2及びM3を破棄し(S211)、処理を終了する。
暗号鍵検証部233は、カウンタ値が正当であることを検証した場合(S201:Yes)、M1及びM2のMACを生成する。そして、暗号鍵検証部233は、生成したMACとM3とが一致するか否かを検証する(S202)。暗号鍵検証部233は、生成したMACとM3とが一致しないことを検証した場合(S202:No)、メッセージM1、M2及びM3を破棄し(S211)、処理を終了する。
暗号鍵検証部233は、生成したMACとM3とが一致することを検証した場合(S202:Yes)、M2を復号して得られる新しいマスタ鍵を鍵スロット222に格納する(S203)。次に、暗号鍵検証部233は、自装置のUIDと、暗号鍵のスロットと、カウンタ値とを用いて、メッセージM4を生成する。そして、暗号鍵検証部233は、M4のMACであるM5を生成し(S204)、出力部231に出力する。出力部231は、暗号鍵検証部233から出力されたM5を、マスタECU100に送信する(S205)。以上の処理により、ターゲットECU200は、マスタECU100から送信された新しいマスタ鍵を記憶するとともに、マスタECU100に検証データであるM5を送信する。
次に、マスタECU100における検証処理について、図6を用いて説明する。図6は、実施例1における配信検証処理の一例を示すフローチャートである。図6に示すように、マスタECU100の取得部131は、ターゲットECU200から検証データであるM5を受信するまで待機する(S300:No)。取得部131は、通信部110を通じてM5を受信すると(S300:Yes)、検証部134にM5の検証指示を出力する。
次に、検証部134は、比較候補表格納部122を参照して、取得部131から出力されたM5と一致するM4のMACが記憶されているか否かを総当たり比較で検証する(S301)。検証部134は、M5と一致するM4のMACが記憶されていないことを検証した場合(S302:No)、受信したM5に関する検証が失敗したことを示す情報をログ格納部123に記憶する(S311)。そして、検証部134は、受信したM5を破棄し(S312)、S200に戻って新たなM5を受信するまで待機する。
検証部134は、M5と一致するM4のMACが記憶されていることを検証した場合(S302:Yes)、受信したM5に関する検証が成功したことを示す情報をログ格納部123に記憶する(S303)。そして、検証部134は、比較候補表格納部122から、受信したM5と一致するM4のMACを削除する(S304)。
次に、検証部134は、比較候補表格納部122に残っているM4のMACがないか否かを判定する(S321)。検証部134は、残っているM4のMACがあると判定した場合(S321:No)、S200に戻って新たなM5を受信するまで待機する。一方、検証部134は、残っているM4のMACがないと判定した場合(S321:Yes)、比較候補表格納部122に記憶された比較候補表を削除する(S322)。そして、検証部134は、鍵更新要求を送信したターゲットECU200への鍵配信処理が完了したことを示す情報をログ格納部123に記憶し(S323)、処理を終了する。このような処理により、マスタECU100は、ターゲットECU200への鍵配信が完了したか否かを検証できる。この際、ターゲットECU200はM4を送信せず、M4のMACであるM5だけをマスタECU100に送信するので、鍵更新に要するデータ量を48バイトから16バイトに削減できる。
なお、本実施例において、検証部134は、ターゲットECU200から受信したM5の検証を、比較候補表格納部122に記憶されたM4のMACとの総当たり比較により行う。本実施例における総当たり比較処理について、図7を用いて説明する。図7は、実施例1における総当たり比較処理の一例を示す図である。図7は、「UID_D」乃至「UID_H」の5つのターゲットECU200から鍵更新要求を受信した場合に生成される比較候補表を用いた総当たり比較処理の一例を示す。この場合において、比較候補表には、MAC値「D’」乃至MAC値「H’」までの5つのMAC値が記憶される。
まず、検証部134は、「UID_D」のターゲットECU200から、MAC値が「D」であるM5を受信した場合、比較候補表に記憶された5つのMAC値と、受信したMAC値「D」とを総当たり比較する。すなわち、検証部134は、MAC値「D」についての総当たり比較処理を、最大で「5回」行う。その結果、検証部134は、MAC値「D’」が受信したMAC値と一致する、すなわち正当なMAC値を受信したことを検証する。この場合、検証部134は、比較候補表から、MAC値「D’」を削除する。すなわち、この時点において、比較候補表には、4つのMAC値が記憶されている。
次に、検証部134は、「UID_E」のターゲットECU200から、MAC値が「E」であるM5を受信した場合、比較候補表に記憶された4つのMAC値と、受信したMAC値「E」とを総当たり比較する。すなわち、検証部134は、MAC値「E」についての総当たり比較処理は、最大で「4回」行えばよく、MAC値「D」の場合に比べて処理時間を削減できる。
上記の場合と同様に、検証部134は、MAC値「E’」が、受信したMAC値と一致することを検証する。この場合、検証部134は、比較候補表から、MAC値「E’」を削除するので、比較候補表に記憶されるMAC値は3つに減少する。
このように、比較候補表に記憶されるMAC値の数は、正当なMAC値を受信する度に減少していく。これにより、検証部134は、本来は「25回」行うMAC値の総当たり比較処理を「15回」に削減できるので、総当たり比較に要する時間を削減できる。
[効果]
以上説明したように、暗号鍵を送信する鍵配信ECUと、暗号鍵を受信する鍵受信ECUとを有する暗号鍵配信システムにおいて、鍵配信ECUは、鍵受信ECUに、暗号鍵を送信する。また、鍵配信ECUは、鍵受信ECUから送信された検証データと、自装置内に保持する共通鍵と鍵受信ECUの識別子とから算出された暗号鍵の検証データとが一致するかを判定した結果に基づいて鍵受信ECUへの前記暗号鍵の送信完了を判定する。また、暗号鍵配信システムにおいて、鍵受信ECUは、受信した暗号鍵を自装置内に記録し、受信した暗号鍵の検証データを自装置内に保持する共通鍵と自装置の識別子とから算出して鍵配信ECUへ送信する。これにより、鍵更新に要するデータ量を削減できる。
また、鍵配信ECUは、鍵受信ECUのうち、鍵要求を送信した複数の鍵受信ECUに対して、暗号鍵を送信し、受信した検証データが、鍵要求を送信した複数の鍵受信ECUのうち、どの鍵受信ECUから送信されたものであるかを判定する。これにより、鍵配信ECUは、鍵更新が完了した鍵受信ECUを特定できる。
また、鍵配信ECUは、共通鍵と、暗号鍵の送信先である複数の鍵受信ECUの識別子とから暗号鍵の検証データを算出して、複数の鍵受信ECUの識別子に対応付けて検証データ記憶部に記憶する。そして、鍵配信ECUは、記憶された検証データと、鍵受信ECUから受信された検証データとが一致すると判定した場合に、検証データ記憶部から一致した検証データを削除する。これにより、鍵更新が成功したか否かの検証に要する時間を削減できる。
また、鍵配信ECUは、検証データ記憶部に記憶された検証データが全て削除されたと判定した場合に、鍵要求を送信した複数の鍵受信ECUにおいて暗号鍵の受信が完了したと判定する。これにより、鍵配信ECUは、全ての鍵受信ECUにおいて暗号鍵の受信が完了したことを容易に特定できる。
さらに、鍵受信ECUは、暗号鍵のデータセットを鍵配信ECUに送信しない。これにより、鍵更新に要するデータ量を削減できる。
なお、鍵更新に要するデータ量を削減する方法として、メッセージM4の一部を送信しない方法や、M5のデータ長を削減する方法も考えられる。しかし、メッセージM4の一部を送信しない方法ではデータ量の削減量が小さく、またM5のデータ長を削減すると、保証空間が狭くなるのでセキュリティ強度が劣化する。本実施例によれば、セキュリティ強度を劣化させることなく、鍵更新に要するデータ量を削減できる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。例えば、暗号鍵配信システム1におけるマスタECU100及びターゲットECU200の数は、図1に示す例に限られず、複数のマスタECU100や、4以上のターゲットECU200を有するような構成であってもよい。また、ターゲットECU200の一部が、マスタECU100を兼ねるような構成であってもよい。
また、実施例1においては、マスタ鍵を配信する構成について説明したが、これに限られず、マスタ鍵以外の暗号鍵を配信するような構成であってもよい。この場合、生成部132は、配信対象の鍵を暗号化する際に、仮マスタ鍵を用いることなく、既存のマスタ鍵を用いてもよい。
また、生成部132が、メッセージM1に含まれるUIDの代わりに、UIDのハッシュ値をM1に含めるような構成であってもよい。これにより、鍵更新に要するデータ量をさらに削減することができる。
なお、暗号鍵検証部233は、カウンタ値が正当か否かを検証する処理において、カウンタ221の値と受信したカウンタ値とが一致する場合に限らず、差異が所定の許容範囲内にある場合においても、カウンタ値が正当であることを検証するように実現してもよい。この場合、暗号鍵検証部233は、カウンタ221の値を、受信したカウンタ値に応じて補正してもよい。
また、本実施例は、一つのCANにおいて実現される暗号鍵配信システム1について説明したが、これに限られず、複数のCANにまたがって暗号鍵配信システム1が実現されてもよい。この場合において、マスタECU100は複数存在していてもよい。また、各マスタECU100、又はマスタECU100とターゲットECU200とが、異なるCANに属してもよい。また、各ターゲットECU200は、CANを一意に識別するIDである「CAN ID」を、他のターゲットECU200と共有してもよい。これにより、有限である「CAN ID」の利用数を削減できる。
[システム]
また、図示した各部の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、取得部131と暗号鍵出力部133とを統合してもよい。また、出力部231を、暗号鍵更新要求を出力する処理部と検証データを出力する処理部とに分散してもよい。さらに、各装置で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウェア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。
[ハードウェア]
また、上述の各実施例にて説明したターゲットECU200は、例えば、車両に搭載されるマイコンなどの電子機器により実現される。図8は、ECUのハードウェア構成の一例を示す図である。なお、以下においては、ターゲットECU200を例として説明するが、マスタECU100についても同様のハードウェア構成により実現できる。
図8に示すように、電子機器9000は、プロセッサ9001、CAN通信インタフェース9002、RAM9003、不揮発メモリ9004及び外部インタフェース9005を有する。プロセッサ9001、CAN通信インタフェース9002、RAM9003、不揮発メモリ9004及び外部インタフェース9005は、例えばワンチップ上に実装される。
プロセッサ9001の一例としては、CPU、DSP(Digital Signal Processor)、FPGA、PLD(Programmable Logic Device)等が挙げられる。CAN通信インタフェース9002は、他のECUとの通信を制御する有線インタフェースなどである。RAM9003及び不揮発メモリ9004の一例としては、SDRAM(Synchronous Dynamic Random Access Memory)等のRAM、ROM、フラッシュメモリ等が挙げられる。外部インタフェース9005は、例えばターゲットECU200が制御する外部機器との通信を制御する有線又は無線インタフェースである。
プロセッサ9001は、例えば、出力部231、暗号鍵取得部232及び暗号鍵検証部233と同様の機能を実行するプログラムを実行する。これにより、プロセッサ9001は、出力部231、暗号鍵取得部232及び暗号鍵検証部233と同様の機能を実行するプロセスを動作させる。
なお、上述の各実施例にて説明したマスタECU100も、同様の電子機器9000により実現できる。この場合において、例えばマスタECU100を実現するプロセッサ9001は、取得部131、生成部132、暗号鍵出力部133及び検証部134と同様の機能を実行するプログラムを実行する。これにより、プロセッサ9001は、取得部131、生成部132、暗号鍵出力部133及び検証部134と同様の機能を実行するプロセスを動作させる。
1 暗号鍵配信システム
100 マスタECU
200 ターゲットECU
110、210 通信部
120、220 記憶部
121 ECUリスト格納部
122 比較候補表格納部
123 ログ格納部
221 カウンタ
222 鍵スロット
130、230 制御部
131 取得部
132 生成部
133 暗号鍵出力部
134 検証部
231 出力部
232 暗号鍵取得部
233 暗号鍵検証部

Claims (10)

  1. 暗号鍵を送信する鍵配信ECUと、前記暗号鍵を受信する鍵受信ECUと、を有する暗号鍵配信システムにおいて、
    前記鍵配信ECUは、
    前記鍵受信ECUに、暗号鍵を送信する送信部と、
    前記鍵受信ECUから送信された検証データと、自装置内に保持する共通鍵と前記鍵受信ECUの識別子とから算出された前記暗号鍵の検証データと、が一致するかを判定した結果に基づいて、前記鍵受信ECUへの前記暗号鍵の送信完了を判定する判定部と
    を有し、
    前記鍵受信ECUは、受信した前記暗号鍵を自装置内に記録し、受信した前記暗号鍵の検証データを自装置内に保持する前記共通鍵と同一の共通鍵と自装置の識別子とから算出して前記鍵配信ECUへ送信する送信部を有する
    ことを特徴とする暗号鍵配信システム。
  2. 前記鍵配信ECUの送信部は、前記鍵受信ECUのうち、鍵要求を送信した複数の鍵受信ECUに対して、前記暗号鍵を送信し、
    前記鍵配信ECUの判定部は、受信した前記検証データが、前記鍵要求を送信した複数の鍵受信ECUのうち、どの鍵受信ECUから送信されたものであるかを判定することを特徴とする請求項1に記載の暗号鍵配信システム。
  3. 前記鍵配信ECUは、前記共通鍵と、前記暗号鍵の送信先である前記複数の鍵受信ECUの識別子とから前記暗号鍵の検証データを算出して、前記複数の鍵受信ECUの識別子に対応付けて検証データ記憶部に記憶する算出部をさらに有し、
    前記鍵配信ECUの判定部は、記憶された前記検証データと、前記鍵受信ECUから送信された前記検証データとが一致すると判定した場合に、前記検証データ記憶部から一致した前記検証データを削除することを特徴とする請求項2に記載の暗号鍵配信システム。
  4. 前記鍵配信ECUの判定部は、前記検証データ記憶部に記憶された前記検証データが全て削除されたと判定した場合に、前記鍵要求を送信した複数の鍵受信ECUにおいて前記暗号鍵の受信が完了したと判定することを特徴とする請求項3に記載の暗号鍵配信システム。
  5. 前記鍵受信ECUの送信部は、前記暗号鍵のデータセットを前記鍵配信ECUに送信しないことを特徴とする請求項4に記載の暗号鍵配信システム。
  6. 暗号鍵を鍵受信ECUに送信する鍵配信ECUにおいて、
    前記鍵受信ECUに前記暗号鍵を送信する送信部と、
    前記鍵受信ECUから、前記鍵受信ECUが保持する共通鍵と前記鍵受信ECUの識別子とから算出される、送信した前記暗号鍵の検証データを受信する受信部と、
    受信した前記検証データと、自装置内に保持する前記共通鍵と同一の共通鍵と前記鍵受信ECUの識別子とから算出された前記暗号鍵の検証データとが一致するかを判定した結果に基づいて、前記鍵受信ECUへの前記暗号鍵の送信完了を判定する判定部と
    を有することを特徴とする鍵配信ECU。
  7. 暗号鍵を送信する鍵配信ECUから前記暗号鍵を受信する鍵受信ECUにおいて、
    前記鍵配信ECUから受信した前記暗号鍵を自装置内に記録する記録部と、
    自装置内に保持する共通鍵と自装置の識別子とから受信した前記暗号鍵の検証データを算出して前記鍵配信ECUへ送信する送信部と
    を有することを特徴とする鍵受信ECU。
  8. 暗号鍵を鍵受信ECUに送信する鍵配信ECUに、
    前記鍵受信ECUに前記暗号鍵を送信し、
    前記鍵受信ECUから、前記鍵受信ECUが保持する共通鍵と前記鍵受信ECUの識別子とから算出される、送信した前記暗号鍵の検証データを受信し、
    受信した前記検証データと、自装置内に保持する前記共通鍵と前記鍵受信ECUの識別子とから算出された前記暗号鍵の検証データとが一致するかを判定した結果に基づいて、前記鍵受信ECUへの前記暗号鍵の送信完了を判定する
    処理を実行させることを特徴とする鍵配信プログラム。
  9. 暗号鍵を送信する鍵配信ECUから前記暗号鍵を受信する鍵受信ECUに、
    前記鍵配信ECUから受信した前記暗号鍵を自装置内に記録し、
    自装置内に保持する共通鍵と自装置の識別子とから受信した前記暗号鍵の検証データを算出して前記鍵配信ECUへ送信する
    処理を実行させることを特徴とする鍵受信プログラム。
  10. 暗号鍵を送信する鍵配信ECUと、前記暗号鍵を受信する鍵受信ECUと、を有する暗号鍵配信システムにおいて、
    前記鍵配信ECUは、
    前記鍵受信ECUに、暗号鍵を送信し、
    前記鍵受信ECUから送信された検証データと、自装置内に保持する共通鍵と前記鍵受信ECUの識別子とから算出された前記暗号鍵の検証データと、が一致するかを判定した結果に基づいて、前記鍵受信ECUへの前記暗号鍵の送信完了を判定する
    処理を実行し、
    前記鍵受信ECUは、受信した前記暗号鍵を自装置内に記録し、受信した前記暗号鍵の検証データを自装置内に保持する共通鍵と自装置の識別子とから算出して前記鍵配信ECUへ送信する
    処理を実行することを特徴とする暗号鍵配信方法。
JP2018565137A 2017-02-01 2017-02-01 暗号鍵配信システム、鍵配信ecu、鍵配信プログラム、及び暗号鍵配信方法 Active JP6693577B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/003596 WO2018142504A1 (ja) 2017-02-01 2017-02-01 暗号鍵配信システム、鍵配信ecu、鍵受信ecu、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法

Publications (2)

Publication Number Publication Date
JPWO2018142504A1 true JPWO2018142504A1 (ja) 2019-11-07
JP6693577B2 JP6693577B2 (ja) 2020-05-13

Family

ID=63039476

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018565137A Active JP6693577B2 (ja) 2017-02-01 2017-02-01 暗号鍵配信システム、鍵配信ecu、鍵配信プログラム、及び暗号鍵配信方法

Country Status (3)

Country Link
US (1) US11171776B2 (ja)
JP (1) JP6693577B2 (ja)
WO (1) WO2018142504A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018213038A1 (de) * 2018-08-03 2020-02-06 Continental Teves Ag & Co. Ohg Verfahren zum fahrzeuginternen Verwalten von kryptographischen Schlüsseln
US11343097B2 (en) * 2020-06-02 2022-05-24 Bank Of America Corporation Dynamic segmentation of network traffic by use of pre-shared keys
CN114258013B (zh) * 2020-09-11 2023-10-31 中国联合网络通信集团有限公司 数据加密方法、设备和存储介质
WO2022227057A1 (zh) * 2021-04-30 2022-11-03 华为技术有限公司 一种密钥更新方法及其相关设备
CN114844627A (zh) * 2021-06-28 2022-08-02 长城汽车股份有限公司 一种车辆密钥防盗方法、系统、电子设备及车辆

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011139186A (ja) * 2009-12-28 2011-07-14 Hitachi Ltd 無線データ搬送装置及び無線データ搬送方式
US20150195364A1 (en) * 2014-01-09 2015-07-09 Ford Global Technologies, Llc Secure manipulation of embedded modem connection settings through short messaging service communication
JP2016092716A (ja) * 2014-11-10 2016-05-23 パナソニックIpマネジメント株式会社 鍵管理通信装置および鍵配布方法
WO2016093368A1 (ja) * 2014-12-12 2016-06-16 Kddi株式会社 管理装置、鍵生成装置、車両、メンテナンスツール、管理システム、管理方法、及びコンピュータプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100884956B1 (ko) * 2002-08-14 2009-02-23 엘지전자 주식회사 비대칭 양방향 패킷데이터 송수신 방법 및 시스템
JP5770602B2 (ja) 2011-10-31 2015-08-26 トヨタ自動車株式会社 通信システムにおけるメッセージ認証方法および通信システム
EP3412514B1 (en) * 2014-11-12 2019-12-04 Panasonic Intellectual Property Corporation of America Update management method, update management device, and control program
CN105794146A (zh) * 2014-11-13 2016-07-20 松下电器(美国)知识产权公司 密钥管理方法、车载网络系统以及密钥管理装置
JP2017059894A (ja) * 2015-09-14 2017-03-23 株式会社オートネットワーク技術研究所 通信システム
JP6481579B2 (ja) * 2015-09-29 2019-03-13 株式会社オートネットワーク技術研究所 車載通信システム及び監視装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011139186A (ja) * 2009-12-28 2011-07-14 Hitachi Ltd 無線データ搬送装置及び無線データ搬送方式
US20150195364A1 (en) * 2014-01-09 2015-07-09 Ford Global Technologies, Llc Secure manipulation of embedded modem connection settings through short messaging service communication
JP2016092716A (ja) * 2014-11-10 2016-05-23 パナソニックIpマネジメント株式会社 鍵管理通信装置および鍵配布方法
WO2016093368A1 (ja) * 2014-12-12 2016-06-16 Kddi株式会社 管理装置、鍵生成装置、車両、メンテナンスツール、管理システム、管理方法、及びコンピュータプログラム

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
GEOLF EMERSON, ET AL.: "Using the Cryptographic Service Engine (CSE)", FREESCAL SEMICONDUCTOR, vol. AN4234 Rev:0,06/2011, JPN6017013777, 2011, pages 1 - 28, ISSN: 0004234495 *
KEISUKE TAKEMORI, ET AL.: "In-Vehicle Network Security Using Secure Element", IEICE TRANSACTIONS ON FUNDAMENALS OF ELECTRONICS, COMMUNICATIONS AND COMPUTER SCIENCES, vol. 99, no. 1, JPN6017013776, 1 January 2016 (2016-01-01), JP, pages 208 - 216, XP055537638, ISSN: 0004234494, DOI: 10.1587/transfun.E99.A.208 *
川端 秀明 ほか: "車載ECU向けの鍵管理方式", SCIS2016 [USB], vol. 2F4−5, JPN6016034851, 22 January 2016 (2016-01-22), JP, pages 1 - 7, ISSN: 0004234493 *
菅島 健司 ほか: "セキュアかつ効率的な車載鍵管理の提案", SCIS2016 [USB], vol. 4F2−4, JPN6017013775, 19 January 2016 (2016-01-19), JP, pages 1 - 6, ISSN: 0004133785 *

Also Published As

Publication number Publication date
US11171776B2 (en) 2021-11-09
US20190356477A1 (en) 2019-11-21
JP6693577B2 (ja) 2020-05-13
WO2018142504A1 (ja) 2018-08-09

Similar Documents

Publication Publication Date Title
JP7364674B2 (ja) 安全な無線ファームウェアアップグレード
WO2018142504A1 (ja) 暗号鍵配信システム、鍵配信ecu、鍵受信ecu、鍵配信プログラム、鍵受信プログラム及び暗号鍵配信方法
US10810315B2 (en) Enabling access to data
EP1696602B1 (en) Cryptographic communication system and method
KR101883437B1 (ko) 요구되는 노드 경로들 및 암호 서명들을 이용한 보안 패킷 전송을 위한 정책
JP6573880B2 (ja) 更新プログラム及び方法、及び、管理プログラム及び方法
JP6012888B2 (ja) 機器証明書提供装置、機器証明書提供システムおよび機器証明書提供プログラム
US10699031B2 (en) Secure transactions in a memory fabric
KR20150135032A (ko) Puf를 이용한 비밀키 업데이트 시스템 및 방법
JP7302664B2 (ja) 情報処理装置、データ記録システム、データ記録方法及びプログラム
US11917081B2 (en) Issuing device and method for issuing and requesting device and method for requesting a digital certificate
CN112865959B (zh) 分布式节点设备的共识方法、节点设备及分布式网络
KR102437864B1 (ko) 펌웨어를 수신하는 방법 및 펌웨어를 전송하는 방법
JP6023853B1 (ja) 認証装置、認証システム、認証方法、およびプログラム
WO2018076291A1 (zh) 权限令牌生成方法、系统及其设备
CN109492384B (zh) 接收实体访问、访问密码设备的方法、密码设备和实体
CN110311937B (zh) 数据转发系统
JP6939313B2 (ja) 分散認証システム
US20220209946A1 (en) Key revocation for edge devices
EP4012689B1 (en) Key management system providing secure management of cryptographic keys, and methods of operating the same
US20170222810A1 (en) User permission check system
JP2019075774A (ja) 認証方法、認証装置、被認証装置及び画像形成装置
GB2570292A (en) Data protection
RU2722925C1 (ru) Способ защищенного информационного обмена данными
US10902141B2 (en) Method, software program product, device, and system for managing data flow from a cloud storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191015

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191206

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200330

R150 Certificate of patent or registration of utility model

Ref document number: 6693577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150