(57)【要約】【課題】通信プロトコルに依存せず、しかもブラウザを利用しない通信が要求される場合においても適切にネットワーク認証を実行できる。【解決手段】ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、認証用ファイルの検証を行い、認証用ファイル内のＩＤ情報を取得して、検証処理とＩＤ情報の取得が完了した後に、情報提供を行う。【選択図】図７
2012128726.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムであって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、
前記認証サーバへ認証要求を送信する第１の送信手段を備え、
前記認証サーバが、
受信した認証要求に対して、認証を行う認証処理手段と、
該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する認証用ファイル作成手段と、
該作成したファイルを前記ユーザ端末に送信する第２の送信手段と、
を備え、
前記ユーザ端末が、
受信した前記ファイルを格納する格納手段と、
利用したいサービスを選択する選択手段と、
前記認証用ファイルを加工する認証用ファイル加工手段と、
前記サービス提供サーバに対して、該加工した認証用ファイルとともに、認証要求を送信する第３の送信手段と、を備え、
前記サービス提供サーバが、
前記認証用ファイルの検証を行う認証手段と、
前記認証用ファイル内のＩＤ情報を取得するＩＤ情報取得手段と、
該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う情報提供手段と、
を備えたことを特徴とするネットワーク認証システム。
【請求項２】
前記認証サーバの認証用ファイル作成手段が、
利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する記述手段と、
ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする乱数生成手段と、
前記ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算するビット和演算手段と、
一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とするハッシュ値演算手段と、
前記ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする署名生成手段と、
を備え、
前記ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成することを特徴とする請求項１に記載のネットワーク認証システム。
【請求項３】
前記ユーザ端末の前記認証用ファイル加工手段が、
前記認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して認証用ファイルを加工し、前記第３の送信手段が、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ_i （ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを前記認証用ファイルとして送付することを特徴とする請求項２に記載のネットワーク認証システム。
【請求項４】
前記サービス提供サーバの認証手段が、
前記ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する再構築手段と、
ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理手段と、
を備えたことを特徴とする請求項２に記載のネットワーク認証システム。
【請求項５】
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからシングルサインオンによりユーザ認証されていることを特徴とする請求項１に記載のネットワーク認証システム。
【請求項６】
前記ユーザを識別するためのファイルがクッキーファイルであることを特徴とする請求項１に記載のネットワーク認証システム。
【請求項７】
前記ユーザ端末と認証サーバとの間には、安全な通信路が形成されていることを特徴とする請求項１に記載のネットワーク認証システム。
【請求項８】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法であって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、前記認証サーバへ認証要求を送信する第１のステップと、
前記認証サーバが、受信した認証要求に対して、認証を行う第２のステップと、
前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第３のステップと、
前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第４のステップと、
前記ユーザ端末が、受信した前記ファイルを格納する第５のステップと、
前記ユーザ端末が、利用したいサービスを選択する第６のステップと、
前記ユーザ端末が、前記認証用ファイルを加工する第７のステップと、
前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第８のステップと、
前記サービス提供サーバが、前記認証用ファイルの検証を行う第９のステップと、
前記サービス提供サーバが、前記認証用ファイル内のＩＤ情報を取得する第１０のステップと、
前記サービス提供サーバが、該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う第１１のステップと、
を備えたことを特徴とするネットワーク認証方法。
【請求項９】
前記第３のステップが、
利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する記述ステップと、
ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする乱数生成ステップと、
前記ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算するビット和演算ステップと、
一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とするハッシュ値演算ステップと、
前記ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする署名生成ステップと、
前記ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する認証用ファイル生成ステップと、
を備えることを特徴とする請求項８に記載のネットワーク認証方法。
【請求項１０】
前記第７のステップが、前記認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して前記認証用ファイルを加工し、前記第８のステップが、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ＿ｉ（ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを認証用ファイルとして送付することを特徴とする請求項８に記載のネットワーク認証方法。
【請求項１１】
前記第９のステップが、
前記ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する生成ステップと、
ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理ステップと、
を備えたことを特徴とする請求項８に記載のネットワーク認証方法。
【請求項１２】
ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法をコンピュータに実行させるためのプログラムであって、
前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、
前記ユーザ端末が、前記認証サーバへ認証要求を送信する第１のステップと、
前記認証サーバが、受信した認証要求に対して、認証を行う第２のステップと、
前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第３のステップと、
前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第４のステップと、
前記ユーザ端末が、受信した前記ファイルを格納する第５のステップと、
前記ユーザ端末が、利用したいサービスを選択する第６のステップと、
前記ユーザ端末が、前記認証用ファイルを加工する第７のステップと、
前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第８のステップと、
前記サービス提供サーバが、前記認証用ファイルの検証を行う第９のステップと、
前記サービス提供サーバが、前記認証用ファイル内のＩＤ情報を取得する第１０のステップと、
前記サービス提供サーバが、該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う第１１のステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ情報やユーザのアクセス履歴等のユーザを識別するための技術を活用し、通信プロトコルに依存しないネットワーク認証システム、ネットワーク認証方法およびプログラムに関する。
【背景技術】
【０００２】
インターネット上のサービス利用における認証手法として、ブラウザを活用する場合には、認証クッキーを利用する手法がある（例えば、非特許文献１参照。）。これは、ユーザの端末をクライアントとし、サービス提供側のサーバをサーバとするクライアントサーバシステムにおいて、サーバがユーザを何らかの手法（例えばＩＤ／パスワード）で認証した際に、認証クッキーと呼ばれるユーザの状態を示すファイルをクライアント側で作成し、以降の認証には、そのファイルを利用することにより行う。しかしながら、このクッキーを利用した認証状態の継続は、ブラウザで利用することが前提となっている。
【０００３】
一方で、近年、端末の小型化や、ネットワークのユビキタス化により屋内のみならず屋外でも、携帯可能な端末を介してサービスを享受する機会が増加している。このため、ある端末から別の端末に移行してサービス提供を受けるような場合や、異なるサービスが連携してサービスを提供するようなサービスの利用形態が想定されている。
【０００４】
こうしたサービス利用において、セキュリティ機能を提供するためには、端末側とネットワーク側とでの連携が必要となり、そのためのプラットフォーム技術の構築が求められている。こうしたプラットフォームでの端末とネットワーク側での通信では、ブラウザを利用しないケースも想定されるため、先のクッキーによる認証をそのまま利用できない可能性がある。
【０００５】
また、このプラットフォーム技術の１つの利用例として、サービス提供者側での認証の手間を軽減するシングルサインオンの技術がある。このブラウザリダイレクトを利用する場合の、シングルサインオンの概要を図６に示す。
【０００６】
このシステムは、図６に示すように、ユーザ端末１と、認証サーバ２と、サービス提供サーバ３とから構成されており、その処理は、次のようになる。まず、ユーザ端末１がサービス提供サーバ３にサービスの利用要求を送信する。具体的には、ユーザ端末１上で、サービスサイトのトップ画面にアクセスする（図中の（１））。
【０００７】
サービス提供サーバ３は、リダイレクトにより、認証サーバ２のサイトへ誘導する（図中の（２））。これにより、ユーザ端末１上に認証用画面が表示される（図中の（３））。ユーザは、認証画面に認証のための情報として、ＩＤやパスワード等必要な情報を入力する（図中の（４））。
【０００８】
認証サーバ２による認証が完了すると、認証サーバ２から認証クッキーが送信され、ユーザ端末１は、これを保存する（図中の（５））。次に、リダイレクトにより、サービス提供サーバ３へ誘導されるとともに、認証サーバ２からサービス提供サーバ３へユーザの認証状態が通知される（図中の（６））。ユーザの認証状態が通知されたサービス提供サーバ３は、ユーザ端末１にサービスを提供するとともに、サービス提供用のクッキーを保存する（図中の（７））。このように、ブラウザの利用を前提としてシングルサイオンが実現し、その過程で認証のためのクッキーがユーザ端末１に保持されていることとなる。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】ＲＦＣ  ２９６５  ＨＴＴＰ  Ｓｔａｔｅ Ｍａｎａｇｅｍｅｎｔ  Ｍｅｃｈａｎｉｓｍ．Ｏｃｔ、２０００．
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、上記のようにインターネット上でのサービス利用におけるクッキーを利用したユーザ認証は、ブラウザでの利用を前提としているため、ブラウザ非依存の通信手法において当該技術を利用することが困難であるという問題がある。また、端末のためのプラットフォーム技術では、端末とネットワーク側との通信において、ブラウザを利用しない通信を必要とすることが想定されるが、上記従来の技術では、このような通信に対応できないという問題がある。
【００１１】
そこで、本発明は、上述の課題に鑑みてなされたものであり、通信プロトコルに依存せず、しかもブラウザを利用しない通信が要求される場合においても適切にネットワーク認証を実行できるネットワーク認証システム、ネットワーク認証方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【００１３】
（１）本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムであって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第１の送信手段（例えば、図２の認証要求送信部１１に相当）を備え、前記認証サーバが、受信した認証要求に対して、認証を行う認証処理手段（例えば、図３の認証処理部２２に相当）と、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する認証用ファイル作成手段（例えば、図３の認証用ファイル作成部２３に相当）と、該作成したファイルを前記ユーザ端末に送信する第２の送信手段と、を備え、前記ユーザ端末が、受信した前記ファイルを格納する格納手段（例えば、図２のファイル格納部１３に相当）と、利用したいサービスを選択する選択手段（例えば、図２のサービス選択部１４に相当）と、前記認証用ファイルを加工する認証用ファイル加工手段（例えば、図２の認証用ファイル加工部１５に相当）と、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第３の送信手段（例えば、図２の認証用ファイル送信部１６に相当）と、を備え、前記サービス提供サーバが、前記認証用ファイルの検証を行う認証手段（例えば、図４の認証用ファイル検証部３２に相当）と、前記認証用ファイル内のＩＤ情報を取得するＩＤ情報取得手段（例えば、図４のＩＤ情報取得部３３に相当）と、該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う情報提供手段（例えば、図４の情報提供部３４に相当）と、を備えたことを特徴とするネットワーク認証システムを提案している。
【００１４】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末の第１の送信手段は、認証サーバへ認証要求を送信する。認証サーバの認証処理手段は、受信した認証要求に対して、認証を行う。認証用ファイル作成手段は、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する。第２の送信手段は、作成したファイルをユーザ端末に送信する。ユーザ端末の格納手段は、受信した前記ファイルを格納する。認証用ファイル加工手段は、認証用ファイルを加工する。選択手段は、利用したいサービスを選択する。第３の送信手段は、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバの認証手段は、認証用ファイルの検証を行う。ＩＤ情報取得手段は、認証用ファイル内のＩＤ情報を取得する。情報提供手段は、検証処理とＩＤ情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するＩＤ情報については、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。その際にサービスに対して送付する必要のないＩＤ情報が除去されるが、認証用ファイルの正当性は墨塗り署名の技術を利用することにより担保されている。
【００１５】
（２）本発明は、（１）の認証システムについて、前記認証サーバの認証用ファイル作成手段が、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する記述手段（例えば、図５の記述部１５１に相当）と、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする乱数生成手段（例えば、図５の乱数生成部１５２に相当）と、前記ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算するビット和演算手段（例えば、図５のビット和演算部１５３に相当）と、一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とするハッシュ値演算手段（例えば、図５のハッシュ値演算部１５４に相当）と、前記ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする署名生成手段（例えば、図５の署名生成部１５５に相当）と、を備え、前記ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成するネットワーク認証システムを提案している。
【００１６】
この発明によれば、記述手段は、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する。乱数生成手段は、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする。ハッシュ値演算手段は、ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算するビット和演算手段と、一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とする。署名生成手段は、ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする。そして、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する。したがって、墨塗り署名の技術を用いることにより、利用者側において、サービスへ提供するＩＤ情報を動的に変化させることができる。
【００１７】
（３）本発明は、（２）の認証システムについて、前記ユーザ端末の前記認証用ファイル加工手段が、前記認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して認証用ファイルを加工し、前記第３の送信手段が、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ＿ｉ（ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを前記認証用ファイルとして送付することを特徴とするネットワーク認証システムを提案している。
【００１８】
この発明によれば、ユーザ端末の認証用ファイル加工手段は、認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して認証用ファイルを加工し、第３の送信手段は、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ＿ｉ（ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを認証用ファイルとして送付する。したがって、ブラウザ非依存のサービスに対しても、認証サーバで生成された認証用ファイルから必要な情報だけを選択する加工処理を行うことによって、サービスに提供するＩＤ情報をクライアントサイドで動的に変更が可能となる。
【００１９】
（４）本発明は、（２）の認証システムについて、前記サービス提供サーバの認証手段が、前記ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する再構築手段（例えば、図６の再構築部２２１に相当）と、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理手段（例えば、図６の署名検証処理部２２２に相当）と、を備えたことを特徴とするネットワーク認証システムを提案している。
【００２０】
この発明によれば、再構築手段は、ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成するとともに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する。署名検証処理手段は、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う。したがって、認証サーバの署名を検証することができるため、高速に認証を完了することができる。
【００２１】
（５）本発明は、（１）のネットワーク認証システムについて、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからシングルサインオンによりユーザ認証されていることを特徴とするネットワーク認証システムを提案している。
【００２２】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからシングルサインオンによりユーザ認証されている。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。
【００２３】
（６）本発明は、（１）のネットワーク認証システムについて、前記ユーザを識別するためのファイルがクッキーファイルであることを特徴とするネットワーク認証システムを提案している。
【００２４】
この発明によれば、ユーザを識別するためのファイルがクッキーファイルである。したがって、ユーザ端末とサービス提供サーバの間では、ブラウザリダイレクトを用いるシングルサインオンによるユーザ認証が利用でき、認証サーバとの認証においては、別の認証用ファイルを用いることにより、ブラウザに依存しないプロトコルを利用することが可能となる。
【００２５】
（７）本発明は、（１）のネットワーク認証システムについて、前記ユーザ端末と認証サーバとの間には、安全な通信路が形成されていることを特徴とするネットワーク認証システムを提案している。
【００２６】
この発明によれば、ユーザ端末と認証サーバとの間には、安全な通信路が形成されている。したがって、ユーザ端末と認証サーバとの間で、交換される認証用ファイルの漏洩を防止して、ユーザのプライバシを保護することができる。
【００２７】
（８）本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法であって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第１のステップ（例えば、図７のステップＳ１０１に相当）と、前記認証サーバが、受信した認証要求に対して、認証を行う第２のステップ（例えば、図７のステップＳ１０２に相当）と、前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第３のステップ（例えば、図７のステップＳ１０３に相当）と、前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第４のステップ（例えば、図７のステップＳ１０４に相当）と、前記ユーザ端末が、受信した前記ファイルを格納する第５のステップ（例えば、図７のステップＳ１０５に相当）と、前記ユーザ端末が、利用したいサービスを選択する第６のステップ（例えば、図７のステップＳ１０６に相当）と、前記ユーザ端末が、前記認証用ファイルを加工する第７のステップ（例えば、図７のステップＳ１０７に相当）と、前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第８のステップ（例えば、図７のステップＳ１０８に相当）と、前記サービス提供サーバが、前記認証用ファイルの検証を行う第９のステップ（例えば、図７のステップＳ１０９に相当）と、前記サービス提供サーバが、前記認証用ファイル内のＩＤ情報を取得する第１０のステップ（例えば、図７のステップＳ１１０に相当）と、前記サービス提供サーバが、該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う第１１のステップ（例えば、図７のステップＳ１１１に相当）と、を備えたことを特徴とするネットワーク認証方法を提案している。
【００２８】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、前記認証用ファイルの検証を行い、認証用ファイル内のＩＤ情報を取得して、検証処理とＩＤ情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するＩＤ情報については、墨塗り署名の技術を利用することにより、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【００２９】
（９）本発明は、（８）のネットワーク認証方法について、前記第３のステップが、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する記述ステップ（例えば、図８のステップＳ２０１に相当）と、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする乱数生成ステップ（例えば、図８のステップＳ２０２に相当）と、前記ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算するビット和演算ステップ（例えば、図８のステップＳ２０３に相当）と、一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とするハッシュ値演算ステップ（例えば、図８のステップＳ２０４に相当）と、前記ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする署名生成ステップ（例えば、図８のステップＳ２０５に相当）と、前記ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する認証用ファイル生成ステップ（例えば、図８のステップＳ２０６に相当）と、を備えることを特徴とするネットワーク認証方法を提案している。
【００３０】
この発明によれば、第３のステップにおいて、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述し、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする。次に、ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算し、一方向性のハッシュ関数ｈ（）を用いて、前記ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とする。さらに、ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとし、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する。したがって、墨塗り署名の技術を用いることにより、利用者側において、サービスへ提供するＩＤ情報を動的に変化させることができる。
【００３１】
（１０）本発明は、（８）のネットワーク認証方法について、前記第７のステップが、前記認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して前記認証用ファイルを加工し、前記第８のステップが、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ_i （ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを認証用ファイルとして送付することを備えることを特徴とするネットワーク認証方法を提案している。
【００３２】
この発明によれば、第７のステップにおいて、認証サーバから取得した認証用ファイルのＩＤ情報のうち、利用したいサービスに対して提供するデータｉ＝ｎ（ｎ＝ｋ＿１、ｋ＿２、ｋ＿３・・・）のみを選別して認証用ファイルを加工し、第８のステップにおいて、利用したいサービスに対して、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）と、ｈｄａｔａ＿ｉ（ｉ∈ｎ）、ｈｄａｔａ＿ａｌｌ、 ｓｉｇｎ＿ａｌｌを認証用ファイルとして送付する。したがって、ブラウザ非依存のサービスに対しても、認証サーバで生成された認証用ファイルから必要な情報だけを選択する加工処理を行うことによって、サービスに提供するＩＤ情報をクライアントサイドで動的に変更が可能となる。
【００３３】
（１１）本発明は、（８）のネットワーク認証方法について、前記第８のステップが、前記ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する生成ステップ（例えば、図９のステップＳ３０１に相当）と、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う署名検証処理ステップ（例えば、図９のステップＳ３０２に相当）と、を備えたことを特徴とするネットワーク認証方法を提案している。
【００３４】
この発明によれば、第８のステップが、ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ_i （ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成し、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う。したがって、認証サーバの署名を検証することができるため、高速に認証を完了することができる。
【００３５】
（１２）本発明は、ユーザ端末と認証サーバと非ブラウザベースのサービス提供サーバとからなるネットワーク認証システムにおけるネットワーク認証方法をコンピュータに実行させるためのプログラムであって、前記ユーザ端末は、前記サービス提供サーバからのサービスの提供に関して、前記認証サーバからユーザ認証されており、前記ユーザ端末が、前記認証サーバへ認証要求を送信する第１のステップ（例えば、図７のステップＳ１０１に相当）と、前記認証サーバが、受信した認証要求に対して、認証を行う第２のステップ（例えば、図７のステップＳ１０２に相当）と、前記認証サーバが、該認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成する第３のステップ（例えば、図７のステップＳ１０３に相当）と、前記認証サーバが、該作成したファイルを前記ユーザ端末に送信する第４のステップ（例えば、図７のステップＳ１０４に相当）と、前記ユーザ端末が、受信した前記ファイルを格納する第５のステップ（例えば、図７のステップＳ１０５に相当）と、前記ユーザ端末が、利用したいサービスを選択する第６のステップ（例えば、図７のステップＳ１０６に相当）と、前記ユーザ端末が、前記認証用ファイルを加工する第７のステップ（例えば、図７のステップＳ１０７に相当）と、前記ユーザ端末が、前記サービス提供サーバに対して、前記認証用ファイルとともに、認証要求を送信する第８のステップ（例えば、図７のステップＳ１０８に相当）と、前記サービス提供サーバが、前記認証用ファイルの検証を行う第９のステップ（例えば、図７のステップＳ１０９に相当）と、前記サービス提供サーバが、前記認証用ファイル内のＩＤ情報を取得する第１０のステップ（例えば、図７のステップＳ１１０に相当）と、前記サービス提供サーバが、該検証処理とＩＤ情報の取得が完了した後に、情報提供を行う第１１のステップ（例えば、図７のステップＳ１１１に相当）と、をコンピュータに実行させるためのプログラムを提案している。
【００３６】
この発明によれば、ユーザ端末は、サービス提供サーバからのサービスの提供に関して、認証サーバからユーザ認証されており、ユーザ端末が、認証サーバへ認証要求を送信する。認証サーバは、受信した認証要求に対して、認証を行い、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して、作成したファイルをユーザ端末に送信する。ユーザ端末は、受信したファイルを格納し、利用したいサービスを選択して、認証用ファイルを加工し、サービス提供サーバに対して、認証用ファイルとともに、認証要求を送信する。サービス提供サーバは、前記認証用ファイルの検証を行い、認証用ファイル内のＩＤ情報を取得して、検証処理とＩＤ情報の取得が完了した後に、情報提供を行う。したがって、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、サービス事業者に提出するＩＤ情報については、墨塗り署名の技術を利用することにより、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【発明の効果】
【００３７】
本発明によれば、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となるという効果がある。また、認証サーバの署名を検証することができるため、高速に認証を完了することができるという効果がある。さらに、サービス事業者に提出するＩＤ情報については、墨塗り署名の技術を利用することで、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができるという効果がある。
【図面の簡単な説明】
【００３８】
【図１】本実施形態に係るネットワーク認証システムの構成を示す図である。
【図２】本実施形態に係るユーザ端末の構成を示す図である。
【図３】本実施形態に係る認証サーバの構成を示す図である。
【図４】本実施形態に係るサービス提供サーバの構成を示す図である。
【図５】本実施形態に係る認証サーバの認証用ファイル作成部の詳細な構成を示す図である。
【図６】本実施形態に係るサービス提供サーバの認証用ファイル検証部の詳細な構成を示す図である。
【図７】本実施形態に係るネットワーク認証システムの処理を示す図である。
【図８】本実施形態に係る認証サーバの認証用ファイル作成部の処理を示す図である。
【図９】本実施形態に係るサービス提供サーバの認証用ファイル検証部の処理を示す図である。
【図１０】シングルサインオンを実行するシステムの構成および処理を説明するための図である。
【発明を実施するための形態】
【００３９】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００４０】
図１から図９を用いて、本実施形態に係るネットワーク認証システムについて説明する。
【００４１】
＜ネットワーク認証システムの構成＞
図１を用いて、本実施形態に係るネットワーク認証システムの構成について説明する。
【００４２】
本実施形態に係るネットワーク認証システムは、ユーザ端末１と、認証サーバ２と、サービス提供サーバ３とから構成されている。ここで、ユーザ端末１とサービス提供サーバ３との間は、認証サーバ２を介したシングルサインオンにより、ユーザ認証がなされている。
【００４３】
また、図示しないプラットフォームの機能を提供するサービス提供サーバ３は、シングルサインオンや、その後のサービス利用などのセッションの管理や、利用者の情報、サービス利用時の状態などの管理を行っている。なお、認証サーバ２とサービス提供サーバ３の間での認証や、利用者によるサービス利用では、ブラウザが利用されることが前提となるが、サービスによっては、ブラウザを利用しないことも想定される。この状況に対応すべく、本実施形態では、認証用ファイルを用いた認証手法を提案している。その際に、サービス提供サーバ３に提供するＩＤ情報の選択については、プライバシ保護の観点からサービスごとに異なることが想定される。このため、サービス提供サーバ３に提供するＩＤ情報については墨塗り署名の技術を利用することにより、クライアント側での動的な選択を可能としている。
【００４４】
＜ユーザ端末の構成＞
図２を用いて、本実施形態に係るユーザ端末の構成について説明する。
【００４５】
本実施形態に係るユーザ端末は、図２に示すように、認証要求送信部１１と、受信部１２と、ファイル格納部１３と、サービス選択部１４と、認証用ファイル加工部１５と、認証用ファイル送信部１６とから構成されている。
【００４６】
認証要求送信部１１は、認証サーバ２へＩＤやパスワード等を送信することにより、認証要求を送信する。受信部１２は、認証サーバ２における認証処理の完了後に、作成したユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル（例えば、クッキーファイル）と認証用ファイルとを受信する。
【００４７】
ファイル格納部１３は、受信部１２が受信したユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル（例えば、クッキーファイル）と認証用ファイルとを格納する。サービス選択部１４は、利用したいサービスを選択する。
【００４８】
認証用ファイル加工部１５は、認証用ファイルからサービスに提供するＩＤ情報を選択して、加工する。認証用ファイル送信部１６は、サービス提供サーバ３に対して、加工した認証用ファイルとともに、認証要求を送信する。
【００４９】
＜認証サーバの構成＞
図３を用いて、本実施形態に係る認証サーバの構成について説明する。
【００５０】
本実施形態に係る認証サーバは、図３に示すように、認証要求受信部２１と、認証処理部２２と、認証用ファイル作成部２３と、認証用ファイル送信部２４とから構成されている。
【００５１】
認証要求受信部２１は、ユーザ端末１からＩＤやパスワード等を伴った認証要求を受信する。認証処理部２２は、受信したＩＤやパスワード等に基づいて、ユーザ認証を実行する。認証用ファイル作成部２３は、認証処理の完了後に、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイル（例えば、クッキーファイル）と認証用ファイルとを作成する。なお、認証用ファイルには、ユーザの認証状態（認証済みであること）と、有効期限およびサービス提供にあたり必要なＩＤ情報が記されている。また、ＩＤ情報をクライアント側で提供する情報が選択できるように、送付しないＩＤ情報を元の認証用ファイルから削除し、加工された認証用ファイルであっても、墨塗り署名を用いてその正当性が担保される。認証用ファイル送信部２４は、作成したファイルをユーザ端末１に送信する。
【００５２】
＜サービス提供サーバの構成＞
図４を用いて、本実施形態に係る機能提供サーバの構成について説明する。
【００５３】
本実施形態に係るサービス提供サーバは、図４に示すように、認証用ファイル受信部３１と、認証用ファイル検証部３２と、ＩＤ情報取得部３３と、情報提供部３４とから構成されている。
【００５４】
認証用ファイル受信部３１は、ユーザ端末１から認証用ファイルを受信する。認証用ファイル検証部３２は、認証用ファイルの検証を行う。ＩＤ情報取得部３３は、認証用ファイル内のＩＤ情報を取得する。情報提供部３４は、検証処理とＩＤ情報の取得が完了した後に、ユーザ端末１に対して、情報提供を行う。
【００５５】
＜認証サーバの認証用ファイル作成部の詳細な構成＞
図５を用いて、本実施形態に係る認証サーバの認証用ファイル作成部の詳細な構成について説明する。
【００５６】
本実施形態に係る認証サーバの認証用ファイル作成部は、図５に示すように、記述部１５１と、乱数生成部１５２と、ビット和演算部１５３と、ハッシュ値演算部１５４と、署名生成部１５５と、認証用ファイル作成部１５６とから構成されている。
【００５７】
記述部１５１は、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述する。乱数生成部１５２は、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする。ビット和演算部１５３は、ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算する。
【００５８】
ハッシュ値演算部１５４は、一方向性のハッシュ関数ｈ（）を用いて、ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とする。署名生成部１５５は、ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとする。認証用ファイル作成部１５６は、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する。
【００５９】
＜サービス提供サーバの認証用ファイル検証部の詳細な構成＞
図６を用いて、本実施形態に係るサービス提供サーバの認証用ファイル検証部の詳細な構成について説明する。
【００６０】
本実施形態に係るサービス提供サーバの認証用ファイル検証部は、図６に示すように、再構築部２２１と、署名検証処理部２２２とから構成されている。
【００６１】
再構築部２２１は、ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ∈ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する。署名検証処理部２２２は、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う。
【００６２】
＜ネットワーク認証システムの処理＞
図７を用いて、本実施形態に係る機能提供サーバの処理について説明する。
【００６３】
まず、前提条件として、ユーザ端末１は、サービス提供サーバ３からのサービスの提供に関して、認証サーバ２からユーザ認証されている。ユーザ端末１は、認証サーバ２へ認証要求を送信する（ステップＳ１０１）。認証サーバ２は、受信した認証要求に対して、認証を行い（ステップＳ１０２）、認証処理の完了後に、墨塗り署名を利用し、ユーザ情報やユーザのアクセス履歴等のユーザを識別するためのファイルと認証用ファイルとを作成して（ステップＳ１０３）、作成したファイルをユーザ端末１に送信する（ステップＳ１０４）。
【００６４】
ユーザ端末１は、受信したファイルを格納し（ステップＳ１０５）、利用したいサービスを選択して（ステップＳ１０６）、認証用ファイルを加工し（ステップＳ１０７）、サービス提供サーバ３に対して、認証用ファイルとともに、認証要求を送信する（ステップＳ１０８）。サービス提供サーバ３は、認証用ファイルの検証を行い（ステップＳ１０９）、認証用ファイル内のＩＤ情報を取得して（ステップＳ１１０）、検証処理とＩＤ情報の取得が完了した後に、情報提供を行う（ステップＳ１１１）。
【００６５】
＜認証サーバの認証用ファイル作成部の処理＞
図８を用いて、本実施形態に係る認証サーバの認証用ファイル作成部の処理について説明する。
【００６６】
まず、利用者の認証を完了した後に、利用者のＩＤ情報を全て用意し、これらのＩＤ情報のうち、ｉ番目のＩＤ情報をｉｎｆｏ＿ｉと記述し（ステップＳ２０１）、ＩＤ情報と同じ数だけの乱数を生成し、ｉ番目の乱数をｒａｎｄ＿ｉとする（ステップＳ２０２）。
【００６７】
次に、ｉｎｆｏ＿ｉと、ｒａｎｄ＿ｉ のビット和（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）を演算し（ステップＳ２０３）、一方向性のハッシュ関数ｈ（）を用いて、ビット和のハッシュ値を演算し、ｉ番目のデータを、ｈｄａｔａ＿ｉ  ＝  ｈ（ｉｎｆｏ＿ｉ  ｜｜  ｒａｎｄ＿ｉ）とするとともに、全てのｈｄａｔａのビット和を作成し、そのハッシュ値をｈｄａｔａ＿ａｌｌ＝ ｈ（ｈｄａｔａ＿０  ｜｜ ｈｄａｔａ＿１  ｜｜  ・・・｜｜ ｈｄａｔａ＿ｎ） とする（ステップＳ２０４）。
【００６８】
さらに、ｈｄａｔａ＿ａｌｌに対して、自身の秘密鍵を用いて署名を生成し、この署名データを、ｓｉｇｎ＿ａｌｌとして（ステップＳ２０５）、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ およびｓｉｇｎ＿ａｌｌから認証用ファイル（Ｆ＿ａｕｔｈ）を生成する（ステップＳ２０６）。
【００６９】
＜サービス提供サーバの認証用ファイル検証部の処理＞
図９を用いて、本実施形態に係るサービス提供サーバの認証用ファイル検証部の処理について説明する。
【００７０】
まず、ユーザ端末から送付された、ｉｎｆｏ＿ｉ、ｒａｎｄ＿ｉ（ｉ＝ｎ）から、ｈｄａｔａ＿ｉ（ｉ＝ｎ）を生成し、さらに、ｈｄａｔａ＿ｉ （ｉ≠ｎ）とあわせて、ｈｄａｔａ＿ａｌｌを生成する（ステップＳ３０１）。そして、ｓｉｇｎ＿ａｌｌを認証サーバの公開鍵を用いて、署名検証処理を行う（ステップＳ３０２）。
【００７１】
したがって、本実施形態によれば、ブラウザリダイレクトを用いるシングルサインオンであっても、非ブラウザ依存のプロトコルを利用することが可能となる。また、認証サーバの署名を検証することができるため、高速に認証を完了することができる。さらに、サービス事業者に提出するＩＤ情報については、墨塗り署名の技術を利用することで、クライアント側でコントロールすることが可能であり、利用者のプライバシを守ることができる。
【００７２】
なお、ネットワーク認証システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをユーザ端末、認証サーバおよびサービス提供サーバに読み込ませ、実行することによって本発明のネットワーク認証システムを実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺装置等のハードウェアを含む。
【００７３】
また、「コンピュータシステム」は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）システムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００７４】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７５】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００７６】
１；ユーザ端末
２；認証サーバ
３；サービス提供サーバ
１１；認証要求送信部
１２；受信部
１３；ファイル格納部
１４；サービス選択部
１５；認証用ファイル加工部
１６；認証用ファイル送信部
２１；認証要求受信部
２２；認証処理部
２３；認証用ファイル作成部
３１；認証用ファイル受信部
３２；認証用ファイル検証部
３３；ＩＤ情報取得部
３４；情報提供部
１５１；記述部
１５２；乱数生成部
１５３；ビット和演算部
１５４；ハッシュ値演算部
１５５；署名生成部
１５６；認証用ファイル生成部
２２１；再構築部
２２２；署名検証処理部
【図２】
2012128726.tif 000003
【図３】
2012128726.tif 000004
【図４】
2012128726.tif 000005
【図５】
2012128726.tif 000006
【図６】
2012128726.tif 000007
【図７】
2012128726.tif 000008
【図８】
2012128726.tif 000009
【図９】
2012128726.tif 000010
【図１】
2012128726.tif 000011
【図１０】
2012128726.tif 000012