説明

ネットワーク認証システム、ネットワーク認証方法およびプログラム

【課題】通信プロトコルに依存せず、しかもブラウザを利用しない通信が要求される場合においても適切にネットワーク認証を実行できる。
【解決手段】ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、認証用ファイルの検証を行い、認証用ファイル内のID情報を取得して、検証処理とID情報の取得が完了した後に、情報提供を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザ情報やユーザのアクセス履歴等のユーザを識別するための技術を活用し、通信プロトコルに依存しないネットワーク認証システム、ネットワーク認証方法およびプログラムに関する。
【背景技術】
【0002】
インターネット上のサービス利用における認証手法として、ブラウザを活用する場合には、認証クッキーを利用する手法がある(例えば、非特許文献1参照。)。これは、ユーザの端末をクライアントとし、サービス提供側のサーバをサーバとするクライアントサーバシステムにおいて、サーバがユーザを何らかの手法(例えばID/パスワード)で認証した際に、認証クッキーと呼ばれるユーザの状態を示すファイルをクライアント側で作成し、以降の認証には、そのファイルを利用することにより行う。しかしながら、このクッキーを利用した認証状態の継続は、ブラウザで利用することが前提となっている。
【0003】
一方で、近年、端末の小型化や、ネットワークのユビキタス化により屋内のみならず屋外でも、携帯可能な端末を介してサービスを享受する機会が増加している。このため、ある端末から別の端末に移行してサービス提供を受けるような場合や、異なるサービスが連携してサービスを提供するようなサービスの利用形態が想定されている。
【0004】
こうしたサービス利用において、セキュリティ機能を提供するためには、端末側とネットワーク側とでの連携が必要となり、そのためのプラットフォーム技術の構築が求められている。こうしたプラットフォームでの端末とネットワーク側での通信では、ブラウザを利用しないケースも想定されるため、先のクッキーによる認証をそのまま利用できない可能性がある。
【0005】
また、このプラットフォーム技術の1つの利用例として、サービス提供者側での認証の手間を軽減するシングルサインオンの技術がある。このブラウザリダイレクトを利用する場合の、シングルサインオンの概要を図6に示す。
【0006】
このシステムは、図6に示すように、ユーザ端末1と、認証サーバ2と、サービス提供サーバ3とから構成されており、その処理は、次のようになる。まず、ユーザ端末1がサービス提供サーバ3にサービスの利用要求を送信する。具体的には、ユーザ端末1上で、サービスサイトのトップ画面にアクセスする(図中の(1))。
【0007】
サービス提供サーバ3は、リダイレクトにより、認証サーバ2のサイトへ誘導する(図中の(2))。これにより、ユーザ端末1上に認証用画面が表示される(図中の(3))。ユーザは、認証画面に認証のための情報として、IDやパスワード等必要な情報を入力する(図中の(4))。
【0008】
認証サーバ2による認証が完了すると、認証サーバ2から認証クッキーが送信され、ユーザ端末1は、これを保存する(図中の(5))。次に、リダイレクトにより、サービス提供サーバ3へ誘導されるとともに、認証サーバ2からサービス提供サーバ3へユーザの認証状態が通知される(図中の(6))。ユーザの認証状態が通知されたサービス提供サーバ3は、ユーザ端末1にサービスを提供するとともに、サービス提供用のクッキーを保存する(図中の(7))。このように、ブラウザの利用を前提としてシングルサイオンが実現し、その過程で認証のためのクッキーがユーザ端末1に保持されていることとなる。
【先行技術文献】
【非特許文献】
【0009】
【非特許文献1】RFC 2965 HTTP State Management Mechanism.Oct、2000.
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上記のようにインターネット上でのサービス利用におけるクッキーを利用したユーザ認証は、ブラウザでの利用を前提としているため、ブラウザ非依存の通信手法において当該技術を利用することが困難であるという問題がある。また、端末のためのプラットフォーム技術では、端末とネットワーク側との通信において、ブラウザを利用しない通信を必要とすることが想定されるが、上記従来の技術では、このような通信に対応できないという問題がある。
【0011】
そこで、本発明は、上述の課題に鑑みてなされたものであり、通信プロトコルに依存せず、しかもブラウザを利用しない通信が要求される場合においても適切にネットワーク認証を実行できるネットワーク認証システム、ネットワーク認証方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【0013】
(1)本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムであって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第1の送信手段(例えば、図2の認証要求送信部11に相当)を備え、前記認証サーバが、受信した認証要求に対して、認証を行う認証処理手段(例えば、図3の認証処理部22に相当)と、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する認証用ファイル作成手段(例えば、図3の認証用ファイル作成部23に相当)と、該作成したファイルを前記ユーザ端末に送信する第2の送信手段と、を備え、前記ユーザ端末が、受信した前記ファイルを格納する格納手段(例えば、図2のファイル格納部13に相当)と、利用したいサービスを選択する選択手段(例えば、図2のサービス選択部14に相当)と、前記認証用ファイルを加工する認証用ファイル加工手段(例えば、図2の認証用ファイル加工部15に相当)と、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第3の送信手段(例えば、図2の認証用ファイル送信部16に相当)と、を備え、前記サービス提供サーバが、前記認証用ファイルの検証を行う認証手段(例えば、図4の認証用ファイル検証部32に相当)と、前記認証用ファイル内のID情報を取得するID情報取得手段(例えば、図4のID情報取得部33に相当)と、該検証処理とID情報の取得が完了した後に、情報提供を行う情報提供手段(例えば、図4の情報提供部34に相当)と、を備えたことを特徴とするネットワーク認証システムを提案している。
【0014】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末の第1の送信手段は、認証サーバへ認証要求を送信する。認証サーバの認証処理手段は、受信した認証要求に対して、認証を行う。認証用ファイル作成手段は、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する。第2の送信手段は、作成したファイルをユーザ端末に送信する。ユーザ端末の格納手段は、受信した前記ファイルを格納する。認証用ファイル加工手段は、認証用ファイルを加工する。選択手段は、利用したいサービスを選択する。第3の送信手段は、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバの認証手段は、認証用ファイルの検証を行う。ID情報取得手段は、認証用ファイル内のID情報を取得する。情報提供手段は、検証処理とID情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するID情報については、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。その際にサービスに対して送付する必要のないID情報が除去されるが、認証用ファイルの正当性は墨塗り署名の技術を利用することにより担保されている。
【0015】
(2)本発明は、(1)の認証システムについて、前記認証サーバの認証用ファイル作成手段が、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する記述手段(例えば、図5の記述部151に相当)と、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする乱数生成手段(例えば、図5の乱数生成部152に相当)と、前記info_iと、rand_i のビット和(info_i || rand_i)を演算するビット和演算手段(例えば、図5のビット和演算部153に相当)と、一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とするハッシュ値演算手段(例えば、図5のハッシュ値演算部154に相当)と、前記hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする署名生成手段(例えば、図5の署名生成部155に相当)と、を備え、前記info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成するネットワーク認証システムを提案している。
【0016】
この発明によれば、記述手段は、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する。乱数生成手段は、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする。ハッシュ値演算手段は、info_iと、rand_i のビット和(info_i || rand_i)を演算するビット和演算手段と、一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とする。署名生成手段は、hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする。そして、info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する。したがって、墨塗り署名の技術を用いることにより、利用者側において、サービスへ提供するID情報を動的に変化させることができる。
【0017】
(3)本発明は、(2)の認証システムについて、前記ユーザ端末の前記認証用ファイル加工手段が、前記認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して認証用ファイルを加工し、前記第3の送信手段が、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i(i∈n)、hdata_all、 sign_allを前記認証用ファイルとして送付することを特徴とするネットワーク認証システムを提案している。
【0018】
この発明によれば、ユーザ端末の認証用ファイル加工手段は、認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して認証用ファイルを加工し、第3の送信手段は、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i(i∈n)、hdata_all、 sign_allを認証用ファイルとして送付する。したがって、ブラウザ非依存のサービスに対しても、認証サーバで生成された認証用ファイルから必要な情報だけを選択する加工処理を行うことによって、サービスに提供するID情報をクライアントサイドで動的に変更が可能となる。
【0019】
(4)本発明は、(2)の認証システムについて、前記サービス提供サーバの認証手段が、前記ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成する再構築手段(例えば、図6の再構築部221に相当)と、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理手段(例えば、図6の署名検証処理部222に相当)と、を備えたことを特徴とするネットワーク認証システムを提案している。
【0020】
この発明によれば、再構築手段は、ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成するとともに、hdata_i (i∈n)とあわせて、hdata_allを生成する。署名検証処理手段は、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う。したがって、認証サーバの署名を検証することができるため、高速に認証を完了することができる。
【0021】
(5)本発明は、(1)のネットワーク認証システムについて、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからシングルサインオンによりユーザ認証されていることを特徴とするネットワーク認証システムを提案している。
【0022】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからシングルサインオンによりユーザ認証されている。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。
【0023】
(6)本発明は、(1)のネットワーク認証システムについて、前記ユーザを識別するためのファイルがクッキーファイルであることを特徴とするネットワーク認証システムを提案している。
【0024】
この発明によれば、ユーザを識別するためのファイルがクッキーファイルである。したがって、ユーザ端末とサービス提供サーバの間では、ブラウザリダイレクトを用いるシングルサインオンによるユーザ認証が利用でき、認証サーバとの認証においては、別の認証用ファイルを用いることにより、ブラウザに依存しないプロトコルを利用することが可能となる。
【0025】
(7)本発明は、(1)のネットワーク認証システムについて、前記ユーザ端末と認証サーバとの間には、安全な通信路が形成されていることを特徴とするネットワーク認証システムを提案している。
【0026】
この発明によれば、ユーザ端末と認証サーバとの間には、安全な通信路が形成されている。したがって、ユーザ端末と認証サーバとの間で、交換される認証用ファイルの漏洩を防止して、ユーザのプライバシを保護することができる。
【0027】
(8)本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法であって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第1のステップ(例えば、図7のステップS101に相当)と、前記認証サーバが、受信した認証要求に対して、認証を行う第2のステップ(例えば、図7のステップS102に相当)と、前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第3のステップ(例えば、図7のステップS103に相当)と、前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第4のステップ(例えば、図7のステップS104に相当)と、前記ユーザ端末が、受信した前記ファイルを格納する第5のステップ(例えば、図7のステップS105に相当)と、前記ユーザ端末が、利用したいサービスを選択する第6のステップ(例えば、図7のステップS106に相当)と、前記ユーザ端末が、前記認証用ファイルを加工する第7のステップ(例えば、図7のステップS107に相当)と、前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第8のステップ(例えば、図7のステップS108に相当)と、前記サービス提供サーバが、前記認証用ファイルの検証を行う第9のステップ(例えば、図7のステップS109に相当)と、前記サービス提供サーバが、前記認証用ファイル内のID情報を取得する第10のステップ(例えば、図7のステップS110に相当)と、前記サービス提供サーバが、該検証処理とID情報の取得が完了した後に、情報提供を行う第11のステップ(例えば、図7のステップS111に相当)と、を備えたことを特徴とするネットワーク認証方法を提案している。
【0028】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、前記認証用ファイルの検証を行い、認証用ファイル内のID情報を取得して、検証処理とID情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するID情報については、墨塗り署名の技術を利用することにより、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【0029】
(9)本発明は、(8)のネットワーク認証方法について、前記第3のステップが、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する記述ステップ(例えば、図8のステップS201に相当)と、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする乱数生成ステップ(例えば、図8のステップS202に相当)と、前記info_iと、rand_i のビット和(info_i || rand_i)を演算するビット和演算ステップ(例えば、図8のステップS203に相当)と、一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とするハッシュ値演算ステップ(例えば、図8のステップS204に相当)と、前記hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする署名生成ステップ(例えば、図8のステップS205に相当)と、前記info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する認証用ファイル生成ステップ(例えば、図8のステップS206に相当)と、を備えることを特徴とするネットワーク認証方法を提案している。
【0030】
この発明によれば、第3のステップにおいて、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述し、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする。次に、info_iと、rand_i のビット和(info_i || rand_i)を演算し、一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とする。さらに、hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとし、info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する。したがって、墨塗り署名の技術を用いることにより、利用者側において、サービスへ提供するID情報を動的に変化させることができる。
【0031】
(10)本発明は、(8)のネットワーク認証方法について、前記第7のステップが、前記認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して前記認証用ファイルを加工し、前記第8のステップが、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i (i∈n)、hdata_all、 sign_allを認証用ファイルとして送付することを備えることを特徴とするネットワーク認証方法を提案している。
【0032】
この発明によれば、第7のステップにおいて、認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して認証用ファイルを加工し、第8のステップにおいて、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i(i∈n)、hdata_all、 sign_allを認証用ファイルとして送付する。したがって、ブラウザ非依存のサービスに対しても、認証サーバで生成された認証用ファイルから必要な情報だけを選択する加工処理を行うことによって、サービスに提供するID情報をクライアントサイドで動的に変更が可能となる。
【0033】
(11)本発明は、(8)のネットワーク認証方法について、前記第8のステップが、前記ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成する生成ステップ(例えば、図9のステップS301に相当)と、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理ステップ(例えば、図9のステップS302に相当)と、を備えたことを特徴とするネットワーク認証方法を提案している。
【0034】
この発明によれば、第8のステップが、ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i (i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成し、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う。したがって、認証サーバの署名を検証することができるため、高速に認証を完了することができる。
【0035】
(12)本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法をコンピュータに実行させるためのプログラムであって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第1のステップ(例えば、図7のステップS101に相当)と、前記認証サーバが、受信した認証要求に対して、認証を行う第2のステップ(例えば、図7のステップS102に相当)と、前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第3のステップ(例えば、図7のステップS103に相当)と、前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第4のステップ(例えば、図7のステップS104に相当)と、前記ユーザ端末が、受信した前記ファイルを格納する第5のステップ(例えば、図7のステップS105に相当)と、前記ユーザ端末が、利用したいサービスを選択する第6のステップ(例えば、図7のステップS106に相当)と、前記ユーザ端末が、前記認証用ファイルを加工する第7のステップ(例えば、図7のステップS107に相当)と、前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第8のステップ(例えば、図7のステップS108に相当)と、前記サービス提供サーバが、前記認証用ファイルの検証を行う第9のステップ(例えば、図7のステップS109に相当)と、前記サービス提供サーバが、前記認証用ファイル内のID情報を取得する第10のステップ(例えば、図7のステップS110に相当)と、前記サービス提供サーバが、該検証処理とID情報の取得が完了した後に、情報提供を行う第11のステップ(例えば、図7のステップS111に相当)と、をコンピュータに実行させるためのプログラムを提案している。
【0036】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、前記認証用ファイルの検証を行い、認証用ファイル内のID情報を取得して、検証処理とID情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するID情報については、墨塗り署名の技術を利用することにより、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【発明の効果】
【0037】
本発明によれば、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となるという効果がある。また、認証サーバの署名を検証することができるため、高速に認証を完了することができるという効果がある。さらに、サービス事業者に提出するID情報については、墨塗り署名の技術を利用することで、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができるという効果がある。
【図面の簡単な説明】
【0038】
【図1】本実施形態に係るネットワーク認証システムの構成を示す図である。
【図2】本実施形態に係るユーザ端末の構成を示す図である。
【図3】本実施形態に係る認証サーバの構成を示す図である。
【図4】本実施形態に係るサービス提供サーバの構成を示す図である。
【図5】本実施形態に係る認証サーバの認証用ファイル作成部の詳細な構成を示す図である。
【図6】本実施形態に係るサービス提供サーバの認証用ファイル検証部の詳細な構成を示す図である。
【図7】本実施形態に係るネットワーク認証システムの処理を示す図である。
【図8】本実施形態に係る認証サーバの認証用ファイル作成部の処理を示す図である。
【図9】本実施形態に係るサービス提供サーバの認証用ファイル検証部の処理を示す図である。
【図10】シングルサインオンを実行するシステムの構成および処理を説明するための図である。
【発明を実施するための形態】
【0039】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0040】
図1から図9を用いて、本実施形態に係るネットワーク認証システムについて説明する。
【0041】
<ネットワーク認証システムの構成>
図1を用いて、本実施形態に係るネットワーク認証システムの構成について説明する。
【0042】
本実施形態に係るネットワーク認証システムは、ユーザ端末1と、認証サーバ2と、サービス提供サーバ3とから構成されている。ここで、ユーザ端末1とサービス提供サーバ3との間は、認証サーバ2を介したシングルサインオンにより、ユーザ認証がなされている。
【0043】
また、図示しないプラットフォームの機能を提供するサービス提供サーバ3は、シングルサインオンや、その後のサービス利用などのセッションの管理や、利用者の情報、サービス利用時の状態などの管理を行っている。なお、認証サーバ2とサービス提供サーバ3の間での認証や、利用者によるサービス利用では、ブラウザが利用されることが前提となるが、サービスによっては、ブラウザを利用しないことも想定される。この状況に対応すべく、本実施形態では、認証用ファイルを用いた認証手法を提案している。その際に、サービス提供サーバ3に提供するID情報の選択については、プライバシ保護の観点からサービスごとに異なることが想定される。このため、サービス提供サーバ3に提供するID情報については墨塗り署名の技術を利用することにより、クライアント側での動的な選択を可能としている。
【0044】
<ユーザ端末の構成>
図2を用いて、本実施形態に係るユーザ端末の構成について説明する。
【0045】
本実施形態に係るユーザ端末は、図2に示すように、認証要求送信部11と、受信部12と、ファイル格納部13と、サービス選択部14と、認証用ファイル加工部15と、認証用ファイル送信部16とから構成されている。
【0046】
認証要求送信部11は、認証サーバ2へIDやパスワード等を送信することにより、認証要求を送信する。受信部12は、認証サーバ2における認証処理の完了後に、作成したユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル(例えば、クッキーファイル)と認証用ファイルとを受信する。
【0047】
ファイル格納部13は、受信部12が受信したユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル(例えば、クッキーファイル)と認証用ファイルとを格納する。サービス選択部14は、利用したいサービスを選択する。
【0048】
認証用ファイル加工部15は、認証用ファイルからサービスに提供するID情報を選択して、加工する。認証用ファイル送信部16は、サービス提供サーバ3に対して、加工した認証用ファイルとともに、認証要求を送信する。
【0049】
<認証サーバの構成>
図3を用いて、本実施形態に係る認証サーバの構成について説明する。
【0050】
本実施形態に係る認証サーバは、図3に示すように、認証要求受信部21と、認証処理部22と、認証用ファイル作成部23と、認証用ファイル送信部24とから構成されている。
【0051】
認証要求受信部21は、ユーザ端末1からIDやパスワード等を伴った認証要求を受信する。認証処理部22は、受信したIDやパスワード等に基づいて、ユーザ認証を実行する。認証用ファイル作成部23は、認証処理の完了後に、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル(例えば、クッキーファイル)と認証用ファイルとを作成する。なお、認証用ファイルには、ユーザの認証状態(認証済みであること)と、有効期限およびサービス提供にあたり必要なID情報が記されている。また、ID情報をクライアント側で提供する情報が選択できるように、送付しないID情報を元の認証用ファイルから削除し、加工された認証用ファイルであっても、墨塗り署名を用いてその正当性が担保される。認証用ファイル送信部24は、作成したファイルをユーザ端末1に送信する。
【0052】
<サービス提供サーバの構成>
図4を用いて、本実施形態に係る機能提供サーバの構成について説明する。
【0053】
本実施形態に係るサービス提供サーバは、図4に示すように、認証用ファイル受信部31と、認証用ファイル検証部32と、ID情報取得部33と、情報提供部34とから構成されている。
【0054】
認証用ファイル受信部31は、ユーザ端末1から認証用ファイルを受信する。認証用ファイル検証部32は、認証用ファイルの検証を行う。ID情報取得部33は、認証用ファイル内のID情報を取得する。情報提供部34は、検証処理とID情報の取得が完了した後に、ユーザ端末1に対して、情報提供を行う。
【0055】
<認証サーバの認証用ファイル作成部の詳細な構成>
図5を用いて、本実施形態に係る認証サーバの認証用ファイル作成部の詳細な構成について説明する。
【0056】
本実施形態に係る認証サーバの認証用ファイル作成部は、図5に示すように、記述部151と、乱数生成部152と、ビット和演算部153と、ハッシュ値演算部154と、署名生成部155と、認証用ファイル作成部156とから構成されている。
【0057】
記述部151は、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する。乱数生成部152は、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする。ビット和演算部153は、info_iと、rand_i のビット和(info_i || rand_i)を演算する。
【0058】
ハッシュ値演算部154は、一方向性のハッシュ関数h()を用いて、ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とする。署名生成部155は、hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする。認証用ファイル作成部156は、info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する。
【0059】
<サービス提供サーバの認証用ファイル検証部の詳細な構成>
図6を用いて、本実施形態に係るサービス提供サーバの認証用ファイル検証部の詳細な構成について説明する。
【0060】
本実施形態に係るサービス提供サーバの認証用ファイル検証部は、図6に示すように、再構築部221と、署名検証処理部222とから構成されている。
【0061】
再構築部221は、ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成する。署名検証処理部222は、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う。
【0062】
<ネットワーク認証システムの処理>
図7を用いて、本実施形態に係る機能提供サーバの処理について説明する。
【0063】
まず、前提条件として、ユーザ端末1は、サービス提供サーバ3からのサービスの提供に関して、認証サーバ2からユーザ認証されている。ユーザ端末1は、認証サーバ2へ認証要求を送信する(ステップS101)。認証サーバ2は、受信した認証要求に対して、認証を行い(ステップS102)、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して(ステップS103)、作成したファイルをユーザ端末1に送信する(ステップS104)。
【0064】
ユーザ端末1は、受信したファイルを格納し(ステップS105)、利用したいサービスを選択して(ステップS106)、認証用ファイルを加工し(ステップS107)、サービス提供サーバ3に対して、認証用ファイルとともに、認証要求を送信する(ステップS108)。サービス提供サーバ3は、認証用ファイルの検証を行い(ステップS109)、認証用ファイル内のID情報を取得して(ステップS110)、検証処理とID情報の取得が完了した後に、情報提供を行う(ステップS111)。
【0065】
<認証サーバの認証用ファイル作成部の処理>
図8を用いて、本実施形態に係る認証サーバの認証用ファイル作成部の処理について説明する。
【0066】
まず、利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述し(ステップS201)、ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする(ステップS202)。
【0067】
次に、info_iと、rand_i のビット和(info_i || rand_i)を演算し(ステップS203)、一方向性のハッシュ関数h()を用いて、ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とする(ステップS204)。
【0068】
さらに、hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとして(ステップS205)、info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する(ステップS206)。
【0069】
<サービス提供サーバの認証用ファイル検証部の処理>
図9を用いて、本実施形態に係るサービス提供サーバの認証用ファイル検証部の処理について説明する。
【0070】
まず、ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i≠n)とあわせて、hdata_allを生成する(ステップS301)。そして、sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う(ステップS302)。
【0071】
したがって、本実施形態によれば、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、認証サーバの署名を検証することができるため、高速に認証を完了することができる。さらに、サービス事業者に提出するID情報については、墨塗り署名の技術を利用することで、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【0072】
なお、ネットワーク認証システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをユーザ端末、認証サーバおよびサービス提供サーバに読み込ませ、実行することによって本発明のネットワーク認証システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0073】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0074】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0075】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0076】
1;ユーザ端末
2;認証サーバ
3;サービス提供サーバ
11;認証要求送信部
12;受信部
13;ファイル格納部
14;サービス選択部
15;認証用ファイル加工部
16;認証用ファイル送信部
21;認証要求受信部
22;認証処理部
23;認証用ファイル作成部
31;認証用ファイル受信部
32;認証用ファイル検証部
33;ID情報取得部
34;情報提供部
151;記述部
152;乱数生成部
153;ビット和演算部
154;ハッシュ値演算部
155;署名生成部
156;認証用ファイル生成部
221;再構築部
222;署名検証処理部

