IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社デンソーの特許一覧

特許7428116電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム
<>
  • 特許-電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム 図1
  • 特許-電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム 図2
  • 特許-電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム 図3
  • 特許-電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム 図4
  • 特許-電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-29
(45)【発行日】2024-02-06
(54)【発明の名称】電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システム
(51)【国際特許分類】
   G06F 21/44 20130101AFI20240130BHJP
【FI】
G06F21/44
【請求項の数】 11
(21)【出願番号】P 2020195475
(22)【出願日】2020-11-25
(65)【公開番号】P2022083882
(43)【公開日】2022-06-06
【審査請求日】2023-03-09
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】230120499
【弁護士】
【氏名又は名称】藤江 和典
(74)【代理人】
【識別番号】100201385
【弁理士】
【氏名又は名称】中安 桂子
(72)【発明者】
【氏名】後藤 史英
【審査官】岸野 徹
(56)【参考文献】
【文献】特表2019-533852(JP,A)
【文献】米国特許出願公開第2014/0196158(US,A1)
【文献】特開2006-285849(JP,A)
【文献】米国特許出願公開第2019/0324458(US,A1)
【文献】特開2017-073609(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/44
(57)【特許請求の範囲】
【請求項1】
センサ装置(13~16)にアクセスするソフトウェアが起動したことを示す起動情報が入力される入力部(101)と、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得するソフトウェア特定情報管理部(102)と、
前記ソフトウェア特定情報を保存する保存部(105)と、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行う認証部(103)と、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する出力部(106)と、を有する、
電子制御装置(10)。
【請求項2】
さらに、前記認証部において行われた認証処理の認証結果の有効期限を設定する有効期限管理部(104)を有し、
前記保存部は、前記有効期限を保存する、
請求項1記載の電子制御装置。
【請求項3】
前記起動情報には、前記ソフトウェアがアクセスする前記センサ装置を特定するセンサ装置特定情報を含む、
請求項1記載の電子制御装置。
【請求項4】
前記保存部に、前記起動情報である第1の起動情報に基づき取得された前記ソフトウェア特定情報である第1のソフトウェア特定情報が保存されており、前記入力部に第2の起動情報が入力された場合において、
前記ソフトウェア特定情報管理部は、前記第1のソフトウェア特定情報と前記第2の起動情報から取得した第2のソフトウェア特定情報とが一致するかどうかを判定し、前記第1のソフトウェア特定情報と前記第2のソフトウェア特定情報が一致する場合は前記認証部での認証を行わない、
請求項1記載の電子制御装置。
【請求項5】
前記保存部に、前記有効期限が保存されており、前記入力部に第2の起動情報が入力された場合において、
前記有効期限管理部は、前記入力部に前記第2の起動情報が前記有効期限内に入力されたかどうかを判定し、前記第2の起動情報が前記有効期限内に入力された場合は前記認証部での認証を行わない、
請求項2記載の電子制御装置。
【請求項6】
前記保存部に、前記起動情報である第1の起動情報に基づき取得された前記ソフトウェア特定情報である第1のソフトウェア特定情報、及び、前記有効期限が保存されており、前記入力部に第2の起動情報が入力された場合において、
前記ソフトウェア特定情報管理部は、前記第1のソフトウェア特定情報と前記第2の起動情報から取得した第2のソフトウェア特定情報とが一致するかどうかを判定し、
前記有効期限管理部は、前記入力部に前記第2の起動情報が前記有効期限内に入力されたかどうかを判定し、
前記第1のソフトウェア特定情報と前記第2のソフトウェア特定情報が一致する場合、かつ、前記第2の起動情報が前記有効期限内に入力された場合は、前記認証部での認証を行わない、
請求項2記載の電子制御装置。
【請求項7】
前記保存部に、前記起動情報である第1の起動情報に基づき取得された前記ソフトウェア特定情報である第1のソフトウェア特定情報、及び、前記有効期限が保存されており、前記入力部に第2の起動情報が入力された場合において、
前記ソフトウェア特定情報管理部は、前記第1のソフトウェア特定情報と前記第2の起動情報から取得した第2のソフトウェア特定情報が一致するかどうかを判定し、
前記有効期限管理部は、前記入力部に前記第2の起動情報が前記有効期限内に入力されたかどうかを判定し、
前記第1のソフトウェア特定情報と前記第2のソフトウェア特定情報が一致しない場合、又は、前記第2の起動情報が前記有効期限外に入力された場合は、前記認証部での認証を行う、
請求項2記載の電子制御装置。
【請求項8】
当該電子制御装置は移動体に搭載されている、
請求項1~7記載の電子制御装置。
【請求項9】
電子制御装置(10)で実行されるソフトウェア認証方法であって、
当該電子制御装置は、
センサ装置(13~16)にアクセスするソフトウェアが起動したことを示す起動情報が入力され(S101,S201)、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得し(S102,S202)、
前記ソフトウェア特定情報を保存し(S103)、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行い(S104,S205)、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する(S106,S207)、
ソフトウェア認証方法。
【請求項10】
電子制御装置(10)で実行可能なソフトウェア認証プログラムであって、
センサ装置(13~16)にアクセスするソフトウェアが起動したことを示す起動情報が入力され(S101,S201)、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得し(S102,S202)、
前記ソフトウェア特定情報を保存し(S103)、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行い(S104,S205)、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する(S106,S207)、
ソフトウェア認証プログラム。
【請求項11】
センサ装置(13~16)及び電子制御装置(10)から構成される電子制御システムであって、
前記電子制御装置は、
センサ装置にアクセスするソフトウェアが起動したことを示す起動情報が入力される入力部(101)と、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得するソフトウェア特定情報管理部(102)と、
前記ソフトウェア特定情報を保存する保存部(105)と、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行う認証部(103)と、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する出力部(106)と、を有し、
前記センサ装置は、
センサデータを取得する検知部(111)と、
前記アクセス要求を受信する受信部(112)と
前記アクセス要求に応じて前記センサデータを送信する送信部(113)と、を有する
電子制御システム(1)。


【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子制御装置に関するものであり、主として車両用の電子制御装置、電子制御装置で実現する方法、電子制御装置で実行可能なプログラム、及び複数の電子制御装置からなる電子制御システムに関する。
【背景技術】
【0002】
自動車においては、各種センサ装置及び電子制御装置が車載ネットワークで接続された電子制御システムが構築されている。
【0003】
各種センサ装置で取得したセンサデータは、電子制御装置にインストールされたソフトウェアによって利用される。センサデータは主として車両の走行や車両の制御に用いるので、安全性確保のためセンサデータ毎に認証を行うことが考えられる。
【0004】
例えば、特許文献1には、電子制御装置からメッセージを送信する際に、メッセージ毎にMACを生成して送信することが記載されている。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2013-98719号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ここで、本発明者は、以下の課題を見出した。
センサ装置で生成されるセンサデータは、車両の走行や車両の制御に用いるデータであるが、センサ装置自体に外部とのインターフェースがあるわけでないので、乗っ取りに対する対策を講じる必要は必ずしも高くはない。しかし、センサデータにはプライバシ―情報という側面もあるので、センサデータが外部に流出することを防止する必要がある。
【0007】
そこで、本発明は、処理の遅延を防止するとともに、必要なセキュリティを担保することを目的とする。
【課題を解決するための手段】
【0008】
本開示の一態様による電子制御装置(10)は、
センサ装置(13~16)にアクセスするソフトウェアが起動したことを示す起動情報が入力される入力部(101)と、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得するソフトウェア特定情報管理部(102)と、
前記ソフトウェア特定情報を保存する保存部(105)と、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行う認証部(103)と、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する出力部(106)と、を有する。
【0009】
本開示の一態様による電子制御装置システム(1)は、
センサ装置(13~16)及び電子制御装置(10)から構成される電子制御システムであって、
前記電子制御装置は、
センサ装置にアクセスするソフトウェアが起動したことを示す起動情報が入力される入力部(101)と、
前記起動情報から、前記ソフトウェアを特定するソフトウェア特定情報を取得するソフトウェア特定情報管理部(102)と、
前記ソフトウェア特定情報を保存する保存部(105)と、
前記起動情報に基づき、前記ソフトウェアの前記センサ装置へのアクセスの認証を行う認証部(103)と、
前記ソフトウェアから出力されたアクセス要求を前記センサ装置に出力する出力部(106)と、を有し、
前記センサ装置は、
センサデータを取得する検知部(111)と、
前記アクセス要求を受信する受信部(112)と
前記アクセス要求に応じて前記センサデータを送信する送信部(113)と、を有する。
【0010】
なお、特許請求の範囲、及び本項に記載した発明の構成要件に付した括弧内の番号は、本発明と後述の実施形態との対応関係を示すものであり、本発明を限定する趣旨ではない。
【発明の効果】
【0011】
本開示の電子制御装置、ソフトウェア認証方法、ソフトウェア認証プログラム、及び電子制御システムによれば、処理の遅延を防止するとともに、必要なセキュリティを担保することができる。
【図面の簡単な説明】
【0012】
図1】本実施形態の電子制御装置システムの構成を説明する図
図2】本実施形態の電子制御装置の構成を説明する図
図3】本実施形態のセンサ装置の構成を説明する図
図4】本実施形態の電子制御システム又は電子制御装置の動作を説明する図
図5】本実施形態の電子制御システム又は電子制御装置の動作を説明する図
【発明を実施するための形態】
【0013】
以下、本発明の実施形態について、図面を参照して説明する。
【0014】
なお、本発明とは、特許請求の範囲又は課題を解決するための手段の項に記載された発明を意味するものであり、以下の実施形態に限定されるものではない。また、少なくともかぎ括弧内の語句は、特許請求の範囲又は課題を解決するための手段の項に記載された語句を意味し、同じく以下の実施形態に限定されるものではない。
【0015】
特許請求の範囲の従属項に記載の構成及び方法は、特許請求の範囲の独立項に記載の発明において任意の構成及び方法である。従属項に記載の構成及び方法に対応する実施形態の構成及び方法、並びに特許請求の範囲に記載がなく実施形態のみに記載の構成及び方法は、本発明において任意の構成及び方法である。特許請求の範囲の記載が実施形態の記載よりも広い場合における実施形態に記載の構成及び方法も、本発明の構成及び方法の例示であるという意味で、本発明において任意の構成及び方法である。いずれの場合も、特許請求の範囲の独立項に記載することで、本発明の必須の構成及び方法となる。
【0016】
実施形態に記載した効果は、本発明の例示としての実施形態の構成を有する場合の効果であり、必ずしも本発明が有する効果ではない。
【0017】
複数の実施形態がある場合、各実施形態に開示の構成は各実施形態のみで閉じるものではなく、実施形態をまたいで組み合わせることが可能である。例えば一の実施形態に開示の構成を、他の実施形態に組み合わせても良い。また、複数の実施形態それぞれに開示の構成を集めて組み合わせても良い。
【0018】
発明が解決しようとする課題に記載した課題は公知の課題ではなく、本発明者が独自に知見したものであり、本発明の構成及び方法と共に発明の進歩性を肯定する事実である。
【0019】
1.電子制御システム1の構成
図1を用いて、本実施形態の電子制御装置10を含む電子制御システム1を説明する。本実施形態の電子制御装置及び電子制御システムは、「移動体」である車両に「搭載されている」車載装置及び車載システムを想定しているが、これらに限定されるものではない。
【0020】
ここで、「移動体」とは、移動可能な物体をいい、移動速度は任意である。また移動体が停止している場合も当然含む。例えば、自動車、自動二輪車、自転車、歩行者、船舶、航空機、及びこれらに搭載される物を含み、またこれらに限らない。
また、「搭載されている」とは、移動体に直接固定されている場合の他、移動体に固定されていないが移動体と共に移動する場合も含む。例えば、移動体に乗った人が所持している場合、移動体に載置された積荷に搭載されている場合、が挙げられる。
【0021】
電子制御システム1は、単数または複数の「電子制御装置」(ECU(Electronic Control Unit)と記載することもある)、及びセンサ装置から構成されるシステムである。電子制御装置及び各センサ装置は、例えば、CAN(Controller Area Network)やLIN(Local Interconnect Network)といった車載ネットワークの他、イーサネット(登録商標)、又は無線通信ネットワークを介して接続されている。以下、これらを総称してネットワークとする。
【0022】
ここで、「電子制御装置」は、例えば、主に半導体装置で構成され、CPU(Central Processing Unit)、およびRAM(Random Access Memory)等の揮発性記憶部を有する、いわゆる情報処理装置として構成されていてもよい。この場合、情報処理装置はさらに、フラッシュメモリ等の不揮発性記憶部、通信ネットワーク等に接続されるネットワークインターフェース部等を有していてもよい。さらに、このような情報処理装置はパッケージ化された半導体装置(素子)であっても、配線基板において各半導体装置が配線接続された構成であってもよい。
【0023】
電子制御装置10は、本実施形態の電子制御装置であり、詳細な構成は後述する。電子制御装置10は、例えば、Adaptive Platform(AP)と呼ばれる、動的な機能の拡張が可能なプラットフォームをベースとした電子制御装置である。APは主に、自動運転用の電子制御装置に適したプラットフォームである。
【0024】
自動運転用電子制御装置11は、自動運転の制御に用いる電子制御装置であり、APをベースとしている。自動運転用電子制御装置11では、自動運転を実現するために、各種センサ装置にアクセスするソフトウェアがインストールされている。例えば、後述のミリ波センサ13や、LiDAR(Light Detection and Ranging)センサ14、画像センサ15にアクセスして、ミリ波センサ13、LiDARセンサ14、画像センサ15から取得した情報を統合的に分析し、人、車両、走行路、標識等の物体の種類を判別するセンサフュージョンソフトがインストールされ、自動運転用電子制御装置11で実行される。
【0025】
車両制御用電子制御装置12は、車両制御に用いる電子制御装置である。車両制御用電子制御装置12は、例えばClassic Platform(CP)と呼ばれる、静的な機能を最適化したプラットフォームをベースとした電子制御装置である。
【0026】
本実施形態では、自動運転用電子制御装置11及び車両制御用電子制御装置12がネットワークに接続されているが、その他の電子制御装置が接続されていてもよい。接続する電子制御装置としては、例えば、エンジン、ハンドル、ブレーキ等の制御を行う駆動系電子制御装置、メータやパワーウインドウ等の制御を行う車体系電子制御装置、ナビゲーション装置等の情報系電子制御装置、あるいは、障害物や歩行者との衝突を防止するための制御を行う安全制御系電子制御装置が挙げられる。
【0027】
また、電子制御システム1を構成する各電子制御装置は、ハイパーバイザによって管理される仮想マシンで実現してもよい。
【0028】
ミリ波センサ13は、ミリ波を対象物に照射してセンシングを行う機器であり、例えば対象物の距離や角度といった位置情報、及び対象物との相対速度を検知する。
【0029】
LiDARセンサ14は、パルス状に発光するレーザー照射に対する散乱光を測定する機器であり、例えば遠距離にある対象までの距離やその対象の性質を検知する。
【0030】
画像センサ15は、光学系及びCCD等の撮像素子を含むセンサである。画像センサ15の例として、車両の外部や内部を撮影する車載カメラが挙げられる。
【0031】
車内・車外環境センサ16は、車両の内外の環境情報を取得するセンサである。車内・車外環境センサ16の例として、温度計、湿度計、日照計が挙げられる。また、乗員の動き等を観察するカメラ等の画像センサを、車内・車外環境センサ16として用いてもよい。
【0032】
ミリ波センサ13、LiDARセンサ14、画像センサ15、及び車内・車外環境センサ16は、「センサ装置」に該当する。このほか、外部との通信を制御する通信用電子制御装置や、外部センサを接続する各種インターフェースも、「センサ装置」に該当する。これらのセンサ装置は、図1では電子制御装置を介してネットワークに接続されているが、電子制御装置を介さず、直接ネットワークに接続されていてもよい。
【0033】
ここで、「センサ装置」とは、情報やデータを取得、生成、又は受信する装置をいう。
【0034】
2.電子制御装置10の構成
図2を用いて、本実施形態の電子制御装置10の構成を説明する。
電子制御装置10は、入力部101、ソフトウェア特定情報管理部102、認証部103、有効期限管理部104、保存部15、出力部106を有する。
【0035】
電子制御装置10は、大きく分けて、通信管理部及びセキュリティ管理部から構成される。通信管理部は、主にネットワーク上の通信を管理し、異常な通信を遮断する機能を有している。通信管理部は、PEP(Policy Enforcement Point)とも称される。セキュリティ管理部は、ネットワークのセキュリティを確保する機能を有している。セキュリティ管理部は、PDP(Policy Decision Point)とも称される。これらは、同一の半導体素子に実装されても、異なる半導体素子に分けて実装されてもよい。また、電子制御装置10の構成を通信管理部及びセキュリティ管理部のどちらに振り分けるかは適宜決めることができる。例えば、ソフトウェア特定情報管理部102や有効期限管理部104を、セキュリティ管理部の機能としてもよい。
【0036】
電子制御装置10は、汎用のCPU、RAM等の揮発性メモリ、ROM、フラッシュメモリ又はハードディスク等の不揮発性メモリ、各種インターフェース、及びこれらを接続する内部バスで構成することができる。そして、これらのハードウェア上でソフトウェアを実行することにより、図2に記載の各機能ブロックの機能を発揮させるように構成することができる。
もちろん、電子制御装置10を、LSI等の専用のハードウェアで実現してもよい。
【0037】
入力部101は、ネットワークに接続された電子制御装置やセンサ装置が送信した情報(データ)や命令(コマンド)が入力される。本実施形態では、例えば自動運転用電子制御装置11のセンサフュージョンソフトのような、センサ装置にアクセスするソフトウェアが起動したことを示す「起動情報」が入力される。
【0038】
ここで、「起動情報」とは、起動したことを直接示す情報である場合の他、起動後最初に送信することが規定された情報など、起動したことが特定できるような間接事実を示す情報であってもよい。
【0039】
起動情報の例としては、ソフトウェアを特定するソフトウェア特定情報が挙げられる。ソフトウェア起動時にソフトウェア特定情報を最初に送信することにより、当該ソフトウェアが起動したことをネットワークに接続されている機器に対して通知することができる。ソフトウェア特定情報の例として、ソフトウェアの種類、車両の識別番号、ソフトウェアの識別番号、ソフトウェアのチェックサム、ソフトウェアのユーザ識別番号、ソフトウェア名、ソフトウェア格納場所(ファイルパス)、ハッシュ値(例えば、ソフトウェア実行ファイルのチェックサムから計算したハッシュ値)、予め割り当てられた固定鍵、証明書が挙げられる。
特にチェックサムやハッシュ値を用いることにより、少ないデータ量でソフトウェアを特定することができる。
【0040】
その他、起動情報には、ソフトウェアがアクセスするセンサ装置を特定するセンサ装置特定情報を含めてもよい。例えば本実施形態のセンサフュージョンソフトでは、ミリ波センサ13の識別番号や、LiDARセンサ14の識別番号を含めてもよい。これにより、より正確にソフトウェアを特定できるとともに、アクセスするセンサ装置の情報を簡単に得ることができる。
【0041】
ソフトウェア特定情報管理部102は、ソフトウェアを特定するソフトウェア特定情報の管理を行う。具体的には、ソフトウェア特定情報管理部102は、以下の処理を行う。
【0042】
第1に、ソフトウェア特定情報管理部102は、入力部101に入力された「起動情報から」、ソフトウェアを特定するソフトウェア特定情報を「取得する」。例えば、起動情報に含まれるソフトウェア特定情報を抽出してもよいし、起動情報に含まれる1つまたは複数の情報から、起動したソフトウェアを推定するようにしてもよい。
【0043】
ここで、「起動情報から」「取得する」とは、起動情報から新たにソフトウェア特定情報を生成することにより取得する場合、起動情報からソフトウェア特定情報を抜き出すことにより取得する場合、のいずれも含む。
【0044】
第2に、ソフトウェア特定情報管理部102は、取得したソフトウェア特定情報を後述の保存部105に保存したり、保存部105に保存したソフトウェア特定情報を読み出したりなど、ソフトウェア特定情報の入出力を管理する。
【0045】
第3に、ソフトウェア特定情報管理部102は、保存部105に保存されたソフトウェア特定情報(「第1のソフトウェア特定情報」に相当)と、入力部101に新たに入力された起動情報(「第2の起動情報」に相当)から求めたソフトウェア特定情報(「第2のソフトウェア特定情報」に相当)とを比較し、一致するかどうかを判定する。すなわち、新たに入力された起動情報から求めたソフトウェア特定情報が、既に保存部105に保存されているかどうかを判定することにより、過去に起動したソフトウェアかどうかを判定する。
【0046】
認証部103は、入力部101から入力された起動情報に基づき、ソフトウェアのセンサ装置へのアクセスの認証を行う。本実施形態では、例えば自動運転用電子制御装置11のセンサフュージョンソフトの起動情報に、ソフトウェアの識別番号と固定鍵、センサ装置としてのミリ波センサ13の識別番号、及びセンサ装置としてのLiDARセンサ14の識別番号が含まれているとする。この場合、認証部103は、認証部103に接続された図示しないデータベースでこれらの情報が一致するかどうかを確認する。そして、認証部103は、通信管理部に対し、センサフュージョンソフトから以降に出力されたミリ波センサ13及びLiDARセンサ14へのアクセス要求を、出力部106からミリ波センサ13及びLiDARセンサ14へ出力してよいとの認証の結果を通知することにより、アクセスの認証が完了する。
【0047】
認証部103の認証方法は、任意の方法を用いることができる。例えば、起動情報に対してメッセージ認証を行ってもよい。
【0048】
認証部103の認証が成功すれば、電子制御装置10はソフトウェアのアクセス要求を認証済アクセス要求としてセンサ装置に出力する。認証部103の認証が失敗すれば、電子制御装置10によりアクセス要求は遮断される。
【0049】
有効期限管理部104は、認証部103から通知された認証の有効期限の管理を行う。有効期限とは、認証が有効な期限又は期間を示す情報である。有効期限は、時間や時刻で表すことの他、例えば走行距離や、走行速度が所定の速度を超えた場合等、認証が無効になる時点が特定できるような情報であればよい。具体的には、有効期限管理部103は、以下の処理を行う。
【0050】
第1に、有効期限管理部104は、認証部103から通知された認証に対し、有効期限を設定する。有効期限は、一定の値でも、条件により変動する値でもよい。また、ソフトウェアの種類に応じて設定してもよい。例えば、センサ装置に頻繁にアクセスするソフトウェアに対しては、有効期限を長く設定する。また、重要なデータを出力するセンサ装置が含まれる場合は、有効期限を短く設定してもよい。
【0051】
第2に、有効期限管理部104は、設定した有効期限を後述の保存部105に保存したり、保存部105に保存した有効期限を読み出したりなど、有効期限の入出力を管理する。
【0052】
第3に、有効期限管理部104は、入力部101に新たに入力された起動情報(「第2の起動情報」に相当)が、保存部105に保存された有効期限内に入力されたかどうかを判定する。すなわち、新たに入力された起動情報が、既に保存部105に保存されている認証の有効期限内かどうかを判定することにより、そのソフトウェアが過去に起動したソフトウェアかどうかを判定する。
【0053】
保存部105は、ソフトウェア特定情報管理部102で取得したソフトウェア特定情報を保存する。また、保存部105は、有効期限管理部104で設定した有効期限を保存する。
保存部105は、ハードウェアのメモリであり、SRAMやDRAMといった揮発性メモリ、フラッシュメモリやハードディスク等の不揮発性メモリである。保存部105には、バッファも含まれる。電子制御装置100が仮想マシンである場合は、仮想メモリでもよい。保存部105は、電子制御装置10の外部に設け、ネットワークを介してアクセスするようにしてもよい。
【0054】
出力部106は、入力部101に入力された情報(データ)や命令(コマンド)が、アプリケーション特定情報管理部102、認証部103、有効期限管理部104の制御を受けて出力される。本実施形態では、認証を受けたセンサフュージョンソフトから出力されたミリ波センサ13及びLiDARセンサ14へのアクセス要求を、認証済アクセス要求としてミリ波センサ13及びLiDARセンサ14へ出力する。
【0055】
以上のような構成により、本実施形態の電子制御装置10は、ソフトウェアの起動情報に基づき認証を行っているので、ソフトウェア単位で認証を行うことができる。その結果、個々のデータやコマンドを逐一認証する必要はないので、処理の遅延を防止しつつ、必要なセキュリティを担保することができる。
また、本実施形態の電子制御装置10は、起動情報からソフトウェア特定情報を取得して保存しているので、2回目以降のソフトウェアの起動に対する認証を簡易に行うことができる。その結果、2回目以降の起動時の処理の遅延を防止しつつ、必要なセキュリティを担保することができる。
そして、本実施形態の電子制御装置10は、認証の有効期限を設定しているので、ソフトウェアに応じてセキュリティの有効期間を調整することができる。
【0056】
3.センサ装置の構成
図3を用いて、本実施形態のセンサ装置の構成を説明する。
センサ装置は、検知部111、受信部112、及び送信部113を有する。
なお、以下の検知部111、受信部112、及び送信部113の説明は、センサ装置自身で実現する場合の他、図1のようにネットワークとの間に介在する電子制御装置と連携して実現する場合、あるいはセンサ装置はセンサデータを生成するのみで、ネットワークとの間に介在する電子制御装置上で実現する場合も含む。いずれの場合も、検知部111、受信部112、及び送信部113の機能を発揮する部分が「センサ装置」に該当する。
【0057】
検知部111は、センシング対象を測定又は検出することにより、センサデータを取得する。
センサ装置がミリ波センサ13の場合は、対象物の距離や角度といった位置情報や、対象物との相対速度を取得する。
センサ装置がLiDARセンサ14の場合は、対象物までの距離やその対象の性質を取得する。
センサ装置が画像センサ15の場合は、撮像対象の画像データを取得する。
センサ装置が車内・車外環境センサ16の場合は、温度、湿度、光量等を取得する。
【0058】
受信部112は、センサ装置にアクセスするソフトウェアがセンサ装置に送信したアクセス要求を受信する。本実施形態の場合、例えば自動運転用電子制御装置11で実行されているセンサフュージョンソフトが、ミリ波センサ13やLiDARセンサ14に送信したアクセス要求を受信する。本実施形態の場合、ソフトウェア自体がセンサ装置へのアクセスの認証を得ているので、アクセス要求は必ずしも電子制御装置10を経由しなくてもよい。
【0059】
送信部113は、受信部112で受信したアクセス要求に応じて、検知部111で検知したセンサデータを、送信元であるソフトウェアが起動している機器に送信する。本実施形態の場合、ミリ波センサ13やLiDARセンサ14で検知したセンサデータを、送信元である自動運転用電子制御装置11に送信する。
【0060】
4.電子制御装置10の動作
図4及び図5は、電子制御システム1又は電子制御装置10の動作を示す図である。図4は、ソフトウェアの初回起動時の処理を説明する図、図5は、ソフトウェアの2回目以降の起動時の処理を説明する図である。
【0061】
図4及び図5は、電子制御システム1や電子制御装置10で実行されるソフトウェア認証方法を示すだけでなく、電子制御システム1や電子制御装置10で実行可能なソフトウェア認証プログラムの処理手順を示すものでもある。そして、これらの処理は、図4及び図5で示した順序には限定されない。すなわち、あるステップでその前段のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。例えば、以下のS203とS204は順序を入れ替えることができる。
【0062】
まず、図4を用いて、ソフトウェアの初回起動時の処理を説明する。初回起動時の例として、車両起動時、あるいは車両起動後初めてソフトウェアが発揮する機能を使用した時、が挙げられる。
【0063】
センサ装置にアクセスするソフトウェアが起動すると、ソフトウェアを搭載する電子制御装置は起動情報を送信する。本実施形態では、自動運転用電子制御装置11のセンサフュージョンソフトが起動すると、自動運転用電子制御装置11は、センサフュージョンソフトの起動情報を送信する。
そして、電子制御装置10の入力部101には、ネットワークを介して起動情報が入力される(S101)。
【0064】
ソフトウェア特定情報管理部102は、S101で受信した起動情報から、ソフトウェアを特定するソフトウェア特定情報を取得する(S102)。
【0065】
保存部105は、S102で取得したソフトウェア特定情報を保存する(S103)。
【0066】
認証部103は、S101で入力された起動情報に基づき、ソフトウェアのセンサ装置へのアクセスの認証を行う(S104)。本実施形態では、起動情報に含まれるセンサ装置特定情報を用いて、センサフュージョンソフトのミリ波センサ13及びLiDARセンサ14へのアクセスの認証を行う。
【0067】
認証部103でソフトウェアのセンサ装置へのアクセスが認証された場合、有効期限管理部104は、S104の認証の有効期限を設定する(S105)。
【0068】
認証部103でソフトウェアのセンサ装置へのアクセスが認証された場合、出力部106はソフトウェアから出力されたアクセス要求をセンサ装置に出力する(S106)。本実施形態の場合、認証を受けたセンサフュージョンソフトから出力されたミリ波センサ13及びLiDARセンサ14へのアクセス要求を、ミリ波センサ13及びLiDARセンサ14へ出力する。
【0069】
次に、図5を用いて、ソフトウェアの2回目以降の起動時の処理を説明する。
一旦終了していたソフトウェアが再度起動すると、ソフトウェアを搭載する電子制御装置は起動情報を送信する。そして、電子制御装置10の入力部101には、ネットワークを介して起動情報(「第2の起動情報」に相当)が入力される(S201)。
【0070】
ソフトウェア特定情報管理部102は、S201で受信した起動情報から、ソフトウェアを特定するソフトウェア特定情報(「第2のソフトウェア特定情報」に相当)を取得する(S202)。
【0071】
ソフトウェア特定情報管理部102は、保存部105からすでに保存されているソフトウェア特定情報(「第1のソフトウェア特定情報」に相当)を読み出す。そして、ソフトウェア特定情報管理部102は、保存部105から読み出したソフトウェア特定情報とS202で取得したソフトウェア特定情報とが一致するかどうかを判定する(S203)。一致する場合は(S203:Y)S204に処理を移し、一致しない場合は(S203:N)S205に処理を移す。
【0072】
有効期限管理部104は、保存部105からすでに保存されている有効期限を読み出す。そして、S201で入力された起動情報が有効期限内に入力されたかどうかを判定する(S204)。有効期限内に入力された場合は(S204:Y)S207に処理を移し、有効期限内に入力されない、つまり有効期限外に入力された場合は(S204:N)、S205に処理を移す。
【0073】
認証部103は、S201で入力された起動情報に基づき、ソフトウェアのセンサ装置へのアクセスの認証を行う(S205)。
【0074】
認証部103でソフトウェアのセンサ装置へのアクセスが認証された場合、有効期限管理部104は、S205の認証の有効期限を設定する(S206)。
【0075】
出力部106は、ソフトウェアから出力されたアクセス要求をセンサ装置に出力する(S207)。
【0076】
なお、S203でソフトウェア特定情報管理部102が比較に用いるソフトウェア特定情報と、S104やS205で認証部103が用いる起動情報は、同じであってもよいが、異なる情報を用いることが望ましい。たとえば、S203で用いるソフトウェア特定情報の情報量が、S104やS205で用いる起動情報の情報量よりも少なければ、認証の信頼度を上げるとともに、2回目以降の起動を早めることができる。
【0077】
また、1回目の認証で一時鍵を生成し、この一時鍵を2回目以降のソフトウェア起動時にソフトウェア特定情報管理部102が比較に用いるソフトウェア特定情報として用いてもよい。
【0078】
なお、図5は、ソフトウェアの2回目以降の起動時の処理として説明したが、初回起動時にも適用することができる。すなわち、初回起動時は保存部105にはソフトウェア特定情報は保存されていないから、S203での判定結果はN(No)となり、S205で認証が行われる。
【0079】
また、図5のフローに加え、定期的に有効期限管理部104を起動して有効期限をチェックすることにより、S203のステップを省略して認証部103での認証を行うようにしてもよい。これにより、頻繁に起動と終了を繰り返すようなソフトウェアの起動を早めることができる。また、異常があればソフトウェアの起動のタイミングに関係なく、センサ装置へのアクセスを遮断することができる。
【0080】
以上のような処理により、本実施形態のソフトウェア認証方法及びソフトウェア認証プログラムは、2回目以降の起動時には認証を省略するので、処理の遅延を防止することができる。
また、本実施形態のソフトウェア認証方法及びソフトウェア認証プログラムは、有効期限外に起動した場合は再度認証を行うので、必要なセキュリティを担保することができる。
【0081】
5.総括
以上、本発明の各実施形態における電子制御装置、及び当該電子制御装置を備える電子制御システムの特徴について説明した。
【0082】
各実施形態で使用した用語は例示であるので、同義の用語、あるいは同義の機能を含む用語に置き換えてもよい。
【0083】
実施形態の説明に用いたブロック図は、装置の構成を機能毎に分類及び整理したものである。それぞれの機能を示すブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。また、機能を示したものであることから、かかるブロック図は方法の発明、及び当該方法を実現するプログラムの発明の開示としても把握できるものである。
【0084】
各実施形態に記載した処理、フロー、及び方法として把握できる機能ブロック、については、一のステップでその前段の他のステップの結果を利用する関係にある等の制約がない限り、順序を入れ替えてもよい。
【0085】
各実施形態、及び特許請求の範囲で使用する、第1、第2、乃至、第N(Nは整数)、の用語は、同種の2以上の構成や方法を区別するために使用しており、順序や優劣を限定するものではない。
【0086】
各実施形態の電子制御装置は、車両に搭載される車載装置を構成する電子制御装置であることを前提としているが、本発明の電子制御装置は、特許請求の範囲で特に限定する場合を除き、任意の電子制御システムに適用される。
【0087】
また、本発明の装置の形態の例として、以下のものが挙げられる。
部品の形態として、半導体素子、電子回路、モジュール、マイクロコンピュータが挙げられる。
半完成品の形態として、電子制御装置(ECU(Electric Control Unit))、システムボードが挙げられる。
完成品の形態として、携帯電話、スマートフォン、タブレット、パーソナルコンピュータ(PC)、ワークステーション、サーバが挙げられる。
その他、通信機能を有するデバイス等を含み、例えばビデオカメラ、スチルカメラ、カーナビゲーションシステムが挙げられる。
【0088】
また各装置に、アンテナや通信用インターフェースなど、必要な機能を追加してもよい。
【0089】
加えて、本発明は、各実施形態で説明した構成及び機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本発明を実現するためのプログラム、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
【0090】
専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
【産業上の利用可能性】
【0091】
本発明の電子制御装置は、主として自動車に搭載される車載用電子制御装置として説明したが、自動二輪車、船舶、鉄道、航空機等、移動する移動体全般に適用することが可能である。また、移動体に限らず、マイクロコンピュータを包含する製品全般に適用可能である。
【符号の説明】
【0092】
1 電子制御システム、10 電子制御装置、101 入力部、102 ソフトウェア特定情報管理部、103 認証部、104 有効期限管理部、105 保存部、106 出力部
図1
図2
図3
図4
図5