(57)【特許請求の範囲】
【請求項１】
配信装置から配信されたソフトウェアの更新データを取得する更新データ取得手段、
この更新データ取得手段によって取得された上記更新データの認証を行う更新データ認証手段、
この更新データ認証手段によって認証された上記更新データを車載制御装置に対して適用する更新データ適用手段、
上記配信装置から配信され、上記更新データ間の依存関係を定義したプロパティ情報を取得するプロパティ情報取得手段、
およびこのプロパティ情報取得手段によって取得された上記プロパティ情報から上記更新データ間の依存関係を判定する依存関係判定手段を備え、
上記更新データ認証手段は、上記依存関係判定手段によって判定された上記依存関係のある更新データを同時に保持した状態で認証を行い、
上記更新データ適用手段は、上記依存関係のあるすべての更新データが認証された場合に上記車載制御装置に対して適用することを特徴とする更新マネジャ。
【請求項２】
上記プロパティ情報は、上記更新データ間の依存関係の程度を示す情報を含み、このプロパティ情報を参照して、依存関係のある更新データの一部だけを上記車載制御装置に適用し、残りの更新データを適用しない状態にすることを許容するか否か判定する中断処理判定手段を備えたことを特徴とする請求項１記載の更新マネジャ。
【請求項３】
上記中断処理判定手段により許容すると判断された場合に、ユーザに発生し得るエラーを通知する通知手段を備えたことを特徴とする請求項２記載の更新マネジャ。
【請求項４】
上記プロパティ情報は、上記更新データのサイズ情報を含み、このプロパティ情報を参照して、依存関係のある更新データを同時に内部メモリに保持できるかどうかを判定する記憶容量判定手段を備え、
上記記憶容量判定手段により、依存関係のある更新データを同時に内部メモリに保持できる場合にのみ、上記更新データ取得手段は、上記依存関係のある更新データを取得することを特徴とする請求項１から請求項３のいずれか一項記載の更新マネジャ。
【請求項５】
上記プロパティ情報は、上記更新データを上記車載制御装置に適用する場合の更新順序を含み、このプロパティ情報から上記更新データの更新順序を取得する更新順序取得手段を備え、
上記更新データ適用手段は、上記更新順序取得手段により取得された更新順序にしたがって上記車載制御装置への上記更新データの適用を行うことを特徴とする請求項１から請求項４のいずれか一項記載の更新マネジャ。
【請求項６】
上記プロパティ情報は、上記更新データを上記車載制御装置に適用する場合の更新順序を含み、このプロパティ情報から上記更新データの更新順序を取得する更新順序取得手段を備え、
上記中断処理判定手段は、上記更新順序にしたがって、依存関係のある更新データの一部だけを上記車載制御装置に適用し、残りの更新データを適用しない状態にすることを許容するか否か判定することを特徴とする請求項２または請求項３記載の更新マネジャ。
【請求項７】
請求項１から請求項６のいずれか一項記載の更新マネジャ、
および上記配信装置から上記更新データを取得し、上記更新マネジャに提供する通信装置を備えたことを特徴とする車載ソフトウェア更新システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、車載制御装置に搭載される車載ソフトウェアの更新を行う更新マネジャおよびこれを用いた車載ソフトウェア更新システムに関するものである。
【背景技術】
【０００２】
自動車の制御ソフトウェアの更新は従来、サービスマンが車載ネットワークに接続した専用のツールを操作して行っていたが、近年、サーバと無線通信してリモートで更新する技術が注目されている。
このような車載ソフトウェア更新システムには、管理された環境で行う従来の方法と異なり、更新時に車両が安全な状態であることの保証、及び不正なソフトウェアが混入しないことの保証が課題となる。
【０００３】
この課題を解決するために、特許文献１では、更新マネジャが各制御装置の負荷状態を監視して、安全な状態であると判定したら更新を開始する更新可否判定の技術が記載されている。
また、特許文献２では、更新マネジャがサーバと認証を行うことで、サーバの成りすましなどによる不正なソフトウェアの混入を防止する方法が記載されている。
【０００４】
上記のような対策を同時に実施する場合、まず、更新マネジャが更新可否判定を誤ったら、走行中に更新が始まり制御装置が急停止するなどの危険が考えられる。安全なシステムを設計するためには、更新マネジャには更新対象の制御装置と同等かそれ以上の信頼性の設計が必要となる。
一方で、更新マネジャがサーバと認証して無線通信を行う場合、このような通信装置としてのユニットは近年、通信を活用した様々なサービスを提供する役目を期待されることが多くなってきており、高機能なユニットとなるため、高信頼性の設計を行うにはコストが問題となる。
そのため車載ソフトウェア更新システムでは、サーバから更新ファイルを取得する機能を持つ通信装置を、更新マネジャから分離した構成が望ましい。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３１０９４１３号公報（第５〜７頁、第１図）
【特許文献２】特許第４３２１３０３号公報（第５〜８頁、第１図）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、この構成の場合、取得した更新ファイルが不正なものでないことを保証するのは通信装置である。通信装置は、前述の理由から更新マネジャに比べると低信頼性の設計であることが多く、相対的に誤作動が起こりやすい。
また、オンラインのため、セキュリティ攻撃の対象となりやすい。そのため、通信装置が誤作動やセキュリティ攻撃の影響で不正なデータを不正でないと判断した場合、これを受けた更新マネジャが不正なデータを用いて更新を行うという問題がある。
【０００７】
この発明は、上述のような課題を解決するためになされたものであり、車載ソフトウェアの更新に当たって、不正な車載ソフトウェアの混入を防ぐことのできる更新マネジャおよびこれを用いた車載ソフトウェア更新システムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
この発明に係わる更新マネジャにおいては、配信装置から配信されたソフトウェアの更新データを取得する更新データ取得手段、この更新データ取得手段によって取得された更新データの認証を行う更新データ認証手段、この更新データ認証手段によって認証された更新データを車載制御装置に対して適用する更新データ適用手段、配信装置から配信され、更新データ間の依存関係を定義したプロパティ情報を取得するプロパティ情報取得手段、およびこのプロパティ情報取得手段によって取得されたプロパティ情報から更新データ間の依存関係を判定する依存関係判定手段を備え、更新データ認証手段は、依存関係判定手段によって判定された依存関係のある更新データを同時に保持した状態で認証を行い、更新データ適用手段は、依存関係のあるすべての更新データが認証された場合に車載制御装置に対して適用するものである。
【発明の効果】
【０００９】
この発明によれば、配信装置から配信されたソフトウェアの更新データを取得する更新データ取得手段、この更新データ取得手段によって取得された更新データの認証を行う更新データ認証手段、この更新データ認証手段によって認証された更新データを車載制御装置に対して適用する更新データ適用手段、配信装置から配信され、更新データ間の依存関係を定義したプロパティ情報を取得するプロパティ情報取得手段、およびこのプロパティ情報取得手段によって取得されたプロパティ情報から更新データ間の依存関係を判定する依存関係判定手段を備え、更新データ認証手段は、依存関係判定手段によって判定された依存関係のある更新データを同時に保持した状態で認証を行い、更新データ適用手段は、依存関係のあるすべての更新データが認証された場合に車載制御装置に対して適用するので、不正な車載ソフトウェアの混入を防ぐとともに、依存関係のある更新データの一部だけを適用して協調動作が破綻するというエラーを防ぐことができる。
【図面の簡単な説明】
【００１０】
【図１】この発明の実施の形態１における車載ソフトウェア更新システムを示す構成図である。
【図２】この発明の実施の形態２における車載ソフトウェア更新システムを示す構成図である。
【図３】この発明の実施の形態３における車載ソフトウェア更新システムを示す構成図である。
【図４】この発明の実施の形態４における車載ソフトウェア更新システムを示す構成図である。
【図５】この発明の実施の形態５における車載ソフトウェア更新システムを示す構成図である。
【図６】この発明の実施の形態６における車載ソフトウェア更新システムを示す構成図である。
【図７】この発明の実施の形態１〜実施の形態６に記載のすべての機能を備えた車載ソフトウェア更新システムを示す構成図である。
【発明を実施するための形態】
【００１１】
実施の形態１．
以下に、本発明の実施の形態にかかる車載ソフトウェア更新システムを図に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
図１は、この発明の実施の形態１における車載ソフトウェア更新システムを示す構成図である。
図１において、配信装置１００は、認証情報を含む車載ソフトウェアの更新データ１１０を有する。通信装置２００は、配信装置１００から認証情報を含む更新データ１１０を取得し、更新マネジャ３００に提供する。
更新マネジャ３００は、更新データ１１０を認証し、適合と判断すれば、後述する更新対象４００に適用する。この更新マネジャ３００は、次のように構成されている。
更新データ取得手段３０１は、通信装置２００から更新データ１１０を取得する。更新データ認証手段３０２は、更新データ１１０の認証を行う。更新データ適用手段３０３は、更新データ認証手段３０２による認証で適合の場合に、更新データ１１０を更新対象４００に適用する。更新対象４００（車載制御装置）は、更新データ１１０が適用され、搭載された車載ソフトウェアが更新される。
なお、更新マネジャ３００は、通信装置２００とは独立したユニットである。
【００１３】
次に、動作について説明する。
実施の形態１は、更新マネジャ３００が通信装置２００から認証情報を含む車載ソフトウェアの更新データ１１０を取得し、この更新データ１１０について認証を行い、更新対象４００に適用する車載ソフトウェア更新システムについてのものである。
すなわち、通信装置２００は、配信装置１００から、認証情報を含む車載ソフトウェアの更新データ１１０を取得し、更新マネジャ３００に提供する。
更新マネジャ３００は、更新データ取得手段３０１により通信装置２００から更新データ１１０を取得し、更新データ認証手段３０２により更新データ１１０の認証を行い、適合と判断すれば、更新データ適用手段３０３により、更新データ１１０を更新対象４００に適用し、更新対象４００に搭載された車載ソフトウェアを更新する。
【００１４】
ここで、配信装置１００は、通信装置２００に更新データ１１０を配信する機能を有すればその形態は問わない。すなわち、サーバや記憶媒体などを含む。また、通信装置２００と配信装置１００の間の通信方法も問わない。すなわち、無線でも有線でもよい。
【００１５】
また、更新データ１１０は、実際に更新対象４００に適用される更新ファイルと、認証情報とを含む。これらはパッケージングして配信してもよいし、別々に配信してもよい。
また、認証情報の形式や更新データ認証手段３０２での認証の方式は問わないものとする。
【００１６】
更新データ１１０の更新ファイルは、更新対象４００に実装したい更新ソフトウェアそのものでもよいし、更新対象４００に現在実装されている車載ソフトウェアと、更新対象４００に実装したい更新ソフトウェアとの差分情報でもよい。
差分情報の場合、更新マネジャ３００または更新対象４００において、更新対象４００の現在の車載ソフトウェアと合成して実装したい更新ソフトウェアを生成する処理を含む。
【００１７】
更新対象４００は、１つまたは複数存在する。更新マネジャ３００と通信するユニットが含まれ、あるいは更新マネジャ３００そのものが更新対象４００に含まれる構成であってもよい。
また、１つの更新対象４００に適用される更新データ１１０の個数は問わない。
【００１８】
また、更新データ適用手段３０３は、安全確保のため、更新対象４００や車両全体の状態から更新開始や継続の可否を判定する機能や、車載ソフトウェアの更新後の更新対象４００のＲＯＭの内容が更新ファイルと適合しているかどうかを確認する機能や、車載ソフトウェアの更新後の更新対象４００が正しい挙動を行うかどうかを確認する機能を含んでいてもよい。
【００１９】
さらに、更新対象４００や車両全体の状態から更新開始や継続の可否を判定する機能では、車速やシフトレバー位置、イグニッションスイッチ位置、バッテリー残量、サイドブレーキ状態、ドアロック状態、ネットワークのトラフィック、などの車両の情報を使用して、車両が車載ソフトウェアの更新を行うのに適切な状態であるかどうかを確認する処理を含んでいてもよい。
【００２０】
また、更新後の更新対象４００のＲＯＭの内容が更新ファイルと適合しているかどうかを確認する機能では、更新マネジャ３００が更新対象４００から更新後のＲＯＭの状態を示す情報、すなわち、ＲＯＭデータ全て、またはハッシュ値、ＣＲＣ、チェックサムの計算値などを取得して、更新データ１１０に含まれるか、または更新マネジャ３００で計算したそれらの値と比較することで確認する機能を含んでいてもよい。
【００２１】
また、更新後の更新対象４００が正しい挙動を行うかどうかを確認する機能では、ネットワーク通信で特定のメッセージに正しい応答が返ってくるかどうかを確認する処理を含んでいてもよい。
【００２２】
実施の形態１によれば、以上のように、通信装置を更新マネジャから分離し、通信装置が配信装置から取得した更新データを更新マネジャに提供する構成で、更新マネジャが更新データの認証を行うことによる高信頼性のため、誤作動が少なく、またオフラインのため、セキュリティリスクの少ない更新マネジャが、不正なデータが混入していないことを保証し、確実に車載ソフトウェアの更新を行うことができる。
【００２３】
実施の形態２．
図２は、この発明の実施の形態２における車載ソフトウェア更新システムを示す構成図である。
図２において、１００、１１０、２００、３００〜３０３、４００は図１におけるものと同一のものである。図２では、配信装置１００は、更新データ１１０に関連したプロパティ情報１１１を有する。更新マネジャ３００には、プロパティ情報１１１を取得するプロパティ情報取得手段３０４と、プロパティ情報１１１を用いて、依存関係のある更新データを抽出する依存関係管理手段３０５（依存関係判定手段）とが設けられている。
【００２４】
協調動作する複数のユニット（更新対象）を更新する場合、例えばネットワークメッセージの送信側と受信側のように、一部の更新を実行したら残りの更新も実行しないと協調動作のエラーとなる組み合わせが存在し得る。
このような更新データを依存関係があると呼ぶこととする。更新マネジャ３００で更新データ１１０の認証を行う本発明の構成では、依存関係のある更新データ１１０のうち、一部の更新データが適用された状態で、残りの更新データが認証により不適合となると、この残りの更新データを更新対象４００に適用できず、上述のようなエラーが発生する場合がある。
実施の形態２は、依存関係を破綻させないために、実施の形態１の構成に加えて、更新マネジャ３００が、依存関係にある更新データを全て保持した状態で認証を行う処理を追加した構成についてのものである。
【００２５】
次に、実施の形態１に付加した構成についてのみ説明する。
配信装置１００は、更新データ１１０に関連したプロパティ情報１１１を配信する。プロパティ情報１１１は、複数の更新データ１１０の間の依存関係に関する情報を含む。通信装置２００は、これを取得し、更新マネジャ３００に提供する。
更新マネジャ３００は、プロパティ情報取得手段３０４によりプロパティ情報１１１を取得し、依存関係管理手段３０５により、依存関係のある更新データ１１０を抽出して選択的に取得し、全て更新マネジャ３００が保持した状態で認証を行い、全て不正なファイルでないと判定したら、それぞれ更新対象４００への適用の処理を行う。
【００２６】
実施の形態２によれば、不正な更新データが混入したときでも、依存関係のある更新ファイルの一部だけを適用して協調動作が破綻するというエラーを防ぐことができる。
【００２７】
実施の形態３．
図３は、この発明の実施の形態３における車載ソフトウェア更新システムを示す構成図である。
図３において、１００、１１０、１１１、２００、３００〜３０５、４００は図２におけるものと同一のものである。図３では、更新マネジャ３００に、中断処理判定手段３０６を設け、依存関係の程度から依存関係が破綻した状態での車両の使用を許容するか否か
を判定する。
【００２８】
更新データ１１０の依存関係の破綻によって起こるエラーの内容が、全く車両が動かないとか、ドライバーを危険にさらすといった内容でなければ、ユーザに車両を即座に使用する強い要求があった場合、更新対象４００に対する更新を中断して依存関係の破綻した状態での車両の使用を許容する運用も考えられる。
実施の形態３は、このような運用を実現するため、実施の形態２の構成に加えて、さらに依存関係の程度に応じて、依存関係が破綻した状態で車両を動作させることを許容する処理を追加した構成についてのものである。
【００２９】
次に、図３を用いて、実施の形態２に付加した構成についてのみ説明する。
プロパティ情報１１１は、依存関係のある更新データ１１０における依存関係の程度を示す情報を含む。更新マネジャ３００は、中断処理判定手段３０６により、依存関係の程度から依存関係が破綻した状態での車両の使用を許容するか否かを判定し、許容する場合はユーザの要求に応じて、依存関係が破綻した状態での更新処理を中断し、車両の使用を許容する。
【００３０】
実施の形態３によれば、更新データの依存関係が破綻していてもユーザに危険が及ばない場合などに、ユーザが緊急で車両を使用したいなどの要求に応じて、更新処理を中断し、即座に車両を使用できる状態にすることができる。
【００３１】
実施の形態４．
図４は、この発明の実施の形態４における車載ソフトウェア更新システムを示す構成図である。
図４において、１００、１１０、１１１、２００、３００〜３０６、４００は図３におけるものと同一のものである。図４では、更新マネジャ３００に、更新データ１１０の依存関係が破綻することで起こりうるエラーをユーザに通知する通知手段３０７を設けている。
【００３２】
実施の形態４は、実施の形態３の構成に加えて、依存関係が破綻した状態で車両を使用する場合に起こりうるエラーの内容をユーザに通知する処理を追加した構成についてのものである。
【００３３】
次に、図４を用いて、実施の形態４に付加した構成についてのみ説明する。
プロパティ情報１１１は、依存関係のある更新データ１１０において、依存関係が破綻したときに起こりうるエラーに関する情報を含む。
更新マネジャ３００は、通知手段３０７により、依存関係が破綻した状態で車両を使用することを許容する際に、依存関係が破綻することで起こりうるエラーをユーザに通知する。
【００３４】
実施の形態４によれば、依存関係が破綻した状態で車両を使用していることをユーザに認識させ、緊急で車両を使用するケースを除いて、極力依存関係を破綻させないように運用することができる。
【００３５】
実施の形態５．
図５は、この発明の実施の形態５における車載ソフトウェア更新システムを示す構成図である。
図５において、１００、１１０、１１１、２００、３００〜３０７、４００は図４におけるものと同一のものである。図５では、更新マネジャ３００に、更新マネジャ３００が依存関係のある更新データを全て保持する際に、自身のメモリに格納しきれるかどうかを
判定する保存容量管理手段３０８（記憶容量判定手段）を設けている。
【００３６】
実施の形態５は、実施の形態４の構成に加えて、更新マネジャ３００が依存関係のある更新データを全て保持する際に、自身のメモリに格納しきれるかどうかを判定する処理を追加した構成についてのものである。
【００３７】
次に、図５を用いて、実施の形態４に付加した構成についてのみ説明する。
プロパティ情報１１１は、各更新データ１１０のサイズに関する情報を含む。更新マネジャ３００は、保存容量管理手段３０８により、依存関係にある更新データ１１０の合計サイズを算出し、自身のメモリに全て保持できるかどうかを判定し、可能なら更新データ１１０の取得を行い、不可能なら更新データ１１０の取得を行わないようにした。
なお、実施の形態５は、図５の構成に限らず、中断処理判定手段３０６と通知手段３０７とを持たない構成であってもよいことは勿論である。
【００３８】
実施の形態５によれば、依存関係のある更新データを更新マネジャが保持できるかどうかを予め判定できるため、保持できない場合の更新データを取得する処理を省略することができる。
【００３９】
実施の形態６．
図６は、この発明の実施の形態６における車載ソフトウェア更新システムを示す構成図である。
図６において、１００、１１０、２００、３００〜３０３、４００は図１におけるものと同一のものである。図６では、配信装置１００は更新データ１１０に関連したプロパティ情報１１１を有する。更新マネジャ３００には、プロパティ情報１１１を取得するプロパティ情報取得手段３０４と、プロパティ情報取得手段３０４により取得されたプロパティ情報１１１を用いて、更新データ１１０の更新順序を管理する更新順序管理手段３０９（更新順序取得手段）とが設けられている。
【００４０】
依存関係のある更新データ１１０においても、例えば更新対象４００ａ（ａ、ｂは個別の更新対象４００を示す）にセンシングデータを送信する機能を追加する更新を行い、更新対象４００ｂにこれを受信して演算に利用する機能を追加する更新を行うとき、更新対象４００ｂの更新のみを行った場合は、受信すべきメッセージが存在せず処理が破綻するが、更新対象４００ａの更新のみを行った場合は、更新対象４００ｂは更新対象４００ａに追加されたメッセージを無視するだけで大きな問題とはならないような組み合わせが存在し得る。
この場合、更新対象４００ａの更新を先に行うことで、更新対象４００ｂの更新データ１１０が不正だった場合でも協調動作を破綻させない更新を行うことができる。
実施の形態６では、これに対応して、実施の形態１の構成に加えて、更新マネジャ３００に、更新順序に従い更新データ１１０を取得する処理を追加した構成についてのものである。
【００４１】
次に、図６を用いて、実施の形態１に付加した構成についてのみ説明する。
配信装置１００は、更新データ１１０に関連したプロパティ情報１１１を配信する。プロパティ情報１１１は、更新データ１１０の更新順序に関する情報を含む。通信装置２００は、このプロパティ情報１１１を取得し、更新マネジャ３００に提供する。
更新マネジャ３００は、プロパティ情報取得手段３０４によりプロパティ情報１１１を取得し、更新順序管理手段３０９により、更新データ１１０の更新順序を判定し、その順番に更新データ１１０を取得し、実施の形態１で述べたような認証・適用を行う。
【００４２】
実施の形態６によれば、優先的に実施すべき更新を先に実施することができ、更新デー
タ間の依存関係の内容によっては、依存関係を持つ更新データの一部のみを適用しても協調動作を破綻させない車載ソフトウェア更新システムを提供できる。
【００４３】
図７は、この発明の実施の形態１〜実施の形態６に記載のすべての機能を備えた車載ソフトウェア更新システムを示す構成図である。
図７においては、１００、１１０、１１１、２００、３００〜３０８、４００は図５におけるものと、３０９は図６におけるものとそれぞれ同一のものである。
この発明は、上述の実施の形態１〜実施の形態６で述べた機能をすべて有する図７の構成とすることも可能である。
この場合、例えば、更新データの依存関係の程度に応じて、依存関係のある更新データのうち更新順序の早い更新データを適用した後に、次の更新データの更新を中断させるようにすることも可能である。
このように、図７の構成では、実施の形態１〜実施の形態６で述べた効果をすべて有することは言うまでもない。
【００４４】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略することが可能である。
【符号の説明】
【００４５】
１００  配信装置
１１０  更新データ
１１１  プロパティ情報
２００  通信装置
３００  更新マネジャ
３０１  更新データ取得手段
３０２  更新データ認証手段
３０３  更新データ適用手段
３０４  プロパティ情報取得手段
３０５  依存関係管理手段
３０６  中断処理判定手段
３０７  通知手段
３０８  保存容量管理手段
３０９  更新順序管理手段
４００  更新対象
【要約】
【課題】車載ソフトウェアの更新に当たって、不正な車載ソフトウェアの混入を防ぐことのできる更新マネジャを得る。
【解決手段】配信装置１００の配信するソフトウェアの更新データ１１０を通信装置２００が取得し、この更新データ１１０は、更新マネジャ３００の更新データ取得手段３０１によって取得され、さらに更新データ認証手段３０２によって更新データ１１０が認証され、この認証された更新データ１１０を、更新データ適用手段３０３によって更新対象４００の車載ソフトウェアに適用するようにした。
【選択図】図１【図１】
0006009622.tif 000002
【図２】
0006009622.tif 000003
【図３】
0006009622.tif 000004
【図４】
0006009622.tif 000005
【図５】
0006009622.tif 000006
【図６】
0006009622.tif 000007
【図７】
0006009622.tif 000008