(57)【要約】【課題】  暗号鍵管理方法を備えたネットワークシステムにおいて、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約できるようにする。【解決手段】  ネットワークシステムは、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理機能を備える。本ネットワークシステムにおいてはまた、最上位サーバ（１−１−１）を除くサーバに、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約する認証情報集約部（１−１−２−１、１−１−４−１）を備え、これら認証情報を最後に受け取った前記最上位サーバは、集約された認証情報から端末機器の認証結果の是非を判断する認証検証部（１−１−１−１）を備える。【選択図】      図１
2010219908.tif 000002
【特許請求の範囲】
【請求項１】
端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理機能を備えたネットワークシステムにおいて、
最上位サーバを除くサーバに、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約する認証情報集約部を備え、
これら認証情報を最後に受け取った前記最上位サーバは、集約された認証情報から端末機器の認証結果の是非を判断する認証検証部を備えることを特徴とするネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムにおいて、
前記サーバとして通信情報の重要度に応じた鍵が当該ネットワークシステムへ階層的に設けられる複数のサーバを含み、前記端末機器として前記複数のサーバのいずれかの配下にあるもので正規なものか否かを認証できる端末機器を含み、
あるサーバを起点に端末機器の認証を実行した際に、当該サーバの前記認証情報集約部は、当該サーバ配下の各端末機器から当該端末機器の認証出力（属性値，固有番号，認証結果）と当該認証出力を認証鍵でＭＡＣ演算したＭＡＣ演算値とを連接した第一の認証情報を生成して直上位のサーバへ送り、
当該直上位のサーバの前記認証情報集約部は、下位のサーバを経由して得た１つ以上の前記第一の認証情報からＭＡＣ演算値部分を全て連接したうえでそのＨａｓｈ演算値を求め、更に当該Ｈａｓｈ演算値に前記第一の認証情報の各認証出力をすべて連接した第二の認証情報を生成して直上位のサーバへ送り、
これを順次繰り返し上位のサーバが第三の認証情報、第四の認証情報、・・・、第（ｎ−１）の認証情報として受信する都度、各サーバの前記認証情報集約部において集約された認証情報を生成することを特徴とするネットワークシステム。
【請求項３】
請求項２に記載のネットワークシステムにおいて、
前記第ｎの認証情報を受信する最終サーバ、即ち端末機器の認証を実行した起点となる前記最上位サーバの前記認証検証部は、最後に連接された状態で得られた第ｎの認証情報の認証出力から認証鍵を使用してＭＡＣ演算値を求め、当該ＭＡＣ演算値が最後に収集できた第ｎの認証情報のＭＡＣ演算値と等しくなるか否かで認証出力の真偽性を確認し、且つ認証出力（属性値，固有番号，認証結果）を得ることを特徴とするネットワークシステム。
【請求項４】
請求項３に記載のネットワークシステムにおいて、
前記最上位サーバの前記認証検証部は、認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と前記第ｎの認証情報のＭＡＣ演算値を比較して、認証結果の真偽性を知ることを特徴とするネットワークシステム。
【請求項５】
請求項４に記載のネットワークシステムにおいて、
前記最上位サーバの前記認証検証部は、前記認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定する他に、属性値、固有番号、認証結果が改ざんされた場合を想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と第ｎの認証情報のＭＡＣ演算値を比較して、いずれかの組み合わせでＭＡＣ演算値が合うことが確認された場合、どこの端末機器で認証出力のどこに改ざんがあったかを判断することを特徴とするネットワークシステム。
【請求項６】
端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理機能を備えたネットワークシステムにおける端末機器の認証情報集約方法であって、
最上位サーバを除くサーバにおいて、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約し、
これら認証情報を最後に受け取った前記最上位サーバは、集約された認証情報から端末機器の認証結果の是非を判断することを特徴とするネットワークシステムにおける端末機器の認証情報集約方法。
【請求項７】
請求項６に記載の認証情報集約方法において、
前記サーバとして通信情報の重要度に応じた鍵が当該ネットワークシステムへ階層的に設けられる複数のサーバを含み、前記端末機器として前記複数のサーバのいずれかの配下にあるもので正規なものか否かを認証できる端末機器を含み、
あるサーバを起点に端末機器の認証を実行した際に、当該サーバは、当該サーバ配下の各端末機器から当該端末機器の認証出力（属性値，固有番号，認証結果）と当該認証出力を認証鍵でＭＡＣ演算したＭＡＣ演算値とを連接した第一の認証情報を生成して直上位のサーバへ送り、
当該直上位のサーバは、下位のサーバを経由して得た１つ以上の前記第一の認証情報からＭＡＣ演算値部分を全て連接したうえでそのＨａｓｈ演算値を求め、更に当該Ｈａｓｈ演算値に前記第一の認証情報の各認証出力をすべて連接した第二の認証情報を生成して直上位のサーバへ送り、
これを順次繰り返し上位のサーバが第三の認証情報、第四の認証情報、・・・、第（ｎ−１）の認証情報として受信する都度、各サーバにおいて集約された認証情報を生成することを特徴とするネットワークシステムにおける端末機器の認証情報集約方法。
【請求項８】
請求項７に記載の認証情報集約方法において、
前記第ｎの認証情報を受信する最終サーバ、即ち端末機器の認証を実行した起点となる前記最上位サーバは、最後に連接された状態で得られた第ｎの認証情報の認証出力から認証鍵を使用してＭＡＣ演算値を求め、当該ＭＡＣ演算値が最後に収集できた第ｎの認証情報のＭＡＣ演算値と等しくなるか否かで認証出力の真偽性を確認し、且つ認証出力（属性値，固有番号，認証結果）を得ることを特徴とするネットワークシステムにおける端末機器の認証情報集約方法。
【請求項９】
請求項８に記載の認証情報集約方法において、
前記最上位サーバは、認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と前記第ｎの認証情報のＭＡＣ演算値を比較して、認証結果の真偽性を知ることを特徴とするネットワークシステムにおける端末機器の認証情報集約方法。
【請求項１０】
請求項９に記載の認証情報集約方法において、
前記最上位サーバは、前記認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定する他に、属性値、固有番号、認証結果が改ざんされた場合を想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と第ｎの認証情報のＭＡＣ演算値を比較して、いずれかの組み合わせでＭＡＣ演算値が合うことが確認された場合、どこの端末機器で認証出力のどこに改ざんがあったかを判断することを特徴とするネットワークシステムにおける端末機器の認証情報集約方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワークシステム及びネットワークシステムにおける端末機器の認証情報集約方法に関する。
【背景技術】
【０００２】
図８を参照して、暗号鍵管理方法を備えたネットワークシステムの一例について説明する。
【０００３】
図８は、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理方法を備えたネットワークシステムを示す。
【０００４】
図８において、［センター］、［本社］、［支社］、［グループ］は属性を示す。これら各属性を結ぶネットワークで構成されている組織は、［センター］を先頭に［本社］、［支社］、［グループ］の属性順にピラミッド構造を成している。
【０００５】
［グループ］には、一つ以上の端末機器が接続されている。［グループ］の中にある端末機器は、端末機器が接続された装置のステータス情報をネットワークへ送信し、各属性は、それぞれが持つ受信権限の範囲内でそれらステータス情報を受信できる。受信権限は、例えば、暗号や認証において復号できるか否か、あるいは認証できるか否かで区別されても良い。
【０００６】
センターサーバ１−１−１は、ネットワークで構成される組織、即ち配下にある各属性のサーバと［グループ］の中にある端末機器を管理できる。異なる本社サーバ１−１−２、１−１−３はそれぞれ、その配下にある支社サーバとグループサーバ、そして［グループ］の中にある端末機器を管理できる。異なる支社サーバ１−１−４〜１−１−７はそれぞれ、その配下にあるグループサーバ、そして［グループ］の中にある端末機器を管理できる。グループサーバ１−１−８〜１−１−１５はそれぞれ、その配下にある［グループ］の中にある端末機器を管理できる。
【０００７】
ここで、［グループ］にある端末機器は、属性値で表現することができる。例えば、グループサーバ１−１−８の中にある端末機器の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００１，００１，００１）と表すことができる。また、グループサーバ１−１−１３の中にある端末機器の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００２，００１，００２）と表すことができる。
【０００８】
以上のように、ネットワークの各ブランチが末広がりになる構造を段階的に属性値で表し、ブランチ構造の末端にある端末機器に属性値を与えることにより、簡潔に又機械的に端末機器へ属性値をアサインできる方法が提案されている。また、それら端末機器の属性値を連接したうえでＨａｓｈ演算を行うなどを施すことにより、端末機器の暗号鍵や認証鍵に用いる提案もされている(例えば特許文献１)。
【０００９】
これらの提案によると、ＩＰマルチキャスト方式を用いることにより、属性値を知っているセンターサーバが、マルチキャストパケットを送信するだけで、ある［グループ］の複数の端末機器に対して、同じ暗号鍵を使った秘匿通信を行うことができる。一方、認証においては、ＩＰマルチキャスト方式を用いることにより、これまでは各属性数の積の回数だけパケット送信が必要であるのに対し、各属性数の和の回数だけのパケット送信回数で済むという特徴を有している。例えば、図１の場合、これまでは８回（＝２×２×２）のパケット送信が必要であったところ、６回（＝２＋２＋２）のパケット送信で済むということになる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００８−１２４８８４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、実際の運用面を考えた場合、これまでの属性値により管理されるネットワークシステムの各属性においては、以下のような課題がある。
【００１２】
図８のような構成によるネットワークシステムの場合、ネットワークシステム全体を統括しているセンターから、ネットワークシステムの末端部に想定される膨大な数の端末機器に向けて、全数認証などを実行する際、同じく膨大な数のレスポンスがセンターへ返信されてくる。従って、このまま全端末機器からの情報を収集していては、ネットワークシステムの上層へ向かう度に、ネットワークが混雑しスタック状態に陥る可能性がある。また、センターでの認証情報の処理に時間を要することも必須と考えられる。更に、これらを原因として、ネットワークシステム内で実行されようとしている他の重要なデータ通信を阻害することも十分に考えられる。
【００１３】
本発明の企図するところは、暗号鍵管理方法を備えたネットワークシステムにおいて、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約できるようにすることにある。
【課題を解決するための手段】
【００１４】
本発明の態様によるネットワークシステムは、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理機能を備えるほか、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約する手段として認証情報集約部を備え、更に、これら認証情報を最後に受け取ったサーバにおいて、集約された認証情報から端末機器の認証結果(ＭＡＣ演算値に基づいてＭＡＣ演算を行った結果)の是非を判断する認証検証部を備える。
【００１５】
本発明の態様によるネットワークシステムにおいては、前記サーバとして通信情報の重要度に応じた鍵が当該ネットワークシステムへ階層的に設けられる複数のサーバを含み、前記端末機器として前記複数のサーバのいずれかの配下にあるもので正規なものか否かを認証できる端末機器を含み、あるサーバを起点に端末機器の認証を実行した際に、当該サーバの前記認証情報集約部は、当該サーバ配下の各端末機器から当該端末機器の認証出力（属性値，固有番号，認証結果）と当該認証出力を認証鍵でＭＡＣ演算したＭＡＣ演算値とを連接した第一の認証情報(その認証情報の送信者が、受信者に自己(送信者)を認証してもらうために送信したＭＡＣ演算値のデータが含まれている情報、および認証結果)を生成して直上位のサーバへ送り、当該直上位のサーバの前記認証情報集約部は、下位のサーバを経由して得た１つ以上の前記第一の認証情報からＭＡＣ演算値部分を全て連接したうえでそのＨａｓｈ演算値を求め、更に当該Ｈａｓｈ演算値に前記第一の認証情報の各認証出力をすべて連接した第二の認証情報を生成して直上位のサーバへ送り、これを順次繰り返し上位のサーバが第三の認証情報、第四の認証情報、・・・、第（ｎ−１）の認証情報として受信する都度、各サーバの前記認証情報集約部において認証情報を生成する。
【００１６】
本発明の態様によるネットワークシステムにおいてはまた、前記第ｎの認証情報を受信する最終サーバ、即ち端末機器の認証を実行した起点となる前記最上位サーバの前記認証検証部は、最後に連接された状態で得られた第ｎの認証情報の認証出力から認証鍵を使用してＭＡＣ演算値を求め、当該ＭＡＣ演算値が最後に収集できた第ｎの認証情報のＭＡＣ演算値と等しくなるか否かで認証出力の真偽性を確認し、且つ認証出力（属性値，固有番号，認証結果）を得る。
【００１７】
本発明の態様によるネットワークシステムにおいては更に、前記最上位サーバの前記認証検証部は、認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と前記第ｎの認証情報のＭＡＣ演算値を比較して、認証結果の真偽性を短時間で知ることができる。
【００１８】
本発明の態様によるネットワークシステムにおいては更に、前記最上位サーバの前記認証検証部は、前記認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定する他に、属性値、固有番号、認証結果が改ざんされた場合を想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と第ｎの認証情報のＭＡＣ演算値を比較して、いずれかの組み合わせでＭＡＣ演算値が合うことが確認された場合、どこの端末機器で認証出力のどこに改ざんがあったかを判断する。
【００１９】
本発明の他の態様によれば、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理機能を備えたネットワークシステムにおける端末機器の認証情報集約方法であって、最上位サーバを除くサーバにおいて、当該ネットワークシステムへ設置された端末機器からの認証情報を、情報量を圧縮しながら集約し、これら認証情報を最後に受け取った前記最上位サーバは、集約された認証情報から端末機器の認証結果の是非を判断することを特徴とするネットワークシステムにおける端末機器の認証情報集約方法が提供される。
【００２０】
本発明の他の態様による認証情報集約方法においては、前記サーバとして通信情報の重要度に応じた鍵が当該ネットワークシステムへ階層的に設けられる複数のサーバを含み、前記端末機器として前記複数のサーバのいずれかの配下にあるもので正規なものか否かを認証できる端末機器を含み、あるサーバを起点に端末機器の認証を実行した際に、当該サーバは、当該サーバ配下の各端末機器から当該端末機器の認証出力（属性値，固有番号，認証結果）と当該認証出力を認証鍵でＭＡＣ演算したＭＡＣ演算値とを連接した第一の認証情報を生成して直上位のサーバへ送り、当該直上位のサーバは、下位のサーバを経由して得た１つ以上の前記第一の認証情報からＭＡＣ演算値部分を全て連接したうえでそのＨａｓｈ演算値を求め、更に当該Ｈａｓｈ演算値に前記第一の認証情報の各認証出力をすべて連接した第二の認証情報を生成して直上位のサーバへ送り、これを順次繰り返し上位のサーバが第三の認証情報、第四の認証情報、・・・、第（ｎ−１）の認証情報として受信する都度、各サーバにおいて認証情報を生成する。
【００２１】
本発明の他の態様による認証情報集約方法においてはまた、前記第ｎの認証情報を受信する最終サーバ、即ち端末機器の認証を実行した起点となる前記最上位サーバは、最後に連接された状態で得られた第ｎの認証情報の認証出力から認証鍵を使用してＭＡＣ演算値を求め、当該ＭＡＣ演算値が最後に収集できた第ｎの認証情報のＭＡＣ演算値と等しくなるか否かで認証出力の真偽性を確認し、且つ認証出力（属性値，固有番号，認証結果）を得る。
【００２２】
本発明の他の態様による認証情報集約方法においては更に、前記最上位サーバは、認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と前記第ｎの認証情報のＭＡＣ演算値を比較して、認証結果の真偽性を短時間で知ることができる。
【００２３】
本発明の他の態様による認証情報集約方法においては更に、前記最上位サーバは、前記認証を実行する端末機器の既知である属性値と固有番号から、認証結果を組み合わせの範囲で想定する他に、属性値、固有番号、認証結果が改ざんされた場合を想定し、更に認証鍵で前記組み合わせ分のＭＡＣ演算値を算出しておき、前記組み合わせ分のＭＡＣ演算値と第ｎの認証情報のＭＡＣ演算値を比較して、いずれかの組み合わせでＭＡＣ演算値が合うことが確認された場合、どこの端末機器で認証出力のどこに改ざんがあったかを判断する。
【発明の効果】
【００２４】
本発明によれば、ネットワークシステムへ設置された端末機器からの認証情報を、情報量を抑えながら最上位サーバにおいて集約することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明を適用した、暗号鍵管理方法を備えたネットワークシステムの構成を説明するための図である。
【図２】図１に示された複数の［グループ］のそれぞれを構成している端末機器について説明するための図である。
【図３】図１における［センター］方向へ端末機器の認証情報の収集集約を実現するため、図１に示された支社サーバに搭載されている認証情報集約部の基本構成を示す図である。
【図４】図１における［センター］方向へ端末機器の認証情報の収集集約を実現するため、図１に示された本社サーバに搭載されている認証情報集約部の基本構成を示す図である。
【図５】支社、本社と集約してきた全端末機器の認証情報を検証するため、センターサーバに搭載されている認証検証部の基本構成を示す図である。
【図６】本発明の第１の実施例のシーケンスについて説明するための図である。
【図７】本発明の第２の実施例のシーケンスについて説明するための図である。
【図８】暗号鍵管理方法を備えたネットワークシステムの提案例を説明するための図である。
【発明を実施するための形態】
【００２６】
図１〜図７を参照して、本発明の実施形態をいくつかの実施例に基づいて説明する。
【００２７】
図８を参照して説明したように、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理方法に関する提案が成されている。
【００２８】
図１は、図８で説明した構成によるネットワークシステムに本発明を適用した場合のネットワークシステム構成を示す。それゆえ、図８で説明した要素と同じ要素には同じ参照符号を付している。
【００２９】
図１において、本発明の実施形態にかかるネットワークシステムは、図８で説明したネットワークシステム構成に加え、認証情報集約部１−１−２−１、１−１−４−１、およびセンターにおいて集約された認証情報から端末機器の認証結果の是非を判断する認証検証部１−１−１−１を備える。
【００３０】
なお、認証情報集約部１−１−２−１、１−１−４−１は、他の本社や支社、グループの各属性にも同様に備えられている機能であるが、図１では、便宜上、一つの代表例として本社サーバ１−１−２や支社サーバ１−１−４にのみ付随するように示し、他は図示を省略している。それゆえ、図示されない認証情報集約部も以降で説明される認証情報集約部と同じ構成、作用を有する。また、以降では、例えば本社サーバ１−１−２については同じ参照番号を付して［本社］１−１−２と呼び、例えば支社サーバ１−１−４については同じ参照番号を付して［支社］１−１−４と呼ぶことがある。
【００３１】
図１において、［センター］、［本社］、［支社］、［グループ］は属性を示す。これら各属性を結ぶネットワークで構成されている組織は、［センター］を先頭に［本社］、［支社］、［グループ］の属性順にピラミッド構造を成している。
【００３２】
［グループ］には、一つ以上の端末機器が接続されている。［グループ］の中にある端末機器は、端末機器が接続された装置のステータス情報をネットワークへ送信し、各属性は、それぞれが持つ受信権限の範囲内でそれらステータス情報を受信できる。受信権限は、例えば、暗号や認証において復号できるか否か、あるいは認証できるか否かで区別されても良い。
【００３３】
センターサーバ１−１−１は、ネットワークで構成される組織、即ち配下にある各属性のサーバと［グループ］の中にある端末機器を管理できる。異なる本社サーバ１−１−２、１−１−３はそれぞれ、それらの配下にある支社サーバとグループサーバ、そして［グループ］の中にある端末機器を管理できる。異なる支社サーバ１−１−４〜１−１−７はそれぞれ、それらの配下にあるグループサーバ、そして［グループ］の中にある端末機器を管理できる。グループサーバ１−１−８〜１−１−１５はそれぞれ、それらの配下にある［グループ］の中にある端末機器を管理できる。
【００３４】
前述したように、［グループ］の中にある複数の端末機器は、属性値で表現することができる。例えば、グループサーバ１−１−８のグループの中にある端末機器の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００１，００１，００１）と表すことができる。また、グループサーバ１−１−１２のグループの中にある端末機器の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００２，００１，００１）と表すことができる。
【００３５】
同様に、各サーバも属性値で表現することができる。例えば、本社サーバ１−１−２の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００１，０００，０００）と表すことができる。また、支社サーバ１−１−７の属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）は、（００２，００２，０００）と表すことができる。
【００３６】
図２を参照して、各属性値のグループ下にある端末機器について説明する。
【００３７】
図２は、図１に示された［グループ］１−１−８から［グループ］１−１−１５までのそれぞれを構成している端末機器を示す。図２には、８個ある属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）の各［グループ］下にある端末機器について、それぞれが固有番号を持っていることが分かる。固有番号とは唯一無二の識別子であり、例えばベンダー名に製造番号を連接したもの等を示す。図２では、各［グループ］に４台ずつの端末機器が接続されていることが分かる。つまり、属性値（ＩＤｘ，ＩＤｙ，ＩＤｚ）＝（００１，００１，００１）を例に挙げると、その中の端末機器は、端末機器（Ｎ００１）１−２−１、端末機器（Ｎ００２）１−２−２、端末機器（Ｎ００３）１−２−３、端末機器（Ｎ００４）１−２−４の４台ある。
【００３８】
本実施形態では、以上の構成に加え、各属性、例えば図１の本社サーバ１−１−２は、図４に示す認証情報集約部１−１−２−１を構成要素として有し、図１の支社サーバ１−１−４は、図４と同じ構成を成す図３に示す認証情報集約部１−１−４−１を構成要素として有する。更に、図１のセンターサーバ１−１−１は、図５に示す認証検証部１−１−１−１を構成要素として有している。
【００３９】
図３は、［センター］１−１−１方向へ端末機器の認証情報の収集集約を実現するため、図１に示された支社サーバ１−１−４に搭載されている認証情報集約部１−１−４−１の基本構成を示す。
【００４０】
図３は、何らかの必要性に応じて、支社サーバ１−１−４からブランチ状に広がったネットワークの末端にある、図２に示される端末機器１−２−１〜１−２−８の認証情報を収集する機能を有している。認証情報入力１−３−１は、図１のグループ１−１−８やグループ１−１−９から集められた端末機器の認証情報を示している。
【００４１】
＜端末機器⇒支社＞
ここで、認証情報入力１−３−１は、例えば次式で表記される。
【００４２】
E( key１，[count] || MAC( key２， [count]) || Acki )
【００４３】
なお、E（ key１， ○○○）は、○○○をデータ鍵key１で暗号化することを意味する実行式を示す。
【００４４】
記号||は、その記号の両側にある式を単純に連接することを示す。
【００４５】
MACとは、Message  Authentication  Codeを意味し、MAC（key３，△△△）は、△△△に認証鍵Key３を使ってMAC演算する実行式を示す。
【００４６】
Ackiは、端末機器が正しい端末機器であることをセンターで認証してもらうための認証情報を意味し、以下の式（０）のように表記される。
【００４７】
Acki = {MAC(Ki， Mi)} || Mi                        式（０）
【００４８】
式（０）中の意味は次の通りである。
【００４９】
Ki：認証鍵acx＾afy＾afz、＾は排他的論理和を意味する。
【００５０】
Mi ：メッセージを意味する。本メッセージは、「端末機器の属性ID」、「端末機器の固有番号」と「端末機器の認証結果」を連接したものである。
【００５１】
Mi = IDx || IDy || IDz || i || [端末機器の認証結果]
【００５２】
認証情報入力１−３−１は暗号化された情報であるため、正しいデータ鍵（key１）１−３−３を選択した上で復号演算器１−３−２により復号結果１−３−４のように復号され、復号結果は次式で表記される。
【００５３】
[count] || MAC( key２， [count]) || Acki 
【００５４】
この復号結果１−３−４は、その目的により次の２つに大別できる。
【００５５】
[count] || MAC( key２， [count])          式（１）
【００５６】
Acki                                      式（２）
【００５７】
式（１）は、図１のグループ１−１−８やグループ１−１−９の各端末機器が、端末機器自身を支社サーバ１−１−４において正しい端末機器であることを認証してもらうために送られてきた認証情報である。一方、式（２）は、端末機器が正しい端末機器であることをセンターで認証してもらうための認証情報である。つまり、支社で認証してもらう認証情報と、センターで認証してもらう認証情報が異なることを意味している。
【００５８】
式（１）は、認証を行なうためにＭＡＣ演算器１−３−５でＭＡＣ演算が実行される。即ち、ＭＡＣ演算器１−３−５は、送られてきた[count]値と、支社サーバ１−１−４が知っている認証鍵（key２）１−３−６を用いてＭＡＣ演算を実行する。続いて、判断器１−３−７は、ＭＡＣ演算結果が、送られてきた演算値MAC( key２， [count])と同じ結果になるか否かを判断し、判断結果を認証結果返信出力１−３−８として各端末機器に返信する。
【００５９】
式（２）は、そのまま一旦認証情報テーブル１−３−１７に格納され、少なくとも各端末機器からの認証情報が出揃うまで蓄積される。これらの認証結果は、認証情報集約部１−１−４−１の特徴である認証情報集約演算部１−３−１２において、次のような手順によりデータ量を削減され、本社サーバ１−１−２に送出される準備を整える。
【００６０】
各端末機器から認証情報テーブル１−３−１７に集められた各Ａｃｋｉの全集合「∀Ａｃｋｉ 」は、次の通りである。
【００６１】
∀Ａｃｋｉ = Ack１、Ack２、Ack３、・・・、Ackｎ 
【００６２】
これらＡｃｋｉ をすべて連接した「|| Ａｃｋｉ 」は、次の式（３）で表すことができる。
【００６３】
|| Ａｃｋｉ = {MAC(K１， M１)} || M１， {MAC(K２， M２)} || M２， {MAC(K３， M３)} || M３， ・・・， {MAC(Kn ，Mn)} || Mn      式（３）
【００６４】
ここで、これら１支社分の認証情報を集約するため、本実施形態の特徴である図３の認証情報集約演算部１−３−１２において、以下の式（４）、（５）のように並べ替えや演算が実施される。なお、式中のｎは、集まった端末機器の数を示す。
【００６５】
||Ａｃｋｉ = {MAC(K１, M１)} || {MAC(K２, M２)} || {MAC(K３, M３)} || ・・・ || {MAC(Kn, Mn)} || M１ || M２ || M３ || ・・・ || Mn     式(４) 
【００６６】
次に、各認証結果を生のまま送るのではなく、認証情報の{MAC(Ki, Mi)}を一塊のデータとしてHash演算を施す。つまり、
ｈ [ {MAC(K１, M１)} || {MAC(K２, M２)} || {MAC(K３, M３)} || ・・・ || {MAC(Kn, Mn)}] || M１ || M２ || M３ || ・・・ || Mn 
= ｈ [ || (MAC(Ki, Mi)) ] || [ || Mi ]              式（５）
= Ackxy０ 
【００６７】
ここで得られたAckxy０ は、支社（IDx， IDy）から本社（IDx）へ送る端末機器の認証情報を集約した情報を示す。
【００６８】
ここで、“Ackxy０“の右下に記した”xy0“においてＩＤz＝０としたのは、支社（ＩＤｘ、ＩＤｙ）の属性では、ＩＤzを定義できないため“０”とした。
【００６９】
続いて、支社サーバ１−１−４が本社サーバ１−１−２において正しい支社サーバからの情報を受け取っていることを認証してもらうため、次の認証情報式（６）を支社サーバ１−１−４において作成する。
【００７０】
[count] || MAC( key３， ［count］ )            式（６）
【００７１】
式（６）は、図３のカウンタ１−３−９で生成した数値[count]と、認証鍵（key３）１−３−１１のkey３をMAC演算器１−３−１０でMAC演算した値を連接した認証情報１−３−１６を示している。
【００７２】
以上の認証情報集約演算部１−３−１２と認証情報１−３−１６を、本社サーバ１−１−２へ暗号化して送出するため、暗号演算器１−３−１４はデータ鍵（key４）１−３−１３のkey４を用いて暗号化を行い、次の式（７）で表記される暗号化した出力を認証情報集約出力１−３−１５として送出する。
【００７３】
E( key４， [count] || MAC( key３， [count]) || Ackxy０ )    式（７）
【００７４】
図４は、［センター］１−１−１方向へ端末機器の認証情報の収集集約を実現するため、図１に示された本社サーバ１−１−２に搭載されている認証情報集約部１−１−２−１の基本構成を示す。認証情報集約部１−１−２−１は、図３で説明した認証情報集約部１−１−４−１と同じ構成を有しているが、まったく同じというわけではないので、参照符号は中間の値を”３”から”４”に変更することで図３の要素と区別できるようにしている。簡単に説明すると、暗号化された認証情報入力１−４−１は、正しいデータ鍵（key４）１−４−３を選択した上で復号演算器１−４−２により復号結果１−４−４のように復号される。ＭＡＣ演算器１−４−５は、認証を行なうためにＭＡＣ演算を実行する。即ち、ＭＡＣ演算器１−４−５は、送られてきた演算値と、本社サーバ１−１−２が知っている認証鍵（key３）１−４−６を用いてＭＡＣ演算を実行する。続いて、判断器１−４−７は、ＭＡＣ演算結果が、送られてきた演算値と同じ結果になるか否かを判断し、判断結果を認証結果返信出力１−４−８として返信する。そのほか、認証情報集約部１−１−２−１は、認証情報テーブル１−４−１７、認証情報集約部１−１−２−１の特徴である認証情報集約演算部１−４−１２及び認証情報１−４−１６、カウンタ１−４−９、認証鍵（key５）１−４−１１、MAC演算器１−４−１０、データ鍵（key４）１−４−１３、暗号演算器１−４−１４を有している。暗号演算器１−４−１４はデータ鍵（key６）１−４−１３のkey６を用いて暗号化を行い、暗号化した出力を認証情報集約出力１−４−１５として送出する。
【００７５】
＜支社⇒本社＞
上記式（７）は、［本社］１−１−２で図３と同様の構成を成す図４の認証情報集約部１−１−２−１において、＜端末機器⇒支社＞で記述した内容と同様の演算処理が行われることにより、［支社］１−１−４と［支社］１−１−５の認証情報が次のように集約される。
【００７６】
まず、各支社からは、次のような各Ackxy０が集められる。なお、式中のｍは、集まった支社の数を示す。
【００７７】
支社１ Ackx１０ = ｈ [ || {MAC(Ki， Mi)} ] x１０ || [ || Mi ] x１０  式（８）
支社２ Ackx２０ = ｈ [ || {MAC(Ki， Mi)} ] x２０ || [ || Mi ] x２０
支社３ Ackx３０ = ｈ [ || {MAC(Ki， Mi)} ] x３０ || [ || Mi ] x３０
：
支社ｍ Ackxm０ = ｈ [ || {MAC(Ki， Mi)} ] xm０ || [ || Mi ] xm０
【００７８】
ここで、これら本社（IDｘ）分の認証情報を集約するため、本実施形態の特徴である図４の認証情報集約演算部１−４−１２において、以下の式（１０）、（１１）の様に並べ替えや演算が実施される。
【００７９】
|| Ackxy０ = ｈ[ || {MAC(Ki， Mi)} ] x１０ || ｈ[ || {MAC(Ki， Mi)} ] x２０ || ｈ[ || {MAC(Ki， Mi)} ] x３０ || ・・・ || ｈ[ || {MAC(Ki， Mi)} ] xm０ || [ || Mi ] x１０ || [ || Mi ] x２０ || [ || Mi ] x３０ || ・・・ || [ || Mi ] xm０                                 式（１０）
【００８０】
次に、前述した支社で実行したことと同様に、認証情報の”ｈ[ || {MAC(Ki， Mi)} ]xy０”を一塊のデータとしてHash演算を掛ける。つまり、
ｈ 〔 ｈ[ || {MAC(K１， M１)} ] x１０ ||ｈ[ || {MAC(K２， M２)} ] x２０ ||ｈ[ || {MAC(K３， M３)} ] x３０ || ・・・ ||ｈ[ || {MAC(Kn， Mn)}] xm０ 〕 || [ || Mi ] x１０ || [ || Mi ] x２０ || [ || Mi ] x３０ || ・・・ || [ || Mi ] xm０ 
= ｈ〔 ｈ[ || {MAC(Ki, Mi)} ] xy０ 〕 || [ || Mi ] xy０    式（１１）
= Ackx００
【００８１】
ここで得られたAckx００ は、本社（IDx）から[センター]１−１−１へ送る端末機器の認証情報を集約した情報を示す。
【００８２】
ここで、“Ackx００“の右下に記した”x00“においてＩＤｙ＝０、ＩＤz＝０としたのは、本社（ＩＤｘ）の属性では、ＩＤｙとＩＤzを定義できないため“０”とした。
【００８３】
続いて、本社サーバ１−１−２がセンターサーバ１−１−１において正しい本社サーバからの情報を受け取っていることを認証してもらうための認証情報式を作成するが、図３の場合と同じ構成と手順のため説明を割愛する。
【００８４】
図５は、支社、本社と集約してきた全端末機器の認証情報を検証するため、センターサーバ１−１−１に搭載されている認証検証部１−１−１−１の基本構成を示す。認証検証部１−１−１−１は、図３で説明した認証情報集約部１−１−４−１の一部と同じ構成を有しているが、まったく同じというわけではないので、参照符号は中間の値を”３”から”５”に変更することで図３、図４の要素と区別できるようにしている。簡単に説明すると、暗号化された認証情報入力１−５−１は、正しいデータ鍵（key６）１−５−３を選択した上で復号演算器１−５−２により復号結果１−５−４のように復号される。ＭＡＣ演算器１−５−５は、認証を行なうためにＭＡＣ演算を実行する。即ち、ＭＡＣ演算器１−５−５は、送られてきた演算値と、センターサーバ１−１−１が知っている認証鍵（key５）１−５−６を用いてＭＡＣ演算を実行する。続いて、判断器１−５−７は、ＭＡＣ演算結果が、送られてきた演算値と同じ結果になるか否かを判断し、判断結果を認証結果返信出力１−５−８として返信する。そのほか、認証検証部１−１−１−１は、認証情報テーブル１−５−９、認証検証部１−１−１−１の特徴である認証検証演算部１−５−１０及び収集テーブル１−５−１１を有している。
【００８５】
＜本社⇒センター＞
[センター]１−１−１には、復号結果１−５−４に各本社からAck１００，Ack２００，Ack３００，・・・，Ackm００の認証集約情報が集まる。
【００８６】
例えば、本社（ＩＤｘ＝１）から認証情報を集約した情報Ack１００から、認証の結果を得ることができる。
【００８７】
Ack１００ = ｈ 〔 ｈ[ || {MAC(Ki, Mi)} ] x１０ 〕 || [ || Mi ] x１０                                                        式（１２）
【００８８】
この式（１２）の末尾に連接された[ || Mi ] x１０は、次式へ展開できる。
【００８９】
[ || Mi ] x１０ = [ || Mi ] x１０ || [ || Mi ] x２０ || [ || Mi ] x３０ || ・・・ || [ || Mi ] xm０                          式（１３）
= ( M１ || M２ || M３ || ，・・・， || Ma ) x１０ ||   ←支店（IDy=１）にａ個ある端末機器の属性値/固有番号/認証結果
( M１ || M２ || M３ || ・・・・・ || Mb ) x２０ ||   ←支店（IDy=２）にb個ある端末機器の属性値/固有番号/認証結果
( M１ || M２ || M３ || ・・・・・ || Mc ) x３０ ||   ←支店（IDy=３）にc個ある端末機器の属性値/固有番号/認証結果
：
( M１ || M２ || M３ || ・・・・・ || Mg ) xm０   ←支店（IDy=m）にg個ある端末機器の属性値/固有番号/認証結果
【００９０】
ここで、Mi は、「端末機器の属性ID」、「端末機器の固有番号」と「端末機器の認証結果」を連接したものであることから、図５の収集テーブル１−５−１１に示すように、その本社の配下にある全端末機器の認証結果を知ることができる。
【００９１】
更に、これら「端末機器の属性ID」、「端末機器の固有番号」と「端末機器の認証結果」が改ざんされていたり、第三者による成り済ましから発せられた認証結果等ではないかを認証するために、認証検証演算部１−５−１０において次の演算が行なわれる。
【００９２】
ｈ 〔 ｈ[ || {MAC(Ki, Mi )}] x１０ 〕   
Ki：認証鍵acx ＾afｙ ＾afz 
【００９３】
このMAC演算の結果が等しくなれば、「端末機器の属性ID」、「端末機器の固有番号」と「端末機器の認証結果」が正しく受信できたことが証明されたことになる。
【００９４】
以上説明してきたように、本実施形態は、その主な特徴となるＨａｓｈ演算と認証鍵を基本とした認証情報集約機能、およびセンターにおいて集約された認証情報から端末機器の認証結果の是非を判断する認証検証機能を備えることにより、ネットワークシステムの端末機器からセンターに集まる情報を削減でき、またその情報の真偽を認証鍵により確認ができる。
【００９５】
［第１の実施例］
図６にセンターを頂点とした組織下にあるすべての端末機器の属性認証を行う第１の実施例をシーケンスで示す。
【００９６】
第１の実施例では、［センター］以下の属性を［本社］：IDx，［支社］：IDy，［グループ］：IDzの３つに定義している。但し、動作説明を簡素化するため、各属性のサーバのうち［グループ］には、サーバを設けない。その代わり、ゲートウェイなどの通信機器でサブネットワークを構築し、そのサブネットワークをある端末機器の属性群IDzとする。従って、実質的に［グループ］の属性IDzは、支社サーバが担うこととなる。
【００９７】
第１の実施例のシーケンスは、
（１）各属性と端末機器における属性IDx， IDy， IDzの認証
（２）支社における端末機器の認証と集約
（３）本社における支社の認証と集約
（４）センターにおける本社の認証と検証、
に分けて説明することができる。
【００９８】
［第１の実施例の構成］
基本構成は、図１と同じである。
【００９９】
［センター］１−１−１、［本社］１−１−２、１−１−３、[支社]１−１−４〜１−１−７、［グループ］１−１−８〜１−１−１５における既存の保有情報を次のように定義する。  
［センター］秘密シード：ｓ ，属性鍵：ａｃx， ａｆy， ａｓz ，端末機器の固有番号と各属性値ＩＤｘ，ＩＤｙ， ＩＤｚを既知とする。  
［本    社］データ鍵ｄｃｘ ，属性鍵：ａｃz， ａｆ０， ａｓ０
［支    社］データ鍵ｄｆｘy ，属性鍵：ａｃx， ａｆy，ａｓ０
［グループ］データ鍵ｄｓｘyz ，属性鍵：ａｃx， ａｆy，ａｓz 
［端末機器］秘密シ−ド：ｓ，データ鍵ｄｃｘ，ｄｆｘy， ｄｓｘyz ，属性鍵：acx， afy， asz ，自己の固有番号と属性値ＩＤｘ，ＩＤｙ，ＩＤｚは既知。ただし、［グループ］の属性サーバに相当するものは、支社サーバが管理する。
【０１００】
［第１の実施例の動作の説明］
図６を参照して、第１の実施例のシーケンスについて説明する。
【０１０１】
前述の通り、第１の実施例のシーケンスは、次の４つに分かれている。
【０１０２】
（１）各属性と端末機器における属性IDx， IDy， IDzの認証
（２）支社における端末機器の認証と集約
（３）本社における支社の認証と集約
（４）センターにおける本社の認証と検証
上記（１）〜（４）のそれぞれについて説明する。
【０１０３】
（１）各属性と端末機器における属性IDx， IDy， IDzの認証
図６のシーケンス２−１、２−４、２−７が示すように、各属性およびすべての端末機器に対し、本社の属性を示すIDｘの認証を次の実行式で実行する。なお、本実施例において認証の命令を発信するのは［センター］である。
【０１０４】
[auth_mlti_x] || ( random || MAC(acx， random ) 
上記実行式において、[auth_mlti_x]は実行コマンドを示す。randomは、乱数を示す。このまま[auth_mlti_x]以下を暗号化せずにマルチキャスト送信を行う。
【０１０５】
[auth_mlti_x]以下は、送信先の属性IDxが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDxの認証鍵acxで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDxがセンターと同じ認証鍵acxを持っていることを確認する。
【０１０６】
次に、図６のシーケンス２−２、２−５、２−８が示すように、各属性およびすべての端末機器に対し、支社の属性を示すIDｙの認証を次の実行式で実行する。
【０１０７】
[auth_mlti_y] || ( random || MAC(aｆｙ， random ) 
[auth_mlti_y]は実行コマンドを示す。このまま[auth_mlti_y]以下を暗号化せずにマルチキャスト送信を行う。
【０１０８】
[auth_mlti_y]以下は、送信先の属性IDyが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDyの認証鍵afyで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDyがセンターと同じ認証鍵afyを持っていることを確認する。
【０１０９】
次に、シーケンス２−３、２−６、２−９が示すように、各属性およびすべての端末機器に対し、グループの属性を示すIDzの認証を次の実行式で実行する。
【０１１０】
[auth_mlti_z] || ( random || MAC(asz， random ) 
[auth_mlti_z]は実行コマンドを示す。このまま[auth_mlti_z]以下を暗号化せずにマルチキャスト送信を行う。
【０１１１】
[auth_mlti_z]以下は、送信先の属性IDzが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDzの認証鍵aszで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDzがセンターと同じ認証鍵aszを持っていることを確認する。
【０１１２】
（２）支社における端末機器の認証と集約
図６のシーケンス２−１０が示すように、端末機器においてセンターからの認証がＯＫであった場合、支社は次の実行式をレスポンスとして受け取る。
【０１１３】
[auth_mlti_res] || E (dsxyz， ｎi || Acki ) 
但し、ｎi = random || MAC ( acx＾afy ， random ) 
Acki は、前述した式（０）で説明した通りであり、センターにおける端末機器の認証検証で用いられる。
【０１１４】
[auth_mlti_res]はレスポンスを示す。＾はacxとafyの排他的論理和を示す。
【０１１５】
このまま[auth_mlti_res]以下をレスポンスとして支社へユニキャスト送信する。
【０１１６】
ｎi は、端末機器が支社に自分（端末機器）を認証してもらう実行コマンドを示す。支社において、認証鍵acx＾afyを用いてrandom を計算し、同じMAC値になる、即ち支社が各端末機器と同じ認証鍵acx＾afyを持っていることで認証OKを確認できる。
【０１１７】
最後に、E (dsxyz， は、これらをデータ鍵dsxyzで暗号化することを示す。
【０１１８】
図６のシーケンス２−１０−１が示すように、支社は、端末機器が支社に自分（端末機器）を認証してもらう実行コマンドｎi を演算した認証結果を、次の実行式を用いて端末機器へ送り返す。
【０１１９】
auth_ok ⇒ [auth_mlti_res] || E (dsxyz， [auth_ok] || i ) 
[auth_mlti_res]はレスポンスを示す。このまま[auth_mlti_res]以下をレスポンスとして端末機器へユニキャスト送信する。
【０１２０】
[auth_ok]は、支社において端末機器を認証した結果を示す。また i は、端末機器の固有番号を示す。最後に、E (dsxyz， は、これらをデータ鍵dsxyzで暗号化することを示す。
【０１２１】
（３）本社における支社の認証と集約
図６のシーケンス２−１１が示すように、本社は、各支社単位で集約した端末機器の認証情報を、次の実行式をレスポンスとして受け取る。
【０１２２】
[auth_mlti_res] || E (dfxy， ｐi || Ackxy０ ) 
但し、ｐi = random || MAC (MAC(acx, random ) 
Ackxy０は、前述した式（５）で説明した通りである。
【０１２３】
[auth_mlti_res]はレスポンスを示す。このまま[auth_mlti_res]以下をレスポンスとして本社へユニキャスト送信する。
【０１２４】
ｐi は、支社が本社に自分（支社）を認証してもらう実行コマンドを示す。本社において、認証鍵acxを用いてrandom を計算し、同じMAC値になる、即ち本社が各支社と同じ認証鍵acxを持っていることで認証OKを確認できる。
【０１２５】
最後に、E (dfxy， は、これらをデータ鍵dfxyで暗号化することを示す。
【０１２６】
図６のシーケンス２−１１−１が示すように、本社は、支社が本社に自分（支社）を認証してもらう実行コマンドｐi を演算した認証結果を、次の実行式を用いて支社へ送り返す。
【０１２７】
[auth_mlti_res] || E (dfxy, [auth_ok] || IDy ) 
[auth_mlti_res]はレスポンスを示す。このまま[auth_mlti_res]以下をレスポンスとして支社へユニキャスト送信する。
【０１２８】
[auth_ok]は、本社において支社を認証した結果を示す。またIDy は、認証した支社の属性を示す。最後に、E (dfxy， は、これらをデータ鍵dfxyで暗号化することを示す。
【０１２９】
（４）センターにおける本社の認証と検証
図６のシーケンス２−１２が示すように、センターは、各本社単位で集約した端末機器の認証情報を、次の実行式をレスポンスとして受け取る。
【０１３０】
[auth_mlti_res] || E (dcx, ｑi ||Ａｃｋx００ ) 
但し、ｑi = random || MAC (acx＾af０＾as０， random ) 
[auth_mlti_res]はレスポンスを示す。このまま[auth_mlti_res]以下をレスポンスとしてセンターへユニキャスト送信する。
【０１３１】
ｑi は、本社がセンターに自分（本社）を認証してもらう実行コマンドを示す。センターにおいて、認証鍵acx＾af０＾as０を用いてrandom を計算し、同じMAC値になる、即ちセンターが各本社と同じ認証鍵acx＾af０＾as０を持っていることで認証OKを確認できる。最後に、E (dcx， は、これらをデータ鍵dcxで暗号化することを示す。
【０１３２】
図６のシーケンス２−１２−１が示すように、センターは、本社がセンターに自分（本社）を認証してもらう実行コマンドｑi を演算した認証結果を、次の実行式を用いて本社へ送り返す。
【０１３３】
[auth_mlti_res] || E (dcx, [auth_ok] || IDx ) 
[auth_mlti_res]はレスポンスを示す。このまま[auth_mlti_res]以下をレスポンスとして本社へユニキャスト送信する。
【０１３４】
[auth_ok]は、センターにおいて本社を認証した結果を示す。またIDx は、認証した本社の属性を示す。最後に、E (dcx， は、これらをデータ鍵dcxで暗号化することを示す。
【０１３５】
以上説明したように、端末機器やサーバがそれら属性に基づいた鍵の構成を使って暗号化した通信メッセージをマルチキャストで実現する暗号鍵管理方法を備えたネットワークシステムを具体的に実現する際、本実施例は、以下のような効果を奏する。
【０１３６】
第１の効果は、認証情報集約部１−１−２−１や１−１−４−１を構成要素として有していることにより、当該ネットワークへ設置された端末機器の認証情報に含まれる情報量を削減しながらセンターへ集約することができる。
【０１３７】
第２の効果は、センターには認証検証部１−１−１−１が設けられていることにより、センターで受信する認証情報を最小限に抑えながら、送付されてきた端末機器の認証情報の真偽性について認証鍵を用いて判断できる。
【０１３８】
第３の効果は、認証を実行したセンターにおいて、認証を実行する対象の端末機器の属性値と固有番号は既知であることから、認証結果を組み合わせの範囲で想定し、更に認証鍵で組み合わせ分のＭＡＣ演算値を算出しておくことができる。これにより、集約した認証情報の認証結果の内容を個々にサーバへ検証記憶しなくても、あらかじめ用意した組み合わせ分のＭＡＣ演算値とセンターで受信した認証情報のＭＡＣ演算値を比較すれば、短い時間で認証出力を知ることができ、更に受信した認証結果をサーバへ記憶する時間を省略できる。
【０１３９】
［第２の実施例］
図７をも参照して、本発明の第２の実施例について説明する。第２の実施例のシーケンスでは、センターからではなく本社からの認証を例に取り上げる。従って、第２の実施例のシーケンスは次の３つに分かれている。
【０１４０】
（１）各属性と端末機器における属性IDx， IDy， IDzの認証
（２）支社における端末機器の認証と集約
（３）本社における支社の認証と検証
上記（１）〜（３）のそれぞれについて説明する。
【０１４１】
（１）各属性と端末機器における属性IDx， IDy， IDzの認証
図７のシーケンス３−１、３−４が示すように、各属性およびすべての端末機器に対し、本社の属性を示すIDｘの認証を次の実行式で実行する。なお、第２の実施例において認証の命令を発信するのは［本社］である。
【０１４２】
[auth_hdq_mlti_x] || ( random || MAC(acx， random ) 
[auth_hdq_mlti_x]は実行コマンドを示す。randomは乱数を示す。このまま[auth_hdq_mlti_x]以下を暗号化せずにマルチキャスト送信を行う。
【０１４３】
[auth_hdq_mlti_x]以下は、送信先の属性IDxが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDxの認証鍵acxで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDxがセンターと同じ認証鍵acxを持っていることを確認する。
【０１４４】
次に、図７のシーケンス３−２、３−５が示すように、各属性およびすべての端末機器に対し、支社の属性を示すIDｙの認証を次の実行式で実行する。
【０１４５】
[auth_hdq_mlti_y] || ( random || MAC(aｆｙ， random ) 
[auth_hdq_mlti_y]は実行コマンドを示す。このまま[auth_hdq_mlti_y]以下を暗号化せずにマルチキャスト送信を行う。
【０１４６】
[auth_hdq_mlti_y]以下は、送信先の属性IDyが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDyの認証鍵afyで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDyがセンターと同じ認証鍵afyを持っていることを確認する。
【０１４７】
次に、図７のシーケンス３−３、３−６が示すように、各属性およびすべての端末機器に対し、グループの属性を示すIDzの認証を次の実行式で実行する。
【０１４８】
[auth_hdq_mlti_z] || ( random || MAC(asz， random ) 
[auth_hdq_mlti_z]は実行コマンドを示す。このまま[auth_hdq_mlti_z]以下を暗号化せずにマルチキャスト送信を行う。
【０１４９】
[auth_hdq_mlti_z]以下は、送信先の属性IDzが正しいか否かを認証するための実行式を示す。即ち、端末機器や各属性において、randomのMAC値を属性IDzの認証鍵aszで計算し、同じMAC値になる、即ち各端末機器や属性における属性IDzがセンターと同じ認証鍵aszを持っていることを確認する。
【０１５０】
（２）支社における端末機器の認証と集約
図７のシーケンス３−７が示すように、端末機器において本社からの認証がＯＫであった場合、支社は次の実行式をレスポンスとして受け取る。
【０１５１】
[auth_hdq_mlti_res] || E (dsxyz， ｎi || Acki ) 
但し、ｎi = random || MAC ( acx＾afy ， random ) 
Acki は、前述した式（０）で説明した通りであり、本社における端末機器の認証検証で用いられる。[auth_hdq_mlti_res]はレスポンスを示す。＾はacxとafyの排他的論理和を示す。このまま[auth_hdq_mlti_res]以下をレスポンスとして支社へユニキャスト送信する。
【０１５２】
ｎi は、端末機器が支社に自分（端末機器）を認証してもらう実行コマンドを示す。支社において、認証鍵acx＾afyを用いてrandom を計算し、同じMAC値になる、即ち支社が各端末機器と同じ認証鍵acx＾afyを持っていることで認証OKを確認できる。最後に、E (dsxyz， は、これらをデータ鍵dsxyzで暗号化することを示す。
【０１５３】
図７のシーケンス３−７−１が示すように、支社は、端末機器が支社に自分（端末機器）を認証してもらう実行コマンドｎi を演算した認証結果を、次の実行式を用いて端末機器へ送り返す。
【０１５４】
auth_ok ⇒ [auth_hdq_mlti_res] || E (dsxyz， [auth_ok] || i ) 
[auth_hdq_mlti_res]はレスポンスを示す。このまま[auth_hdq_mlti_res]以下をレスポンスとして端末機器へユニキャスト送信する。
【０１５５】
[auth_ok]は、支社において端末機器を認証した結果を示す。また i は、端末機器の固有番号を示す。最後に、E (dsxyz， は、これらをデータ鍵dsxyzで暗号化することを示す。
【０１５６】
（３）本社における支社の認証と集約
図７のシーケンス３−８が示すように、本社は、各支社単位で集約した端末機器の認証情報を、次の実行式をレスポンスとして受け取る。
【０１５７】
[auth_hdq_mlti_res] || E (dfxy, ｐi || Ackxy０ ) 
但し、ｐi = random || MAC (MAC(acx, random ) 
Ackxy０は、前述した式（５）で説明した通りである。
【０１５８】
[auth_hdq_mlti_res]はレスポンスを示す。このまま[auth_hdq_mlti_res]以下をレスポンスとして本社へユニキャスト送信する。
【０１５９】
ｐi は、支社が本社に自分（支社）を認証してもらう実行コマンドを示す。本社において、認証鍵acxを用いてrandom を計算し、同じMAC値になる、即ち本社が各支社と同じ認証鍵acxを持っていることで認証OKを確認できる。最後に、E (dfxy， は、これらをデータ鍵dfxyで暗号化することを示す。
【０１６０】
図７のシーケンス３−８−１が示すように、本社は、支社が本社に自分（支社）を認証してもらう実行コマンドｐi を演算した認証結果を、次の実行式を用いて支社へ送り返す。
【０１６１】
[auth_hdq_mlti_res] || E (dfxy， [auth_ok] || IDy ) 
[auth_hdq_mlti_res]はレスポンスを示す。このまま[auth_hdq_mlti_res]以下をレスポンスとして支社へユニキャスト送信する。
【０１６２】
[auth_ok]は、本社において支社を認証した結果を示す。またIDy は、認証した支社の属性を示す。最後に、E (dfxy， は、これらをデータ鍵dfxyで暗号化することを示す。
【０１６３】
ここで、本社で得た認証情報Ackxy０を元にMAC演算を行った結果が、本社で受信した認証情報のＭＡＣ演算値と同じにならなかった場合、様々な原因は考えられるが、その中にMAC演算値の算出後にMiを改ざんした可能性があることを推測できる。
【０１６４】
そこで、Ackiつまり“｛MAC(Ki, Mi)｝ || Mi“の改ざんパターンを全て想定したHash演算値ｈ [ || {MAC(Ki, Mi)} ] をあらかじめ作成しておくことにより、どこのビット、即ちどこの端末機器のMiに改ざんがあるかを突き止めることができる。例えば、Hash演算の結果、Ackxy０が正しい演算値にならずにAckxy０(err２) になった場合、次のMi に改ざんがある全パターンの計算値を求めておき、演算値の検索をおこなう。なお、次式中の#印付きのMは改ざんした数値を示す。
【０１６５】
Ackxy０(err１) = ｈ [ {MAC(K１， M１)} || {MAC(K２， M２)} || {MAC(K３， M３)} || ・・・ || {MAC(Kn， Mn)}] || #M１ || M２ || M３ || ・・・ || Mn 
Ackxy０(err２) = ｈ [ {MAC(K１， M１)} || {MAC(K２， M２)} || {MAC(K３， M３)} || ・・・ || {MAC(Kn， Mn)}] || M１ || #M２ || M３ || ・・・ || Mn 
Ackxy０(err３) = ｈ [ {MAC(K１， M１)} || {MAC(K２， M２)} || {MAC(K３， M３)} || ・・・ || {MAC(Kn， Mn)}] || M１ || M２ || #M３ || ・・・ || Mn 
： ： ：
Ackxy０(errm) = ｈ [ {MAC(K１， M１)} || {MAC(K２， M２)} || {MAC(K３， M３)} || ・・・ || {MAC(Kn， Mn)}] || M１ || M２ || M３ || ・・・ || #Mn 
【０１６６】
但し、Miの改ざんは常に１つとは限らない。
【０１６７】
これらの計算結果の中にAckxy０(err２) と同じになるものを検索すれば、原因の端末機器を突き止めることができる。この例では#M２の端末機器ということになる。
【０１６８】
以上、本発明を、複数の実施例を参照して説明したが、本発明は上記実施例に限定されるものではない。本発明の構成や詳細には、請求項に記載された本発明の精神や範囲内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１６９】
１−１−１    センターサーバ
１−１−２、１−１−３    本社サーバ 
１−１−４〜１−１−７    支社サーバ
１−１−８〜１−１−１５    グループサーバ
１−１−１−１    認証検証部
１−１−２−１、１−１−４−１    認証情報集約部
【図１】
2010219908.tif 000003
【図２】
2010219908.tif 000004
【図３】
2010219908.tif 000005
【図４】
2010219908.tif 000006
【図５】
2010219908.tif 000007
【図６】
2010219908.tif 000008
【図７】
2010219908.tif 000009
【図８】
2010219908.tif 000010