JPWO2017216874A1 - 鍵管理装置、鍵管理プログラムおよび鍵共有方法 - Google Patents

鍵管理装置、鍵管理プログラムおよび鍵共有方法 Download PDF

Info

Publication number
JPWO2017216874A1
JPWO2017216874A1 JP2016572850A JP2016572850A JPWO2017216874A1 JP WO2017216874 A1 JPWO2017216874 A1 JP WO2017216874A1 JP 2016572850 A JP2016572850 A JP 2016572850A JP 2016572850 A JP2016572850 A JP 2016572850A JP WO2017216874 A1 JPWO2017216874 A1 JP WO2017216874A1
Authority
JP
Japan
Prior art keywords
key
identification information
manufacturer
request
shared
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.)
Pending
Application number
JP2016572850A
Other languages
English (en)
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2017216874A1 publication Critical patent/JPWO2017216874A1/ja
Pending legal-status Critical Current

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

第2機器(600)が第2機器識別情報を送信する。第1機器(400)が、第2機器識別情報を受信し、第1機器識別情報と第2機器識別情報とを含んだ鍵要求を送信する。鍵管理装置(200)が、鍵要求を受信し、第1機器識別情報を用いて共有鍵を暗号化して第1暗号化共有鍵を生成し、第2機器識別情報を用いて共有鍵を暗号化して第2暗号化共有鍵を生成し、第1暗号化共有鍵と第2暗号化共有鍵とを含んだ鍵応答を送信する。第1機器が、鍵応答を受信し、第1機器識別情報を用いて第1暗号化共有鍵から共有鍵を復号し、第2暗号化共有鍵を送信する。第2機器が、第2暗号化共有鍵を受信し、第2機器識別情報を用いて第2暗号化共有鍵から共有鍵を復号する。

Description

