(57)【特許請求の範囲】
【請求項１】
技術的デバイスを制御するために、当該技術的デバイスが動作可能になるように前記技術的デバイスに接続される制御装置であって、当該制御装置が、
マイクロプロセッサ、
前記技術的デバイスを制御するために前記マイクロプロセッサが必要とする制御プログラムを含むプログラム可能メモリ、
ハウジング（２）であって、当該ハウジング（２）が開封されると、必須ハードウエアコンポーネントの破壊または前記制御装置のオペラビリティにとって重要なソフトウエア・パーツの消去により、前記制御装置（１）のオペラビリティが少なくとも部分的に不可逆的に破壊され、かつ、そのために前記技術的デバイスのオペラビリティが破壊されるように前記制御装置が当該ハウジングに密閉収容されてなるもの、
前記ハウジングから延び、前記プログラム可能メモリに対し、制御に関連するデータの書込み、読出しまたはこれらの組み合わせを行う外部装置を接続するための少なくとも１つのデータ・ライン（３、４）および、
認証を行なうチェック・デバイス（５）であって、当該チェック・デバイスは、書込みアクセス、読出しアクセスまたはこれらの組み合わせの認証チェックを行うものであり、当該書き込みアクセス、または読み出しアクセスによって、前記プログラム可能メモリに対し前記データ・ライン（３、４）を通して前記制御に関連するデータの書込みまたは読出しが行われるもので、該認証チェックの結果が良好な場合に限り前記プログラム可能メモリからの前記データの読出し、または前記プログラムメモリへの前記制御に関連するデータの書込みを許可するものを有してなり、
前記外部装置により前記プログラム可能メモリから読み出されるか、若しくは、書き込まれる前記制御に関連するデータが、前記制御装置の動作の変更または拡張に関連するものであり、したがって、前記技術的デバイスの動作の変更または拡張に関連するものであり、
前記認証チェック・デバイスが、第三者当局との通信を確立する手段を有し、該当局からリリースを受けたものに対してのみ前記制御に関連するデータの読出し／書込みアクセスが許可されることを特徴とする制御装置。
【請求項２】
前記認証チェック・デバイスが、認証チェックとしてチャレンジ/応答認証を実行する手段を備えることを特徴とする請求項１記載の制御装置。
【請求項３】
前記認証チェック・デバイスが、秘密チェック・ワードを記憶しているメモリ、および認証チェックとして、書込みアクセスの前に前記データ・ラインを通して送られてくるキーワードを前記チェック・ワードと比較する比較器を備えることを特徴とする請求項１または２記載の制御装置。
【請求項４】
前記認証チェック・デバイスが、前記データ・ライン（３、４）を通して送られる前記制御に関連するデータの暗号化および/または復号化手段を備えることを特徴とする請求項１〜３いずれか１項記載の制御装置。
【請求項５】
前記認証チェック・デバイス（５）が、前記データ・ライン（３、４）を通して送られてくる前記制御に関連するデータのデジタル署名をチェックする手段を備えることを特徴とする請求項１〜３いずれか１項記載の制御装置。
【請求項６】
前記ハウジングが開封されると、秘密チェック・ワード、秘密キー、秘密暗号化アルゴリズムまたはこれらの組み合わせを記憶しているメモリ領域が消去および/または破壊されるように前記ハウジングに密閉収容されていることを特徴とする請求項１〜５いずれか１項記載の制御装置。
【請求項７】
制御されるべき前記技術的デバイスが、自動車のエンジンであることを特徴とする請求項１〜６いずれか１項記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はマイクロプロセッサ、プログラム可能メモリ、ハウジング、および前記ハウジングから延び、前記プログラム可能メモリにデータを書き込む外部装置を接続するための少なくとも１つのデータ・ラインを有する技術的据付装置、デバイス、および/または機械の制御装置に関するものである。
【背景技術】
【０００２】
前記のようなマイクロプロセッサをベースとする制御装置は、例えば自動車、家庭用電化製品等、多くの機械およびデバイスに用いられている。一般に、前記マイクロプロセッサに必要な制御プログラムは、プログラム可能メモリに記憶されている。多くの場合、前記メモリは、少なくとも一部が自由にプログラミング、消去、および上書きすることができるメモリである。そのため、必要なデータの変更および必要なプログラムを随意に揃えることにより、制御装置はいつでも顧客およびアプリケーションのニーズに応えることができる。また、前記のような事後の変更により、特に制御プログラムの改良またはアップデートが可能である。例えば、既存の制御プログラムを修正し、制御装置の機能および/または性能範囲、従って技術的据付装置、デバイス、または機械全体の機能および/または性能を向上させることができる。一般に、再プログラミングはハウジングから延びるデータ・ラインに外部装置を接続し、データ・ラインを通してプログラム可能メモリに必要なデータを書き込むことによって行われる。多くの場合、前記外部装置は特定の制御デバイスをプログラミングするための特別なデバイスである。しかし、前記外部装置は制御装置をプログラミングする特別なソフトウェアを備える市販のコンピュータであってもよい。前記データ・ラインはプログラム可能メモリに対し書き込みアクセスを可能にするプログラミング専用のデータ・ラインのこともある。しかし、前記データ・ラインは、制御装置が技術的据付装置および/または機械の制御に使用するデータ・ライン、即ち、二重の機能を有するデータ・ラインのこともある。
【０００３】
制御ソフトウェアが事後に変更可能であることの欠点は、許可を受けていない個人がそれを悪用し、例えば、後日前記制御装置の機能および/または性能範囲を不正に変更することにより、技術的据付装置または機械全体の機能および/または性能範囲を“チューニング”できることである。このことは第一に、前記調整に伴う保証期間中における損傷およびその結果生じるコストなど、メーカーにとって打撃を受けることがあるという不利益がある。更に、許可を受けていない個人によって製品差別化機能が大幅に変更されてしまい、それが特定メーカーの商標の地位および政策にとって永続的な障害にならないとも限らない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明の課題は、認可を受けた個人がいつでも修正を加えることができると同時に、不当な改竄を防止することができる前記のような種類の制御装置を開発することである。
【課題を解決するための手段】
【０００５】
前記課題は請求項１の制御装置によって解決される。従属請求項には本発明の特に好ましい実施の形態および成果が包含されている。
【０００６】
前記創意工夫に富む解決方法は２つの保護要素の組合せに立脚している。
【０００７】
第一に、前記制御装置はハウジングに密閉収容されており、例えば抉るまたは削る等、如何なる方法によっても前記ハウジングを開封すると自動的に前記制御装置のオペラビリティが破壊されるため、殆どの場合開封することができない。このことは、例えば、対応する接着技術によって可能である。必須ハードウェア・コンポーネントを破壊し、少なくともオペラビリティにとって重要なソフトウェア・パーツを消去することができる。その結果、ユニットを開封して対応するメモリ・チップまたは分析コードを取り外し、制御装置保護手段を分析することにより内容を明らかにし、回避策を講じ、再度前記制御装置を閉じ変更形態にて使用することはできない。一方、前記保護手段を施しても、データ・ラインを通した前記制御装置の“チューニング”は可能である。
【０００８】
第二に、前記チューニングを防止するため、前記制御装置はデータ・ラインを通してプログラム可能メモリにデータが書き込まれる書込みアクセスの認証チェックを行うチェック・デバイスを備えている。即ち、データ・ラインを通して外部から書込みおよび/または読出しを行うなど、制御装置のデータにアクセスしようとするすべてのプロセスは、かかる“監視プロセス”による認証チェックを受ける必要がある。前記認証チェックの結果が良好であって初めてプログラム可能メモリに対するデータの読出し/書込みが可能となる。即ち、チェック・デバイスがデータの書込みおよび/または読出しを許可するか、またはチェック・デバイスそのものがデータの書込みおよび/または読出しを行う。
【０００９】
前記のように、すべてのデータは特定の経路を通して送られ正当性がチェックされるので、データ・ラインを通して不当なチューニングを行うことは一切できない。また、ハウジングは前記のように物理的に封止されているので、前記のチェック・プロセスを回避することもできない。
【００１０】
チェック・デバイスはソフトウェア・プロセスとしてマイクロプロセッサ、およびプログラム可能メモリに組み込まれていることが好ましい。別の方法として、前記マイクロプロセッサおよびプログラム可能メモリとは別に、前記のようなチェック・デバイスをハウジング内に有する別のセキュリティ・モジュールを備え、一種のフィルターとして前記データ・ラインに接続することもできる。
【００１１】
種々の一般的データ・チェック方法が存在している。
【００１２】
１つの方法は秘密のアルゴリズムまたはキーワードを使用することである。ＰＩＮ入力あるいはチャレンジ/応答による動的変数認証のようなある種の情報によって予め正当性が確認されて初めて書込みアクセスが許可される。特に単純なケースでは、前記チェック・デバイスは秘密のチェック・ワードを記憶しているメモリおよび比較器のみで構成されている。前記構成において、認証チェックを受けるためのキーワードがデータ・ラインを通して制御装置に送られ、書込みアクセスの前に必ず前記キーワードが前記チェック・ワードと比較される。
【００１３】
好ましい実施の形態において、前記データまたはアルゴリズムを読み出すことができないようにするため、前記制御装置が、ハウジングを開封すると秘密チェック・ワードおよび/または秘密キーおよび/または秘密暗号化アルゴリズムを記憶しているメモリ領域が消去および/または破壊されるようにして前記ハウジングに収容されている。前記方法は、例えば、認可を受けていない個人が秘密キーまたはメソッドを知るために一連の制御装置の１つを開封して意図的にオペラビリティを破壊し、それによって得た秘密キーまたはメソッドを使用して前記一連の制御装置の別の装置を不当に変更する危険を伴うことなく、前記一連の制御装置に対し同一の秘密キーまたはメソッドが使用できるという利点を有している。
【００１４】
別の好ましい実施の形態において、秘密アルゴリズムの代わりに公開暗号方式を用いて認証が行われる。認証プロセスが前記方法によって行われるため、セキュリティは使用する特定のキーに専ら依存する。従って、システム全体のセキュリティ、即ち、前記制御装置の改竄防止システムのセキュリティは、キー管理プロセスに分散される。前記キーを適切に安全管理する一般に知られている方法が数多くある。前記公開暗号方式は秘密アルゴリズムより優れている。例えば、平凡なパスワード入力では秘密アルゴリズムを理解するだけでセキュリティが破られるが、公開暗号方式では単にそれだけでセキュリティを回避することはできない。
【００１５】
前記公開暗号方式の例として、ＤＥＳ、３−ＤＥＳ、またはＩＤＥＡのような対称暗号方式、および暗号化アルゴリズムが大きな整数の算術演算に基づき、キーが２つの大きな素数に基づいて生成されるＲＳＡのような非対称暗号方式がある。
【００１６】
前記のような制御装置は、例えば、自動車のエンジン制御に利用すると特別な効果が得られる。前記用途の制御装置は、交通安全の見地から、無断チューニング、従ってエンジンの無断チューニングを防止することが重要である。更に、無断チューニングにより、保証期間中にエンジンまたはトランスミッションに早期損傷を与えることがあり、その結果自動車メーカーに比較的大きな損害を与えることになる。他方、特に自動車市場においては、ユーザーは前記チューニングによってエンジン・パワーを増大することに特別大きな関心を抱いている。
【００１７】
本発明により最高の改竄防止機能が得られると同時に、例えば、電子証明書および/または生体認証等を提示し認証チェックを受けることにより、いつでもプログラミングを変更することができる。従って、制御装置のメーカーまたは認可を受けたユーザー等、認可を受けた団体および個人が、いつでもプログラム・コードを完全に変更できると共に、市内地図、音楽等の多様なコンテンツをリリース、修正、あるいは取り込むことができる。
【００１８】
認可を受けた個人が制御装置のデータまたはプログラム・コードを変更できると同時に改竄防止が可能であるため、例えば、一定期間、例えば、特定の追加ライセンス期間が満了すると自動的にリセットされる一時的なデータまたはプログラム・コードの変更が可能であるという利点も有している。前記のように、例えば、一定期間自動車のパワーを賃借または再充填することができる。同様に、ナビゲーション・システムの制御装置において、所定の時間が経過すると利用できない、例えば、市内または地域地図等、旅行で通過する予定の地理的データを一時的に賃借することができる。特に、例えば、自動車の制御用ソフトウェアを変更する場合、事前に、例えば、自動車免許交付事務所等の第三者当局の許可を受けるか、またはそこからリリースを受ける必要がある。前記目的のため、前記チェック・デバイスによる認証チェックの前または後に、インストールする制御用ソフトウェアをリリースした外部認定当局との通信が開始される。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照しながら本発明の実施の形態について詳細に説明する。
【００２０】
制御装置１はプログラム・データおよび給気圧等のチューニングに関連するエンジン・パラメータ等の必要なデータを記憶しているプログラム可能メモリを有するマイクロプロセッサを収容する密閉型ハウジング２を備えている。ハウジング２は、開封されると前記制御装置のオペラビリティが回復不能に破壊されるように封止されている。データ・ライン３および４を通して前記プログラム可能メモリにアクセスし、そこに記憶されている前記プログラムまたはデータを上書きすることができる。
【００２１】
更に、制御装置１はデータ・ライン３および４を通して送られてくるすべてのデータ、従って、すべての書込みアクセスの正当性を “番犬”としてチェックするチェック・デバイス５を備えている。
【００２２】
前記チェック・デバイスは、前記制御装置内にブロックとして図示してあるが、実際にはプログラム可能メモリを有するマイクロプロセッサにソフトウェア・プロセスとして組み込まれている。前記マイクロプロセッサおよびプログラム可能メモリは図示してない。
【００２３】
前記実施の形態において、チェック・デバイス５は、メモリに書き込まれるデータ・ストリング全体のハッシュ値を計算するデジタル署名を用いている。前記ハッシュ値はデータ・ライン３、４の何れか１つを通して転送される前に、任意の、好ましくは非対称アルゴリズム、ここではＲＳＡ方式によって暗号化される。前記計算結果が実際のメッセージに“署名”として添付される、即ちデータ・ストリングに付加される。
【００２４】
次に、制御装置１の内部において、チェック・デバイス５によって書込みデバイス側と同じハッシュ・アルゴリズムを用いて実際のデータ・ストリングを要約したハッシュ値が算出される。前記添付デジタル署名がＲＳＡアルゴリズムの公開キーを用いて復号され、復号化時に含められた前記署名のハッシュ値が制御装置内で算出されたハッシュ値と比較される。前記２つの値が一致した場合、前記メッセージは伝送経路上で変更を加えられたものでなく、正しい秘密キーを所持するデバイスによって生成されたものである。従って、前記署名が検証されたことになり、前記データが認証されたことになる。前記２つの値が一致しない場合は、伝送中にメッセージまたは署名に変更が加えられたものである。従って、認証は与えられず、前記メッセージの内容は伝送途中で改竄されたか、または認可を受けていない個人によって送信されたものと見なされる。その結果、送信されたデータ・ストリングは前記チェック・デバイスによって拒否され、制御装置１のプログラミング用デバイスのユーザーが望む通りに前記メモリに書き込まれることはない。前記チェック・プロセスがチェック・デバイス５の左上にプログラム・コードで示してある。前記データ・ストリング、ハッシュ値および署名の形成がチェック・デバイスの右上に示してある。
【００２５】
前記密閉ハウジングにより、認可を受けていない個人がハウジングを開封して前記メモリの特定の記憶域に直接目的とするデータを書き込むことにより、前記デジタル署名を回避することが不可能であるため、本発明により制御装置の改竄防止効果が向上する。従って、関係企業にとって迷惑な保証要求が発生することはない。特定企業の商標戦略が傷つけられることはない。また、前記制御装置によって駆動される技術的据付装置および/またはデバイス、あるいは機械の寿命が不正に改竄されたデバイスに比べて長くなる。更に、前記制御装置の事後の永続的または一時的な動作特性の変更または拡張が可能であるため、テクノロジー、市場、および顧客の要求変化に柔軟かつダイナミックに対応することができる。
【図面の簡単な説明】
【００２６】
【図１】自動車エンジン（図示せず）用制御装置１を示す概略ブロック図
【符号の説明】
【００２７】
１        制御装置
２        ハウジング
３、４    データ・ライン
５        チェック・デバイス
【図１】
0004618999.tif 000002