(57)【特許請求の範囲】
【請求項１】
自動車やオートバイのような車両の制御器により使用されるソフトウェアを提供するための方法であって、ソフトウェアが、制御器によるそのソフトウェアを使用する前に、ソフトウェア署名箇所のハードウェアを用い、ソフトウェア署名箇所の秘密鍵或いは個人鍵を使用してパブリック・キー・メソッドのもと偽造に対抗して署名され、署名されたソフトウェアが、制御器内の実行制御されるマイクロプロセッサを用い、ソフトウェア署名箇所の秘密鍵に対して相補的な公開鍵を使用してその非偽造性についてチェックされる、前記方法において、
所謂トラストセンタである管理局のハードウェアを用い、パブリック・キー・メソッドのもと、１つの又は複数の制御器タイプの有効性制限と、ソフトウェア署名箇所の公開鍵と、管理局の秘密鍵を用いたそれらに対する管理局の署名とを有するように、ソフトウェア署名証明書が作成されること、
ソフトウェア利用者を特定する情報を含むソフトウェアの利用のためのイネーブルコードデータが、イネーブルコード作成署名箇所のハードウェアを用い、イネーブルコード作成署名箇所の秘密鍵を使用してパブリック・キー・メソッドのもと署名されること、
管理局のハードウェアを用い、パブリックキーメソッドのもと、イネーブルコード署名証明書が、イネーブルコード作成署名箇所の公開鍵と、管理局の秘密鍵を用いた管理局の署名とを有するように作成されること、及び、
前記のイネーブルコード署名証明書、ソフトウェア署名証明書、イネーブルコードデータ及びその署名、並びに、ソフトウェア及びその署名が、制御器内の実行制御されるマイクロプロセッサを用い、制御器内に記憶されること、
を特徴とする方法。
【請求項２】
管理局署名証明書或いはトラストセンタ署名証明書が、管理局のハードウェアを用い、パブリック・キー・メソッドのもと、管理局の公開鍵と、管理局の秘密鍵を用いた管理局の署名とを有するように作成されることを特徴とする、請求項１に記載の方法。
【請求項３】
管理局署名証明書が、制御器内の実行制御されるマイクロプロセッサを用い、保護されたメモリ内、保護されたメモリ領域内などのように偽造及び／又は交換に対して保護された方式で制御器内にて記憶されることを特徴とする、請求項２に記載の方法。
【請求項４】
イネーブルコード署名証明書が、所定の制御器に対する制限、又は、所定の車両の車体番号に対する制限のような、１つの又は複数の有効性制限を有することを特徴とする、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
ソフトウェア署名証明書が、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、制御機内に記憶された管理局の公開鍵を使用して非偽造性に関してチェックされることを特徴とする、請求項３に記載の方法。
【請求項６】
署名されたソフトウェアが、制御機内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、ソフトウェア署名証明書内に含まれているソフトウェア署名箇所の公開鍵を使用して非偽造性に関してチェックされることを特徴とする、請求項５に記載の方法。
【請求項７】
イネーブルコード署名証明書が、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、制御器内に記憶された管理局の公開鍵を使用して非偽造性に関してチェックされることを特徴とする、請求項３に記載の方法。
【請求項８】
署名されたイネーブルコードデータが、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、イネーブルコード署名証明書内に含まれているイネーブルコード作成署名箇所の公開鍵を使用して非偽造性に関してチェックされることを特徴とする、請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
主として本発明は、請求項１の前提部に記載した、特に自動車やオートバイのような車両の制御器により使用されるソフトウェアを提供するための方法に関する。
【背景技術】
【０００２】
自動車のための制御器は、通常、ソフトウェアにより制御される実行制御機能を有し、この実行制御機能は、制御器の製造後、該制御器の製造者又は車両製造者により該制御器の取付後に該制御器内に記憶される。
【０００３】
短所としては、害を与えるようにソフトウェアが交換又は変更され得るということが挙げられる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の課題は、特に自動車又は乗用自動車におけるソフトウェア／ハードウェアの組み合わせの改善にある。
【課題を解決するための手段】
【０００５】
前記課題は、独立特許請求項に記載した措置により各々解決される。本発明の有利な構成は従属特許請求項に記載されている。
【０００６】
本発明の重要な観点は、パブリック・キー・メソッド（公開鍵方式）を使用し、特に自動車やオートバイのような車両の制御器により使用されるために設けられているソフトウェアを、ソフトウェア署名箇所のハードウェアを用い、ソフトウェア署名箇所の秘密鍵或いは個人鍵を使用し、偽造に対抗して署名することにある。パブリック・キー・メソッドは、特に、特別な鍵ペア、即ち秘密の個人鍵とこの個人鍵に対して相補的な公開鍵とを使用することにより傑出している。
【０００７】
本発明では、ソフトウェア署名証明書を、所謂トラストセンタ（信用センタ）である管理局のハードウェアを用い、ソフトウェア署名箇所の公開鍵と管理局の秘密鍵とを使用してパブリック・キー・メソッドのもと作成することが考慮されている。
【０００８】
本発明では、管理局署名証明書或いはトラストセンタ署名証明書を、管理局のハードウェアを用い、管理局の秘密鍵を使用して作成することが考慮されている。
【０００９】
本発明では、イネーブルコードデータを、イネーブルコード作成署名箇所のハードウェアを用い、イネーブルコード作成署名箇所の秘密鍵を使用してパブリック・キー・メソッドのもと署名することが考慮されている。
【００１０】
本発明では、イネーブルコード署名証明書を、管理局のハードウェアを用い、管理局の秘密鍵を使用してパブリック・キー・メソッドのもと作成することが考慮されている。
【００１１】
本発明では、管理局署名証明書を、制御器内の実行制御されるマイクロプロセッサを用い、保護されたメモリ内、保護されたメモリ領域内などのように偽造及び／又は交換に対して保護された方式で制御器内に記憶させることが考慮されている。
【００１２】
本発明では、イネーブルコード署名証明書、ソフトウェア署名証明書、イネーブルコードデータ及びその署名、並びに、ソフトウェア及びその署名を、制御器内の実行制御されるマイクロプロセッサを用い、制御器内に記憶させることが考慮されている。
【００１３】
本発明では、ソフトウェア署名証明書が、特に１つの又は複数の制御器タイプに対する制限のような、１つの又は複数の有効性制限を有することが考慮されている。
【００１４】
本発明では、イネーブルコード署名証明書が、特に、例えば制御器内に不変に記憶されている番号や識別などに基づいて個別化されている所定の制御器に対する制限、又は、車両の車台番号に対する制限のような、１つの又は複数の有効性制限を有することが考慮されている。
【００１５】
本発明では、ソフトウェア署名証明書が、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、管理局の公開鍵を使用して非偽造性に関してチェックされることが考慮されている。
【００１６】
本発明では、署名されたソフトウェアが、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、ソフトウェア署名証明書内に含まれているソフトウェア署名箇所の公開鍵を使用して非偽造性に関してチェックされることが考慮されている。
【００１７】
本発明では、イネーブルコード署名証明書が、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、管理局の公開鍵を使用して非偽造性に関してチェックされることが考慮されている。
【００１８】
本発明では、署名されたイネーブルコードデータが、制御器内の実行制御されるマイクロプロセッサを用い、パブリック・キー・メソッドのもと、イネーブルコード署名証明書内に含まれているイネーブルコード作成署名箇所の公開鍵を使用して非偽造性に関してチェックされることが考慮されている。
【００１９】
本発明では、実行制御されるマイクロプロセッサが制御器に備えられていて、このマイクロプロセッサがパブリック・キー・メソッドを使用して前記方法の１つを実施することが考慮されている。
【発明を実施するための最良の形態】
【００２０】
次に、図面に基づき本発明を詳細に説明する。この際、同じ符号には同じ措置又は同様に作用する措置が示されている。
【実施例１】
【００２１】
図１に描かれていて周知のパブリック・キー・メソッド（公開鍵方式）を使用する実行パターン１００において、制御器１１５を実行制御するプログラムコード、即ち制御器ソフトウェア１１３はその署名の目的で所謂ソフトウェア署名箇所１０５へと伝達される。制御器１１５はプログラム制御されるデータ処理装置に係るものであり、このデータ処理装置は、好ましくはプログラマブルメモリとマイクロプロセッサとを有する。署名に基づき、プログラムコードが署名後に変更されたか否か或いは不正操作されたか否かが認識され得る。このことがどのように行われるかについて、以下で詳細に説明する。
【００２２】
制御器としては、特に、アクチュエータを制御及び／又は調整するための車両内の従来の制御器としても、例えば通信システムやオーディオシステムやナビゲーションシステムのようなプログラム制御されるその他の車両装備としても理解されるべきである。現在では多数の制御器が車両内の様々な機能或いはアクチュエータのために設けられているが、本発明に従う制御器は、プログラム制御され且つ１つ以上の制御器の制御及び／又は調整の役割を担う１つの又は複数のデータ処理装置に係るものでもある。
【００２３】
ソフトウェア署名箇所１０５は車両製造者の所謂トラストセンタ（信用センタ）１０１にソフトウェア署名証明書１２０を要求する。この際、制御器１１５は、前記車両製造者の車両のために決定されている或いは前記車両製造者の車両内に組み込まれている又は組み込むべきものである。ソフトウェア署名箇所１０５は、好ましくはソフトウェア１１３の製造者に係り、この際、この製造者は、好ましくは制御器１１５の製造者でもある。
【００２４】
トラストセンタ１０１は、その非公開の個人鍵１０３並びにソフトウェア署名箇所１０５の公開鍵１０８を使用してソフトウェア署名証明書１２０を作成する。このソフトウェア署名証明書１２０は、特に、ソフトウェア署名箇所１０５の公開鍵１０８と、明確には図示されていないが好ましくは１つの又は複数の有効性制限と、トラストセンタ１０１により作成された署名１２１とを有する。この署名は、前記証明書がその「サイン」或いは署名の後に変更されたか否か又は不正操作されたか否かのチェックを可能にする。
【００２５】
有効性を満たしていることについて制御器１１５によりチェックされるソフトウェア署名証明書１２０内の有効性制限は、特に、作動時間数、走行性能或いは走行距離、場所に関して制限された有効性（車両の滞在場所に関する）、時間データ又は期間、１つの又は複数の車両タイプ、１つの又は複数の制御器又は制御器タイプ、車台番号又は制御器番号などに該当する制限に係るものである。このソフトウェア署名証明書は、好ましくは１つの又は複数の制御器タイプに対するソフトウェアの使用可能性の制限を有する。他の制限としては、ソフトウェアの製造者が制御器の製造者でもある場合にだけソフトウェアの製造者がソフトウェアを制御器内に書き込むことができる或いはそこで記憶させる又は実行へともたらすことができるということがある。１つの又は複数の有効性制限のチェックは、好ましくは、制御器１１５内に設けられていて実行制御されるマイクロプロセッサ（非図示）により行われ、この際、その実行制御或いはソフトウェアは対応的に構成されているものである。
【００２６】
トラストセンタ１０１は更にその秘密鍵１０３を使用してトラストセンタ署名証明書１１６を作成し、このトラストセンタ署名証明書１１６は、特に、トラストセンタ１０１の公開鍵１０２と、トラストセンタ１０１の秘密鍵１０３を使用して作成された署名１１７とを有する。
【００２７】
ソフトウェア署名箇所１０５は、その個人鍵或いは秘密鍵１０９とソフトウェア１１３とを使用して署名１１４を作成し、この署名１１４に基づき、制御器により、特にプログラム制御されるマイクロプロセッサにより、ソフトウェア１１３が署名１１４を用いたその署名後に変更されたか否かがチェックされ得る。
【００２８】
証明書１１６及び１２０並びにソフトウェア１１３及びその署名１１４は制御器１１５内に伝達され、そこで記憶される。トラストセンタ署名証明書１１６の記憶化は、トラストセンタ署名証明書１１６が変更及び／又は交換され得ることを防止する保護されたメモリ又はメモリ領域１２２内で行われる。
【００２９】
このことは、ソフトウェアの製造者と制御器の製造者が同一である場合、全体的に又は部分的に、好ましくは、制御器が車両製造者に納入される以前に製造者により行われる。
【００３０】
制御器１１５内に記憶されているソフトウェアを更新するため、又は、追加的な又は選択的なソフトウェアを制御器１１５内に提供するためには、本発明に従い、車両内にソフトウェアを取り入れる複数の経路が使用され得る。このことは、サービス工場を訪れた際に、例えば、車両の診断プラグ又は車両の通信インターフェースを介し、また、ＣＤ−ＲＯＭ、ＤＶＤ又はチップカードのような車両所有者に交付されるデータ記憶媒体によっても行われ得る。その際、ソフトウェアは、場合により、該当データ記憶媒体のために自動車内に設けられている読取器を介して取り込まれる。
【００３１】
制御器１１５がこの制御器１１５に伝送されたソフトウェア１１３を実施する以前に、制御器１１５は、第１ステップで、パブリック・キー・メソッドを基礎にし、ソフトウェア署名箇所１０５の公開鍵１０８とトラストセンタ１０１の署名１２１とを有するソフトウェア署名証明書１２０を使用し、且つ、保護されたメモリ又はメモリ領域１２２内に記憶されているトラストセンタ１０１の公開鍵１０２を使用し、ソフトウェア署名証明書１２０が変更或いは不正操作されたか否かを検査する。
【００３２】
変更或いは不正操作がない場合、制御器１１５は、第２ステップで、パブリック・キー・メソッドを基礎にし、第１ステップでトラストセンタ１０１の公開鍵１０２を使用してその不変性がチェックされたソフトウェア署名箇所１０５の公開鍵１０８を使用し、且つ、ソフトウェア１１３及びその署名１１４を使用し、ソフトウェア１１３が変更或いは不正操作されたか否かを検査する。
【００３３】
好ましくは制御器のプロセッサ（非図示）により第１ステップ及び第２ステップで肯定的に進行する検査は、以下に説明する実施形態において、ソフトウェア１１３が制御器１１５により実施され得るために必要不可欠な第１の前提であるが十分な前提であるとは言えない。
【００３４】
好ましくはソフトウェア署名証明書１２０内にトラストセンタ１０１により登録された、特に証明書１２０の使用可能性の作動時間制限のような１つの又は複数の有効性制限或いは有効性前提が満たされているか否かが、好ましくは例えば制御器１１５により或いはこの制御器１１５内に設けられていて実行制御されるマイクロプロセッサ（非図示）により更にチェックされる。場合により、有効性制限或いは有効性前提を満たしていることは、ソフトウェア１１３が制御器１１５により実施され得るための他の前提を構成する。
【００３５】
この際、更には立ち入らないが、他の実施形態は、制御器によるソフトウェアの実施のための唯一の前提或いはそのために十分な前提に係るものである。
【００３６】
制御器１１５内又は車両内に記憶が既に成されていない場合には、制御器ソフトウェア１１３とソフトウェアの署名１１４とを有する署名されたソフトウェアと、公開鍵１０８の設けられているソフトウェア署名証明書１２０とが、場合により他のソフトウェアと共に、車両の所有者に対し、ＣＤ−ＲＯＭやＤＶＤのようなデータ記憶媒体（非図示）で使用可能とされる。そのデータ内容は、例えば、自動車の少なくとも１つの制御器と接続状態にある対応的なデータ処理装置（非図示）を介してアクセスが成され得る。
【００３７】
次に、データ記憶媒体により使用可能なソフトウェア或いはそれにより提供される追加機能を利用者が使用し、それに従ってソフトウェアを１つの又は複数の制御器内にロードさせ、そこで実行させるということを想定する
【００３８】
ここで取り扱う有利な実施形態では、前記のステップに対して追加的なステップが必要とされる或いは前提が満たされる必要がある。ここで叙述される実施形態において車両の所有者は車両から電話やインターネットを通じて所謂イネーブルコード作成署名箇所１０４とコンタクトをとる。支払方式が明らかにされた後、所有者は、使用可能（イネーブル）にすべき該当ソフトウェアを選択し、車台番号、及び／又は、該当制御器を特徴付ける番号などを伝達し（この際、このことは該当する１つの又は複数の制御器からの読出及び伝達により電子的にも行われ得る）、ソフトウェアが時間依存式の利用料金を有する場合には、どの期間でソフトウェアの利用を望むかを提示する。符号１１０で示されているこの利用に関するデータを基礎にし、所謂イネーブルコードデータ１１１が生成される。
【００３９】
イネーブルコード作成署名箇所１０４はトラストセンタ１０１に所謂イネーブルコード署名証明書１１８を要求する。トラストセンタ１０１は、パブリック・キー・メソッドを基礎にし、イネーブルコード作成署名箇所１０４の公開鍵１０６とトラストセンタ１０１の秘密鍵１０３とを使用してイネーブルコード署名証明書１１８を生成する。
【００４０】
更に以下のことが考慮され得る。即ち、ソフトウェア１１３、署名１１４、及び／又は、これらから導出される情報又はソフトウェア番号などが、イネーブルコード作成署名箇所１０４に登録されている、及び／又は、全体的に又は部分的にイネーブルコード署名証明書１１８内に取り入れられるということである。イネーブルコード署名証明書１１８は、特にイネーブルコード作成署名箇所１０４の公開鍵１０６と、トラストセンタ１０１により作成された署名１１９とを有し、これらに基づき、証明書１１８がその「サイン」或いは署名後に変更又は不正操作されたか否かがチェックされ得る。
【００４１】
更に、トラストセンタ１０１により作成されたイネーブルコード署名証明書１１８は、詳細には描かれていないが好ましくは１つの又は複数の有効性制限を有する。
【００４２】
有効性を満たしていることについて制御器１１５によりチェックされるイネーブルコード署名証明書１１８内の有効性制限は、特に、作動時間数、走行性能或いは走行距離、場所に関して制限された有効性（車両の滞在場所に関する）、時間データ又は期間、１つの又は複数の車両タイプ、１つの又は複数の制御器又は制御器タイプ、車台番号又は制御器番号などに該当する制限に係るものである。このイネーブルコード署名証明書は、好ましくは、制御器を個別化する所定の制御器番号又は車台番号に対する使用可能性の制限を有する。１つの又は複数の有効性制限或いは有効性前提のチェックは、好ましくは、制御器１１５内に設けられていて実行制御されるマイクロプロセッサ（非図示）により行われ、この際、その実行制御或いはソフトウェアは対応的に構成されているものである。
【００４３】
好ましいイネーブルコードは、制御器１１５により全体的に又は部分的にチェックされ且つ基準データと比較される次の情報グループを全体的に又は部分的に有する：ソフトウェア識別、車台番号及び／又は制御器番号、特に絶対的な時間データのような有効性制限、作動時間数、例えば車両ディーラや車両所有者のようなイネーブルコードの照会者の識別、イネーブルコードを作成するイネーブルコード作成署名箇所の識別、作成と署名の日付などである。
【００４４】
制限は例えば次のことにも生じる。即ち、イネーブルコード作成署名箇所が、機関制御を変更するための及び／又は（特に）安全性に関して重要な制御器を実行制御するためのソフトウェア及び／又はデータではなく、特に地図データなどのような、車両内に設けられているナビゲーションシステムにより使用されるソフトウェア及び／又はデータを使用可能とするということである。
【００４５】
トラストセンタ１０１により作成されたイネーブルコード署名証明書１１８、並びに、イネーブルコードデータ１１１及びその署名１１２は、車両（非図示）内及びそれに続いて該当制御器１１５内に伝送され、そこで記憶される。伝送は、特に移動無線ネットワーク及び／又はインターネット接続を介して行われるように好ましくは無線により行われる。
【００４６】
制御器１１５に伝送されたソフトウェア１１３を制御器１１５が実施する以前に、制御器１１５は、第３ステップで、パブリック・キー・メソッドを基礎にし、イネーブルコード作成署名箇所１０４の公開鍵１０６とトラストセンタ１０１の署名１１９とを有するイネーブルコード署名証明書１１８を使用し、且つ、保護されたメモリ又はメモリ領域１２２内に記憶されているトラストセンタ１０１の公開鍵１０２を使用し、イネーブルコード署名証明書１１８が変更或いは不正操作されたか否かを検査する。
【００４７】
変更或いは不正操作がない場合、制御器１１５は、第４ステップで、パブリック・キー・メソッドを基礎にし、第３ステップでトラストセンタ１０１の公開鍵１０２を使用してその不変性がチェックされたイネーブルコード作成署名箇所１０４の公開鍵１０６を使用し、且つ、イネーブルコードデータ１１１及びその署名１１２を使用し、イネーブルコードデータ１１１が変更或いは不正操作されたか否かを検査する。
【００４８】
好ましくは、例えば制御器１１５或いはこの制御器１１５内に設けられていて実行制御されるマイクロプロセッサ（非図示）により、第５ステップで、更に、好ましくはイネーブルコード署名証明書１１８内にトラストセンタ１０１により登録された１つの又は複数の有効性制限或いは有効性前提が満たされているか否かがチェックされる。その他の場合、ソフトウェアの使用許可又はその実行は特にマイクロプロセッサにより遮断される。
【００４９】
好ましくは制御器のプロセッサ（非図示）により第３ステップ及び第４ステップで肯定的に進行する検査、並びに、場合により第５ステップにおける肯定的な検査は、説明した本発明の有利な実施形態において、ソフトウェア１１３が制御器１１５により実施されるために十分な前提であると言える。
【図面の簡単な説明】
【００５０】
【図１】特に自動車やオートバイのような車両内の制御器を稼動させるソフトウェアを提供するための本発明に従う方法を示す図である。
【符号の説明】
【００５１】
１００    フローパターン（実行パターン）
１０１    トラストセンタ（信用センタ）
１０２    トラストセンタの公開鍵
１０３    トラストセンタの個人鍵（秘密鍵）
１０４    イネーブルコード作成署名箇所
１０５    ソフトウェア署名箇所
１０６    イネーブルコード作成署名箇所の公開鍵
１０７    イネーブルコード作成署名箇所の個人鍵（秘密鍵）
１０８    ソフトウェア署名箇所の公開鍵
１０９    ソフトウェア署名箇所の個人鍵（秘密鍵）
１１０    利用に関するデータ
１１１    イネーブルコードデータ
１１２    イネーブルコードデータの署名
１１３    制御器ソフトウェア
１１４    ソフトウェアの署名
１１５    制御器
１１６    トラストセンタ署名証明書
１１７    トラストセンタによる署名
１１８    イネーブルコード署名証明書
１１９    トラストセンタによる署名
１２０    ソフトウェア署名証明書
１２１    トラストセンタによる署名
１２２    保護されたメモリ又はメモリ領域
【図１】
0004486812.tif 000002