本発明は、鍵を共有する技術に関するものである。
自動車業界では、2020年代の自動運転の実現に向け、自動ブレーキ機能およびレーンキープ機能等、様々な運転支援機能が開発されている。そして、開発された運転支援機能は、自動車に搭載されている。
今後は、クラウド、路側器および他の自動車といった外部の様々なものと通信を行うことによって、より高度な運転支援機能が実現されると予想される。
自動車が外部と通信を行うようになると、自動車が悪意ある攻撃を受けてしまう可能性が高まる。そのため、通信セキュリティが重要となる。
非特許文献1では、通信セキュリティに関する技術として、メッセージ認証を行う手法が提案されている。
この手法では、送信装置と受信装置との間で、メッセージ認証に用いる共通鍵があらかじめ共有される状況を想定している。
しかし、自動車は様々なメーカ製の装置を組み立てて製造されるので、各メーカが装置の通信関係をあらかじめ把握することは難しい。そのため、装置を製造するときに装置に鍵を設定することは困難である。また、運用中に装置が交換されることも有り得るため、製造時に装置に鍵を設定するだけでは不十分である。
特許文献1では、公開鍵暗号方式を用いて鍵を配布する手法が提案されている。
しかし、車載機器にはコストおよびリソースに関する制限があるので、公開鍵暗号方式をサポートしない車載機器が存在する。そのため、特許文献1の手法を全ての車載機器に適用することは困難である。
特開2004−259262号公報
AUTOSAR, Specification of Module Secure Onboard Communication, Release 4.2.2
本発明は、第1機器と第2機器とで鍵を共有できるようにすることを目的とする。
本発明の鍵管理装置は、
第1機器から送信される要求であって前記第1機器を識別する第1機器識別情報と前記第1機器と通信する第2機器を識別する第2機器識別情報とを含んだ要求である鍵要求を受信する受信部と、
前記鍵要求に含まれる第1機器識別情報を用いて、前記第1機器と前記第2機器とに共有させる共有鍵を暗号化して第1暗号化共有鍵を生成し、前記鍵要求に含まれる第2機器識別情報を用いて前記共有鍵を暗号化して第2暗号化共有鍵を生成する暗号化共有鍵生成部と、
前記第1暗号化共有鍵と前記第2暗号化共有鍵とを含んだ鍵応答を前記第1機器に送信する送信部とを備える。
本発明によれば、第1機器と第2機器とで鍵を共有することが可能になる。
実施の形態1における鍵共有システム100の構成図。 実施の形態1における鍵管理装置200の構成図。 実施の形態1における記憶部291の構成図。 実施の形態1における第1機器管理装置300の構成図。 実施の形態1における記憶部391の構成図。 実施の形態1における第1機器400の構成図。 実施の形態1における記憶部491の構成図。 実施の形態1における第2機器管理装置500の構成図。 実施の形態1における記憶部591の構成図。 実施の形態1における第2機器600の構成図。 実施の形態1における記憶部691の構成図。 実施の形態1における鍵共有方法(前半)のフローチャート。 実施の形態1における鍵共有方法(後半)のフローチャート。 実施の形態1における情報要求処理(S210)のフローチャート。 実施の形態1における情報応答処理(S220)のフローチャート。 実施の形態1における鍵要求処理(S230)のフローチャート。 実施の形態1における鍵応答処理(S240)のフローチャート。 実施の形態1における第1鍵共有処理(S250)のフローチャート。 実施の形態1における第2鍵共有処理(S260)のフローチャート。 実施の形態2における鍵共有システム100の構成図。 実施の形態2における鍵管理装置200の構成図。 実施の形態2における記憶部291の構成図。 実施の形態2における許可リスト289を示す図。 実施の形態2における記憶部391の構成図。 実施の形態2における鍵共有方法(前半)のフローチャート。 実施の形態2における鍵応答処理(S240)のフローチャート。 実施の形態における鍵管理装置200のハードウェア構成図。
実施の形態および図面において、同じ要素または互いに相当する要素には同じ符号を付している。同じ符号が付された要素の説明は適宜に省略または簡略する。
実施の形態において、鍵は暗号鍵を意味する。暗号鍵には、データを暗号化するための暗号化鍵と、暗号化されたデータを復号するための復号鍵とが含まれる。具体的な鍵は、共通鍵暗号方式における共通鍵である。
実施の形態1.
第1機器と第2機器とで鍵を共有する形態について、図1から図19に基づいて説明する。
***構成の説明***
図1に基づいて、鍵共有システム100の構成を説明する。
鍵共有システム100は、第1機器400と第2機器600とで共通鍵を共有するためのシステムである。
鍵共有システム100は、鍵管理装置200と、第1機器管理装置300と、第1機器400と、第2機器管理装置500と、第2機器600とを備える。
鍵管理装置200、第1機器管理装置300、第1機器400および第2機器管理装置500は、ネットワーク101を介して互いに通信を行う。
第1機器400および第2機器600は、ケーブルを介して互いに通信を行う。
鍵管理装置200は、事業者110が有する装置である。
事業者110は、製品120を製造するメーカである。
具体的には、製品120は自動車であり、事業者110は自動車を製造する自動車メーカである。
第1機器管理装置300は、第1メーカ111が有する装置である。
第1メーカ111は、第1機器400を製造するメーカである。
第1機器400は、製品120に搭載される機器である。
具体的には、製品120は自動車であり、第1機器400はゲートウェイ装置である。
第2機器管理装置500は、第2メーカ112が有する装置である。
第2メーカ112は、第2機器600を製造するメーカである。
第2機器600は、製品120に搭載される機器である。
具体的には、製品120は自動車であり、第2機器600は車載機器である。
図2に基づいて、鍵管理装置200の構成を説明する。
鍵管理装置200は、プロセッサ921とメモリ922と補助記憶装置923と通信装置924といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ921は、プロセッシングを行うIC(Integrated Circuit)であり、他のハードウェアを制御する。具体的には、プロセッサ921は、CPU、DSPまたはGPUである。CPUはCentral Processing Unitの略称であり、DSPはDigital Signal Processorの略称であり、GPUはGraphics Processing Unitの略称である。
メモリ922は揮発性の記憶装置である。メモリ922は、主記憶装置またはメインメモリとも呼ばれる。具体的には、メモリ922はRAM(Random Access Memory)である。
補助記憶装置923は不揮発性の記憶装置である。具体的には、補助記憶装置923は、ROM、HDDまたはフラッシュメモリである。ROMはRead Only Memoryの略称であり、HDDはHard Disk Driveの略称である。
プロセッサ921とメモリ922と補助記憶装置923をまとめたハードウェアを「プロセッシングサーキットリ」という。
通信装置924は、通信を行う装置であり、レシーバとトランスミッタとを備える。具体的には、通信装置924は通信チップまたはNIC(Network Interface Card)である。
鍵管理装置200は、マスタ鍵生成部211とメーカ鍵生成部212と共有鍵生成部221と暗号化共有鍵生成部222と鍵応答生成部223といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
図2の説明において、「部」は、鍵管理装置200に備わる機能構成の要素を意味する。
補助記憶装置923には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、メモリ922にロードされて、プロセッサ921によって実行される。
さらに、補助記憶装置923にはOS(Operating System)が記憶されている。OSの少なくとも一部は、メモリ922にロードされて、プロセッサ921によって実行される。
つまり、プロセッサ921は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ922、補助記憶装置923、プロセッサ921内のレジスタまたはプロセッサ921内のキャッシュメモリといった記憶装置に記憶される。
メモリ922は、鍵管理装置200で使用、生成、入力、出力、送信または受信されるデータが記憶される記憶部291として機能する。但し、他の記憶装置が記憶部291として機能してもよい。
通信装置924はデータを通信する通信部として機能する。通信装置924において、レシーバはデータを受信する受信部292として機能し、トランスミッタはデータを送信する送信部293として機能する。
鍵管理装置200は、プロセッサ921を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、「部」の機能を実現するプログラムの実行を分担する。
「部」の機能を実現するプログラムは、磁気ディスク、光ディスクまたはフラッシュメモリ等の不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。不揮発性の記憶媒体は、一時的でない有形の媒体である。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
図3に、記憶部291に記憶されるデータを示す。
記憶部291は、マスタ鍵281と、第1メーカ識別情報2821と、第2メーカ識別情報2822とを記憶する。
記憶部291に記憶されるデータは、外部に漏れないよう、安全に管理される。
記憶部291に記憶されるデータの内容については後述する。
なお、記憶部291に記憶されるデータは、図3に示すデータに限られない。
マスタ鍵281、第1メーカ識別情報2821および第2メーカ識別情報2822は、後述する生成時(S101、S102)に補助記憶装置923に記憶され、その後、鍵管理装置200が起動する際に補助記憶装置923から読み出されて記憶部291に書き込まれる。
図4に基づいて、第1機器管理装置300の構成を説明する。
第1機器管理装置300は、プロセッサ931とメモリ932と補助記憶装置933と通信装置934といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ931、メモリ932、補助記憶装置933および通信装置934は、図2で説明したプロセッサ921、メモリ922、補助記憶装置923および通信装置924に相当するハードウェアである。
第1機器管理装置300は、機器鍵生成部311といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
図4の説明において、「部」は、第1機器管理装置300に備わる機能構成の要素を意味する。
補助記憶装置933には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、メモリ932にロードされて、プロセッサ931によって実行される。
さらに、補助記憶装置933にはOSが記憶されている。OSの少なくとも一部は、メモリ932にロードされて、プロセッサ931によって実行される。
つまり、プロセッサ931は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ932、補助記憶装置933、プロセッサ931内のレジスタまたはプロセッサ931内のキャッシュメモリといった記憶装置に記憶される。
メモリ932は、第1機器管理装置300で使用、生成、入力、出力、送信または受信されるデータが記憶される記憶部391として機能する。但し、他の記憶装置が記憶部391として機能してもよい。
通信装置934はデータを通信する通信部として機能する。通信装置934において、レシーバはデータを受信する受信部392として機能し、トランスミッタはデータを送信する送信部393として機能する。
第1機器管理装置300は、プロセッサ931を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、「部」の機能を実現するプログラムの実行を分担する。
「部」の機能を実現するプログラムは、不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
図5に、記憶部391に記憶されるデータを示す。
記憶部391は、第1メーカ鍵381と、第1メーカ識別情報382と、第1機器識別情報383とを記憶する。
記憶部391に記憶されるデータは、外部に漏れないよう、安全に管理される。
記憶部391に記憶されるデータの内容については後述する。
なお、記憶部391に記憶されるデータは、図5に示すデータに限られない。
第1メーカ鍵381、第1メーカ識別情報382および第1機器識別情報383は、後述する受信時(S111)または生成時(S112)に補助記憶装置933に記憶され、その後、第1機器管理装置300が起動する際に補助記憶装置933から読み出されて記憶部391に書き込まれる。
図6に基づいて、第1機器400の構成を説明する。
第1機器400は、プロセッサ941とメモリ942と補助記憶装置943と通信装置944といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ941、メモリ942、補助記憶装置943および通信装置944は、図2で説明したプロセッサ921、メモリ922、補助記憶装置923および通信装置924に相当するハードウェアである。
第1機器400は、情報要求部410と鍵要求部420と鍵復号部430といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
図6の説明において、「部」は、第1機器400に備わる機能構成の要素を意味する。
補助記憶装置943には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、メモリ942にロードされて、プロセッサ941によって実行される。
さらに、補助記憶装置943にはOSが記憶されている。OSの少なくとも一部は、メモリ942にロードされて、プロセッサ941によって実行される。
つまり、プロセッサ941は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ942、補助記憶装置943、プロセッサ941内のレジスタまたはプロセッサ941内のキャッシュメモリといった記憶装置に記憶される。
メモリ942は、第1機器400で使用、生成、入力、出力、送信または受信されるデータが記憶される記憶部491として機能する。但し、他の記憶装置が記憶部491として機能してもよい。
通信装置944はデータを通信する通信部として機能する。通信装置944において、レシーバはデータを受信する受信部492として機能し、トランスミッタはデータを送信する送信部493として機能する。
第1機器400は、プロセッサ941を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、「部」の機能を実現するプログラムの実行を分担する。
「部」の機能を実現するプログラムは、不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
図7に、記憶部491に記憶されるデータを示す。
記憶部491は、第1メーカ識別情報481と、第1機器識別情報482と、第1機器鍵483と、共有鍵485とを記憶する。
記憶部491に記憶されるデータは、外部に漏れないよう、安全に管理される。
記憶部491に記憶されるデータの内容については後述する。
なお、記憶部491に記憶されるデータは、図7に示すデータに限られない。
第1メーカ識別情報481、第1機器識別情報482、第1機器鍵483および共有鍵485は、後述する受信時(S121)または復号時(S250)に補助記憶装置943に記憶され、その後、第1機器400が起動する際に補助記憶装置943から読み出されて記憶部491に書き込まれる。
図8に基づいて、第2機器管理装置500の構成を説明する。
第2機器管理装置500は、プロセッサ951とメモリ952と補助記憶装置953と通信装置954といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ951、メモリ952、補助記憶装置953および通信装置954は、図2で説明したプロセッサ921、メモリ922、補助記憶装置923および通信装置924に相当するハードウェアである。
第2機器管理装置500は、機器鍵生成部511といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
図8の説明において、「部」は、第2機器管理装置500に備わる機能構成の要素を意味する。
補助記憶装置953には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、メモリ952にロードされて、プロセッサ951によって実行される。
さらに、補助記憶装置953にはOSが記憶されている。OSの少なくとも一部は、メモリ952にロードされて、プロセッサ951によって実行される。
つまり、プロセッサ951は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ952、補助記憶装置953、プロセッサ951内のレジスタまたはプロセッサ951内のキャッシュメモリといった記憶装置に記憶される。
メモリ952は、第2機器管理装置500で使用、生成、入力、出力、送信または受信されるデータが記憶される記憶部591として機能する。但し、他の記憶装置が記憶部591として機能してもよい。
通信装置954はデータを通信する通信部として機能する。通信装置954において、レシーバはデータを受信する受信部592として機能し、トランスミッタはデータを送信する送信部593として機能する。
第2機器管理装置500は、プロセッサ951を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、「部」の機能を実現するプログラムの実行を分担する。
「部」の機能を実現するプログラムは、不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
図9に、記憶部591に記憶されるデータを示す。
記憶部591は、第2メーカ鍵581と、第2メーカ識別情報582と、第2機器識別情報583とを記憶する。
記憶部591に記憶されるデータは、外部に漏れないよう、安全に管理される。
記憶部591に記憶されるデータの内容については後述する。
なお、記憶部591に記憶されるデータは、図9に示すデータに限られない。
第2メーカ鍵581、第2メーカ識別情報582および第2機器識別情報583は、後述する受信時(S111)または生成時(S112)に補助記憶装置953に記憶され、その後、第2機器管理装置500が起動する際に補助記憶装置953から読み出されて記憶部591に書き込まれる。
図10に基づいて、第2機器600の構成を説明する。
第2機器600は、プロセッサ961とメモリ962と補助記憶装置963と通信装置964といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ961、メモリ962、補助記憶装置963および通信装置964は、図2で説明したプロセッサ921、メモリ922、補助記憶装置923および通信装置924に相当するハードウェアである。
第2機器600は、情報応答部610と鍵復号部620といった「部」を機能構成の要素として備える。「部」の機能はソフトウェアで実現される。「部」の機能については後述する。
図10の説明において、「部」は、第2機器600に備わる機能構成の要素を意味する。
補助記憶装置963には、「部」の機能を実現するプログラムが記憶されている。「部」の機能を実現するプログラムは、メモリ962にロードされて、プロセッサ961によって実行される。
さらに、補助記憶装置963にはOSが記憶されている。OSの少なくとも一部は、メモリ962にロードされて、プロセッサ961によって実行される。
つまり、プロセッサ961は、OSを実行しながら、「部」の機能を実現するプログラムを実行する。
「部」の機能を実現するプログラムを実行して得られるデータは、メモリ962、補助記憶装置963、プロセッサ961内のレジスタまたはプロセッサ961内のキャッシュメモリといった記憶装置に記憶される。
メモリ962は、第2機器600で使用、生成、入力、出力、送信または受信されるデータが記憶される記憶部691として機能する。但し、他の記憶装置が記憶部691として機能してもよい。
通信装置964はデータを通信する通信部として機能する。通信装置964において、レシーバはデータを受信する受信部692として機能し、トランスミッタはデータを送信する送信部693として機能する。
第2機器600は、プロセッサ961を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、「部」の機能を実現するプログラムの実行を分担する。
「部」の機能を実現するプログラムは、不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。
「部」は「処理」または「工程」に読み替えてもよい。「部」の機能はファームウェアで実現してもよい。
図11に、記憶部691に記憶されるデータを示す。
記憶部691は、第2メーカ識別情報681と、第2機器識別情報682と、第2機器鍵683と、共有鍵685とを記憶する。
記憶部691に記憶されるデータは、外部に漏れないよう、安全に管理される。
記憶部691に記憶されるデータの内容については後述する。
なお、記憶部691に記憶されるデータは、図11に示すデータに限られない。
第2メーカ識別情報681、第2機器識別情報682、第2機器鍵683および共有鍵685は、後述する受信時(S121)または復号時(S260)に補助記憶装置963に記憶され、その後、第2機器600が起動する際に補助記憶装置963から読み出されて記憶部691に書き込まれる。
***動作の説明***
鍵共有システム100の動作は鍵共有方法に相当する。また、鍵共有方法の手順は鍵共有プログラムの手順に相当する。
鍵管理装置200の手順は鍵管理プログラムの手順に相当する。
第1機器管理装置300および第2機器管理装置500の動作の手順は機器管理プログラムの手順に相当する。
第1機器400および第2機器600の動作の手順は機器プログラムの手順に相当する。
図12に基づいて、鍵共有方法の前半の手順を説明する。
ステップS101からステップS103は鍵管理装置200の動作である。
ステップS101はマスタ鍵生成処理である。
ステップS101において、マスタ鍵生成部211は、マスタ鍵281を生成する。
マスタ鍵281は、第1メーカ鍵2831および第2メーカ鍵2832を生成するために用いられる鍵である。
具体的には、マスタ鍵生成部211は、乱数を生成する。そして、マスタ鍵生成部211は、生成された乱数を入力として、鍵生成関数を実行する。鍵生成関数は、鍵を生成するための関数である。生成される鍵がマスタ鍵281である。
ステップS102はメーカ鍵生成処理である。
ステップS102において、メーカ鍵生成部212は、マスタ鍵281と第1メーカ識別情報2821とを用いて、第1メーカ鍵2831を生成する。
第1メーカ識別情報2821は、第1メーカ111を識別する情報である。
第1メーカ鍵2831は、第1メーカ111用の鍵である。具体的には、第1メーカ鍵2831は、第1メーカ111用の共通鍵である。
具体的には、メーカ鍵生成部212は、第1メーカ鍵2831を以下のように生成する。
まず、メーカ鍵生成部212は、ランダムに文字列を生成する。生成される文字列が第1メーカ識別情報2821である。但し、メーカ鍵生成部212は、複数のメーカ識別情報を含んだリストから、いずれかのメーカ識別情報を第1メーカ識別情報2821として選択してもよい。また、メーカ鍵生成部212は、第1メーカ識別情報2821を他の方法で生成してもよい。
そして、メーカ鍵生成部212は、マスタ鍵281と第1メーカ識別情報2821とを入力として、鍵生成関数を実行する。生成される鍵が第1メーカ鍵2831である。
共通鍵を生成するためのアルゴリズムとして、HMAC(Hash−based MAC)が挙げられる。MACはMessage Authentication Codeの略称である。
さらに、メーカ鍵生成部212は、マスタ鍵281と第2メーカ識別情報2822とを用いて、第2メーカ鍵2832を生成する。
第2メーカ識別情報2822は、第2メーカ112を識別する情報である。
第2メーカ鍵2832は、第2メーカ112用の鍵である。具体的には、第2メーカ鍵2832は、第2メーカ112用の共通鍵である。
第2メーカ識別情報2822および第2メーカ鍵2832を生成する方法は、第1メーカ識別情報2821および第1メーカ鍵2831を生成する方法と同じである。
ステップS103は送信処理である。
ステップS103において、送信部293は、第1メーカ鍵2831および第1メーカ識別情報2821を第1機器管理装置300に送信する。
さらに、送信部293は、第2メーカ鍵2832および第2メーカ識別情報2822を第2機器管理装置500に送信する。
第1メーカ鍵2831、第1メーカ識別情報2821、第2メーカ鍵2832および第2メーカ識別情報2822は、安全に送信されるものとする。具体的には、これらは、TLS(Transport Layer Security)を用いて送信される。また、これらは、オフラインで安全に配布されてもよい。
ステップS111からステップS113は第1機器管理装置300および第2機器管理装置500の動作である。
ステップS111は受信処理および記憶処理である。
ステップS111において、第1機器管理装置300の受信部392は、第1メーカ鍵2831および第1メーカ識別情報2821を受信する。
そして、記憶部391は、受信された第1メーカ鍵2831および第1メーカ識別情報2821を記憶する。
記憶部391に記憶された第1メーカ鍵2831および第1メーカ識別情報2821を、第1メーカ鍵381および第1メーカ識別情報382という。
また、第2機器管理装置500の受信部592は、第2メーカ鍵2832および第2メーカ識別情報2822を受信する。
そして、記憶部591は、受信された第2メーカ鍵2832および第2メーカ識別情報2822を記憶する。
記憶部591に記憶された第2メーカ鍵2832および第2メーカ識別情報2822を、第2メーカ鍵581および第2メーカ識別情報582と呼ぶ。
ステップS112は機器鍵生成処理である。
ステップS112において、第1機器管理装置300の機器鍵生成部311は、第1メーカ鍵381と第1機器識別情報383とを用いて、第1機器鍵384を生成する。
第1機器識別情報383は、第1機器400を識別する情報である。
第1機器鍵384は、第1機器400用の鍵である。具体的には、第1機器鍵384は、第1機器400用の共通鍵である。
機器鍵は、認証鍵または機器認証鍵ともいう。
具体的には、機器鍵生成部311は、第1機器鍵384を以下のように生成する。
まず、機器鍵生成部311は、ランダムに文字列を生成する。生成される文字列が第1機器識別情報383である。但し、機器鍵生成部311は、複数の機器識別情報を含んだリストから、いずれかの機器識別情報を第1機器識別情報383として選択してもよい。また、機器鍵生成部311は、第1機器識別情報383を他の方法で生成してもよい。
そして、機器鍵生成部311は、第1メーカ鍵381と第1機器識別情報383とを入力として、鍵生成関数を実行する。生成される鍵が第1機器鍵384である。
また、第2機器管理装置500の機器鍵生成部511は、第2メーカ鍵581と第2機器識別情報583とを用いて、第2機器鍵584を生成する。
第2機器識別情報583は、第2機器600を識別する情報である。
第2機器鍵584は、第2機器600用の鍵である。具体的には、第2機器鍵584は、第2機器600用の共通鍵である。
第2機器識別情報583および第2機器鍵584を生成する方法は、第1機器識別情報383および第1機器鍵384を生成する方法と同じである。
ステップS113は送信処理である。
ステップS113において、第1機器管理装置300の送信部393は、第1メーカ識別情報382、第1機器識別情報383および第1機器鍵384を第1機器400に送信する。
さらに、第2機器管理装置500の送信部593は、第2メーカ識別情報582、第2機器識別情報583および第2機器鍵584を第2機器600に送信する。
ステップS121は第1機器400および第2機器600の動作である。
ステップS121は受信処理および記憶処理である。
ステップS121において、第1機器400の受信部492は、第1メーカ識別情報382、第1機器識別情報383および第1機器鍵384を受信する。
そして、記憶部491は、受信された第1メーカ識別情報382、第1機器識別情報383および第1機器鍵384を記憶する。
記憶部491に記憶された第1メーカ識別情報382、第1機器識別情報383および第1機器鍵384を、第1メーカ識別情報481、第1機器識別情報482および第1機器鍵483という。
また、第2機器600の受信部692は、第2メーカ識別情報582、第2機器識別情報583および第2機器鍵584を受信する。
そして、記憶部691は、受信された第2メーカ識別情報582、第2機器識別情報583および第2機器鍵584を記憶する。
記憶部691に記憶された第2メーカ識別情報582、第2機器識別情報583および第2機器鍵584を、第2メーカ識別情報681、第2機器識別情報682および第2機器鍵683という。
図13に基づいて、鍵共有方法の後半の手順を説明する。
ステップS210は情報要求処理である。
ステップS210において、第1機器400は、第2機器600の情報を要求する。
図14に基づいて、情報要求処理(S210)の手順を説明する。
ステップS211において、情報要求部410は、チャレンジデータ484を生成する。
チャレンジデータ484は、チャレンジレスポンス認証においてチャレンジと呼ばれるデータである。
具体的には、情報要求部410は、乱数を生成する。生成される乱数がチャレンジデータ484である。
ステップS212において、情報要求部410は、チャレンジデータ484を含んだ情報要求を生成する。
情報要求は、第2機器600の情報を要求するためのデータである。具体的には、情報要求は、第2機器600の情報を要求するためのパケットである。
ステップS213において、送信部493は、情報要求を第2機器600に送信する。
図13に戻り、ステップS220を説明する。
ステップS220は情報応答処理である。
ステップS220において、第2機器600は、情報を送信する。
図15に基づいて、情報応答処理(S220)の手順を説明する。
ステップS221において、受信部692は、情報要求を受信する。
ステップS222において、情報応答部610は、チャレンジデータ484と第2機器鍵683とを用いて、レスポンスデータ684を生成する。
レスポンスデータ684は、チャレンジレスポンス認証においてレスポンスと呼ばれるデータである。
具体的には、情報応答部610は、レスポンスデータ684を以下のように生成する。
まず、情報応答部610は、受信された情報要求からチャレンジデータ484を取得する。
そして、情報応答部610は、チャレンジデータ484と第2機器鍵683とを入力として、レスポンス生成関数を実行する。レスポンス生成関数は、チャレンジレスポンス認証におけるレスポンスを生成するための関数である。生成されるレスポンスがレスポンスデータ684である。
レスポンスを生成するためのアルゴリズムとして、CMAC(Cipher−based MAC)が挙げられる。
ステップS223において、情報応答部610は、チャレンジデータ484と、レスポンスデータ684と、第2メーカ識別情報681と、第2機器識別情報682を含んだ情報応答を生成する。
情報応答は、第2機器600の情報を送信するためのデータである。具体的には、情報応答は、第2機器600の情報を送信するためのパケットである。
ステップS224において、送信部693は、情報応答を第1機器400に送信する。
図13に戻り、ステップS230を説明する。
ステップS230は鍵要求処理である。
ステップS230において、第1機器400は、暗号化共有鍵を要求する。
図16に基づいて、鍵要求処理(S230)の手順を説明する。
ステップS231において、受信部492は、情報応答を受信する。
情報応答には、チャレンジデータ484と、レスポンスデータ684と、第2メーカ識別情報681と、第2機器識別情報682とが含まれる。
ステップS232において、鍵要求部420は、情報応答に含まれるデータと、第1メーカ識別情報481と、第1機器識別情報482とを含んだ鍵要求を生成する。
鍵要求は、暗号化共有鍵を要求するためのデータである。具体的には、鍵要求は、暗号化共有鍵を要求するためのパケットである。暗号化共有鍵は、暗号化された共有鍵である。共有鍵については後述する。
ステップS233において、送信部493は、鍵要求を鍵管理装置200に送信する。
図13に戻り、ステップS240を説明する。
ステップS240は鍵応答処理である。
ステップS240において、鍵管理装置200は、暗号化共有鍵を送信する。
図17に基づいて、鍵応答処理(S240)の手順を説明する。
ステップS241は受信処理である。
ステップS241において、受信部292は、鍵要求を受信する。
鍵要求には、チャレンジデータ484と、レスポンスデータ684と、第1メーカ識別情報481と、第1機器識別情報482と、第2メーカ識別情報681と、第2機器識別情報682とが含まれる。
ステップS242はメーカ鍵再生処理である。
ステップS242において、暗号化共有鍵生成部222は、マスタ鍵281と第1メーカ識別情報481とを用いて、第1メーカ再生鍵2841を生成する。
第1メーカ再生鍵2841は、第1メーカ鍵2831に対応する鍵である。第1メーカ識別情報481が正しい場合、第1メーカ再生鍵2841は第1メーカ鍵2831と一致する。
さらに、暗号化共有鍵生成部222は、マスタ鍵281と第2メーカ識別情報681とを用いて、第2メーカ再生鍵2842を生成する。
第2メーカ再生鍵2842は、第2メーカ鍵2832に対応する鍵である。第2メーカ識別情報681が正しい場合、第2メーカ再生鍵2842は第2メーカ鍵2832と一致する。
第1メーカ再生鍵2841および第2メーカ再生鍵2842を生成する方法は、図12のステップS102で第1メーカ鍵2831および第2メーカ鍵2832を生成する方法と同じである。
ステップS243は機器鍵再生処理である。
ステップS243において、暗号化共有鍵生成部222は、第1メーカ再生鍵2841と第1機器識別情報482とを用いて、第1機器再生鍵2851を生成する。
第1機器再生鍵2851は、第1機器鍵384に対応する鍵である。第1メーカ再生鍵2841と第1メーカ識別情報481とが正しい場合、第1機器再生鍵2851は第1機器鍵384と一致する。
さらに、暗号化共有鍵生成部222は、第2メーカ再生鍵2842と第2機器識別情報682とを用いて、第2機器再生鍵2852を生成する。
第2機器再生鍵2852は、第2機器鍵584に対応する鍵である。第2メーカ再生鍵2842と第2機器識別情報682とが正しい場合、第2機器再生鍵2852は第2機器鍵584と一致する。
第2機器再生鍵2852は、認証再生鍵ともいう。
第1機器再生鍵2851および第2機器再生鍵2852を生成する方法は、図12のステップS112で第1機器鍵384および第2機器鍵584を生成する方法と同じである。
ステップS244はレスポンス再生処理である。
ステップS244において、暗号化共有鍵生成部222は、チャレンジデータ484と第2機器再生鍵2852とを用いて、レスポンス再生データ286を生成する。
レスポンス再生データ286は、レスポンスデータ684に対応するデータである。チャレンジデータ484と第2機器再生鍵2852とが正しい場合、レスポンス再生データ286はレスポンスデータ684と一致する。
レスポンス再生データ286を生成する方法は、図15のステップS222でレスポンスデータ684を生成する方法と同じである。
ステップS245は検証処理である。
ステップS245において、暗号化共有鍵生成部222は、レスポンス再生データ286をレスポンスデータ684と比較する。
レスポンス再生データ286がレスポンスデータ684と一致する場合、処理はステップS246に進む。
レスポンス再生データ286がレスポンスデータ684と一致しない場合、鍵応答処理(S240)はエラー終了する。エラー終了時に、鍵応答の代わりに、エラーを通知するエラー応答が送信されてもよい。
ステップS246は共有鍵生成処理である。
ステップS246において、共有鍵生成部221は、共有鍵287を生成する。
共有鍵287は、第1機器400と第2機器600とに共有させる鍵である。具体的には、共有鍵287は共通鍵である。
具体的には、共有鍵生成部221は、乱数を生成する。そして、共有鍵生成部221は、生成された乱数を入力として、鍵生成関数を実行する。
ステップS247は暗号化共有鍵生成処理である。
ステップS247において、暗号化共有鍵生成部222は、第1機器再生鍵2851を暗号化鍵として用いて、共有鍵287を暗号化する。第1機器再生鍵2851を用いて暗号化された共有鍵287が第1暗号化共有鍵2881である。
さらに、暗号化共有鍵生成部222は、第2機器再生鍵2852を暗号化鍵として用いて、共有鍵287を暗号化する。第2機器再生鍵2852を用いて暗号化された共有鍵287が第2暗号化共有鍵2882である。
具体的には、暗号化共有鍵生成部222は、認証付き暗号方式で、共有鍵287を暗号化する。より具体的には、暗号化共有鍵生成部222は、機器再生鍵と共有鍵287とを入力として、認証付き暗号方式の暗号化関数を実行する。入力となる機器再生鍵は、第1機器再生鍵2851または第2機器再生鍵2852である。
ステップS248は鍵応答生成処理である。
ステップS248において、鍵応答生成部223は、第1暗号化共有鍵2881と第2暗号化共有鍵2882とを含んだ鍵応答を生成する。
鍵応答は、暗号化共有鍵を送信するためのデータである。具体的には、鍵応答は、暗号化共有鍵を送信するためのパケットである。
ステップS249は送信処理である。
ステップS249において、送信部293は、鍵応答を第1機器400に送信する。
図13に戻り、ステップS2401から説明を続ける。
ステップS2401において、鍵応答処理(S240)がエラー終了した場合、第1機器400と第2機器600とで鍵が共有されずに、鍵共有方法の手順は終了する。
鍵応答処理(S240)がエラー終了しなかった場合、処理はステップS250に進む。
ステップS250は第1鍵共有処理である。
ステップS250において、第1機器400は、暗号化共有鍵を共有鍵に復号する。
図18に基づいて、第1鍵共有処理(S250)の手順を説明する。
ステップS251は受信処理である。
ステップS251において、受信部492は、鍵応答を受信する。
鍵応答には、第1暗号化共有鍵2881と、第2暗号化共有鍵2882とが含まれる。
ステップS252は鍵復号処理である。
ステップS252において、鍵復号部430は、第1機器鍵483を用いて、第1暗号化共有鍵2881を復号する。
具体的には、鍵復号部430は、認証付き暗号方式で、第1暗号化共有鍵2881を復号する。より具体的には、鍵復号部430は、第1機器鍵483と第1暗号化共有鍵2881とを入力として、認証付き暗号方式の復号関数を実行する。
認証付き暗号方式における復号では、認証および復号が行われる。そして、認証が成功した場合に復号が成功する。つまり、認証が失敗した場合には復号が失敗する。
ステップS253は検証処理である。
ステップS253において、ステップS252で復号が成功した場合、処理はステップS254に進む。
ステップS252で復号が失敗した場合、第1鍵共有処理(S250)はエラー終了する。
ステップS254は記憶処理である。
ステップS254において、記憶部491は、共有鍵485を記憶する。共有鍵485は、第1暗号化共有鍵2881を復号して得られる鍵である。
ステップS255は送信処理である。
ステップS255において、送信部493は、第2暗号化共有鍵2882を第2機器600に送信する。
図13に戻り、ステップS2501から説明を続ける。
ステップS2501において、第1鍵共有処理(S250)がエラー終了した場合、第1機器400と第2機器600とで鍵が共有されずに、鍵共有方法の手順は終了する。
第1鍵共有処理(S250)がエラー終了しなかった場合、処理はステップS260に進む。
ステップS260は第2鍵共有処理である。
ステップS260において、第2機器600は、暗号化共有鍵を共有鍵に復号する。
図19に基づいて、第2鍵共有処理(S260)の手順を説明する。
ステップS261は受信処理である。
ステップS261において、受信部692は、第2暗号化共有鍵2882を受信する。
ステップS262は鍵復号処理である。
ステップS262において、鍵復号部620は、第2機器鍵683を用いて、第2暗号化共有鍵2882を復号する。
具体的には、鍵復号部620は、認証付き暗号方式で、第2暗号化共有鍵2882を復号する。より具体的には、鍵復号部620は、第2機器鍵683と第2暗号化共有鍵2882とを入力として、認証付き暗号方式の復号関数を実行する。
認証付き暗号方式における復号では、認証および復号が行われる。そして、認証が成功した場合に復号が成功する。つまり、認証が失敗した場合には復号が失敗する。
ステップS263は検証処理である。
ステップS263において、ステップS262で復号が成功した場合、処理はステップS264に進む。
ステップS262で復号が失敗した場合、第2鍵共有処理(S260)はエラー終了する。第2鍵共有処理(S260)がエラー終了した場合、第1機器400と第2機器600とで鍵が共有されない。
ステップS264は記憶処理である。
ステップS264において、記憶部691は、共有鍵685を記憶する。共有鍵685は、第2暗号化共有鍵2882を復号して得られる鍵である。
これにより、第1機器400と第2機器600とで鍵が共有される。つまり、第1機器400は共有鍵485を記憶し、第2機器600は共有鍵685を記憶する。共有鍵485と共有鍵685とは同じ鍵である。
上記の通り、鍵共有方法が正当に行われた場合、鍵管理装置200と第1機器400と第2機器600とが共有鍵を共有する。
共有鍵が共有された後、第1機器400および第2機器600は、共有鍵を用いて、データを送受信する。送信されるデータは共有鍵を用いて暗号化され、暗号化されたデータは共有鍵を用いて復号される。
これにより、第1機器400と第2機器600との間で安全にデータを通信することが可能になる。
***実施の形態1の効果***
公開鍵暗号アルゴリズムよりも処理負荷が軽い共通鍵暗号アルゴリズムを用いて第2機器600が正規の機器か検証し、第1機器400と第2機器600とのそれぞれの認証鍵を配布することなく、共有鍵を共有することができる。
機器毎に個別の共通鍵が機器認証鍵として割り当てられるため、いずれかの機器から機器認証鍵が漏洩した場合でも、被害を最小限に抑えることができる。
個別の機器識別情報を用いることにより、鍵管理を容易にすることができる。
第1機器400に第2機器600の機器認証鍵が直接配布されないため、正規の第1機器400が悪用された場合でも、共有鍵を再度配布し直すことで、環境を修正することができる。
鍵管理装置200は、ファームウェアのアップデートファイルなどを、第2機器600の機器認証鍵を用いて暗号化して、第2機器600に送付することができる。つまり、鍵管理装置200は、第2機器600に送付されるファイルの中身を第1機器400に知られることなく、第2機器600にファイルを送付することができる。
***他の構成***
第1機器400と第2機器600とに共有させる鍵は複数であってもよい。
具体的には、暗号化共有鍵生成部222は、複数の共有鍵を生成する。そして、暗号化共有鍵生成部222は、第1機器識別情報482を用いて複数の共有鍵を暗号化して複数の第1暗号化共有鍵を生成する。また、暗号化共有鍵生成部222は、第2機器識別情報682を用いて複数の共有鍵を暗号化して複数の第2暗号化共有鍵を生成する。そして、送信部293は、複数の第1暗号化共有鍵と複数の第2暗号化共有鍵とを含んだ鍵応答を第1機器400に送信する。
チャレンジデータ484は、第1機器400によって生成されなくてもよい。
具体的には、第1機器400は、チャレンジデータ484の生成を鍵管理装置200に要求する。鍵管理装置200は、チャレンジデータ484を生成し、チャレンジデータ484を第1機器400に送信する。そして、第1機器400は、チャレンジデータ484を受信する。
第1機器400による共有鍵485の保存と第2機器600による共有鍵685の保存とは、互いの検証が成功した後に行われてもよい。
具体的には、第2機器600は、第2暗号化共有鍵2882の復号(S262)が成功した場合、共有鍵685を記憶(S264)した後、成功通知を第1機器400に送信する。また、第2暗号化共有鍵2882の復号(S262)が失敗した場合、第2機器600は、失敗通知を第1機器400に送信する。成功通知が送信された場合、第1機器400は、共有鍵485を記憶する。失敗通知が送信された場合、第1機器400は、共有鍵485を破棄する。
第1機器400と第2機器600とは同じ製品120に搭載された機器でなくてもよい。
具体的には、第1機器400は製品120の外部に設けられる機器であってもよい。製品120が車両であり、第2機器600が車載機器である場合、第1機器400は、車両の外部から車載機器をメンテナンスするための機器であってもよい。
情報要求処理(S210)は、第1機器400が第2機器600から処理要求を受けた後に実行されてもよい。つまり、情報要求処理(S210)は、第1機器400がトリガーとなって実行されてもよいし、第2機器600がトリガーとなって実行されてもよい。
実施の形態2.
接続が許可される機器同士に鍵を共有させる形態について、主に実施の形態1と異なる点を、図20から図26に基づいて説明する。
***構成の説明***
図20に基づいて、鍵共有システム100の構成を説明する。
鍵共有システム100において、製品120は、第1機器400と複数の第2機器(600A〜600C)と複数の第2機器(700A〜700C)とを備える。第2機器600Aから第2機器600Cを総称して第2機器600という。第2機器700Aから第2機器700Cを総称して第2機器700という。
具体的には、製品120は自動車であり、第1機器400はゲートウェイ装置であり、第2機器600および第2機器700は車載機器である。
なお、第2機器700は、第1メーカ111によって製造される機器である。
図21に基づいて、鍵管理装置200の構成を説明する。
鍵管理装置200は、許可判定部224を機能構成の要素として備える。許可判定部224の機能については後述する。
図22に、記憶部291に記憶されるデータを示す。
記憶部291には、許可リスト289が記憶される。
図23に基づいて、許可リスト289を説明する。
許可リスト289は、機器識別情報の組を含んだリストである。
許可リスト289において、機器識別情報の組に対応する機器の組が、相互接続が許可される機器の組である。
図23の許可リスト289において、第1機器400と第2機器600Aとは、相互接続が許可される機器の組である。つまり、第2機器600Aは、第1機器400と接続して第1機器400と通信することが許可される機器である。
第1機器管理装置300の構成は、実施の形態1の図4と同じである。
図24に、記憶部391に記憶されるデータを示す。
記憶部391には、第2機器識別情報385と第2機器鍵386とが記憶される。
第2機器識別情報385は、第2機器700を識別する情報である。
第2機器鍵386は、第2機器700用の鍵であり、第1メーカ鍵381と第2機器識別情報385とを用いて生成される。第2機器鍵386を生成する方法は、第1機器鍵384と同じである。
第1機器400の構成は、実施の形態1の図6および図7と同じである。
第2機器管理装置500の構成は、実施の形態1の図8および図9と同じである。
第2機器600の構成は、実施の形態1の図10および図11と同じである。
第2機器700の構成は、第2機器600の構成と同じである。但し、第2機器700の記憶部に記憶されるメーカ識別情報は、第1メーカ識別情報である。
***動作の説明***
図25に基づいて、鍵共有方法の前半の手順を説明する。
ステップS101からステップS103は、実施の形態1の図12と同じである。
ステップS131は、実施の形態1における図12のステップS111と同じである。
ステップS132は、実施の形態1における図12のステップS112に対応する処理である。
ステップS132において、第1機器管理装置300は、第1機器鍵384の他に、第2機器鍵386を生成する。
具体的には、第1機器管理装置300は、第2機器識別情報385を生成し、第1メーカ鍵381と第2機器識別情報385とを用いて第2機器鍵386を生成する。
第2機器識別情報385を生成する方法は第1機器識別情報383を生成する方法と同じであり、第2機器鍵386を生成する方法は第1機器鍵384を生成する方法と同じである。
なお、第2機器管理装置500の動作は、実施の形態1における図12のステップS112と同じである。
ステップS133は、実施の形態1における図12のステップS113に対応する処理である。
ステップS133において、第1機器管理装置300は、第1メーカ識別情報382と第1機器識別情報383と第1機器鍵384とを第1機器400に送信する。さらに、第1機器管理装置300は、第1メーカ識別情報382と第2機器識別情報385と第2機器鍵386とを第2機器700に送信する。
なお、第2機器管理装置500の動作は、実施の形態1における図12のステップS113と同じである。
ステップS141は、実施の形態1における図12のステップS121に対応する処理である。
ステップS141において、第2機器700は、第1メーカ識別情報382と第2機器識別情報385と第2機器鍵386とを受信して記憶する。
なお、第1機器400および第2機器600の動作は、実施の形態1における図12のステップS121と同じである。
鍵共有方法の後半の手順は、鍵応答処理(S240)を除いて、実施の形態1の図13と同じである。
なお、鍵共有方法の後半の手順において、第2機器600は第2機器700に置き換えることができる。その場合、第2メーカ識別情報681は第1メーカ識別情報に置き換わる。
図26に基づいて、鍵応答処理(S240)の手順を説明する。
ステップS241からステップS245は、実施の形態1の図17と同じである。
ステップS2451は許可判定処理である。
ステップS2451において、許可判定部224は、第1機器識別情報482と第2機器識別情報682とに対応する機器の組が、相互接続が許可される機器の組であるか判定する。
具体的には、許可判定部224は、第1機器識別情報482と第2機器識別情報682との組が許可リスト289に含まれるか判定する。第1機器識別情報482と第2機器識別情報682との組が許可リスト289に含まれる場合、第1機器識別情報482と第2機器識別情報682との組に対応する機器の組は、相互接続が許可される機器の組である。
第1機器識別情報482と第2機器識別情報682とに対応する機器の組が、相互接続が許可される機器の組である場合、処理はステップS246に進む。
第1機器識別情報482と第2機器識別情報682とに対応する機器の組が、相互接続が許可されない機器の組である場合、鍵応答処理(S240)はエラー終了する。
ステップS246からステップS249は、実施の形態1の図17と同じである。
***実施の形態2の効果***
鍵管理装置200が許可リスト289を用いることで、接続が許可されていない機器同士に対して鍵の共有を防ぐことができる。
***他の構成***
図26の鍵応答処理(S240)において、許可判定処理(S2451)は、受信処理(S241)から送信処理(S249)までの間であれば、いずれのタイミングで実行しても構わない。
許可リスト289は、鍵管理装置200に予め記憶されてもよいし、第1機器400から鍵管理装置200に送信されてもよい。
また、第1機器400が鍵管理装置200の代わりに許可判定部を備え、鍵要求処理(S230)において、第1機器400が許可判定処理を実行してもよい。許可判定処理での判定結果が許可である場合に、第1機器400は鍵要求を鍵管理装置200に送信する。
許可リスト289において、機器識別情報の組に共有鍵を対応付けてもよい。
暗号化共有鍵生成部222は、第1機器識別情報482と第2機器識別情報682との組に対応する共有鍵を暗号化して、第1暗号化共有鍵2881と第2暗号化共有鍵2882とを生成する。
第2機器700は、第1メーカ111とは別の第3メーカによって製造される機器であってもよい。また、第2機器700Aから第2機器700Cは、それぞれ異なるメーカによって製造される機器であってもよい。
***実施の形態の補足***
実施の形態において、鍵管理装置200の機能はハードウェアで実現してもよい。
図27に、鍵管理装置200の機能がハードウェアで実現される場合の構成を示す。
鍵管理装置200は処理回路990を備える。処理回路990はプロセッシングサーキットリともいう。
処理回路990は、マスタ鍵生成部211とメーカ鍵生成部212と共有鍵生成部221と暗号化共有鍵生成部222と鍵応答生成部223と許可判定部224と記憶部291といった「部」の機能を実現する専用の電子回路である。
具体的には、処理回路990は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、FPGAまたはこれらの組み合わせである。GAはGate Arrayの略称であり、ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField Programmable Gate Arrayの略称である。
鍵管理装置200は、処理回路990を代替する複数の処理回路を備えてもよい。複数の処理回路は、「部」の機能を分担する。
第1機器管理装置300、第1機器400、第2機器管理装置500および第2機器600において、それぞれの機能はハードウェアで実現してもよい。
つまり、第1機器管理装置300、第1機器400、第2機器管理装置500、第2機器600および第2機器700は、鍵管理装置200と同じく、1つ以上の処理回路を備えてもよい。
第1機器管理装置300に備わる処理回路は、機器鍵生成部311と記憶部391といった「部」の機能を実現する。
第1機器400に備わる処理回路は、情報要求部410と鍵要求部420と鍵復号部430と記憶部491といった「部」の機能を実現する。
第2機器管理装置500に備わる処理回路は、機器鍵生成部511と記憶部591といった「部」の機能を実現する。
第2機器600および第2機器700に備わる処理回路は、情報応答部610と鍵復号部620と記憶部691といった「部」の機能を実現する。
鍵管理装置200、第1機器管理装置300、第1機器400、第2機器管理装置500、第2機器600および第2機器700の機能は、ソフトウェアとハードウェアとの組み合わせで実現してもよい。つまり、「部」の機能の一部をソフトウェアで実現し、「部」の機能の残りをハードウェアで実現してもよい。
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
100 鍵共有システム、101 ネットワーク、110 事業者、111 第1メーカ、112 第2メーカ、120 製品、200 鍵管理装置、211 マスタ鍵生成部、212 メーカ鍵生成部、221 共有鍵生成部、222 暗号化共有鍵生成部、223 鍵応答生成部、224 許可判定部、281 マスタ鍵、2821 第1メーカ識別情報、2822 第2メーカ識別情報、2831 第1メーカ鍵、2832 第2メーカ鍵、2841 第1メーカ再生鍵、2842 第2メーカ再生鍵、2851 第1機器再生鍵、2852 第2機器再生鍵、286 レスポンス再生データ、287 共有鍵、2881 第1暗号化共有鍵、2882 第2暗号化共有鍵、289 許可リスト、291 記憶部、292 受信部、293 送信部、300 第1機器管理装置、311 機器鍵生成部、381 第1メーカ鍵、382 第1メーカ識別情報、383 第1機器識別情報、384 第1機器鍵、385 第2機器識別情報、386 第2機器鍵、391 記憶部、392 受信部、393 送信部、400 第1機器、410 情報要求部、420 鍵要求部、430 鍵復号部、481 第1メーカ識別情報、482 第1機器識別情報、483 第1機器鍵、484 チャレンジデータ、485 共有鍵、491 記憶部、492 受信部、493 送信部、500 第2機器管理装置、511 機器鍵生成部、581 第2メーカ鍵、582 第2メーカ識別情報、583 第2機器識別情報、584 第2機器鍵、591 記憶部、592 受信部、593 送信部、600 第2機器、610 情報応答部、620 鍵復号部、681 第2メーカ識別情報、682 第2機器識別情報、683 第2機器鍵、684 レスポンスデータ、685 共有鍵、691 記憶部、692 受信部、693 送信部、700 第2機器、921 プロセッサ、922 メモリ、923 補助記憶装置、924 通信装置、931 プロセッサ、932 メモリ、933 補助記憶装置、934 通信装置、941 プロセッサ、942 メモリ、943 補助記憶装置、944 通信装置、951 プロセッサ、952 メモリ、953 補助記憶装置、954 通信装置、961 プロセッサ、962 メモリ、963 補助記憶装置、964 通信装置、990 処理回路。

