説明

認証システム、それに用いる制御装置、認証方法および認証用プログラム

【課題】ネットワーク上の不特定多数の制御装置への安全なアクセスを、該制御装置でユーザ識別子やパスワードなどのユーザ情報を管理することなく可能にする。
【解決手段】アクセス元となる制御端末と、アクセス先となる1つ以上の制御装置と、少なくとも前記制御端末と前記制御装置との間で行われる認証に必要な情報を保持する認証情報管理装置とを備え、前記制御装置は、前記制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う認証手段と、前記認証において検証者側として必要な情報を、前記認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する認証情報取得手段とを有することを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システム、それに用いる制御装置、認証方法、および認証用プログラムに関する。
【背景技術】
【0002】
複数のコンピュータからなるコンピュータシステムにおいて、ユーザ認証のためのユーザ情報の管理が重要な課題となっている。この問題を解決するために、シングルサインオンという技術が存在する。
【0003】
シングルサインオン技術とは、認証を集中的に行うサーバコンピュータで一度ユーザ認証を受けると、そのシングルサインオンに対応したコンピュータ上で新たに認証を必要とすることなく、そのコンピュータを利用することを可能とする技術である。この技術によってユーザ識別子とパスワードなどのユーザ情報を一元化することができる。管理者側では、これらのユーザ情報を管理するコストを削減することができる。また、利用者側では、一度認証に成功すれば、シングルサインオンに対応した複数のコンピュータでの認証が不要になる。このように、シングルサインオン技術の導入は、管理者および利用者の双方にとって負担を軽減することができるなど大きな利点がある。
【0004】
シングルサインオンを実現するための方法の一例が、特許文献1に記載されている。特許文献1に記載されているシングルサインオン実現方法では、特定の認証方式やセッション維持方式に対応したシングルサインオンモジュールを予め作成し、適用可能な通信パターンとともにシングルサインオンサーバに登録する。シングルサインオンサーバは、情報システムログインの通信ログを取得し、上記通信パターンと照らし合わせ、適用可能なシングルサインオンモジュールを選択する。そして、選択されたシングルサインオンモジュールを用いてシングルサインオンを行う。
【0005】
ところで、証明者のもつ秘密情報を一切他にもらさずに、証明者が秘密情報をもっているということを検証者に伝えることができるゼロ知識証明という証明技術がある。ゼロ知識証明を用いた認証法では、検証者は証明者のもつ秘密情報を一切所持せずに認証を行うことができるので、不特定多数の利用者との間で認証が行えるという利点がある。
【0006】
このゼロ知識証明を利用した認証システムの一例が、特許文献2の背景技術において開示されている。また、特許文献2には、センタの秘密情報によって生成される法(具体的には、合成数N)の変更に係る秘密情報の変更を安全に行うための秘密情報変更方法が記載されている。
【0007】
【特許文献1】特開2006−331044号公報
【特許文献2】特開平06−150082号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
第1の問題点は、シングルサインオン技術の多くが、完全なTCP/IPプロトコルスタックの機能や通信路の暗号化などのために十分な計算リソースを必要とする点である。近年の計算機能力の向上を考えると、これらの問題は大きな問題ではないように感じるかもしれないが、十分な計算リソースを保持していない組み込み機器や障害のために完全なTCP/IPプロトコルスタックの機能を利用できなくなったコンピュータなどの場合、一切のユーザ認証を行うことができなくなる。このように、組み込み機器や障害が発生したコンピュータなど様々な環境に対応可能にした上で、複数のコンピュータのユーザ情報の管理のコストを削減することができる汎用的な認証システムを実現することは困難であった。
【0009】
例えば、特許文献1に記載されたシングルサインオン技術をはじめとする多くのシングルサインオン技術では、HTTPサーバやLDAPサーバをベースとするなど様々な方式でシングルサインオンを実現している。このようなシングルサインオン技術を利用した認証システムでは、TCP/IPプロトコルスタックの上位層を利用したアプリケーションを必要とする。例えば、Webベースのシングルサインオン技術を利用する場合、サーバコンピュータ側(認証システムにおける検証者側)でHTTPサーバを実装する必要がある。また、例えば、LDAPベースのシングルサインオン技術を利用する場合、サーバコンピュータ側でLDAPサーバと通信ができるLDAPクライアントの実装が必要となる。このため、十分な計算リソースをもっていないコンピュータやTCP/IPプロトコルスタックの機能が一部だけ実装されているコンピュータではシングルサインオンによる認証を利用できない可能性がある。
【0010】
第2の問題点は、サーバコンピュータ側で障害が発生し、一部の機能が利用できなくなった際に、シングルサインオンによる認証を利用できなくなる点である。LDAPやHTTPなどのアプリケーションでは、TCP/IPプロトコルスタックの上位層の機能を利用しているため、これらの機能の一部が利用できなくなると、例え、TCP/IPプロトコルスタックの下位層での通信が利用できても、LDAPやHTTPを利用することができずに、シングルサインオンによる認証ができなくなる。
【0011】
なお、特許文献2に記載されている秘密情報変更方法は、クライアントコンピュータ側の管理を容易にすることを目的としており、サーバコンピュータ側の管理を容易にすることについては特に考慮されていない。例えば、特許文献2に記載されている秘密情報変更方法では、変更した秘密情報に対応する認証用データを検証者側に通知する際に、デジタル署名を用いてその認証用データの正当性を保証している。このため、サーバコンピュータ側にゼロ知識証明を用いた認証機能とデジタル署名を用いた認証機能の2種類の機能の実装が必要となる。また、デジタル署名を用いた認証では、その署名が本当に認証情報管理サーバのものであるかを証明する必要があるため、サーバコンピュータ側で認証情報管理サーバの情報を保持する必要があり、設定や更新といった管理が必要となる。
【0012】
そこで、本発明は、ネットワーク上の不特定多数の制御装置への安全なアクセスを、該制御装置でユーザ識別子やパスワードなどのユーザ情報を管理することなく可能にする認証システム、認証方法、認証用プログラムを提供することを目的とする。
【課題を解決するための手段】
【0013】
本発明による認証システムは、ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムであって、アクセス元となる制御端末と、アクセス先となる1つ以上の制御装置と、少なくとも前記制御端末と前記制御装置との間で行われる認証に必要な情報を保持する認証情報管理装置とを備え、前記制御装置は、前記制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う認証手段と、前記認証において検証者側として必要な情報を、前記認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する認証情報取得手段とを有することを特徴とする。
【0014】
また、本発明による制御装置は、ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムに適用される制御装置であって、制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う認証手段と、前記認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する認証情報取得手段とを備えたことを特徴とする。
【0015】
また、本発明による認証方法は、ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証方法であって、制御装置が、アクセス元となった制御端末との間で行うゼロ知識証明プロトコルを利用した認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得することを特徴とする。
【0016】
また、本発明による認証用プログラムは、ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムにおける制御装置に適用される認証用プログラムであって、コンピュータに、前記制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う処理、および前記認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該コンピュータが現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する処理を実行させることを特徴とする。
【発明の効果】
【0017】
本発明によれば、ネットワーク上の不特定多数の制御装置への安全なアクセスが、該制御装置でユーザ識別子やパスワードなどのユーザ情報を管理することなく可能となる。なお、ここで”安全なアクセス”とは、正当な権限を有するもののみに許可されるアクセスをいう。
【発明を実施するための最良の形態】
【0018】
以下、本発明の実施形態を図面を参照して説明する。図1は、本発明による認証システムの構成例を示すブロック図である。図1に示す認証システムは、アクセス元となる制御端末3と、アクセス先となる1つ以上の制御装置1と、認証情報管理装置2とを備える。
【0019】
制御装置1と認証情報管理装置2、認証情報管理装置2と制御端末3、制御装置1と制御端末3とは、それぞれ通信ネットワークを介して接続されている。なお、制御端末3は、本システムのユーザ(例えば、アクセス先となる制御装置1の管理者)が操作するネットワークアクセス機能を有した端末である。また、認証情報管理装置2は、少なくとも前記制御端末と前記制御装置との間で行われる認証に必要な情報を保持しているサーバ装置である。
【0020】
また、制御装置1は、認証情報取得手段11と、認証手段12とを有する。認証情報取得手段11は、認証手段12が制御端末3との間で行う認証において検証者側として必要な情報を、認証情報管理装置2から取得する。認証手段12は、制御端末3からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う。
【0021】
本発明では、認証情報管理装置2が制御装置1と制御端末3との間の認証に必要な情報を一括で管理する。その上で、認証情報取得手段11が、認証手段12が制御端末3との間でゼロ知識証明プロトコルを利用した認証を行うことを前提に、その認証において検証者側として必要な情報を、盗聴されてもよい形式で取得する。
【0022】
具体的には、認証情報取得手段11は、制御端末3との認証において検証者側として必要な情報を、認証情報管理装置2から、当該制御装置1が現在保持している情報を用いたゼロ知識証明プロトコルで認証情報管理装置2を認証した上で取得する。
【0023】
このような構成によって、各制御装置1で制御端末3との認証に必要な情報を管理する必要をなくし、かつ制御端末との間で通信路の暗号化などのセキュリティを考慮せずに認証を行うことができる。
【0024】
また、認証情報取得手段11は、認証情報管理装置2から認証に必要な情報だけでなく、正当な制御端末の情報をリスト化した制御端末リストを取得するようにしてもよい。そのような場合には、認証手段12は、制御端末リストに基づきアクセス元である制御端末3を認証した上で、ゼロ知識証明プロトコルを利用した認証を行うことも可能である。
【0025】
また、図2に示すように、認証情報管理装置2が、制御装置管理手段21と、制御装置管理手段22とを有していてもよい。図2は、本発明による認証システムの他の構成例を示すブロック図である。
【0026】
制御装置管理手段21は、当該認証情報管理装置2が属しているネットワーク上に存在する本発明が適用された制御装置1を検出して、検出した該制御装置1に当該認証情報管理装置1で現在保持している認証に必要な情報を通知する。また、その際に、検出済みの制御装置1の情報をリスト化して保持するようにしてもよい。
【0027】
制御端末管理手段22は、制御端末3からの登録要求に対して所定の方法により認証を行った上で、該制御端末3に、当該認証情報管理装置1で現在保持している認証に必要な情報を通知する。また、その際に、登録済みの制御端末3の情報をリスト化して保持するようにしてもよい。
【0028】
また、複数の制御端末3に対して共通の認証情報を用いる場合には、制御端末管理手段22は、制御端末3からの削除要求に対して所定の方法により認証を行った上で、認証に必要な情報を更新するようにしてもよい。また、制御装置管理手段21では、認証に必要な情報が更新されたことを受けて、その旨を検出済みの制御装置1に通知するようにしてもよい。
【0029】
以下、より具体的な構成について説明する。図3は、本実施形態による認証システムのより具体的な構成例を示すブロック図である。図3に示す認証システムは、認証情報管理サーバ100と、サーバコンピュータ200群と、クライアントコンピュータ300とを備える。なお、認証情報管理サーバ100と、サーバコンピュータ200群と、クライアントコンピュータ300とは、それぞれ通信路400を介して接続されている。
【0030】
なお、図3に示す例では、サーバコンピュータ200群に含まれるサーバコンピュータ200の例としてサーバコンピュータ200−1,200−2を示しているが、サーバコンピュータ200の数は1つ以上であればよい。また、1つのクライアントコンピュータ300を示しているが、クライアントコンピュータ300の数は、ユーザ数やユーザが使用する端末の数に応じていくつであってもよい。
【0031】
本例では、通信路400としてTCP/IPプロトコルを利用したネットワークを用いる例を示す。また、証明法としてゼロ知識証明プロトコルの一つであるフィアットシャミア法を用いる例を示す。
【0032】
図3に示すように、認証情報管理サーバ100は、認証情報生成手段110と、コマンド受信者管理手段120と、コマンド送信者管理手段130とを備える。また、認証情報管理サーバ100は、法d101と、秘密情報d102と、公開情報d103と、コマンド受信者リストd104と、コマンド送信者リストd105とを保持するための情報保持手段140を備える。
【0033】
また、サーバコンピュータ200は、コマンド受信モジュール210を備える。また、クライアントコンピュータ300は、コマンド送信モジュール310を備える。なお、コマンド受信モジュール210、コマンド送信モジュール310は、例えば、予め提供されるプログラムモジュールをダウンロードまたはインストールすることにより実装されることが望ましい。以下、「コマンド受信モジュール210が〜する」といった表現を用いた場合には、具体的には、コマンド受信モジュール210がインストールされたサーバコンピュータ200が備えるCPUが、コマンド受信モジュール210に従って動作することを意味する。同様に、「コマンド送信モジュール310が〜する」といった表現を用いた場合には、具体的には、コマンド送信モジュール310がインストールされたクライアントコンピュータ300が備えるCPUが、コマンド送信モジュール310に従って動作することを意味する。
【0034】
法d101は、本システムにおけるゼロ知識証明を実現するために用いる問題(計算式)を規定するための情報である。本実施形態では、法d101として、2つの素数m,nの積を用いる。法d101は、必要に応じてサーバコンピュータ200およびクライアントコンピュータ300に公開される。一方、法d101の因数である素数m,nは秘密にされる。なお、法d101は、その因数である素数m,nの設定および変更に応じて生成されるようになっていればよい。
【0035】
秘密情報d102は、本システムにおけるゼロ知識証明を実現するために用いる問題を解くために用いられる情報であって、証明者側で秘密にされる情報である。また、公開情報d103は、本システムにおけるゼロ知識証明を実現するために用いる問題を解くために用いられる情報であって、秘密情報d102および法d101に基づき生成される情報である。なお、公開情報d103は、検証者側に公開される情報である。
【0036】
コマンド受信者リストd104は、本システムによる認証を利用してコマンド(所定のアクセス要求)を受信できるコマンド受信者側の制御装置(ここでは、制御装置管理モジュール210を有するサーバコンピュータ200)を示す情報の一覧である。コマンド受信者リストd104は、例えば、サーバコンピュータ200を識別できるIPアドレスやMACアドレスをリスト化した情報でよい。コマンド受信者リストd104は、クライアントコンピュータ300がコマンドを送信する認証情報管理サーバ100を選択するのに利用される。
【0037】
コマンド送信者リストd105は、現在登録されているコマンド送信者側の制御装置(ここでは、コマンド送信モジュール310を有するクライアントコンピュータ300)を示す情報の一覧である。コマンド送信者リストd105は、例えば、クライアントコンピュータ300を識別できるIPアドレスやMACアドレスをリスト化した情報でよい。コマンド送信者リストd105は、サーバコンピュータ200がクライアントコンピュータ300から送信されるコマンドを実行するかどうかを判断するのに利用される。
【0038】
認証情報生成手段110は、秘密情報d102および公開情報d103を生成および更新する。また、認証情報取得手段110は、法d101を生成、更新してもよい。秘密情報d102の桁数は、本システムのセキュリティの強度につながるためできる限り大きな数が望ましい。本実施形態では、秘密情報d102は、任意の数字を選ぶことによって生成し、公開情報d103は以下の式(1)を用いて生成する。なお、”a mod b”は、aをbで割った余り(剰余)を求める演算子を示している。
【0039】
公開情報d103=(秘密情報d102) (mod 法d101) ・・・式(1)
【0040】
コマンド受信者管理手段120は、認証情報管理サーバ100が属している通信路400上からコマンド受信モジュール210を備えているサーバコンピュータ200を検出し、コマンド受信者リストd104を生成および更新する。コマンド受信者管理手段120は、例えば、認証情報管理サーバ100が属している通信路400上に”検索”を表す所定のブロードキャストパケットを送出し、その応答パケットとして”存在”を表す所定のパケットが返ってきたか否かを判断し、返ってきた場合に、そのパケットの送信元の制御装置を、コマンド受信モジュール210を備えているサーバコンピュータ200として検出すればよい。そして、そのパケットで示される送信元の制御装置の識別子(IPアドレスやMACアドレス)をコマンド受信者リストd104に登録すればよい。
【0041】
なお、コマンド受信者管理手段120によって送出される検索”を表す所定のブロードキャストパケットは、本発明が適用されたサーバコンピュータ200が備えるコマンド受信モジュール210に受理されるよう定義づけられている。すなわち、コマンド受信者管理手段120は、”検索”を表す所定のブロードキャストパケットを送出し、その応答パケットとしてコマンド受信モジュール210によって送出される”存在”を表す所定のパケットを受信するか否かによって検出すればよい。
【0042】
このような検出処理を実行するタイミングは、通信路400上に本発明が適用されたサーバコンピュータ200が増減するかどうかで異なる。サーバコンピュータ200が増減しないのであれば、頻度は少なくてもよい。なお、1度だけでもよい。逆に、増減するのであれば検出処理を定期的に実施すればよい。そして、新たなサーバコンピュータ200が発見される度にコマンド受信者リストd104を更新すればよい。
【0043】
また、コマンド受信者管理手段120は、秘密情報d102やコマンド送信者リストd105が更新された場合に、コマンド受信者リストd104を利用して、本発明が適用されたサーバコンピュータ200に対しその旨(更新された旨)を通知する。
【0044】
コマンド受信者管理手段120は、例えば、コマンド受信者リストd104に登録されているIPアドレスやMACアドレスを利用して、本発明が適用されたサーバコンピュータ200に対して、更新されたコマンド送信者リストd105や秘密情報d102を送信する。なお、送信後は、サーバコンピュータ200から、当該認証情報管理サーバ100に対してゼロ知識証明プロトコルを利用した認証が要求されるので、コマンド受信者管理手段120は、要求に応じて認証処理を行う。なお、コマンド受信者管理手段120は、図2に示す制御装置管理手段21に相当する。
【0045】
コマンド送信者管理手段130は、コマンド送信者側の制御装置(ここでは、コマンド送信モジュール310を有するクライアントコンピュータ300)からの登録要求を待ち受けて、その登録要求に応じた処理を行う。コマンド送信者管理手段130は、例えば、ユーザ500からの操作によりクライアントコンピュータ300から登録要求を受け付けると、まず、そのクライアントコンピュータ300に対して認証を要求する。ここでの認証は、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。なお、ユーザ識別子やパスワードは、予め本システムの管理者が認証情報管理サーバ100に登録しておけばよい。認証に成功すると、コマンド送信者管理手段130は、そのクライアントコンピュータ300の情報をコマンド送信者リストd105に登録する。そして、コマンド送信者リストd105に登録したクライアントコンピュータ300に対して、秘密情報d102と、法d101と、コマンド受信者リストd104とを送信する。ここで、秘密情報d102を送信する際には、漏洩を防ぐために認証情報管理サーバ100とクライアントコンピュータ300との間の通信路400の暗号化が必要である。
【0046】
また、コマンド送信者管理手段130は、コマンド送信者リストd105に登録されているクライアントコンピュータ300からの削除要求を待ち受けて、その削除要求に応じた処理を行う。コマンド送信者管理手段130は、例えば、ユーザ500からの操作によりクライアントコンピュータ300からそのクライアントコンピュータ300の削除要求を受け付けると、まず、そのクライアントコンピュータ300に対して認証を要求する。ここでの認証は、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、コマンド送信者管理手段130は、そのクライアントコンピュータ300の情報をコマンド送信者リストd105から削除する。
【0047】
また、コマンド送信者管理手段130は、コマンド送信者リストd105からクライアントコンピュータ300の情報を削除すると、法d101と秘密情報d102と公開情報d103とを更新するよう認証情報生成手段110に要求する。法d101と秘密情報d102と公開情報d103とが更新されると、コマンド送信者管理手段130は、現在のコマンド送信者リストd105を利用して、他のクライアントコンピュータ300に対しその旨(更新された旨)を通知する。なお、コマンド受信者管理手段120にこれらの更新(コマンド送信者リストd105および秘密情報d102)を通知することにより、コマンド受信者管理手段120を介してサーバコンピュータ200に対してもその旨が通知される。結果、サーバコンピュータ200およびクライアントコンピュータ300へ法d101や秘密情報d102、公開情報d103の更新が反映され、削除されたクライアントコンピュータ300が利用していた情報を無効化できる。また、サーバコンピュータ200へコマンド送信者リストd105の更新も反映されるので、サーバコンピュータ200は、最新の情報に追従できる。
【0048】
また、コマンド送信者管理手段130は、コマンド送信者となるクライアントコンピュータ300からの更新要求を待ち受けて、その更新要求に応じた処理を行う。コマンド送信者管理手段130は、クライアントコンピュータ300を介してユーザ500から情報の更新要求を受け付けると、まず、そのクライアントコンピュータ300に対して認証を要求する。ここでの認証は、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、コマンド送信者管理手段130は、秘密情報d102と、法d101と、コマンド送信者リストd105とをそのクライアントコンピュータ300に送信する。ここで、秘密情報d102を送信する際には、漏洩を防ぐために認証情報管理サーバ100とクライアントコンピュータ300との間の通信路400の暗号化が必要である。なお、コマンド送信者管理手段130は、図2に示す制御端末管理手段22に相当する。
【0049】
クライアントコンピュータ300のコマンド送信モジュール310は、認証情報管理サーバ100に対して当該クライアントコンピュータ300の登録要求を行う。そして、登録要求の応答として、まず、認証情報管理サーバ100から認証の要求を受けると、要求に応じて認証処理を行う。例えば、コマンド送信モジュール310は、ユーザ500から入力される当該クライアントコンピュータ300が偽装されていないことを証明するための情報を送信する。ここでの認証は、既に説明したように、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、認証情報管理サーバ100から送信される法d101と秘密情報d102とコマンド受信者リストd104とを受信し、当該クライアントコンピュータ300が管理する法d301,秘密情報d302,コマンド受信者リストd303として保持する。なお、秘密情報d302は、外部へ公開せずにクライアントコンピュータ300内で厳密に管理される。
【0050】
また、コマンド送信モジュール310は、サーバコンピュータ200へコマンドを送信する。コマンド送信モジュール310は、例えば、ユーザ500からの操作に応じて、認証情報管理サーバ100から受信し保持しておいたコマンド受信者リストd303から、送信先とするサーバコンピュータ200を選び出し、そのサーバコンピュータ200へコマンドを送信する。サーバコンピュータ200へコマンドを送信すると、そのサーバコンピュータ200からゼロ知識証明プロトコルを利用した認証が要求されるので、コマンド送信モジュール310は、要求に応じて認証処理を行う。認証に成功すると、そのサーバコンピュータ200でコマンドが実行される。なお、利用できるコマンドは、サーバコンピュータ200のコマンド受信モジュール210の実装に依存する。
【0051】
また、コマンド送信モジュール310は、認証情報管理サーバ100に対して当該クライアントコンピュータ300の削除要求を行う。そして、削除要求の応答として、まず、認証情報管理サーバ100から認証の要求を受けると、要求に応じて認証処理を行う。例えば、コマンド送信モジュール310は、ユーザ500から入力される当該クライアントコンピュータ300が偽装されていないことを証明するための情報を送信する。ここでの認証は、既に説明したように、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すれば、当該クライアントコンピュータ300の情報が、認証情報管理サーバ100のコマンド送信者リストd105から削除される。
【0052】
また、コマンド送信モジュール310は、認証情報管理サーバ100に対して当該クライアントコンピュータ300の情報の更新要求を行う。そして、更新要求の応答として、まず、認証情報管理サーバ100から認証の要求を受けると、要求に応じて認証処理を行う。例えば、コマンド送信モジュール310は、ユーザ500から入力される当該クライアントコンピュータ300が偽装されていないことを証明するための情報を送信する。ここでの認証は、既に説明したように、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、認証情報管理サーバ100から送信される法d101と秘密情報d102とコマンド受信者リストd104とを受信し、当該クライアントコンピュータ300が管理する法d301,秘密情報d302,コマンド受信者リストd303を更新する。更新要求の送出は、ユーザ500からの任意のタイミングによる操作に応じて実施したり、コマンドを送信する前に実施したり、認証情報管理サーバ100からの更新通知を受けて実施したりするなど様々なタイミングが考えられる。
【0053】
サーバコンピュータ200のコマンド受信モジュール210は、大きく分けて、認証情報管理サーバ100からの検索への応答と、クライアントコンピュータ300から送られてくるコマンドの実行と、クライアントコンピュータ300からの通知による情報の更新の3つの機能をもつ。なお、コマンド受信モジュール210は、図1および図2に示す認証情報取得手段11の機能と認証手段12の機能を実装したモジュールである。
【0054】
コマンド受信モジュール210は、認証情報管理サーバ100からの検索に対する応答を行う。コマンド受信モジュール210は、認証情報管理サーバ100から”検索”を表す所定のブロードキャストパケットを受信すると、その応答パケットとして”存在”を表す所定のパケットを送出する。なお、コマンド受信モジュール210は、これまでに”存在”を表す所定のパケットを認証情報管理サーバ100に応答しているか否かを判断し、応答していない場合に、応答として”存在”を表すパケットを送出するようにしてもよい。また、コマンド受信モジュール210は、その後、必要に応じて認証情報管理サーバ100から送信される公開情報d103とコマンド送信者リストd105とを受信し、当該サーバコンピュータ200が管理する公開情報d301,コマンド送信者リストd302として保持する。
【0055】
また、コマンド受信モジュール210は、クライアントコンピュータ300からのコマンドを受信し、実行する。コマンド受信モジュール210は、クライアントコンピュータ300からのコマンドを受信すると、まず、そのクライアントコンピュータ300の情報がコマンド送信者リストd302に登録されているか否かを確認する。登録されていなければ、コマンドを破棄する。登録されている場合には、そのクライアントコンピュータ300に対してゼロ知識証明プロトコルを利用した認証を要求する。認証に成功すれば、コマンドを受理し、実行する。
【0056】
コマンド受信モジュール210は、送られてきたコマンドを解釈し、そのコマンドによって指示される処理を実行すればよい。コマンドの実体は、当該サーバコンピュータ200の環境に依存する。Linux(登録商標)を例にとると、出力するシステムログのログレベルの変更やシステムログの出力、マジックSysRQの実行、Linuxカーネルの状態情報の取得などが挙げられる。Linuxに限らず異なるOSであっても同じ操作を要求するのであれば、コマンドを抽象化し、異なるOSで構成されるサーバコンピュータ200群に対して1つのコマンドで同じ意味を持つ処理を実行させるようにしてもよい。例えば、システムログの出力は、それぞれのOSでコマンドの実装が異なっていても、ユーザ500が求める挙動は変わらないため、”システムログの出力”を指示する旨のコマンドを定義すればよい。
【0057】
また、コマンド受信モジュール210は、認証情報管理サーバ100からの情報の更新通知を待ち受けて、その更新通知に応じた処理を行う。コマンド受信モジュール210は、認証情報管理サーバ100から公開情報d103やコマンド送信者リストd105もしくはその両方を更新した旨の通知、および更新された情報を受け取ると、すぐには当該サーバコンピュータ200の情報を更新せずに、ゼロ知識証明プロトコルを利用した認証を認証情報管理サーバ100へ要求する。認証に成功すれば、信頼できる認証情報管理サーバ100からの更新通知であるとして、認証情報管理サーバ100から受け取った情報で、当該サーバコンピュータ200が管理している公開情報d201,コマンド送信者リストd202を更新する。
【0058】
次に、本実施形態の動作について説明する。図4は、本実施形態の認証システムの動作の一例を示すシーケンス図である。
【0059】
まず、認証情報管理サーバ100の認証情報生成手段110が自身の設定を行う(ステップS101)。例えば、認証情報生成手段110は、2つの素数を決定し、その2つの値を掛け合わせたものを法d101として生成する。続いて、任意の数字を選び出し、これを秘密情報d102とする。そして、法d101と秘密情報d102とを用いて公開情報d103を生成する。尚、公開情報d103の生成方法は、上述した式(1)を用いればよい。
【0060】
次に、認証情報管理サーバ100のコマンド受信者管理手段120が、当該認証情報管理サーバ100の属している通信路400上のサーバコンピュータ200を検索する(ステップS102)。コマンド受信者管理手段120は、例えば、”検索”を表すブロードキャストパケットを、当該認証情報管理サーバ100が属している通信路400上に送出し、その応答パケットとして送出される”存在”を表すパケットを待ち受ける。
【0061】
サーバコンピュータ200では、コマンド受信モジュール210が、認証情報管理サーバ100からの検索に対する応答を行う(ステップS103)。サーバコンピュータ200のコマンド受信モジュール210は、例えば、認証情報管理サーバ100から”検索”を表すブロードキャストパケットを受信すると、その応答パケットとして”存在”を表すパケットを送出する。
【0062】
認証情報管理サーバ100のコマンド受信者管理手段120は、応答パケットを受信することにより発見されたサーバコンピュータ200に対して、公開情報d103とコマンド送信者リストd105とを送信する(ステップS104)。なお、送信先となったサーバコンピュータ200では、受信した公開情報d103とコマンド送信者リストd105とを、公開情報d201、コマンド送信者リストd202として保持する。
【0063】
また、コマンド受信者管理手段120は、新しく発見したサーバコンピュータ200の情報をコマンド受信者リストd104に登録する。ここで、コマンド送信者リストd105にクライアントコンピュータ300の情報が登録されている場合には、そのクライアントコンピュータ300にコマンド送信者リストd105が更新された旨を通知すればよい。
【0064】
また、クライアントコンピュータ300のコマンド送信モジュール310は、システム管理者からの操作に応じて、認証情報管理サーバ100に対して、当該クライアントコンピュータ300の登録要求を行う(ステップS105)。なお、登録要求を受理する際には、認証情報管理サーバ100とクライアントコンピュータ300との間でユーザ認証を行う(ステップS106)。ここでの認証は、既に説明したように、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、認証情報管理サーバ100のコマンド送信者管理手段130は、その登録要求を受理し、要求元のクライアントコンピュータ300の情報をコマンド送信者リストd105に登録する。
【0065】
続いて、コマンド送信者管理手段130は、登録したクライアントコンピュータ300へ、コマンド受信者リストd104と、証明者用の認証情報としての法d101および秘密情報d102とを送信する(ステップS107)。なお、送信先となったクライアントコンピュータ300では、受信したコマンド受信者リストd104、法d101、秘密情報d102とを、コマンド受信者リストd303、法d301、秘密情報d302として保持する。
【0066】
また、コマンド送信者管理手段130は、コマンド送信者リストd105を更新したことをうけて、コマンド受信者リストd104に登録されているサーバコンピュータ200に対して、コマンドを送信してくるクライアントコンピュータ300が新しく追加されたことを通知する(ステップS108)。この通知を受けると、各サーバコンピュータ200のコマンド受信モジュール210は、認証情報管理サーバ100へゼロ知識証明を使用した認証を認証情報管理サーバ100に対して要求する(ステップS109)。この認証に成功すれば、コマンド受信モジュール210が、認証情報管理サーバ100から送られてくるコマンド送信者リストd105を、コマンド送信者リストd202として保持する。なお、このとき併せて、検証者用の認証情報として公開情報d103を送信するようにしてもよい。送信された公開情報d103は、サーバコンピュータ200で公開情報d201として保持される。
【0067】
認証情報管理サーバ100への登録が完了した後、クライアントコンピュータ300のコマンド送信モジュール310は、例えば、システム管理者からのコマンド入力操作に応じて、指定されたサーバコンピュータ200に対してコマンドを発行する(ステップS110)。ここで、指定できるサーバコンピュータ200は、当該クライアントコンピュータ300で保持しているコマンド受信者リストd302に登録されているサーバコンピュータ200とする。なお、コマンド送信モジュール310は、サーバコンピュータ200に対してコマンドを発行する前に、認証情報管理サーバ100に、当該クライアントコンピュータ300が保持している情報(秘密情報d302や法d301やコマンド受信者リストd303)が最新のものであるかを認証情報管理サーバ100に問い合わせ、更新する処理を行うようにしてもよい。
【0068】
なお、コマンドを受理する際には、発行元のクライアントコンピュータ300とサーバコンピュータ200との間でユーザ認証を行う(ステップS111)。なお、ユーザ認証は、既に説明したように、クライアントコンピュータ300が保持する認証情報を共有しなくても済む、ゼロ知識証明プロトコルを利用して行う。認証に成功すると、サーバコンピュータ200のコマンド受信モジュール210は、発行されたコマンドを実行する(ステップS112)。
【0069】
図5は、コマンド発行に係る一連の処理フローの例を示すフローチャートである。図5に示すように、まず、クライアントコンピュータ300のコマンド送信モジュール310は、まず、当該クライアントコンピュータ300で保持している秘密情報d302と法d301とコマンド受信者リストd303とが最新のものであるかを問い合わせ、必要に応じて更新する(ステップS201)。最新の情報に更新されると、コマンド送信モジュール310は、コマンド受信者リストd303から選ばれたサーバコンピュータ200に対してコマンドを送信する(ステップS201)。なお、ステップS201の処理は、図4におけるステップS108の動作に相当する。
【0070】
クライアントコンピュータ300からコマンドを受け取ったサーバコンピュータ200のコマンド受信モジュール210は、当該サーバコンピュータ200が保持しているコマンド送信者リストd302に発行元のクライアントコンピュータ300の情報が登録されているか否かを検証する(ステップS211)。検証に成功すれば、すなわち、コマンド送信者リストd302に発行元のクライアントコンピュータ300の情報が登録されていれば次の処理に進み、そうでなければコマンド発行に係る処理を終了する(ステップS212)。
【0071】
次に、コマンド受信モジュール210は、発行元のクライアントコンピュータ300が偽装されていないことを確認するために、発行元のクライアントコンピュータ300に対してゼロ知識証明プロトコルを利用した認証を要求する(ステップS213)。この認証が成功し、クライアントコンピュータ300が偽装されていないことを確認できれば次の処理に進み、そうでなければ発行されたコマンドを破棄し、処理を終了する(ステップS214)。ここまでの処理の後、コマンド受信モジュール210は、発行されたコマンドを実行する(ステップS215)。
【0072】
また、クライアントコンピュータ300のコマンド送信モジュール310は、例えば、システム管理者からの削除操作に応じて、認証情報管理サーバ100に対して、当該クライアントコンピュータ300の削除要求を行う(図4のステップS113)。なお、削除要求を受理する際には、認証情報管理サーバ100とクライアントコンピュータ300との間でユーザ認証を行う(ステップS114)。ここでの認証は、既に説明したように、ユーザ識別子とパスワード等を用いたユーザ認証でも暗号化認証でもよい。認証に成功すると、認証情報管理サーバ100のコマンド送信者管理手段130は、その削除要求を受理し、要求元のクライアントコンピュータ300の情報をコマンド送信者リストd105から削除する。これにあわせて、認証情報管理サーバ100の認証情報生成手段110が、法d101と秘密情報d102とを更新する。また、更新した法d101と秘密情報d102から新たな公開情報d103を生成する。これは、削除されたクライアントコンピュータ300が利用していた情報を無効化するためである。
【0073】
続いて、コマンド送信者管理手段130は、コマンド送信者リストd105および公開情報d103を更新したことをうけて、コマンド受信者リストd104に登録されているサーバコンピュータ200に対して、コマンド送信者リストd105および公開情報d103が更新されたことを通知する(ステップS115)。なお、以降の更新通知に係る処理は、クライアントコンピュータ300の登録要求時のステップS108以降の処理と同様でよい。なお、公開情報d103も更新されていることから、認証成功後には、コマンド送信者リストd105と公開情報d103とを各サーバコンピュータ200に送信するようにする。結果、コマンド受信者リストd104に登録されている各サーバコンピュータ200には、更新後のコマンド送信者リストd105と公開情報d103とが、コマンド送信者リストd202、公開情報d201として保持されることになる。
【0074】
次に、ゼロ知識証明プロトコルを利用した認証処理について説明する。図6は、本実施形態におけるゼロ知識証明プロトコルを利用した認証処理の処理フローの一例を示すフローチャートである。本実施形態では、ゼロ知識証明プロトコルを利用した認証は、認証情報管理サーバ100(証明者側)とサーバコンピュータ200(検証者側)との間で、サーバコンピュータ200が持つ情報を更新する際、およびクライアントコンピュータ300(証明者側)とサーバコンピュータ200(検証者側)との間で、発行されたコマンドを受理する際に利用される。
【0075】
ゼロ知識証明プロトコルを利用した認証を要求されると、まず、プロトコル証明者側の制御装置(例えば、認証情報管理サーバ100やクライアントコンピュータ300)は、乱数rを生成し、その乱数rと、自身が認識している法Lを元に、以下の式(2)を用いてXを生成し、そのXを検証者側の制御装置(本例では、サーバコンピュータ200)に送信する(ステップS301)。
【0076】
X=r mod L ・・・式(2)
【0077】
次に、検証者側の制御装置は、チャレンジビットe(0か1)をランダムに選択し、証明者側の制御装置に送信する(ステップS302)。続いて、チャレンジビットeを受け取った検証者側の制御装置は、受け取ったチャレンジビットeと、自身が認識している秘密情報Sと法Lとを元に、以下の式(3)を用いてYを生成し、そのYを証明者側の制御装置に送信する(ステップS303)。
【0078】
Y=r・S mod L ・・・式(3)
【0079】
最後に、検証者側の制御装置が、受け取ったYと、自身が認識している公開情報Pと、ステップS301で受け取ったXとを元に、Y ≡ X・Pを検証する(ステップS304)。ステップS304では、P=S mod L、即ち(r・S ≡ Y・S2eを検証する。
【0080】
このステップS301〜S303の処理をN回繰り返し、N回全ての検証が成功すれば、検証者側の制御装置は、認証を要求した証明者側の制御装置が正当な権限を持ったものであると認証することができる。ここで指定したN回は、システム監理者Aが設定すればよく、その回数によって信頼性を向上させることができる。例えば、N=10の場合には、偽装者がこの認証を突破できる確率は1/1024となる。また、例えば、N=20の場合には、偽装者がこの認証を突破できる確率は1/1048576となる。
【0081】
なお、通信路400がTCP/IPプロトコルを利用したネットワークの利用を想定して説明したが、少なくともサーバコンピュータ200との通信については、IrDAなどの赤外線通信やシリアル通信など、整数の送受信ができる通信であればよい。なお、認証情報管理サーバ100−クライアントコンピュータ300間の通信については、登録時や削除時の認証方法による。
【0082】
また、認証情報管理サーバ100とクライアントコンピュータ300とを別々のコンピュータとして示したが、コマンド送信モジュール310を認証情報管理サーバ100に組み込むことにより、認証情報管理サーバ100がクライアントコンピュータ300の役割を担うことも可能である。また、認証情報管理サーバ100が、サーバコンピュータ200の発見時にそのサーバコンピュータ200に対して法d101を送信する方法を示したが、予めサーバコンピュータ200に手動で設定する運用も可能である。また、クライアントコンピュータ300がコマンドを発行する場合に、サーバコンピュータ200と1対1でコマンドを発行する例を示したが、クライアントコンピュータ300は、同時に複数のサーバコンピュータ200に対してコマンドを発行することも可能である。
【0083】
また、上記で示したサーバコンピュータ200の検索シーケンスでは、新しく設置した認証情報管理サーバ100に認証に必要な情報が登録されていない期間が存在することになる。その際に、悪意を持った第三者が通信路4上に偽装した認証情報管理サーバ100を設置することによって、サーバコンピュータ200に正当でない情報が登録される可能性がある。この対策としては、正当な認証情報管理サーバ100が、定期的に各サーバコンピュータ200に対して認証情報の確認要求を行い、ゼロ知識証明プロトコルを使用した認証を行わせ、その成否によってサーバコンピュータ200に正しい情報が登録されているかを判別する。そして、正しい情報が登録されていないサーバコンピュータ200の存在が発見された場合には、その旨を管理者に通知したり、コマンド受信者リストd104から削除するなどして、再度初期登録を行わせるようにすればよい。
【0084】
また、本実施形態では、基本的に、認証情報を全認証者で共通の情報とすることを前提としているが、認証者別に生成する運用も可能である。なお、共通にしてもそうでなくても、本システムの本質的な挙動は同様である。なお、全認証者で共通の情報とした場合であっても、通信路400やサーバコンピュータ200の障害などで情報の更新に失敗する可能性が考えられるため、認証情報管理サーバ100で、各サーバコンピュータ200がどのバージョンの公開情報で動作しているかを管理するようにしてもよい。
【0085】
以上のように、本実施形態によれば、システム監理者Aがユーザ識別子やパスワードなどのユーザ情報を、サーバコンピュータ200に対し管理、設定することなく、ネットワーク上の不特定多数のサーバコンピュータ200(制御装置)へのセキュアなアクセスが可能になる。本実施形態では、認証情報管理サーバ100がコンピュータシステム上のコンピュータの認証情報を一括して保持することにより、各サーバコンピュータ200が個々に認証情報を管理せずに複数のユーザの認証を可能にしている。
【0086】
また、本実施形態では、サーバコンピュータ200とクライアントコンピュータ300との間で、パスワード等の認証に必要な秘密にすべき情報が通信路400(ここでは、サーバコンピュータ200との間の通信路)上で解読できる形で流れることがないので、盗聴を心配する必要がない。結果、複雑な通信プロトコルを要せずにサーバコンピュータ200−クライアントコンピュータ300間での安全なネットワークシステムが実現可能となる。
【0087】
また、完全なTCP/IPプロトコルスタックを実装しているサーバコンピュータにおいても、障害発生時に、TCP/IPプロトコルスタックの下位層の機能を利用してアクセスして復旧処理を行うといった利用が安全に実現できる。例えば、SSHやTelnetなどのアプリケーションが利用できない状況においても、本発明を利用すれば、サーバコンピュータ200にアクセスできる可能性が高まる。従って、障害が発生した際に外部から受ける影響を最小限に抑えることができ、障害に強いネットワーク越しの制御装置(サーバコンピュータ200)が実現できることになる。
【0088】
また、サーバコンピュータ200側で複雑な計算をする必要がない(認証に必要な計算は乱数の生成と乗算のみである)ので、サーバコンピュータ200の実装が容易である。また、本実施形態では、サーバコンピュータ200−クライアントコンピュータ300間の通信をTCP/IPプロトコルスタックで行う例を示したが、IPアドレスを表す整数や認証のための整数を通信できる環境であればよく、サーバコンピュータ200−クライアントコンピュータ300間の通信路400の暗号化やセッションの維持などを考える必要がない。このため、計算リソースの乏しい組み込み機器や完全なTCP/IPプロトコルスタックを備えていない組み込み機器などであっても、本実施形態におけるサーバコンピュータ200として実装可能である。
【産業上の利用可能性】
【0089】
本発明は、特に、計算リソースが十分でない制御装置や完全なTCP/IPプロトコルスタックを実装していない制御装置に対して、安全なアクセスを行いたい場合に好適に適用可能である。例えば、組み込み機器やネットワーク家電向けの制御端末を管理するネットワークシステムに好適に適用可能である。
【図面の簡単な説明】
【0090】
【図1】本発明による認証システムの構成例を示すブロック図である。
【図2】本発明による認証システムの他の構成例を示すブロック図である。
【図3】認証システムのより具体的な構成例を示すブロック図である。
【図4】認証システムの動作の一例を示すシーケンス図である。
【図5】コマンド発行に係る一連の処理フローの例を示すフローチャートである。
【図6】ゼロ知識証明プロトコルを利用した認証処理の処理フローの一例を示すフローチャートである。
【符号の説明】
【0091】
1 制御装置
11 認証情報取得手段
12 認証手段
2 認証情報管理装置
21 制御装置管理手段
22 制御端末管理手段
3 制御装置
100 認証情報管理サーバ
110 認証情報生成手段
120 コマンド受信者管理手段
130 コマンド送信者管理手段
140 情報保持手段
200 サーバコンピュータ
21 コマンド受信モジュール
300 クライアントコンピュータ
310 コマンド送信モジュール
400 通信路
500 ユーザ

【特許請求の範囲】
【請求項1】
ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムであって、
アクセス元となる制御端末と、アクセス先となる1つ以上の制御装置と、少なくとも前記制御端末と前記制御装置との間で行われる認証に必要な情報を保持する認証情報管理装置とを備え、
前記制御装置は、
前記制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う認証手段と、
前記認証において検証者側として必要な情報を、前記認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する認証情報取得手段とを有する
ことを特徴とする認証システム。
【請求項2】
認証情報管理装置は、さらに正当な制御端末の情報をリスト化した制御端末リストを保持し、
制御装置の認証情報取得手段は、認証情報管理装置から前記制御端末リストを取得し、
制御装置の認証手段は、前記制御端末リストに基づきアクセス元である制御端末を認証した上で、ゼロ知識証明プロトコルを利用した認証を行う
請求項1に記載の認証システム。
【請求項3】
認証情報管理装置は、
当該認証情報管理装置が属しているネットワーク上に存在する制御装置を検出し、検出した該制御装置に、当該認証情報管理装置で現在保持している前記制御装置が制御端末との間の認証に必要な情報を通知する制御装置管理手段を有する
請求項1または請求項2に記載の認証システム。
【請求項4】
認証情報管理装置は、
制御端末からの登録要求に対して所定の方法により認証を行った上で、該制御端末に、現在認証情報保持手段で保持している前記制御端末と制御装置との間のゼロ知識証明プロトコルを利用した認証において証明者側として必要な情報を通知する制御端末管理手段を有する
請求項1から請求項3のうちのいずれか1項に記載の認証システム。
【請求項5】
複数の制御端末に対して共通の認証情報を用いる認証システムであって、
制御端末管理手段は、制御端末からの削除要求に対して所定の方法により認証を行った上で、制御装置と制御端末との間のゼロ知識証明プロトコルを利用した認証に必要な情報を更新し、
制御装置管理手段は、制御装置と制御端末との間のゼロ知識証明プロトコルを利用した認証に必要な情報が更新された場合に、その旨を制御装置に通知する
請求項1から請求項4のうちのいずれか1項に記載の認証システム。
【請求項6】
ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムに適用される制御装置であって、
制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う認証手段と、
前記認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する認証情報取得手段とを備えた
ことを特徴とする制御装置。
【請求項7】
認証情報取得手段は、認証情報管理装置から正当な制御端末の情報をリスト化した制御端末リストを取得し、
認証手段は、前記制御端末リストに基づきアクセス元である制御端末を認証した上で、ゼロ知識証明プロトコルを利用した認証を行う
請求項6に記載の制御装置。
【請求項8】
ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証方法であって、
制御装置が、アクセス元となった制御端末との間で行うゼロ知識証明プロトコルを利用した認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該制御装置が現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する
ことを特徴とする認証方法。
【請求項9】
制御装置が、さらに正当な制御端末の情報をリスト化した制御端末リストを取得し、
前記制御装置が、制御端末からのアクセスに対して、前記制御端末リストに基づきアクセス元である制御端末を認証した上で、ゼロ知識証明プロトコルを利用した認証を行う
請求項8に記載の認証方法。
【請求項10】
認証情報管理装置が、当該認証情報管理装置が属しているネットワーク上に存在する制御装置を検出し、
認証情報管理装置が、検出した該制御装置に、現在当該認証情報管理装置で保持している前記制御装置と制御端末との間のゼロ知識証明プロトコルを利用した認証において検証者側として必要な情報を通知する
請求項8または請求項9に記載の認証方法。
【請求項11】
認証情報管理装置が、制御端末からの登録要求に対して所定の方法により認証を行った上で、該制御端末に、現在当該認証情報管理装置で保持している前記制御端末と制御装置との間のゼロ知識証明プロトコルを利用した認証において証明者側として必要な情報を通知する
請求項8から請求項10のうちのいずれか1項に記載の認証方法。
【請求項12】
認証情報管理装置が、制御端末からの削除要求に対して所定の方法により認証を行った上で、制御装置と制御端末との間のゼロ知識証明プロトコルを利用した認証に必要な情報を更新し、
認証情報管理装置が、制御装置と制御端末との間のゼロ知識証明プロトコルを利用した認証に必要な情報が更新された場合に、その旨を制御装置に通知する
請求項8から請求項11のうちのいずれか1項に記載の認証方法。
【請求項13】
ネットワークを介して接続される1つ以上の制御装置にアクセスさせる際の認証を行う認証システムにおける制御装置に適用される認証用プログラムであって、
コンピュータに、
前記制御端末からのアクセス要求に対して、ゼロ知識証明プロトコルを利用した認証を行う処理、および
前記認証において検証者側として必要な情報を、該情報を保持している認証情報管理装置から、当該コンピュータが現在保持している情報を用いたゼロ知識証明プロトコルで前記認証情報管理装置を認証した上で取得する処理
を実行させるための認証用プログラム。
【請求項14】
コンピュータに、
認証情報管理装置から前記制御端末リストを取得させ、
制御端末からのアクセスに対して、前記制御端末リストに基づきアクセス元である制御端末を認証した上で、ゼロ知識証明プロトコルを利用した認証を行わせる
請求項13に記載の認証用プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2009−181194(P2009−181194A)
【公開日】平成21年8月13日(2009.8.13)
【国際特許分類】
【出願番号】特願2008−17899(P2008−17899)
【出願日】平成20年1月29日(2008.1.29)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】