説明

マルチ属性認証システム、マルチ属性認証方法、失効確認方法およびプログラム

【課題】利用者が任意に属性情報をブラインド化可能かつ完全な匿名化を実現しつつ、複数の属性を所有することを同時に認証する。
【解決手段】Uは、複数のユーザの秘密鍵と対をなす公開鍵とを属性の数よりも1つ多く生成し、CAに、属性の数に対応した公開鍵を送信する。CAは、前記公開鍵に対して、署名鍵で署名を行い、Uに、属性証明書を発行する。Uは、SPにサービス要求を送信する。SPは、自身の秘密鍵と公開鍵を生成し、チャレンジをUに送信する。Uは、CAが発行する属性証明書を変形し、前記秘密鍵を変形し、変形した秘密鍵を用いて、SPから受信したSPの公開鍵に乱数を乗じたものに対する署名値を算出する。Uは、変形した属性証明書と算出した署名値とをSPに送信する。SPは、Uから受信した属性証明書をおよび署名値を検証する。また、SPは、失効確認を実行する。SPは、属性証明書および署名値の正当性が確認され、かつ、失効確認が完了したときに、Uに対して、属性情報に基づいたサービスの提供を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、利用者が任意に属性情報をブラインド化可能かつ完全な匿名化を実現しつつ、複数の属性を所有することを同時に認証するマルチ属性認証システム、マルチ属性認証方法、失効確認方法およびプログラムに関する。
【背景技術】
【0002】
近年、様々なサービスがインターネットを通して電子的に提供されるようになってきている。そのようなサービス提供を行う際には、利用者を認証することが不可欠となる。ここで、利用者を認証する方法は、通常、個人を特定する認証と、属性認証等、個人を特定しない認証(例えば、特許文献1参照)とに大別される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特公平8−2051号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、属性認証において、匿名性は考慮されていなかった。また、近年匿名化の研究はなされているが、匿名化が不十分であったり、属性認証の際に第3者との通信を必要としたりするという問題点があった。さらに、属性情報が変形できないことによって、第三者による属性情報を用いた利用者の追跡が可能であった。また、従来の技術では、複数の属性を同時に認証するという方法は実現されていなかった。
【0005】
そこで、本発明は、上述の課題に鑑みてなされたものであり、利用者が任意に属性情報をブラインド化可能かつ完全な匿名化を実現しつつ、複数の属性を所有することを同時に認証するマルチ属性認証を実現するマルチ属性認証システム、マルチ属性認証方法、失効確認方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、上記した課題を解決するために以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。
【0007】
(1)本発明は、ユーザ端末(例えば、図1のユーザ端末1に相当)と、属性証明書発行サーバ(例えば、図1の属性認証サーバ3に相当)と、サービス提供サーバ(例えば、図1のSPサーバ2に相当)とがネットワークを介して接続されて成るマルチ属性認証システムであって、前記ユーザ端末が、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1の鍵生成手段(例えば、図2の鍵生成部12に相当)と、前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第1の送信手段(例えば、図2の送信部14に相当)と、前記サービス提供サーバにサービスの提供要求を送信する第2の送信手段(例えば、図2の送信部14に相当)と、乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する変形手段(例えば、図2の属性証明書変形部13に相当)と、前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する処理手段(例えば、図2の処理部15に相当)と、前記変形手段において変形した属性証明書と該処理手段において算出した署名値とを前記サービス提供サーバに送信する第3の送信手段(例えば、図2の送信部14に相当)と、を備え、前記属性証明書発行サーバが、前記ユーザ端末の鍵生成手段が生成した前記属性の数に相当した公開鍵に対して、保有する署名鍵z1、z2で署名を行う署名手段(例えば、図4の署名部31に相当)と、前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する発行手段(例えば、図4の属性証明書発行部32に相当)と、を備え、前記サービス提供サーバが、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第2の鍵生成手段(例えば、図3の鍵生成部25に相当)と、生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第4の送信手段(例えば、図3の送信部27に相当)と、前記ユーザ端末から受信した属性証明書を検証する第1の検証手段(例えば、図3の属性証明書検証部21に相当)と、前記ユーザ端末から受信した署名値を検証する第2の検証手段(例えば、図3の署名検証部22に相当)と、失効確認を実行する失効確認実行手段(例えば、図3の失効確認実行部23に相当)と、前記第1の検証手段により属性証明書の正当性が確認され、前記第2の検証手段により署名値の正当性が確認され、かつ、前記失効確認実行手段により失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行うサービス提供手段(例えば、図3のサービス提供部24に相当)と、を備えたことを特徴とするマルチ属性認証システムを提案している。
【0008】
この発明によれば、ユーザ端末の第1の鍵生成手段は、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する。第1の送信手段は、属性証明書発行サーバに、その生成した属性の数に対応した公開鍵を送信する。第2の送信手段は、サービス提供サーバにサービスの提供要求を送信する。変形手段は、乱数fを生成し、その乱数fを用いて、属性証明書発行サーバが発行する属性証明書を変形する。処理手段は、属性の数に対応した秘密鍵を乱数fにより変形し、その変形した秘密鍵を用いて、サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する。第3の送信手段は、変形手段において変形した属性証明書と処理手段において算出した署名値とをサービス提供サーバに送信する。属性証明書発行サーバの署名手段は、ユーザ端末の鍵生成手段が生成した属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う。発行手段は、ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する。サービス提供サーバの第2の鍵生成手段は、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する。第4の送信手段は、生成した乱数rと公開鍵ysとからなる情報をチャレンジとしてユーザ端末に送信する。第1の検証手段は、ユーザ端末から受信した属性証明書を検証する。第2の検証手段は、ユーザ端末から受信した署名値を検証する。失効確認実行手段は、失効確認を実行する。サービス提供手段は、第1の検証手段により属性証明書の正当性が確認され、第2の検証手段により署名値の正当性が確認され、かつ、失効確認実行手段により失効確認が完了したときに、ユーザ端末に対して、属性情報に基づいたサービスの提供を行う。したがって、複数の属性を任意の組合せで同時に認証可能である。また、属性認証の際に、匿名性が保証される。また、属性認証に使用する属性を、他人に譲渡したり、貸与したりすることはできない。また、属性認証の際には、第3者との通信を必要としない。また、属性情報の任意の変形が第3者との通信なしに可能である。さらに、ユーザ側に耐タンパデバイス無しで安全な属性認証を実現できる。
【0009】
(2)本発明は、(1)に記載のマルチ属性認証システムにおいて、前記サービス提供サーバが、乱数rを生成し、この乱数rと自身の公開鍵ys(=xs*P)からr*ysを計算し、これをチャレンジとして送信することを特徴とするマルチ属性認証システムを提案している。
【0010】
この発明によれば、サービス提供サーバが、乱数rを生成し、この乱数rと自身の公開鍵ys(=xs*P)からr*ysを計算し、これをチャレンジとして送信する。つまり、チャレンジの中に、サービス提供者ごとに異なる公開鍵ys(=xs*P)を埋め込み、このチャレンジに対して、ユーザ端末から署名が返信されることから、サービス提供者の公開鍵ysを知らない第三者には、失効情報が開示された時点より前の通信履歴から、利用者の行動をトレースすることができない。
【0011】
(3)本発明は、(2)に記載のマルチ属性認証システムにおいて、前記ユーザ端末の処理手段が、前記変形手段が生成する乱数fによって変形された前記属性に対する秘密鍵fx1、fx2、・・・、fxmを用いて、r*ysに対する署名値をs1=fx1*r*ys、s2=fx2*r*ys、・・・、si=fxi*r*ysにより算出することを特徴とするマルチ属性認証システムを提案している。
【0012】
この発明によれば、ユーザ端末の処理手段が、変形手段が生成する乱数fによって変形された属性に対する秘密鍵fx1、fx2、・・・、fxmを用いて、r*ysに対する署名値をs1=fx1*r*ys、s2=fx2*r*ys、・・・、si=fxi*r*ysにより算出する。したがって、上記のようなシンプルな演算式により署名値の演算を行うため、計算負荷を軽減することができる。
【0013】
(4)本発明は、(1)に記載のマルチ属性認証システムにおいて、前記サービス提供サーバの第1の検証手段が、z1P、z2P・・・、ziPを属性発行用の公開鍵としたときに、e(fy1、z1P)e(fy2、z2P)・・・e(fyi、ziP)=e(fz1y1、P)e(fz2y2、P)・・・e(fziyi、P)を演算して、該演算式が成立するかどうかにより、属性証明書の正当性を検証することを特徴とするマルチ属性認証システムを提案している。
【0014】
この発明によれば、サービス提供サーバの第1の検証手段が、z1P、z2P・・・、ziPを属性発行用の公開鍵としたときに、e(fy1、z1P)e(fy2、z2P)・・・e(fyi、ziP)=e(fz1y1、P)e(fz2y2、P)・・・e(fziyi、P)を演算して、その演算式が成立するかどうかにより、属性証明書の正当性を検証する。したがって、上記演算式により、ユーザ端末から送信されてきた属性証明書をまとめて検証することができるため、計算負荷を削減することができる。
【0015】
(5)本発明は、(3)に記載のマルチ属性認証システムにおいて、前記サービス提供サーバの第2の検証手段が、e(s1、 P)e(s2、 P)・・・e(si、 P)=e(fy1、r*ys)e(fy2、r*ys)・・・e(fyi、r*ys)を演算して、該演算式が成立するかどうかにより、署名の正当性を検証することを特徴とするマルチ属性認証システムを提案している。
【0016】
この発明によれば、サービス提供サーバの第2の検証手段が、e(s1、 P)e(s2、 P)・・・e(si、 P)=e(fy1、r*ys)e(fy2、r*ys)・・・e(fyi、r*ys)を演算して、該演算式が成立するかどうかにより、署名の正当性を検証する。したがって、上記のようなシンプルな演算式により署名値の演算を行うため、計算負荷を軽減することができる。
【0017】
(6)本発明は、(2)または(3)に記載のマルチ属性認証システムにおいて、前記サービス提供サーバの失効確認実行手段が、失効リストに掲載されているすべてのy1について、r*xs*y1を計算するとともに、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)を演算して、該演算式が成立するかどうかにより、失効確認を実行することを特徴とするマルチ属性認証システムを提案している。
【0018】
この発明によれば、サービス提供サーバの失効確認実行手段が、失効リストに掲載されているすべてのy1について、r*xs*y1を計算するとともに、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)を演算して、その演算式が成立するかどうかにより、失効確認を実行する。したがって、失効リストを統一しつつ、サービス提供者の秘密鍵x3を知らない第三者が容易に失効情報の開示された時点より前の通信履歴から、利用者の行動をトレースすることができない失効確認処理を実現することができる。
【0019】
(7)本発明は、ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおいて、前記サービス提供サーバが実行する失効確認方法であって、前記属性証明書発行サーバから失効リストを取得する第1のステップと、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する第2のステップと、属性のうち、1つだけを失効させる場合、ynおよびznynを公開する第3のステップと、失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する第4のステップと、を備えることを特徴とする失効確認方法を提案している。
【0020】
この発明によれば、属性証明書発行サーバから失効リストを取得し、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する。そして、属性のうち、1つだけを失効させる場合、ynおよびznynを公開し、失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する。したがって、失効処理および失効確認処理が第三者に問い合わせることなしに可能である。また、失効情報が開示された時点より前の通信履歴から、利用者の行動をトレースできない方式である。また、ユーザは、複数の属性を所持するが失効処理は一括して行うことも可能である。さらに、ユーザの持つ1つの属性のみを失効させることもできる。
【0021】
(8)本発明は、ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおけるマルチ属性認証方法であって、前記ユーザ端末が、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1のステップ(例えば、図5のステップS201、図6のステップS301、S302に相当)と、前記ユーザ端末が、前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第2のステップ(例えば、図6のステップS202に相当)と、前記属性証明書発行サーバが、た前記属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う第3のステップ(例えば、図6のステップS302に相当)と、前記属性証明書発行サーバが、前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する第4のステップ(例えば、図5のステップS203、S204、図6のステップS303に相当)と、前記ユーザ端末が、前記サービス提供サーバにサービスの提供要求を送信する第5のステップ(例えば、図5のステップS208、図6のステップS304に相当)と、前記サービス提供サーバが、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第6のステップ(例えば、図5のステップS205に相当)と、前記サービス提供サーバが、生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第7のステップ(例えば、図5のステップS209、図6のステップS305に相当)と、前記ユーザ端末が、乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する第8のステップ(例えば、図5のステップS210、図6のステップS306に相当)と、前記ユーザ端末が、前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する第9のステップ(例えば、図5のステップS211に相当)と、前記ユーザ端末が、前記変形した属性証明書と算出した署名値とを前記サービス提供サーバに送信する第10のステップ(例えば、図5のステップS212、図6のステップS307に相当)と、前記サービス提供サーバが、前記ユーザ端末から受信した属性証明書を検証する第11のステップ(例えば、図5のステップS213、図6のステップS308に相当)と、前記サービス提供サーバが、前記ユーザ端末から受信した署名値を検証する第12のステップ(例えば、図5のステップS214、図6のステップS308に相当)と、前記サービス提供サーバが、失効確認を実行する第13のステップ(例えば、図5のステップS215、図67のステップS309に相当)と、前記サービス提供サーバが、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行う第14のステップ(例えば、図5のステップS216、図6のステップS310に相当)と、を備えたことを特徴とするマルチ属性認証方法を提案している。
【0022】
この発明によれば、ユーザ端末は、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成し、属性証明書発行サーバに、その生成した属性の数に対応した公開鍵を送信する。一方、属性証明書発行サーバは、属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行い、ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する。次に、ユーザ端末は、サービス提供サーバにサービスの提供要求を送信する。サービス提供サーバは、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成し、生成した乱数rと公開鍵ysとからなる情報をチャレンジとしてユーザ端末に送信する。ユーザ端末は、乱数fを生成し、その乱数fを用いて、属性証明書発行サーバが発行する属性証明書を変形し、属性の数に対応した秘密鍵を乱数fにより変形し、その変形した秘密鍵を用いて、サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する。そして、ユーザ端末は、変形した属性証明書と算出した署名値とをサービス提供サーバに送信する。サービス提供サーバは、ユーザ端末から受信した属性証明書を検証し、ユーザ端末から受信した署名値を検証する。また、サービス提供サーバは、失効確認を実行する。そして、サービス提供サーバは、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、ユーザ端末に対して、属性情報に基づいたサービスの提供を行う。したがって、複数の属性を任意の組合せで同時に認証可能である。また、属性認証の際に、匿名性が保証される。また、属性認証に使用する属性を、他人に譲渡したり、貸与したりすることはできない。また、属性認証の際には、第3者との通信を必要としない。また、属性情報の任意の変形が第3者との通信なしに可能である。さらに、ユーザ側に耐タンパデバイス無しで安全な属性認証を実現できる。
【0023】
(9)本発明は、ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおいて、前記サービス提供サーバが実行する失効確認方法をコンピュータに実行させるためのプログラムであって、前記属性証明書発行サーバから失効リストを取得する第1のステップと、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する第2のステップと、属性のうち、1つだけを失効させる場合、ynおよびznynを公開する第3のステップと、失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する第4のステップと、をコンピュータに実行させるためのプログラムを提案している。
【0024】
この発明によれば、属性証明書発行サーバから失効リストを取得し、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する。そして、属性のうち、1つだけを失効させる場合、ynおよびznynを公開し、失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する。したがって、失効処理および失効確認処理が第三者に問い合わせることなしに可能である。また、失効情報が開示された時点より前の通信履歴から、利用者の行動をトレースできない方式である。また、ユーザは、複数の属性を所持するが失効処理は一括して行うことも可能である。さらに、ユーザの持つ1つの属性のみを失効させることもできる。
【0025】
(10)本発明は、ユーザ端末と、属性証明書発行サーバと、サービス提供サーバと、信頼できるサーバとがネットワークを介して接続されて成るマルチ属性認証システムにおけるマルチ属性認証方法をコンピュータに実行させるためのプログラムであって、前記ユーザ端末が、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1のステップ(例えば、図5のステップS201、図6のステップS301、S302に相当)と、前記ユーザ端末が、前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第2のステップ(例えば、図6のステップS202に相当)と、前記属性証明書発行サーバが、た前記属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う第3のステップ(例えば、図6のステップS302に相当)と、前記属性証明書発行サーバが、前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する第4のステップ(例えば、図5のステップS203、S204、図6のステップS303に相当)と、前記ユーザ端末が、前記サービス提供サーバにサービスの提供要求を送信する第5のステップ(例えば、図5のステップS208、図6のステップS304に相当)と、前記サービス提供サーバが、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第6のステップ(例えば、図5のステップS205に相当)と、前記サービス提供サーバが、生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第7のステップ(例えば、図5のステップS209、図6のステップS305に相当)と、前記ユーザ端末が、乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する第8のステップ(例えば、図5のステップS210、図6のステップS306に相当)と、前記ユーザ端末が、前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する第9のステップ(例えば、図5のステップS211に相当)と、前記ユーザ端末が、前記変形した属性証明書と算出した署名値とを前記サービス提供サーバに送信する第10のステップ(例えば、図5のステップS212、図6のステップS307に相当)と、前記サービス提供サーバが、前記ユーザ端末から受信した属性証明書を検証する第11のステップ(例えば、図5のステップS213、図6のステップS308に相当)と、前記サービス提供サーバが、前記ユーザ端末から受信した署名値を検証する第12のステップ(例えば、図5のステップS214、図6のステップS308に相当)と、前記サービス提供サーバが、失効確認を実行する第13のステップ(例えば、図5のステップS215、図67のステップS309に相当)と、前記サービス提供サーバが、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行う第14のステップ(例えば、図5のステップS216、図6のステップS310に相当)と、をコンピュータに実行させるためのプログラムを提案している。
【0026】
この発明によれば、ユーザ端末は、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成し、属性証明書発行サーバに、その生成した属性の数に対応した公開鍵を送信する。一方、属性証明書発行サーバは、属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行い、ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する。次に、ユーザ端末は、サービス提供サーバにサービスの提供要求を送信する。サービス提供サーバは、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成し、生成した乱数rと公開鍵ysとからなる情報をチャレンジとしてユーザ端末に送信する。ユーザ端末は、乱数fを生成し、その乱数fを用いて、属性証明書発行サーバが発行する属性証明書を変形し、属性の数に対応した秘密鍵を乱数fにより変形し、その変形した秘密鍵を用いて、サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する。そして、ユーザ端末は、変形した属性証明書と算出した署名値とをサービス提供サーバに送信する。サービス提供サーバは、ユーザ端末から受信した属性証明書を検証し、ユーザ端末から受信した署名値を検証する。また、サービス提供サーバは、失効確認を実行する。そして、サービス提供サーバは、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、ユーザ端末に対して、属性情報に基づいたサービスの提供を行う。したがって、複数の属性を任意の組合せで同時に認証可能である。また、属性認証の際に、匿名性が保証される。また、属性認証に使用する属性を、他人に譲渡したり、貸与したりすることはできない。また、属性認証の際には、第3者との通信を必要としない。また、属性情報の任意の変形が第3者との通信なしに可能である。さらに、ユーザ側に耐タンパデバイス無しで安全な属性認証を実現できる。
【発明の効果】
【0027】
本発明によれば、複数の属性を任意の組合せで同時に認証可能であるという効果がある。また、属性認証の際に、匿名性が保証されるという効果がある。また、属性認証に使用する属性を、他人に譲渡したり、貸与したりすることはできないという効果がある。また、属性認証の際には、第3者との通信を必要としないという効果がある。また、属性情報の任意の変形が第3者との通信なしに可能であるという効果がある。また、ユーザ側に耐タンパデバイス無しで安全な属性認証を実現できるという効果がある。
【0028】
さらに、失効処理および失効確認処理が第三者に問い合わせることなしに可能であるという効果がある。また、失効情報が開示された時点より前の通信履歴から、利用者の行動をトレースできない方式であるという効果がある。また、ユーザは、複数の属性を所持するが失効処理は一括して行うことも可能であるという効果がある。また、ユーザの持つ1つの属性のみを失効させることもできるという効果がある。
【図面の簡単な説明】
【0029】
【図1】本発明の実施形態に係るマルチ属性認証システムのシステム構成の一例を示す図である。
【図2】本発明の実施形態に係る属性認証クライアントモジュールの構成図である。
【図3】本発明の実施形態に係る属性認証サーバモジュールの構成図である。
【図4】本発明の実施形態に係る属性証明書発行モジュールの構成図である。
【図5】本発明の実施形態に係るマルチ属性認証システムの全体の動作シーケンスを示す図である。
【図6】本発明の実施形態に係るマルチ属性認証システムにおけるユーザ端末の動作を示すフローチャートである。
【図7】本発明の実施形態に係るマルチ属性認証システムの属性情報の有効期間の管理方法について説明するために引用した動作概念図である。
【発明を実施するための形態】
【0030】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0031】
<マルチ属性認証システムのシステム構成>
図1は、本発明の実施形態に係るマルチ属性認証システムのシステム構成の一例を示す図である。
図1に示すように、本実施形態に係るマルチ属性認証システムは、ユーザ端末1(U)と、サービス提供者が管理運営するサービス提供サーバ(以下、単にSPサーバ2という)と、属性認証局(CA)が管理運営する属性認証サーバ3とから構成され、いずれもネットワーク4を介して接続されている。
【0032】
また、ユーザ端末1は、属性認証クライアントモジュール10を備え、SPサーバ2は、属性認証サーバモジュール20を備え、属性認証サーバ3は、属性証明書発行モジュール30を備えている。
【0033】
<属性認証クライアントモジュールの構成>
さらに、属性認証クライアントモジュール10は、図2に示すように、鍵生成部12と、属性証明書変形部13と、送信部14と、処理部15とから構成されている。
【0034】
鍵生成部12は、ユーザの秘密鍵x1、x2、x3、・・・、xiと公開鍵y1=x1*P、y2=x2*P、y3=x3P、・・・、yi=xiPを生成する。なお、鍵ペアは、属性の個数+1個分用意する。
【0035】
属性証明書変形部13は、乱数fを生成し、その乱数fを用いて、属性認証サーバ(CA)3が発行する属性証明書を変形する。例えば、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、fzy1、fzy2、fzy3と変形する。
【0036】
送信部14は、SPサーバ2にサービスの提供要求と属性証明書変形部13において変形した属性証明書と、処理部15において算出した署名値とを送信する。さらに、属性認証サーバ(CA)3に生成した公開鍵y1、y2、y3、・・・、yiを送信する。
【0037】
処理部15は、例えば、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、鍵生成部12が生成した2つの秘密鍵x1、x2、x3を乱数fにより、fx1、fx2、fx3に変形し、その変形したfx1、fx2、fx3を用いて、r*ysに対する署名値を算出する。具体的には、属性証明書変形部13が生成する乱数fによって変形された秘密鍵fx1、fx2、fx3を用いて、チャレンジr*ysに対する署名値をs1=f*x1*r*ys、s2=f*x2*r*ys、s3=f*x3*r*ysにより算出する。これにより、シンプルな演算式により署名値の演算を行うため、計算負荷を軽減することができる。
【0038】
<属性認証サーバモジュールの構成>
また、属性認証サーバモジュール20は、図3に示すように、属性証明書検証部21と、署名値検証部22と、失効確認実行部23と、サービス提供部24と、鍵生成部25と、チャレンジ生成部26と、送信部27とから構成されている。
【0039】
属性証明書検証部21は、ユーザ端末1から受信した属性証明書を検証する。具体的には、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、z1P、z2P、z3Pを属性発行用の公開鍵としたときに、e(fy1、z1P)e(fy2、z2P)e(fy3、z3P)=e(fz1y1、P)e(fz2y2、P)e(fz3y3、P)を演算して、この演算式が成立するかどうかにより、属性証明書の正当性を検証する。これにより、ユーザ端末から送信されてきた属性証明書をまとめて検証することができるため、計算負荷を削減することができる。
【0040】
署名値検証部22は、ユーザ端末1から受信した署名値を検証する。具体的には、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、e(s1、P)e(s2、P)e(s3、P)=e(fy1、r*ys)e(fy2、r*ys)e(fy3、r*ys)を演算して、演算式が成立するかどうかにより、署名の正当性を検証する。これにより、上記のようなシンプルな演算式により署名値の演算を行うため、計算負荷を軽減することができる。
【0041】
失効確認実行部23は、失効確認を実行する。まず、失効リストを事前にあるいは、その場で属性認証サーバ3から取得する。失効リストとは、発行局が生成するもので、失効したユーザのy1、z1y1が公開される。失効リストには発行局による署名が付与されており、その正当性が確認できる。
【0042】
具体的には、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する。この式が成立したとき、その鍵(そのユーザの持つすべての属性)は無効である(失効している)と判断する。
【0043】
また、属性のうち、1つだけを失効させる場合、例えば、属性2のみを失効させる場合、y2、z2y2が公開される。そして、失効リストに掲載されているすべてのy2について、r*xs*y2を計算し、e(z2y2、s2)=e(f*z2*y2、r*xs*y2)が成り立つかどうか検証する。したがって、失効リストを統一しつつ、サービス提供者の秘密鍵x3を知らない第三者が容易に失効情報の開示された時点より前の通信履歴から、利用者の行動をトレースすることができない失効確認処理を実現することができる。
【0044】
サービス提供部24は、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、ユーザ端末1に対して、属性情報に基づいたサービスの提供を行う。
【0045】
鍵生成部25は、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する。このとき、事前に属性認証サーバ3から公開鍵証明書zysの発行を受けておく。チャレンジ生成部26は、乱数rを生成し、r*ysを計算して、計算した値をチャレンジとして生成する。送信部27は、チャレンジ生成部26が生成したチャレンジをユーザ端末1に送信する。
【0046】
<属性証明書発行モジュールの構成>
属性証明書発行モジュール30は、図4に示すように、署名部31と、属性証明書発行部32と、送信部33と、ユーザ情報格納部34と、データテーブル生成部35とから構成されている。
【0047】
署名部31は、ユーザ端末1の鍵生成部12が生成した公開鍵y1、y2、y3、・・・、yiに対して、保有する署名鍵z1、z2で署名を行う。なお、署名鍵は、図7に示すように、現在あるものの中から最も有効期間が長いものを用いる。具体的には、署名用の秘密鍵をzi、これに対応する公開鍵をziP(Pは生成元)としたときに、署名は、ziyiとなる。これにより、ユーザに対して、必要十分な情報のみを与え、ユーザの不正行為を防止することができる。また、計算負荷を削減できるため、計算速度を速くすることができる。
【0048】
属性証明書発行部32は、ユーザ端末1に対して、{y1、y2、z1y1、z2y2、z3y3、・・・、ziyi}を属性証明書として発行する。送信部33は、属性証明書発行部32が発行した属性証明書をユーザ端末1に送信する。
【0049】
ユーザ情報格納部34は、発行したユーザの秘密鍵x1、x2、x3、・・・、xiが有効期限内である限りは、y1、z1y1、z2y2、z3y3、・・・、ziyiを保管しておく。
【0050】
<マルチ属性認証システムの動作シーケンス>
図5は、本発明の実施形態に係るマルチ属性認証システム全体の動作の流れを時系列的に示した動作シーケンス図であり、図6は、ユーザ端末の動作の流れをフローチャートで示した図である。なお、図5に示す動作シーケンス図は、本発明のマルチ属性認証システムにおける属性情報の匿名化方法の手順も併せて示されている。
以下、図5、図6を参照しながら図1に示すマルチ属性認証システムの動作について詳細に説明する。
【0051】
まず、ユーザ端末1の鍵生成部12は、ユーザの秘密鍵x1、x2、x3、・・・、xiと公開鍵y1=x1*P、y2=x2*P、y3=x3P、・・・、yi=xiPを生成する(図5のステップS201、図6のステップS301、S302)。なお、ここで、Pは生成元である。そして、ユーザ端末1の送信部14は、属性認証サーバ3に対して、公開鍵y1、y2、y3、・・・、yiと属性証明書の発行要求を送信する(図6のステップS202)。
【0052】
属性認証サーバ3は、y1、y2、y3、・・・、yiに対し、保有する属性用の署名鍵z1、z2で署名する(図6のステップS302)。なお、署名鍵は、現在ある中からもっとも有効期限の長いものを使用する(図7参照)。署名は、署名用の秘密鍵をzi、対応する公開鍵をziPとしたとき、ziyiとなる。
【0053】
そして、{y1、y2、z1y1、z2y2、z3y3、・・・、ziyi}を証明書として、ユーザ端末1に発行する。また、発行したユーザの秘密鍵x1、x2、x3、・・・、xiが有効期限内である限りは、y1、z1y1、z2y2、z3y3、・・・、ziyiを保管しておく(図5のステップS203、S204、図6のステップS303)。
【0054】
図7は、有効期間の管理の仕方を概念的に示している。図7中、横軸のtは、時間の流れを示す。本発明によれば、属性情報が鍵情報のみとなったことにより、新たな有効期間の管理が必要となる。このため、図6に示されるように、属性認証サーバ3の属性証明書発行モジュール30が、属性ごとに複数の署名鍵を割当て、定期的に組合せを更新することによって有効期間の管理を行うことにしている。その際に、サービスを非常に短い期間しか享受できないユーザが発生しないように、属性毎割当てられる複数の書名鍵を並行管理する。
【0055】
なお、署名鍵を最も有効期間の長いものを割当てるために、例えば、図7に示されるように、仮に、鍵Aの使用期間における後半部分で鍵を割当てようとした場合、属性認証サーバ3の属性証明書発行モジュール30は、ユーザ端末1の属性認証クライアントモジュール10に対して、署名鍵Dあるいは署名鍵Eを割当てる。これにより、ユーザがサービスを非常に短い期間しか受けられないという不都合を防止することができる。
【0056】
次に、ユーザ端末1の送信部14は、SPサーバ2に対して、サービスの提供要求を送信する(図5のステップS208、図6のステップS304)。SPサーバ2の鍵生成部25は、自身の秘密鍵xsと公開鍵ys=xs*Pを生成する(図5のステップS205)。また、属性認証サーバ3から同様に公開鍵証明書zysの発行を受けておく。SPサーバ2は、属性認証サーバ3に対して、証明書の発行要求を送信し(図5のステップS206)、この発行要求に対応して、属性認証サーバ3が、SPサーバ2に対して、証明書を発行する(図5のステップS207)。
【0057】
SPサーバ2のチャレンジ生成部26は、乱数rを生成し、r*ysを計算して、計算した値をチャレンジとして、これを送信部27からユーザ端末1に送信する(図5のステップS209、図6のステップS305)。
【0058】
ユーザ端末1の属性証明書変形部13は、受信した属性証明書を変形する(図5のステップS210、図6のステップS306)。具体的には、例えば、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、乱数fを生成し、fzy1、fzy2、fzy3と変形する。
【0059】
また、このとき秘密鍵もfx1、fx2、fx3に変形される。そして、ユーザ端末1の処理部15が、fx1、fx2、fx3を用いてr*ysに対する署名値を計算する。具体的には、s1=f*x1*r*ys、s2=f*x2*r*ys、s3=f*x3*r*ysを計算する(図5のステップS211)。
【0060】
ユーザ端末1の送信部14は、変形した属性証明書と、計算した署名値をSPサーバ2に返信する(図5のステップS212、図6のステップS307)。
【0061】
SPサーバ2の属性証明書検証部21は、送られてきた属性証明書を検証する(図5のステップS213、図6のステップS308)。ここで、検証にはPairing計算を用いる。具体的には、ペアリング計算をe(*、*)で表したとき、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、z1P、z2P、z3Pを属性発行用の公開鍵としたときに、e(fy1、z1P)e(fy2、z2P)e(fy3、z3P)=e(fz1y1、P)e(fz2y2、P)e(fz3y3、P)を演算して、この演算式が成立するかどうかにより、属性証明書の正当性を検証する。e(f(y1+y2)、zP)=e(fz(y1+y2)、P)が成立するかどうかを検証する。
【0062】
次に、SPサーバ2の署名値検証部22が、送られてきた署名を検証する(図5のステップS214、図6のステップS308)。具体的には、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、e(s1、P)e(s2、P)e(s3、P)=e(fy1、r*ys)e(fy2、r*ys)e(fy3、r*ys)を演算して、演算式が成立するかどうかにより、署名の正当性を検証する。
【0063】
さらに、SPサーバ2の失効確認実行部23は、失効確認を実行する(図5のステップS215、図67のステップS309)。ここで、失効確認を行う場合は、失効リストを事前にあるいは、その場で属性認証サーバ3から取得する。失効リストとは、属性認証サーバ3が生成するもので、失効したユーザの公開鍵y1およびz1y1が公開される。失効リストには属性認証サーバ3による署名が付与されており、その正当性が確認できる。
【0064】
失効確認は、失効リストに掲載されているすべてのy1についてr*x3*y1を計算し、具体的には、属性2(対応する鍵は、x2、y2)、属性3(対応する鍵は、x3、y3)を提示する場合は、失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する。この式が成立したとき、その鍵(そのユーザの持つすべての属性)は無効である(失効している)と判断する。
【0065】
また、属性のうち、1つだけを失効させる場合、例えば、属性2のみを失効させる場合、y2、z2y2が公開される。そして、失効リストに掲載されているすべてのy2について、r*xs*y2を計算し、e(z2y2、s2)=e(f*z2*y2、r*xs*y2)が成り立つかどうか検証する。
【0066】
SPサーバ2は、証明書の正当性確認、署名の正当性確認、失効確認が完了すると、認証が成功したものとして判断し、SPサーバ2のサービス提供部24が、ユーザ端末1に対して属性情報に基づいたサービス提供を行う(図5のステップS216、図6のステップS310)。
【0067】
なお、上記したマルチ属性認証システムの具体的な利用用途としては、医療情報の開示において、医療資格を持つ否かの確認、あるいは、公共交通機関において、公的に発行されたシルバーパス等の資格を確認する等の用途が考えられる。
【0068】
以上、説明したように本実施形態においては、複数の属性を任意の組合せで同時に認証可能である。また、属性認証の際に、匿名性が保証される。また、属性認証に使用する属性を、他人に譲渡したり、貸与したりすることはできない。また、属性認証の際には、第3者との通信を必要としない。また、属性情報の任意の変形が第3者との通信なしに可能である。さらに、ユーザ側に耐タンパデバイス無しで安全な属性認証を実現できる。
【0069】
なお、図1に示す、属性認証クライアントモジュール10、属性認証サーバモジュール20、属性証明書発行モジュール30は、ユーザ端末1、SPサーバ2、属性認証サーバ3のそれぞれで実行されるプログラムであり、これらプログラムをコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをユーザ端末1、SPサーバ2、属性認証サーバ3のそれぞれ(いずれもコンピュータシステム)に読み込ませ、実行することによって本発明のマルチ属性認証システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0070】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0071】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0072】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。例えば、本実施形態においては、属性認証サーバ3が失効確認処理を実行する形態について説明したが、属性認証サーバ3とは別に、失効確認処理を行うサーバを設けてもよい。
【符号の説明】
【0073】
1・・・ユーザ端末(U)
2・・・サービス提供サーバ(SPサーバ)
3・・・属性認証サーバ(CAサーバ)
4・・・ネットワーク
10・・・属性認証クライアントモジュール
12・・・鍵生成部
13・・・属性証明書変形部
14・・・送信部
15・・・処理部
20・・・属性認証サーバモジュール
21・・・属性証明書検証部
22・・・署名値検証部
23・・・失効確認実行部
24・・・サービス提供部
25・・・鍵生成部
26・・・乱数生成部
27・・・送信部
30・・・属性証明書発行モジュール
31・・・署名部
32・・・属性証明書発行部
33・・・送信部