Claims (13)

  1. 第1機器から送信される要求であって前記第1機器を識別する第1機器識別情報と前記第1機器と通信する第2機器を識別する第2機器識別情報とを含んだ要求である鍵要求を受信する受信部と、
    前記鍵要求に含まれる第1機器識別情報を用いて、前記第1機器と前記第2機器とに共有させる共有鍵を暗号化して第1暗号化共有鍵を生成し、前記鍵要求に含まれる第2機器識別情報を用いて前記共有鍵を暗号化して第2暗号化共有鍵を生成する暗号化共有鍵生成部と、
    前記第1暗号化共有鍵と前記第2暗号化共有鍵とを含んだ鍵応答を前記第1機器に送信する送信部と
    を備える鍵管理装置。
  2. 前記暗号化共有鍵生成部は、
    前記鍵要求に含まれる第1機器識別情報を用いて第1機器再生鍵を生成し、前記第1機器再生鍵を用いて前記共有鍵を暗号化して前記第1暗号化共有鍵を生成し、
    前記鍵要求に含まれる第2機器識別情報を用いて第2機器再生鍵を生成し、前記第2機器再生鍵を用いて前記共有鍵を暗号化して前記第2暗号化共有鍵を生成する
    請求項1に記載の鍵管理装置。
  3. 前記第1機器は、第1メーカによって製造される機器であり、
    前記第2機器は、第2メーカによって製造される機器であり、
    前記鍵要求は、前記第1メーカを識別する第1メーカ識別情報と前記第2メーカを識別する第2メーカ識別情報とを含み、
    前記暗号化共有鍵生成部は、前記鍵要求に含まれる第1メーカ識別情報と第1機器識別情報とを用いて前記第1機器再生鍵を生成し、前記鍵要求に含まれる第2メーカ識別情報と第2機器識別情報とを用いて前記第2機器再生鍵を生成する
    請求項2に記載の鍵管理装置。
  4. 前記暗号化共有鍵生成部は、前記鍵要求に含まれる第1メーカ識別情報を用いて第1メーカ再生鍵を生成し、前記第1メーカ再生鍵と前記鍵要求に含まれる第1機器識別情報とを用いて前記第1機器再生鍵を生成し、前記鍵要求に含まれる第2メーカ識別情報を用いて第2メーカ再生鍵を生成し、前記第2メーカ再生鍵と前記鍵要求に含まれる第2機器識別情報とを用いて前記第2機器再生鍵を生成する
    請求項3に記載の鍵管理装置。
  5. 前記鍵要求は、チャレンジデータと、マスタ鍵を元に生成される認証鍵と前記チャレンジデータとを用いて生成されるレスポンスデータとを含み、
    前記暗号化共有鍵生成部は、前記マスタ鍵を元に認証再生鍵を生成し、前記認証再生鍵と前記鍵要求に含まれるチャレンジデータとを用いてレスポンス再生データを生成し、前記鍵要求に含まれるレスポンスデータを前記レスポンス再生データと比較し、前記レスポンスデータが前記レスポンス再生データと一致する場合に前記第1暗号化共有鍵と前記第2暗号化共有鍵とを生成する
    請求項1に記載の鍵管理装置。
  6. 前記認証鍵は、前記マスタ鍵と前記第2機器識別情報とを用いて生成される共通鍵であり、
    前記暗号化共有鍵生成部は、前記マスタ鍵と前記鍵要求に含まれる第2機器識別情報とを用いて前記認証再生鍵を生成する
    請求項5に記載の鍵管理装置。
  7. 前記第2機器は、第2メーカによって製造される機器であり、
    前記認証鍵は、前記第2メーカの鍵である第2メーカ鍵と前記第2機器識別情報とを用いて生成される共通鍵であり、
    前記第2メーカ鍵は、前記マスタ鍵と前記第2メーカを識別する第2メーカ識別情報とを用いて生成される共通鍵であり、
    前記鍵要求は、前記第2メーカ識別情報を含み、
    前記暗号化共有鍵生成部は、前記マスタ鍵と前記鍵要求に含まれる第2メーカ識別情報とを用いて第2メーカ再生鍵を生成し、前記第2メーカ再生鍵と前記鍵要求に含まれる第2機器識別情報とを用いて前記認証再生鍵を生成する
    請求項6に記載の鍵管理装置。
  8. 前記暗号化共有鍵生成部は、前記第1機器識別情報を用いて複数の共有鍵を暗号化して複数の第1暗号化共有鍵を生成し、前記第2機器識別情報を用いて前記複数の共有鍵を暗号化して複数の第2暗号化共有鍵を生成し、
    前記送信部は、前記複数の第1暗号化共有鍵と前記複数の第2暗号化共有鍵とを含んだデータを前記鍵応答として送信する
    請求項1に記載の鍵管理装置。
  9. 前記鍵管理装置は、前記鍵要求に含まれる第1機器識別情報と前記鍵要求に含まれる第2機器識別情報との組が、機器識別情報の組を含んだ許可リストに含まれるか判定する許可判定部を備え、
    前記暗号化共有鍵生成部は、前記鍵要求に含まれる第1機器識別情報と前記鍵要求に含まれる第2機器識別情報との組が前記許可リストに含まれる場合に、前記第1暗号化共有鍵と前記第2暗号化共有鍵とを生成する
    請求項1に記載の鍵管理装置。
  10. 第1機器から送信される要求であって前記第1機器を識別する第1機器識別情報と前記第1機器と通信する第2機器を識別する第2機器識別情報とを含んだ要求である鍵要求を受信する受信処理と、
    前記鍵要求に含まれる第1機器識別情報を用いて、前記第1機器と前記第2機器とに共有させる共有鍵を暗号化して第1暗号化共有鍵を生成し、前記鍵要求に含まれる第2機器識別情報を用いて前記共有鍵を暗号化して第2暗号化共有鍵を生成する暗号化共有鍵生成処理と、
    前記第1暗号化共有鍵と前記第2暗号化共有鍵とを含んだ鍵応答を前記第1機器に送信する送信処理と
    をコンピュータに実行させるための鍵管理プログラム。
  11. 第2機器が、前記第2機器を識別する第2機器識別情報を送信し、
    第1機器が、前記第2機器識別情報を受信し、前記第1機器を識別する第1機器識別情報と前記第2機器識別情報とを含んだ鍵要求を送信し、
    鍵管理装置が、前記鍵要求を受信し、前記鍵要求に含まれる第1機器識別情報を用いて、前記第1機器と前記第2機器とに共有させる共有鍵を暗号化して第1暗号化共有鍵を生成し、前記鍵要求に含まれる第2機器識別情報を用いて前記共有鍵を暗号化して第2暗号化共有鍵を生成し、前記第1暗号化共有鍵と前記第2暗号化共有鍵とを含んだ鍵応答を送信し、
    前記第1機器が、前記鍵応答を受信し、前記第1機器識別情報を用いて、前記鍵応答に含まれる第1暗号化共有鍵から前記共有鍵を復号し、前記鍵応答に含まれる第2暗号化共有鍵を送信し、
    前記第2機器が、前記第2暗号化共有鍵を受信し、前記第2機器識別情報を用いて前記第2暗号化共有鍵から前記共有鍵を復号する鍵共有方法。
  12. 前記第1機器が、チャレンジデータを送信し、
    前記第2機器が、前記チャレンジデータを受信し、前記第2機器識別情報を用いて生成される第2機器鍵と前記チャレンジデータとを用いてレスポンスデータを生成し、前記レスポンスデータを送信し、
    前記第1機器が、前記レスポンスデータを受信し、前記チャレンジデータと前記レスポンスデータと前記第1機器識別情報と前記第2機器識別情報とを含んだデータを前記鍵要求として送信し、
    前記鍵管理装置が、前記鍵要求を受信し、前記鍵要求に含まれる第2機器識別情報を用いて第2機器再生鍵を生成し、前記第2機器再生鍵と前記鍵要求に含まれるチャレンジデータとを用いてレスポンス再生データを生成し、前記鍵要求に含まれるレスポンスデータを前記レスポンス再生データと比較し、前記鍵要求に含まれるレスポンスデータが前記レスポンス再生データと一致する場合に、前記第1暗号化共有鍵と前記第2暗号化共有鍵とを生成する
    請求項11に記載の鍵共有方法。
  13. 前記鍵管理装置が、前記鍵要求に含まれる第1機器識別情報と前記鍵要求に含まれる第2機器識別情報との組が、機器識別情報の組を含んだ許可リストに含まれるか判定し、前記鍵要求に含まれる第1機器識別情報と前記鍵要求に含まれる第2機器識別情報との組が前記許可リストに含まれる場合に、前記第1暗号化共有鍵と前記第2暗号化共有鍵とを生成する
    請求項11に記載の鍵共有方法。
