JP6625293B2 - 鍵管理装置および通信機器 - Google Patents
鍵管理装置および通信機器 Download PDFInfo
- Publication number
- JP6625293B2 JP6625293B2 JP2019537431A JP2019537431A JP6625293B2 JP 6625293 B2 JP6625293 B2 JP 6625293B2 JP 2019537431 A JP2019537431 A JP 2019537431A JP 2019537431 A JP2019537431 A JP 2019537431A JP 6625293 B2 JP6625293 B2 JP 6625293B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- vehicle
- information
- identifier
- terminal device
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3273—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response for mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key 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)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
- Storage Device Security (AREA)
Description
今後は、自動車がクラウド、路側器および他の自動車といった外部の様々なものと通信を行うことによって、より高度な運転支援機能が実現されると予想される。
自動車が外部と通信を行うようになると、自動車が悪意ある攻撃を受けてしまう可能性が高まる。そのため、通信セキュリティが重要となる。
この手法では、送信装置と受信装置とが互いの認証に用いる共通鍵をあらかじめ共有する状況を想定している。
しかし、自動車は様々なメーカ製の車載機器を組み立てて製造されるので、各メーカが車載機器の通信関係をあらかじめ把握することは難しい。そのため、車載機器を製造するときに車載機器に鍵を設定することは困難である。また、運用中に車載機器が交換されることも有り得るため、製造時に車載機器に鍵を設定するだけでは不十分である。
しかし、車載機器にはコストおよびリソースに関する制限があるので、公開鍵暗号方式をサポートしない車載機器が存在する。そのため、特許文献1の手法を全ての車載機器に適用することは困難である。
特許文献2の手法を用いれば、例えば、自動車の車両内に存在するゲートウェイが配下の車載機器に対する認証を以下の(1)から(6)の手順で実現することが可能である。
(1)ゲートウェイは、車載機器からメーカID(identifier)と機器IDとを受け取る。
(2)ゲートウェイは、車載機器のメーカIDと機器IDとを管理サーバに渡す。
(3)管理サーバはマスタ鍵を保持しており、管理サーバはマスタ鍵と車載機器のメーカIDとを用いてメーカ用認証鍵を再生する。
(4)管理サーバは、再生したメーカ用認証鍵と車載機器の機器IDとを用いて機器用認証鍵を再生する。
(5)管理サーバは、再生した機器用認証鍵をゲートウェイへ送信する。
(6)ゲートウェイは、機器用認証鍵を受信し、受信した機器用認証鍵を用いて車載機器と相互認証を行う。
以上により、様々なメーカ製の車載機器から構成される自動車において、ゲートウェイが各車載機器と認証鍵を事前に共有していなくても、ゲートウェイが各車載機器との相互認証を実現することが可能となる。
また、本手法では共通鍵暗号方式が使用されるため、全ての車載機器に本手法を適用することが可能である。
一つは、自動車メーカの工場において自動車を組立てる時である。この時、ゲートウェイは、まだいずれの車載機器とも共通鍵を共有していない状態である。そのため、ゲートウェイは、全ての車載機器と鍵共有処理を行う。
もう一つは、ディーラ等において、自動車に新たな車載機器を追加する時、あるいは既存の車載機器を交換する時である。これらの場合、自動車に搭載されている車載機器に関しては、ゲートウェイは既に共通鍵を共有している状態である。そのため、ゲートウェイは、新たに追加される車載機器と鍵共有処理を行う。
特許文献2の手法が適用される場合、自動車メーカの工場にて自動車を組立てる際にゲートウェイと自動車内の全ての車両機器との鍵共有を実現するためには、上記(1)から(6)の手順を車載機器の数だけ繰り返す必要がある。
そのため、ゲートウェイと管理サーバとの間でやり取りされる通信パケットの数が増加し、ゲートウェイと全ての車両機器との鍵共有に要する処理時間が長くなる。
また、管理サーバは、マスタ鍵を厳重に管理する必要がある。そのため、管理サーバが工場ごとに設置されずに自動車メーカ内の1箇所にのみ設置されてマスタ鍵が集中管理されることが望ましい。従って、管理サーバは、その自動車メーカの全工場の全生産ラインからの鍵要求に対応する必要がある。
そのため、管理サーバの処理負荷の軽減も強く求められる。
通信機器を識別する通信機器識別子と、端末機器を識別する端末機器識別子と、を含んだ鍵要求を受信する受信部と、
前記鍵要求に含まれる前記通信機器識別子を用いて前記通信機器識別子に対応する通信機器鍵を生成し、前記鍵要求に含まれる前記端末機器識別子を用いて前記端末機器識別子に対応する端末機器鍵を生成する機器鍵生成部と、
前記通信機器と前記端末機器とに共有させる共有鍵を生成された前記通信機器鍵を用いて暗号化することによって前記通信機器の暗号化共有鍵を生成し、前記共有鍵を生成された前記端末機器鍵を用いて暗号化することによって前記端末機器の暗号化共有鍵を生成する共有鍵暗号化部と、
前記通信機器の前記暗号化共有鍵と前記端末機器の前記暗号化共有鍵とを含んだ鍵応答を送信する送信部とを備える。
鍵共有を行うための形態について、図1から図35に基づいて説明する。
図1に基づいて、鍵共有システム10の構成を説明する。
鍵共有システム10は、鍵共有システムの一例である。
鍵管理装置100、第一機器管理装置200、第二機器管理装置300および第三機器管理装置400は、ネットワーク19を介して互いに通信を行う。
ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、車両15に搭載される機器である。
車両15は、自動車であり、製品の一例である。
ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、ケーブルを介して互いに通信を行う。
さらに、ゲートウェイ500は、ネットワーク19を介して、鍵管理装置100と第一機器管理装置200と第二機器管理装置300と第三機器管理装置400と通信を行う。
第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、それぞれ端末機器である。
事業者11は、車両15を製造するメーカである。
第一メーカ12は、第一機器を製造するメーカである。
第一機器は、第一メーカ12によって製造される機器であり、車両15に搭載される。
鍵共有システム10において、第一機器はゲートウェイ500と第三車載機器800とのそれぞれである。
したがって、第一メーカ12は、通信機器を製造する通信メーカであり、端末機器を製造する端末メーカである。
第二メーカ13は、第二機器を製造するメーカである。
第二機器は、第二メーカ13によって製造される機器であり、車両15に搭載される。
鍵共有システム10において、第二機器は第一車載機器600である。
したがって、第二メーカ13は、端末機器を製造する端末メーカである。
第三メーカ14は、第三機器を製造するメーカである。
第三機器は、第三メーカ14によって製造される機器であり、車両15に搭載される。
鍵共有システム10において、第三機器は第二車載機器700と第四車載機器900とのそれぞれである。
したがって、第三メーカ14は、端末機器を製造する端末メーカである。
鍵管理装置100は、プロセッサ101とメモリ102と補助記憶装置103と通信装置104といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサは、演算処理を行うIC(Integrated Circuit)であり、他のハードウェアを制御する。
例えば、プロセッサは、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、またはGPU(Graphics Processing Unit)である。
メモリは、揮発性の記憶装置であり、主記憶装置またはメインメモリとも呼ばれる。
例えば、メモリは、RAM(Random Access Memory)である。
メモリ102に記憶されたデータは必要に応じて補助記憶装置103に保存される。
補助記憶装置は、不揮発性の記憶装置である。
例えば、補助記憶装置は、ROM(Read Only Memory)、HDD(Hard Disk Drive)、またはフラッシュメモリである。
補助記憶装置103に記憶されたデータは必要に応じてメモリ102にロードされる。
通信装置は、通信を行う装置、すなわち、レシーバ及びトランスミッタである。
例えば、通信装置は、通信チップまたはNIC(Network Interface Card)である。
さらに、補助記憶装置103にはOS(Operating System)が記憶されている。OSの少なくとも一部は、メモリ102にロードされて、プロセッサ101によって実行される。
つまり、プロセッサ101は、OSを実行しながら、鍵管理プログラムを実行する。
鍵管理プログラムを実行して得られるデータは、メモリ102、補助記憶装置103、プロセッサ101内のレジスタまたはプロセッサ101内のキャッシュメモリといった記憶装置に記憶される。
通信装置104は、データを受信する受信部131として機能する。さらに、通信装置104は、データを送信する送信部132として機能する。
記憶部120は、マスタ鍵121と第一メーカ識別子122と第二メーカ識別子123と第三メーカ識別子124といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部120に記憶される主なデータである。記憶部120に記憶されるデータは、外部に漏れないように安全に管理される。
マスタ鍵121、第一メーカ識別子122、第二メーカ識別子123および第三メーカ識別子124は、生成時に補助記憶装置103に記憶される。その後、鍵管理装置100の起動時に、マスタ鍵121、第一メーカ識別子122、第二メーカ識別子123および第三メーカ識別子124は、補助記憶装置103から読み出されてメモリ102の記憶部120に書き込まれる。
第一機器管理装置200は、プロセッサ201とメモリ202と補助記憶装置203と通信装置204といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ202は、第一機器管理装置200に備わるメモリである。メモリ202に記憶されたデータは必要に応じて補助記憶装置203に保存される。
補助記憶装置203は、第一機器管理装置200に備わる補助記憶装置である。補助記憶装置203に記憶されたデータは必要に応じてメモリ202にロードされる。
通信装置204は、第一機器管理装置200に備わる通信装置である。
さらに、補助記憶装置203にはOSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
つまり、プロセッサ201は、OSを実行しながら、第一機器管理プログラムを実行する。
第一機器管理プログラムを実行して得られるデータは、メモリ202、補助記憶装置203、プロセッサ201内のレジスタまたはプロセッサ201内のキャッシュメモリといった記憶装置に記憶される。
通信装置204はデータを受信する受信部231として機能する。さらに、通信装置204はデータを送信する送信部232として機能する。
記憶部220は、第一メーカ鍵221と第一メーカ識別子222とゲートウェイ識別子223と第三車載機器識別子224といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部220に記憶される主なデータである。記憶部220に記憶されるデータは、外部に漏れないように安全に管理される。
第一メーカ鍵221、第一メーカ識別子222、ゲートウェイ識別子223および第三車載機器識別子224は、受信時または生成時に補助記憶装置203に記憶される。その後、第一機器管理装置200の起動時に、第一メーカ鍵221、第一メーカ識別子222、ゲートウェイ識別子223および第三車載機器識別子224は、補助記憶装置203から読み出されてメモリ202の記憶部220に書き込まれる。
第二機器管理装置300は、プロセッサ301とメモリ302と補助記憶装置303と通信装置304といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ302は、第二機器管理装置300に備わるメモリである。メモリ302に記憶されたデータは必要に応じて補助記憶装置303に保存される。
補助記憶装置303は、第二機器管理装置300に備わる補助記憶装置である。補助記憶装置303に記憶されたデータは必要に応じてメモリ302にロードされる。
通信装置304は、第二機器管理装置300に備わる通信装置である。
さらに、補助記憶装置303にはOSが記憶されている。OSの少なくとも一部は、メモリ302にロードされて、プロセッサ301によって実行される。
つまり、プロセッサ301は、OSを実行しながら、第二機器管理プログラムを実行する。
第二機器管理プログラムを実行して得られるデータは、メモリ302、補助記憶装置303、プロセッサ301内のレジスタまたはプロセッサ301内のキャッシュメモリといった記憶装置に記憶される。
通信装置304はデータを受信する受信部331として機能する。さらに、通信装置304はデータを送信する送信部332として機能する。
記憶部320は、第二メーカ鍵321と第二メーカ識別子322と第一車載機器識別子323といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部320に記憶される主なデータである。記憶部320に記憶されるデータは、外部に漏れないように安全に管理される。
第二メーカ鍵321、第二メーカ識別子322および第一車載機器識別子323は、受信時または生成時に補助記憶装置203に記憶される。その後、第二メーカ鍵321、第二メーカ識別子322および第一車載機器識別子323は、補助記憶装置303から読み出されてメモリ302の記憶部320に書き込まれる。
第三機器管理装置400は、プロセッサ401とメモリ402と補助記憶装置403と通信装置404といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ402は、第三機器管理装置400に備わるメモリである。メモリ402に記憶されたデータは必要に応じて補助記憶装置403に保存される。
補助記憶装置403は、第三機器管理装置400に備わる補助記憶装置である。補助記憶装置403に記憶されたデータは必要に応じてメモリ402にロードされる。
通信装置404は、第三機器管理装置400に備わる通信装置である。
さらに、補助記憶装置403にはOSが記憶されている。OSの少なくとも一部は、メモリ402にロードされて、プロセッサ401によって実行される。
つまり、プロセッサ401は、OSを実行しながら、第三機器管理プログラムを実行する。
第三機器管理プログラムを実行して得られるデータは、メモリ402、補助記憶装置403、プロセッサ401内のレジスタまたはプロセッサ401内のキャッシュメモリといった記憶装置に記憶される。
通信装置404はデータを受信する受信部431として機能する。さらに、通信装置404はデータを送信する送信部432として機能する。
記憶部420は、第三メーカ鍵421と第三メーカ識別子422と第二車載機器識別子423と第四車載機器識別子424といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部420に記憶される主なデータである。記憶部420に記憶されるデータは、外部に漏れないように安全に管理される。
第三メーカ鍵421、第三メーカ識別子422、第二車載機器識別子423および第四車載機器識別子424は、受信時または生成時に補助記憶装置403に記憶される。その後、第三機器管理装置400の起動時に、第三メーカ鍵421、第三メーカ識別子422、第二車載機器識別子423および第四車載機器識別子424は、補助記憶装置403から読み出されてメモリ402の記憶部420に書き込まれる。
ゲートウェイ500は、プロセッサ501とメモリ502と補助記憶装置503と通信装置504といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ502は、ゲートウェイ500に備わるメモリである。メモリ502に記憶されたデータは必要に応じて補助記憶装置503に保存される。
補助記憶装置503は、ゲートウェイ500に備わる補助記憶装置である。補助記憶装置503に記憶されたデータは必要に応じてメモリ502にロードされる。
通信装置504は、ゲートウェイ500に備わる通信装置である。
さらに、補助記憶装置503にはOSが記憶されている。OSの少なくとも一部は、メモリ502にロードされて、プロセッサ501によって実行される。
つまり、プロセッサ501は、OSを実行しながら、通信機器プログラムを実行する。
通信機器プログラムを実行して得られるデータは、メモリ502、補助記憶装置503、プロセッサ501内のレジスタまたはプロセッサ501内のキャッシュメモリといった記憶装置に記憶される。
通信装置504はデータを受信する受信部531として機能する。さらに、通信装置504はデータを送信する送信部532として機能する。
記憶部520は、第一メーカ識別子521とゲートウェイ識別子522とゲートウェイ鍵523と共有鍵524といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部520に記憶される主なデータである。記憶部520に記憶されるデータは、外部に漏れないように安全に管理される。
第一メーカ識別子521、ゲートウェイ識別子522、ゲートウェイ鍵523および共有鍵524は、受信時または復号時に補助記憶装置503に記憶される。その後、ゲートウェイ500の起動時に、第一メーカ識別子521、ゲートウェイ識別子522、ゲートウェイ鍵523および共有鍵524は、補助記憶装置503から読み出されてメモリ502の記憶部520に書き込まれる。
第一車載機器600は、プロセッサ601とメモリ602と補助記憶装置603と通信装置604といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ602は、第一車載機器600に備わるメモリである。メモリ602に記憶されたデータは必要に応じて補助記憶装置603に保存される。
補助記憶装置603は、第一車載機器600に備わる補助記憶装置である。補助記憶装置603に記憶されたデータは必要に応じてメモリ602にロードされる。
通信装置604は、第一車載機器600に備わる通信装置である。
さらに、補助記憶装置603にはOSが記憶されている。OSの少なくとも一部は、メモリ602にロードされて、プロセッサ601によって実行される。
つまり、プロセッサ601は、OSを実行しながら、第一端末機器プログラムを実行する。
第一端末機器プログラムを実行して得られるデータは、メモリ602、補助記憶装置603、プロセッサ601内のレジスタまたはプロセッサ601内のキャッシュメモリといった記憶装置に記憶される。
通信装置604はデータを受信する受信部631として機能する。さらに、通信装置604はデータを送信する送信部632として機能する。
記憶部620は、第二メーカ識別子621と第一車載機器識別子622と第一車載機器鍵623と共有鍵624といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部620に記憶される主なデータである。記憶部620に記憶されるデータは、外部に漏れないように安全に管理される。
第二メーカ識別子621、第一車載機器識別子622、第一車載機器鍵623および共有鍵624は、受信時または復号時に補助記憶装置603に記憶される。その後、第一車載機器600の起動時に、第二メーカ識別子621、第一車載機器識別子622、第一車載機器鍵623および共有鍵624は、補助記憶装置603から読み出されてメモリ602の記憶部620に書き込まれる。
第二車載機器700は、プロセッサ701とメモリ702と補助記憶装置703と通信装置704といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ702は、第二車載機器700に備わるメモリである。メモリ702に記憶されたデータは必要に応じて補助記憶装置703に保存される。
補助記憶装置703は、第二車載機器700に備わる補助記憶装置である。補助記憶装置703に記憶されたデータは必要に応じてメモリ702にロードされる。
通信装置704は、第二車載機器700に備わる通信装置である。
さらに、補助記憶装置703にはOSが記憶されている。OSの少なくとも一部は、メモリ702にロードされて、プロセッサ701によって実行される。
つまり、プロセッサ701は、OSを実行しながら、第二端末機器プログラムを実行する。
第二端末機器プログラムを実行して得られるデータは、メモリ702、補助記憶装置703、プロセッサ701内のレジスタまたはプロセッサ701内のキャッシュメモリといった記憶装置に記憶される。
通信装置704はデータを受信する受信部731として機能する。さらに、通信装置704はデータを送信する送信部732として機能する。
記憶部720は、第三メーカ識別子721と第二車載機器識別子722と第二車載機器鍵723と共有鍵724といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部720に記憶される主なデータである。記憶部720に記憶されるデータは、外部に漏れないように安全に管理される。
第三メーカ識別子721、第二車載機器識別子722、第二車載機器鍵723および共有鍵724は、受信時または生成時に補助記憶装置703に記憶される。その後、第二車載機器700の起動時に、第三メーカ識別子721、第二車載機器識別子722、第二車載機器鍵723および共有鍵724は、補助記憶装置703から読み出されてメモリ702の記憶部720に書き込まれる。
第三車載機器800は、プロセッサ801とメモリ802と補助記憶装置803と通信装置804といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ802は、第三車載機器800に備わるメモリである。メモリ802に記憶されたデータは必要に応じて補助記憶装置803に保存される。
補助記憶装置803は、第三車載機器800に備わる補助記憶装置である。補助記憶装置803に記憶されたデータは必要に応じてメモリ802にロードされる。
通信装置804は、第三車載機器800に備わる通信装置である。
さらに、補助記憶装置803にはOSが記憶されている。OSの少なくとも一部は、メモリ802にロードされて、プロセッサ801によって実行される。
つまり、プロセッサ801は、OSを実行しながら、第三端末機器プログラムを実行する。
第三端末機器プログラムを実行して得られるデータは、メモリ802、補助記憶装置803、プロセッサ801内のレジスタまたはプロセッサ801内のキャッシュメモリといった記憶装置に記憶される。
通信装置804はデータを受信する受信部831として機能する。さらに、通信装置804はデータを送信する送信部832として機能する。
記憶部820は、第一メーカ識別子821と第三車載機器識別子822と第三車載機器鍵823と共有鍵824といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部820に記憶される主なデータである。記憶部820に記憶されるデータは、外部に漏れないように安全に管理される。
第一メーカ識別子821、第三車載機器識別子822、第三車載機器鍵823および共有鍵824は、受信時または復号時に補助記憶装置803に記憶される。その後、第三車載機器800の起動時に、第一メーカ識別子821、第三車載機器識別子822、第三車載機器鍵823および共有鍵824は、補助記憶装置803から読み出されてメモリ802の記憶部820に書き込まれる。
第四車載機器900は、プロセッサ901とメモリ902と補助記憶装置903と通信装置904といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
メモリ902は、第四車載機器900に備わるメモリである。メモリ902に記憶されたデータは必要に応じて補助記憶装置903に保存される。
補助記憶装置903は、第四車載機器900に備わる補助記憶装置である。補助記憶装置903に記憶されたデータは必要に応じてメモリ902にロードされる。
通信装置904は、第四車載機器900に備わる通信装置である。
さらに、補助記憶装置903にはOSが記憶されている。OSの少なくとも一部は、メモリ902にロードされて、プロセッサ901によって実行される。
つまり、プロセッサ901は、OSを実行しながら、第四端末機器プログラムを実行する。
第四端末機器プログラムを実行して得られるデータは、メモリ902、補助記憶装置903、プロセッサ901内のレジスタまたはプロセッサ901内のキャッシュメモリといった記憶装置に記憶される。
通信装置904はデータを受信する受信部931として機能する。さらに、通信装置904はデータを送信する送信部932として機能する。
記憶部920は、第三メーカ識別子921と第四車載機器識別子922と第四車載機器鍵923と共有鍵924といったデータを記憶する。各データの内容については後述する。
これらのデータは、記憶部920に記憶される主なデータである。記憶部920に記憶されるデータは、外部に漏れないように安全に管理される。
第三メーカ識別子921、第四車載機器識別子922、第四車載機器鍵923および共有鍵924は、受信時または復号時に補助記憶装置903に記憶される。その後、第四車載機器900の起動時に、第三メーカ識別子921、第四車載機器識別子922、第四車載機器鍵923および共有鍵924は、補助記憶装置903から読み出されてメモリ902の記憶部920に書き込まれる。
鍵共有システム10の動作は鍵共有方法に相当する。また、鍵共有方法の手順は鍵共有プログラムの手順に相当する。
鍵管理装置100の動作は鍵管理方法に相当する。また、鍵管理方法の手順は鍵管理プログラムの手順に相当する。
各機器管理装置(第一機器管理装置200、第二機器管理装置300または第三機器管理装置400)の動作は機器管理方法に相当する。また、機器管理方法の手順は機器管理プログラムの手順に相当する。
ゲートウェイ500の動作は通信機器制御方法に相当する。また、通信機器制御方法の手順は通信機器プログラムの手順に相当する。
各車載機器(第一車載機器600、第二車載機器700、第三車載機器800または第四車載機器900)の動作は端末機器制御方法に相当する。また、端末機器制御方法の手順は端末機器プログラムの手順に相当する。
機器鍵設定処理は、各機器に機器鍵を設定するための処理である。
機器鍵は、機器別の鍵であり、認証鍵または機器認証鍵ともいう。
各車載機器の機器鍵は、端末機器鍵という。
ステップS101において、鍵管理装置100のマスタ鍵生成部111は、マスタ鍵121を生成する。
マスタ鍵121は、第一メーカ鍵221と第二メーカ鍵321と第三メーカ鍵421との生成に用いられる鍵である。
具体的には、マスタ鍵生成部111は乱数を生成する。そして、マスタ鍵生成部111は、生成された乱数を入力として鍵生成関数を実行することによって、鍵を生成する。生成される鍵がマスタ鍵121である。
鍵生成関数は、鍵を生成するための関数である。鍵を共有するためのアルゴリズムとして、HMAC(Hash−based MAC)が挙げられる。MACはMessage Authentication Codeの略称である。
ステップS102において、鍵管理装置100のメーカ鍵生成部112は、第一メーカ識別子122と第二メーカ識別子123と第三メーカ識別子124とを生成する。
第一メーカ識別子122は、第一メーカ12を識別する情報である。
第二メーカ識別子123は、第二メーカ13を識別する情報である。
第三メーカ識別子124は、第三メーカ14を識別する情報である。
但し、メーカ鍵生成部112は、複数のメーカ識別子を含んだリストから、3つのメーカ識別子を第一メーカ識別子122、第二メーカ識別子123および第三メーカ識別子124として選択してもよい。
また、メーカ鍵生成部112は、第一メーカ識別子122、第二メーカ識別子123および第三メーカ識別子124を他の方法で生成してもよい。
ステップS103において、鍵管理装置100のメーカ鍵生成部112は、マスタ鍵121と第一メーカ識別子122とを用いて、第一メーカ鍵を生成する。
さらに、メーカ鍵生成部112は、マスタ鍵121と第二メーカ識別子123とを用いて、第二メーカ鍵を生成する。
さらに、メーカ鍵生成部112は、マスタ鍵121と第三メーカ識別子124とを用いて、第三メーカ鍵を生成する。
第二メーカ鍵は、第二メーカ13用の個別鍵である。
第三メーカ鍵は、第三メーカ14用の個別鍵である。
個別鍵は、メーカ別の鍵である。
さらに、メーカ鍵生成部112は、マスタ鍵121と第二メーカ識別子123とを入力として鍵生成関数を実行することによって鍵を生成する。生成される鍵が第二メーカ鍵である。
さらに、メーカ鍵生成部112は、マスタ鍵121と第三メーカ識別子124とを入力として鍵生成関数を実行することによって鍵を生成する。生成される鍵が第三メーカ鍵である。
ステップS104において、鍵管理装置100の送信部132は、第一メーカ鍵と第一メーカ識別子122とを第一機器管理装置200に送信する。
さらに、送信部132は、第二メーカ鍵と第二メーカ識別子123とを第二機器管理装置300に送信する。
さらに、送信部132は、第三メーカ鍵と第三メーカ識別子124とを第三機器管理装置400に送信する。
具体的には、これらは、TLS(Transport Layer Security)を用いて送信される。また、これらは、オフラインで安全に配布されてもよい。
ステップS105において、第一機器管理装置200の受信部231は、第一メーカ鍵と第一メーカ識別子122とを受信する。
そして、記憶部220は、受信された第一メーカ鍵と第一メーカ識別子122とを記憶する。
記憶部220に記憶された第一メーカ鍵を第一メーカ鍵221といい、記憶部220に記憶された第一メーカ識別子122を第一メーカ識別子222という。
そして、記憶部320は、受信された第二メーカ鍵と第二メーカ識別子123とを記憶する。
記憶部320に記憶された第二メーカ鍵を第二メーカ鍵321といい、記憶部320に記憶された第二メーカ識別子123を第二メーカ識別子322という。
そして、記憶部420は、受信された第三メーカ鍵と第三メーカ識別子124とを記憶する。
記憶部420に記憶された第三メーカ鍵を第三メーカ鍵421といい、記憶部420に記憶された第三メーカ識別子124を第三メーカ識別子422という。
ステップS106において、第一機器管理装置200の機器鍵生成部211は、ゲートウェイ識別子223と第三車載機器識別子224とを生成する。
ゲートウェイ識別子223は、ゲートウェイ500用の機器識別子であり、ゲートウェイ500を識別する。
第三車載機器識別子224は、第三車載機器800用の機器識別子であり、第三車載機器800を識別する。
但し、機器鍵生成部211は、複数の機器識別子を含んだリストから、2つの機器識別子をゲートウェイ識別子223および第三車載機器識別子224として選択してもよい。
また、機器鍵生成部211は、ゲートウェイ識別子223および第三車載機器識別子224を他の方法で生成してもよい。
第一車載機器識別子323は、第一車載機器600用の機器識別子であり、第一車載機器600を識別する。
第一車載機器識別子323を生成する方法は、ゲートウェイ識別子223または第三車載機器識別子224を生成する方法と同じである。
第二車載機器識別子423は、第二車載機器700用の機器識別子であり、第二車載機器700を識別する。
第四車載機器識別子424は、第四車載機器900用の機器識別子であり、第四車載機器900を識別する。
第二車載機器識別子423および第四車載機器識別子424を生成する方法は、ゲートウェイ識別子223および第三車載機器識別子224を生成する方法と同じである。
ステップS107において、第一機器管理装置200の機器鍵生成部211は、第一メーカ鍵221とゲートウェイ識別子223とを用いて、ゲートウェイ鍵を生成する。
さらに、機器鍵生成部211は、第一メーカ鍵221と第三車載機器識別子224とを用いて、第三車載機器鍵を生成する。
第三車載機器鍵は、第三車載機器800用の機器鍵である。
さらに、機器鍵生成部211は、第一メーカ鍵221と第三車載機器識別子224とを入力として鍵生成関数を実行することによって鍵を生成する。生成される鍵が第三車載機器鍵である。
さらに、機器鍵生成部411は、第三メーカ鍵421と第四車載機器識別子424とを用いて、第四車載機器鍵を生成する。
第四車載機器鍵は、第四車載機器900用の機器鍵である。
さらに、機器鍵生成部411は、第三メーカ鍵421と第四車載機器識別子424とを入力として鍵生成関数を実行することによって鍵を生成する。生成される鍵が第四車載機器鍵である。
ステップS108において、第一機器管理装置200の送信部232は、第一メーカ識別子222、ゲートウェイ識別子223およびゲートウェイ鍵をゲートウェイ500に送信する。
さらに、送信部232は、第一メーカ識別子222、第三車載機器識別子224および第三車載機器鍵を第三車載機器800に送信する。
さらに、送信部432は、第三メーカ識別子422、第四車載機器識別子424および第四車載機器鍵を第四車載機器900に送信する。
ステップS109において、ゲートウェイ500の受信部531は、第一メーカ識別子222、ゲートウェイ識別子223およびゲートウェイ鍵を受信する。
そして、記憶部520は、受信された第一メーカ識別子222、ゲートウェイ識別子223およびゲートウェイ鍵を記憶する。
記憶部520に記憶された第一メーカ識別子222を第一メーカ識別子521という。記憶部520に記憶されたゲートウェイ識別子223をゲートウェイ識別子522という。記憶部520に記憶されたゲートウェイ鍵をゲートウェイ鍵523という。
ゲートウェイ識別子522は、通信機器識別子である。
ゲートウェイ鍵523は、通信機器鍵である。
そして、記憶部620は、受信された第二メーカ識別子322、第一車載機器識別子323および第一車載機器鍵を記憶する。
記憶部620に記憶された第二メーカ識別子322を第二メーカ識別子621という。記憶部620に記憶された第一車載機器識別子323を第一車載機器識別子622という。記憶部620に記憶された第一車載機器鍵を第一車載機器鍵623という。
第一車載機器識別子622は、端末機器識別子である。
第一車載機器鍵623は、端末機器鍵である。
そして、記憶部720は、受信された第三メーカ識別子422、第二車載機器識別子423および第二車載機器鍵を記憶する。
記憶部720に記憶された第三メーカ識別子422を第三メーカ識別子721という。記憶部720に記憶された第二車載機器識別子423を第二車載機器識別子722という。記憶部720に記憶された第二車載機器鍵を第二車載機器鍵723という。
第二車載機器識別子722は、端末機器識別子である。
第二車載機器鍵723は、端末機器鍵である。
そして、記憶部820は、受信された第一メーカ識別子222、第三車載機器識別子224および第三車載機器鍵を記憶する。
記憶部820に記憶された第一メーカ識別子222を第一メーカ識別子821という。記憶部820に記憶された第三車載機器識別子224を第三車載機器識別子822という。記憶部820に記憶された第三車載機器鍵を第三車載機器鍵823という。
第三車載機器識別子822は、端末機器識別子である。
第三車載機器鍵823は、端末機器鍵である。
そして、記憶部920は、受信された第三メーカ識別子422、第四車載機器識別子424および第四車載機器鍵を記憶する。
記憶部920に記憶された第三メーカ識別子422を第三メーカ識別子921という。記憶部920に記憶された第四車載機器識別子424を第四車載機器識別子922という。記憶部920に記憶された第四車載機器鍵を第四車載機器鍵923という。
第四車載機器識別子922は、端末機器識別子である。
第四車載機器鍵923は、端末機器鍵である。
ステップS101からステップS105までの処理は、各メーカの工場で各機器が製造される前の段階で1度実施される。
ステップS106からステップS109までの処理は、事業者11によって車両15が製造される前の段階で実施される。例えば、ステップS106からステップS109までの処理は、第一メーカ12の工場でゲートウェイ500または第三車載機器800が製造される段階で実施される。
事業者11は、各メーカから各機器を購入し、工場で車両15を製造する。購入時において、各機器には機器鍵が設定されている。
鍵共有処理は、ゲートウェイ500が各車載機器と鍵を共有するための処理である。
ゲートウェイ500が各車載機器と共有する鍵を共有鍵という。共有鍵は認証鍵ともいう。
ステップS110において、ゲートウェイ500は、各車載機器に対して情報を要求する。
情報要求処理(S110)の詳細については後述する。
ステップS120において、各車載機器は、ゲートウェイ500に情報を送信する。
情報送信処理(S120)の詳細については後述する。
ステップS130において、ゲートウェイ500の情報要求部511は、受信部531を介して各車載機器から情報を受信する。
情報のソートは、並び順規則に従って情報を並べることを意味する。並び順規則は、並び順を定める規則である。
ゲートウェイ500の情報と各車載機器の情報とが設定されるデータをソート情報データという。
ソート処理(S130)の詳細については後述する。
ステップS140において、ゲートウェイ500は、ソート情報データを含んだ鍵要求を鍵管理装置100に送信する。
具体的には、ゲートウェイ500の鍵要求部513は、ソート情報データを含んだ鍵要求を生成し、生成された鍵要求を送信部532を介して鍵管理装置100に送信する。
ステップS150において、鍵管理装置100は、各車載機器に対する検証を行い、ゲートウェイ500の暗号化共有鍵と正当な車載機器のそれぞれの暗号化共有鍵とを含んだ鍵応答をゲートウェイ500に送信する。
暗号化共有鍵は、暗号化された共有鍵である。
鍵応答処理(S150)の詳細については後述する。
ステップS160において、ゲートウェイ500の情報要求部511は、受信部531を介して鍵管理装置100から鍵応答を受信する。
そして、ゲートウェイ500の鍵復号部514は、全ての車載機器のそれぞれの暗号化共有鍵が鍵応答に含まれているか判定する。
全ての車載機器のそれぞれの暗号化共有鍵が鍵応答に含まれている場合、処理はステップS170に進む。
少なくともいずれかの車載機器の暗号化共有鍵が鍵応答に含まれていない場合、ゲートウェイ500が各車載機器と鍵を共有せずに、処理は終了する。
ステップS170において、ゲートウェイ500の鍵復号部514は、ゲートウェイ鍵523を用いて、ゲートウェイ500用の暗号化共有鍵から共有鍵を復号する。復号が成功した場合には共有鍵が得られる。
具体的には、鍵復号部514は、ゲートウェイ鍵523を用いて認証付き暗号方式でゲートウェイ500用の暗号化共有鍵から共有鍵を復号する。より具体的には、鍵復号部514は、ゲートウェイ鍵523とゲートウェイ500用の暗号化共有鍵とを入力として認証付き暗号方式の復号関数を実行する。
認証付き暗号方式における復号では、認証および復号が行われる。そして、認証が成功した場合に復号が成功する。また、認証が失敗した場合には復号が失敗する。
ステップS180において、ゲートウェイ500の鍵配布部515は、ゲートウェイ500の暗号化共有鍵から共有鍵を復号することができたか判定する。つまり、鍵配布部515は、復号が成功したか判定する。
復号が成功した場合、記憶部520は、復号された共有鍵を記憶する。記憶される共有鍵が共有鍵524である。その後、処理はステップS190に進む。
復号が失敗した場合、鍵配布部515はエラー処理を行う。その後、処理は終了する。この場合、ゲートウェイ500は各車載機器と共有鍵を共有できない。
ステップS190において、ゲートウェイ500は、各車載機器に暗号化共有鍵を送信する。
そして、各車載機器は、暗号化共有鍵を受信し、暗号化共有鍵から共有鍵を復号する。
鍵復号処理(S190)の詳細については後述する。
情報要求処理(S110)は、ゲートウェイ500が各車載機器に対して情報を要求するための処理である。
具体的には、情報要求部511は乱数を生成する。生成される乱数がチャレンジである。
情報要求20は、チャレンジ21を含んでいる。
情報送信処理(S120)は、各車載機器がゲートウェイ500に情報を送信するための処理である。
つまり、第一車載機器600の情報応答部611は、受信部631を介して、ゲートウェイ500から情報要求20を受信する。
また、第二車載機器700の情報応答部711は、受信部731を介して、ゲートウェイ500から情報要求20を受信する。
また、第三車載機器800の情報応答部811は、受信部831を介して、ゲートウェイ500から情報要求20を受信する。
また、第四車載機器900の情報応答部911は、受信部931を介して、ゲートウェイ500から情報要求20を受信する。
例えば、暗号アルゴリズムは、AES(Advanced Encryption Standard)である。
また、第二車載機器700の情報応答部711は、受信された情報要求20からチャレンジ21を取得し、チャレンジ21と第二車載機器鍵723とを用いてレスポンス41を生成する。
また、第三車載機器800の情報応答部811は、受信された情報要求20からチャレンジ21を取得し、チャレンジ21と第三車載機器鍵823とを用いてレスポンス51を生成する。
また、第四車載機器900の情報応答部911は、受信された情報要求20からチャレンジ21を取得し、チャレンジ21と第四車載機器鍵923とを用いてレスポンス61を生成する。
レスポンス31とレスポンス41とレスポンス51とレスポンス61との各レスポンスを生成する方法は、前述の通りである。
つまり、第一車載機器600の情報応答部611は、第一車載機器600の情報を含んだ情報応答30を生成する。第一車載機器600の情報は、第二メーカ識別子621、第一車載機器識別子622およびレスポンス31である。
また、第二車載機器700の情報応答部711は、第二車載機器700の情報を含んだ情報応答40を生成する。第二車載機器700の情報は、第三メーカ識別子721、第二車載機器識別子722およびレスポンス41である。
また、第三車載機器800の情報応答部811は、第三車載機器800の情報を含んだ情報応答50を生成する。第三車載機器800の情報は、第一メーカ識別子821、第三車載機器識別子822およびレスポンス51である。
また、第四車載機器900の情報応答部911は、第四車載機器900の情報を含んだ情報応答60を生成する。第四車載機器900の情報は、第三メーカ識別子921、第四車載機器識別子922およびレスポンス61である。
つまり、第一車載機器600の情報応答部611は、送信部632を介して、情報応答30をゲートウェイ500に送信する。
また、第二車載機器700の情報応答部711は、送信部732を介して、情報応答40をゲートウェイ500に送信する。
また、第三車載機器800の情報応答部811は、送信部832を介して、情報応答50をゲートウェイ500に送信する。
また、第四車載機器900の情報応答部911は、送信部932を介して、情報応答60をゲートウェイ500に送信する。
情報応答30は、第一車載機器600の情報である第二メーカ識別子621と第一車載機器識別子622とレスポンス31とを含んでいる。
情報応答40は、第二車載機器700の情報である第三メーカ識別子721と第二車載機器識別子722とレスポンス41とを含んでいる。
情報応答50は、第三車載機器800の情報である第一メーカ識別子821と第三車載機器識別子822とレスポンス51とを含んでいる。
情報応答60は、第四車載機器900の情報である第三メーカ識別子921と第四車載機器識別子922とレスポンス61とを含んでいる。
ソート処理(S130)は、各車載機器の情報をソートするための処理である。
具体的には、ゲートウェイ500の情報は、第一メーカ識別子521、ゲートウェイ識別子522およびチャレンジ21である。
ゲートウェイ500とメーカが同じ車載機器を該当車載機器という。
図27の情報応答50は、第三車載機器800の情報の一部である第一メーカ識別子821を含んでいる。第一メーカ識別子821は第一メーカ識別子521と一致する。したがって、第三車載機器800は該当車載機器である。
該当車載機器が有る場合、処理はステップS133に進む。
該当車載機器が無い場合、処理はステップS134に進む。
但し、ゲートウェイ500の情報の一部として第一メーカ識別子521がソート情報データに設定済みであるため、情報ソート部512は、各該当車載機器の情報からメーカ識別子を除いて、各該当車載機器の情報をソート情報データに追加する。
したがって、情報ソート部512は、第三車載機器800の情報から第一メーカ識別子821を除いて、第三車載機器800の情報をソート情報データに追加する。
ゲートウェイ500とメーカが異なり互いにメーカが同じ2つ以上の車載機器から成る車載機器群を該当車載機器群という。
図26の情報応答40は、第二車載機器700の情報の一部である第三メーカ識別子721を含んでいる。図28の情報応答60は、第四車載機器900の情報の一部である第三メーカ識別子921を含んでいる。第三メーカ識別子721は第三メーカ識別子921と一致する。したがって、第二車載機器700および第四車載機器900は該当車載機器群である。
該当車載機器群が有る場合、処理はステップS135に進む。
該当車載機器群が無い場合、処理はステップS136に進む。
但し、該当車載機器群のメーカ識別子は同じである。情報ソート部512は、該当車載機器群の情報の中での先頭の情報をソート情報データに追加する。さらに、情報ソート部512は、該当車載機器群の情報の中での2番目以降の各情報からメーカ識別子を除いて、2番目以降の各情報をソート情報データに追加する。
したがって、情報ソート部512は、第二車載機器700の情報をソート情報データに追加する。さらに、情報ソート部512は、第四車載機器900の情報から第三メーカ識別子921を除いて、第四車載機器900の情報をソート情報データに追加する。
ゲートウェイ500と各該当車載機器群とのいずれともメーカが異なる車載機器を非該当車載機器という。
図25の情報応答30は、第一車載機器600の情報の一部である第二メーカ識別子621を含んでいる。第二メーカ識別子621は、第一メーカ識別子521と第三メーカ識別子721と第一メーカ識別子821と第三メーカ識別子921とのいずれとも一致しない。したがって、第一車載機器600は非該当車載機器である。
非該当車載機器が有る場合、処理はステップS137に進む。
非該当車載機器が無い場合、処理は終了する。
したがって、情報ソート部512は、第一車載機器600の情報をソート情報データに追加する。
ソート情報データ70は、ゲートウェイ500の情報と各車載機器の情報とを含んでいる。各情報は以下のように配置されている。
先頭の情報は、ゲートウェイ500の情報である。ゲートウェイ500の情報は、第一メーカ識別子521、ゲートウェイ識別子522およびチャレンジ21である。ゲートウェイ500のメーカは第一メーカ12である。
2番目の情報は、第三車載機器800の情報である。第三車載機器800の情報は、第三車載機器識別子822およびレスポンス51である。第三車載機器800のメーカは第一メーカ12であり、第三車載機器800はゲートウェイ500とメーカが同じである。そのため、第三車載機器800の情報は、第一メーカ識別子821を含んでいない。
3番目の情報は、第二車載機器700の情報である。第二車載機器700の情報は、第三メーカ識別子721、第二車載機器識別子722およびレスポンス41である。第二車載機器700のメーカは第三メーカ14であり、第二車載機器700はゲートウェイ500とメーカが異なる。
4番目の情報は、第四車載機器900の情報である。第四車載機器900の情報は、第四車載機器識別子922およびレスポンス61である。第四車載機器900のメーカは第三メーカ14であり、第四車載機器900は第二車載機器700とメーカが同じである。そのため、第四車載機器900の情報は、第三メーカ識別子921を含んでいない。
最後の情報は、第一車載機器600の情報である。第一車載機器600の情報は、第二メーカ識別子621、第一車載機器識別子622およびレスポンス31である。第一車載機器600のメーカは第二メーカ13であり、第一車載機器600はゲートウェイ500と他の車載機器とのそれぞれとメーカが異なる。
ソート情報データ70に含まれる各車載機器の情報を端末機器情報という。
鍵応答処理(S150)は、鍵管理装置100からゲートウェイ500にゲートウェイ500の暗号化共有鍵と正当な車載機器のそれぞれの暗号化共有鍵とを送信するための処理である。
ステップS151において、鍵管理装置100の受信部131は、鍵要求を受信する。
鍵要求は、ソート情報データを含んでいる。
ステップS152において、鍵管理装置100のメーカ鍵生成部112は、ソート情報データから先頭の情報、すなわち、ゲートウェイ500の情報を取得する。
次に、メーカ鍵生成部112は、ゲートウェイ500の情報から第一メーカ識別子521を取得する。
そして、メーカ鍵生成部112は、マスタ鍵121と第一メーカ識別子521とを用いて、第一メーカ鍵を生成する。生成される第一メーカ鍵を第一メーカ再生鍵という。
第一メーカ再生鍵を生成する方法は、ステップS103で第一メーカ鍵を生成する方法と同じである。
第一メーカ再生鍵は、ステップS103で生成された第一メーカ鍵に対応する。そのため、第一メーカ識別子521が正しい場合、つまり、第一メーカ識別子521が記憶部120に記憶されている第一メーカ識別子122と一致する場合、第一メーカ再生鍵はステップS103で生成された第一メーカ鍵と一致する。
ステップS153において、鍵管理装置100の機器鍵生成部113は、ゲートウェイ500の情報からゲートウェイ識別子522を取得する。
そして、機器鍵生成部113は、第一メーカ再生鍵とゲートウェイ識別子522とを用いて、ゲートウェイ鍵を生成する。生成されるゲートウェイ鍵をゲートウェイ再生鍵という。
ゲートウェイ再生鍵を生成する方法は、ステップS107でゲートウェイ鍵を生成する方法と同じである。
ゲートウェイ再生鍵は、ステップS107で生成されてステップS109でゲートウェイ500の記憶部520に記憶されたゲートウェイ鍵523に対応する。そのため、第一メーカ再生鍵およびゲートウェイ識別子522が正しい場合、ゲートウェイ再生鍵はゲートウェイ鍵523と一致する。第一メーカ再生鍵が正しい場合とは、第一メーカ再生鍵がステップS103で生成された第一メーカ鍵と一致する場合である。ゲートウェイ識別子522が正しい場合とは、ゲートウェイ識別子522がステップS106で生成されたゲートウェイ識別子223と一致する場合である。
ステップS154において、鍵管理装置100の共有鍵生成部115は、共有鍵を生成する。
具体的には、共有鍵生成部115は乱数を生成する。そして、共有鍵生成部115は、生成された乱数を入力として鍵生成関数を実行することによって、鍵を生成する。生成される鍵が共有鍵である。
ステップS155において、鍵管理装置100の共有鍵暗号化部116は、ゲートウェイ再生鍵を用いて共有鍵を暗号化する。これにより、ゲートウェイ500の暗号化共有鍵が生成される。
具体的には、共有鍵暗号化部116は、ゲートウェイ再生鍵を用いて認証付き暗号方式で共有鍵を暗号化する。より具体的には、共有鍵暗号化部116は、ゲートウェイ再生鍵と共有鍵とを入力として認証付き暗号方式の暗号化関数を実行することによって、共有鍵を認証付き暗号方式で暗号化する。暗号化された共有鍵がゲートウェイ500の暗号化共有鍵である。暗号化関数はデータを暗号化するための関数である。
ステップS156において、鍵管理装置100の検証部114は、各車載機器に対する検証を行い、正当な車載機器のそれぞれの暗号化共有鍵を生成する。
車載機器検証処理および暗号化共有鍵生成処理(S156)の詳細については後述する。
ステップS157において、鍵管理装置100の共有鍵応答部117は、ゲートウェイ500の暗号化共有鍵と正当な車載機器のそれぞれの暗号化共有鍵とを含んだ鍵応答を生成する。
そして、共有鍵応答部117は、送信部132を介して、暗号化共有鍵応答をゲートウェイ500に送信する。
ステップS1561において、検証部114は、ソート情報データの中での並び順に従って、車載機器の情報を1つ選択する。
図30のソート情報データ70の場合、各車載機器の情報は次のように選択される。
1回目のステップS1561において、検証部114は、第三車載機器800の情報を選択する。
2回目のステップS1561において、検証部114は、第二車載機器700の情報を選択する。
3回目のステップS1561において、検証部114は、第四車載機器900の情報を選択する。
4回目のステップS1561において、検証部114は、第一車載機器600の情報を選択する。
ステップS200において、検証部114は、選択された車載機器の情報を用いて車載機器に対する検証を行う。
ステップS201において、検証部114は、選択された車載機器の情報の中にメーカ識別子が有るか判定する。
図30のソート情報データ70から選択された車載機器の情報が第三車載機器800の情報である場合、メーカ識別子が無い。
図30のソート情報データ70から選択された車載機器の情報が第二車載機器700の情報である場合、第三メーカ識別子721が有る。
図30のソート情報データ70から選択された車載機器の情報が第四車載機器900の情報である場合、メーカ識別子が無い。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、第二メーカ識別子621が有る。
選択された車載機器の情報の中にメーカ識別子が有る場合、処理はステップS202に進む。
選択された車載機器の情報の中にメーカ識別子が無い場合、処理はステップS203に進む。
そして、メーカ鍵生成部112は、マスタ鍵121とメーカ識別子とを用いて、メーカ鍵を生成する。生成されるメーカ鍵をメーカ再生鍵という。
メーカ再生鍵を生成する方法は、ステップS103でメーカ鍵を生成する方法と同じである。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、メーカ鍵生成部112は、マスタ鍵121と第二メーカ識別子621とを用いて、第二メーカ鍵を生成する。生成された第二メーカ鍵を第二メーカ再生鍵という。
そして、機器鍵生成部113は、メーカ再生鍵と車載機器識別子とを用いて、機器鍵を生成する。生成される機器鍵を機器再生鍵という。
機器再生鍵を生成する方法は、ステップS107で機器鍵を生成する方法と同じである。
対応するメーカ再生鍵は、選択された情報に対応する車載機器のメーカ識別子と一致するメーカ識別子を用いて生成されたメーカ再生鍵である。
選択された情報に対応する車載機器のメーカがゲートウェイ500のメーカと同じである場合、対応するメーカ再生鍵はゲートウェイ500の情報に含まれる第一メーカ識別子521である。
選択された情報に対応する車載機器のメーカがゲートウェイ500のメーカと異なり他の車載機器のメーカと同じである場合、対応するメーカ再生鍵は他の車載機器の情報に含まれるメーカ識別子である。
図30のソート情報データ70から選択された車載機器の情報が第二車載機器700の情報である場合、機器鍵生成部113は、第三メーカ再生鍵と第二車載機器識別子722とを用いて、第二車載機器鍵を生成する。生成される第二車載機器鍵を第二車載機器再生鍵という。
図30のソート情報データ70から選択された車載機器の情報が第四車載機器900の情報である場合、機器鍵生成部113は、第三メーカ再生鍵と第四車載機器識別子922とを用いて、第四車載機器鍵を生成する。生成される第四車載機器鍵を第四車載機器再生鍵という。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、機器鍵生成部113は、第二メーカ再生鍵と第一車載機器識別子622とを用いて、第一車載機器鍵を生成する。生成される第一車載機器鍵を第一車載機器再生鍵という。
そして、検証部114は、機器再生鍵を用いてレスポンスからチャレンジを復号する。復号に用いる暗号アルゴリズムは、レスポンスの生成時(図24のステップS122)に使用された暗号アルゴリズムと同じである。
図30のソート情報データ70から選択された車載機器の情報が第二車載機器700の情報である場合、検証部114は、第二車載機器再生鍵を用いてレスポンス41からチャレンジを復号する。
図30のソート情報データ70から選択された車載機器の情報が第四車載機器900の情報である場合、検証部114は、第四車載機器再生鍵を用いてレスポンス61からチャレンジを復号する。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、検証部114は、第一車載機器再生鍵を用いてレスポンス31からチャレンジを復号する。
そして、検証部114は、復号されたチャレンジをチャレンジ21と比較する。
復号されたチャレンジがチャレンジ21と一致する場合、検証は成功である。
復号されたチャレンジがチャレンジ21と一致しない場合、検証は失敗である。
ステップS1562において、検証部114は、車載機器に対する検証が成功したか判定する。
車載機器に対する検証が成功した場合、処理はステップS1563に進む。
車載機器に対する検証が失敗した場合、処理はステップS1564に進む。
ステップS1563において、共有鍵暗号化部116は、機器再生鍵を用いて共有鍵を暗号化する。これにより、暗号化共有鍵が生成される。
暗号化共有鍵を生成する方法は、ステップS155でゲートウェイ500用の暗号化共有鍵を生成する方法と同じである。
選択された車載機器の情報が第二車載機器700の情報である場合、共有鍵暗号化部116は、第二機器再生鍵を用いて共有鍵を暗号化する。これにより、第二車載機器700用の暗号化再生鍵が生成される。
選択された車載機器の情報が第四車載機器900の情報である場合、共有鍵暗号化部116は、第四機器再生鍵を用いて共有鍵を暗号化する。これにより、第四車載機器900用の暗号化再生鍵が生成される。
選択された車載機器の情報が第一車載機器600の情報である場合、共有鍵暗号化部116は、第一機器再生鍵を用いて共有鍵を暗号化する。これにより、第一車載機器600用の暗号化再生鍵が生成される。
選択されていない車載機器の情報が有る場合、処理はステップS1561に進む。
選択されていない車載機器の情報が無い場合、処理は終了する。
鍵復号処理(S190)は、各車載機器が暗号化共有鍵から共有鍵を復号するための処理である。
そして、鍵配布部515は、送信部532を介して、各車載機器に暗号化共有鍵を送信する。
さらに、鍵配布部515は、第二車載機器700の暗号化共有鍵を第二車載機器700に送信する。
さらに、鍵配布部515は、第三車載機器800の暗号化共有鍵を第三車載機器800に送信する。
さらに、鍵配布部515は、第四車載機器900の暗号化共有鍵を第四車載機器900に送信する。
この場合、各車載機器は、1つ以上の暗号化共有鍵を受信し、受信した1つ以上の暗号化共有鍵から自分の暗号化共有鍵を選択する。
具体的には、第一車載機器600の受信部631は、第一車載機器600の暗号化共有鍵を受信する。
また、第二車載機器700の受信部731は、第二車載機器700の暗号化共有鍵を受信する。
また、第三車載機器800の受信部831は、第三車載機器800の暗号化共有鍵を受信する。
また、第四車載機器900の受信部931は、第四車載機器900の暗号化共有鍵を受信する。
認証付き暗号方式における復号では、認証および復号が行われる。そして、認証が成功した場合に復号が成功する。また、認証が失敗した場合には復号が失敗する。
復号が成功した場合に得られる共有鍵が共有鍵624である。
同様に、第三車載機器800の鍵復号部812は、第三車載機器鍵823を用いて、第三車載機器800の暗号化共有鍵から共有鍵を復号する。復号が成功した場合に得られる共有鍵が共有鍵824である。
同様に、第四車載機器900の鍵復号部912、第四車載機器鍵923を用いて、第四車載機器900の暗号化共有鍵から共有鍵を復号する。復号が成功した場合に得られる共有鍵が共有鍵924である。
第二車載機器700、第三車載機器800および第四車載機器900における復号の方法は、第一車載機器600における上記の方法と同じである。
また、第二車載機器700の鍵復号部712は、第二車載機器700の暗号化共有鍵から共有鍵724を復号することができたか判定する。
また、第三車載機器800の鍵復号部812は、第三車載機器800の暗号化共有鍵から共有鍵824を復号することができたか判定する。
また、第四車載機器900の鍵復号部912は、第四車載機器900の暗号化共有鍵から共有鍵924を復号することができたか判定する。
復号が失敗した各車載機器では、処理は終了する。この場合、各車載機器はゲートウェイ500および他の車載機器と共有鍵を共有できない。
具体的には、第一車載機器600の記憶部620は、共有鍵624を記憶する。
また、第二車載機器700の記憶部720は、共有鍵724を記憶する。
また、第三車載機器800の記憶部820は、共有鍵824を記憶する。
また、第四車載機器900の記憶部920は、共有鍵924を記憶する。
共有鍵624、共有鍵724、共有鍵824および共有鍵924は、それぞれゲートウェイ500の記憶部520に記憶された共有鍵524と一致する。つまり、共有鍵524、共有鍵624、共有鍵724および共有鍵824は、互いに一致する。
鍵共有システム10において、ゲートウェイ500と第一車載機器600と第二車載機器700と第三車載機器800と第四車載機器900とは、同じ共有鍵を共有する。
共有鍵が共有された後、ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、互いに通信を行う際に共有鍵を利用する。例えば、共有鍵は、機器認証、メッセージ認証またはメッセージ暗号化などに用いられる。
これにより、ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900の間で安全にデータを通信することが可能になる。
これにより、鍵共有のために要する全体の処理時間を短縮することが可能になる。
そのため、自際の自動車において、鍵管理装置100とゲートウェイ500との間でやり取りされるデータ量の削減効果は大きい。
これにより、メーカ鍵を再生する回数を最小限に抑えることが可能になる。そして、鍵管理装置100にかかる処理負荷を軽減することができる。
機器メーカの数は、1つまたは2つでもよいし、4つ以上であってもよい。
車載機器の数は、1個から3個のいずれかでもよいし、5個以上であってもよい。
図24のステップS122において、各車載機器は、乱数を生成し、生成した乱数をNonceと用いる。つまり、各車載機器は、生成した乱数を次回以降に使用しない。そして、各車載機器は、機器鍵を用いてNonceを暗号化することによって、レスポンスを生成する。
図24のステップS123において、各車載機器は、Nonceを車載機器の情報に含め、車載機器の情報を含んだ情報応答を生成する。
図21のステップS140において、ゲートウェイ500は、鍵要求を鍵管理装置100に送信する。鍵要求には各車載機器の情報が含まれ、各車載機器の情報には各車載機器のNonceが含まれる。
図33のステップS204において、鍵管理装置100は、各車載機器のNonceを用いて、各車載機器のレスポンスからチャレンジを復号する。
図31のステップS154において、鍵管理装置100は、第一共有鍵と第二共有鍵と第三共有鍵と第四共有鍵との4個の共有鍵を生成する。4個の共有鍵は互いに異なる。
図31のステップS155において、鍵管理装置100は、第一共有鍵と第二共有鍵と第三共有鍵と第四共有鍵との組を暗号化することによって、ゲートウェイ500の暗号化共有鍵を生成する。
図31のステップS156において、鍵管理装置100は、第一共有鍵を暗号化して第一車載機器600の暗号化共有鍵を生成する。また、鍵管理装置100は、第二共有鍵を暗号化して第二車載機器700の暗号化共有鍵を生成する。また、鍵管理装置100は、第三共有鍵を暗号化して第三車載機器800の暗号化共有鍵を生成する。また、鍵管理装置100は、第四共有鍵を暗号化して第四車載機器900の暗号化共有鍵を生成する。
図31のステップS154において、鍵管理装置100は、複数の共有鍵を生成する。
図31のステップS155において、鍵管理装置100は、ゲートウェイ再生鍵を用いて各共有鍵を暗号化することによって、ゲートウェイ500の複数の暗号化共有鍵を生成する。
図31のステップS156において、鍵管理装置100は、各車載機器の機器再生鍵を用いて各共有鍵を暗号化することによって、各車載機器の複数の暗号化共有鍵を生成する。つまり、鍵管理装置100は、第一車載機器600の複数の暗号化共有鍵と、第二車載機器700の複数の暗号化共有鍵と、第三車載機器800の複数の暗号化共有鍵と、第四車載機器900の複数の暗号化共有鍵とを生成する。
図34のステップS1904において、共有鍵の復号が成功した各車載機器は、ゲートウェイ500に成功通知を送信する。一方、共有鍵の復号が失敗した各車載機器は、ゲートウェイ500に失敗通知を送信する。
ゲートウェイ500は、図21のステップS180で共有鍵の復号が成功したときではなく、全ての車載機器から成功通知を受信したときに共有鍵を記憶する。少なくともいずれかの車載機器から成功通知を受信せずに失敗通知を受信した場合、ゲートウェイ500は、共有鍵を記憶しない。
全ての車載機器から成功通知を受信した場合、ゲートウェイ500は、共有通知を全ての車載機器に送信する。各車載機器は、ゲートウェイ500から共有通知を受信したときに共有鍵を記憶する。
具体的には、ゲートウェイ500は、車両15の外部から各車載機器をメンテナンスするための機器であってもよい。
チャレンジレスポンス認証のレスポンスが認証コードである形態について、主に実施の形態1と異なる点を図35に基づいて説明する。
鍵共有システム10の構成は、実施の形態1における構成(図1から図19参照)と同じである。
機器鍵設定処理は、実施の形態1において図20に基づいて説明した通りである。
但し、情報送信処理(S120)で生成されるレスポンスは、暗号化されたチャレンジではなく、チャレンジの認証コードである。具体的には、以下の通りである。
より具体的には、各車載機器は、チャレンジと機器鍵とを入力としてハッシュ関数を実行することによって、ハッシュ値を算出する。算出されるハッシュ値がチャレンジの認証コードである。
また、第二車載機器700の情報応答部711は、受信された情報要求20からチャレンジ21を取得し、第二車載機器鍵723を用いてチャレンジ21の認証コードを生成する。生成される認証コードがレスポンス41である。
また、第三車載機器800の情報応答部811は、受信された情報要求20からチャレンジ21を取得し、第三車載機器鍵823を用いてチャレンジ21の認証コードを生成する。生成される認証コードがレスポンス51である。
また、第四車載機器900の情報応答部911は、受信された情報要求20からチャレンジ21を取得し、第四車載機器鍵923を用いてチャレンジ21の認証コードを生成する。生成される認証コードがレスポンス61である。
図35の車載機器検証処理(S200)は、実施の形態2における車載機器検証処理(S200)である。つまり、実施の形態2において、実施の形態1において図33に基づいて説明した車載機器検証処理(S200)の代わりに、図35の車載機器検証処理(S200)が実行される。
そして、検証部114は、機器再生鍵を用いてチャレンジ21の認証コードを生成する。具体的には、検証部114は、チャレンジ21と機器再生鍵とを入力としてハッシュ関数を実行することによって、ハッシュ値を算出する。算出されるハッシュ値がチャレンジ21の認証コードである。使用されるハッシュ関数は、図21のステップS122で使用されるハッシュ関数と同じである。
図30のソート情報データ70から選択された車載機器の情報が第二車載機器700の情報である場合、検証部114は、第二車載機器再生鍵を用いてチャレンジ21の認証コードを生成する。生成される認証コードを第二認証コードという。
図30のソート情報データ70から選択された車載機器の情報が第四車載機器900の情報である場合、検証部114は、第四車載機器再生鍵を用いてチャレンジ21の認証コードを生成する。生成される認証コードを第四認証コードという。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、検証部114は、第一車載機器再生鍵を用いてチャレンジ21の認証コードを生成する。生成される認証コードを第一認証コードという。
そして、検証部114は、生成された認証コードを取得されたレスポンスと比較する。
生成された認証コードが取得されたレスポンスと一致する場合、検証は成功である。
生成された認証コードが取得されたレスポンスと一致しない場合、検証は失敗である。
図30のソート情報データ70から選択された車載機器の情報が第二車載機器700の情報である場合、検証部114は、第二認証コードをレスポンス41と比較する。
図30のソート情報データ70から選択された車載機器の情報が第四車載機器900の情報である場合、検証部114は、第四認証コードをレスポンス61と比較する。
図30のソート情報データ70から選択された車載機器の情報が第一車載機器600の情報である場合、検証部114は、第一認証コードをレスポンス31と比較する。
実施の形態2により、実施の形態1と同じ効果を奏することができる。
つまり、ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900の間で共有鍵を共有して安全にデータを通信することが可能になる。
車両15に搭載される複数の車載機器がグループ分けされる形態について、主に実施の形態1と異なる点を説明する。
鍵共有システム10の構成は、実施の形態1における構成(図1から図19参照)と同じである。
但し、車両15におけるネットワークは、複数のドメインに分割される。ドメインは、個別のネットワークを構成する単位である。例えば、車両15におけるネットワークは、ボディ系ドメイン、情報系ドメインおよびパワー系ドメインに分割される。
第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、同一のドメインに属している。
図示は省略するが、車両15には他のドメインに属する1つ以上の車載機器が搭載されている。
なお、ゲートウェイ500は、全てのドメインに属している。
機器鍵設定処理は、実施の形態1において図20に基づいて説明した通りであり、全てのドメインを対象に実行される。但し、機器設定処理がドメイン別に実行されてもよい。
例えば、まず、ボディ系ドメインにおける鍵共有処理が行われ、次に、情報系ドメインにおける鍵共有処理が行われ、最後に、パワー系ドメインにおける鍵共有処理が行われる。
車両15に搭載される複数の車載機器をグループ分けし、グループ毎に異なるタイミングで鍵共有を行うことができる。
実施の形態2と同じく、チャレンジレスポンス認証のレスポンスが、暗号化されたチャレンジではなく、チャレンジの認証コードであってもよい。
ゲートウェイ500の代わりに鍵管理装置100が各車載機器の情報をソートする形態について、主に実施の形態1と異なる点を図36から図39に基づいて説明する。
鍵共有システム10の構成は、実施の形態1における構成(図1参照)と同じである。
但し、鍵管理装置100とゲートウェイ500とのそれぞれの構成の一部が実施の形態1における構成と異なる。
鍵管理装置100は、さらに、情報ソート部118を備える。
鍵管理プログラムは、さらに、情報ソート部118としてコンピュータを機能させる。
ゲートウェイ500は、実施の形態1における情報ソート部512(図10参照)を備えない。
機器鍵設定処理は、実施の形態1において図20に基づいて説明した通りである。
ステップS301において、ゲートウェイ500は、ゲートウェイ500の情報を鍵管理装置100に送信する。
具体的には、ゲートウェイ500の鍵要求部513は、送信部532を介して、ゲートウェイ500の情報を鍵管理装置100に送信する。ゲートウェイ500の情報は、第一メーカ識別子521、ゲートウェイ識別子522および第一メーカ識別子521である。
ステップS310は、実施の形態1におけるステップS110(図21参照)と同じである。
ステップS320は、実施の形態1におけるステップS120(図21参照)と同じである。
そして、情報が受信される毎に、ゲートウェイ500の鍵要求部513は、受信された情報を受信部531を介して鍵管理装置100に送信する。
ステップS330は、実施の形態1におけるステップS140(図21参照)に対応する。
ステップS340は、実施の形態1におけるステップS150(図21参照)に対応する。
鍵応答処理(S340)の詳細については後述する。
そして、ゲートウェイ500の鍵復号部514は、全ての車載機器のそれぞれの暗号化共有鍵が鍵応答に含まれているか判定する。
全ての車載機器のそれぞれの暗号化共有鍵が鍵応答に含まれている場合、処理はステップS360に進む。
少なくともいずれかの車載機器の暗号化共有鍵が鍵応答に含まれていない場合、ゲートウェイ500が各車載機器と鍵を共有せずに、処理は終了する。
ステップS350は、実施の形態1におけるステップS160(図21参照)と同じである。
ステップS360は、実施の形態1におけるステップS170(図21参照)と同じである。
復号が成功した場合、記憶部520は、復号された共有鍵を記憶する。記憶される共有鍵が共有鍵524である。その後、処理はステップS380に進む。
復号が失敗した場合、鍵配布部515はエラー処理を行う。その後、処理は終了する。この場合、ゲートウェイ500は各車載機器と共有鍵を共有できない。
ステップS370は、実施の形態1におけるステップS180(図21参照)と同じである。
そして、各車載機器は、暗号化共有鍵を受信し、暗号化共有鍵から共有鍵を復号する。
ステップS380は、実施の形態1におけるステップS190(図21参照)と同じである。
ステップS341において、鍵管理装置100の受信部131は、ゲートウェイ500の情報または各車載機器の情報を受信する。
全ての情報が受信された場合、処理はステップS343に進む。
少なくともいずれかの情報が受信されていない場合、処理はステップS341に進む。
ソート処理(S343)の手順は、実施の形態1において図29を用いて説明したソート処理(S130)の手順と同じである。
ステップS344からステップS349は、実施の形態1において図31に基づいて説明した鍵応答処理(S150)のステップS152からステップS157と同じである。
鍵共有システム10において、ゲートウェイ500と第一車載機器600と第二車載機器700と第三車載機器800と第四車載機器900とは、同じ共有鍵を共有する。
共有鍵が共有された後、ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900は、互いに通信を行う際に共有鍵を利用する。例えば、共有鍵は、機器認証、メッセージ認証またはメッセージ暗号化などに用いられる。
これにより、ゲートウェイ500、第一車載機器600、第二車載機器700、第三車載機器800および第四車載機器900の間で安全にデータを通信することが可能になる。
これにより、ゲートウェイ500の処理負荷を軽減することが可能となる。
実施の形態2と同じく、チャレンジレスポンス認証のレスポンスが、暗号化されたチャレンジではなく、チャレンジの認証コードであってもよい。
実施の形態3と同じく、車両15のネットワークが複数のドメインに分割されて、各車載機器がいずれかのドメインに属し、ドメイン単位で鍵共有化が行われてもよい。
図40に基づいて、鍵管理装置100のハードウェア構成を説明する。
鍵管理装置100は処理回路991を備える。
処理回路991は、マスタ鍵生成部111とメーカ鍵生成部112と機器鍵生成部113と検証部114と共有鍵生成部115と共有鍵暗号化部116と共有鍵応答部117と情報ソート部118との全部または一部を実現するハードウェアである。
処理回路990は、専用のハードウェアであってもよいし、メモリ102に格納されるプログラムを実行するプロセッサ901であってもよい。
ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField Programmable Gate Arrayの略称である。
鍵管理装置100は、処理回路991を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路991の役割を分担する。
各機器管理装置は処理回路992を備える。
処理回路992は、機器鍵生成部(211、311、411)を実現するハードウェアである。
処理回路992は、専用のハードウェアであってもよいし、メモリ(202、302、402)に格納されるプログラムを実行するプロセッサ(201、301、401)であってもよい。
各機器管理装置は、処理回路992を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路992の役割を分担する。
鍵管理装置100は処理回路993を備える。
処理回路993は、情報要求部511と情報ソート部512と鍵要求部513と鍵復号部514と鍵配布部515との全部または一部を実現するハードウェアである。
処理回路993は、専用のハードウェアであってもよいし、メモリ502に格納されるプログラムを実行するプロセッサ501であってもよい。
ゲートウェイ500は、処理回路993を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路993の役割を分担する。
各車載機器は処理回路994を備える。
処理回路994は、情報応答部(611、711、811、911)と鍵復号部(612、712、812、912)とを実現するハードウェアである。
処理回路994は、専用のハードウェアであってもよいし、メモリ(602、702、802、902)に格納されるプログラムを実行するプロセッサ(601、701、801、901)であってもよい。
各車載機器は、処理回路994を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路994の役割を分担する。
Claims (7)
- 受信部と、機器鍵生成部と、検証部と、共有鍵暗号化部と、送信部と、を備える鍵管理装置であって、
前記受信部は、鍵要求を受信し、
前記鍵要求は、通信機器情報を含み、前記通信機器情報の後方に1つ以上の端末機器のそれぞれの端末機器情報を含み、
前記通信機器情報は、通信機器を識別する通信機器識別子と、前記通信機器のメーカである通信メーカを識別する通信メーカ識別子と、チャレンジレスポンス認証のチャレンジとを含み、
各端末機器情報は、対応する端末機器を識別する端末機器識別子と、前記チャレンジと前記対応する端末機器に記憶されている端末機器鍵とに対応するレスポンスとを含み、前記対応する端末機器のメーカである端末メーカを識別する端末メーカ識別子が前記通信メーカ識別子と前記鍵要求の中で前方に配置された他の端末機器情報に含まれる端末メーカ識別子とのいずれとも一致しない場合に前記対応する端末機器の前記端末メーカ識別子を含み、
前記機器鍵生成部は、
前記鍵要求から前記通信機器情報を取得し、
前記通信機器情報に含まれる前記通信メーカ識別子を用いて前記通信メーカ識別子に対応する通信メーカ鍵を生成し、前記通信メーカ鍵と前記通信機器情報に含まれる前記通信機器識別子とを用いて前記通信機器識別子に対応する通信機器鍵を生成し、
前記通信機器鍵を生成した後、前記鍵要求の中での並び順に各端末機器情報を取得し、
取得された端末機器情報が端末メーカ識別子を含んでいる場合、前記取得された端末機器情報に含まれる端末メーカ識別子を用いて端末メーカ識別子に対応する端末メーカ鍵を生成し、前記端末メーカ鍵と前記取得された端末機器情報に含まれる端末機器識別子とを用いて前記端末機器識別子に対応する端末機器鍵を生成し、
前記取得された端末機器情報が端末メーカ識別子を含んでいない場合、前記取得された端末機器情報に対応する端末機器の端末メーカ識別子と一致するメーカ識別子を用いて生成された通信メーカ鍵または端末メーカ鍵と、前記取得された端末機器情報に含まれる端末機器識別子と、を用いて前記端末機器識別子に対応する端末機器鍵を生成し、
前記検証部は、前記通信機器情報に含まれる前記チャレンジと各端末機器情報に含まれるレスポンスと生成された各端末機器鍵とに基づいて、各端末機器を検証し、
前記共有鍵暗号化部は、前記通信機器と各端末機器とに共有させる共有鍵を生成された前記通信機器鍵を用いて暗号化することによって前記通信機器の暗号化共有鍵を生成し、前記共有鍵を検証が成功した各端末機器の端末機器鍵を用いて暗号化することによって検証が成功した各端末機器の暗号化共有鍵を生成し、
前記送信部は、前記通信機器の前記暗号化共有鍵と検証が成功した各端末機器の前記暗号化共有鍵とを含んだ鍵応答を送信する
鍵管理装置。 - 前記鍵要求に含まれる各レスポンスは、前記鍵要求に含まれる前記チャレンジを各端末機器に記憶されている端末機器鍵を用いて暗号化することによって生成され、
前記検証部は、生成された各端末機器鍵を用いて前記鍵要求に含まれる各レスポンスからチャレンジを復号し、復号された各チャレンジを前記鍵要求に含まれる前記チャレンジと比較し、比較結果に基づいて各端末機器に対する検証の結果を判定する
請求項1に記載の鍵管理装置。 - 前記鍵要求に含まれる各レスポンスは、前記鍵要求に含まれる前記チャレンジと各端末機器に記憶されている端末機器鍵とを用いて生成された認証コードであり、
前記検証部は、前記鍵要求に含まれる前記チャレンジと生成された各端末機器鍵とを用いて認証コードを生成し、生成された認証コードを前記鍵要求に含まれる各レスポンスと比較し、比較結果に基づいて各端末機器に対する検証の結果を判定する
請求項1に記載の鍵管理装置。 - 情報要求部と、情報ソート部と、鍵要求部と、鍵復号部と、鍵配布部と、を備える通信機器であって、
前記情報要求部は、1つ以上の端末機器のそれぞれに情報を要求し、1つ以上の端末機器から1つ以上の情報を受信し、
受信された各情報は、端末機器を識別する端末機器識別子と、端末機器のメーカを識別する端末メーカ識別子と、を含み、
前記情報ソート部は、受信された1つ以上の情報を各情報に含まれる端末メーカ識別子に基づいて並べ、
前記鍵要求部は、鍵要求を生成し、前記鍵要求を送信し、鍵応答を受信し、
前記鍵要求は、通信機器情報を含み、前記通信機器情報の後方に、受信された各情報に対応する端末機器情報を受信された各情報の並び順に含み、
前記通信機器情報は、通信機器を識別する通信機器識別子と、前記通信機器のメーカを識別する通信メーカ識別子と、を含み、
各端末機器情報は、受信された各情報の中の端末機器識別子を含み、対応する端末機器の端末メーカ識別子が前記通信メーカ識別子と前記鍵要求の中で前方に配置された他の端末機器情報に含まれる端末メーカ識別子とのいずれとも一致しない場合に前記対応する端末機器の前記端末メーカ識別子を含み、前記対応する端末機器の端末メーカ識別子が前記通信メーカ識別子と前記鍵要求の中で前方に配置された他の端末機器情報に含まれる端末メーカ識別子とのいずれかと一致する場合に前記対応する端末機器の前記端末メーカ識別子を含まず、
前記鍵応答は、前記通信機器の暗号化共有鍵と、各端末機器の暗号化共有鍵と、を含み、
各端末機器の暗号化共有鍵は、各端末機器識別子に対応する端末機器鍵を用いて共有鍵を暗号化することによって生成される鍵であり、
前記鍵復号部は、前記通信機器識別子に対応する通信機器鍵を用いて、前記鍵応答に含まれる前記通信機器の前記暗号化共有鍵から前記共有鍵を復号し、
前記鍵配布部は、前記鍵応答に含まれる各端末機器の暗号化共有鍵を各端末機器に送信する
通信機器。 - 前記情報要求部は、チャレンジレスポンス認証のチャレンジを生成し、前記チャレンジを含む情報要求を各端末機器に送信し、各端末機器の情報を含んだ情報応答を各端末機器から受信し、
各端末機器の情報は、前記チャレンジと各端末機器に記憶されている端末機器鍵とに対応するレスポンスを含み、
前記鍵要求部は、前記鍵要求を送信し、
前記鍵要求は、前記通信機器情報と各端末機器情報とを含み、
前記通信機器情報は、前記チャレンジを含み、
各端末機器情報は、対応する端末機器の情報に含まれるレスポンスを含む
請求項4に記載の通信機器。 - 各端末機器の情報に含まれるレスポンスは、前記情報要求に含まれる前記チャレンジを各端末機器に記憶されている端末機器鍵を用いて暗号化することによって生成される
請求項5に記載の通信機器。 - 各端末機器の情報に含まれるレスポンスは、前記情報要求に含まれる前記チャレンジと各端末機器に記憶されている端末機器鍵とを用いて生成された認証コードである
請求項5に記載の通信機器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/029762 WO2019038800A1 (ja) | 2017-08-21 | 2017-08-21 | 鍵管理装置、通信機器および鍵共有方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6625293B2 true JP6625293B2 (ja) | 2019-12-25 |
JPWO2019038800A1 JPWO2019038800A1 (ja) | 2020-01-09 |
Family
ID=65438566
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019537431A Expired - Fee Related JP6625293B2 (ja) | 2017-08-21 | 2017-08-21 | 鍵管理装置および通信機器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20200220724A1 (ja) |
JP (1) | JP6625293B2 (ja) |
CN (1) | CN111034116A (ja) |
DE (1) | DE112017007755B4 (ja) |
WO (1) | WO2019038800A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200220865A1 (en) * | 2019-01-04 | 2020-07-09 | T-Mobile Usa, Inc. | Holistic module authentication with a device |
US12149525B2 (en) * | 2019-01-04 | 2024-11-19 | T-Mobile Usa, Inc. | Holistic module authentication with a device |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022021193A1 (zh) * | 2020-07-30 | 2022-02-03 | 华为技术有限公司 | 密钥协商方法及装置 |
JP2022091498A (ja) * | 2020-12-09 | 2022-06-21 | セイコーエプソン株式会社 | 暗号通信システム、暗号通信方法および暗号通信装置 |
CN112953939A (zh) * | 2021-02-20 | 2021-06-11 | 联合汽车电子有限公司 | 一种密钥管理方法 |
CN113452517A (zh) * | 2021-06-07 | 2021-09-28 | 北京聚利科技有限公司 | 密钥更新方法、装置、系统、存储介质及终端 |
DE102023205541B3 (de) | 2023-06-14 | 2024-09-19 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zur Implementierung abgesicherter Datenkommunikation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5369705A (en) * | 1992-06-03 | 1994-11-29 | International Business Machines Corporation | Multi-party secure session/conference |
JP2808512B2 (ja) * | 1992-09-30 | 1998-10-08 | 日本電信電話株式会社 | 秘話通信システム |
JP3263878B2 (ja) * | 1993-10-06 | 2002-03-11 | 日本電信電話株式会社 | 暗号通信システム |
JP5992104B2 (ja) * | 2013-07-01 | 2016-09-14 | 三菱電機株式会社 | 機器認証システム、メーカ鍵生成装置、機器鍵生成装置、製造機器、連携認証装置、機器再生鍵生成装置、機器認証方法および機器認証プログラム |
WO2017022821A1 (ja) * | 2015-08-05 | 2017-02-09 | Kddi株式会社 | 管理装置、管理システム、鍵生成装置、鍵生成システム、鍵管理システム、車両、管理方法、鍵生成方法、及びコンピュータプログラム |
JP6502832B2 (ja) * | 2015-11-13 | 2019-04-17 | 株式会社東芝 | 検査装置、通信システム、移動体および検査方法 |
-
2017
- 2017-08-21 CN CN201780093847.0A patent/CN111034116A/zh not_active Withdrawn
- 2017-08-21 DE DE112017007755.9T patent/DE112017007755B4/de active Active
- 2017-08-21 JP JP2019537431A patent/JP6625293B2/ja not_active Expired - Fee Related
- 2017-08-21 US US16/625,389 patent/US20200220724A1/en not_active Abandoned
- 2017-08-21 WO PCT/JP2017/029762 patent/WO2019038800A1/ja active Application Filing
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200220865A1 (en) * | 2019-01-04 | 2020-07-09 | T-Mobile Usa, Inc. | Holistic module authentication with a device |
US12149525B2 (en) * | 2019-01-04 | 2024-11-19 | T-Mobile Usa, Inc. | Holistic module authentication with a device |
Also Published As
Publication number | Publication date |
---|---|
DE112017007755T5 (de) | 2020-04-09 |
CN111034116A (zh) | 2020-04-17 |
WO2019038800A1 (ja) | 2019-02-28 |
JPWO2019038800A1 (ja) | 2020-01-09 |
DE112017007755B4 (de) | 2021-06-17 |
US20200220724A1 (en) | 2020-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10419220B2 (en) | Management device, key generating device, vehicle, maintenance tool, management system, management method, and computer program | |
US11522685B2 (en) | Key management system, communication device and key sharing method | |
JP6625293B2 (ja) | 鍵管理装置および通信機器 | |
JP6454918B2 (ja) | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム | |
US11212087B2 (en) | Management system, key generation device, in-vehicle computer, management method, and computer program | |
US11082228B2 (en) | Reuse system, key generation device, data security device, in-vehicle computer, reuse method, and computer program | |
KR101527779B1 (ko) | 효율적인 차량용 리프로그래밍 장치 및 그 제어방법 | |
JP2012186635A (ja) | 車両ネットワークシステム | |
WO2018092356A1 (ja) | 通信システム、車両、サーバ装置、通信方法、及びコンピュータプログラム | |
KR102450811B1 (ko) | 차량 내부 네트워크의 키 관리 시스템 | |
WO2017033602A1 (ja) | 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム | |
JPWO2018047510A1 (ja) | 車載用処理装置 | |
CN112740212A (zh) | 密钥写入方法及装置 | |
CN114793184B (zh) | 一种基于第三方密钥管理节点的安全芯片通信方法及装置 | |
CN114095919A (zh) | 一种基于车联网的证书授权处理方法及相关设备 | |
CN114142995B (zh) | 面向区块链中继通信网络的密钥安全分发方法及装置 | |
US11570008B2 (en) | Pseudonym credential configuration method and apparatus | |
JP6203798B2 (ja) | 車載制御システム、車両、管理装置、車載コンピュータ、データ共有方法、及びコンピュータプログラム | |
KR102236282B1 (ko) | 차량용 통신 데이터 인증 방법 및 시스템 | |
CN117354016A (zh) | 一种整车ota安全升级方法、装置、设备及介质 | |
WO2017126322A1 (ja) | 車載コンピュータシステム、車両、鍵生成装置、管理方法、鍵生成方法、及びコンピュータプログラム | |
WO2017216874A1 (ja) | 鍵管理装置、鍵管理プログラムおよび鍵共有方法 | |
JP7003832B2 (ja) | 車両用電子制御システムおよび車両用電子制御装置 | |
JP6830877B2 (ja) | 配信システム、鍵生成装置、配信方法、及びコンピュータプログラム | |
JP2018093285A (ja) | 配信システム、データ保安装置、配信方法、及びコンピュータプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190904 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190904 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20190904 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20191008 |
|
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: 20191029 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191126 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6625293 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |