(57)【要約】【課題】属性認証の際に匿名性を保証し、かつ、第三者との間で通信を要することなく属性情報の匿名化を行うことのできるとともに、匿名認証を行った場合においても失効確認を可能とし、かつ、失効確認における処理負荷を分散してコストの低減を実現する。【解決手段】ＣＡサーバ３は、属性情報として発行者の署名が付与された公開鍵の鍵情報を生成する。そして、その鍵情報は、ユーザ端末１が、生成される乱数を公開鍵と発行者の署名とからなる属性証明書に乗じて変形してＳＰサーバ２へ送信する。ＳＰサーバ２は、失効検証局サーバ４から失効リストを受信し、認証処理時に、に失効確認依頼を行い、失効していない場合に、属性証明書と署名鍵との関係が正式な署名として成立することを検証して、要求されたサービスの提供を行う。【選択図】図１
2008046946.tif 000002
【特許請求の範囲】
【請求項１】
属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムであって、
前記属性認証局サーバは、前記ユーザ端末から属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名を行って属性証明書を生成する生成手段と、該生成した属性証明書を要求のあったユーザ端末へ送信する属性証明書送信手段と、を備え、
前記ユーザ端末は、前記サービス提供サーバにサービス提供要求を送信するサービス提供要求送信手段と、乱数を生成し、該生成した乱数を前記属性認証局サーバから受信した属性証明書に乗じることにより変形し、該変形された属性情報と前記サービス提供サーバから送信されるチャレンジ情報に対し演算された署名値とを前記サービス提供サーバに返信する返信手段と、を備え、
前記失効検証局サーバは、前記ユーザ端末から送信された秘密鍵を登録する登録手段と、該登録手段に登録した秘密鍵の失効リストを定期的に発行する失効リスト発行手段と、前記サービス提供サーバからの要求に応じて、該発行した失効リストを送信する失効リスト送信手段と、を備え、
前記サービス提供サーバは、前記変形された属性証明書ならびに署名値に対して、それぞれその正当性についての検証を行い、正当であると判断したときに、サービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供するサービス提供手段と、前記失効検証局サーバから失効リストを受信する受信手段と、認証処理時に、該受信手段により受信した失効リストに基づいて失効確認処理を実行する失効確認手段と、
を備えたことを特徴とする属性認証システム。
【請求項２】
前記属性認証局サーバは、各属性に対し複数の前記署名鍵を割付け、前記署名鍵を定期的に更新する更新手段を更に備えたことを特徴とする請求項１に記載の属性認証システム。
【請求項３】
前記サービス提供サーバは、前記失効リストに記載された秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リスト内の署名値に一致するか否かにより失効確認処理を実行することを特徴とする請求項１または請求項２に記載の属性認証システム。
【請求項４】
タイムスタンプサーバをさらに備え、
前記失効検証局サーバが発行する前記失効リストには、有効期限内ですでに失効した秘密鍵の情報に、前記タイムスタンプサーバから取得したタイムスタンプが付与されていることを特徴とする請求項１から請求項３のいずれかに記載の属性認証システム。
【請求項５】
前記失効検証局サーバが発行する前記失効リストには、さらに、前記失効検証局サーバが保有する秘密鍵を用いた署名が付与されていることを特徴とする請求項４に記載の属性認証システム。
【請求項６】
属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムにおける属性情報の匿名化方法であって、
前記ユーザ端末が、ネットワークを介して接続される前記属性認証局サーバに対し属性証明書の発行要求を送信する第１のステップと、
前記属性認証局サーバが、前記属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあった前記ユーザ端末へ送信する第２のステップと、
前記ユーザ端末が、前記ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信する第３のステップと、
前記サービス提供要求を受信した前記サービス提供サーバが、乱数を生成してチャレンジ情報を前記ユーザ端末に送信する第４のステップと、
前記チャレンジ情報を受信した前記ユーザ端末が、乱数を生成し、前記属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、該変形された属性情報と、前記サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とを前記サービス提供サーバに返信する第５のステップと、
前記サービス提供サーバが、前記変形された属性証明書ならびに署名値に対してそれぞれ検証を行う第６のステップと、
前記サービス提供サーバが、前記失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行する第７のステップと、
前記第６のステップにおける検証結果が正当であるときに、前記サービス提供サーバがサービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供する第８のステップと、
を有することを特徴とする属性認証システムにおける属性情報の匿名化方法。
【請求項７】
前記第７のステップにおいて、前記サービス提供サーバは、前記秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リストの署名値に一致するか否かにより失効確認処理を実行することを特徴とする請求項６に記載の属性認証システムにおける属性情報の匿名化方法。
【請求項８】
属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラムであって、
前記ユーザ端末が、ネットワークを介して接続される前記属性認証局サーバに対し属性証明書の発行要求を送信する第１のステップと、
前記属性認証局サーバが、前記属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあった前記ユーザ端末へ送信する第２のステップと、
前記ユーザ端末が、前記ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信する第３のステップと、
前記サービス提供要求を受信した前記サービス提供サーバが、乱数を生成してチャレンジ情報を前記ユーザ端末に送信する第４のステップと、
前記チャレンジ情報を受信した前記ユーザ端末が、乱数を生成し、前記属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、該変形された属性情報と、前記サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とを前記サービス提供サーバに返信する第５のステップと、
前記サービス提供サーバが、前記変形された属性証明書ならびに署名値に対してそれぞれ検証を行う第６のステップと、
前記サービス提供サーバが前記失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行する第７のステップと、
前記第６のステップにおける検証結果が正当であるときに、前記サービス提供サーバがサービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供する第８のステップと、
を有することを特徴とする属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラム。
【請求項９】
前記第７のステップにおいて、前記サービス提供サーバは、前記秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リストの署名値に一致するか否かにより失効確認処理を実行することを特徴とする請求項８に記載の属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、属性認証システム、同システムにおける属性情報の匿名化方法およびプログラムに関し、特に、属性情報の匿名化を行った場合でも失効確認を可能とするとともに、失効確認に関する処理の負荷分散を図った属性認証システム、同システムにおける属性情報の匿名化方法およびプログラムに関する。
【背景技術】
【０００２】
近年、様々なサービスがインターネットを通して電子的に提供されるようになってきている。そのようなサービス提供を行う際には、利用者を認証することが不可欠となる。ここで、利用者を認証する方法は、通常、個人を特定する認証と、属性認証等、個人を特定しない認証（例えば、特許文献１参照）とに大別される。
【特許文献１】特公平８−２０５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、従来の属性認証では、属性情報の匿名性について考慮されていなかった。また、一部、匿名化のための研究は成されているが、その内容が不十分であり、更に、属性認証を行う際に第三者との通信を必要としていた。このため、第三者によって通信が観測され、利用者の行動が追跡される恐れがあり、プライバシー保護に関する問題が技術的課題として残されていた。
【０００４】
また、一方で、属性情報の匿名性を考慮した匿名認証を行った場合には、失効確認を行うことができないという問題があった。さらに、失効確認を実現するためには、システム全体の処理負荷を考慮しないとコストの増大をもたらすという問題があった。
【０００５】
そこで、本発明は、上記事情に鑑みてなされたものであり、属性認証の際に匿名性を保証し、かつ、第三者との間で通信を要することなく属性情報の匿名化を行うことのできるとともに、匿名認証を行った場合においても失効確認を可能とし、かつ、失効確認における処理負荷を分散してコストの低減を実現する属性認証システムおよび同システムにおける属性情報の匿名化方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上記した課題を解決するために以下の事項を提案している。
（１）本発明は、属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムであって、前記属性認証局サーバ（例えば、図１のＣＡサーバ３に相当）は、前記ユーザ端末から属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名を行って属性証明書を生成する生成手段と、該生成した属性証明書を要求のあったユーザ端末へ送信する属性証明書送信手段と、を備え、前記ユーザ端末（例えば、図１のユーザ端末１に相当）は、前記サービス提供サーバにサービス提供要求を送信するサービス提供要求送信手段と、乱数を生成し、該生成した乱数を前記属性認証局サーバから受信した属性証明書に乗じることにより変形し、該変形された属性情報と前記サービス提供サーバから送信されるチャレンジ情報に対し演算された署名値とを前記サービス提供サーバに返信する返信手段とを備え、前記失効検証局サーバ（例えば、図１の失効検証局サーバ４に相当）は、前記ユーザ端末から送信された秘密鍵を登録する登録手段と、該登録手段に登録した秘密鍵の失効リストを定期的に発行する失効リスト発行手段と、前記サービス提供サーバからの要求に応じて、該発行した失効リストを送信する失効リスト送信手段と、を備え、前記サービス提供サーバ（例えば、図１のＳＰサーバ２に相当）は、前記変形された属性証明書ならびに署名値に対して、それぞれその正当性についての検証を行い、正当であると判断したときに、サービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供するサービス提供手段と、前記失効検証局サーバから失効リストを受信する受信手段と、認証処理時に、該受信手段により受信した失効リストに基づいて失効確認処理を実行する失効確認手段と、を備えたことを特徴とする属性認証システムを提案している。
【０００７】
この発明によれば、属性認証局サーバは、ユーザ端末から属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名を行って属性証明書を生成し、生成した属性証明書を要求のあったユーザ端末へ送信する。ユーザ端末は、サービス提供サーバにサービス提供要求を送信するとともに、乱数を生成し、生成した乱数を属性認証局サーバから受信した属性証明書に乗じることにより変形し、変形された属性情報とサービス提供サーバから送信されるチャレンジ情報に対し演算された署名値とをサービス提供サーバに返信する。失効検証局サーバは、ユーザ端末から送信された秘密鍵を登録し、登録した秘密鍵の失効リストを定期的に発行する。また、サービス提供サーバからの要求に応じて、発行した失効リストを送信する。サービス提供サーバは、変形された属性証明書ならびに署名値に対して、それぞれその正当性についての検証を行い、正当であると判断したときに、サービス提供要求のあったユーザ端末に対し属性に基づくサービスを提供する。また、失効検証局サーバから失効リストを受信し、認証処理時に、受信した失効リストに基づいて失効確認処理を実行する。したがって、属性認証の際に匿名性を保証し、かつ、第三者との間で通信を要することなく属性情報の匿名化を行うことができるとともに、匿名認証を行った場合においても失効確認が可能となる。また、失効確認処理をサービス提供サーバ側で実行することにより、システム全体の処理負荷を分散することができる。
【０００８】
（２）本発明は、（１）に記載の属性認証システムにおいて、前記属性認証局サーバ（例えば、図１のＣＡサーバ３に相当）は、各属性に対し複数の前記署名鍵を割付け、前記署名鍵を定期的に更新する更新手段を更に備えたことを特徴とする属性認証システムを提案している。
【０００９】
この発明によれば、属性認証局サーバは、各属性に対し複数の署名鍵を割付け、署名鍵を定期的に更新する更新手段を備えている。これにより、有効期限の管理を適切に実行することができる。
【００１０】
（３）本発明は、（１）または（２）に記載の属性認証システムにおいて、前記サービス提供サーバ（例えば、図１のＳＰサーバ２に相当）は、前記失効リストに記載された秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リスト内の署名値に一致するか否かにより失効確認処理を実行することを特徴とする属性認証システムを提案している。
【００１１】
この発明によれば、サービス提供サーバは、失効検証局サーバから受信したサービス提供サーバから乱数と署名値を受信し、登録手段に登録した秘密鍵に対して受信した失効リストに記載された秘密鍵に対して乱数の署名値をそれぞれ演算し、演算した署名値が受信した署名値に一致するか否かにより失効確認処理を実行する。これにより、使用された鍵を確実に特定することができる。
【００１２】
（４）本発明は、（１）から（３）のいずれかに記載の属性認証システムにおいて、タイムスタンプサーバ（例えば、図１のタイムスタンプサーバ６に相当）をさらに備え、前記失効検証局サーバが発行する前記失効リストには、有効期限内ですでに失効した秘密鍵の情報に、前記タイムスタンプサーバから取得したタイムスタンプが付与されていることを特徴とする属性認証システムを提案している。
【００１３】
この発明によれば、失効検証局サーバが発行する失効リストには、有効期限内ですでに失効した秘密鍵の情報に、タイムスタンプサーバから取得したタイムスタンプが付与されている。すなわち、サービス提供サーバによる失効リストに基づいた失効確認処理では、秘密鍵自体が露見してしまうため、どのタイミングでその秘密鍵が失効したのかを把握しておかないと、この秘密鍵を用いた不正行為が行われる可能性がある。しかし、本発明においては、信頼できる第三者機関であるタイムスタンプサーバからのタイムスタンプが付与されているため、相互検証が可能となり、上記のような不正行為を未然に防止することができる。
【００１４】
（５）本発明は、（４）に記載の属性認証システムにおいて、前記失効検証局サーバが発行する前記失効リストには、さらに、前記失効検証局サーバが保有する秘密鍵を用いた署名が付与されていることを特徴とする属性認証システムを提案している。
【００１５】
この発明によれば、失効リストには、さらに、失効検証局サーバが保有する秘密鍵を用いた署名が付与されている。したがって、サービス提供サーバは、この署名により、誰が発行したものなのかを確実に特定することができる。
【００１６】
（６）本発明は、属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムにおける属性情報の匿名化方法であって、前記ユーザ端末が、ネットワークを介して接続される前記属性認証局サーバに対し属性証明書の発行要求を送信する第１のステップ（例えば、図２のステップＳ２０２あるいは図３のステップＳ３０３に相当）と、前記属性認証局サーバが、前記属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあった前記ユーザ端末へ送信する第２のステップ（例えば、図２のステップＳ２０３に相当）と、前記ユーザ端末が、前記ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信する第３のステップ（例えば、図２のステップＳ２０４あるいは図３のステップＳ３０５に相当）と、前記サービス提供要求を受信した前記サービス提供サーバが、乱数を生成してチャレンジ情報を前記ユーザ端末に送信する第４のステップ（例えば、図２のステップＳ２０５に相当）と、前記チャレンジ情報を受信した前記ユーザ端末が、乱数を生成し、前記属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、該変形された属性情報と、前記サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とを前記サービス提供サーバに返信する第５のステップ（例えば、図２のステップＳ２０６に相当）と、前記サービス提供サーバが、前記変形された属性証明書ならびに署名値に対してそれぞれ検証を行う第６のステップ（例えば、図３のステップＳ３１０に相当）と、前記サービス提供サーバが前記失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行する第７のステップ（例えば、図３のステップＳ３０９に相当）と、前記第６のステップにおける検証結果が正当であるときに、前記サービス提供手段がサービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供する第８のステップ（例えば、図２のステップＳ２０７あるいは図３のステップＳ３１１に相当）と、を有することを特徴とする属性認証システムにおける属性情報の匿名化方法を提案している。
【００１７】
この発明によれば、ユーザ端末が、ネットワークを介して接続される属性認証局サーバに対し属性証明書の発行要求を送信し、属性認証局サーバが、属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあったユーザ端末へ送信する。そして、ユーザ端末が、ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信し、サービス提供要求を受信したサービス提供サーバが、乱数を生成してチャレンジ情報をユーザ端末に送信する。チャレンジ情報を受信したユーザ端末は、乱数を生成し、属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、変形された属性情報と、サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とをサービス提供サーバに返信する。そして、サービス提供サーバが、変形された属性証明書ならびに署名値に対してそれぞれ検証を行い、サービス提供サーバが失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行し、検証結果が正当であるときに、サービス提供サーバがサービス提供要求のあったユーザ端末に対し属性に基づくサービスを提供する。これにより、属性認証の際に匿名性を保証し、かつ、第三者との間で通信を要することなく属性情報の匿名化を行うことができるとともに、匿名認証を行った場合においても失効確認が可能となる。また、失効確認処理をサービス提供サーバ側で実行することにより、システム全体の処理負荷を分散することができる。
【００１８】
（７）本発明は、（６）の属性認証システムにおける属性情報の匿名化方法について、前記第７のステップにおいて、前記サービス提供サーバは、前記秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リストの署名値に一致するか否かにより失効確認処理を実行することを特徴とする属性認証システムにおける属性情報の匿名化方法を提案している。
【００１９】
この発明によれば、サービス提供サーバは、秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した失効リストの署名値に一致するか否かにより失効確認処理を実行する。これにより、使用された鍵を確実に特定することができる。
【００２０】
（８）本発明は、属性認証局サーバと、ユーザ端末と、失効検証局サーバと、サービス提供サーバとがネットワークを介して接続されて成る属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラムであって、前記ユーザ端末が、ネットワークを介して接続される前記属性認証局サーバに対し属性証明書の発行要求を送信する第１のステップ（例えば、図２のステップＳ２０２あるいは図３のステップＳ３０３に相当）と、前記属性認証局サーバが、前記属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあった前記ユーザ端末へ送信する第２のステップ（例えば、図２のステップＳ２０３に相当）と、前記ユーザ端末が、前記ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信する第３のステップ（例えば、図２のステップＳ２０４あるいは図３のステップＳ３０５に相当）と、前記サービス提供要求を受信した前記サービス提供サーバが、乱数を生成してチャレンジ情報を前記ユーザ端末に送信する第４のステップ（例えば、図２のステップＳ２０５に相当）と、前記チャレンジ情報を受信した前記ユーザ端末が、乱数を生成し、前記属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、該変形された属性情報と、前記サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とを前記サービス提供サーバに返信する第５のステップ（例えば、図２のステップＳ２０６に相当）と、前記サービス提供サーバが、前記変形された属性証明書ならびに署名値に対してそれぞれ検証を行う第６のステップ（例えば、図３のステップＳ３１０に相当）と、前記サービス提供サーバが前記失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行する第７のステップ（例えば、図３のステップＳ３０９に相当）と、前記第６のステップにおける検証結果が正当であるときに、前記サービス提供手段がサービス提供要求のあった前記ユーザ端末に対し前記属性に基づくサービスを提供する第８のステップ（例えば、図２のステップＳ２０７あるいは図３のステップＳ３１１に相当）と、を有することを特徴とする属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラムを提案している。
【００２１】
この発明によれば、ユーザ端末が、ネットワークを介して接続される属性認証局サーバに対し属性証明書の発行要求を送信し、属性認証局サーバが、属性証明書の発行要求を受信したときに、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあったユーザ端末へ送信する。そして、ユーザ端末が、ネットワークを介して接続されるサービス提供サーバに対してサービス提供要求を送信し、サービス提供要求を受信したサービス提供サーバが、乱数を生成してチャレンジ情報をユーザ端末に送信する。チャレンジ情報を受信したユーザ端末は、乱数を生成し、属性認証局サーバから受信した属性証明書に生成した乱数を乗じて変形するとともに、変形された属性情報と、サービス提供サーバから送信されるチャレンジ情報に対して計算された署名値とをサービス提供サーバに返信する。そして、サービス提供サーバが、変形された属性証明書ならびに署名値に対してそれぞれ検証を行い、サービス提供サーバが失効検証局サーバから送信された秘密鍵の失効リストを受信し、失効確認処理を実行し、検証結果が正当であるときに、サービス提供サーバがサービス提供要求のあったユーザ端末に対し属性に基づくサービスを提供する。これにより、属性認証の際に匿名性を保証し、かつ、第三者との間で通信を要することなく属性情報の匿名化を行うことができるとともに、匿名認証を行った場合においても失効確認が可能となる。また、失効確認処理をサービス提供サーバ側で実行することにより、システム全体の処理負荷を分散することができる。
【００２２】
（９）本発明は、（８）の属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラムについて、前記第７のステップにおいて、前記サービス提供サーバは、前記秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した前記失効リストの署名値に一致するか否かにより失効確認処理を実行することを特徴とする属性認証システムにおける属性情報の匿名化をコンピュータに実行させるコンピュータプログラムを提案している。
【００２３】
この発明によれば、サービス提供サーバは、秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した失効リストの署名値に一致するか否かにより失効確認処理を実行する。これにより、使用された鍵を確実に特定することができる。
【発明の効果】
【００２４】
本発明によれば、属性認証局サーバが、属性情報として発行者の署名が付与された公開鍵と秘密鍵の鍵情報を生成し、ユーザ端末が、生成した乱数を公開鍵と発行者の署名からなる属性証明書に乗じて変形処理してサービス提供サーバへ送信し、サービス提供サーバが、属性証明書と署名鍵との関係が正式な署名として成立することを検証して要求されたサービスの提供を行うことにより、認証の際における属性情報の匿名化を第三者との通信を必要とすることなく実現でき、属性情報を交換する際のプライバシー保護が可能になるという効果がある。
【００２５】
また、属性情報が鍵情報のみになることから懸念される有効期間等の情報の設定に関しては、署名鍵を定期的に更新することで解決でき、また、各属性に対して複数の署名鍵を割付け、並行管理することでサービス享受の公平性も確保できるという効果がある。
【００２６】
さらに、本発明によれば、サービス提供サーバが、秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した失効リストの署名値に一致するか否かにより失効確認処理を実行するため、ユーザから失効依頼された秘密鍵を失効させ、認証処理時において、サービス提供者自体が秘密鍵の失効確認を行うことができる。したがって、匿名認証を行った場合においても秘密鍵の失効確認を行うことができるという効果がある。
【００２７】
また、失効確認処理を失効検証局サーバにおいてではなく、サービス提供者サーバで実行することにより、失効確認処理に関する負荷を分散し、システム全体のコストを低減できるという効果がある。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
【００２９】
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【００３０】
＜属性認証システムのシステム構成＞
【００３１】
図１は、本発明の実施形態に係る属性認証システムのシステム構成の一例を示す図である。
【００３２】
図１に示すように、本実施形態に係る属性認証システムは、ユーザ端末１と、サービス提供者が管理運営するサービス提供サーバ（以下、単にＳＰサーバ２という）と、属性認証局（ＣＡ）が管理運営するサーバ（以下、単にＣＡサーバ３という）と、失効検証局が管理運営する失効検証局サーバ４と、秘密鍵管理サーバ５と、タイムスタンプサーバ６とから構成され、いずれもネットワーク７を介して接続されている。
【００３３】
ユーザ端末１は、属性認証クライアントモジュール１１を実装しており、この属性認証クライアントモジュール１１は、ＳＰ提供サーバ２にサービス提供要求を送信し、乱数を生成してＣＡサーバ３から受信した属性証明書に生成した乱数を乗じて変形し、変形された属性情報と、ＳＰサーバ２から送信されるチャレンジ情報に対して計算された署名値とをＳＰサーバ２に返信する手段として機能する。
【００３４】
また、ＳＰサーバ２は、属性認証サーバモジュール２１を実装しており、この属性認証サーバモジュール２１は、ユーザ端末１により変形された属性証明書ならびに署名値に対してそれぞれその正当性についての検証を行い、正当であると判断したときに、サービス提供要求のあったユーザ端末１に対し、属性に基づくサービスを提供する手段として機能する。また、失効検証局サーバ４から秘密鍵に関する失効リストを受信し、認証処理時に、受信した失効リストに基づいて失効確認処理を実行する手段としても機能する。なお、ＳＰサーバ２は、失効リストに記載された秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した失効リスト内の署名値に一致するか否かにより失効確認処理を実行する。
【００３５】
ＣＡサーバ３は、属性証明書発行モジュール３１を実装しており、この属性証明書発行モジュール３１は、ユーザ端末１から属性証明書の発行要求を受信したとき、ユーザの公開鍵に対してユーザが持つ属性に対する署名鍵で署名して属性証明書を生成し、要求のあったユーザ端末１へ送信する手段として機能する。また、各属性に対し複数の署名鍵を割付け、当該署名鍵を定期的に更新する手段としても機能する。
【００３６】
失効検証局サーバ４は、ユーザ端末１から送信された失効させたい秘密鍵を登録し、登録した秘密鍵の失効リストを定期的に発行するとともに、ＳＰサーバ２からの要求に応じて、発行した失効リストを送信する手段として機能する。
【００３７】
秘密鍵管理サーバ５は、ユーザが秘密鍵を生成したときに、これを登録する信頼できるサーバであり、ユーザがこの秘密鍵を失効させたい場合のバックアップとして機能するものである。なお、本実施形態においては、失効検証局サーバ４とは別体に秘密鍵管理サーバ５を設ける構成を示したが、失効検証局サーバ４に生成した秘密鍵を登録するように構成してもよい。
【００３８】
タイムスタンプサーバ６は、失効検証局サーバ４が定期的に発行する失効リストに付与するタイムスタンプを生成する。これにより、信頼できる第三者機関であるタイムスタンプサーバからのタイムスタンプが付与されているため、相互検証が可能となり、不正行為を未然に防止することができる。
【００３９】
＜属性認証システムの動作シーケンス＞
【００４０】
図２は、本発明の実施形態に係る属性認証システム全体の動作の流れを時系列的に示した動作シーケンス図であり、図３は、ユーザ端末の動作の流れをフローチャートで示した図である。なお、図２に示す動作シーケンス図は、本発明の属性認証システムにおける属性情報の匿名化方法の手順も併せて示されている。
【００４１】
以下、図２、図３を参照しながら図１に示す属性認証システムの動作について詳細に説明する。
【００４２】
まず、前提条件としてＳＰサーバ２は、事前に失効検証局サーバ４から失効リストを取得する（図２のステップＳ２０１および図３のステップＳ３０１）。次に、ユーザ端末１の属性認証クライアントモジュール１１は、ユーザの秘密鍵ｘと公開鍵ｙ＝ｘＰのペアを生成し（図３のステップＳ３０２）、ＣＡサーバ３に対して属性証明書発行要求を送信する（図２のステップＳ２０２および図３のステップＳ３０３）。属性証明書発行要求を受信したＣＡサーバ３の属性証明書発行モジュール３１は、公開鍵ｙに対し、ユーザが所持する属性に対する署名鍵で署名する。
【００４３】
このとき、署名鍵は、現在ある中から最も有効期間の長いものを使用する。また、署名は、署名用の秘密鍵をｚ、対応する公開鍵をｚＰとした場合、ｚｙとなる。このため、ＣＡサーバ３の属性証明書発行モジュール３１は、｛ｙ，ｚｙ｝を属性証明書としてユーザ端末１に送信する（図２のステップＳ２０３）。
【００４４】
図４は、有効期間の管理の仕方を概念的に示している。図４中、横軸のｔは、時間の流れを示す。本発明によれば、属性情報が鍵情報のみとなったことにより、新たな有効期間の管理が必要となる。このため、図４に示されるように、ＣＡサーバ３の属性証明書発行モジュール３１が、属性毎に複数の署名鍵を割当て、定期的に組合せを更新することによって有効期間の管理を行うことにしている。その際に、サービスを非常に短い期間しか享受できないユーザが発生しないように、属性毎割当てられる複数の書名鍵を並行管理する。
【００４５】
なお、署名鍵を最も有効期間の長いものを割当てるために、例えば、図４に示されるように、仮に、鍵Ａの使用期間における後半部分で鍵を割当てようとした場合、ＣＡサーバ３の属性証明書発行モジュール３１は、ユーザ端末１の属性認証クライアントモジュール１１に対して、署名鍵Ｄあるいは署名鍵Ｅを割当てる。
【００４６】
次に、ユーザ端末１の属性認証クライアントモジュール１１は、公開鍵と署名鍵とから成る属性証明書をＣＡサーバ３の属性証明書発行モジュール３１から受信する（図３のステップＳ３０４の“Ｙｅｓ”）。そして、サービス提供要求を生成し（図３のステップＳ３０５）、ＳＰサーバ２の属性認証サーバモジュール２１に対して生成したサービス提供要求を送信する（図２のステップＳ２０４）。
【００４７】
サービス提供要求を受信したＳＰサーバ２の属性認証サーバモジュール２１は、乱数ｒを生成してチャレンジ情報としてユーザ端末１の属性認証クライアントモジュール１１へ送信する（図２のステップＳ２０５）。
【００４８】
チャレンジ情報を受信したユーザ端末１の属性認証クライアントモジュール１１は、まず、属性証明書を変形処理する。具体的には、乱数ｆを生成し、先にＣＡサーバ３から受信した属性証明書｛ｙ，ｚｙ｝に、その乱数を乗じて｛ｆｙ，ｆｚｙ｝に変形させる（図３のステップＳ３０６、Ｓ３０７）。このとき、秘密鍵もｆｘに変形される。
【００４９】
続いて、ユーザ端末１の属性認証クライアントモジュール１１は、チャレンジ乱数ｒに対する署名値を計算する。ここで、署名値の計算として、例えば、離散対数問題を応用したＥｌｇａｍａｌ署名によれば、以下の式（１）に従う。
【００５０】
【数１】
2008046946.tif 000003
【００５１】
次に、ユーザ端末１の属性認証クライアントモジュール１１は、変形処理した属性証明書と先に計算した署名値とをＳＰサーバ２へ返信する（図２のステップＳ２０６、および図３のステップＳ３０８）。属性証明書と署名値を受信したＳＰサーバ２の属性認証サーバモジュール２１は、まず、送信されてきた属性証明書を検証する。ここで、検証のためにＰａｒｉｎｇ計算を用いることとする。具体的には、Ｐａｒｉｎｇ計算をｅ（＊，＊）で表現したとき、ＳＰサーバ２は、ｅ（ｙ，ｚＱ）が成立するか否かを判定する。
【００５２】
次に、ＳＰサーバ２は、証明書の失効確認を実行する（図３のステップＳ３０９）。具体的には、図５に示すような処理を実行する。つまり、ユーザが自己の秘密鍵を失効させたい場合には、ユーザ端末１から失効検証局サーバ４に秘密鍵を送信する（図５のステップＳ５０１）。このとき、サーバ認証により、正しい失効検証局サーバであることを確認する。
【００５３】
なお、この処理において、秘密鍵はユーザが事前にバックアップをとっておくことを前提とするが、秘密鍵生成時に秘密鍵を秘密鍵管理サーバ５に登録しておき、この秘密鍵を失効させたい場合には、これを失効検証局サーバ４に移す方法でもよい。また、秘密鍵管理サーバ５と失効検証局サーバ４とは異なっていてもよいし、同一のエンティティであってもよい。
【００５４】
次に、失効検証局サーバ４は、定期的に秘密鍵に関する失効リストを発行する（図５のステップＳ５０２）。この失効リストには、これまで失効した秘密鍵のうち、未だに有効期限内である秘密鍵を格納している。また、失効リストには、タイムスタンプサーバ６から取得したタイムスタンプが付与され、さらに、失効検証局自身の秘密鍵を使って計算された署名も付与される。これにより、任意の秘密鍵がいつ失効し、失効リストを誰が発行したのかを明確に把握することができる。
【００５５】
ＳＰサーバ２は、属性認証処理の前に、失効検証局サーバ４が定期的に発行する失効リストを取得する（図５のステップＳ５０３）。なお、サービス提供者は、失効リストを取得した際に、失効リストに付与されているタイムスタンプと署名を確認する。
【００５６】
ＳＰサーバ２は、失効確認処理において、失効リスト内に記載されている失効処理された秘密鍵について、順番に、乱数の署名値を計算することにより、使用された秘密鍵を特定する（図５のステップＳ５０４）。
【００５７】
そして、署名値が一致する秘密鍵が失効リストにおいて失効登録されているか否かを確認し（図５のステップＳ５０５）、署名値が一致する秘密鍵が失効リストにおいて失効登録されている場合（図５のステップＳ５０５の“Ｙｅｓ”）には、ＳＰサーバ２がユーザに失効している旨を通知し（図５のステップＳ５０７）、署名値が一致する秘密鍵が失効リストにおいて失効登録されていない場合（図５のステップＳ５０５の“Ｎｏ”）には、ユーザに失効していない旨を通知する（図５のステップＳ５０６）。
【００５８】
さらに、ＳＰサーバ２は、任意の秘密鍵が失効している場合には、有効期限が経過しているか否かを確認し（図５のステップＳ５０８）、有効期限が経過している場合（図５のステップＳ５０８の“Ｙｅｓ”）には、失効検証局サーバ４のデータ領域から当該有効期限が経過した失効されている秘密鍵を消去する（図５のステップＳ５０９）。
【００５９】
続いて、ＳＰサーバ２の属性認証サーバモジュール２１は、返信されてきた署名鍵を検証する。例えば、Ｅｌｇａｍａｌ署名では以下の式（２）を計算する。
【００６０】
【数２】
2008046946.tif 000004
【００６１】
ＳＰサーバ２は、署名の正当性が確認および失効確認が行われたときに、認証成功とし、ユーザ端末１に対して属性情報に基づいたサービス提供を行う（図２のステップＳ２０７）。ここで、認証成功とは、属性証明書と署名鍵との関係が正式な署名として成立することを意味する。属性証明書と署名鍵の検証および失効確認が成立した後（図３のステップＳ３１０の“ＯＫ”）、ユーザ端末１は、ＳＰサーバ２との間で通信を行い、ＳＰサーバ２により提供されるユーザの属性情報に従うサービスを享受することができる（図３のステップＳ３１１）。
【００６２】
なお、上記した属性認証システムおよび同システムにおける匿名化方法の具体的な利用用途としては、医療情報の開示において、医療資格を持つ否かの確認、あるいは、公共交通機関において、公的に発行されたシルバーパス等の資格を確認する等の用途が考えられる。
【００６３】
以上説明のように本発明は、属性情報として、発行者の署名が付与された公開鍵と秘密鍵の鍵情報が発行され、その鍵情報は、ユーザにより生成される乱数を公開鍵と発行者の署名からなる属性証明書に乗じることで任意の変形を可能にするものである。このことにより、認証の際における属性情報の匿名化を第三者との通信を必要とすることなく実現でき、属性情報を交換する際のプライバシー保護が可能になる。
【００６４】
また、属性情報が鍵情報のみになることから懸念される有効期間等の情報の設定に関して署名鍵を定期的に更新することで可能となり、また、各属性に対して複数の署名鍵を割付け、並行管理することでサービス享受の公平性も確保できる。さらに、ユーザから失効依頼された秘密鍵を失効させ、認証処理時にその失効確認を行うことができる。
【００６５】
また、サービス提供サーバが、秘密鍵に対して生成した乱数の署名値をそれぞれ演算し、演算した署名値が受信した失効リストの署名値に一致するか否かにより失効確認処理を実行するため、ユーザから失効依頼された秘密鍵を失効させ、認証処理時において、サービス提供者自体が秘密鍵の失効確認を行うことができる。したがって、匿名認証を行った場合においても秘密鍵の失効確認を行うことができる。
【００６６】
さらに、失効確認処理を失効検証局サーバにおいてではなく、サービス提供者サーバで実行することにより、失効確認処理に関する負荷を分散し、システム全体のコストを低減できる。
【００６７】
なお、図１に示す、属性認証クライアントモジュール１１、属性認証サーバモジュール２１、属性証明書発行モジュール３１は、ユーザ端末１、ＳＰサーバ２、ＣＡサーバ３のそれぞれで実行されるプログラムであり、これらプログラムをコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをユーザ端末１、ＳＰサーバ２、ＣＡサーバ３のそれぞれ（いずれもコンピュータシステム）に読み込ませ、実行することによって本発明の属性認証システムを実現することができる。ここでいうコンピュータシステムとは、ＯＳや周辺装置等のハードウェアを含む。
【００６８】
また、「コンピュータシステム」は、ＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）システムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００６９】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００７０】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００７１】
【図１】本発明の実施形態に係る属性認証システムのシステム構成の一例を示す図である。
【図２】本発明の実施形態に係る属性認証システムの全体の動作シーケンスを示す図である。
【図３】本発明の実施形態に係る属性認証システムにおけるユーザ端末の動作を示すフローチャートである。
【図４】本発明の実施形態に係る属性認証システムの属性情報の有効期間の管理方法について説明するために引用した動作概念図である。
【図５】本発明の実施形態に係る属性認証システムにおける失効検証に関する処理フローチャートである。
【符号の説明】
【００７２】
１・・・ユーザ端末、２・・・サービス提供サーバ（ＳＰサーバ）、３・・・属性認証局サーバ（ＣＡサーバ）、４・・・失効検証局サーバ、５・・・秘密鍵管理サーバ、６・・・タイムスタンプサーバ、７・・・ネットワーク、１１・・・属性認証クライアントモジュール、２１・・・属性認証サーバモジュール、３１・・・属性証明書発行モジュール
【図１】
2008046946.tif 000005
【図２】
2008046946.tif 000006
【図３】
2008046946.tif 000007
【図４】
2008046946.tif 000008
【図５】
2008046946.tif 000009