(57)【要約】【課題】更新データを適用する機器に対してより安全に更新データを送信することが可能な機器統合システム及び更新管理システムを提供する。【解決手段】機器統合システム１は、機器仲介装置２が、暗号化済パッケージデータを装置復号鍵で復号し、ＥＣＵ４に適用する更新データの保存先を示すＵＲＩと、ハッシュ値とを得るパッケージ復号部２２と、ＵＲＩにアクセスして暗号化済更新データを受信し、ＥＣＵ４に受け渡す暗号化済更新データ受渡部２４とを備え、ＥＣＵ４が、暗号化済更新データをＥＣＵ暗号鍵でさらに暗号化して得た二重暗号更新データからハッシュ値を生成するハッシュ値生成部４１と、このハッシュ値と機器仲介装置２が得たハッシュ値とを照合するハッシュ値照合部４２と、照合できた場合に、暗号化済更新データを業者復号鍵で復号して更新データを得る更新データ取得部４３と、更新データをＥＣＵ４に適用するデータ更新部４４とを備える。【選択図】図６
2020092289.tif 000002
【特許請求の範囲】
【請求項１】
更新データの適用対象である機器と、
前記機器に対して接続され、外部のコンピュータとの間で通信可能な機器仲介装置と、
を備えた機器統合システムであって、
前記機器仲介装置は、
前記機器に適用する更新データが保存された外部のコンピュータの保存先を示す保存先情報と、前記更新データに基づいて生成されたデータの検証に用いる期待値とを含み、暗号化がされたパッケージデータを、前記機器仲介装置が有する装置復号鍵で復号して、前記保存先情報と前記期待値とを得る復号手段と、
前記復号手段によって得られた前記保存先情報が示す保存先にアクセスして暗号化済更新データを受信し、前記機器に受け渡す暗号化済更新データ受渡手段と、
を備え、
前記機器は、
前記暗号化済更新データ受渡手段により受信した前記暗号化済更新データを、前記機器が有する機器暗号鍵でさらに暗号化して得た二重暗号更新データからデータの検証に用いる期待値を生成する期待値生成手段と、
前記期待値生成手段によって生成された期待値と、前記機器仲介装置の前記復号手段により得た前記期待値とを照合する照合手段と、
前記照合手段によって照合できた場合に、前記暗号化済更新データ受渡手段により受信した前記暗号化済更新データを、前記機器が有する業者復号鍵で復号して更新データを得る更新データ取得手段と、
前記更新データ取得手段によって得た更新データを、前記機器に適用する更新手段と、
を備えること、
を特徴とする機器統合システム。
【請求項２】
請求項１に記載の機器統合システムにおいて、
前記機器は、前記照合手段によって照合できなかった場合に、前記暗号化済更新データ受渡手段により受信した前記暗号化済更新データを削除するデータ削除手段を備えること、
を特徴とする機器統合システム。
【請求項３】
請求項１又は請求項２に記載の機器統合システムにおいて、
前記パッケージデータは、さらに前記機器仲介装置を識別する装置識別情報が対応付けられていること、
を特徴とする機器統合システム。
【請求項４】
請求項１から請求項３までのいずれか一項に記載の機器統合システムにおいて、
複数の前記機器を備え、
前記パッケージデータは、さらに前記機器を識別する機器識別情報を含んで暗号化がされたものであること、
を特徴とする機器統合システム。
【請求項５】
請求項１から請求項４までのいずれか一項に記載の機器統合システムにおいて、
前記機器仲介装置は、予め前記装置復号鍵を記憶しており、
前記機器は、予め前記機器暗号鍵及び前記業者復号鍵を記憶しており、
前記機器仲介装置が有する前記装置復号鍵と、前記機器が有する前記業者復号鍵とは、異なる鍵であること、
を特徴とする機器統合システム。
【請求項６】
請求項１から請求項５までのいずれか一項に記載の機器統合システムと、
前記機器統合システムを管理する更新管理サーバと、
前記更新データを管理する更新データサーバと、
を備えた更新管理システムであって、
前記更新データサーバは、
前記機器に適用する前記更新データを、前記機器が有する前記業者復号鍵と対になる第１暗号鍵で暗号化して得た前記暗号化済更新データを、暗号化済更新データ記憶部に記憶させる更新データ暗号化処理手段と、
前記暗号化済更新データ記憶部に記憶された前記暗号化済更新データを、前記更新管理サーバに送信する暗号化済更新データ送信手段と、
を備え、
前記更新管理サーバは、
前記更新データサーバから前記暗号化済更新データを受信する暗号化済更新データ受信手段と、
前記暗号化済更新データを、前記機器が有する前記機器暗号鍵と同一の第２暗号鍵で暗号化して得た二重暗号更新データからデータの検証に用いる期待値を生成する期待値生成手段と、
前記暗号化済更新データ記憶部における前記暗号化済更新データの保存先を示す前記保存先情報と、前記期待値生成手段によって生成した前記期待値とを含んでパッケージ化し、前記機器仲介装置が有する前記装置復号鍵と対になる第３暗号鍵で暗号化した前記パッケージデータを生成するパッケージ生成手段と、
前記パッケージ生成手段によって生成した前記パッケージデータを、前記機器仲介装置に送信するパッケージ送信手段と、
を備え、
前記機器仲介装置は、前記パッケージデータを受信するパッケージ受信手段を備えること、
を特徴とする更新管理システム。
【請求項７】
請求項６に記載の更新管理システムにおいて、
前記更新管理サーバで使用する前記第２暗号鍵及び前記第３暗号鍵を管理する鍵管理サーバを備えること、
を特徴とする更新管理システム。
【請求項８】
請求項６又は請求項７に記載の更新管理システムにおいて、
前記パッケージデータは、さらにワンタイムパスワードを含んで暗号化がされたものであり、
前記機器仲介装置の前記復号手段は、前記ワンタイムパスワードをさらに得るものであり、
前記機器仲介装置は、前記復号手段によって得られた前記保存先情報に基づく前記更新データサーバに対して、前記ワンタイムパスワードを送信するパスワード送信手段を備え、
前記更新データサーバは、前記ワンタイムパスワードによる認証を、前記更新管理サーバに依頼する認証依頼手段を備え、
前記機器仲介装置の前記暗号化済更新データ受渡手段は、前記ワンタイムパスワードによる認証ができた場合に限り、前記更新データサーバから前記暗号化済更新データを受信し、前記機器に受け渡すこと、
を特徴とする更新管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器統合システム及び更新管理システムに関する。
【背景技術】
【０００２】
従来、自動車には、ソフトウェアにより制御されるＥＣＵ（電子制御ユニット）等の機器が複数搭載されている。ＥＣＵは、ファームウェア等のソフトウェアを記憶し、ソフトウェアを実行して制御する装置である。現状において、ファームウェア等の更新が必要な場合には、サービスマン等の人手によって、直接ＥＣＵに対して更新作業を行っている。しかし、人手によるデータ更新は、煩雑である。そこで、近年では、インターネット等を介して遠隔で更新する方法が開示されている（例えば、特許文献１参照）。
【０００３】
特許文献１に記載の技術を用いると、機器を人が直接操作することなく、遠隔でデータを更新することができるため、煩雑性が解消されうる。しかし、サーバやクラウドから更新データを対象機器に送信するため、不正な第三者が行う盗聴や改ざんから更新データを保護する必要がある。
データを安全に送信する技術としては、例えば、サーバと端末とを相互認証させる仕組み（特許文献２参照）や、公開鍵方式と暗号鍵とを組み合わせて受信側に安全にデータを届ける方法（特許文献３参照）等がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１８−１８３０７号公報
【特許文献２】特開２００２−３１８６３２号公報
【特許文献３】特開２０１８−４２０８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の特許文献に記載の技術では、データを暗号化して送信されているものの、ネットワークを介して暗号鍵を送信するものであり、不正な第三者に取得される危険性が残るものであった。
【０００６】
そこで、本発明は、更新データを適用する機器に対してより安全に更新データを送信することが可能な機器統合システム及び更新管理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。また、符号を付して説明した構成は、適宜改良してもよく、また、少なくとも一部を他の構成物に代替してもよい。
【０００８】
第１の発明は、更新データの適用対象である機器（４）と、前記機器に対して接続され、外部のコンピュータとの間で通信可能な機器仲介装置（２）と、を備えた機器統合システム（１）であって、前記機器仲介装置は、前記機器に適用する更新データが保存された外部のコンピュータの保存先を示す保存先情報と、前記更新データに基づいて生成されたデータの検証に用いる期待値とを含み、暗号化がされたパッケージデータを、前記機器仲介装置が有する装置復号鍵で復号して、前記保存先情報と前記期待値とを得る復号手段（２２）と、前記復号手段によって得られた前記保存先情報が示す保存先にアクセスして暗号化済更新データを受信し、前記機器に受け渡す暗号化済更新データ受渡手段（２４）と、を備え、前記機器は、前記暗号化済更新データ受渡手段により受信した前記暗号化済更新データを、前記機器が有する機器暗号鍵でさらに暗号化して得た二重暗号更新データからデータの検証に用いる期待値を生成する期待値生成手段（４１）と、前記期待値生成手段によって生成された期待値と、前記機器仲介装置の前記復号手段により得た前記期待値とを照合する照合手段（４２）と、前記照合手段によって照合できた場合に、前記暗号化済更新データ受渡手段により受信した前記暗号化済更新データを、前記機器が有する業者復号鍵で復号して更新データを得る更新データ取得手段（４３）と、前記更新データ取得手段によって得た更新データを、前記機器に適用する更新手段（４４）と、を備えること、を特徴とする機器統合システムである。
第２の発明は、第１の発明の機器統合システム（１）において、前記機器（４）は、前記照合手段（４２）によって照合できなかった場合に、前記暗号化済更新データ受渡手段（２４）により受信した前記暗号化済更新データを削除するデータ削除手段（４５）を備えること、を特徴とする機器統合システムである。
第３の発明は、第１の発明又は第２の発明の機器統合システムにおいて、前記パッケージデータは、さらに前記機器仲介装置を識別する装置識別情報が対応付けられていること、を特徴とする機器統合システムである。
第４の発明は、第１の発明から第３の発明までのいずれかの機器統合システムにおいて、複数の前記機器を備え、前記パッケージデータは、さらに前記機器を識別する機器識別情報を含んで暗号化がされたものであること、を特徴とする機器統合システムである。
第５の発明は、第１の発明から第４の発明までのいずれかの機器統合システム（１）において、前記機器仲介装置（２）は、予め前記装置復号鍵（９１ｂ）を記憶しており、前記機器（４）は、予め前記機器暗号鍵（９２）及び前記業者復号鍵（９４ｂ）を記憶しており、前記機器仲介装置が有する前記装置復号鍵と、前記機器が有する前記業者復号鍵とは、異なる鍵であること、を特徴とする機器統合システムである。
【０００９】
第６の発明は、第１の発明から第５の発明までのいずれかの機器統合システム（１）と、前記機器統合システムを管理する更新管理サーバ（７）と、前記更新データを管理する更新データサーバ（６）と、を備えた更新管理システム（１００）であって、前記更新データサーバは、前記機器（４）に適用する前記更新データを、前記機器が有する前記業者復号鍵（９４ｂ）と対になる第１暗号鍵（９４ａ）で暗号化して得た前記暗号化済更新データを、暗号化済更新データ記憶部（６８）に記憶させる更新データ暗号化処理手段（６１）と、前記暗号化済更新データ記憶部に記憶された前記暗号化済更新データを、前記更新管理サーバに送信する暗号化済更新データ送信手段（６２）と、を備え、前記更新管理サーバは、前記更新データサーバから前記暗号化済更新データを受信する暗号化済更新データ受信手段（７１）と、前記暗号化済更新データを、前記機器が有する前記機器暗号鍵と同一の第２暗号鍵（９２）で暗号化して得た二重暗号更新データからデータの検証に用いる期待値を生成する期待値生成手段（７２）と、前記暗号化済更新データ記憶部における前記暗号化済更新データの保存先を示す前記保存先情報と、前記期待値生成手段によって生成した前記期待値とを含んでパッケージ化し、前記機器仲介装置（２）が有する前記装置復号鍵（９１ｂ）と対になる第３暗号鍵（９１ａ）で暗号化した前記パッケージデータを生成するパッケージ生成手段（７３）と、前記パッケージ生成手段によって生成した前記パッケージデータを、前記機器仲介装置に送信するパッケージ送信手段（７４）と、を備え、前記機器仲介装置は、前記パッケージデータを受信するパッケージ受信手段（２１）を備えること、を特徴とする更新管理システムである。
第７の発明は、第６の発明の更新管理システム（１００）において、前記更新管理サーバ（７）で使用する前記第２暗号鍵（９２）及び前記第３暗号鍵（９１ａ）を管理する鍵管理サーバ（８）を備えること、を特徴とする更新管理システムである。
第８の発明は、第６の発明又は第７の発明の更新管理システム（２００）において、前記パッケージデータは、さらにワンタイムパスワードを含んで暗号化がされたものであり、前記機器仲介装置（２０２）の前記復号手段（２２）は、前記ワンタイムパスワードをさらに得るものであり、前記機器仲介装置は、前記復号手段によって得られた前記保存先情報に基づく前記更新データサーバ（２０６）に対して、前記ワンタイムパスワードを送信するパスワード送信手段（２２３）を備え、前記更新データサーバは、前記ワンタイムパスワードによる認証を、前記更新管理サーバ（２０７）に依頼する認証依頼手段（２６３）を備え、前記機器仲介装置の前記暗号化済更新データ受渡手段（２２４）は、前記ワンタイムパスワードによる認証ができた場合に限り、前記更新データサーバから前記暗号化済更新データを受信し、前記機器（４）に受け渡すこと、を特徴とする更新管理システムである。
【発明の効果】
【００１０】
本発明によれば、更新データを適用する機器に対してより安全に更新データを送信することが可能な機器統合システム及び更新管理システムを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】第１実施形態に係る更新管理システムの全体構成図である。
【図２】第１実施形態に係る機器統合システムの全体構成図及び機器仲介装置の機能ブロック図である。
【図３】第１実施形態に係るＥＣＵ及び更新データサーバの機能ブロック図である。
【図４】第１実施形態に係る更新管理サーバ及び鍵管理サーバの機能ブロック図である。
【図５】第１実施形態に係る更新管理システムで用いる鍵を説明するための図である。
【図６】第１実施形態に係る更新管理システムの全体の処理の流れを説明するための図である。
【図７】第１実施形態に係る更新データサーバの更新データ保存処理を示すフローチャートである。
【図８】第１実施形態に係る更新管理サーバのパッケージ配信処理を示すフローチャートである。
【図９】第１実施形態に係る更新管理サーバの記憶部に記憶された管理データの例を示す図である。
【図１０】第１実施形態に係る機器仲介装置のデータ受渡処理を示すフローチャートである。
【図１１】第１実施形態に係るＥＣＵのデータ更新処理を示すフローチャートである。
【図１２】第２実施形態に係る更新管理システムの全体の処理の流れを説明するための図である。
【図１３】第２実施形態に係る機器統合システムの全体構成図及び機器仲介装置の機能ブロック図である。
【図１４】第２実施形態に係る更新データサーバ及び更新管理サーバの機能ブロック図である。
【図１５】第２実施形態に係る更新管理サーバのパッケージ配信処理を示すフローチャートである。
【図１６】第２実施形態に係る機器仲介装置のデータ受渡処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明を実施するための形態について、図を参照しながら説明する。なお、これは、あくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
（第１実施形態）
＜更新管理システム１００＞
図１は、第１実施形態に係る更新管理システム１００の全体構成図である。
更新管理システム１００では、車両Ｃの内部に組み込まれて車両Ｃを動作させるＥＣＵのファームウェアの更新データを、通信ネットワーク等を介してＥＣＵに安全に送信し、更新データをＥＣＵに適用するためのシステムである。
【００１３】
図１に示す更新管理システム１００は、機器統合システム１と、更新データサーバ６と、更新管理サーバ７と、鍵管理サーバ８とを備えている。そして、更新管理システム１００は、車両Ｃの内部に機器統合システム１を備える。機器統合システム１は、基地局Ｂ及び通信ネットワークＮを介して、更新データサーバ６及び更新管理サーバ７に対して通信可能に接続されている。また、更新管理サーバ７は、鍵管理サーバ８に対して通信可能に接続されている。
基地局Ｂは、無線通信の基地局であって、例えば、Ｗｉ−Ｆｉ等の無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の基地局や、通信事業者の携帯端末通信網用の基地局である。
通信ネットワークＮは、例えば、インターネット回線等である。
【００１４】
更新データサーバ６は、各業者に設けられたサーバである。図１では、業者Ｘと業者Ｙとの２つの業者が有する更新データサーバ６Ｘ及び６Ｙを示しているが、他の業者の有する更新データサーバ６があってもよい。業者とは、ここでは、車両Ｃに組み込まれている後述するＥＣＵ４（機器）やＥＣＵ４を動作させるファームウェアを開発する企業をいう。
更新管理サーバ７は、例えば、車両Ｃを製造する車両メーカが有するサーバである。更新管理サーバ７は、車両Ｃごとの更新データの更新状況を管理する。
鍵管理サーバ８は、更新管理サーバ７で用いる鍵を管理するサーバである。鍵管理サーバ８は、例えば、更新管理システム１００の仕組みを運営するシステム運営会社が有する。
【００１５】
次に、各装置について、機能を中心に説明する。
図２は、第１実施形態に係る機器統合システム１の全体構成図及び機器仲介装置２の機能ブロック図である。
図３は、第１実施形態に係るＥＣＵ４及び更新データサーバ６の機能ブロック図である。
図４は、第１実施形態に係る更新管理サーバ７及び鍵管理サーバ８の機能ブロック図である。
図５は、第１実施形態に係る更新管理システム１００で用いる鍵を説明するための図である。
【００１６】
＜機器統合システム１＞
図２に示すように、機器統合システム１は、機器仲介装置２と、複数のＥＣＵ４（ＥＣＵＡ，４Ｂ，４Ｃ，・・・）とを有する。以降において、ＥＣＵ４Ａ，４Ｂ，４Ｃ，・・・を区別しない場合には、以降において、単にＥＣＵ４として説明する。
【００１７】
＜機器仲介装置２＞
機器仲介装置２は、車両Ｃの内部に組み込まれてＥＣＵ４に対して接続された装置であって、例えば、リプログコントローラである。機器仲介装置２は、各ＥＣＵ４のゲートウェイの役割を有する。
機器仲介装置２は、制御部２０と、記憶部３０と、接続ＩＦ（インタフェース）部３８と、通信部３９とを備える。
制御部２０は、機器統合システム１の全体を制御するＣＰＵ（中央処理装置）である。制御部２０は、記憶部３０に記憶されているオペレーティングシステム（ＯＳ）や各種アプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し各種機能を実行する。
【００１８】
制御部２０は、パッケージ受信部２１（パッケージ受信手段）と、パッケージ復号部２２（復号手段）と、暗号化済更新データ受渡部２４（暗号化済更新データ受渡手段）とを備える。
パッケージ受信部２１は、更新管理サーバ７で生成され、暗号化されたパッケージデータを、更新管理サーバ７から受信する。パッケージデータは、機器統合システム１に含まれるいずれかのＥＣＵ４に適用する更新データの保存先を示すＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）（保存先情報）と、暗号化済更新データから生成したデータの検証に用いる計算値であるハッシュ値（期待値）とを含み、ＵＲＩとハッシュ値とを対にした組み合わせを１以上含むデータである。更新データの保存先を示すＵＲＩは、例えば、更新データサーバ６の暗号化済更新データ記憶部６８のアドレスを含む。
【００１９】
パッケージ復号部２２は、パッケージ受信部２１が受信したパッケージデータを、機器仲介装置２の鍵記憶部３２に記憶された装置復号鍵で復号して、更新データのＵＲＩと、ハッシュ値とを得る。
暗号化済更新データ受渡部２４は、更新データのＵＲＩが示す更新データの保存先にアクセスして、暗号化済更新データを受信する。また、暗号化済更新データ受渡部２４は、受信した暗号化済更新データを、更新データを適用する対象のＥＣＵ４に受け渡す。
【００２０】
記憶部３０は、制御部２０が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部３０は、プログラム記憶部３１と、鍵記憶部３２とを備える。
プログラム記憶部３１は、機器仲介装置２の制御部２０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
鍵記憶部３２は、装置復号鍵を記憶する記憶領域である。装置復号鍵は、車両Ｃごとの固有の鍵であり、例えば、車両Ｃに機器仲介装置２を組み込む前に、予め鍵記憶部３２に記憶させたものである。
接続ＩＦ部３８は、複数のＥＣＵ４との間を接続するための、例えば、車載ネットワークのインタフェースである。
通信部３９は、基地局Ｂ及び通信ネットワークＮを介して更新データサーバ６及び更新管理サーバ７との間の通信を行うためのインタフェースである。
【００２１】
＜ＥＣＵ４＞
ＥＣＵ４は、車両Ｃの機器統合システム１に有する電子制御装置である。各ＥＣＵ４は、例えば、モータ、ドアのオートロック、空調等の各種の電子機器の制御を行う。
図３（Ａ）に示すように、ＥＣＵ４は、制御部４０と、記憶部５０と、接続ＩＦ部５８とを備える。
制御部４０は、ＥＣＵ４の全体を制御するＣＰＵである。制御部４０は、記憶部５０に記憶されているＯＳやアプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し各種機能を実行する。
なお、制御部４０は、外付けのＳＥ（セキュアエレメント）によって実現してもよい。
【００２２】
制御部４０は、ハッシュ値生成部４１（期待値生成手段）と、ハッシュ値照合部４２（照合手段）と、更新データ取得部４３（更新データ取得手段）と、データ更新部４４（更新手段）と、データ削除部４５（データ削除手段）とを備える。
ハッシュ値生成部４１は、機器仲介装置２から受け取った暗号化済更新データを、記憶部５０に一時保存し、暗号化済更新データに対して鍵記憶部５２に記憶されたＥＣＵ暗号鍵（機器暗号鍵）で暗号化した二重暗号更新データからハッシュ値を生成する。ここで、ハッシュ値は、例えば、ＳＨＡ−２５６のハッシュ関数によるハッシュ演算によって生成されるものであり、公知の技術によって行うことができる。
【００２３】
ハッシュ値照合部４２は、ハッシュ値生成部４１によって生成したハッシュ値と、機器仲介装置２がパッケージデータを復号して得たハッシュ値とを照合する。ここで、ハッシュ値生成部４１によって生成したハッシュ値と、機器仲介装置２がパッケージデータを復号して得たハッシュ値とは、同一の暗号化済更新データと、同一のＥＣＵ暗号鍵とによって生成するため、通信途中で改ざん等がされない限りにおいて一致する。
更新データ取得部４３は、ハッシュ値照合部４２による照合の結果、ハッシュ値が一致した（照合できた）場合に、機器仲介装置２から受け取った暗号化済更新データに対して、鍵記憶部５２に記憶された業者復号鍵で復号して、更新データを得る。
【００２４】
データ更新部４４は、更新データ取得部４３によって得た更新データを、プログラム記憶部５１に記憶された該当のファームウェアに対して適用して、ファームウェアのアップデートを行う。
データ削除部４５は、ハッシュ値照合部４２による照合の結果、ハッシュ値が不一致だった（照合できなかった）場合に、機器仲介装置２から受け取った暗号化済更新データを、記憶部５０から削除する。
【００２５】
記憶部５０は、制御部４０が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部５０は、プログラム記憶部５１と、鍵記憶部５２とを備える。
プログラム記憶部５１は、ＥＣＵ４の制御部４０の各種機能を実行するための各種のプログラムやファームウェアを記憶する記憶領域である。
鍵記憶部５２は、ＥＣＵ暗号鍵と、業者復号鍵とを記憶する記憶領域である。ＥＣＵ暗号鍵は、ＥＣＵ４の種類に対応した鍵である。また、業者復号鍵は、業者ごとに有する鍵である。ＥＣＵ暗号鍵と、業者復号鍵とは、例えば、車両ＣにＥＣＵ４を組み込む際に、予め鍵記憶部５２に記憶させておく。
接続ＩＦ部５８は、機器統合システム１との間を接続するためのインタフェースである。
【００２６】
＜更新データサーバ６＞
更新データサーバ６は、ＥＣＵ４に適用する更新データを暗号化して、記憶部６５に記憶させる。また、更新データサーバ６は、暗号化済更新データを、更新管理サーバ７に送信する。さらに、更新データサーバ６は、機器仲介装置２からのアクセスを受け付けて、該当の暗号化済更新データを、機器仲介装置２に送信する。
図３（Ｂ）に示すように、更新データサーバ６は、制御部６０と、記憶部６５と、通信部６９とを備える。
制御部６０は、更新データサーバ６の全体を制御するＣＰＵである。制御部６０は、記憶部６５に記憶されているＯＳや各種アプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、各種機能を実行する。
【００２７】
制御部６０は、更新データ暗号化処理部６１（更新データ暗号化処理手段）と、暗号化済更新データ送信部６２（暗号化済更新データ送信手段）とを備える。
更新データ暗号化処理部６１は、ＥＣＵ４に適用する更新データを、業者ごとに有する業者暗号鍵で暗号化して、暗号化済更新データを得る。
暗号化済更新データ送信部６２は、暗号化済更新データを、更新管理サーバ７に対して送信する。
【００２８】
記憶部６５は、制御部６０が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部６５は、プログラム記憶部６６と、鍵記憶部６７と、暗号化済更新データ記憶部６８とを備える。
プログラム記憶部６６は、更新データサーバ６の制御部６０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
鍵記憶部６７は、業者暗号鍵を記憶する記憶領域である。
暗号化済更新データ記憶部６８は、暗号化済更新データを記憶する記憶領域である。暗号化済更新データ記憶部６８は、例えば、フォルダ形式になっている。そして、暗号化済更新データ記憶部６８は、フォルダごとに１つの暗号化済更新データを格納する。
通信部６９は、通信ネットワークＮを介して更新管理サーバ７や機器仲介装置２との間の通信を行うためのインタフェースである。
【００２９】
＜更新管理サーバ７＞
更新管理サーバ７は、更新データサーバ６から受信した暗号化済更新データに基づいて、機器仲介装置２に送信するパッケージデータを生成する。
図４（Ａ）に示すように、更新管理サーバ７は、制御部７０と、記憶部７５と、通信部７９とを備える。
制御部７０は、更新管理サーバ７の全体を制御するＣＰＵである。制御部７０は、記憶部７５に記憶されているＯＳや各種アプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、各種機能を実行する。
【００３０】
制御部７０は、暗号化済更新データ受信部７１（暗号化済更新データ受信手段）と、ハッシュ値生成部７２（期待値生成手段）と、パッケージ生成部７３（パッケージ生成手段）と、パッケージ送信部７４（パッケージ送信手段）とを備える。
暗号化済更新データ受信部７１は、更新データサーバ６が送信した暗号化済更新データを受信する。
ハッシュ値生成部７２は、暗号化済更新データを復号した更新データを適用するＥＣＵ４に対応したＥＣＵ暗号鍵（第２暗号鍵）を、鍵管理サーバ８から取得する。そして、ハッシュ値生成部７２は、暗号化済更新データを、ＥＣＵ暗号鍵でさらに暗号化し、二重暗号更新データを得る。さらに、ハッシュ値生成部７２は、二重暗号更新データからハッシュ値を生成する。
【００３１】
パッケージ生成部７３は、更新データサーバ６での暗号化済更新データの保存先を示すＵＲＩと、ハッシュ値生成部７２によって生成したハッシュ値とを含んでパッケージ化する。そして、パッケージ生成部７３は、パッケージ化したものに、このパッケージ化したものを送信する機器仲介装置２の装置暗号鍵（第３暗号鍵）で暗号化してパッケージデータを生成する。
パッケージ送信部７４は、パッケージ生成部７３で生成した暗号化されたパッケージデータを、機器仲介装置２に送信する。
【００３２】
記憶部７５は、制御部７０が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部７５は、プログラム記憶部７６を備える。
プログラム記憶部７６は、更新管理サーバ７の制御部７０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
通信部７９は、通信ネットワークＮを介して更新データサーバ６、鍵管理サーバ８、機器仲介装置２等との間の通信を行うためのインタフェースである。
【００３３】
＜鍵管理サーバ８＞
図４（Ｂ）に示す鍵管理サーバ８は、制御部８０と、記憶部８５と、通信部８９とを備える。
制御部８０は、鍵管理サーバ８の全体を制御するＣＰＵである。制御部８０は、記憶部８５に記憶されているＯＳや各種アプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、各種機能を実行する。
【００３４】
記憶部８５は、制御部８０が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部８５は、鍵記憶部８７を備える。
鍵記憶部８７は、装置暗号鍵と、ＥＣＵ暗号鍵とを記憶する記憶領域である。
通信部８９は、通信ネットワークＮを介して更新管理サーバ７との間の通信を行うためのインタフェースである。
【００３５】
＜鍵情報の説明＞
次に、更新管理システム１００で用いる鍵情報について説明する。
図５は、第１実施形態に係る更新管理システム１００で用いる鍵を説明するための図である。
この例では、車両Ｃが有する機器仲介装置２には、２つのＥＣＵ４（ＥＣＵ４Ａ、ＥＣＵ４Ｂ）を有する。
更新データサーバ６は、各更新データサーバ６を有する業者の業者暗号鍵を有する。例えば、業者Ｘが更新データサーバ６Ｘを有する場合、更新データサーバ６Ｘは、業者暗号鍵９４ａＸ（第１暗号鍵）を備える。また、例えば、業者Ｙが更新データサーバ６Ｙを有する場合、更新データサーバ６Ｙは、業者暗号鍵９４ａＹ（第１暗号鍵）を備える。業者暗号鍵９４ａＸと、９４ａＹとは、異なる暗号鍵である。
【００３６】
鍵管理サーバ８は、更新管理サーバ７で使用する鍵を保管及び管理する。鍵管理サーバ８は、車両Ｃごとに、装置暗号鍵９１ａと、ＥＣＵ４ＡのＥＣＵ暗号鍵９２と、ＥＣＵ４ＢのＥＣＵ暗号鍵９３とを備える。ＥＣＵ暗号鍵９２は、ＥＣＵ４Ａに対応した暗号化済更新データを暗号化して、ハッシュ値を生成する際に用いる。ＥＣＵ暗号鍵９３は、ＥＣＵ４Ｂに対応した暗号化済更新データを暗号化して、ハッシュ値を生成する際に用いる。装置暗号鍵９１ａは、車両Ｃの機器仲介装置２に送信するパッケージデータを暗号化する際に用いられる。
【００３７】
車両Ｃの機器仲介装置２は、装置復号鍵９１ｂを備える。装置復号鍵９１ｂは、更新管理サーバ７から受信した暗号化されたパッケージデータを復号するのに用いる。よって、鍵管理サーバ８に記憶された装置暗号鍵９１ａと、機器仲介装置２に記憶された装置復号鍵９１ｂとは、対になった鍵である。
ＥＣＵ４Ａは、業者復号鍵９４ｂＸと、ＥＣＵ暗号鍵９２とを備える。業者復号鍵９４ｂＸは、ＥＣＵ４Ａに更新データを適用する際に、暗号化済更新データを復号するために用いる。よって、更新データサーバ６Ｘに記憶された業者暗号鍵９４ａＸと、業者復号鍵９４ｂＸとは、対になった鍵である。ＥＣＵ暗号鍵９２は、更新データの正当性を確認するために、暗号化済更新データを暗号化してハッシュ値を生成する際に用いる。よって、鍵管理サーバ８に記憶されたＥＣＵ暗号鍵９２と、ＥＣＵ４Ａに記憶されたＥＣＵ暗号鍵９２は、同一の鍵である。
同様に、ＥＣＵ４Ｂは、業者復号鍵９４ｂＹと、ＥＣＵ暗号鍵９３とを備える。
【００３８】
＜処理の説明＞
次に、更新管理システム１００による処理について説明する。
図６は、第１実施形態に係る更新管理システム１００の全体の処理の流れを説明するための図である。
まず、更新管理サーバ７を有する車両メーカは、ＥＣＵ４の更新が必要になった場合に、更新データサーバ６を有する該当のＥＣＵ４のファームウェアを作成した業者に対して更新データの作成を指示する。
指示された業者は、ファームウェアの更新データを準備して更新データサーバ６に記憶させる。そして、更新データサーバ６は、（１）において、業者暗号鍵で更新データを暗号化し、暗号化済更新データを生成する。更新データサーバ６は、暗号化済更新データを、機器仲介装置２がアクセス可能な領域に保存しておくと共に、更新管理サーバ７に送信する（２）。
【００３９】
更新管理サーバ７は、（３）において、暗号化済更新データをＥＣＵ暗号鍵で暗号化してハッシュ値を生成する。また、更新管理サーバ７は、生成したハッシュ値と、更新データサーバ６の暗号化済更新データの保存先を示すＵＲＩとを含むパッケージデータを生成し、装置暗号鍵でパッケージデータを暗号化し、暗号化済パッケージデータを生成する。そして、更新管理サーバ７は、（４）において、暗号化済パッケージデータを、機器仲介装置２に送信する。
【００４０】
機器仲介装置２では、（５）において、暗号化済パッケージデータを装置復号鍵で復号し、パッケージデータを得る。また、機器仲介装置２では、（６）において、パッケージデータに含まれる更新データサーバ６の暗号化済更新データの保存先を示すＵＲＩによって、暗号化済更新データを得ると共に、ＥＣＵ４に暗号化済更新データを受け渡す。
【００４１】
ＥＣＵ４では、暗号化済更新データをＥＣＵ暗号鍵で暗号化し、ハッシュ値を生成し、機器仲介装置２に有するハッシュ値と照合する。そして、ハッシュ値が一致すると、ＥＣＵ４は、暗号化済更新データを業者復号鍵で復号することで得た更新データを、ＥＣＵ４に適用する。
【００４２】
次に、各装置の処理の詳細について、フローチャートに基づき説明する。
最初に、更新データサーバ６での処理について説明する。
図７は、第１実施形態に係る更新データサーバ６の更新データ保存処理を示すフローチャートである。
この処理は、ＥＣＵ４に更新データを適用する必要が生じた場合に行われる。
【００４３】
図７のステップＳ（以下、単に「Ｓ」という。）１０において、更新データサーバ６の制御部６０は、更新データを作成する。ここで、更新データサーバ６で更新データを作成せずともよく、例えば、別のサーバ等によって作成された更新データを、更新データサーバ６が受領してもよい。
Ｓ１１において、制御部６０（更新データ暗号化処理部６１）は、鍵記憶部６７に記憶された業者暗号鍵を用いて更新データを暗号化し、暗号化済更新データを生成する。図５に示す更新データサーバ６Ｘでの処理の場合、制御部６０は、業者暗号鍵９４ａＸを用いて更新データを暗号化する。
【００４４】
Ｓ１２において、制御部６０（更新データ暗号化処理部６１）は、暗号化済更新データを、暗号化済更新データ記憶部６８に記憶させる。そして、制御部６０は、保存先のＵＲＩを得る。
Ｓ１３において、制御部６０（暗号化済更新データ送信部６２）は、暗号化済更新データを、更新管理サーバ７に送信する。その際、制御部６０は、保存先を示すＵＲＩを、暗号化済更新データに対応付けて送信する。その後、制御部６０は、本処理を終了する。
【００４５】
次に、更新管理サーバ７での処理について説明する。
図８は、第１実施形態に係る更新管理サーバ７のパッケージ配信処理を示すフローチャートである。
図９は、第１実施形態に係る更新管理サーバ７の記憶部７５に記憶された管理データ７５ａの例を示す。
図８のＳ２０において、更新管理サーバ７の制御部７０（暗号化済更新データ受信部７１）は、更新データサーバ６から暗号化済更新データを受信する。
【００４６】
Ｓ２１において、制御部７０（ハッシュ値生成部７２）は、暗号化済更新データに対応するＥＣＵ暗号鍵を、鍵管理サーバ８から取得して、暗号化済更新データを暗号化し、二重暗号更新データを得る。
Ｓ２２において、制御部７０（ハッシュ値生成部７２）は、二重暗号更新データからハッシュ値を生成する。
Ｓ２３において、制御部７０（パッケージ生成部７３）は、暗号化済更新データを保存している更新データサーバ６の保存先を示すＵＲＩと、ハッシュ値とを含むパッケージデータを生成する。
【００４７】
Ｓ２４において、制御部７０（パッケージ生成部７３）は、装置暗号鍵を、鍵管理サーバ８から取得して、生成したパッケージデータを暗号化する。
Ｓ２５において、制御部７０（パッケージ送信部７４）は、暗号化したパッケージデータを、装置暗号鍵に対応した機器仲介装置２を有する車両Ｃに送信する。その後、制御部７０は、本処理を終了する。
【００４８】
なお、制御部７０は、図９に示す管理データ７５ａを作成して、記憶部７５に記憶することで、車両Ｃごとの更新データの適用状況について管理をしてもよい。
ここで、図９に示す管理データ７５ａについて説明する。
図９（Ａ）は、車両ＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）（装置識別情報）が「０Ａ１ｂＣＤ２Ｅ＿ＦＧ２９８７１」である車両Ｃが有するＥＣＵ４と、車両ＩＤが「０Ａ１ｂＣＤ２Ｅ＿ＦＧ２９８７２」である車両Ｃが有するＥＣＵ４とに対するファームウェアの更新を管理する管理データ７５ａである。管理データ７５ａは、ファームウェア情報と、保存先と、ハッシュ値と、対象ＥＣＵと、車両ＩＤと、ステータスとを有する。なお、車両ＩＤは、機器仲介装置２を識別する識別情報であってもよいし、機器仲介装置２を一意に特定できる識別情報であってもよい。
【００４９】
ファームウェア情報は、ファームウェア名を示すものであり、ファームウェアのデータ名であってもよい。
保存先は、更新データサーバ６に記憶された暗号化済更新データのアドレスである。
ハッシュ値は、更新管理サーバ７での処理によって生成されたものである。
対象ＥＣＵは、ファームウェアを適用するＥＣＵ４の名称である。
車両ＩＤは、車両Ｃを識別する識別情報である。
ステータスは、ファームウェアの適用状況を示す。
【００５０】
図９（Ａ）は、１つの車両Ｃに対して対象のＥＣＵ４と更新データとが１種の場合を示した。次に、１つの車両Ｃに対して対象のＥＣＵ４と更新データとが複数の場合について、図９（Ｂ）に基づき説明する。
図９（Ｂ）は、車両ＩＤが「０Ａ１ｂＣＤ２Ｅ＿ＦＧ２９８７３」である車両Ｃが有する複数のＥＣＵ４に対するファームウェアの更新を管理する管理データ７５ａである。図９（Ｂ）では、１つの車両Ｃが有する複数のＥＣＵ４の各々に、ファームウェアの更新が必要であることを示す。
【００５１】
次に、機器統合システム１での処理について説明する。
図１０は、第１実施形態に係る機器仲介装置２のデータ受渡処理を示すフローチャートである。
Ｓ３０において、機器仲介装置２の制御部２０（パッケージ受信部２１）は、更新管理サーバ７から暗号化されたパッケージデータを受信する。
Ｓ３１において、制御部２０（パッケージ復号部２２）は、暗号化がされたパッケージデータを復号し、更新データサーバ６の保存先を示すＵＲＩと、ハッシュ値とを得る。制御部２０は、ＵＲＩとハッシュ値とを、記憶部３０に一時記憶させる。
Ｓ３２において、制御部２０（暗号化済更新データ受渡部２４）は、更新データサーバ６の保存先を示すＵＲＩにアクセスし、暗号化済更新データを取得する。
【００５２】
Ｓ３３において、制御部２０（暗号化済更新データ受渡部２４）は、取得した暗号化済更新データを、適用対象のＥＣＵ４に送信する。
Ｓ３４において、制御部２０は、ＥＣＵ４から処理結果を受信する。なお、ＥＣＵ４から処理結果を受信するまで、制御部２０は、本処理で待機する。
Ｓ３５において、制御部２０は、受信した処理結果を、更新管理サーバ７に送信する。その後、制御部２０は、本処理を終了する。
【００５３】
なお、更新管理サーバ７では、制御部７０が処理結果を受信したことに応じて、制御部７０は、記憶部７５の管理データ７５ａのステータスを、処理結果の内容に更新する。
このようにすることで、更新管理サーバ７は、各車両Ｃに対する更新データの適用状況を管理することができる。
【００５４】
次に、ＥＣＵ４での処理について説明する。
図１１は、第１実施形態に係るＥＣＵのデータ更新処理を示すフローチャートである。
図１１のＳ４０において、ＥＣＵ４の制御部４０（ハッシュ値生成部４１）は、機器仲介装置２から受け付けた暗号化済更新データを記憶部５０に記憶し、さらに、ＥＣＵ暗号鍵を用いて暗号化して、二重暗号更新データを得る。
Ｓ４１において、制御部４０（ハッシュ値生成部４１）は、二重暗号更新データからハッシュ値を生成する。
【００５５】
Ｓ４２において、制御部４０（ハッシュ値照合部４２）は、Ｓ４１で生成したハッシュ値と、機器仲介装置２の記憶部３０に一時記憶されたハッシュ値とを照合する。ここで、Ｓ４１でのハッシュ値の生成処理と、更新管理サーバ７でのハッシュ値の生成処理とは、同じ暗号化済更新データに対して同じＥＣＵ暗号鍵を用いて暗号化した二重暗号更新データからハッシュ値を生成している。よって、通常であれば、ハッシュ値は一致する。他方、通信ネットワークＮを用いた通信中等、機器統合システム１がデータを受信する前に、暗号化済更新データが改ざんされた場合等には、ハッシュ値が一致しない。
【００５６】
Ｓ４３において、制御部４０（ハッシュ値照合部４２）は、照合の結果、ハッシュ値が一致したか否かを判断する。ハッシュ値が一致した場合（Ｓ４３：ＹＥＳ）には、制御部４０は、処理をＳ４４に移す。他方、ハッシュ値が一致しない場合（Ｓ４３：ＮＯ）には、制御部４０は、処理をＳ４６に移す。
Ｓ４４において、制御部４０（更新データ取得部４３）は、業者復号鍵を用いて、暗号化済更新データを復号し、更新データを得る。
【００５７】
Ｓ４５において、制御部４０（データ更新部４４）は、更新データをＥＣＵ４に適用し、ファームウェアをアップデートする。その後、制御部４０は、処理をＳ４７に移す。
他方、Ｓ４６において、制御部４０（データ削除部４５）は、暗号化済更新データを、記憶部５０から削除する。
Ｓ４７において、制御部４０は、ＥＣＵ４での処理結果を、機器仲介装置２に対して送信する。更新データをＥＣＵ４に適用した場合（Ｓ４５）には、制御部４０は、処理結果として、例えば、成功の旨を送信する。更新データをＥＣＵ４に適用しなかった場合（Ｓ４６）には、制御部４０は、処理結果として、例えば、失敗の旨を送信する。その後、制御部４０は、本処理を終了する。
【００５８】
このように、第１実施形態の更新管理システム１００によれば、以下のような効果がある。
（１）通信ネットワークＮによる通信中は、ＥＣＵ４に適用する更新データを、常に暗号化された状態で送信する。また、暗号鍵や復号鍵等の暗号／復号に用いる鍵は、予め各装置が有し、通信ネットワークＮを経由しない。よって、不正な第三者に更新データを取得される危険性が低減でき、より安全に更新データをＥＣＵ４に送信することができる。
（２）更新管理サーバ７は、機器仲介装置２に対して更新データを保存する更新データサーバ６の保存先を示すＵＲＩと、ハッシュ値とをパッケージ化して暗号化したデータを送信する。よって、通信ネットワークＮを通過するデータ量が少なくて済む。
（３）ハッシュ値を照合することで、不正な改ざん等がされていないことを確認でき、更新データの信頼性が担保できる。特に、車両Ｃが備えるＥＣＵ４は、不正なデータにより更新された場合には、車両Ｃの特性により命に関わる問題になり得るため、更新データの信頼性は重要である。
【００５９】
（４）ハッシュ値を照合し、不一致であった場合には、受信した暗号化済更新データを削除するので、ＥＣＵ４では復号して更新データを得ることがなく、誤って不正な更新データをＥＣＵ４に適用せずに済む。
（５）装置暗号鍵と、ＥＣＵ暗号鍵とを、鍵管理サーバ８が車両Ｃごとに備えるので、鍵の管理を一元化できる。
【００６０】
（６）更新データサーバ６では、更新データごとにデータの格納先を指定できるように記憶するので、更新データの取得をより簡単かつ正確に行うことができる。
また、車両Ｃごとに更新データを用意することがないため、データの重複を抑えることができ、ＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｅｌｉｖｅｒｙ  Ｎｅｔｗｏｒｋ）が利用可能となる。
【００６１】
（第２実施形態）
第２実施形態では、さらにワンタイムパスワードを用いて、より安全に更新データを適用するものを説明する。なお、以降の説明において、上述した第１実施形態と同様の機能を果たす部分には、同一の符号又は末尾に同一の符号を付して、重複する説明を適宜省略する。
【００６２】
＜更新管理システム２００＞
図１２は、第２実施形態に係る更新管理システム２００の全体の処理の流れを説明するための図である。
図１２に示す更新管理システム２００は、機器統合システム２０１と、更新データサーバ２０６と、更新管理サーバ２０７と、鍵管理サーバ８（図示せず）とを備えている。
（１）から（６）までの処理の大まかな流れは、第１実施形態（図６）と同様である。以下において、第１実施形態と異なる点について説明する。
【００６３】
（３）において、更新管理サーバ２０７は、暗号化済更新データをＥＣＵ暗号鍵で暗号化してハッシュ値を生成する。また、更新管理サーバ２０７は、更新データサーバ２０６の暗号化済更新データの保存先を示すＵＲＩごとにワンタイムパスワードを発行する（Ａ）。そして、更新管理サーバ２０７は、生成したハッシュ値と、ＵＲＩと、ワンタイムパスワードとを含むパッケージデータを生成し、装置暗号鍵でパッケージデータを暗号化し、暗号化済パッケージデータを生成する。
【００６４】
機器仲介装置２０２では、（６）において、パッケージデータに含まれるＵＲＩにより更新データサーバ２０６の暗号化済更新データの保存先にアクセスする際、ワンタイムパスワードを更新データサーバ２０６に送信する（Ｂ）。ワンタイムパスワードを受信した更新データサーバ２０６は、配信ＡＰＩによって、更新管理サーバ２０７にワンタイムパスワードを送信し、認証を依頼する（Ｃ）。更新管理サーバ２０７において認証ができた場合に、機器仲介装置２０２は、更新データサーバ２０６から暗号化済更新データを得ると共に、ＥＣＵ４に暗号化済更新データを受け渡す。
【００６５】
次に、各装置について、機能を中心に説明する。
図１３は、第２実施形態に係る機器統合システム２０１の全体構成図及び機器仲介装置２０２の機能ブロック図である。
図１４は、第２実施形態に係る更新データサーバ２０６及び更新管理サーバ２０７の機能ブロック図である。
＜機器統合システム２０１＞
図１３に示すように、機器統合システム２０１は、機器仲介装置２０２と、複数のＥＣＵ４とを有する。
【００６６】
＜機器仲介装置２０２＞
機器仲介装置２０２は、制御部２２０と、記憶部２３０と、接続ＩＦ部３８と、通信部３９とを備える。
制御部２２０は、パッケージ受信部２１と、パッケージ復号部２２と、パスワード送信部２２３（パスワード送信手段）と、暗号化済更新データ受渡部２２４とを備える。
パスワード送信部２２３は、パッケージ復号部２２によって暗号化されたパッケージデータから得たワンタイムパスワードを、ＵＲＩが示す更新データの保存先である更新データサーバ２０６に送信する。
【００６７】
暗号化済更新データ受渡部２２４は、ＵＲＩが示す更新データの保存先にアクセスして、後述するパスワード認証ができた場合に、暗号化済更新データを受信する。また、暗号化済更新データ受渡部２２４は、受信した暗号化済更新データを、更新データを適用する対象のＥＣＵ４に受け渡す。
記憶部２３０は、プログラム記憶部２３１と、鍵記憶部３２とを備える。
プログラム記憶部２３１は、機器仲介装置２０２の制御部２２０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
【００６８】
＜更新データサーバ２０６＞
図１４（Ａ）に示すように、更新データサーバ２０６は、制御部２６０と、記憶部２６５と、通信部６９とを備える。
制御部２６０は、更新データ暗号化処理部６１と、暗号化済更新データ送信部６２と、認証依頼部２６３（認証依頼手段）とを備える。
認証依頼部２６３は、機器仲介装置２０２から受信したワンタイムパスワードを、更新管理サーバ２０７に送信し、パスワード認証を依頼する配信ＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）の機能を有する。
記憶部２６５は、プログラム記憶部２６６と、鍵記憶部６７と、暗号化済更新データ記憶部６８とを備える。
プログラム記憶部２６６は、更新データサーバ２０６の制御部２６０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
【００６９】
＜更新管理サーバ２０７＞
図１４（Ｂ）に示すように、更新管理サーバ２０７は、制御部２７０と、記憶部２７５と、通信部７９とを備える。
【００７０】
制御部２７０は、暗号化済更新データ受信部７１と、ハッシュ値生成部７２と、パスワード処理部２７２ａと、パッケージ生成部２７３と、パッケージ送信部７４とを備える。
パスワード処理部２７２ａは、更新データサーバ２０６での暗号化済更新データの保存先を示すＵＲＩごとにワンタイムパスワードを生成する。そして、パスワード処理部２７２ａは、生成したワンタイムパスワードを、記憶部２７５に記憶させる。
また、パスワード処理部２７２ａは、更新データサーバ２０６からパスワード認証の依頼を受けた場合に、記憶部２７５に記憶させたワンタイムパスワードと照合して認証を行う。そして、パスワード処理部２７２ａは、認証結果を更新データサーバ２０６に送信する。
【００７１】
パッケージ生成部２７３は、ＵＲＩと、ハッシュ値生成部７２によって生成したハッシュ値と、パスワード処理部２７２ａによって生成したワンタイムパスワードとを含んでパッケージ化する。そして、パッケージ生成部２７３は、パッケージ化したものに、このパッケージ化したものを送信する機器仲介装置２０２の装置暗号鍵で暗号化してパッケージデータを生成する。
記憶部２７５は、プログラム記憶部２７６を備える。
プログラム記憶部２７６は、更新管理サーバ２０７の制御部２７０の各種機能を実行するための各種のプログラムを記憶する記憶領域である。
【００７２】
＜処理の説明＞
次に、各装置の処理の詳細について、フローチャートに基づき説明する。
更新データサーバ２０６での更新データ保存処理は、第１実施形態（図７）と同様である。
次に、更新管理サーバ２０７での処理について説明する。
図１５は、第２実施形態に係る更新管理サーバ２０７のパッケージ配信処理を示すフローチャートである。
図１５のＳ２２０からＳ２２２ａまでは、第１実施形態（図８）のＳ２０からＳ２２までの処理と同様である。
【００７３】
Ｓ２２２ｂにおいて、制御部２２０（パスワード処理部２７２ａ）は、暗号化済更新データを保存している更新データサーバ６のＵＲＩごとにワンタイムパスワードを生成する。ここで、ワンタイムパスワードは、例えば、生成から１週間以内等の有効期限が設けられ、期限内であれば、１回に限り認証を許可するものである。なお、制御部２７０は、管理データ７５ａ（図９参照）に、ワンタイムパスワードと、有効期限とを対応付けて記憶部２７５に記憶してもよい。
Ｓ２２３において、制御部２２０（パッケージ生成部２７３）は、暗号化済更新データを保存している更新データサーバ２０６のＵＲＩと、ハッシュ値と、ワンタイムパスワードとを含むパッケージデータを生成する。
Ｓ２２４及びＳ２２５の処理は、第１実施形態（図８）のＳ２４及びＳ２５の処理と同様である。
【００７４】
次に、機器統合システム２０１での処理について説明する。
図１６は、第２実施形態に係る機器仲介装置２０２のデータ受渡処理を示すフローチャートである。
Ｓ２３０及びＳ２３１の処理は、第１実施形態（図１０）のＳ３０及びＳ３１の処理と同様である。
Ｓ２３２ａにおいて、制御部２２０（パスワード送信部２２３）は、パッケージデータに含まれる更新データサーバ２０６の保存先を示すＵＲＩにアクセスし、対応するワンタイムパスワードを送信する。
【００７５】
ワンタイムパスワードを受信した更新データサーバ２０６の制御部２６０（認証依頼部２６３）は、更新管理サーバ２０７に対しパスワード認証を依頼する。
更新管理サーバ２０７の制御部２７０（パスワード処理部２７２ａ）は、受信したワンタイムパスワードについての認証処理を行う。そして、制御部２７０は、有効期限内であって、初めての認証依頼であれば、認証可とし、有効期限内ではない場合や、２回目の認証依頼であれば、認証不可とした認証結果を、更新データサーバ２０６に送信する。
更新データサーバ２０６の制御部２６０は、認証結果が認証可であった場合に限り、保存先情報に記憶された暗号化済更新データを、機器仲介装置２０２に送信する。
【００７６】
Ｓ２３２ｂにおいて、機器仲介装置２０２の制御部２２０（暗号化済更新データ受渡部２２４）は、ワンタイムパスワード認証ができた場合に限り、更新データサーバ２０６から暗号化済更新データを受信する。
Ｓ２３３からＳ２３５までの処理は、第１実施形態（図１０）のＳ３３からＳ３５までの処理と同様である。
また、ＥＣＵ４でのデータ更新処理は、第１実施形態（図１１）と同様である。
【００７７】
このように、第２実施形態の更新管理システム２００によれば、以下のような効果がある。
（１）更新管理サーバ２０７は、ワンタイムパスワードを生成して更新データサーバ２０６の更新データの保存先を示すＵＲＩと対応付けてパッケージ化する。そして、機器仲介装置２０２で暗号化済更新データを得る場合に、ワンタイムパスワードによる認証を行い、認証できた場合に限り機器仲介装置２０２は、暗号化済更新データを得る。よって、より厳密に更新データを管理できる。
（２）ワンタイムパスワードには、有効期限や有効回数を設定しておくことで、有効期限後にアクセスしても暗号化済更新データを得ることがない。また、有効回数を超えて暗号化済更新データを得ることがない。よって、不正な第三者によるデータの不正取得がされにくい仕組みにできる。
（３）公知な技術であるワンタイムパスワードを用いるため、仕組みを比較的簡単に構築できる。
【００７８】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではない。また、実施形態に記載した効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載したものに限定されない。なお、上述した実施形態及び後述する変形形態は、適宜組み合わせて用いることもできるが、詳細な説明は省略する。
【００７９】
（変形形態）
（１）各実施形態では、更新データを、ＥＣＵのファームウェアに対して適用し、ファームウェアのアップデートをするものを例に説明したが、これに限定されない。例えば、更新データは、ＥＣＵのファームウェア等のソフトウェアに必要なパラメータデータ等を更新するものであってもよい。
（２）各実施形態では、鍵管理サーバを、更新管理サーバとは別に設け、システム運営会社が管理するものを例に説明したが、これに限定されない。更新管理サーバが、鍵管理サーバの機能を、更新管理サーバの一部として有してもよい。
（３）各実施形態では、車両のＥＣＵに対してファームウェアをアップデートするシステムについて説明したが、これに限定されない。機器仲介装置と、ＥＣＵとに対応する装置を有するシステムであれば、他の分野においても適用可能である。例えば、スマートホームのような家の中の様々な家電製品についてのソフトウェアの更新をするようなものについても適用できる。
【００８０】
（４）各実施形態では、データの検証に用いる計算値としてハッシュ値を用いるものを例に説明したが、これに限定されない。データの検証に用いることができるものであれば、どのような技術を用いたものであってもよく、例えば、ＭＡＣ（Ｍｅｓｓａｇｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  Ｃｏｄｅ）関数を用いたＭＡＣ値であってもよい。その場合には、更新管理サーバと、機器仲介装置とに共通鍵暗号鍵を有することで実現可能である。
（５）各実施形態では、１つのＥＣＵに対して１つの更新データを適用するものを例に説明したが、これに限定されない。複数のＥＣＵに対して複数の更新データを適用する場合であってもよい。その場合には、更新管理サーバは、パッケージデータを、更新データの保存先を示すＵＲＩと、ハッシュ値と、ＥＣＵ４の識別情報（機器識別情報）とが対になったものを複数分まとめたものにすればよい。
【００８１】
（６）各実施形態では、鍵管理サーバが車両ごとに鍵を有するものとして説明したが、これに限定されない。例えば、車種ごとに鍵を有するものとしてもよい。その場合には、複数の車両で共通の鍵が使用できるので、鍵の管理がより簡単になる。
（７）各実施形態で使用する鍵の種類について、特に限定するものではない。共通鍵であってもよいし、公開鍵であってもよい。
【符号の説明】
【００８２】
１，２０１  機器統合システム
２，２０２  機器仲介装置
４，４Ａ，４Ｂ，４Ｃ  ＥＣＵ
６，６Ｘ，６Ｙ，２０６  更新データサーバ
７，２０７  更新管理サーバ
８    鍵管理サーバ
２０，４０，６０，７０，８０，２２０，２６０，２７０  制御部
２１  パッケージ受信部
２２  パッケージ復号部
２４，２２４  暗号化済更新データ受渡部
３０，５０，６５，７５，８５，２３０，２６５，２７５  記憶部
３２，５２，６７，８７  鍵記憶部
４１，７２  ハッシュ値生成部
４２  ハッシュ値照合部
４３  更新データ取得部
４４  データ更新部
４５  データ削除部
５１  プログラム記憶部
６１  更新データ暗号化処理部
６２  暗号化済更新データ送信部
６８  暗号化済更新データ記憶部
７１  暗号化済更新データ受信部
７３，２７３  パッケージ生成部
７４  パッケージ送信部
９１ａ  装置暗号鍵
９１ｂ  装置復号鍵
９２，９３  ＥＣＵ暗号鍵
９４ａ，９４ａＸ，９４ａＹ  業者暗号鍵
９４ｂ，９４ｂＸ，９４ｂＹ  業者復号鍵
１００，２００  更新管理システム
２２３  パスワード送信部
２６３  認証依頼部
２７２ａ  パスワード処理部
Ｃ    車両
Ｎ    通信ネットワーク
【図１】
2020092289.tif 000003
【図２】
2020092289.tif 000004
【図３】
2020092289.tif 000005
【図４】
2020092289.tif 000006
【図５】
2020092289.tif 000007
【図６】
2020092289.tif 000008
【図７】
2020092289.tif 000009
【図８】
2020092289.tif 000010
【図９】
2020092289.tif 000011
【図１０】
2020092289.tif 000012
【図１１】
2020092289.tif 000013
【図１２】
2020092289.tif 000014
【図１３】
2020092289.tif 000015
【図１４】
2020092289.tif 000016
【図１５】
2020092289.tif 000017
【図１６】
2020092289.tif 000018