(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】通信モジュール
(51)【国際特許分類】
H04L 12/66 20060101AFI20240827BHJP
H04L 12/22 20060101ALI20240827BHJP
【FI】
H04L12/66
H04L12/22
(21)【出願番号】P 2021533459
(86)(22)【出願日】2019-12-12
(86)【国際出願番号】 AT2019060437
(87)【国際公開番号】W WO2020118342
(87)【国際公開日】2020-06-18
【審査請求日】2022-12-08
(32)【優先日】2018-12-13
(33)【優先権主張国・地域又は機関】AT
(73)【特許権者】
【識別番号】398055255
【氏名又は名称】アー・ファウ・エル・リスト・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング
(74)【代理人】
【識別番号】100069556
【氏名又は名称】江崎 光史
(74)【代理人】
【識別番号】100111486
【氏名又は名称】鍛冶澤 實
(74)【代理人】
【識別番号】100191835
【氏名又は名称】中村 真介
(74)【代理人】
【識別番号】100208258
【氏名又は名称】鈴木 友子
(74)【代理人】
【識別番号】100221981
【氏名又は名称】石田 大成
(72)【発明者】
【氏名】アルドリーアン・アンドレアス
(72)【発明者】
【氏名】ヴォルフ・クリストフ
(72)【発明者】
【氏名】マー・ジェンドン
(72)【発明者】
【氏名】マイアー・パトリク
(72)【発明者】
【氏名】シュプルング・ザムエル
【審査官】宮島 郁美
(56)【参考文献】
【文献】特開2016-139883(JP,A)
【文献】米国特許出願公開第2005/0141706(US,A1)
【文献】特開2017-208859(JP,A)
【文献】米国特許出願公開第2003/0147534(US,A1)
【文献】特開2015-023375(JP,A)
【文献】特開2018-110374(JP,A)
【文献】特表2010-527480(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L12/00-12/66,13/00,41/00-69/40
(57)【特許請求の範囲】
【請求項1】
技術システム(4)の内部ネットワーク(3)に組み込まれた少なくとも一つのハードウェアコンポーネント(2)と、パケット交換データネットワーク(6)に繋がるバックエンド計算機システム(5)との間でデータを伝送
し、
この通信モジュール(1)が、中間局の無いポイントツーポイント接続(9)を介して互いに接続された、機器に近い方のゲートウェイ(7)とネットワークに近い方のゲートウェイ(8)を有し、このネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)とポイントツーポイント接続(9)の間のデータ伝送インタフェースを提供し、この機器に近い方のゲートウェイ(7)が、ポイントツーポイント接続(9)と内部ネットワーク(3)の間のデータ伝送インタフェースを提供する
当該通信モジュール(1)において、
ポイントツーポイント接続を介した通信は、経路選択可能でないプロトコルに基づき実行されることを特徴とする通信モジュール。
【請求項2】
請求項1に記載の通信モジュール(1)において、
機器に近い方のゲートウェイ(7)がゲートウェイ安全モジュール(10)を有することと、ネットワークに近い方のゲートウェイ(8)がゲートウェイ安全モジュール(10’)を有することとの一つ以上を特徴とする通信モジュール。
【請求項3】
請求項2に記載の通信モジュール(1)において、
少なくとも一つのゲートウェイ安全モジュール(10)が、プロセッサチップカード(12)のためのカードインタフェースを有することを特徴とする通信モジュール。
【請求項4】
請求項1~3のいずれか1項に記載の通信モジュール(1)を備えた技術システム(4)であって、
この技術システム(4)が、更に、少なくとも一つのハードウェアコンポーネント(2)と少なくとも一つの内部ネットワーク(3)を有する技術システム。
【請求項5】
請求項4に記載の技術システム(4)において、
前記のハードウェアコンポーネント(2)が、集積型暗号プロセッサを備えた安全コントローラ(14)、不揮発性メモリ及び揮発性メモリを有することを特徴とする技術システム。
【請求項6】
請求項4又は5に記載の技術システム(4)において、
この技術システムは、自動運転段階1~5のうちの1つの自動運転段階にしたがう車両(17)であることを特徴とする技術システム。
【請求項7】
請求項4又は5に記載の技術システム(4)において、
この技術システム(4)が、自動化システムにより制御される機械装置(18)
又は検査台である技術システム。
【請求項8】
請求項4~7のいずれか1項に記載の技術システム(4)の内部ネットワーク(3)に組み込まれたハードウェアコンポーネント(2)の機器
のデータをパケット交換データネットワーク(6)に繋がるバックエンド計算機システム(5)に伝送し
、
この方法が、
ハードウェアコンポーネント(2)から内部ネットワーク(3)を介して機器に近い方のゲートウェイ(7)に機器
のデータを送信する工程(100)と、
機器に近い方のゲートウェイ(7)からポイントツーポイント接続(9)を介してネットワークに近い方のゲートウェイ(8)に機器
のデータを送信する工程(101)であって、機器に近い方のゲートウェイ(7)又はネットワークに近い方のゲートウェイ(8)によって、機器
のデータが機器
のデータの暗号化されたインスタンスに変換される工程と、
この機器
のデータの暗号化されたインスタンスをネットワークに近い方のゲートウェイ(8)からパケット交換データネットワーク(6)を介してバックエンド計算機システム(5)に送信する工程(102,103)と
、を含む当該方法において、
ポイントツーポイント接続を介した通信は、経路選択可能でないプロトコルに基づき実行されることを特徴とする方法。
【請求項9】
請求項8に記載の方法において、
この方法が、
機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)を用いて、
又は機器に近い方のゲートウェイ(7)によって、或いは
ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)を用いて、
又はネットワークに近い方のゲートウェイ(8)によって、
機器
のデータの暗号化されたインスタンスを
、前記データの受信機の公開鍵を用いて作成する工程、
を有することを特徴とする方法。
【請求項10】
請求項8又は9に記載の方法において、
前記のパケット交換データネットワーク(6)を介して暗号化されたインスタンスを送信する工程(102,103)が、この暗号化されたインスタンスをブローカー(20)に送信すること(102)を含み、純粋にプッシュメカニズムにより機能するプロトコルに基づき行われることを特徴とする方法。
【請求項11】
請求項8~10のいずれか1項に記載の方法において、
前記のネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)を介した送信前に、暗号化されたインスタンスをネットワーク暗号化プロトコルに基づき暗号化することを特徴とする方法。
【請求項12】
請求項8~11のいずれか1項に記載の方法において、
前記の機器
のデータの暗号化されたインスタンスは、バックエンド計算機システム(5)及び/又はそれ以外の正当なデータ受信機が機器
のデータの一貫性及び/又は信憑性を検査することを可能にする検査データを含むことを特徴とする方法。
【請求項13】
請求項4~7のいずれか1項に記載の技術システム(4)の内部ネットワーク(3)に組み込まれたハードウェアコンポーネント(2)の機器メモリ(19)に更新データを保存する方法であって、
この更新データが、ハードウェアコンポーネント(2)に対してバックエンド計算機システム(5)によって提供され、
この方法が、
ネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)を介してバックエンド計算機システム(5)から更新データの暗号されたインスタンスを受信する工程(202)と、
この更新データをネットワークに近い方のゲートウェイ(8)からポイントツーポイント接続(9)を介して機器に近い方のゲートウェイ(7)に送信する工程(203)と、 この更新データを、内部ネットワーク(3)を介してハードウェアコンポーネント(2)に送信する工程であって、更新データの暗号化されたインスタンスが機器に近い方のゲートウェイ(7)又はネットワークに近い方のゲートウェイ(8)によって復号化される工程と、
この更新データをハードウェアコンポーネントの機器メモリ(19)に保存する工程と、
を含む当該方法において、
ポイントツーポイント接続を介した通信は、経路選択可能でないプロトコルに基づき実行されることを特徴とする方法。
【請求項14】
請求項13に記載の方法において、
前記の更新データの暗号化されたインスタンスが、ハードウェアコンポーネント(2)、機器に近い方のゲートウェイ(7)及び/又はネットワークに近い方のゲートウェイ(8)の中の一つ以上の公開鍵を用いて、バックエンド計算機システム(5)及び/又は正当なデータ送信機によって作成されることを特徴とする方法。
【請求項15】
請求項13又は14に記載の方法において、
この方法が、
有利には、ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)を用いて、ネットワークに近い方のゲートウェイ(8)によって、或いは
有利には、機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)を用いて、機器に近い方のゲートウェイ(7)によって、
更新データの暗号化されたインスタンスを復号化する工程、
を有することを特徴とする方法。
【請求項16】
請求項13~15のいずれか1項に記載の方法において、
前記の更新データが、ファームウェア、アプリケーションソフトウェア及び/又はハードウェアコンポーネント(2)のパラメータデータを包含することを特徴とする方法。
【請求項17】
請求項13~16のいずれか1項に記載の方法において、
前記の受信する工程(202)が、ブローカー(20)から更新データの暗号化されたインスタンスを引き出すことを含み、純粋にプッシュメカニズムにより機能するプロトコルに基づき行われることを特徴とする方法。
【請求項18】
請求項13~17のいずれか1項に記載の方法において、
前記の更新データの暗号化されたインスタンスは、機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)、ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)及びハードウェアコンポーネント(2)の安全コントローラ(14)の中の一つ以上が更新データの一貫性及び/又は信憑性を検査することを可能にする検査データを含むことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、技術システムの内部ネットワークに組み込まれた少なくとも一つのハードウェアコンポーネントと、パケット交換データネットワークに繋がったバックエンド計算機システムとの間でデータを伝送するための通信モジュールに関する。更に、本発明は、そのような通信モジュールを備えた技術システムとそのようなシステムにより実施可能な方法に関する。
【背景技術】
【0002】
「インテリジェント」ハードウェアシステムの開発における進展とそれの技術システムへの採用によって、産業分野、専門分野及び私的分野において、不当なアクセス及び改変に対するデータの保護が非常に重要になっている。その理由は、特に、例えば、組込みシステムへのハッカー攻撃などのデータの改変がそのシステムの挙動に直接的な作用を及ぼすとともに、そのシステムの健全性及び機能を損なう可能性があるだけでなく、ユーザーの生命及び生存に関する危険をもたらす可能性がある。その場合、例として、全自動運転、半自動運転及び従来の車両の操舵システム又は制動システム、飛行機の制御機器、或いは、例えば、電源などのインフラストラクチャー機器の切替設備が挙げられる。そのようなシステムの機能の悪意のある改変から、個々に関する危険だけでなく、全体に関する危険も生じる可能性がある。
【0003】
更に、多くのハードウェアシステムは多数のデータを生成して、そのデータから、例えば、ユーザーの挙動、現在地に関する情報、それどころか(例えば、フィットネス・トラッカー又は同様の機器のデータの場合に)健康状態に関する情報を評価することができる。そのようなデータの例として、(自動運転)車両の遠隔計測データ、産業設備のセンサーデータ又は制御データ、競合企業又は機器の研究プロジェクトに関する情報を導き出せる研究データ、通信データ等も挙げられる。そのような全てのデータに関して、それらのデータが第三者によって不当に閲覧又は使用できないようにするとの所有者の正当な興味が生まれる。
【0004】
例えば、(場合によっては、自動運転)車両、産業分野における機械又は機械装置、運搬機器、例えば、(エンジンの)検査台などの検査機器又は測定機器、或いは技術的な監視機器などの技術システムは、通常その技術システムに課された課題を成し遂げるために一つの内部ネットワーク(場合によっては、複数の内部ネットワーク)を介して互いに通信する多数のハードウェアコンポーネントを有する。それらのハードウェアコンポーネントは、通常センサーとアクチュエータを備え、それらを介して、技術システムが(現実の)周囲環境と相互作用する。
【0005】
そのような複雑な課題をハードウェアコンポーネントによって実現できるようにするために、それらは、それぞれプログラム論理に基づきハードウェアコンポーネントの機能を制御する独自の(マイクロ)プロセッサとメモリユニットを備えている。
【0006】
そのプログラム論理の大部分は、通常不揮発性メモリ、例えば、フラッシュメモリに保存されており、その結果、ハードウェアコンポーネントのスタート毎又は初期化毎にメモリが使用される。そのような部分は、通常「ファームウェア」と呼ばれる。ファームウェアは、確かにハードウェアの動作中は変わらないが、それでも、例えば、ファームウェアの古いバージョンを新しいバージョンに置き換える場合には、変えることができる。その場合、新しいバージョンは、通常バックエンド計算機システムのハードウェアコンポーネントの製造業者からパケット交換データネットワーク、特に、インターネットを介して提供される。ファームウェアの更新は、ユーザーの介入に基づき行うか、技術システムのハードウェアコンポーネント又は別のコンポーネントによって起動するか、或いはバックエンド計算機システムによって起動することができる。攻撃戦略は、インターネット(又はそれ以外のパケット交換データネットワーク)を介した伝送中にファームウェアを汚染されたバージョンに交換し、それによってハードウェアコンポーネントの機能への(リモート)アクセスを獲得することである。暗号化されていない伝送の場合、それは、技術に詳しい犯人にとって、比較的小さな負担で可能であり、しかし、暗号化された伝送の場合でも、例えば、中間者攻撃の形で、或いは暗号化又は復号化を行うための伝送コンポーネントの中の一つをハッキングすることによって、攻撃が成功する可能性がある。
【0007】
別の安全性の観点は、ハードウェアコンポーネントが生成するデータをバックエンド計算機システムに送信することである。そのようなデータの例は、例えば、保守又は監視の目的でバックエンド計算機システムに送信される遠隔計測データ又はセンサーデータであるとすることができる。その送信は、一方において、データの安全性の理由から盗聴に対して安全に行われるべきであり、他方において、その場合でもデータの改変を排除できなければならない。即ち、データの目的通りの改変によって、例えば、バックエンド計算機システムに誤った危険な状況を演出して、(誤った)反応又は間違ったアラームを発出させることが可能である。
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明の課題は、技術システムに組み込まれたハードウェアコンポーネントと、インターネット又はそれ以外のパケット交換データネットワークに繋がったバックエンド計算機システムとの間のデータ伝送を改変及び盗聴に対して安全な形で実行できる装置及び方法を提供することである。
【課題を解決するための手段】
【0009】
この課題及び別の課題は、本発明に基づき、中間局の無いポイントツーポイント接続を介して互いに接続された、機器に近い方のゲートウェイとネットワークに近い方のゲートウェイを備えた冒頭で述べた形式の通信モジュールであって、このネットワークに近い方のゲートウェイが、パケット交換データネットワークとポイントツーポイント接続の間のデータ伝送インタフェースを提供し、この機器に近い方のゲートウェイが、ポイントツーポイント接続と内部ネットワークの間のデータ伝送インタフェースを提供する通信モジュールによって解決される。この場合、ポイントツーポイント接続は、パケット交換データネットワークから到来する攻撃を阻止する迂回できない「ボトルネック」となる。これらの機器に近い方のゲートウェイとネットワークに近い方のゲートウェイの間の通信は、厳格に定義されて、それからの「逸脱」は不可能である。この中間局の無いポイントツーポイント接続が経路選択を許さないので、攻撃者が、通信の迂回によって、任意のコンポーネントを呼び出すことは不可能である。攻撃者がネットワークに近い方のゲートウェイの安全機能の回避又は排除に成功した場合でも、やはり内部ネットワーク又はハードウェアコンポーネントへのアクセスを獲得することはできない。
【0010】
有利には、機器に近い方のゲートウェイは、ゲートウェイ安全モジュールを有するか、ネットワークに近い方のゲートウェイがゲートウェイ安全モジュールを有するか、或いはその両方が可能である。そのようなゲートウェイ安全モジュールは、複雑な暗号化方法及び署名方法をハードウェアに合った手法で実現することを可能にする。
【0011】
有利な実施構成では、少なくとも一つのゲートウェイ安全モジュールが、プロセッサチップカードのためのカードインタフェースを有する。このことは、プロセッサチップカードにおける具体的な安全特性(特に、暗号鍵の定義及び/又は生成、安全プロトコルの選定及び定義等)を暗号システムに基づき定義できるので、ゲートウェイの大量生産の負担を軽減する。このプロセッサチップカードは、その技術分野に詳しい第三者の製造業者から追加購入することができ、そのことは、ゲートウェイの開発の負担を軽減する。
【0012】
本発明は、更に、当該の通信モジュールを備えた技術システムに関し、この技術システムは、更に、少なくとも一つのハードウェアコンポーネントと少なくとも一つの内部ネットワークを有する。本発明では、それによって、非常に複雑な技術システム、例えば、(自動運転)車両、産業設備、運搬機器、検査台又は測定機器をデータの改変及びデータのスパイ行為から保護することができる。
【0013】
有利な実施構成では、ハードウェアコンポーネントは、集積型暗号プロセッサ、不揮発性メモリ及び揮発性メモリを備えた安全コントローラを有することができる。それによって、一方において、バックエンド計算機システム、別の正当なデータ送信機又はデータ受信機とハードウェアコンポーネントとの間で(又はその逆に)送信されるデータの(追加的な)エンドツーエンドの暗号化を実現でき、他方において、例えば、デジタル署名を用いて、ハードウェアコンポーネント自体によっても、バックエンド計算機システムによっても、データの信憑性及び一貫性を検査して、保証することができる。ハードウェアコンポーネントに安全コントローラを組み入れることによって、通信モジュールの製造業者又はバックエンド計算機システムが一度も復号化できないように、データを暗号化することができる。例えば、正当なデータ受信機(例えば、技術システムの所有者又はそれ以外の正当な権利者)に対して、データを暗号化することができ、この受信機は、暗号化されたデータをバックエンド計算機システムから取り出した後、復号化することができる。
【0014】
本発明の別の有利な実施形態では、技術システムが、自動運転段階0~5のうちの1つの自動運転段階にしたがう自動運転、半自動運転又は従来の車両であるとすることができる。この場合、自動化段階の区分は、本発明の特許ファミリーの最も古い出願日の時点で有効なバージョンによりSAEインターナシャナルによって発布された、この分野において通常適用される周知の標準SAE/J3016に関する区分である。特に、自動化段階が高い方の車両では、データの改変が破滅的な結果を引き起こし、その結果、この分野では、質の高い安全な解決策に対する特別な要求が生じる。
【0015】
有利には、技術システムが、自動化システムによって制御される機械装置、特に、検査台であるとすることができる。自動化システムによって制御される多数の産業用途では、センサーとアクチュエータを備えた様々なハードウェアコンポーネントが用いられている。本発明では、これらのハードウェアコンポーネントを「遠隔保守」することができ、その際、一方において、ファームウェア又はそれ以外のアプリケーションソフトウェアと、例えば、パラメータデータとをバックエンド計算機システムから更新することができる。他方において、ハードウェアコンポーネントからバックエンド計算機システムにデータを、例えば、遠隔計測データ(例えば、このデータを用いて、誤った機能又は保守要件を検知できる)を送信することもできる。
【0016】
本発明は、更に、技術システムの内部ネットワークに組み込まれたハードウェアコンポーネントの機器データをパケット交換データネットワークに繋がったバックエンド計算機システムに伝送する方法に関し、この方法は、
この機器データをハードウェアコンポーネントから内部ネットワークを介して機器に近い方のゲートウェイに送信する工程と、
この機器データを機器に近い方のゲートウェイからポイントツーポイント接続を介してネットワークに近い方のゲートウェイに送信する工程であって、機器に近い方のゲートウェイ又はネットワークに近い方のゲートウェイによって、この機器データが機器データの暗号化されたインスタンスに変換される工程と、
この機器データの暗号化されたインスタンスをネットワークに近い方のゲートウェイからパケット交換データネットワークを介してバックエンド計算機システムに送信する工程と
を特徴とする。
【0017】
機器データは、ハードウェアコンポーネントによって測定又は作成できる、或いはハードウェアコンポーネントの機器メモリに保存できる如何なるデータであるともすることができる。「機器データ」との用語は、暗号化されていない機器データも、暗号化された形で存在し、ここでは、機器データの「暗号化されたインスタンス」とも呼ばれる機器データも包含する。そのため、その時々の暗号鍵とそれに対応する暗号化方法を用いて、そのデータから暗号化されていない機器データを算出できるデータが機器データの「暗号化されたインスタンス」と呼ばれる。場合によっては、機器データを複数回重畳して暗号化することができる。例えば、ハードウェアコンポーネントが、場合によっては、通信モジュールの機能から完全に切り離して、独立させることができる独自の暗号化プロトコルに基づき機器データを暗号化することができる。この場合、機器データは、漸く暗号化されたインスタンスとして通信モジュールの機器に近い方のゲートウェイに送信される。そして、通信モジュールは、この機器データの更に暗号化されたインスタンスを作成する。
【0018】
有利には、本方法は、有利には、機器に近い方のゲートウェイのゲートウェイ安全モジュールを用いて、機器に近い方のゲートウェイによって、或いは、有利には、ネットワークに近い方のゲートウェイのゲートウェイ安全モジュールを用いて、ネットワークに近い方のゲートウェイによって、データの受信機、特に、バックエンド計算機システムの公開鍵を用いて、機器データの暗号化されたインスタンスを作成する工程を有することができる。この暗号化は、ハードウェアコンポーネント、機器に近い方のゲートウェイ又はネットワークに近い方のゲートウェイによって実行することができ、その際、安全性が高くなる程、暗号化されていない形で行われる送信工程を少なくしなければならない。場合によっては、追加の暗号化及び復号化工程も規定することができ、例えば、機器に近い方のゲートウェイとネットワークに近い方のゲートウェイの間において(或いはハードウェアコンポーネントとネットワークに近い方のゲートウェイの間においても)成される追加の暗号化によって、ポイントツーポイント接続を介した機器に近い方のゲートウェイとネットワークに近い方のゲートウェイの間の伝送を保護することができる。このことは、特に、機器データが最初にネットワークに近い方のゲートウェイによってバックエンド計算機システムの公開鍵を用いて暗号化される場合に有利であるとすることができる。
【0019】
「公開鍵」及び「秘密鍵」との用語は、周知の通り、(暗号化/復号化にも関連し、デジタル署名にも関連する)非対称暗号システムに基づく鍵対を表す。
【0020】
有利な実施構成では、暗号化されたインスタンスをパケット交換データネットワークを介して送信する工程は、暗号化されたインスタンスをブローカーに送信することを含むことができ、純粋にプッシュメカニズムにより機能するプロトコルに基づき行われる。そのようなプロトコルを用いて、如何なるインバウンドトラフィック(即ち、「外部から」開いたポートを介して流入するデータ伝送)も阻止できるので、それによって、ハッカー攻撃からネットワークに近い方のゲートウェイを一層保護することができる。
【0021】
有利には、ネットワークに近い方のゲートウェイは、機器データの暗号化されたインスタンスをパケット交換データネットワークを介して送信する前にネットワーク暗号化プロトコルに基づき暗号化することができ、その際、実証されたプロトコルを使用することができる。このことは、別の安全層のデータを不正アクセスに対してブロックする。この暗号化は、ネットワークに近い方のゲートウェイのゲートウェイ安全モジュールによって実行することができる。
【0022】
別の有利な実施構成では、機器データの暗号化されたインスタンスは、バックエンド計算機システム及び/又はそれ以外の正当なデータ受信機が機器データの一貫性及び/又は信憑性の検査を可能にする検査データを含むことができる。そのような検査データは、例えば、周知の手法によるチェックサム(ハッシュ)とデジタル署名を使用することができ、これらのデータは、場合によっては、機器データと一緒に一つのデータセルとして暗号化することができる。
【0023】
別の観点において、本発明は、技術システムの内部ネットワークに組み込まれたハードウェアコンポーネントの機器メモリに更新データを保存する方法に関し、このハードウェアコンポーネントのための更新データは、バックエンド計算機システムから提供されて、この方法は、
ネットワークに近い方のゲートウェイが、バックエンド計算機システムからパケット交換データネットワークを介して更新データの暗号化されたインスタンスを受信する工程と、
ネットワークに近い方のゲートウェイからポイントツーポイント接続を介して機器に近い方のゲートウェイに更新データを送信する工程と、
内部ネットワークを介してハードウェアコンポーネントに更新データを送信する工程であって、更新データの暗号化されたインスタンスが、機器に近い方のゲートウェイ又はネットワークに近い方のゲートウェイによって復号化される工程と、
ハードウェアコンポーネントの機器メモリに更新データを保存する工程と、
を有する。
【0024】
これによって、更新データ、例えば、最新のファームウェア又はパラメータデータを安全な手法でバックエンド計算機システムからハードウェアコンポーネントに送信することができる。場合によっては、又もや正当なデータ送信機とハードウェアコンポーネントの間における機器データの更なる独立した暗号化を更に規定することができる。
【0025】
更新データは、ハードウェアコンポーネントの機器メモリに保存できる如何なるデータであるともすることができる。「更新データ」との用語は、暗号化されていない更新データも、暗号化された形で存在して、ここでは、更新データの「暗号化されたインスタンス」とも呼ばれる更新データも包含する。その時々の暗号鍵とそれに対応する暗号化方法を用いて、そのデータから暗号化されていない更新データを算出できる如何なるデータも更新データの「暗号化されたインスタンス」と呼ばれる。
【0026】
更新データは、正当なデータ送信機によって、ハードウェアコンポーネント、機器に近い方のゲートウェイ又はネットワークに近い方のゲートウェイの公開鍵を用いて暗号化して、漸く暗号化された形でバックエンド計算機システムに送信することができる。この場合、バックエンド計算機システムは、自身では暗号化されていないデータにアクセスしない仲介者としてのみ振る舞う。他方において、更新データの暗号化されたインスタンスは、バックエンド計算機システムによって、ハードウェアコンポーネント、機器に近い方のゲートウェイ又はネットワークに近い方のゲートウェイの公開鍵を用いて作成することもできる。
【0027】
有利には、本方法は、有利には、ネットワークに近い方のゲートウェイのゲートウェイ安全モジュールを用いて、ネットワークに近い方のゲートウェイによって、或いは、有利には、機器に近い方のゲートウェイのゲートウェイ安全モジュールを用いて、機器に近い方のゲートウェイによって、更新データの暗号化されたインスタンスを復号化する工程を有することができる。
【0028】
ハードウェアコンポーネントが安全コントローラを備えている場合、更に、完全なエンドツーエンドの暗号化を実現することができる。他方において、暗号化されていないデータが、内部ネットワーク内でのみ、即ち、例えば、CANバスなどの内部フィールドバスシステムを介してのみ、場合によっては、ポイントツーポイント接続を介してのみ送信されるので、独自の安全コントローラを備えていないハードウェアコンポーネントにも非常に安全な手法でデータを送信することができる。場合によっては、ポイントツーポイント接続を介したネットワークに近い方のゲートウェイと機器に近い方のゲートウェイの間の伝送は、又もや機器に近い方のゲートウェイ(又はハードウェアコンポーネント)とネットワークに近い方のゲートウェイの間で成される追加の暗号化によって保護することができる。復号化は、有利には、両方とも公開ネットワークへの直接的な接続部を備えていない、機器に近い方のゲートウェイ又はハードウェアコンポーネントによって行われる。或る程度限定された形の本方法は、機器に近い方のゲートウェイが独自のゲートウェイ安全モジュールを備えていない単純化された通信モジュールを用いて実施される。
【0029】
有利には、更新データは、ファームウェア、アプリケーションソフトウェア及び/又はハードウェアコンポーネントのパラメータデータを包含することができる。
【0030】
有利な実施構成では、この受信工程は、ブローカーによって更新データの暗号化されたインスタンスを取り出すことを含み、純粋にプッシュメカニズムにより機能するプロトコルに基づき行うことができる。
【0031】
本発明では、別の実施構成により、更新データの暗号化されたインスタンスが、機器に近い方のゲートウェイのゲートウェイ安全モジュール、ネットワークに近い方のゲートウェイのゲートウェイ安全モジュール及びハードウェアコンポーネントの安全コントローラの中の一つ以上が更新データの一貫性及び/又は信憑性を検査することを可能にする検査データを含むと規定することができる。受け取った更新データのインスタンスの信憑性と一貫性の検査によって、例えば、安全コントローラ又はゲートウェイ安全モジュールが使用する暗号化システムに基づくデジタル署名によって、例えば、データの信頼性が安全コントローラ(又は)ゲートウェイ安全モジュール)により保証された場合にのみ、(通常は相応の機器メモリの所謂「フラッシュ」により行われる)ファームウェアの置き換えが実行されることを保証できる。
[定義]
【0032】
本開示との関連において、少なくとも一つの内部ネットワークと、この内部ネットワークを介して通信する資格を有する少なくとも一つのハードウェアコンポーネントとを備えた装置が「技術システム」と呼ばれる。
【0033】
本開示との関連において、有利には、技術システムに限定された、ハードウェアコンポーネントの間のデータ交換に適した、技術システムの通信インフラストラクチャーが「内部ネットワーク」と呼ばれる。技術システムの形式に応じて、内部ネットワークは、経路選択可能なプロトコル又は経路選択可能でないプロトコルに基づき動作することができる。
【0034】
本開示との関連において、少なくとも一つのプロセッサ又はマイクロコントローラーとメモリユニットを備え、その時々の内部ネットワークを介して通信する資格を有する技術ユニットが「ハードウェアコンポーネント」と呼ばれる。
【0035】
本開示との関連において、ハードウェアコンポーネントのメモリに保存された、ハードウェアコンポーネントの動作に必要なプログラム論理が「ファームウェア」と呼ばれる。ハードウェアコンポーネントの複雑さに応じて、ファームウェアは、場合によっては、変更可能なパラメータを用いて、ハードウェアコンポーネントの動作を完全に定義すること、或いはハードウェアコンポーネントがアプリケーションソフトウェアを実行することを可能にできる。
【0036】
本開示との関連において、一般的にハードウェアコンポーネントにより実行可能なプログラム論理が「アプリケーションソフトウェア」と呼ばれる。
【0037】
本開示との関連において、ハードウェアコンポーネントの動作に影響を与える値を表すデータが、ハードウェアコンポーネントの「パラメータデータ」と呼ばれる。
【0038】
本開示との関連において、ハードウェアコンポーネントに関するデータを保存したコンピュータインフラストラクチャーが「バックエンド計算機システム」と呼ばれる。バックエンド計算機システムは、パケット交換データネットワークを介して通信し、そのパケット交換データネットワークを介して技術システムに、或いは技術システムの通信モジュールを介してハードウェアコンポーネントにデータを送信するとともに、技術システムの通信モジュールを介して、そのハードウェアコンポーネントからデータを受信することが可能である。
【0039】
本開示との関連において、有利には、ハードウェアとして、特に、マイクロチップとして構成できるユニットが「安全コントローラ」と呼ばれ、安全コントローラは、ハードウェアコンポーネントを基本的な安全機能だけ拡張したものである。基本的な安全機能は、特に、暗号鍵の生成、その安全な管理(秘密鍵の抽出を阻止すべきである)、データの暗号化と復号化、並びにデジタル署名の取扱いに関する機能である。安全コントローラは、ハードウェアコンポーネントを特定するために使用できる少なくとも一つの一義的な識別子を保有する。規模を最適化するとの理由から、その時々のハードウェアユニットに組み込まれた単一の「マイクロチップ」として安全コントローラを構成するのが有利である。しかし、ハードウェアユニットの構造サイズがそれを許容する場合、以下で定義するゲートウェイ安全モジュールに関して述べる通り、カードインタフェースとプロセッサチップを備えたシステムを使用することも可能である。
【0040】
安全コントローラは、有利には、少なくとも一つの暗号化プロセッサを有する。この暗号化プロセッサは、有利には、一つの乱数発生器、(例えば、RSAに基づく)少なくとも一つの鍵発生器、(例えば、セキュア・ハッシュ・アルゴリズム:SHAに基づく)少なくとも一つのハッシュ発生器及び少なくとも一つの暗号化/復号化/署名ユニットを有する。更に、安全コントローラは、通常不揮発性メモリ及び/又はフラッシュメモリを有する。不揮発性メモリには、例えば、エンドースメントキーとストレッジルートキーを保存することができる。有利には、事前に製造時に、有利には、変更不可能な形で不揮発性メモリに保存された、安全コントローラに割り当てられた暗号鍵が「エンドースメントキー」と呼ばれる。保護された形で不揮発性メモリに保存されているが、例えば、安全コントローラが新しいユーザーによって所有された場合に、特別な機能によって変更できる暗号鍵が「ストレッジルートキー」と呼ばれる。安全性の理由から、エンドースメントキーとストレッジルートキーは、安全なメモリから取り出し可能であってはならない。そのためには、暗号化プロセッサは、これらのキーを使用して、暗号化作業を実行できるようにしなければならない。安全コントローラの揮発性メモリには、例えば、プラットフォームコンフィグレーションレジスタ、構成証明識別キー及びそれ以外の記憶すべき鍵を保存することができる。
【0041】
安全コントローラの例として、トラステッド・コンピューティング・グループのTCG仕様に基づくトラステッド・プラットフォーム・モジュール(TPM)が挙げられる。本開示との関連において、当業者が、本発明の特許ファミリーの最も古い出願日の時点で有効なバージョンのTCG仕様に関する詳細な知見を有すると仮定する。
【0042】
本開示との関連において、暗号化の基本機能、特に、安全なデータ通信、暗号化及び復号化、暗号鍵の認証及び/又は管理を自身に一体化したマイクロプロセッサが「暗号化プロセッサ」と呼ばれる。
【0043】
本開示との関連において、ゲートウェイを基本的な安全機能だけ拡張したハードウェアユニットが「ゲートウェイ安全モジュール」と呼ばれる。ゲートウェイ安全モジュールは、安全コントローラと同様の構造にするか、それどころか同じ構造にすることができる。ゲートウェイ安全モジュールは、プロセッサチップカードを差し込むことができるカードインタフェースを備えることができ、このプロセッサチップカードは、ゲートウェイ安全モジュールの主要な部分を保有し、特に、その中に基本的な安全機能を符号化することができる。それによって、例えば、ゲートウェイ安全モジュールを大量生産する場合に、その時々のプロセッサチップカードと組み合わせることによって、ハードウェア技術的に唯一のゲートウェイ安全モジュールを製作することができる。
【0044】
「ゲートウェイ安全モジュール」と「安全コントローラ」の間の区別が、機能的な違いもハードウェア技術的な違いも意味せず、単にそれを(或る時はハードウェアユニットに、別の時はゲートウェイに)割り当てる形態を定義することに留意されたい。特に、ゲートウェイ安全モジュールと安全コントローラは、機能的及び/又はハードウェア技術的に同じ形又は異なる形に構成することができる。また、異なるゲートウェイの複数のゲートウェイ安全モジュールをそれぞれ異なるハードウェアとして構成することができ、異なるハードウェアユニットの安全コントローラも同じである必要はなく、異なる構造形式を有することができる。そのため、それ以外に何ら明確に決定されていない限り、本明細書で安全コントローラと関連して述べる全ての特徴をゲートウェイ安全モジュールに適用することもでき、その逆も可能である。
【0045】
本開示との関連において、カードインタフェースに差し込まれる、或いは差し込み可能である、組込式集積回路(チップ)を備えた(通常はプラスチックから成る)カードが「プロセッサチップカード」と呼ばれる。集積回路は、一つのハードウェア論理、少なくとも一つのメモリ及び少なくとも一つのマイクロプロセッサを有する。プロセッサチップカードは、本開示との関連において、「カードインタフェース」と呼ばれる特別なカード読取機によって駆動される。プロセッサチップカードは、一般的な語法ではしばしば「スマートカード」又は「集積回路カード(ICC)」とも呼ばれる。プロセッサチップカードは、多くの場合、小切手カード形状であるが、例えば、SIMカード形状(例えば、標準的なSIM、ミニSIM、マイクロSIM、ナノSIM)などのそれ以外の形状にすることもできる。場合によっては、プロセッサチップカードは、組込式SIMの形状で相応の機器に直に組み入れて、交換できないようにすることもできる。
【0046】
本開示との関連において、(例えば、ここで述べるバックエンド計算機システムなどの)コンピュータインフラストラクチャーにおいて、暗号化作業又はアプリケーションを効率的かつ安全に実行する役割を果たす内部又は外部の周辺機器が「ハードウェア安全モジュール」と呼ばれる(英語で「Hardware Security Module」とも呼ばれる)。このことは、例えば、データの信頼性及び一貫性と、それと関連するITシステムの情報を保証することを可能にする。
【0047】
本開示との関連において、一般的に、暗号アルゴリズムのパラメータを表し、それを制御する情報が「暗号鍵」と呼ばれる。特に、それぞれ互いに組み合わされる、復号化の鍵と暗号化の鍵の間を区別する。対称的な暗号化システムでは、復号化の鍵と暗号化の鍵は同じである。それに対して、非対称の暗号化システムは、公開ネットワーク(パブリックキー)と秘密鍵(プライベートキー)から成る鍵対を使用する。非対称の暗号鍵は、暗号化及び復号化だけでなく、デジタル署名にも使用することができる。
【0048】
「暗号システム」又は「暗号化システム」との用語は、本開示との関連において、暗号化及び復号化するためのシステム、鍵交換方法及びデジタル署名方法に対して総称的に使用される。暗号システムの既知の例は、素数ベースの一方向関数に基づき動作するRSA暗号化システムである。暗号システムの別の例は、楕円曲線暗号(Elliptic Curve Cryptography:ECC)に基づくものである。その例として、楕円曲線ディフィー・ヘルマン法(ECDH)、統合暗号化スキーム(IES)とも呼ばれる楕円曲線統合暗号化スキーム(ECIES)、楕円曲線デジタル署名アルゴリズム(ECDSA)及びECMQV、Menezes、Qu及びVanstoneによって提案された暗号化協定プロトコルが挙げられる。
【0049】
本開示との関連において、計算機ネットワークを介した暗号化されたデータ伝送を保証するネットワークプロトコルが「ネットワーク暗号化プロトコル」と呼ばれる。そのようなネットワーク暗号化プロトコルは、例えば、伝送されるメッセージの信頼性と一貫性を保証する鍵交換プロトコルと対称的な方法から構成することができる。ネットワーク暗号化プロトコルに関する標準の例は、トランスポート層セキュリティ(TLS)、セキュアシェル(SSH)、IPsec、WPA2が挙げられる。
【0050】
本開示との関連において、通信システムの間、特に、(OSIモデルで同じ又は異なる層に割り当てられた)プロトコルが異なる二つのネットワークシステムの間の接続を構築するコンポーネントが「ゲートウェイ」と呼ばれる。
【0051】
本開示との関連において、一般的に中間局の無い直接的な接続経路が「ポイントツーポイント接続」であると理解される。
【0052】
例えば、OSIモデルの下位のネットワーク層1~3における通信がそれに該当する。有利には、ポイントツーポイント接続を介した通信は、経路選択可能でないプロトコルに基づき実行される。そのような接続の例は、シリアルバスシステム、例えば、ユニバーサル・シリアル・バス(USB)を介した直接接続である。
【0053】
本開示との関連において、常に中間に接続されたブローカーを介してパブリッシャー・サブスクライバー・モデルに基づき通信を中継する方法が「純粋にプッシュメカニズムにより機能する方法」と呼ばれる。この場合、特に、直接的なエンドツーエンド接続を構築する必要がない。MQTT(メッセージ・キューイング・テレメトリー・トランスポート)仕様に基づき、特に、本発明の特許ファミリーの最も古い出願日の時点で有効なバージョンのMQTT仕様に基づき構成される通信方法がそのような方法の例を提供する。
【0054】
本開示との関連において、パブリッシャー・サブスクライバー・モデル又は純粋にプッシュメカニズムにより機能する方法に基づき、提供される、或いは取り出されるメッセージを管理するサーバーが「ブローカー」と呼ばれる。
【0055】
以下において、本発明の有利な実施形態の例を模式的に、本発明を限定しない形で図示する
図1~3を参照して、本発明を詳しく説明する。
【図面の簡単な説明】
【0056】
【
図1】本発明に基づくバックエンドサーバーとハードウェアコンポーネントの間のデータ伝送に関与するコンポーネントの模式的なブロック図
【
図2】
図1に図示されたデータ伝送経路の簡略化した模式図
【
図3】複数のバックエンド計算機システムと複数の技術システムの間の安全な通信システムの模式的なブロック図
【発明を実施するための形態】
【0057】
図1は、本発明による方法及び装置の環境内で規定される基本的なエンティティを模式図で図示している。技術システム4は、通信モジュール1、内部ネットワーク3及び内部ネットワーク3を介して互いに接続されるとともに、通信モジュール1と接続される一定数のハードウェアコンポーネント2,2’を有する。
図1に図示されたハードウェアコンポーネント2,2’の各々は、安全コントローラ14,14’を有するが、技術システム4において、安全コントローラを備えていない従来のハードウェアコンポーネントを内部ネットワーク3に繋ぐこともできる。
【0058】
通信モジュール1は、ポイントツーポイント接続9により互いに接続された、機器に近い方のゲートウェイ7とネットワークに近い方のゲートウェイ8を有する。機器に近い方のゲートウェイ7は、内部ネットワーク3とポイントツーポイント接続9の間の通信接続を構築し、ネットワークに近い方のゲートウェイ8は、ポイントツーポイント接続9とパケット交換データネットワーク6の間の通信接続を構築する。パケット交換データネットワークは、任意のローカルエリアネットワーク又はワイドエリアネットワーク、特に、インターネットであるとすることができる。
【0059】
パケット交換データネットワーク6を介した接続は、特に、技術システム4がバックエンド計算機システム5と呼ばれる計算機装置とデータを交換するために利用される。バックエンド計算機システム5は、「データセンター」21と呼ばれるコンピュータインフラストラクチャーを有し、例えば、ハードウェアコンポーネント2,2’の製造業者又は供給業者のサーバーベースのコンピュータネットワークであるとすることができる。バックエンド計算機システム5は、更に、ハードウェアコンポーネント2,2’に関するデータを保存した一つ又は複数のデータベースを有する。
図1には、ハードウェアコンポーネントのためのソフトウェア又はファームウェアを暗号化して保存したソフトウェア保管庫15とファームウェア保管庫16がシンボルで表示されている。
【0060】
バックエンド計算機システム5と技術システム4の通信モジュール1のネットワークに近い方のゲートウェイ8の間の通信は、ブローカー20を介して中継されて、純粋にプッシュメカニズムをベースとするプロトコルに基づき実行される。例えば、MQTT仕様に基づく、そのようなプロトコルは、通信モジュール1の側において、ファイアウォール指針を実現して、着信トラフィックをブロックすることを可能にする。そのため、ウェブサービスを介したシステムの改変及び通信モジュール1までのエンドツーエンド接続の構築を排除することができる。例えば、MQTTプロトコルなどの純粋にプッシュメカニズムにより機能するプロトコルでは、周知の通り、直接的なエンドツーエンド接続が構築されるのではなく、通信が常に中間に接続されたブローカー20を介して中継され、ブローカーは、「パブリッシャー」からデータを受け取って、それを一つ又は複数の「サブスクライバー」に提供し、その際、有利には、パブリッシャー及び/又はサブスクライバーの証明書に基づく識別と、場合によっては、データの暗号化とを規定することができる。各エンドポイントは、自身からブローカー20への通信を「開いて」、その通信が「外部から」持ち込まれることはない。二つの通信パートナーがサブスクライバーとしても、パブリッシャーとしても振る舞うことができるので、データを両方向に交換することが可能であり、そのために、攻撃される可能性のあるウェブサービスを設ける必要がない。そのためには、通信モジュール1から(即ち、ネットワークに近い方のゲートウェイ7から)、所定の間隔を開けた所のブローカー20との接続が構築されて、正当な第三者(特に、バックエンド計算機システム5)によって取り出されるデータが提供される(即ち、通信モジュール1がパブリッシャーとして振る舞う)か、データが第三者により取り出される(即ち、通信モジュール1がサブスクライバーとして振る舞う)。同様に、バックエンド計算機システム5は、通信モジュール1(又は「下位の」ハードウェアコンポーネント2)がデータを受信するか、或いは通信モジュール1(ハードウェアコンポーネント2)にデータを送信するために、パブリッシャーとしても、サブスクライバーとしても振る舞うことができる。
【0061】
ハードウェアコンポーネント2,2’の安全コントローラ14,14’は、例えば、集積回路又はハードウェアチップとして構成することができ、それによって、そのような安全コントローラ14,14’をハードウェアコンポーネントに配備しないことも比較的可能である。安全コントローラ14,14’は、少なくとも一つの暗号システムに基づく基本的な安全機能だけハードウェアコンポーネント2,2’を拡張したものである。安全コントローラは、例えば、トラステッド・コンピューティング・グループ(TCG)の仕様に対応して、「トラステッド・プラットフォーム・モジュール(TPM)」として構成することができる。
【0062】
機器に近い方のゲートウェイ7は、プロセッサチップカード12のためのカードインタフェース13を備えたゲートウェイ安全モジュール10を有し、ネットワークに近い方のゲートウェイ8は、カードインタフェース13’とプロセッサチップカード12’を備えた別のゲートウェイ安全モジュール10’を有する。場合によっては、ハードウェアの負担を軽減するために、機器に近い方のゲートウェイ7のゲートウェイ安全モジュール10を省くことができ、その場合、それに対応する暗号化機能と復号化機能は、ハードウェアコンポーネント2,2’の安全モジュール14,14’及び/又はネットワークに近い方のゲートウェイ8のゲートウェイ安全モジュール10’に引き継がれる。
【0063】
ハードウェアコンポーネント2,2’の安全モジュール14,14’とゲートウェイ7,8のゲートウェイ安全モジュール10,10’は、それぞれ相応のハードウェアコンポーネント又はその時々のゲートウェイを識別する役割を果たす一義的な識別子を保有する。安全コントローラ及びゲートウェイ安全モジュールが使用できる相応の暗号システムは、専門分野において周知である。
【0064】
バックエンド計算機システム5における安全機能、特に、暗号鍵の管理と分配、暗号化、復号化及びデジタル署名は、ハードウェア安全モジュール11によって管理することができる。ハードウェア安全モジュール11は、システムにおいて安全コントローラ14,14’とゲートウェイ安全モジュール10,10’の公開ネットワークを利用することもできる。しかし、このことは、バックエンド計算機システム5が自身で復号化することを許されていないデータも受信して、保存することができるので、例えば、そのような(ハードウェアコンポーネントによって集められた)データが(ここでは、正当なデータ受信機と呼ばれる)第三者のために決定されて、その公開鍵を用いて暗号化される場合には、必須の前提条件ではない。他方において、バックエンド計算機システム5によって取り扱われる更新データは、(ここでは、正当なデータ送信機とも呼ばれる)第三者を起源として、その第三者によって事前に暗号化することができる。
【0065】
暗号化方法のために配備されるユニット、特に、ゲートウェイ安全モジュール10、安全コントローラ14及びハードウェア安全モジュール11は、場合によっては、複数の異なる暗号システムをサポートすることができる。
【0066】
上述した装置は、ハードウェアコンポーネント2,2’とバックエンド計算機システム5(又は正当なデータ受信機及び/又はデータ送信機の第三者)の間の通信接続の極めて効果的かつ強固に安全を確保することを可能にする。以下において、
図2の模式図を参照して、ハードウェアユニット2からバックエンド計算機システム5までの、並びにバックエンド計算機システム5からハードウェアユニット2までのデータ通信の例を説明する。
【0067】
機器に近い方のゲートウェイ7のゲートウェイ安全モジュール10、ネットワークに近い方のゲートウェイ8のゲートウェイ安全モジュール10’、バックエンド計算機システム5のハードウェア安全モジュール11及び場合によっては、ハードウェアシステム2の安全コントローラ14は、少なくとも一つの共通の暗号システムに基づき安全機能を処理することが可能である。
【0068】
ハードウェアコンポーネント2からバックエンド計算機システム5にデータを送信するために、先ずは、初期化が実施され、その際、安全コントローラ14、二つのゲートウェイ安全モジュール10、10’及びハードウェア安全モジュール11(又はデータ受信機又はデータ送信機として振る舞う第三者の相応の安全モジュール)がそれぞれ(公開鍵と秘密鍵から成る)鍵対を生成して、安全な手法で公開鍵を互いに交換する。この初期化フェーズは、通信モジュール1の「使用開始」又は個人設定時に、場合によっては、事前に通信モジュール1の供給前に製造業者によって行うことができる。この初期化フェーズの後、通信モジュール1は、直ちに準備完了となり、本発明による方法の実施に必要な全てのデータ及び前提条件を利用できるようになる。通信モジュール1が配備された通信経路は、通常初期化フェーズ後に決定されて、それ以降変わらないか、或いは解除して、改めて初期化することによってしか変えることができない。
【0069】
技術システム4の動作中に内部ネットワーク3(例えば、車両のCANバス)を介して送信されるデータは、機器に近い方のゲートウェイ7によって受信されて、機器に近い方のゲートウェイ7又はネットワークに近い方のゲートウェイ8によって、本発明による方法に応じて暗号化されて、バックエンド計算機システム5に送信することができる。この場合、基本的に機器に近い方のゲートウェイ7(又はネットワークに近い方のゲートウェイ)が安全な伝送チェーンのエンドポイントと見做される。この場合、本方法は、独自の安全コントローラ14の無いハードウェアコンポーネントと関連して実施することができる。その方法は、以下の記述において、変化形態Aと称する。ネットワークに近い方のゲートウェイが暗号化を行う場合は、
図2において変化形態A’と称する。しかし、これらの変化形態の実現は、本開示を知った上で当業者の技量に依るので、分かり易くするために、この変化形態A’の詳しい記述を省略する。
【0070】
更に、本発明に基づき、相応のハードウェアコンポーネント2が相応の安全コントローラ14を利用できる限り、ハードウェアコンポーネント2からバックエンド計算機システム5(又はこのバックエンド計算機システム5の後に配備されたデータ受信機又はデータ送信機)までの安全な接続を実現することも可能である。この手法は、以下の記述において変化形態Bと称する。
【0071】
変化形態Aでは、機器に近い方のゲートウェイ7が、ゲートウェイ安全モジュール10を用いて一回限りの秘密鍵を生成し、この一回限りの鍵を用いて送信データを暗号化するために、認証された暗号化機能を使用する。次に、ゲートウェイ安全モジュール10が、ワンパス式鍵交換のためのパラメータセットを作成し、これらのパラメータは、バックエンド計算機システム5(又はそこに含まれるユニット)の公開鍵を含む。ゲートウェイ安全モジュール10は、キーラッピングスキームを用いて一回限りの鍵を暗号化して、これらの全てのデータを含むデータセルパケット(データエンベロープ)を生成する。
【0072】
変化形態Bでは、ハードウェアコンポーネント2の安全コントローラ14によって、機器データの独立した暗号化を事前に実行することができ、相応の機器データは、事前に安全な手法により内部ネットワーク3を介してハードウェアコンポーネント2から機器に近い方のゲートウェイ7に送信される(工程100)。ハードウェアコンポーネント2が適用する暗号化は、通信モジュール1が適用する暗号システムから独立させることができる。この場合、通信モジュール1が、本発明による暗号化を事前に暗号化される機器データに適用する。
【0073】
機器に近い方のゲートウェイ7は、データセルパケットを(有利には、経路選択可能でない)ポイントツーポイント接続9を介して、ネットワークに近い方のゲートウェイ8に送信する(工程101)。
【0074】
ネットワークに近い方のゲートウェイ8は、パブリッシャーとして振る舞って、ネットワーク暗号化プロトコル(例えば、TLS)に基づきブローカー20との安全な接続を構築し、その際、クライアント認証も、サーバー認証も行われる。次に、ネットワークに近い方のゲートウェイは、パブリッシャーとしてデータセルパケットをブローカーのチャンネル(これは、テーマ又はトピック、例えば、MQTTトピックとも呼ばれる)に伝送する(工程102)。
【0075】
バックエンド計算機システム5も、ネットワーク暗号化プロトコル(例えば、TLS)に基づきブローカー20との安全な接続を構築し、チャンネルのサブスクライバーとして振る舞って、データセルパケットを受信する(工程103)。場合によっては、バックエンド計算機システム5は、データセルパケットをバックエンド計算機システム5の受信機に送信する。
【0076】
データ伝送の方向に関係無く、その時々のパブリッシャーも、その時々のサブスクライバーも、それぞれ所定の時間パターン及び/又はイベント関連形態によりブローカー20との接続の構築を行うことができ、その際、パブリッシャー/サブスクライバー毎に相応の役割を定義することができる。
【0077】
この時点で、バックエンド計算機システム5において、関連するデータがデータセルパケットから抜き出されて、ワンパス式鍵交換スキームを用いて、キーラッピング鍵が計算され、そのキーラッピング鍵を用いて、秘密鍵が復号化される。次に、データの一貫性及び信憑性が検証されて、データ自体が復号化される。このようにして、バックエンド計算機システム5は、復号化された機器データを生成するか、或いはハードウェアコンポーネント2により暗号化された形で機器データを生成することができる。
【0078】
この逆の方向では、バックエンド計算機システム5からハードウェアコンポーネント2へのデータの通信が、一つの実施構成の例において以下で述べる工程に基づき実行することができる。このデータ送信時においても、ここでは、変化形態Cと変化形態C’と称する二つの変化形態について述べる。変化形態Cでは、暗号化が、バックエンド計算機システム5から機器に近い方のゲートウェイ7にまで拡張され、変化形態C’では、安全な接続が、バックエンド計算機システム5からネットワークに近い方のゲートウェイ8にまで拡張される。更に、本発明による方法に基づきハードウェアコンポーネント2に対して送信されるデータは、独自の暗号システムに基づき暗号化することができる(その際、そのような暗号化は、バックエンド計算機システム5又は正当なデータ送信機によって行われる)。そのような追加の暗号化が、
図2において、変化形態Dとして表示されている。
【0079】
バックエンド計算機システムにおける関連ユニット、例えば、送信するためのデータを保存するソフトウェア保管庫15又はファームウェア保管庫16は、相応のハードウェア安全モジュール11における秘密鍵を使用して、送信するデータのためのデジタル署名を作成し、その署名をハードウェアコンポーネント2に送信する。データは、例えば、ハードウェアコンポーネント2のためのアプリケーションソフトウェア、ファームウェア又はパラメータデータを包含することができる。場合によっては、これらのデータは、事前に暗号化して、バックエンド計算機システム5に保存することができ、その際、暗号化は、例えば、ハードウェアコンポーネントの製造業者によって実施することができるが、その業者は、バックエンド計算機システムの所有者及び管理者ではない。この場合、バックエンド計算機システム5は、通信モジュール1と接続して、単に第三者に対して厳しく安全を確保された伝送機能を提供し、その機能では、何れにせよ規定された暗号化に対して、更なる安全性の高い暗号化が「重ね合わされ」る。
【0080】
デジタル署名を含むデータが、有利には、関連ユニットから出る前に、バックエンド計算機システム5で暗号化される。ハードウェア安全モジュール11を用いて、一回限りの秘密鍵が作成されて、一回限りの鍵を用いて、署名すべきデータを暗号化するために、認証された暗号化機能が使用される。次に、ハードウェア安全モジュール11において、ワンパス式暗号交換のためのパラメータセットが作成され、その際、これらのパラメータは、機器に近い方のゲートウェイ7の公開鍵(変化形態C)又はネットワークに近い方のゲートウェイ8の公開鍵(変化形態C’)を包む。一回限りの鍵は、キーラッピングスキームを用いて暗号化されて、これらの全てのデータを含むデータセルパケット(データエンベロープ)が生成される。これに代わって、上記の工程は、バックエンド計算機システム5のハードウェア安全モジュール11ではなく、例えば、正当なデータ送信機によって実行することもできる。また、ハードウェア安全モジュール11の代わりに、例えば、ソフトHSM又は同様のシステムの形のソフトウェア技術による解決策を使用することもできる。
【0081】
バックエンド計算機システム5は、パブリッシャーとして振る舞って、ネットワーク暗号化プロトコルに基づきブローカー20との安全な接続を構築し、その際、クライアント認証も、サーバー認証も行われる。次に、バックエンド計算機システム5は、パブリッシャーとして、データセルパケットをブローカーのチャンネルに伝送する(工程201)。
【0082】
ネットワークに近い方のゲートウェイ8も、ネットワーク暗号化プロトコルに基づきブローカー20との安全な接続を構築し、チャンネルのサブスクライバーとして振る舞って、データセルパケットを受信し(工程202)、その際、クライアント認証も、サーバー認証も行われる。
【0083】
変化形態C’では、先ずは、ネットワークに近い方のゲートウェイ8がゲートウェイ安全モジュール10’を用いて、関連するデータをデータセルパケットから抜き出す。キーラッピング鍵は、ワンパス式暗号交換スキームを用いて計算されて、秘密鍵がキーラッピング鍵を用いて復号化される。データの一貫性及び信憑性は、バックエンド計算機システム5の(ゲートウェイ安全モジュール10’に保存された)公開鍵を用いて検証され、データ自体が復号化されて、ポイントツーポイント接続9を介して、機器に近い方のゲートウェイ7に送信される。
【0084】
変化形態Cでは、データセルパケットがネットワークに近い方のゲートウェイ8からポイントツーポイント接続9を介して、機器に近い方のゲートウェイ7に送信される(工程203)。機器に近い方のゲートウェイ7は、関連するデータをデータセルパケットから抜き出し、ワンパス式鍵交換スキームを用いてキーラッピング鍵を計算して、そのキーラッピング鍵を用いて秘密鍵を復号化する。データの一貫性及び信憑性が検証されて、データが復号化される。場合によっては、データの一貫性及び信憑性の保証形態を事前に暗号システムに統合するか、或いは別の好適な手法により実装することができる。
【0085】
次に、機器に近い方のゲートウェイ7は、ハードウェアコンポーネント2にデータを送信する(工程204)。ハードウェアコンポーネント2が安全コントローラ14を利用できる場合、場合によっては、例えば、バックエンド計算機システム5の公開鍵又はデータを作成又は暗号化した所の公開鍵を用いて、安全コントローラ14によって、データの一貫性及び信憑性を検査することができる。場合によっては、ハードウェアコンポーネント2の安全コントローラ14が変化形態Dに基づき追加の暗号化レベルの復号化を実施することもできる。
【0086】
本開示との関連において、バックエンド計算機システム5のコンポーネントの秘密鍵に割り当てられた、或いはそのコンポーネントに保存された鍵対の全ての公開鍵が「バックエンド計算機システムの公開鍵」と呼ばれる。特に、そのようなバックエンド計算機システム5の公開鍵は、例えば、ソフトウェア保管庫15又はファームウェア保管庫16に割り当てることができる。
【0087】
上述した方法を用いて、様々な形式の多数の技術システム4が一つ又は複数のバックエンド計算機システム5と安全な形で通信できる非常に複雑な通信構造を実現することができる。
図3は、例えば、第一の技術システム4と第二の技術システム4’から成る拡張された通信構造を図示している。第一の技術システム4は、例えば、産業機器18、例えば、少なくとも一つのハードウェアコンポーネント2、例えば、センサーユニットが配備された検査台又は機械装置を表すことができる。産業機器は、通常本発明による教えと関連して使用できる多数のハードウェアコンポーネント2を備えている。図示された第二の技術システム4’は、例えば、少なくとも一つのハードウェアコンポーネント2を含む自動運転車両17を表すことができる。そのような車両は、通常本発明による教えをそれぞれ利用できる多数のハードウェアコンポーネント2を保有する。
【0088】
図3には、二つの技術システム4,4’だけを表示して図示しているが、この通信構造が多数の異なる技術システム及び/又は同様の技術システムをサポートできることは明らかである。
【0089】
本発明と関連して有利に動作できる技術システムの例として、発電所運営者の設備、船舶用港湾運営者の設備、自動運転、半自動運転及び従来の車両と船舶、例えば、MRT機器及びそれと同等の機器などの医療検査設備、飛行機、生産設備等が挙げられる。
【0090】
そのような技術システムに配備できるハードウェアコンポーネントの例として、携帯式排ガス測定設備(PEMS)、車両の制御機器、家電製品、SPSシステム、一般的なセンサー及びアクチュエータ等が挙げられる。
【0091】
各技術システムは(少なくとも)一つの通信モジュール1,1’を有する。各通信モジュール1,1’は、
図1と関連して既に述べたものと同じ、機器に近い方のゲートウェイ7、ポイントツーポイント接続9及びネットワークに近い方のゲートウェイ8を備えた基本構造を有する。
【0092】
この通信構造には、一つ又は複数のバックエンド計算機システム5,5’が存在することができる。例えば、一つの通信モジュール1を介したハードウェアコンポーネント2との通信を複数のハードウェア提供業者によって利用するか、異なるグループの技術システム及び/又はハードウェアコンポーネントに対して複数のバックエンド計算機システム5を配備するか、或いはその両方が可能である。この場合、パケット交換データネットワーク6を介した通信は、例えば、同じブローカー20を介して中継できるが、それぞれ異なる通信経路に対して、複数のブローカーを配備することもできる。
【0093】
図3に例として図示された通信構造は、サポートするハードウェアコンポーネント2,2’毎に、バックエンド計算機システム5,5’のコンポーネントと通信モジュール1又はハードウェアコンポーネント2の間の完全なエンドツーエンド暗号化形態を構成することを可能にする。それによって、例えば、パケット交換データネットワーク6を介した伝送の途中のハードウェアコンポーネントのソフトウェア又はファームウェアを汚染されたバージョンに置き換えようとするハッカー攻撃を阻止することができる。通信モジュール1、内部ネットワーク3又はハードウェアコンポーネント2に対する(例えば、サイドチャネルアタックによる)ハードウェアベースの攻撃を目的とする多数の試みも本発明に依る装置及び方法によって挫かれる。
なお、本願は、特許請求の範囲に記載の発明に関するものであるが、他の態様として以下の構成も包含し得る。
1.
技術システム(4)の内部ネットワーク(3)に組み込まれた少なくとも一つのハードウェアコンポーネント(2)と、パケット交換データネットワーク(6)に繋がるバックエンド計算機システム(5)との間でデータを伝送するための通信モジュール(1)において、
この通信モジュール(1)が、中間局の無いポイントツーポイント接続(9)を介して互いに接続された、機器に近い方のゲートウェイ(7)とネットワークに近い方のゲートウェイ(8)を有し、このネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)とポイントツーポイント接続(9)の間のデータ伝送インタフェースを提供し、この機器に近い方のゲートウェイ(7)が、ポイントツーポイント接続(9)と内部ネットワーク(3)の間のデータ伝送インタフェースを提供する当該通信モジュール。
2.
上記1に記載の通信モジュール(1)において、
機器に近い方のゲートウェイ(7)がゲートウェイ安全モジュール(10)を有することと、ネットワークに近い方のゲートウェイ(8)がゲートウェイ安全モジュール(10’)を有することとの一つ以上を含む当該通信モジュール。
3.
上記2に記載の通信モジュール(1)において、
少なくとも一つのゲートウェイ安全モジュール(10)が、プロセッサチップカード(12)のためのカードインタフェースを有する当該通信モジュール。
4.
上記1~3のいずれか1つに記載の通信モジュール(1)を備えた技術システム(4)であって、
この技術システム(4)が、更に、少なくとも一つのハードウェアコンポーネント(2)と少なくとも一つの内部ネットワーク(3)を有する技術システム。
5.
上記4に記載の技術システム(4)において、
前記のハードウェアコンポーネント(2)が、集積型暗号プロセッサを備えた安全コントローラ(14)、不揮発性メモリ及び揮発性メモリを有する当該技術システム。
6.
上記4又は5に記載の技術システム(4)において、
この技術システムは、自動運転段階1~5のうちの1つの自動運転段階にしたがう車両(17)である当該技術システム。
7.
上記4又は5に記載の技術システム(4)において、
この技術システム(4)が、自動化システムにより制御される機械装置(18)、特に、検査台である技術システム。
8.
上記4~7のいずれか1つに記載の技術システム(4)の内部ネットワーク(3)に組み込まれたハードウェアコンポーネント(2)の機器データをパケット交換データネットワーク(6)に繋がるバックエンド計算機システム(5)に伝送する方法であって、
この方法が、
ハードウェアコンポーネント(2)から内部ネットワーク(3)を介して機器に近い方のゲートウェイ(7)に機器データを送信する工程(100)と、
機器に近い方のゲートウェイ(7)からポイントツーポイント接続(9)を介してネットワークに近い方のゲートウェイ(8)に機器データを送信する工程(101)であって、機器に近い方のゲートウェイ(7)又はネットワークに近い方のゲートウェイ(8)によって、機器データが機器データの暗号化されたインスタンスに変換される工程と、
この機器データの暗号化されたインスタンスをネットワークに近い方のゲートウェイ(8)からパケット交換データネットワーク(6)を介してバックエンド計算機システム(5)に送信する工程(102,103)と、
を含む当該方法。
9.
上記8に記載の方法において、
この方法が、
有利には、機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)を用いて、機器に近い方のゲートウェイ(7)によって、或いは
有利には、ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)を用いて、ネットワークに近い方のゲートウェイ(8)によって、
データの受信機、特に、バックエンド計算機システム(5)の公開鍵を用いて、機器データの暗号化されたインスタンスを作成する工程、
を有する当該方法。
10.
上記8又は9に記載の方法において、
前記のパケット交換データネットワーク(6)を介して暗号化されたインスタンスを送信する工程(102,103)が、この暗号化されたインスタンスをブローカー(20)に送信すること(102)を含み、純粋にプッシュメカニズムにより機能するプロトコルに基づき行われる当該方法。
11.
上記8~10のいずれか1つに記載の方法において、
前記のネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)を介した送信前に、暗号化されたインスタンスをネットワーク暗号化プロトコルに基づき暗号化する当該方法。
12.
上記8~11のいずれか1つに記載の方法において、
前記の機器データの暗号化されたインスタンスは、バックエンド計算機システム(5)及び/又はそれ以外の正当なデータ受信機が機器データの一貫性及び/又は信憑性を検査することを可能にする検査データを含む当該方法。
13.
上記4~7のいずれか1つに記載の技術システム(4)の内部ネットワーク(3)に組み込まれたハードウェアコンポーネント(2)の機器メモリ(19)に更新データを保存する方法であって、
この更新データが、ハードウェアコンポーネント(2)に対してバックエンド計算機システム(5)によって提供され、
この方法が、
ネットワークに近い方のゲートウェイ(8)が、パケット交換データネットワーク(6)を介してバックエンド計算機システム(5)から更新データの暗号されたインスタンスを受信する工程(202)と、
この更新データをネットワークに近い方のゲートウェイ(8)からポイントツーポイント接続(9)を介して機器に近い方のゲートウェイ(7)に送信する工程(203)と、 この更新データを、内部ネットワーク(3)を介してハードウェアコンポーネント(2)に送信する工程であって、更新データの暗号化されたインスタンスが機器に近い方のゲートウェイ(7)又はネットワークに近い方のゲートウェイ(8)によって復号化される工程と、
この更新データをハードウェアコンポーネントの機器メモリ(19)に保存する工程と、
を特徴とする方法。
14.
上記13に記載の方法において、
前記の更新データの暗号化されたインスタンスが、ハードウェアコンポーネント(2)、機器に近い方のゲートウェイ(7)及び/又はネットワークに近い方のゲートウェイ(8)の中の一つ以上の公開鍵を用いて、バックエンド計算機システム(5)及び/又は正当なデータ送信機によって作成される当該方法。
15.
上記13又は14に記載の方法において、
この方法が、
有利には、ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)を用いて、ネットワークに近い方のゲートウェイ(8)によって、或いは
有利には、機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)を用いて、機器に近い方のゲートウェイ(7)によって、
更新データの暗号化されたインスタンスを復号化する工程、
を有する当該方法。
16.
上記13~15のいずれか1つに記載の方法において、
前記の更新データが、ファームウェア、アプリケーションソフトウェア及び/又はハードウェアコンポーネント(2)のパラメータデータを包含する当該方法。
17.
上記13~16のいずれか1つに記載の方法において、
前記の受信する工程(202)が、ブローカー(20)から更新データの暗号化されたインスタンスを引き出すことを含み、純粋にプッシュメカニズムにより機能するプロトコルに基づき行われる当該方法。
18.
上記13~17のいずれか1つに記載の方法において、
前記の更新データの暗号化されたインスタンスは、機器に近い方のゲートウェイ(7)のゲートウェイ安全モジュール(10)、ネットワークに近い方のゲートウェイ(8)のゲートウェイ安全モジュール(10’)及びハードウェアコンポーネント(2)の安全コントローラ(14)の中の一つ以上が更新データの一貫性及び/又は信憑性を検査することを可能にする検査データを含む当該方法。
【符号の説明】
【0094】
1 通信モジュール
2 ハードウェアコンポーネント
3 内部ネットワーク
4 技術システム
5 バックエンド計算機システム
6 パケット交換データネットワーク
7 機器に近い方のゲートウェイ
8 ネットワークに近い方のゲートウェイ
9 ポイントツーポイント接続
10 ゲートウェイ安全モジュール
11 ハードウェア安全モジュール
12 プロセッサチップカード
13 カードインタフェース
14 安全コントローラ
15 ソフトウェア保管庫
16 ファームウェア保管庫
17 車両
18 産業機器
19 機器メモリ
20 ブローカー
21 データセンター