JP2016572850A 2016-06-14 2016-06-14 鍵管理装置、鍵管理プログラムおよび鍵共有方法 Pending JPWO2017216874A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/067673 WO2017216874A1 (ja) 2016-06-14 2016-06-14 鍵管理装置、鍵管理プログラムおよび鍵共有方法

Publications (1)

Publication Number Publication Date
JPWO2017216874A1 true JPWO2017216874A1 (ja) 2018-06-21

Family

ID=60663022

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016572850A Pending JPWO2017216874A1 (ja) 2016-06-14 2016-06-14 鍵管理装置、鍵管理プログラムおよび鍵共有方法

Country Status (2)

Country Link
JP (1) JPWO2017216874A1 (ja)
WO (1) WO2017216874A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113163399A (zh) * 2020-01-07 2021-07-23 阿里巴巴集团控股有限公司 一种终端与服务器的通信方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000253043A (ja) * 1999-03-01 2000-09-14 Nippon Telegr & Teleph Corp <Ntt> パケット通信方法
JP5791933B2 (ja) * 2011-03-31 2015-10-07 株式会社三共 遊技用システム及び遊技用装置
JP2016512675A (ja) * 2013-03-12 2016-04-28 インタートラスト テクノロジーズ コーポレイション 安全な取引システム及び方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000253043A (ja) * 1999-03-01 2000-09-14 Nippon Telegr & Teleph Corp <Ntt> パケット通信方法
JP5791933B2 (ja) * 2011-03-31 2015-10-07 株式会社三共 遊技用システム及び遊技用装置
JP2016512675A (ja) * 2013-03-12 2016-04-28 インタートラスト テクノロジーズ コーポレイション 安全な取引システム及び方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
井本 礼一郎 ほか: "自動車とスマートフォンの連携サービスにおけるセキュリティ対策の一考察", SCIS2016 [USB], vol. 4F2−3, JPN6016034849, 22 January 2016 (2016-01-22), JP, pages 1 - 6, ISSN: 0003487855 *
岡本 栄司, 暗号理論入門, vol. 初版第3刷, JPN6016034850, 1 October 1996 (1996-10-01), JP, pages 110 - 116, ISSN: 0003487856 *
川端 秀明 ほか: "車載ECU向けの鍵管理方式", SCIS2016 [USB], vol. 2F4−5, JPN6016034851, 22 January 2016 (2016-01-22), JP, pages 1 - 7, ISSN: 0003487857 *