【特許請求の範囲】
【請求項1】
ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムであって、
前記ユーザ端末が、
複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1の鍵生成手段と、
前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第1の送信手段と、
前記サービス提供サーバにサービスの提供要求を送信する第2の送信手段と、
乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する変形手段と、
前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵ysに乱数rを乗じたものに対する署名値を算出する処理手段と、
前記変形手段において変形した属性証明書と該処理手段において算出した署名値とを前記サービス提供サーバに送信する第3の送信手段と、
を備え、
前記属性証明書発行サーバが、
前記ユーザ端末の鍵生成手段が生成した前記属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う署名手段と、
前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する発行手段と、
を備え、
前記サービス提供サーバが、
自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第2の鍵生成手段と、
生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第4の送信手段と、
前記ユーザ端末から受信した属性証明書を検証する第1の検証手段と、
前記ユーザ端末から受信した署名値を検証する第2の検証手段と、
失効確認を実行する失効確認実行手段と、
前記第1の検証手段により属性証明書の正当性が確認され、前記第2の検証手段により署名値の正当性が確認され、かつ、前記失効確認実行手段により失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行うサービス提供手段と、
を備えたことを特徴とするマルチ属性認証システム。
【請求項2】
前記サービス提供サーバが、乱数rを生成し、この乱数rと自身の公開鍵ys(=xs*P)からr*ysを計算し、これをチャレンジとして送信することを特徴とする請求項1に記載のマルチ属性認証システム。
【請求項3】
前記ユーザ端末の処理手段が、前記変形手段が生成する乱数fによって変形された前記属性に対する秘密鍵fx1、fx2、・・・、fxmを用いて、r*ysに対する署名値をs1=fx1*r*ys、s2=fx2*r*ys、・・・、si=fxi*r*ysにより算出することを特徴とする請求項2に記載のマルチ属性認証システム。
【請求項4】
前記サービス提供サーバの第1の検証手段が、z1P、z2P・・・、ziPを属性発行用の公開鍵としたときに、e(fy1、z1P)e(fy2、z2P)・・・e(fyi、ziP)=e(fz1y1、P)e(fz2y2、P)・・・e(fziyi、P)を演算して、該演算式が成立するかどうかにより、属性証明書の正当性を検証することを特徴とする請求項1に記載のマルチ属性認証システム。
【請求項5】
前記サービス提供サーバの第2の検証手段が、e(s1、 P)e(s2、 P)・・・e(si、 P)=e(fy1、r*ys)e(fy2、r*ys)・・・e(fyi、r*ys)を演算して、該演算式が成立するかどうかにより、署名の正当性を検証することを特徴とする請求項3に記載のマルチ属性認証システム。
【請求項6】
前記サービス提供サーバの失効確認実行手段が、失効リストに掲載されているすべてのy1について、r*xs*y1を計算するとともに、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)を演算して、該演算式が成立するかどうかにより、失効確認を実行することを特徴とする請求項2または請求項3に記載のマルチ属性認証システム。
【請求項7】
ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおいて、前記サービス提供サーバが実行する失効確認方法であって、
前記属性証明書発行サーバから失効リストを取得する第1のステップと、
失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する第2のステップと、
属性のうち、1つだけを失効させる場合、ynおよびznynを公開する第3のステップと、
失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する第4のステップと、
を備えることを特徴とする失効確認方法。
【請求項8】
ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおけるマルチ属性認証方法であって、
前記ユーザ端末が、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1のステップと、
前記ユーザ端末が、前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第2のステップと、
前記属性証明書発行サーバが、前記属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う第3のステップと、
前記属性証明書発行サーバが、前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する第4のステップと、
前記ユーザ端末が、前記サービス提供サーバにサービスの提供要求を送信する第5のステップと、
前記サービス提供サーバが、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第6のステップと、
前記サービス提供サーバが、生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第7のステップと、
前記ユーザ端末が、乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する第8のステップと、
前記ユーザ端末が、前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する第9のステップと、
前記ユーザ端末が、前記変形した属性証明書と算出した署名値とを前記サービス提供サーバに送信する第10のステップと、
前記サービス提供サーバが、前記ユーザ端末から受信した属性証明書を検証する第11のステップと、
前記サービス提供サーバが、前記ユーザ端末から受信した署名値を検証する第12のステップと、
前記サービス提供サーバが、失効確認を実行する第13のステップと、
前記サービス提供サーバが、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行う第14のステップと、
を備えたことを特徴とするマルチ属性認証方法。
【請求項9】
ユーザ端末と、属性証明書発行サーバと、サービス提供サーバとがネットワークを介して接続されて成るマルチ属性認証システムにおいて、前記サービス提供サーバが実行する失効確認方法をコンピュータに実行させるためのプログラムであって、
前記属性証明書発行サーバから失効リストを取得する第1のステップと、
失効リストに掲載されているすべてのy1について、r*xs*y1を計算し、e(z1y1、s1)=e(f*z1*y1、r*xs*y1)が成り立つかどうか検証する第2のステップと、
属性のうち、1つだけを失効させる場合、ynおよびznynを公開する第3のステップと、
失効リストに掲載されているすべてのynについて、r*xs*ynを計算し、e(znyn、sn)=e(f*zn*yn、r*xs*yn)が成り立つかどうか検証する第4のステップと、
をコンピュータに実行させるためのプログラム。
【請求項10】
ユーザ端末と、属性証明書発行サーバと、サービス提供サーバと、信頼できるサーバとがネットワークを介して接続されて成るマルチ属性認証システムにおけるマルチ属性認証方法をコンピュータに実行させるためのプログラムであって、
前記ユーザ端末が、複数のユーザの秘密鍵とこれと対をなす公開鍵とを属性の数よりも1つ多く生成する第1のステップと、
前記ユーザ端末が、前記属性証明書発行サーバに、該生成した属性の数に対応した公開鍵を送信する第2のステップと、
前記属性証明書発行サーバが、た前記属性の数に対応した公開鍵に対して、保有する署名鍵z1、z2で署名を行う第3のステップと、
前記属性証明書発行サーバが、前記ユーザ端末に対して、属性証明書として{y1、y2、z1y1、z2y2、z3y3、・・・ziyi}を発行する第4のステップと、
前記ユーザ端末が、前記サービス提供サーバにサービスの提供要求を送信する第5のステップと、
前記サービス提供サーバが、自身の秘密鍵xsと公開鍵ys(=xs*P)を生成する第6のステップと、
前記サービス提供サーバが、生成した乱数rと前記公開鍵ysとからなる情報をチャレンジとして前記ユーザ端末に送信する第7のステップと、
前記ユーザ端末が、乱数fを生成し、該乱数fを用いて、前記属性証明書発行サーバが発行する属性証明書を変形する第8のステップと、
前記ユーザ端末が、前記属性の数に対応した秘密鍵を乱数fにより変形し、該変形した秘密鍵を用いて、前記サービス提供サーバから受信したサービス提供者の公開鍵に乱数を乗じたものに対する署名値を算出する第9のステップと、
前記ユーザ端末が、前記変形した属性証明書と算出した署名値とを前記サービス提供サーバに送信する第10のステップと、
前記サービス提供サーバが、前記ユーザ端末から受信した属性証明書を検証する第11のステップと、
前記サービス提供サーバが、前記ユーザ端末から受信した署名値を検証する第12のステップと、
前記サービス提供サーバが、失効確認を実行する第13のステップと、
前記サービス提供サーバが、属性証明書の正当性が確認され、署名値の正当性が確認され、かつ、失効確認が完了したときに、前記ユーザ端末に対して、属性情報に基づいたサービスの提供を行う第14のステップと、
をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2011−155349(P2011−155349A)
【公開日】平成23年8月11日(2011.8.11)
【国際特許分類】
【出願番号】特願2010−14059(P2010−14059)
【出願日】平成22年1月26日(2010.1.26)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】