(57)【特許請求の範囲】
【請求項１】
認証装置と通信可能であり、第１の端末装置及び第２の端末装置が接続された通信路において、下位側にある前記第１の端末装置及び前記第２の端末装置と、上位にある前記認証装置と、の間の通信を中継する中継装置であって、
前記中継装置、前記第１の端末装置及び前記第２の端末装置は、それぞれ認証情報として、固有の識別子と、固有鍵または固有の分散ハッシュ値とを有し、
前記中継装置は、
自機の認証情報を前記認証装置に送出し、
前記第１の端末装置及び前記第２の端末装置から前記認証情報を収集して、収集した前記認証情報を前記認証装置に送出し、
真正な装置の前記認証情報が登録されたホワイトリストと前記中継装置、前記第１の端末装置及び前記第２の端末装置の前記認証情報との比較に基づいて前記認証装置が行った前記中継装置、前記第１の端末装置及び前記第２の端末装置のそれぞれについての認証の結果を受信し、
前記中継装置が真正な装置である場合、前記認証の結果に基づき、前記第１の端末装置及び前記第２の端末装置のうち不真正であると判定された不真正端末装置と、自機との通信を遮断するとともに、前記第１の端末装置及び前記第２の端末装置のうち真正であると判定された真正端末装置に対し、前記不真正端末装置と前記真正端末装置との通信を遮断させるための通信制御情報を送出する、中継装置。
【請求項２】
前記中継装置、前記第１の端末装置及び前記第２の端末装置が、前記認証情報として、前記固有の識別子及び前記固有の固有鍵を有する場合、
前記中継装置は、前記第１の端末装置及び前記第２の端末装置から前記認証情報を収集する前に、前記第１の端末装置及び前記第２の端末装置との間で相互認証を行う、請求項１に記載の中継装置。
【請求項３】
前記中継装置は、自機の前記識別子及び前記固有鍵を暗号化して前記認証装置に送出し、
前記第１の端末装置及び前記第２の端末装置から収集した暗号化された前記第１の端末装置及び前記第２の端末装置の前記識別子及び前記固有鍵を前記認証装置に送出し、
前記認証装置は、前記暗号化された前記識別子及び前記固有鍵を復号し、復号された前記識別子及び前記固有鍵に基づいて前記中継装置、前記第１の端末装置及び前記第２の端末装置が真正な装置であるか否かを判定する、請求項２に記載の中継装置。
【請求項４】
前記中継装置と前記認証装置との間の通信路上に設けられるゲートウェイを含み、
前記中継装置は、
自機の認証情報を、前記ゲートウェイを介して前記認証装置に送出し、
前記第１の端末装置及び前記第２の端末装置から認証情報を収集して、前記ゲートウェイを介して前記第１の端末装置及び前記第２の端末装置の認証情報を前記認証装置に送出し、
前記認証装置から前記ゲートウェイを介して前記認証の結果を受信し、
前記中継装置が真正な装置である場合、前記認証の結果に基づき、前記不真正端末装置と、自機との通信を遮断するとともに、
前記ゲートウェイ以外の前記第１の端末装置及び前記第２の端末装置に対し、前記不真正端末装置との通信を遮断させるための通信制御情報を送出する、請求項１に記載の中継装置。
【請求項５】
前記中継装置、前記第１の端末装置及び前記第２の端末装置は、それぞれ個別の電子制御装置であり、前記通信路は車載ネットワークである、請求項１に記載の中継装置。
【請求項６】
前記中継装置、前記第１の端末装置及び前記第２の端末装置が、前記認証情報として、前記固有の識別子及び前記固有の固有鍵を有する場合、
前記認証の結果、前記不真正端末装置が存在することが判明したとき、前記中継装置は、前記不真正端末装置との通信を遮断するか否かを、前記車載ネットワークを備えた車両を使用する者に問い合わせる機能を有する、請求項５に記載の中継装置。
【請求項７】
他の端末装置が下位側に接続される中継装置を介して上位側の認証装置と通信可能であり、前記中継装置の下位側において前記中継装置と接続される端末装置であって、
前記端末装置、前記中継装置及び前記他の端末装置は、それぞれ認証情報として、固有の識別子と、固有鍵または固有の分散ハッシュ値とを有し、
前記端末装置は、
前記中継装置からの要求により、自機の認証情報を前記中継装置に送信し、
前記中継装置に送信された前記自機の認証情報、前記中継装置の前記認証情報及び前記他の端末装置の前記認証情報は、前記中継装置によって前記認証装置に送出され、
真正な装置の前記認証情報が登録されたホワイトリストと、前記中継装置、前記端末装置及び前記他の端末装置の前記認証情報と、の比較に基づいて前記認証装置が行った前記中継装置、前記端末装置及び前記他の端末装置のそれぞれについての認証の結果は、前記中継装置によって受信され、
前記端末装置は、
前記中継装置および端末装置が真正である場合、前記認証の結果に基づき、不真正であると判定された前記他の端末装置との通信を遮断させるための通信制御情報を前記中継装置から受信し、
前記通信制御情報に基づき、前記認証において不真正であると判定された前記他の端末装置との通信を遮断する、端末装置。
【請求項８】
前記端末装置、前記中継装置及び前記他の端末装置が、前記認証情報として、前記固有の識別子及び前記固有鍵を有する場合、
前記端末装置は、前記中継装置へ前記認証情報を送信する前に、前記中継装置との間で相互認証を行い、
前記端末装置は、自機の前記識別子及び前記固有鍵を暗号化して前記中継装置に送出し、
前記中継装置は、自機の前記識別子及び前記固有鍵を暗号化して前記認証装置に送出し、
前記中継装置は、前記他の端末装置からそれぞれ暗号化された前記識別子及び前記固有鍵を収集し、前記端末装置から受信した暗号化された前記識別子及び前記固有鍵と、前記他の端末装置から収集した暗号化された前記識別子及び前記固有鍵とを前記認証装置に送出し、
前記認証装置は、前記暗号化された前記識別子及び前記固有鍵を復号し、復号された前記識別子及び前記固有鍵に基づいて前記端末装置、前記中継装置及び前記他の端末装置が真正な装置であるか否かを判定する、請求項７に記載の端末装置。
【請求項９】
前記端末装置、前記中継装置及び前記他の端末装置は、それぞれ個別の電子制御装置であり、車載ネットワーク上に配置される、請求項７に記載の端末装置。
【請求項１０】
前記端末装置、前記中継装置及び前記他の端末装置が、前記認証情報として、前記固有の識別子及び前記固有鍵を有する場合、
前記端末装置は、前記不真正な端末装置との通信を遮断するとき、前記不真正な端末装置との通信を遮断するか否かを、前記車載ネットワークを備えた車両を使用する者に問い合わせる機能を有する、請求項９に記載の端末装置。
【請求項１１】
中継装置と、前記中継装置の上位側にある認証装置と、前記中継装置の下位側に接続される第１の端末装置及び第２の端末装置と、を含む通信システムにおいて通信路を介して行われる通信方法であって、
前記中継装置、前記第１の端末装置及び前記第２の端末装置は、それぞれ認証情報として、固有の識別子と、固有鍵または固有の分散ハッシュ値とを有し、
前記中継装置は、
真正な装置の前記認証情報が登録されたホワイトリストと、前記中継装置、前記第１の端末装置及び前記第２の端末装置の前記認証情報と、の比較に基づいて前記中継装置、前記第１の端末装置及び前記第２の端末装置のそれぞれについて認証する前記認証装置に対し、自機の認証情報を送出し、
前記通信路に接続された前記第１の端末装置及び前記第２の端末装置から前記認証情報を収集し、
前記認証装置に対し、前記第１の端末装置及び前記第２の端末装置の認証情報を送出し、
前記認証装置から前記認証の結果を受信し、
前記中継装置が真正な装置である場合、前記認証の結果に基づき、前記第１の端末装置及び前記第２の端末装置のうち不真正であると判定された不真正端末装置と、自機との通信を遮断するとともに、真正であると判定された真正端末装置に対し、不真正端末装置との通信を遮断させるための通信制御情報を送出する、通信方法。
【請求項１２】
前記通信制御情報を受信した前記真正端末装置は、前記通信制御情報に基づき、前記不真正端末装置との通信を遮断する、請求項１１に記載の通信方法。
【請求項１３】
前記中継装置、前記第１の端末装置及び前記第２の端末装置が、前記認証情報として、前記固有の識別子及び前記固有鍵を有する場合、
前記他の前記第１の端末装置及び前記第２の端末装置は、前記中継装置へ前記認証情報を送信する前に、前記中継装置との間で相互認証を行い、
前記中継装置は、自機の前記識別子及び前記固有鍵を暗号化して前記認証装置に送出し、
前記他の前記第１の端末装置及び前記第２の端末装置は、自機の前記識別子及び前記固有鍵を暗号化して前記中継装置に送出し、
前記中継装置は、前記通信路に接続された前記第１の端末装置及び前記第２の端末装置からそれぞれ暗号化された前記識別子及び前記固有鍵を収集して前記認証装置に送出し、
前記認証装置は、前記暗号化された前記識別子及び前記固有鍵を復号し、復号された前記識別子及び前記固有鍵に基づいて前記中継装置、前記第１の端末装置及び前記第２の端末装置が真正な装置であるか否かを判定する、請求項１１に記載の通信方法。
【請求項１４】
前記他の装置は前記中継装置と前記認証装置との間の通信路上に設けられるゲートウェイを含み、
前記中継装置は、
自機の認証情報を、前記ゲートウェイを介して前記認証装置に送出し、
前記第１の端末装置及び前記第２の端末装置から認証情報を収集し、
収集した前記認証情報を、前記ゲートウェイを介して前記認証装置に送出し、
前記認証装置から前記ゲートウェイを介して前記認証の結果を受信する、請求項１１に記載の通信方法。
【請求項１５】
前記中継装置、前記第１の端末装置及び前記第２の端末装置は、それぞれ個別の電子制御装置であり、前記通信路は車載ネットワークである、請求項１１に記載の通信方法。
【請求項１６】
前記中継装置、前記第１の端末装置及び前記第２の端末装置が、前記認証情報として、前記固有の識別子及び前記固有の固有鍵を有する場合、
前記認証の結果、前記不真正端末装置が存在することが判明したとき、前記中継装置または前記真正端末装置は、当該不真正端末装置との通信を遮断するか否かを、前記車載ネットワークを備えた車両を使用する者に問い合わせる、請求項１５に記載の通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信路を介して認証装置に接続される中継装置、端末装置および通信方法に関し、特に当該中継装置と端末装置についての認証に好適に利用できるものである。
【背景技術】
【０００２】
階層的に構成されたシステムにおいて、不正なデバイスを参加させることによる攻撃から当該システムを守る技術の重要性が高まってきている。例えば、車載ネットワークが搭載される自動車は、ゲートウェイを介して外部の認証サーバーへの接続ができるように構成され、自動車自身の認証を受けることができるが、当該車載ネットワークに不正なデバイスが接続されたときにも、その不正なデバイスによる攻撃から当該車載ネットワークに接続される他の真正なデバイスを守る必要がある。
【０００３】
特許文献１には、マシンツーマシン（Ｍ２Ｍ: machine to machine）デバイスによってサービスを提供する方法が開示されている。Ｍ２Ｍデバイスは、認証情報を含む第１認証に対するリクエストをネットワーク保安部（NSEC）へ送信する送信機と、それと共に拡張可能認証プロトコル（EAP）認証を実行する制御機を有し、認証が成功した場合に、マスターセッションキー（MSK）及びＭ２Ｍデバイスの認証情報のうち、少なくとも１つを利用して秘密キーを生成する、キージェネレータを有する。ここで、ネットワーク保安部を示すNSECは、Network Security Capabilityの略語であり、拡張可能認証プロトコルを示すEAPは、Extensible Authentication Protocolの略語であり、マスターセッションキーを示すMSKはMaster Session Keyの略語である。
【０００４】
特許文献２には、ネットワーク内にビザンチン合意による認証の機能およびカバートチャンネルの検証・制御機能を持つコントロールマネージャを設けることにより、情報を改ざんやリーク等から保護することができる認証システムが開示されている。
【０００５】
特許文献３には、複数のコンピュータにより、ファイルシステムを安全に分散管理する方法が開示されている。ディレクトリはビザンチン合意を形成する複数台のコンピュータ（ビザンチングループ）に複製保存することで安全性を確保し、ファイルは複数台のコンピュータに複製保存するがビザンチン合意を用いないことで負荷を軽減する。また、ファイルの内容のダイジェスト値をビザンチングループで複製保存することによって、読み取ったファイルの内容が正しいことを検証できる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２０１４−５１３３４９号公報
【特許文献２】特開平１１−０８８３２５号公報
【特許文献３】特開２００２−３５８２２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１、２及び３について本発明者が検討した結果、以下のような新たな課題があることがわかった。
【０００８】
特許文献１に記載される技術によれば、Ｍ２Ｍネットワークが認証局と直接やりとりしなくても、ネットワーク内部の機器認証ができるように当該ネットワーク内のゲートウェイに認証鍵をセキュアに配信することができ、機器をセキュアに起動し、機器同士のセキュアな通信が実現される。しかしながら、機器自体の認証については言及されていない。したがって、不正な機器を排除することができない。
【０００９】
特許文献２に記載される技術によれば、カバートチャンネルによるデータ改ざんの可能性がある場合、あるいは認証システム内のシステム管理者自身が不正を働く可能性がある場合等においても、情報の改ざんや漏洩を発見することができる。しかしながら、不正を働くシステム管理者や一般の端末を排除することはできない。
【００１０】
特許文献３に記載される技術によれば、複数のコンピュータ上に分散したファイルを、コンピュータのいくつかが任意の時刻にアクセス不能にされた場合であっても、当該ファイルを高い信頼性で記憶しアクセス可能な方法で管理し、同時に、無許可ユーザーによるアクセスを防止することができる。しかしながら、複数のコンピュータから不正なコンピュータを排除する方法については言及されていない。
【００１１】
以上のようなシステムでは、正規のデバイスになりすましながら、ランダムに不正な挙動をするという、ビザンチン故障型の攻撃を行う不正なデバイスを排除することができない。そのようなシステムのネットワークでは一般に、通信エラーの発生を想定しており、リトライを繰り返すうちに正しい応答があれば正常とみなすプロトコルが採用されているために、当該ネットワークにおいて一旦デバイス間の相互接続認証が得られてしまうと、ビザンチン故障型の攻撃を通信路のエラーと区別することができないからである。
【００１２】
また、例えば特許文献２や３に記載されるようにビザンチン合意を利用することにより、悪意のあるデバイスがネットワークに加わっていることを前提として、全体で合議制による判断をすることで攻撃の影響を小さくするというような技術が知られているが、悪意のあるデバイスそのものを排除することはできていない。さらに、悪意のあるノードが全体に占める割合が増加すると、通信にかかる計算コストの悪化や通信の失敗率の増加といった事態を防ぐことができず、最悪の場合システムダウンに至る。特に車載システムにおいては、システムがダウンした場合に人命にかかわる重大事故に発展する恐れがあるため特に深刻である。
【００１３】
このような課題を解決するための手段を以下に説明するが、その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１４】
一実施の形態によれば、下記の通りである。
【００１５】
すなわち、認証装置と通信可能な中継装置と端末装置と他の装置とが通信路を介して接続される通信システムにおいて、以下のように構成される。
【００１６】
中継装置、端末装置及び他の装置は、それぞれ固有の認証情報を有する。中継装置は、自身の認証情報を認証装置に送出する。中継装置は、通信路に接続される端末装置と他の装置から認証情報を収集して認証装置に送出する。認証装置は受信した認証情報に基づいて、中継装置、端末装置及び他の装置が真正な装置であるか否かを判定する装置認証の機能を備える。
【００１７】
中継装置は、認証装置から装置認証の結果を受信し、その結果に基づいて自身と不真正と判定された装置との通信を遮断するとともに、端末装置及び他の装置に対して不真正と判定された装置との通信を遮断させるための通信制御情報を送出する。端末装置及び他の装置は、通信制御情報に基づいて、自身と不真正と判定された装置との通信を遮断する。
【発明の効果】
【００１８】
前記一実施の形態によって得られる効果を簡単に説明すれば下記のとおりである。
【００１９】
すなわち、ビザンチン故障型攻撃を行う不正な装置が、他の装置や中継装置が接続されている通信路に接続された場合であっても、その不正な装置を当該通信路から排除することができる。
【図面の簡単な説明】
【００２０】
【図１】図１は、基本的な構成を表すブロック図である。
【図２】図２は、各デバイスの構成例と装置認証の動作を示す説明図である。
【図３】図３は、複数のメーカーから提供される複数のデバイスを含むシステムの構成例を示す、模式的ブロック図である。
【図４】図４は、デバイスと認証装置の間の通信についての説明図である。
【図５】図５は、図１に例示されるシステム構成に対応する認証情報の収集フローの一例を示すシーケンス図である。
【図６】図６は、図５に例示される認証情報の収集フローで送受されるメッセージの一例を示す説明図である。
【図７】図７は、さらに新たな下位ノードが接続されたときの認証フローの一例を示すシーケンス図である。
【図８】図８は、図７に例示される認証フローで送受されるメッセージの一例を示す説明図である。
【図９】図９は、不正ノード情報を通信制御情報とする場合のフローを示す説明図である。
【図１０】図１０は、認証済ノード情報を通信制御情報とする場合のフローを示す説明図である。
【図１１】図１１は、新たな下位ノードが接続されたときの認証フローの別の一例を示すシーケンス図である。
【図１２】図１２は、図１１に例示される認証フローで送受されるメッセージの一例を示す説明図である。
【図１３】図１３は、実施形態２のシステム構成例を表すブロック図である。
【図１４】図１４は、実施形態２の別のシステム構成例を表すブロック図である。
【図１５】図１５は、共有バス型接続ネットワークにおける通信パケットの構成例を示す説明図である。
【図１６】図１６は、装置Ｘに搭載されるバス型ネットワークに接続されるＥＣＵの数が５個に増えたときのシステム構成例を表すブロック図である。
【図１７】図１７は、図１６に対応するＥＣＵの数が５個のスター型接続ネットワークが、装置Ｘに搭載される場合のシステム構成例を表すブロック図である。
【図１８】図１８は、実施形態３のシステム構成例を表すブロック図である。
【図１９】図１９は、図１８に示す階層的なネットワークを階層バスネットワークで構成した例を示す説明図である。
【図２０】図２０は、図１９に示す階層バスネットワークを、それと同一視することができる完全グラフ構造のネットワークに置換して構成した例を示す説明図である。
【図２１】図２１は、図２０に示す完全グラフ構造のネットワークにおいて、ＤＨＣＰ等の手段によって全域木を構成した例を示す説明図である。
【図２２】図２２は、レガシーなＥＣＵを含む複数のＥＣＵが接続されるバス型ネットワークによる構成例を示す説明図である。
【図２３】図２３は、許容される通信経路を考慮した上で、図２２に示すネットワーク構造と同一視できるネットワーク構造を示す説明図である。
【図２４】図２４は、図２３に示すバス型ネットワーク構造について、全域木を構成した例を示す説明図である。
【図２５】図２５は、実施形態４のシステム構成例を表すブロック図である。
【図２６】図２６は、実施形態５のシステム構成例を表すブロック図である。
【図２７】図２７は、図２６に示す一般のグラフ構造のネットワークを幅優先探索等で構成した例を示す説明図である。
【図２８】図２８は、図２７においてノードＤが不正ノードであり、これによる偽の情報によって構成された全域木の例を示す説明図である。
【図２９】図２９は、不正ノードであるノードを排除した状態で、再構成された全域木の例である。
【発明を実施するための形態】
【００２１】
実施の形態について詳述する。
【００２２】
〔実施形態１〕＜基本コンセプト＞
図１は、基本的な構成を表すブロック図である。装置（Ｘ）１０は通信路４＿１〜４＿３によって相互に通信可能な複数の装置であるノード（Ａ〜Ｄ）１、２、３＿１〜３＿２を備える。ゲートウェイとして機能するノード（Ａ）１から外部のネットワーク５を介して認証装置７と通信することができる。基本的な実施の形態に係る中継装置及び端末装置は、認証装置７と通信可能な中継装置（ノードＢ）２と端末装置（ノードＣ，Ｄ）３＿１〜３＿２とノードＡ１とが通信路４＿１〜４＿３を介して接続される通信システムにおいて、以下のように構成される。中継装置（ノードＢ）２は、より上位のゲートウェイノードＡ（１）を介して外部ネットワーク５に接続される認証装置７と通信することができる。必ずしもネットワークである必要はなく、通信媒体は任意である。
【００２３】
中継装置（ノードＢ）２、端末装置（ノードＣ，Ｄ）３＿１〜３＿２及びノードＡ１は、それぞれ固有の認証情報を有する。認証装置７は、それぞれの認証情報に基づいて、中継装置（ノードＢ）２、端末装置（ノードＣ，Ｄ）３＿１〜３＿２及びノードＡ１が真正な装置であるか否かを判定する装置認証の機能を備える。認証装置７は、正規の挙動をするデバイスの一覧表、即ち、ホワイトリストを保持している。ここで、固有の認証情報とは、それぞれの装置が真正であることを証明するための情報であり、例えば、固有の識別子（ＩＤ）である。また、各デバイス、即ち、中継装置（ノードＢ）２、端末装置（ノードＣ，Ｄ）３＿１〜３＿２及びノードＡ１には耐タンパ性が確保された状態で固有のＩＤと固有鍵（共有鍵）が書き込まれている。外部の認証装置７には、真正なデバイスのＩＤなどの認証情報がリストアップされている一覧表（ホワイトリスト）を備えておくことにより、認証装置７は受信した認証情報を、そのホワイトリストを使って検証し、対応するデバイスが真正な装置か否かの判定を行なうことができる（装置認証の機能）。
【００２４】
中継装置（ノードＢ）２は、自身の認証情報を認証装置７に送出する。図１に示されるように上位ノード（ノードＡ）１がある場合はその上位ノード（ノードＡ）１からネットワーク５を介して認証装置７に認証情報を送る。その後またはこれと並行して、中継装置（ノードＢ）２は、通信路４＿１〜４＿３に接続される端末装置（ノードＣ，Ｄ）３＿１〜３＿２から認証情報を収集して、上位ノード（ノードＡ）１からネットワーク５を介して認証装置７に送出する。図１に示される上位ノード（ノードＡ）１は、中継装置（ノードＢ）２よりも上位に位置するので、中継装置（ノードＢ）２によって認証情報を収集されるべき他の装置には含まれないが、中継装置（ノードＢ）２よりも下位に別の中継装置が配置されている場合には、これは中継装置（ノードＢ）２によって認証情報を収集されるべき他の装置に含まれる。
【００２５】
認証装置７は受信した認証情報を、ホワイトリストを使って検証し、対応するデバイスが真正な装置か否かの判定を行ない、その結果を中継装置（ノードＢ）２に伝送する。中継装置（ノードＢ）２は、認証装置７から装置認証の結果を受信し、その結果に基づいて自身と不真正と判定された装置との通信を遮断するとともに、端末装置（ノードＣ，Ｄ）３＿１〜３＿２に対して不真正と判定された装置との通信を遮断させるための通信制御情報を送出する。端末装置（ノードＣ，Ｄ）３＿１〜３＿２は、通信制御情報に基づいて、自身と不真正と判定された装置との通信を遮断する。ここで、通信制御情報とは、通信相手のデバイスが真正か否かを判定し、不真正なデバイスとの通信を遮断するための制御情報であり、例えば不正なデバイスのＩＤがリストアップされたブラックリスト（不正ノード情報）であり、或いは逆に真正なデバイスのＩＤがリストアップされたホワイトリスト（認証済みノード情報）であってもよい。
【００２６】
ノード（Ａ）１を１つの中継装置として位置付けても良い。図１及び本実施形態１では、中継装置が必ずしもゲートウェイである必要がないことを明示するために、中継装置として機能するノード（Ｂ）２よりも上位にゲートウェイノードＡ（１）が配置される構成を示す。しかし、図示されるような階層的な構造を前提とするものではない。
【００２７】
これにより、ビザンチン故障型攻撃を行う不正な装置が、他の装置や中継装置２が接続されている通信路４＿１〜４＿３に接続された場合であっても、その不正な装置を当該通信路から排除することができる。また、システム内のデバイスがビザンチン故障的に振る舞うことができなくなるため、以下のような効果が得られる。外部の認証装置７によるホワイトリスト認証を通過したデバイスとしか通信できないので、悪意のあるリダイレクトを行うことはできない。ＩＤなどの認証情報の要求に対して応答がない場合には、認証失敗とみなして接続を切断するため、不正な装置によるデータの中継と不正な装置へのデータの供給が停止され、また、データの改ざんが防止される。データを改ざんすること自体が可能である場合にも、改ざんされたデータを含む通信データはホワイトリスト認証を通過できないので、改ざんされたデータは破棄される。さらに、ホワイトリスト方式のため、不正改造や盗難等の被害にあったことが判明したデバイスを個別に無効化することができる。また、階層化された認証システムとの適合性が高い。認証システムを階層化することによって、秘密情報の分散管理によるリスク低減効果、認証サーバーの負荷分散によるスケーラビリティが得られる。
【００２８】
なお、上述の装置認証に先立って、通信路４＿１〜４＿３によって相互接続されるデバイスどうしは、予め相互にローカルな認証を行った上で接続されている。例えば、中継装置ノード（Ｂ）２は、上位のゲートウェイノードＡ（１）や端末装置（ノードＣ，Ｄ）３＿１〜３＿２との間でローカルな相互認証を行う。これにより、外部認証を行うための通信路内のローカル通信が確立される。
【００２９】
図２は、各デバイス、即ち、中継装置（ノードＢ）２、端末装置（ノードＣ，Ｄ）３＿１〜３＿２及びノードＡ１の構成例と認証装置７による装置認証の動作を示す説明図である。各デバイスには、セキュアマイコン１１が搭載されている。セキュアマイコン１１は、ハードウェアセキュリティモジュール（HSM: Hardware Security Module）１２を内蔵するＭＰＵ（Micro Processor Unit）である。ＭＰＵ１１は、さらにＣＰＵ（Central Processing Unit）１５、ＲＡＭ（Random Access Memory）１６及び外部インターフェース（Ｉ／Ｆ）１７を含み、ＨＳＭ１２とともにバス１８によって相互に接続されている。ＨＳＭ１２は、例えば暗号処理モジュール１３とデバイス固有の識別子（ＩＤ）やデバイス固有鍵１４などの秘密情報を保持する記憶装置を含んで構成され、耐タンパ性が確保されている。耐タンパ性は、種々の公知技術によって確保することができ、例えば、記憶装置を光学的に観察することによってＩＤや固有鍵の内容を読みとることができないように、また、暗号化や復号の処理に必要な時間や消費電流波形が、ＩＤや固有鍵の値に依存しないように構成され、さらには故障注入攻撃に対する耐性を持たせて構成されることができる。ＲＯＭ（Read Only Memory）、割り込み制御回路、ダイレクトメモリアクセスコントローラ、その他、周辺機能モジュールなどをさらに含んで構成されてもよい。また、バス１８は階層化されていてもよい。特に制限されないが、ＭＰＵ１１は、例えば、公知のＣＭＯＳ（Complementary Metal-Oxide-Semiconductor field effect transistor）ＬＳＩ（Large Scale Integrated circuit）の製造技術を用いて、シリコンなどの単一半導体基板上に形成される。
【００３０】
デバイス固有のＩＤとデバイス固有鍵は、認証プロトコルに則って認証装置７との間で共有される識別子と共有鍵（Shared Secret）である。ＩＤは当該デバイスの識別子であり、固有鍵はデバイスと認証装置との間で共有される鍵文字列であって、デバイス毎に固有であり、ＩＤと併せて認証のための秘密情報である。デバイス固有ＩＤとデバイス固有鍵は、例えばＭＰＵ１１を出荷する際に、ＭＰＵ１１の供給元によって当該ＭＰＵ１１に書き込まれる。認証装置７は、例えばＭＰＵ１１の供給元が提供する認証装置であって、デバイス固有鍵に対応する共有鍵を保持しており、デバイス固有鍵を認証することができる。ＭＰＵ１１の供給元は、認証装置７に正規に出荷したＭＰＵ１１に書き込んだ固有ＩＤのリストを真正ＩＤリスト（ホワイトリスト）として保有し、合せて当該固有鍵に対応する共有鍵を保持している。
【００３１】
デバイス固有ＩＤとデバイス固有鍵のうち固有鍵はセキュリティ上極めて重要であり、そのために、暗号化された状態でしか、ＨＳＭ１２の外部に読み出すことができない。ただし、暗号化の方式は任意であり、例えば、公開鍵暗号方式や共通鍵暗号方式など、公知の暗号方式を採用することができる。
【００３２】
デバイス固有のＩＤとデバイス固有鍵は、暗号処理モジュール１３によって暗号化され、ＣＰＵ１５がバス１８を経由して読出し、外部Ｉ／Ｆ１７を介して外部のネットワーク５に送出することができる。ネットワーク５を介して暗号化された固有ＩＤと固有鍵を受信した認証装置７は、自身が持つ共有鍵を使って認証を行い、暗号化された固有ＩＤを復号する。認証装置７は、復号されて平文となったデバイス固有ＩＤを、保持する真正ＩＤリスト（ホワイトリスト）と照合することにより、当該ＩＤを送信したデバイスが真正なＭＰＵか否かを判定することができる。
【００３３】
図３は、複数のメーカーから提供される複数のデバイスを含むシステムの構成例を示す、模式的ブロック図である。後段の実施形態２で詳述するように、装置（Ｘ）１０は例えば自動車であり、通信路４＿１〜４＿５は例えばＣＡＮ（Controller Area Network）などの車載ネットワークであり、各デバイスＡ〜Ｆ（１、３＿１〜３＿５）は例えば電子制御装置（ＥＣＵ: Electronic Control Unit）である。ネットワーク及びそれに接続される装置は、車載ネットワーク（ＣＡＮ）と電子制御装置（ＥＣＵ）で以外のネットワークと装置であってもよく、例えば、医療用のネットワーク及びそれに接続される医療機器、或いは、産業用のネットワーク及びそれに接続される産業機器に変更することができる。また、ネットワークは、有線・無線を問わず種々の形態の通信路であってよく、例えば車載ネットワークの場合には、ＣＡＮ以外にFlex Ray（登録商標）やMOST（Media Oriented Systems Transport）であってもよい。
【００３４】
上述したように、各デバイスに搭載されるセキュアマイコンなどのＭＰＵ１１を提供するメーカーは１社に限られない。即ち図３に例示されるように、装置（Ｘ）１０は、Ｔ社製のゲートウェイデバイスＡ（１）、Ｒ社製のデバイスＢとＣ（３＿１、３＿２）、Ｓ社製のデバイスＤとＥ（３＿３、３＿４）及びＴ社製のデバイスＦ（３＿５）を含んで構成される。また、認証は、搭載されるＭＰＵ１１の提供元の他、デバイスの提供元が認証を行う場合、或いは装置（Ｘ）１０のメーカーが認証を行う場合等、種々の形態が考えられる。そのため、図３に示されるように、各社がそれぞれ認証サーバー（認証装置）７＿１〜７＿３を持つことになる。このような場合には、ネットワーク５内にブローカーサーバー６が配置され、装置（Ｘ）１０からの認証要求を一括して受けた後、各社ごとの認証サーバー７＿１〜７＿３に認証情報を振り分ける。Ｒ社製の認証サーバー７＿１は、Ｒ社製のデバイスに書き込まれた製品ＩＤ（bbbb, cccc）のリストを持ち、Ｒ社製のデバイスの認証を行う。Ｓ社製の認証サーバー７＿２は、Ｓ社製のデバイスに書き込まれた製品ＩＤ（dddd, eeee）のリストを持ち、Ｓ社製のデバイスの認証を行う。Ｔ社製の認証サーバー７＿３は、Ｔ社製のデバイスに書き込まれた製品ＩＤ（aaaa, ffff）のリストを持ち、Ｔ社製のデバイスの認証を行う。
【００３５】
デバイス１、３＿１〜３＿５と認証サーバー７＿１〜７＿３の間の通信についてさらに詳しく説明する。
【００３６】
図４は、デバイス１（例えば１、３＿１〜３＿５又は２）と認証装置７（例えば認証サーバー７＿１〜７＿３）の間の通信についての説明図である。デバイス１は、認証情報として、例えば、所属（organization）、デバイス固有ＩＤ及び認証用の秘密情報（固有鍵）を保持している。所属（organization）は、図３では「ベンダＩＤ」として示されており、デバイスをどの組織の認証装置７で認証すべきかを示す情報である。認証が成功か否かをもって所属組織かどうかを判定するように構成することも可能であり、その場合には、所属（organization）は認証情報から除外することができる。ただし、所属（organization）を利用する方が、ブローカーサーバー６の処理を簡略化することができる点で好適である。デバイス固有ＩＤは、例えば、そのデバイスの供給元が出荷時に書き込むＩＤである。認証用の秘密情報（固有鍵）は、デバイスの供給元の設備によって書き込まれ或いは更新され、または、デバイスの供給元設備との通信によって更新することができる。デバイス１は平文を暗号化した暗号文を認証装置７に送信し、暗号文を受信した認証装置７はこれを復号して平文に戻して検証する。認証装置７からデバイス１への通信も同様である。認証装置７は平文を暗号化した暗号文をデバイス１に送信し、暗号文を受信したデバイス１はこれを復号して平文に戻して検証する。この暗号文は、第三者によっては生成できず、且つ、第三者によっては復号できない。
【００３７】
図１に例示したシステム構成に基づいて、認証情報の収集と認証装置７による認証のフローについてさらに詳しく説明する。
【００３８】
図５は図１に例示されるシステム構成に対応する認証フローの一例を示すシーケンス図であり、図６は図５に例示される認証フローで送受されるメッセージの一例を示す説明図である。上位ノードＡ（１）は、中間ノードＢ（２）に対して認証情報を収集するように要求する（Ｓ１−１）。上位ノードＡ（１）から認証情報収集の要求を受け取った中間ノードＢ（２）は、自身より下位に接続されている各ノード、下位ノードＣとＤ（３＿１と３＿２）に対して、認証情報を収集するように要求する（Ｓ１−２、Ｓ１−３）。下位ノードＣ（３＿１）は自身「Ｃ」に固有の認証情報を中間ノードＢ（２）に応答し（Ｓ１−４）、下位ノードＤ（３＿２）は自身「Ｄ」に固有の認証情報を中間ノードＢ（２）に応答する（Ｓ１−５）。中間ノードＢ（２）は、下位ノードＣとＤ（３＿１と３＿２）からの応答と自ノードの認証情報とを結合して上位ノードＡ（１）に応答する（Ｓ１−６）。
【００３９】
実施形態３において詳述するように、中間ノードＢ（２）の下位にさらに中間ノードを設けて、階層的なネットワークが構成されてもよい。このとき、認証情報収集の要求とそれに対応する応答の深さを限定してもよい。例えば深さを１に限定すると幅優先探索になる。
【００４０】
図７はさらに新たな下位ノードＥ（３＿３）が接続されたときの認証フローの一例を示すシーケンス図であり、図８は図７に例示される認証フローで送受されるメッセージの一例を示す説明図である。図５と図６には２台の下位ノードＣとＤ（３＿１と３＿２）が接続され認証を受けるフローを例示したが、図７と図８ではその後さらに下位ノードＥ（３＿３）が新たに接続された時の認証フローが示される。図７と図８には既に認証されている下位ノードＣとＤ（３＿１と３＿２）は図示が省略され、新たに接続された下位ノードＥ（３＿３）のみが示される。
【００４１】
新たな下位ノードＥ（３＿３）が接続されたことを検出した中間ノードＢ（２）は、当該下位ノードＥ（３＿３）に対して認証情報収集要求を送信する（Ｓ２−１）。下位ノードＥ（３＿３）は自身「Ｅ」に固有の認証情報を中間ノードＢ（２）に応答する（Ｓ２−２）。中間ノードＢ（２）は、Ｅの認証情報を応答として受け取ったのちに、当該認証情報に基づいて下位ノードＥ（３＿３）を認証する要求を上位ノードＡ（１）に送信する（Ｓ２−３）。ここで、中間ノードＢ（２）は、既に自身は認証されているので、「Ｂ」の認証情報を含まず、「Ｅ」の認証要求のみを生成して上位ノードＡ（１）に送信する。Ｅの認証要求は順次上位ノードへリダイレクトされ、認証装置７に到達する（Ｓ２−４）。認証装置７は、自身の保持するホワイトリストを参照してノードＥ（３＿３）が真正な装置か否かを判定し、認証結果を応答する（Ｓ２−５）。応答は順次下位へリダイレクトされ、中間ノードＢ（２）は認証結果を受け取ることができる（Ｓ２−６）。
【００４２】
以上図５〜図８を引用して説明したように、中間ノードＢ（２）は認証装置７から装置認証の結果を受信する（Ｓ２−６）。中間ノードＢ（２）は、その結果に基づいて自身と不真正と判定された装置との通信を遮断するとともに、下位ノードＣ，Ｄ，Ｅ（３＿１〜３＿３）に対して不真正と判定された装置との通信を遮断させるための通信制御情報を送出する。下位ノードＣ，Ｄ，Ｅ（３＿１〜３＿３）は、通信制御情報に基づいて、自身と不真正と判定された装置との通信を遮断する。ここで、通信制御情報は、通信相手のデバイスが真正か否かの判定結果を示し、不真正なデバイスとの通信を遮断するための制御情報であればよく、例えば、不正なデバイスのＩＤがリストアップされた不正ノード情報か、逆に真正なデバイスのＩＤがリストアップされた認証済ノード情報であるとよい。
【００４３】
図９は不正ノード情報を通信制御情報とする場合のフローを示す説明図であり、図１０は認証済ノード情報を通信制御情報とする場合のフローを示す説明図である。なお、図９と図１０には下位ノードとして下位ノードＣ（３−１）のみが示され、他の下位ノードＤ，Ｅ（３＿２〜３＿３）は図示が省略されているが、伝送されるメッセージは同様である。
【００４４】
図９に示されるように、中間ノードＢ（２）は、不正ノード情報を装置認証の結果として認証装置７から受信し（Ｓ４−１）、通信制御情報として下位ノードＣ，Ｄ，Ｅ（３＿１〜３＿３）へ送信することができる（Ｓ４−２）。
【００４５】
図１０に示されるように、中間ノードＢ（２）は、認証済ノード情報を装置認証の結果として認証装置７から受信し（Ｓ５−１）、通信制御情報として下位ノードＣ，Ｄ，Ｅ（３＿１〜３＿３）へ送信することができる（Ｓ５−２）。
【００４６】
図１１は新たな下位ノードＥ（３＿３）が接続されたときの認証フローの別の一例を示すシーケンス図であり、図１２は図１１に例示される認証フローで送受されるメッセージの一例を示す説明図である。図７と図８には、図５と図６に示される２台の下位ノードＣとＤ（３＿１と３＿２）が認証を受けた後に、さらに下位ノードＥ（３＿３）が新たに接続された時の認証フローを示した。図７と図８では新たな下位ノードＥ（３＿３）が接続されたことを中間ノードＢ（２）が検出して認証情報収集要求を送信するフローを示した。一方ここでは、図１１と図１２を引用して、新たに接続された下位ノードＥ（３＿３）が主体的に認証を要求する場合の認証フローについて説明する。
【００４７】
新たに中間ノードＢ（２）に接続された下位ノードＥ（３＿３）は、自身の認証情報に基づいたチケットの取得要求を中間ノードＢ（２）に送信する（Ｓ３−１）。ここで、「チケット」とはノードＥ（３＿３）を認証することができる認証装置にしか生成することができない情報であり、認証装置７はノードＥ（３＿３）の固有ＩＤと鍵を共有していることにより、Ｅのチケットを生成することができる。ノードＥ（３＿３）からチケット取得要求を受け取った中間ノードＢ（２）は、それを上位ノードＡ（１）にリダイレクトする（Ｓ３−２）。この要求は認証装置７までリダイレクトされ（Ｓ３−３）、認証装置７はＥのチケットを生成する。このとき、認証装置７はノードＥ（３＿３）が真正なデバイスである場合にのみ、Ｅのチケットを生成することができる。例えば不真正なデバイスである場合には、認証装置７は真正なノードＥ（３＿３）とは固有ＩＤと鍵を共有していることにより、Ｅのチケットを生成することができるが、当該不真正なデバイスとはＩＤと鍵を共有していないため、対応するチケットを生成することができない。認証装置７で生成されたチケットは、順次下位に向かってリダイレクトされ（Ｓ３−４、Ｓ３−５）、中間ノードＢ（２）はチケットを受け取り、ノードＥ（３＿３）にチケットを受け渡す（Ｓ３−６）。
【００４８】
これにより、端末装置が新たに通信路に接続された場合に、当該新規の端末装置から主体的に、当該通信路から排除されるべき不正な装置についての情報を得ることができる。
【００４９】
以上説明したような、新たに追加された装置が認証要求の主体となる実施の形態については、実施形態４にさらに詳しく説明する。
【００５０】
〔実施形態２〕＜２段階認証＞
図１３は、実施形態２のシステム構成例を表すブロック図である。
【００５１】
自動車などの装置（Ｘ）１０には複数の電子制御装置（ＥＣＵ）即ちゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２が搭載されており、それらが装置内部のＣＡＮなどのネットワーク４＿１〜４＿３によって階層的に接続されている。ゲートウェイＥＣＵ１は、外部の認証装置７と外部ネットワーク５によって通信することができる。外部ネットワーク５は有線・無線を問わない任意の通信ネットワークである。ゲートウェイＥＣＵ１は外部ネットワーク５上に存在する認証装置７に対して、各デバイス（ゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１、ＥＣＵ（Ｃ）３＿２）の固有ＩＤがホワイトリストに含まれるかどうかを問い合わせることができる。
【００５２】
装置（Ｘ）１０が起動した後、ゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１、ＥＣＵ（Ｃ）３＿２は、それぞれの間で相互に認証し接続を確立する。これはローカルな相互接続認証である。これと相前後して、ゲートウェイＥＣＵ１は、自身の認証情報であるＩＤと固有鍵を暗号化した状態で認証装置７に送信し、認証結果を受け取る。
【００５３】
その後、ゲートウェイＥＣＵ１は、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２と通信を開始するために、各ＥＣＵに対して固有ＩＤの送付を要求し、認証情報を取得する。ここで、認証情報とは、例えばそれぞれのＥＣＵに固有のＩＤと固有鍵であり、それぞれのＥＣＵによって暗号化された状態で取得する。ゲートウェイＥＣＵ１は、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２から取得した認証情報を、ネットワーク５を経由して認証装置７に送信して認証を要求する。認証要求を受け取った認証装置７は、受信した固有鍵と自身がそれぞれのＥＣＵに対応して持つ共有鍵とによる認証プロトコルを実行して各ＥＣＵを認証し、合せてＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２のＩＤがホワイトリストに含まれるかどうかを確認して、その認証結果をゲートウェイＥＣＵ１に返す。
【００５４】
ここで、ＥＣＵ（Ｂ）３＿１については外部認証に成功し、ＥＣＵ（Ｃ）３＿２については外部認証に失敗したとする。即ち、ＥＣＵ（Ｂ）３＿１の固有ＩＤは認証装置７の保持するホワイトリストに存在したが、ＥＣＵ（Ｃ）３＿２の固有ＩＤはホワイトリストに存在しなかったものとする。その認証結果に基づいて、ゲートウェイＥＣＵ１は、外部認証に成功したＥＣＵ（Ｂ）３＿１との通信を開始し、外部認証に失敗したＥＣＵ（Ｃ）３＿２との通信を切断し、合せて、ＥＣＵ（Ｂ）３＿１に対してＥＣＵ（Ｃ）３＿２が認証に失敗したことを通知する。ＥＣＵ（Ｂ）３＿１はその情報を受け取り、ＥＣＵ（Ｃ）３＿２との通信を切断する。
【００５５】
ここで、ローカルな相互接続認証がされた状態では、通信路４＿１〜４＿３を介して、外部認証に必要最低限のメッセージの送受のみを許容する状態とし、外部認証が成功した後に、その通信路に限って具体的な制御情報の送受を許容する状態に変更するとよい。一方、外部認証に失敗したＥＣＵとの通信路の切断は、物理層で信号を遮断してもよいし、より上位の論理層で信号を破棄するなどの方法でもよい。上述の例では通信路４＿２と４＿３が切断される。
【００５６】
以上のように、装置（Ｘ）１０において、外部の認証装置７を利用して２段階認証を行うことにより、装置（Ｘ）１０内部だけの情報では排除できなかった不正なＥＣＵ（上述の例ではＥＣＵ（Ｃ）３＿２）を排除し、システムの堅牢性を確保することができる。ただし、装置（Ｘ）１０が自動車で、各ＥＣＵが車載の電子制御装置であるような場合、一律に通信を切断すると走行不能となることも考えられるため、ユーザー（自動車の運転者）に対して、不正と判断されたＥＣＵとの通信を切断するか否かを問い合わせ、その指示によっては不正と判断されたＥＣＵとの通信を維持するように構成しても良い。
【００５７】
＜共有バス型接続＞
図１４は、実施形態２の別のシステム構成例を表すブロック図である。装置（Ｘ）１０内のネットワークが上述（図１３）のようなスター型接続ではなく、共有バス型接続で構成されている。
【００５８】
一般に、共有バス型接続ネットワークにおいては、同一バス上に接続されたデバイスには個別のアドレスが割り振られ、それに基づいて情報の送受信が行われる。ゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２には、アドレス12.34.56.1、12.34.56.2及び12.34.56.3が割り付けられているものとして説明する。共有バス型接続ネットワークにおける通信では、このアドレスが利用され、宛先アドレスと送信元アドレスが、ペイロードである送信データに付与されたメッセージ（パケット）がバスに送出される。
【００５９】
図１５は、共有バス型接続ネットワークにおける通信パケットの構成例を示す説明図である。ＥＣＵ（Ｂ）３＿１からＥＣＵ（Ｃ）３＿２を宛先とするパケットが例示される。宛先としてＥＣＵ（Ｃ）３＿２のアドレス12.34.56.3が、送信元としてＥＣＵ（Ｂ）３＿１のアドレス12.34.56.2が、ペイロードである送信データに付与されている。
【００６０】
このパケットがバス４に送出されたときには、ゲートウェイＥＣＵ１は、パケットに付される宛先の12.34.56.3が自身のアドレス12.34.56.1に一致しないので受信しない。ＥＣＵ（Ｃ）３＿２は宛先が自身のアドレス12.34.56.3に一致するのでこのパケットを受信する。したがって、宛先が12.34.56.3で送信元が12.34.56.2であるような通信は、図１３に示される通信路４＿３をＥＣＵ（Ｂ）３＿１からＥＣＵ（Ｃ）３＿２に向かって送信される通信と同一視することができる。
【００６１】
逆に、ＥＣＵ（Ｂ）３＿１のアドレス12.34.56.2を宛先とし、ＥＣＵ（Ｃ）３＿２のアドレス12.34.56.3を送信元とするパケットは、ＥＣＵ（Ｃ）３＿２からＥＣＵ（Ｂ）３＿１への通信である。したがって、宛先が12.34.56.2で送信元が12.34.56.3であるような通信は、図１３に示される通信路４＿３をＥＣＵ（Ｃ）３＿２からＥＣＵ（Ｂ）３＿１に向かって送信される通信と同一視することができる。
【００６２】
このように、バス上におけるＥＣＵ（Ｂ）３＿１とＥＣＵ（Ｃ）３＿２の間の通信を１対１のスター型接続の通信路４＿３上での通信とみなすことができる。
【００６３】
同様に、宛先12.34.56.1/送信元12.34.56.2および宛先12.34.56.2/送信元12.34.56.1である通信は、ゲートウェイＥＣＵ１とＥＣＵ（Ｂ）３＿１間の、１対１のスター型接続の通信路４＿１上での通信とみなすことができる。また、宛先12.34.56.1/送信元12.34.56.3および宛先12.34.56.3/送信元12.34.56.1である通信は、ゲートウェイＥＣＵ１とＥＣＵ（Ｃ）３＿２間の、１対１のスター型接続の通信路４＿２上での通信とみなすことができる。
【００６４】
したがって、ゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２からなるバス型ネットワーク（図１４）は、個々のＥＣＵがスター型接続されたネットワーク（図１３）に帰着して議論することができる。
【００６５】
バスに接続されるＥＣＵの数が増えても、同様の議論ができる。
【００６６】
図１６は、装置（Ｘ）１０に搭載されるバス型ネットワークに接続されるＥＣＵの数が５個に増えたときのシステム構成例を表すブロック図である。バス４には、ゲートウェイＥＣＵ１と、ＥＣＵ（Ｂ１）３＿１〜ＥＣＵ（Ｂ４）３＿４が接続されている。
【００６７】
図１７は、図１６に対応するＥＣＵの数が５個のスター型接続ネットワークが、装置（Ｘ）１０に搭載される場合のシステム構成例を表すブロック図である。送信元と宛先の組み合わせの数だけ配線のあるスター型接続ネットワークとみなすことができる。この場合はネットワークの構造が頂点数５の完全グラフになる。
【００６８】
このとき、ブロードキャスト通信もそれぞれのネットワークで実現することができ、２つのネットワークを同一視して議論することができる。図１６に示されるバス型ネットワークにおいて、ゲートウェイＥＣＵ１と、ＥＣＵ（Ｂ１）３＿１〜ＥＣＵ（Ｂ４）３＿４のアドレスをそれぞれ、12.34.56.1〜12.34.56.5とする。このとき、１つのＥＣＵ例えばＥＣＵ（Ｂ１）３＿１からゲートウェイＥＣＵ１と他のＥＣＵ（Ｂ２）３＿２〜ＥＣＵ（Ｂ４）３＿４へのブロードキャスト通信は、宛先として12.34.56.*のように最下位がマスクされたアドレス値を使用することによって実現される。一方、図１７に示されるスター型ネットワークにおいては、通信路４＿１０、４＿１２、４＿１３及び４＿１４への同一データの同時送信によって、ブロードキャスト通信が実現される。
【００６９】
したがって、バスに接続されるＥＣＵの数が増えても、同等のスター型ネットワークを構成することができ、バス型ネットワークと同様の議論ができる。
【００７０】
即ち、本実施形態２では、図１３と図１４に示したように、１個のゲートウェイＥＣＵと他の２個のＥＣＵを備える装置Ｘについて説明したが、ＥＣＵの数及びネットワーク構造は任意の構成に変更することができる。
【００７１】
〔実施形態３〕＜階層的なネットワーク＞
装置Ｘ内の通信路４は、ＥＣＵの数及びネットワーク構造を任意の構成に変更することができることを、上記の実施形態２で説明したが、通信路４を構成するネットワークは階層化されてもよい。ＥＣＵのネットワークが多段のツリー構造をなしていても、階層ごとに認証し、信頼できるノードを増やしていくことでシステム全体を認証できる。
【００７２】
図１８は、実施形態３のシステム構成例を表すブロック図である。
【００７３】
自動車などの装置（Ｙ）１０には、外部の認証装置７と外部ネットワーク５によって通信することができるゲートウェイＥＣＵ１を含む複数のＥＣＵが搭載されており、それらが装置内部のＣＡＮなどのネットワーク４＿１〜４＿８によって階層的に接続されている。ゲートウェイＥＣＵ１と通信路４＿１〜４＿４によってそれぞれ直接接続されたＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３が、第１階層である。このうちＥＣＵ（Ｂ３）２＿１は第２階層への中継装置（中間ノード）である。中継ＥＣＵ（Ｂ３）２＿１と通信路４＿５〜４＿７によってそれぞれ直接接続されたＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５が、第２階層である。このうちＥＣＵ（Ｃ２）２＿２は第３階層への中継装置（中間ノード）である。中継ＥＣＵ（Ｃ２）２＿２と通信路４＿８によって直接接続されたＥＣＵ（Ｄ）３＿６が、第３階層である。ゲートウェイＥＣＵ１と直接接続されていないＥＣＵ（Ｃ１〜Ｃ３）３＿４、２＿２、３＿５とＥＣＵ（Ｄ）３＿６は各自が接続された中継ＥＣＵ（Ｂ３）２＿１または中継ＥＣＵ（Ｃ２）２＿２を経由してゲートウェイＥＣＵ１や他の階層のＥＣＵと通信する。
【００７４】
装置（Ｙ）１０が起動した後、ゲートウェイＥＣＵ１を含む上記複数のＥＣＵは、それぞれの間でローカルな相互接続認証を行い、接続を確立する。これと相前後して、ゲートウェイＥＣＵ１は、自身の認証情報であるＩＤと固有鍵を暗号化した状態で認証装置７に送信し、認証結果を受け取る。
【００７５】
その後、ゲートウェイＥＣＵ１を経由して第１階層の各ＥＣＵについて外部認証を受けるための処理を実行する。ゲートウェイＥＣＵ１は、第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３から認証情報を収集し、認証装置７に送信して認証を要求する。認証装置７はホワイトリストによる認証を行い、認証結果をゲートウェイＥＣＵ１に返送する。ゲートウェイＥＣＵ１は、第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３のうち、外部認証に成功した各ＥＣＵと通信を開始する。ローカルな相互認証後の通信は、外部認証のためのメッセージの送受に限定されるが、この段階での通信ではその限定が解除される。
【００７６】
次に、外部認証された中継ＥＣＵ（Ｂ３）２＿１を経由して第２階層の各ＥＣＵについて外部認証を受けるための処理を実行する。ただし、中継ＥＣＵ（Ｂ３）２＿１について外部認証に失敗した場合には、以降の認証処理は実行されない。中継ＥＣＵ（Ｂ３）２＿１は、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５から認証情報を収集し、ゲートウェイＥＣＵ１に送信して認証を要求する。認証要求を受け取ったゲートウェイＥＣＵ１は、それを認証装置７に送信して認証を要求する。認証装置７はホワイトリストによる認証を行い、認証結果をゲートウェイＥＣＵ１に返送する。結果を受け取ったゲートウェイＥＣＵ１は、それを中継ＥＣＵ（Ｂ３）２＿１に転送する（リダイレクト）。中継ＥＣＵ（Ｂ３）２＿１は、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５のうち、外部認証に成功した各ＥＣＵと通信を開始する。
【００７７】
次に、外部認証された中継ＥＣＵ（Ｃ２）２＿２を経由して第３階層の各ＥＣＵについて外部認証を受けるための処理を実行する。ただし、中継ＥＣＵ（Ｃ２）２＿２について外部認証に失敗した場合には、以降の認証処理は実行されない。中継ＥＣＵ（Ｃ２）２＿２は、第３階層のＥＣＵ（Ｄ）３＿６から認証情報を収集し、中継ＥＣＵ（Ｂ３）２＿１に送信して認証を要求する。認証要求を受け取ったＥＣＵ（Ｂ３）２＿１はゲートウェイＥＣＵ１に要求をリダイレクトする。中継ＥＣＵ（Ｂ３）２＿１から要求を受け取ったゲートウェイＥＣＵ１は、それを認証装置７に送信して認証を要求する。認証装置７はホワイトリストによる認証を行い、認証結果をゲートウェイＥＣＵ１に返送する。結果を受け取ったゲートウェイＥＣＵ１は、それを中継ＥＣＵ（Ｂ３）２＿１にリダイレクトする。リダイレクトされた認証結果を受け取った中継ＥＣＵ（Ｂ３）２＿１は、それを中継ＥＣＵ（Ｃ２）２＿２にさらにリダイレクトする。第３階層のＥＣＵ（Ｄ）３＿６が外部認証に成功したときには、中継ＥＣＵ（Ｃ２）２＿２はそのＥＣＵ（Ｄ）３＿６と通信を開始する。
【００７８】
以上のように、ＥＣＵのネットワークが多段のツリー構造をなしていても、階層ごとに認証し、信頼できるノードを増やしていくことでシステム全体を認証できる。
【００７９】
外部認証に失敗した場合には、ゲートウェイＥＣＵ１、中継ＥＣＵ（Ｂ３）２＿１または中継ＥＣＵ（Ｃ２）２＿２は、認証に失敗したＥＣＵとの通信を切断する。第１階層の各ＥＣＵの外部認証の結果、ＥＣＵ（Ｂ１）３＿１についての認証が失敗した場合には、ゲートウェイＥＣＵ１はＥＣＵ（Ｂ１）３＿１との通信を切断する。第２階層の各ＥＣＵの外部認証の結果、ＥＣＵ（Ｃ１）３＿４についての認証が失敗した場合には、ゲートウェイＥＣＵ１はその結果を中継ＥＣＵ（Ｂ３）２＿１にリダイレクトし、中継ＥＣＵ（Ｂ３）２＿１はＥＣＵ（Ｃ１）３＿４との通信を切断する。第２階層の各ＥＣＵの外部認証の結果、中継ＥＣＵ（Ｃ２）２＿２についての認証が失敗した場合には、ゲートウェイＥＣＵ１はその結果を中継ＥＣＵ（Ｂ３）２＿１にリダイレクトし、中継ＥＣＵ（Ｂ３）２＿１は中継ＥＣＵ（Ｃ２）２＿２との通信を切断する。その結果、第３階層のＥＣＵ（Ｄ）３＿６についての外部認証は実行されない。
【００８０】
以上は、外部認証を受けるための処理を、階層ごとに順次実行する実施の形態について説明したが、すべてまたは一部を一括して実行することもできる。
【００８１】
装置（Ｙ）１０が起動した後、ゲートウェイＥＣＵ１を含む上記複数のＥＣＵは、それぞれの間でローカルな相互接続認証を行い、接続を確立する。これと相前後して、ゲートウェイＥＣＵ１は、自身の認証情報であるＩＤと固有鍵を暗号化した状態で認証装置７に送信し、認証結果を受け取る。
【００８２】
まず、ゲートウェイＥＣＵ１は、第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３に対して、認証情報の収集を要求する。中継ＥＣＵ（Ｂ３）２＿１は、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５に対して、認証情報の収集を要求する。中継ＥＣＵ（Ｃ２）２＿２は、第３階層のＥＣＵ（Ｄ）３＿６に認証情報の収集を要求する。
【００８３】
第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２及びＥＣＵ（Ｂ４）３＿３は、自身の認証情報をゲートウェイＥＣＵ１に応答として返す。第２階層のＥＣＵ（Ｃ１）３＿４及びＥＣＵ（Ｃ３）３＿５は、自身の認証情報を中継ＥＣＵ（Ｂ３）２＿１に応答として返す。第３階層のＥＣＵ（Ｄ）３＿６は、自身の認証情報を中継ＥＣＵ（Ｃ２）２＿２に応答として返す。
【００８４】
ゲートウェイＥＣＵ１は、ＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２及びＥＣＵ（Ｂ４）３＿３から受け取った認証情報を記憶し、中継ＥＣＵ（Ｂ３）２＿１からの応答を待つ。中継ＥＣＵ（Ｂ３）２＿１は、ＥＣＵ（Ｃ１）３＿４及びＥＣＵ（Ｃ３）３＿５から受け取った認証情報を記憶し、中継ＥＣＵ（Ｃ２）２＿２からの応答を待つ。
【００８５】
中継ＥＣＵ（Ｃ２）２＿２は、ＥＣＵ（Ｄ）３＿６から受け取った認証情報と、自身の認証情報とを合わせて中継ＥＣＵ（Ｂ３）２＿１に応答として返す。中継ＥＣＵ（Ｂ３）２＿１は、中継ＥＣＵ（Ｃ２）２＿２から受け取ったＥＣＵ（Ｄ）３＿６と中継ＥＣＵ（Ｃ２）２＿２の認証情報と、記憶しているＥＣＵ（Ｃ１）３＿４及びＥＣＵ（Ｃ３）３＿５から受け取った認証情報と、自身の認証情報とを合わせて、ゲートウェイＥＣＵ１に応答として返す。ゲートウェイＥＣＵ１は、中継ＥＣＵ（Ｂ３）２＿１から受け取ったＥＣＵ（Ｄ）３＿６、ＥＣＵ（Ｃ２）２＿２、ＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ３）３＿５及びＥＣＵ（Ｂ３）２＿１の認証情報と、記憶しているＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２及びＥＣＵ（Ｂ４）３＿３の認証情報と、自身の認証情報とを合わせて、認証装置７に認証要求を送信する。
【００８６】
認証装置７は受け取った認証情報についてそれぞれ認証を実行し、認証結果をゲートウェイＥＣＵ１に返す。ゲートウェイＥＣＵ１は外部認証結果に基づき、認証済ノード情報を第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３に通知する。中継ＥＣＵ（Ｂ３）２＿１は、ゲートウェイＥＣＵ１から受け取った認証済ノード情報を、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５にリダイレクトする。中継ＥＣＵ（Ｃ２）２＿２は、中継ＥＣＵ（Ｂ３）２＿１から受け取った認証済ノード情報を、第３階層のＥＣＵ（Ｄ）３＿６にリダイレクトする。ここで、認証済ノード情報に代えて不正ノード情報を送受するように変更してもよい。
【００８７】
以上で装置（Ｙ）１０全体の外部認証が完了する。
【００８８】
ここで説明した認証方法において、不正ノード（不真正なＥＣＵ）が混入していた場合の動作について述べる。一例として、中継ＥＣＵ（Ｃ２）２＿２が不正ノード（不真正なＥＣＵ）であったとする。認証情報の収集要求と応答は、上述の説明と同様であり、ゲートウェイＥＣＵ１は、ＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１、ＥＣＵ（Ｂ４）３＿３、ＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２、ＥＣＵ（Ｃ３）３＿５及びＥＣＵ（Ｄ）３＿６の認証情報と、自身の認証情報とを合わせて、認証装置７に認証要求を送信する。認証装置７は受け取った認証情報についてそれぞれ認証を実行し、認証結果をゲートウェイＥＣＵ１に返す。この場合、認証結果には、ＥＣＵ（Ｃ２）２＿２については不正なデバイスであるため認証に失敗した旨の結果であり、他のＥＣＵについては認証に成功した旨の結果が含まれる。
【００８９】
認証装置７から認証結果を受け取ったゲートウェイＥＣＵ１は、その認証結果を参照して、第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３のうち認証が成功しているＥＣＵに対して、不正ノード情報を送信する。この例では、第１階層の各ＥＣＵは認証に成功しているので、ゲートウェイＥＣＵ１は第１階層の全てのＥＣＵに不正ノード情報を送信する。中継ＥＣＵ（Ｂ３）２＿１は、ゲートウェイＥＣＵ１から受け取った不正ノード情報を参照して、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５のうち認証が成功しているＥＣＵに対して、その不正ノード情報を送信する。この例では、ＥＣＵ（Ｃ１）３＿４とＥＣＵ（Ｃ３）３＿５は認証に成功しているので、中継ＥＣＵ（Ｂ３）２＿１はＥＣＵ（Ｃ１）３＿４とＥＣＵ（Ｃ３）３＿５に不正ノード情報を送信するが、中継ＥＣＵ（Ｃ２）２＿２は認証に失敗しているので、中継ＥＣＵ（Ｂ３）２＿１は中継ＥＣＵ（Ｃ２）２＿２との通信を切断する。その結果、中継ＥＣＵ（Ｃ２）２＿２よりも下位のＥＣＵ（Ｄ）３＿６に対しては不正ノード情報が送信されず、またＥＣＵ（Ｄ）３＿６は真正か不真正かに関わらず他のＥＣＵと通信することができない。
【００９０】
続いて、ゲートウェイＥＣＵ１は、認証済ノード情報を第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３に通知する。ゲートウェイＥＣＵ１から認証済みノード情報を受け取った中継ＥＣＵ（Ｂ３）２＿１は、不正ノードとして通知されたＥＣＵ（Ｃ２）２＿２を除くＥＣＵ（Ｃ１）３＿４とＥＣＵ（Ｃ３）３＿５に認証済ノード情報をリダイレクトする。このとき認証済ノード情報にはＥＣＵ（Ｄ）３＿６が含まれているが、ＥＣＵ（Ｄ）３＿６とは通信できないため、個々のＥＣＵは不必要と判断すればＥＣＵ（Ｄ）３＿６についての情報は破棄してもよい。
【００９１】
以上のように、中継ＥＣＵ（Ｃ２）２＿２の外部認証（ホワイトリストによる認証）が失敗した場合は、中継ＥＣＵ（Ｃ２）２＿２が正規のデバイスではないことを他のデバイスに通知し、通信を切断させる。さらにＥＣＵ（Ｃ２）２＿２を経由した通信は安全性を保証できないため、その下位に接続されるＥＣＵ（Ｄ）３＿６との通信も行わない。ただし、装置（Ｙ）１０が自動車で、各ＥＣＵが車載の電子制御装置であるような場合、一律に通信を切断すると走行不能となることも考えられるため、ユーザー（自動車の運転者）に対して、不正と判断されたＥＣＵとの通信を切断するか否かを問い合わせ、その指示によっては不正と判断されたＥＣＵとの通信を維持するように構成しても良い。
【００９２】
以上説明した通り、デバイス（ＥＣＵ）間の通信に複数のデバイスを経由する必要がある場合においても、通信の安全性を段階的に確保していくことにより、システム全体の安全性を保証できる。不正なデバイスがシステムに混入していた場合でも、その影響を当該不正デバイスからのみアクセスできる下位領域に属するデバイスに限局できる。
【００９３】
さらに、図１８に示した階層的なネットワークを実現する、階層バスネットワークと全域木によるツリー型構造との対応関係について説明する。
【００９４】
図１９は、図１８に示す階層的なネットワークを階層バスネットワークで構成した例を示す説明図である。図１８と同様に、装置（Ｙ）１０には、外部の認証装置７と外部ネットワーク５によって通信することができるゲートウェイＥＣＵ１を含む複数のＥＣＵが搭載されており、それらが装置内部の階層バスネットワークを構成するバス４＿２１と４＿２２及び１：１の通信路４＿８によって階層的に接続されている。バス４＿２１は、ゲートウェイＥＣＵ１と第１階層のＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３とを相互に接続する。このとき、ＥＣＵ（Ｂ３）２＿１は第２階層への中継装置（中間ノード）である。バス４＿２２は、中継ＥＣＵ（Ｂ３）２＿１と第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５とを相互に接続する。このとき、ＥＣＵ（Ｃ２）２＿２はさらに下位階層への中継装置（中間ノード）である。中継ＥＣＵ（Ｃ２）２＿２とＥＣＵ（Ｄ）３＿６とは１：１の通信路４＿８によって直接接続されている、階層バスネットワークの第３階層である。
【００９５】
図２０は、図１９に示す階層バスネットワークを、それと同一視することができる完全グラフ構造のネットワークに置換して構成した例を示す説明図である。図１９の第１階層のバス４＿２１は、通信路４＿１〜４＿４と４＿１０〜４＿１５による完全グラフ構造のネットワークに置換される。また図１９の第２階層のバス４＿２２は、通信路４＿５〜４＿７と４＿１６〜４＿１８による完全グラフ構造のネットワークに置換される。このように、ネットワーク全体を、複数の完全グラフが中継ＥＣＵで連結された構造とみなすことができる。図に示す例の場合、バス４＿２１は頂点数５の完全グラフ、バス４＿２２は頂点数４の完全グラフと同一視でき、中継ＥＣＵ（Ｂ３）２＿１を節点として連結されている。
【００９６】
また、バス型ネットワークにおいてＤＨＣＰ（Dynamic Host Configuration Protocol）等の手段でゲートウェイを発見する動作は、グラフの全域木（spanning tree）を構成することと等価となる。全域木を構成する手段はＤＨＣＰ以外にも幅優先探索、深さ優先探索等、システムに応じた方法を選択してよい。構成が固定されたシステムにおいては、ネットワークの構造についての情報をあらかじめ各ＥＣＵに記憶させておくことで、より効率的に全域木を構成できる。
【００９７】
図２１は、図２０に示す完全グラフ構造のネットワークにおいて、ＤＨＣＰ等の手段によって全域木を構成した例を示す説明図である。第１階層は、ゲートウェイＥＣＵ１と、ＥＣＵ（Ｂ１）３＿１、ＥＣＵ（Ｂ２）３＿２、ＥＣＵ（Ｂ３）２＿１及びＥＣＵ（Ｂ４）３＿３とをそれぞれ接続する通信路４＿１〜４＿４（実線）によるツリー構造に帰着される。第２階層は、中継ＥＣＵ（Ｂ３）２＿１と、第２階層のＥＣＵ（Ｃ１）３＿４、ＥＣＵ（Ｃ２）２＿２及びＥＣＵ（Ｃ３）３＿５とをそれぞれ接続する通信路４＿５〜４＿７（実線）によるツリー構造に帰着される。このように、全域木を使うことで、階層バス構造ネットワークにおける外部認証の手順もツリー型構造での認証に帰着できる。ビザンチン故障型攻撃によって誤った全域木が構成されてしまう問題については、仮説保証推論によって安全性を担保することができる。
【００９８】
次に、特定のＥＣＵとしか通信できないレガシーなＥＣＵがバス上に接続されている場合について述べる。
【００９９】
図２２は、レガシーなＥＣＵを含む複数のＥＣＵが接続されるバス型ネットワークによる構成例を示す説明図である。説明を簡略化するために、バスは１階層のみとし、バス４にゲートウェイＥＣＵ１とＥＣＵ（Ｂ）３＿１とＥＣＵ（Ｃ）３＿２とレガシーなＥＣＵ（Ｄ）３＿３が接続されている。レガシーＥＣＵ（Ｄ）３＿３はバス４に接続されているが、ＥＣＵ（Ｃ）３＿２とのみ通信でき、他のＥＣＵと直接通信することはできないものとする。
【０１００】
図２３は、許容される通信の経路を考慮した上で、図２２に示すネットワーク構造と同一視できるネットワーク構造を示す説明図である。この場合のネットワーク構造は、ゲートウェイＥＣＵ１、ＥＣＵ（Ｂ）３＿１及びＥＣＵ（Ｃ）３＿２の間には通信路４＿１〜４＿３が張られ、レガシーＥＣＵ（Ｄ）３＿３はＥＣＵ（Ｃ）３＿２と間のみに、通信路４＿４が張られるような構成と同一視することができる。
【０１０１】
この場合について全域木を構成すると、図２４のようなツリー構造になる。バスが階層化されている場合についても同様である。
【０１０２】
このように、特定のノードとのみ通信が可能なようなレガシーなノードをバスに含む場合にも、全域木を使うことで、バス構造ネットワークにおける外部認証の手順もツリー型構造での認証に帰着できる。
【０１０３】
〔実施形態４〕＜端末からのチケット要求＞
本実施形態４では、既に外部認証された複数のＥＣＵを備えた装置に、さらに新たな未認証のＥＣＵが追加された場合の外部認証について説明する。
【０１０４】
図２５は、実施形態４のシステム構成例を表すブロック図である。
【０１０５】
自動車などの装置（Ｚ）１０には、外部の認証装置７と外部ネットワーク５によって通信することができるゲートウェイＥＣＵ１を含む複数のＥＣＵが搭載されており、それらが装置内部のＣＡＮなどのネットワーク４＿１〜４＿２によって階層的に接続されている。中継ＥＣＵ（Ｂ）２＿１とＥＣＵ（Ｃ）３＿１及びＥＣＵ（Ｄ）３＿２とはバス４＿１で接続されており、これらの外部認証は既に完了しているものとする。これに対して、バス４＿２を介して未認証のＥＣＵ（Ｅ）３＿３が新たに接続されたものとして説明する。
【０１０６】
ＥＣＵ（Ｅ）３＿３は、ネットワーク５と直接通信できない。また、装置（Ｚ）１０に接続された時点では自身と直接接続されているＥＣＵ（Ｃ）３＿１及びＥＣＵ（Ｄ）３＿２、さらにそれらを経由して接続された中継ＥＣＵ（Ｂ）２＿１やその上層にあるゲートウェイＥＣＵ１の正当性についての情報を持たない。この状態では、不正ノード情報及び認証済ノード情報について、ＥＣＵ（Ｅ）３＿３に接続されているＥＣＵ（Ｃ）３＿１とＥＣＵ（Ｄ）３＿２のそれぞれから、相互に矛盾した通知を送られたとすると、ＥＣＵ（Ｅ）３＿３は事前に信頼すべき情報を与えられない限り、どちらからの通知を信用すべきか判定することができない。
【０１０７】
今、ゲートウェイＥＣＵ１、中継ＥＣＵ（Ｂ）２＿１及びＥＣＵ（Ｃ）３＿１は外部認証に成功しており、ＥＣＵ（Ｄ）３＿２は外部認証に失敗しているものとする。
【０１０８】
ＥＣＵ（Ｅ）３＿３は、動作を開始した後、自身と直接接続されたＥＣＵ（Ｃ）３＿１及びＥＣＵ（Ｄ）３＿２の両方に対してチケットを要求する。ここでチケットとは、ＥＣＵ（Ｅ）３＿３の固有ＩＤと固有鍵などの認証情報を共有している認証装置にしか生成することができない情報である。当該チケットにはＥＣＵ（Ｅ）３＿３の供給元の装置でしか生成できない暗号文が含まれており、ＥＣＵ（Ｅ）３＿３はそれを復号して検証することで、当該チケットが確かに外部ネットワークを通して正規に送られてきたものであると確認することができる。
【０１０９】
ＥＣＵ（Ｃ）３＿１に送られたチケット取得要求は、中継ＥＣＵ（Ｂ）２＿１にリダイレクトされ、さらにゲートウェイＥＣＵ１にリダイレクトされ、ゲートウェイＥＣＵ１からネットワーク５を通して認証装置７に送信される。認証装置７は、自身が持つＥＣＵ（Ｅ）３＿３の認証情報に基づいてＥＣＵ（Ｅ）３＿３のチケットを生成する。認証装置７がチケットを生成することができない場合、ＥＣＵ（Ｅ）３＿３の認証情報に基づいてＥＣＵ（Ｅ）３＿３の供給元認証装置にチケット取得要求を送信し、当該供給元認証装置においてＥＣＵ（Ｅ）３＿３のチケットが生成され、認証装置７に返送されてもよい。
【０１１０】
一方、ＥＣＵ（Ｄ）３＿２は外部認証に失敗しているので、中継ＥＣＵ（Ｂ）２＿１により通信を切断されているため、チケット取得要求を中継ＥＣＵ（Ｂ）２＿１を始めとする上位ノードにリダイレクトすることができない。
【０１１１】
認証装置７またはＥＣＵ（Ｅ）３＿３の供給元認証装置で生成されたチケットは、認証装置７からネットワーク５を介してゲートウェイＥＣＵ１に送信され、ゲートウェイＥＣＵ１から中継ＥＣＵ（Ｂ）２＿１にリダイレクトされ、さらにＥＣＵ（Ｃ）３＿１にリダイレクトされる。ＥＣＵ（Ｄ）３＿２への通信は切断されているので、中継ＥＣＵ（Ｂ）２＿１からＥＣＵ（Ｄ）３＿２へは送信されない。その結果、チケットはＥＣＵ（Ｃ）３＿１からＥＣＵ（Ｅ）３＿３に返送され、ＥＣＵ（Ｄ）３＿２からは返送されない。
【０１１２】
ＥＣＵ（Ｅ）３＿３は、チケットを復号して検証することで、当該チケットが確かに外部ネットワークを通して正規に送られてきたものである事を確認する。ＥＣＵ（Ｅ）３＿３は、チケット取得要求を送信したＥＣＵ（Ｃ）３＿１とＥＣＵ（Ｄ）３＿２のうち、チケットを返送してきたＥＣＵ（Ｃ）３＿１を真正なデバイスと認め、通信を確立する一方、チケットを返送してこないＥＣＵ（Ｄ）３＿２を不真正なデバイスと判断して通信を切断する。ただし、装置（Ｚ）１０が自動車で、各ＥＣＵが車載の電子制御装置であるような場合、一律に通信を切断すると走行不能となることも考えられるため、ユーザー（自動車の運転者）に対して、不正と判断されたＥＣＵとの通信を切断するか否かを問い合わせ、その指示によっては不正と判断されたＥＣＵとの通信を維持するように構成しても良い。
【０１１３】
これにより、デバイス（ＥＣＵ（Ｅ）３＿３）がシステムの外部と直接通信できない状態であっても、デバイス自身が接続されたデバイスおよびシステムの正当性を検証することができる。
【０１１４】
〔実施形態５〕＜分散ハッシュ＞
本実施形態５では、装置Ｖ（１０）が相互認証機能を持たないレガシーなＰ２Ｐネットワークを含む通信路を備える実施の形態について説明する。
【０１１５】
図２６は、実施形態５のシステム構成例を表すブロック図である。
【０１１６】
装置Ｖ（１０）には、外部の認証装置７と外部ネットワーク５によって通信することができるゲートウェイノードＡ（１）と中継ノードＢ（２）とその他のノードＣ〜Ｉ（３＿１〜３＿７）が搭載されており、それらが通信路４＿１〜４＿１１で構成される内部ネットワーク４によって階層的に接続されている。通信路４＿１で接続されるゲートウェイノードＡ（１）と中継ノードＢ（２）とは、相互認証が成立し、中継ノードＢ（２）と他のノードＣ〜Ｉ（３＿１〜３＿７）及び他のノード相互間は、レガシーなＰ２Ｐネットワークであって、相互認証機能を持たないとして説明する。なお、ノードＣ〜Ｉ（３＿１〜３＿７）の一部のノードは、他のノードに対する中継ノードとして機能する場合があるが、ノードの呼称としては必ずしも「中継」の語を付けない。
【０１１７】
上述の各実施形態と同様に、装置Ｖ（１０）を自動車とし、各ノードをＥＣＵとして実現することもできる。ゲートウェイノードＡ（１）と中継ノードＢ（２）は、上述の各実施形態と同様の方法により、外部認証を受けることができる。
【０１１８】
中継ノードＢ（２）と相互認証機能を持たない他のノードＣ〜Ｉ（３＿１〜３＿７）には、それぞれ固有の分散ハッシュ値９＿０〜９＿７が割り当てられる。レガシーなＰ２Ｐネットワークでは、ノード間の通信はこの分散ハッシュ値を頼りに行われる。例えば、ノードＢ（２）がノードＨ（３＿６）と通信する場合は、ノードＢ（２）はノードＨ（３＿６）の分散ハッシュ値９＿６を用いて経路を探索する。この場合、ノードＥ（３＿３）、ノードＦ（３＿４）及びノードＧ（３＿５）はノードＨ（３＿６）と直接接続されており、ノードＨ（３＿６）への通信を中継することができる。ノードＢ（２）が通信先であるノードＨ（３＿６）の分散ハッシュ値９＿６が付与されたデータを、直接接続されるノードＣ（３＿１）とノードＤ（３＿２）とノードＦ（３＿４）に送信する。ノードＣ（３＿１）は、受信した分散ハッシュ値９＿６とは異なる分散ハッシュ値９＿１を持つので応答せず、またネットワークの末端であるのでそのデータをリダイレクトもしない。ノードＤ（３＿２）は、受信した分散ハッシュ値９＿６とは異なる分散ハッシュ値９＿２を持つので応答はしないが、ネットワークの末端ではないので、そのデータを直接接続されるノードＥ（３＿３）にリダイレクトする。ノードＦ（３＿４）は、受信した分散ハッシュ値９＿６とは異なる分散ハッシュ値９＿４を持つので応答はしないが、ネットワークの末端ではないので、そのデータを、直接接続されるノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）にリダイレクトする。ノードＨ（３＿６）は、受信した分散ハッシュ値９＿６が自身の分散ハッシュ値９＿６と一致するので、ノードＦ（３＿４）に応答し、ノードＦ（３＿４）はこの応答をノードＢ（２）にリダイレクトする。同様に、ノードＢ（２）−ノードＤ（３＿２）−ノードＥ（３＿３）−ノードＨ（３＿６）の経路、ノードＢ（２）−ノードＤ（３＿２）−ノードＥ（３＿３）−ノードＧ（３＿５）−ノードＨ（３＿６）の経路、及び、ノードＢ（２）−ノードＦ（３＿４）−ノードＧ（３＿５）−ノードＨ（３＿６）の経路でも、ノードＢ（２）とノードＨ（３＿６）との通信は成立し得る。
【０１１９】
ネットワーク４がこのように一般のグラフ構造をなしている場合においても、グラフの全域木をあらかじめ構築し、その全域木の上で階層的な認証を行うことで、ネットワーク上の全ノードを認証することができる。
【０１２０】
図２７は、図２６に示す一般のグラフ構造のネットワークを幅優先探索等で構成した例を示す説明図である。幅優先探索で構成された全域木を図中の実線４＿２、４＿３、４＿４、４＿５、４＿８、４＿９、４＿１０で示す。ただし、全域木を構成する方法、および全域木の構造は図示したもの以外にも複数ありうる。ネットワークの全域木が構成できれば、実施形態３に述べたような階層的なネットワークにおけるデバイス認証が適用できる。即ち、装置Ｖ（１０）が起動した後、ゲートウェイノードＡ（１）は、中継ノードＢ（２）との間でローカルな相互接続認証を行い、接続を確立する。これと相前後して、ゲートウェイノードＡ（１）は、自身の認証情報であるＩＤと固有鍵を暗号化した状態で認証装置７に送信し、認証結果を受け取る。次に、ゲートウェイノードＡ（１）は、中継ノードＢ（２）に対して、認証情報の収集を要求する。
【０１２１】
認証情報の収集を要求された中継ノードＢ（２）は、直接接続されているノードＣ（３＿１）とノードＤ（３＿２）とノードＦ（３＿４）に対して、認証情報の収集を要求する。ここで、中継ノードＢ（２）と各ノードの間の通信は、ローカルな相互認証の手段を持たないが、各ノードに割り振られた分散ハッシュ値を使って、通信を行なうことができる。中継ノードＢ（２）はノードＣ（３＿１）とノードＤ（３＿２）とノードＦ（３＿４）のそれぞれに対して、割り振られた分散ハッシュ値９＿１と９＿２と９＿４をそれぞれ付して認証情報の収集を要求する。ノードＣ（３＿１）は、これに対して自身の認証情報を中継ノードＢ（２）に応答する。中継ノードＢ（２）は、受信したノードＣ（３＿１）の認証情報を記憶して、他のノードからの応答を待つ。ノードＤ（３＿２）は中継ノードであるため、認証情報の収集要求をノードＥ（３＿３）へリダイレクトする。ノードＥ（３＿３）は、構成された全域木では末端のノードであるので、自身の認証情報をノードＤ（３＿２）に応答する。ノードＤ（３＿２）は受信したノードＥ（３＿３）の認証情報に自身の認証情報を合せて、中継ノードＢ（２）に応答する。中継ノードＢ（２）は、受信したノードＤ（３＿２）とノードＥ（３＿３）の認証情報を記憶して、他のノードからの応答を待つ。ノードＦ（３＿４）もまた中継ノードであるため、認証情報の収集要求をノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）へリダイレクトする。ノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）は、構成された全域木ではそれぞれ末端のノードであるので、自身の認証情報をノードＦ（３＿４）に応答する。ノードノードＦ（３＿４）は、受信したノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）の認証情報に自身の認証情報を合せて、中継ノードＢ（２）に応答する。中継ノードＢ（２）は、記憶しているノードＣ（３＿１）、ノードＤ（３＿２）及びノードＥ（３＿３）の認証情報と、受信したノードＧ（３＿５）、ノードＨ（３＿６）、ノードＩ（３＿７）及びノードノードＦ（３＿４）の認証情報に自身の認証情報を合せて、ゲートウェイノードＡ（１）に応答する。ゲートウェイノードＡ（１）は、受信した中継ノードＢ（２）、ノードＣ（３＿１）、ノードＤ（３＿２）、ノードＥ（３＿３）、ノードＧ（３＿５）、ノードＨ（３＿６）、ノードＩ（３＿７）及びノードＦ（３＿４）の認証情報を、ネットワーク５を介して認証装置７へ送って複数のノード個々の認証を要求する。
【０１２２】
認証装置７は受け取った認証情報についてそれぞれ認証を実行し、結果をゲートウェイノードＡ（１）に返す。ゲートウェイノードＡ（１）は、その認証結果において中継ノードＢ（２）が真正であると認証されていれば、認証結果を中継ノードＢ（２）に送る。中継ノードＢ（２）は、認証結果に基づく認証済ノード情報または不正ノード情報を、認証情報の収集要求と同じ経路で下層の各ノードに伝送する。受信した各ノードは、受信した認証済ノード情報または不正ノード情報に基づいて、自身の通信相手が真正なノードである場合には通信を続けるが、不正ノードである場合には当該不正ノードとの間の通信を遮断する。
【０１２３】
次に、ネットワークに不正/敵性ノードが混入しており、誤った全域木が構成された場合について述べる。ここでは、仮にノードＤ（３＿２）が不正ノードであると仮定して説明する。
【０１２４】
図２８は、図２７において、ノードＤ（３＿２）が不正ノードであり、これによる偽の情報によって構成された全域木の例である。不正ノードであるノードＤ（３＿２）による偽の情報によってノードＥ（３＿３）は認証のツリーから外れた状態になっている。このような状況は、例えばノードＤ（３＿２）がノードＧ（３＿５）になりすます、ノードＥ（３＿３）がノードＤ（３＿２）を上位ノードと判定したにもかかわらずノードＤ（３＿２）がノードＥ（３＿３）の情報を破棄する、などの動作によって発生する。
【０１２５】
この状況において、上で説明した認証処理と同様に、ゲートウェイノードＡ（１）は、装置Ｖ（１０）が起動した後、中継ノードＢ（２）との間でローカルな相互接続認証を行って接続を確立し、これと相前後して、自身の認証情報であるＩＤと固有鍵を暗号化した状態で認証装置７に送信して認証結果を受け取る。次に、ゲートウェイノードＡ（１）は、中継ノードＢ（２）に対して、認証情報の収集を要求する。
【０１２６】
認証情報の収集を要求された中継ノードＢ（２）は、直接接続されているノードＣ（３＿１）とノードＤ（３＿２）とノードＦ（３＿４）に対して、認証情報の収集を要求する。中継ノードＢ（２）はノードＣ（３＿１）とノードＤ（３＿２）とノードＦ（３＿４）のそれぞれに対して、割り振られた分散ハッシュ値９＿１と９＿２と９＿４をそれぞれ付して認証情報の収集を要求する。ノードＣ（３＿１）は、これに対して自身の認証情報を中継ノードＢ（２）に応答する。中継ノードＢ（２）は、受信したノードＣ（３＿１）の認証情報を記憶して、他のノードからの応答を待つ。ノードＤ（３＿２）は不正ノードであり自らを全域木のネットワークの末端としているので、認証情報の収集要求をノードＥ（３＿３）へリダイレクトすることなく、自身の認証情報を中継ノードＢ（２）に応答する。中継ノードＢ（２）は、受信したノードＤ（３＿２）の認証情報を記憶して、他のノードからの応答を待つ。ノードＦ（３＿４）は中継ノードであるため、認証情報の収集要求をノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）へリダイレクトする。ノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）は、構成された全域木ではそれぞれ末端のノードであるので、自身の認証情報をノードＦ（３＿４）に応答する。ノードＦ（３＿４）は、受信したノードＧ（３＿５）、ノードＨ（３＿６）及びノードＩ（３＿７）の認証情報に自身の認証情報を合せて、中継ノードＢ（２）に応答する。中継ノードＢ（２）は、記憶しているノードＣ（３＿１）及びノードＤ（３＿２）の認証情報と、受信したノードＧ（３＿５）、ノードＨ（３＿６）、ノードＩ（３＿７）及びノードＦ（３＿４）の認証情報に自身の認証情報を合せて、ゲートウェイノードＡ（１）に応答する。ゲートウェイノードＡ（１）は、受信した中継ノードＢ（２）、ノードＣ（３＿１）、ノードＤ（３＿２）、ノードＧ（３＿５）、ノードＨ（３＿６）、ノードＩ（３＿７）及びノードＦ（３＿４）の認証情報を、ネットワーク５を介して認証装置７へ送って複数のノード個々の認証を要求する。
【０１２７】
認証装置７は受け取った認証情報についてそれぞれ認証を実行し、結果をゲートウェイノードＡ（１）に返す。ゲートウェイノードＡ（１）は、その認証結果において中継ノードＢ（２）が真正であると認証されていれば、認証結果を中継ノードＢ（２）に送る。中継ノードＢ（２）は、認証結果に基づく認証済ノード情報または不正ノード情報を、認証情報の収集要求と同じ経路で下層の各ノードに伝送する。受信した各ノードは、受信した認証済ノード情報または不正ノード情報に基づいて、自身の通信相手が真正なノードである場合には通信を続けるが、不正ノードである場合には当該不正ノードとの間の通信を遮断する。ここでは、中継ノードＢ（２）は、ノードＤ（３＿２）が不正ノードであるという認証結果に基づいて、ノードＤ（３＿２）との間の通信を遮断し、当該認証結果に基づく認証済ノード情報または不正ノード情報を、ノードＤ（３＿２）を除く各隣接ノードへ伝搬する。これにより、不正ノードであるノードＤ（３＿２）はネットワークから切り離される。
【０１２８】
次に、不正ノードであるノードＤ（３＿２）を排除した状態で、全域木を再構成する。
【０１２９】
図２９は、不正ノードであるノードＤ（３＿２）を排除した状態で、再構成された全域木の例である。不正ノードであるノードＤ（３＿２）との通信路４＿３と４＿５は切断されている。図２７ではノードＤ（３＿２）の下位ノードに位置づけられていたノードＥ（３＿３）は、ノードＤ（３＿２）との通信路４＿５が切断されるためにノードＦ（３＿４）からの探索の対象となり、例えばノードＧ（３＿５）の下位ノードに位置づけられる。この再構成された全域木にそって再度認証情報を収集すれば、ノードＥ（３＿３）を含む全てのノードを対象とする認証処理が実行される。もし新たに不正ノードが見つかった場合は、さらにその不正ノードを排除して全域木を再構成した後に再度認証する操作を、不正ノードが新たに発見されなくなるまで繰り返すことで外部認証されたノードのみによるネットワークが再構築できる。
【０１３０】
以上のように、不正なノードが混入しているかもしれないＰ２Ｐネットワーク上であっても、接続されたノード同士が安全に通信できるように、各ノードに分散ハッシュ値を与えた上で、認証情報の収集を実行することができる。与えられた分散ハッシュ値は、それぞれのノードに固有のＩＤと共に、認証情報とすることができる。ある不正なノードが認証情報である分散ハッシュ値と固有ＩＤの収集要求に応答しなかった場合は、当該ノードの分散ハッシュ値が承認済ノードのリストに含まれなくなるので、当該ノードは他のノードや外部のネットワークと通信を成立させることができない。仮に、不正ノードが収集要求に正しく応答して分散ハッシュ値を返したとしても、固有ＩＤによるホワイトリスト認証に失敗するため、やはり通信は成立しない。これにより、ビザンチン故障的に振舞うノードをＰ２Ｐネットワークから排除することができる。
【０１３１】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【符号の説明】
【０１３２】
１  上位ノード
２  中継装置（中間ノード）
３  端末装置（下位ノード）
４  通信路、バス
５  （外部）ネットワーク
６  ブローカーサーバー
７  認証装置（認証サーバー）
９  分散ハッシュ値
１０  装置（例えば自動車）
１１  ＭＰＵ（Micro-Processor Unit）、セキュアマイコン
１２  ＨＳＭ（Hardware Security Module）
１３  暗号処理モジュール
１４  デバイス固有ＩＤ、デバイス固有鍵
１５  ＣＰＵ（Central Processing Unit）
１６  ＲＡＭ（random Access Memory）
１７  外部インターフェース（I/F: interface）
１８  バス
【図１】
0006545966.tif 000002
【図２】
0006545966.tif 000003
【図３】
0006545966.tif 000004
【図４】
0006545966.tif 000005
【図５】
0006545966.tif 000006
【図６】
0006545966.tif 000007
【図７】
0006545966.tif 000008
【図８】
0006545966.tif 000009
【図９】
0006545966.tif 000010
【図１０】
0006545966.tif 000011
【図１１】
0006545966.tif 000012
【図１２】
0006545966.tif 000013
【図１３】
0006545966.tif 000014
【図１４】
0006545966.tif 000015
【図１５】
0006545966.tif 000016
【図１６】
0006545966.tif 000017
【図１７】
0006545966.tif 000018
【図１８】
0006545966.tif 000019
【図１９】
0006545966.tif 000020
【図２０】
0006545966.tif 000021
【図２１】
0006545966.tif 000022
【図２２】
0006545966.tif 000023
【図２３】
0006545966.tif 000024
【図２４】
0006545966.tif 000025
【図２５】
0006545966.tif 000026
【図２６】
0006545966.tif 000027
【図２７】
0006545966.tif 000028
【図２８】
0006545966.tif 000029
【図２９】
0006545966.tif 000030