【特許請求の範囲】
【請求項1】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムであって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、
前記認証サーバへ認証要求を送信する第1の送信手段を備え、
前記認証サーバが、
受信した認証要求に対して、認証を行う認証処理手段と、
該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する認証用ファイル作成手段と、
該作成したファイルを前記ユーザ端末に送信する第2の送信手段と、
を備え、
前記ユーザ端末が、
受信した前記ファイルを格納する格納手段と、
利用したいサービスを選択する選択手段と、
前記認証用ファイルを加工する認証用ファイル加工手段と、
前記サービス提供サーバに対して、該加工した認証用ファイルとともに、認証要求を送信する第3の送信手段と、を備え、
前記サービス提供サーバが、
前記認証用ファイルの検証を行う認証手段と、
前記認証用ファイル内のID情報を取得するID情報取得手段と、
該検証処理とID情報の取得が完了した後に、情報提供を行う情報提供手段と、
を備えたことを特徴とするネットワーク認証システム。
【請求項2】
前記認証サーバの認証用ファイル作成手段が、
利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する記述手段と、
ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする乱数生成手段と、
前記info_iと、rand_i のビット和(info_i || rand_i)を演算するビット和演算手段と、
一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とするハッシュ値演算手段と、
前記hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする署名生成手段と、
を備え、
前記info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成することを特徴とする請求項1に記載のネットワーク認証システム。
【請求項3】
前記ユーザ端末の前記認証用ファイル加工手段が、
前記認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して認証用ファイルを加工し、前記第3の送信手段が、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i (i∈n)、hdata_all、 sign_allを前記認証用ファイルとして送付することを特徴とする請求項2に記載のネットワーク認証システム。
【請求項4】
前記サービス提供サーバの認証手段が、
前記ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成する再構築手段と、
sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理手段と、
を備えたことを特徴とする請求項2に記載のネットワーク認証システム。
【請求項5】
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからシングルサインオンによりユーザ認証されていることを特徴とする請求項1に記載のネットワーク認証システム。
【請求項6】
前記ユーザを識別するためのファイルがクッキーファイルであることを特徴とする請求項1に記載のネットワーク認証システム。
【請求項7】
前記ユーザ端末と認証サーバとの間には、安全な通信路が形成されていることを特徴とする請求項1に記載のネットワーク認証システム。
【請求項8】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法であって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、前記認証サーバへ認証要求を送信する第1のステップと、
前記認証サーバが、受信した認証要求に対して、認証を行う第2のステップと、
前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第3のステップと、
前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第4のステップと、
前記ユーザ端末が、受信した前記ファイルを格納する第5のステップと、
前記ユーザ端末が、利用したいサービスを選択する第6のステップと、
前記ユーザ端末が、前記認証用ファイルを加工する第7のステップと、
前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第8のステップと、
前記サービス提供サーバが、前記認証用ファイルの検証を行う第9のステップと、
前記サービス提供サーバが、前記認証用ファイル内のID情報を取得する第10のステップと、
前記サービス提供サーバが、該検証処理とID情報の取得が完了した後に、情報提供を行う第11のステップと、
を備えたことを特徴とするネットワーク認証方法。
【請求項9】
前記第3のステップが、
利用者の認証を完了した後に、利用者のID情報を全て用意し、これらのID情報のうち、i番目のID情報をinfo_iと記述する記述ステップと、
ID情報と同じ数だけの乱数を生成し、i番目の乱数をrand_iとする乱数生成ステップと、
前記info_iと、rand_i のビット和(info_i || rand_i)を演算するビット和演算ステップと、
一方向性のハッシュ関数h()を用いて、前記ビット和のハッシュ値を演算し、i番目のデータを、hdata_i = h(info_i || rand_i)とするとともに、全てのhdataのビット和を作成し、そのハッシュ値をhdata_all= h(hdata_0 || hdata_1 || ・・・|| hdata_n) とするハッシュ値演算ステップと、
前記hdata_allに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、sign_allとする署名生成ステップと、
前記info_i、rand_i およびsign_allから認証用ファイル(F_auth)を生成する認証用ファイル生成ステップと、
を備えることを特徴とする請求項8に記載のネットワーク認証方法。
【請求項10】
前記第7のステップが、前記認証サーバから取得した認証用ファイルのID情報のうち、利用したいサービスに対して提供するデータi=n(n=k_1、k_2、k_3・・・)のみを選別して前記認証用ファイルを加工し、前記第8のステップが、利用したいサービスに対して、info_i、rand_i(i=n)と、hdata_i(i∈n)、hdata_all、 sign_allを認証用ファイルとして送付することを特徴とする請求項8に記載のネットワーク認証方法。
【請求項11】
前記第9のステップが、
前記ユーザ端末から送付された、info_i、rand_i(i=n)から、hdata_i(i=n)を生成し、さらに、hdata_i (i∈n)とあわせて、hdata_allを生成する生成ステップと、
sign_allを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理ステップと、
を備えたことを特徴とする請求項8に記載のネットワーク認証方法。
【請求項12】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法をコンピュータに実行させるためのプログラムであって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、前記認証サーバへ認証要求を送信する第1のステップと、
前記認証サーバが、受信した認証要求に対して、認証を行う第2のステップと、
前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第3のステップと、
前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第4のステップと、
前記ユーザ端末が、受信した前記ファイルを格納する第5のステップと、
前記ユーザ端末が、利用したいサービスを選択する第6のステップと、
前記ユーザ端末が、前記認証用ファイルを加工する第7のステップと、
前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第8のステップと、
前記サービス提供サーバが、前記認証用ファイルの検証を行う第9のステップと、
前記サービス提供サーバが、前記認証用ファイル内のID情報を取得する第10のステップと、
前記サービス提供サーバが、該検証処理とID情報の取得が完了した後に、情報提供を行う第11のステップと、
をコンピュータに実行させるためのプログラム。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図1】
image rotate

【図10】
image rotate


【公開番号】特開2012−128726(P2012−128726A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−280592(P2010−280592)
【出願日】平成22年12月16日(2010.12.16)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成22年度、独立行政法人情報通信研究機構「高度通信・放送研究開発委託研究/端末プラットフォーム技術に関する研究開発」、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】