Also Published As

Publication number Publication date
WO2017216874A1 (ja) 2017-12-21

Similar Documents

Publication Publication Date Title
US11516011B2 (en) Blockchain data processing methods and apparatuses based on cloud computing
US20210051000A1 (en) Vehicle-mounted device upgrade method and related device
US11082228B2 (en) Reuse system, key generation device, data security device, in-vehicle computer, reuse method, and computer program
US10999078B2 (en) Software distribution processing device, software distribution processing method, and vehicle
CN110162992B (zh) 数据处理方法、数据处理装置和计算机系统
US11212087B2 (en) Management system, key generation device, in-vehicle computer, management method, and computer program
JP6721266B2 (ja) 鍵管理システム、通信機器および鍵共有方法
US11321074B2 (en) Vehicle-mounted device upgrade method and related apparatus
US20170324558A1 (en) Management device, key generating device, vehicle, maintenance tool, management system, management method, and computer program
JP6625293B2 (ja) 鍵管理装置および通信機器
JP2010011400A (ja) 共通鍵方式の暗号通信システム
KR102450811B1 (ko) 차량 내부 네트워크의 키 관리 시스템
WO2017033602A1 (ja) 車載コンピュータシステム、車両、管理方法、及びコンピュータプログラム
US11438162B2 (en) Network device authentication
WO2018029893A1 (ja) データ提供システム、データ保安装置、データ提供方法、及びコンピュータプログラム
US11516194B2 (en) Apparatus and method for in-vehicle network communication
WO2017216874A1 (ja) 鍵管理装置、鍵管理プログラムおよび鍵共有方法
US20220209946A1 (en) Key revocation for edge devices
WO2023000313A1 (zh) 一种密钥验证方法及相关装置
JP6830877B2 (ja) 配信システム、鍵生成装置、配信方法、及びコンピュータプログラム
JP2017208731A (ja) 管理システム、管理装置、車載コンピュータ、管理方法、及びコンピュータプログラム
JP6519060B2 (ja) 管理装置、車両、管理方法、及びコンピュータプログラム
JP7003832B2 (ja) 車両用電子制御システムおよび車両用電子制御装置
CN116388992A (zh) 针对分布式tee应用的远程认证方法及装置
CN117354016A (zh) 一种整车ota安全升级方法、装置、设备及介质

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170725