サービス提供システム、装置及びプログラム
【課題】 検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持する。
【解決手段】 サービスを提供する検証者装置300aからサービスの提供を受ける前に、検証者装置から送信される共通のメニューを受け取り、会員装置200a内で会員が所属するグループを確認し、会員が受けられるサービスのメニューだけを会員装置に表示する。すなわち、会員装置から会員の属性に関する情報を出さずに、会員が受けられるサービスメニューに関する情報を個別化し、各会員が受けられるサービスに応じたメニューを表示することができる。これにより、会員の趣味・趣向を外部に知られることも無くなり、会員のプライバシを保護できる。従って、上記課題を解決できる。
【解決手段】 サービスを提供する検証者装置300aからサービスの提供を受ける前に、検証者装置から送信される共通のメニューを受け取り、会員装置200a内で会員が所属するグループを確認し、会員が受けられるサービスのメニューだけを会員装置に表示する。すなわち、会員装置から会員の属性に関する情報を出さずに、会員が受けられるサービスメニューに関する情報を個別化し、各会員が受けられるサービスに応じたメニューを表示することができる。これにより、会員の趣味・趣向を外部に知られることも無くなり、会員のプライバシを保護できる。従って、上記課題を解決できる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はグループ署名を用いたサービス提供システム、装置及びプログラムに関する。
【背景技術】
【0002】
最近、サービスを提供して決済するサービス提供システムでは、匿名の利用者を認証可能なグループ署名方式を用いたものが知られている(例えば、非特許文献1〜3参照)。この種のサービス提供システムは、大まかには次の(1)〜(3)のように運営される。
【0003】
(1)管理者は、予め利用者の申し込みにより、利用者の決済情報などの個人情報と、利用者がどのグループに所属するかとをグループ署名方式に基づいて登録する。なお、グループ署名方式の詳細については後述する。
【0004】
(2)登録の後、匿名の利用者は、サービスの要求と共に、所属しているグループをサービス提供者に通知する。このとき、サービス提供者は、匿名の利用者に関し、“誰が”という個人情報を入手不可能となっている。サービス提供者は、利用者が所属しているグループのうち、サービスを利用可能なグループの情報を返す。
【0005】
(3)匿名の利用者は、サービスを利用可能なグループのうち、選択したグループによるグループ署名を生成してサービス提供者に送る。サービス提供者は、このグループ署名を検証した後、そのグループが無効とされていなければ、要求されたサービスに相当するサービスデータを匿名の利用者に送る。匿名の利用者は、このサービスデータに基づいてサービスの提供を受ける。
【0006】
図13はこのようなサービス提供システムの概要を示す模式図である。なお、前述した説明中、利用者は会員とも呼ばれ、サービス提供者は検証者とも呼ばれる。
【0007】
管理者装置100は、会員登録後に会員装置200となる利用者端末からの要求に基づいて、要求されたサービスを利用可能なグループに所属する旨を証明するためのメンバ証明書を発行する機能を有し、会員情報を管理するサーバである。会員情報とは、会員の公開鍵と、決済情報等の個人情報と、メンバ証明書とを含み、サービスを利用した際のグループ署名に基づいて、会員から決済処理をするための秘密管理情報である。
【0008】
会員装置200は、管理者装置100に管理される会員が所有する装置で、例えばパーソナルコンピュータ(PC)の様な汎用計算機が使用可能となっている。会員装置200は、会員がメンバ証明書の発行の授受や,検証者装置300からサービスの提供を受けるために,グループ署名方式を用いるためのデータ及びプログラムを格納し、公開鍵ペアの生成やグループ署名の生成といった演算を実行し、ネットワーク通信を行なう機能をもっている。
【0009】
検証者装置300は、会員装置200からのサービス要求に基づき、利用可能なサービスを会員装置200に表示させ、会員装置200から送信されるサービス要求を検証し、会員装置200にサービスを提供する装置である。
【0010】
会員装置200となる利用者端末は、管理者装置100へ会員登録のための要求を出す(ST1)。この要求には、会員の公開鍵と、決済情報等の個人情報とが含まれている。管理者装置100では、この要求に従い会員登録を行うと,会員の公開鍵を管理者装置100の秘密鍵で署名し、得られたメンバ証明書を会員装置200に発行する(ST2)。
【0011】
会員装置200は,インターネットなどのネットワークを通じて検証者装置300へアクセスし、利用可能なサービスの情報を検証者装置300から入手する(ST3)。会員装置200は、利用可能なサービスのうち、受けたいサービスを選択し,サービス要求としてのグループ署名を検証者装置300へ送る(ST4)。
【0012】
検証者装置300は,会員装置200から送られたグループ署名を検証し,正当であればサービスデータを会員装置200へ送る。しかる後、検証者装置300は、サービスデータを送ったとして管理者装置100へ会員のグループ署名を送る(ST5)。
【0013】
管理者装置100は,このグループ署名を検証し,正当であればグループ署名のメンバ証明書から会員を特定し、サービス料金の決済代行を行い、匿名の会員の決済結果を検証者装置300へ送る(ST6)。
【0014】
なお、図13に示した匿名認証によるサービス提供については、非特許文献4,5及び特許文献1に詳しい。
【0015】
続いて、匿名認証によるサービス提供の具体例を図14及び図15を用いて説明する。
【0016】
図14は従来のサービス提供システムの構成を示す模式図であり、図15は従来のサービス提供における全体動作を説明するためのシーケンス図である。なお、会員は、前述した会員登録を済ませているものとする。
【0017】
管理者装置100には、CRL情報管理部101から読出/書込可能な記憶装置としてのCRL情報記憶部102にCRL(Certificate Revocation List:グループ公開鍵証明書失効リスト)情報が記憶されている。CRL情報とは、システム管理者により無効とされ、失効したグループ公開鍵証明書に関する関連情報である。例えば、図16に示すように、証明書のシリアル番号、失効日、理由コードが含まれるリスト形式の情報である。この例では、シリアル番号が6B、失効日が2005年4月6日、CRL理由コードが利用中止(1)というように各情報が関連付けられており、シリアル番号6Bの証明書が2005年4月6日に失効し、その失効理由が利用中止(1)である旨を意味している。
【0018】
ここで、CRL情報管理部101は、グループ公開鍵証明書が失効したとき、その失効(以下、リボークともいう)を反映させるようにCRL情報をCRL情報記憶部102に書込む(ST11)。CRL情報管理部101は、この書込み後、CRL情報記憶部102からCRL情報を読み出してCRL情報送信部103に送出する。CRL情報送信部103は、CRL情報をネットワーク400を介して検証者装置300に送信する(ST12)。検証者装置300では、このCRL情報をCRL情報受信部301により受信し、図示しない記憶装置に保存する。
【0019】
一方、会員装置200では、属性情報管理部201から読出/書込可能な記憶装置としての属性情報記憶部202に会員の属性情報が記憶されている。属性情報とは、会員が予め所属しているグループのグループ署名を生成する時に使用する情報が含まれているリストであり、例えば、所属しているグループのグループID、所有するメンバ鍵、メンバ証明書など、が含まれている。図17に示す例では、会員装置200が所属するグループのグループID情報に対し、それぞれ1つのメンバ鍵情報と、1つのメンバ証明書情報とが関連付けられている。メンバ鍵情報とは、グループ署名生成時に使用され、会員と、会員が所属するグループのうち1つのグループとに特有のバイト(byte)列の情報である。メンバ証明書情報とは、会員がグループのメンバである旨を証明するためのグループ特有のバイト列である。メンバ鍵情報などの秘密情報は、暗号化した状態で属性情報記憶部202に保存する等、第三者から見られないように保護することが望ましい。
【0020】
会員装置200は、会員の操作により、インターネット等のネットワーク400を通じて検証者装置300へアクセス要求を実行し、属性情報のうち、全ての所属グループのグループIDを送信する(ST13)。アクセス要求とは、クライアント/サーバシステムのWeb接続のようなURLの指定によるものと考えてよい。属性情報は、属性情報記憶部202から属性情報管理部201により取得され、属性情報送信部203を通じて検証者装置300へ送信される。なお、属性情報のうち、メンバ鍵情報及びメンバ証明書情報は、送信されない。
【0021】
検証者装置300は、属性情報を属性情報受信部302にて受信し、メニュー作成部305に送出する。一方、検証者装置300では、メニュー情報管理部304から読出/書込可能な記憶装置としてのメニュー情報記憶部303にメニュー情報が保存されている。メニュー情報は、提供するサービスを識別可能なサービス識別情報であり、例えば提供するサービスがオンラインによるコンテンツ販売の場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループのグループIDなどの各情報を含んでいる。例えば図18に示すように、コンテンツIDが1、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10、サービス利用可能グループIDが00000、11111、22222、33333というように各情報が関連付けられてメニュー情報が構成されている。コンテンツID「1」の商品は、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10であり、グループIDが00000、11111、22222、又は33333であるサービス利用可能グループに販売可能である旨が表されている。
【0022】
メニュー作成部305は、属性情報受信部302から属性情報を受けると、メニュー情報管理部304に管理されるメニュー情報と、受け取った属性情報とに基づいて個別メニュー情報を作成する(ST14)。具体的にはメニュー作成部305では、図19に示すように、属性情報内の(所属)グループIDと、メニュー情報内のサービス利用可能グループIDとを照合し、互いに一致するグループIDのみをコンテンツ購入可能グループID(会員用のサービス利用可能グループID)として使用する。
【0023】
また、メニュー作成部305は、メニュー情報のうち、コンテンツ購入可能グループIDに該当するメニュー情報を選択し、各グループIDにグループ名を付加して個別メニュー情報を作成する。個別メニュー情報とは、会員装置200から送られた属性情報から、その会員が所属するグループのメンバだけが受けられるサービスだけを表示するための情報である。従って、会員が所属していないグループのメンバが受けられるサービスの情報は表示されない。具体的には個別メニュー情報は、図20に示すように、会員に提供するサービスの情報であり、例えば提供するサービスがオンラインによるコンテンツ販売の場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループ(コンテンツ購入可能グループ)のグループID及びグループ名などが含まれる。このメニュー個別情報は、HTML(Hyper Text Makeup Language)やJava(登録商標)Scriptなどの言語を用いて生成される。
【0024】
メニュー作成部305は、作成した個別メニュー情報をメニュー送信部306を介して会員装置200に送信する(ST15)。
【0025】
会員装置200では、個別メニュー情報をメニュー受信部204により受信すると、この個別メニュー情報をメニュー表示部205aにより会員装置画面に表示する。会員装置画面には、個別メニュー情報が利用可能サービスとして表示される。なお、表示される利用可能サービスは、システム管理者によりリボークされて現時点で無効なグループを含む場合がある。この場合の無効なグループは、後述するステップST19の検証により無効と判定されるが、現時点では利用可能サービスとして表示される。
【0026】
会員装置200は、会員の操作により、表示中の利用可能サービスから、受けたいサービスをサービス選択部206にて選択し、サービス要求情報生成部207にてサービス要求情報を生成する。サービス要求情報とは、選択されたサービスに対応するグループのメンバ鍵とメンバ証明書に基づいて生成されるグループ署名である。なお、選択されたサービスに対応するグループが無効の場合でも、サービス要求情報生成部207は、無効なグループのメンバ鍵とメンバ証明書に基づいてサービス要求情報(グループ署名)を生成する(ST16)。得られたサービス要求情報は、サービス要求情報送信部208からネットワーク400を通じて検証者装置300へ送られる(ST17)。
【0027】
検証者装置300では、サービス要求情報受信部307にてサービス要求情報を受信し、サービス要求情報検証部308にてサービス要求情報の正当性を検証する(ST18)。サービス要求情報の検証は、グループ公開鍵にて会員のグループ署名が正当であるかを検証することにより行う。このとき、サービス要求情報検証部308は、例えばサービス利用可能グループのグループID情報、購入対象のコンテンツのコンテンツID情報、購入数、合計金額などをグループ署名から復元する。
【0028】
また、サービス要求情報検証部308は、ステップST12の後に図示しない記憶装置に保存したCRL情報に基づいて、グループが有効であるかを検証する。CRL情報の検証は、CRL情報に含まれるシリアル番号とグループ公開鍵証明書から取り出し可能なシリアル番号とを照合することで行う。グループ公開鍵証明書とは、グループ公開鍵が正当なものであることを証明するものである。
【0029】
サービス要求情報及びCRL情報による検証の結果、グループ署名が正当であり、且つグループが有効である場合、検証者装置300では、要求したサービスの内容を確認表示させるためのサービス要求確認画面情報をサービス要求確認情報生成部309にて生成する(ST19)。サービス要求確認画面情報とは、会員装置200より送られたグループ署名であり、グループ署名から復元したサービス利用可能グループのグループID情報、購入対象のコンテンツのコンテンツID情報、購入数、合計金額などの表示画面情報である。検証者装置300は、サービス要求確認画面情報を、サービス要求確認情報送信部310よりネットワーク400を通じて会員装置200に送信する(ST20)。
【0030】
サービス要求情報及びCRL情報による検証の結果、グループ署名は正当であるが、グループが無効の場合、グループの失効によりサービス提供が不可能である旨のエラーメッセージを表示させるためのエラー画面情報を、サービス要求確認情報生成部309にて生成する。サービス要求確認画面情報及びエラー画面情報は、いずれも個別メニュー画面の生成と同様の手順で、HTMLやJavaScriptを用いて生成される。
【0031】
そして、検証者装置300は、生成したエラー画面情報を、サービス要求確認情報送信部310よりネットワーク400を通じて送信する。
【0032】
会員装置200では、サービス要求確認情報受信部209にてサービス要求確認画面情報又はエラー画面情報を受信する。サービス要求確認画面情報を受信した場合には、サービス提供が可能である旨とグループ署名とがサービス要求確認情報表示部210にて表示される(ST21)。一方、エラー画面情報を受信した場合には、サービス提供不可能である旨がサービス要求確認情報表示部210にて表示されるので、会員装置200は処理を終了する。
【0033】
また、検証者装置300は、検証結果が真のとき(グループ署名が正当であり、且つグループが有効である場合)、サービス要求情報検証部308でグループ署名より復元されたコンテンツID情報により、サービスデータ記憶部312内のサービスデータの中から、該当するサービスデータを選択し、サービス送信部311からネットワーク400を介して会員装置200へ送信する(ST22)。
【0034】
ここで、サービスデータとは、会員装置200に提供するサービスに用いられる(供される)情報である。例えば、提供するサービスがオンラインによるコンテンツ販売の場合、画像、動画、音楽、電子書籍などのドキュメントなどのマルチメディア・コンテンツの属性情報又はコンテンツ自体の情報であり、コンテンツのコンテンツID、コンテンツ名、ファイル名、ダウンロードURLが含まれる、リスト形式の情報である。サービスデータは、例えば図21に示すように、コンテンツIDが1、商品名がITEM、ファイル名Item.txtであるファイルをダウンロードURL Http://www.item/から取得できることを示している。なお、サービスデータは、前述したマルチメディア・コンテンツに限らず、電子チケット情報などのように、任意の電子情報が適用可能となっている。
【0035】
会員装置200は、サービスデータをサービス受信部211にて受信すると、サービス受領応答を検証装置300へ返信する(ST23)。しかる後、会員装置200は、サービスデータに基づいてサービスの提供を受ける。
【非特許文献1】D. Chaum, E. van Heyst, “Group Signatures”, EUROCRYPT’91, LNCS 547, Springer-Verlag, pp.257-265, 1991.
【非特許文献2】G. Ateniese , J. Camenisch, M. Joye and G. Tsudik. A practical and provably secure coalition-resistant group signature scheme. CRYPTO 2000, LNCS 1880, Springer-Verlag, pp.255-270, 2000.
【非特許文献3】J. Camenisch, M. Stadler, “Efficient Group Signature Schemes for Large Groups”, CRYPTO’97, LNCS 1294, pp.410-424, 1997.
【非特許文献4】加藤,岡田,吉田;“プライバシを保護する匿名認証システムの開発”,Computer Security Symposium 2003予稿集,p.569-574,2003
【非特許文献5】岡田,吉田,加藤;“計算能力の低いデバイスに適したグループ署名方式”,SCIS2005予稿集III/IV.p.1147-1152,2005
【特許文献1】特開2004−54905号公報
【発明の開示】
【発明が解決しようとする課題】
【0036】
しかしながら、以上のようなサービス提供システムでは、本発明者の検討によれば、次のような改良の余地(1)〜(3)がある。
【0037】
(1)ステップST13に伴い、サービス提供者(検証者)は、会員から受ける全ての所属グループのグループIDに基づいて、匿名の会員に関し、“どのような”という趣味・趣向情報を入手可能であるので、趣味・趣向に応じた広告などを会員装置200に返信可能となっている。また、所属グループのグループIDの数や種類から、アクセスしてきた会員が同じであることの推測が容易となり、匿名要件であるアンリンカビリティ(Unlinkability)を保てなくなる。なお、アンリンカビリティとは、2つのグループ署名に関し、同一のグループ会員が署名したか否かを判別できない旨の匿名要件である。
【0038】
(2)ステップST15に伴い、会員装置200に表示される各グループは、現時点で無効なグループを含む場合がある。この場合、会員は、サービスを要求する手続きを途中まで実行した後、最終的にサービス提供不可能(エラーメッセージ)が通知されることにより、不要な手間を取らされることになる。
【0039】
(3)ステップST17に伴い、会員装置200が生成したグループ署名(サービス要求情報)を確認するため、一旦、サービス提供者へ送信する必要がある。このため、会員は、会員装置200が生成したグループ署名をすぐに確認することができない状況にある。
【0040】
本発明は上記実情を考慮してなされたもので、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持し得るサービス提供システム、装置及びプログラムを提供することを目的とする。
【0041】
本発明の他の目的は、無効な所属グループに対する利用者の不要な手間を削減し得るサービス提供システム、装置及びプログラムを提供することにある。
【0042】
本発明の更に他の目的は、会員装置が生成したグループ署名を検証者装置に送信せずに会員装置側で確認し得る会員装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0043】
第1の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置としては、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置としては、所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段とを備えたサービス提供システムである。
【0044】
第1の発明によれば、サービスを提供する検証者装置からサービスの提供を受ける前に、検証者装置から送信される共通のメニューを受け取り、会員装置内で会員が所属するグループを確認し、会員が受けられるサービスのメニューだけを会員装置に表示するので、会員装置から会員の属性に関する情報を出さずに、会員が受けられるサービスメニューに関する情報を個別化し、各会員が受けられるサービスに応じたメニューを表示することができる。これにより、会員の趣味・趣向を外部に知られることも無くなり、会員のプライバシを保護できる。
【0045】
従って、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持することができる。
【0046】
第2の発明は、第1の発明において、前記会員装置としては、前記サービスの要求を含むグループ署名を生成するグループ署名生成手段と、このグループ署名が記憶されるグループ署名記憶手段と、前記記憶されたグループ署名及びこのグループ署名に含まれる前記サービスの要求を、前記検証装置にグループ署名を提示する前に表示するサービス要求表示手段と、前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段とを備えたサービス提供システムである。
【0047】
第2の発明によれば、会員が要求したいサービスの内容について、会員装置から一旦検証者装置へ送り、検証者装置でサービスの内容を確認する画面を生成し送るのでなく、会員装置内でサービスの内容を確認し、生成したグループ署名を表示して確認することが出来る。
【0048】
第3の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに用いられる前記会員装置であって、前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報が記憶されるグループ優先度情報記憶手段と、所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段と、前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段と、前記第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段とを備えた会員装置を前提としている。
【0049】
第3の発明は、この前提の会員装置において、前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段を備え、前記表示制御手段としては、前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段を備えた会員装置である。
【0050】
第3の発明によれば、サービス提供者が検証者装置に対してサービスによって利用してもらいたいグループの優先度を決めたり、会員がどのグループでサービスを受けるか予め優先度を決めたりすることで、サービスを選択するメニューを表示する際に、いちいちグループを選択することなく、一意に決めてサービスを受けることが出来る。
【0051】
第4の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置としては、各グループ毎に、当該グループが失効した場合に書き込まれるグループ失効情報が記憶されるグループ失効情報記憶手段と、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段と、前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置としては、所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段とを備えたサービス提供システムである。なお、第4の発明は、前記会員装置としては、前記判定の結果、一致したグループ識別情報が無かったとき、サービスの提供が不可である旨を表示するサービス不可表示手段を備えたサービス提供システムとしてもよい。
【0052】
第4の発明は、換言すると、システムの管理者がリボーク(失効)させたグループの情報をCRLに登録し、サービス提供者がCRL情報(グループ失効情報)と、自身の持っている各サービスの利用可能グループとを検証することで、利用者にメニュー情報を送信する前に、現在の利用可能グループを確認するシステムである。
【0053】
第4の発明によれば、提供するサービスの情報をサービス利用者に送信する前に、利用可能グループを検証することができる。従って、無効な所属グループに対する利用者の不要な手間を削減することができる。
【0054】
また、第4の発明は、提供するサービスの情報とともに、そのサービスを利用することが可能なグループの情報をサービス利用者に送信するので、利用者に意識させることなく、利用不可能なグループの情報を排除したサービス情報を送信することができる。
【0055】
さらに、第4の発明は、サービスの提供を受けることが可能なグループ情報と、サービス利用者の所属しているグループを検証した後、利用者の装置画面に表示するシステムでもある。また、サービスの提供を受けることが不可能なグループ情報のみを得た場合には、サービスの提供が不可能なグループである旨を、利用者の装置画面に表示する。
【0056】
この様に、第4の発明は、会員が、サービスを受けるのに利用可能なグループのみの選択を可能とすることで、無効なグループによるグループ署名生成、およびサービス提供者に対してそのグループ署名を送信するという無駄な動作を避けることができる。また、サービスを受けることができない理由を明確に会員に表示することができる。
【0057】
なお、第1〜第4の発明は、各装置からなる「システム」又は各装置としての「装置」として表現したが、これに限らず、システム又は装置に用いられる「プログラム」で表現するように変形してもよい。さらに、これら第1〜第4の発明は、他の構成要素を付加して変形してもよい。以下、第1,第2,第4の発明に関し、プログラムで表現する変形例と、他の構成要素を付加する変形例とを述べる。これらの変形例はシステム又は装置として表現可能なことは言うまでもない。但し、プログラム表現を装置等で表現する場合、例えば、冒頭の「メモリを有し」を省略したり、「…を前記メモリに書込む…書込手段」を「…が記憶される…記憶手段」にしたり等、若干、表現を変形させた方がよい。
【0058】
第1の発明の変形例1(会員装置のプログラム表現)は、メモリを有し、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記会員装置のコンピュータに用いられるプログラムであって、前記コンピュータを、所属する各グループのグループ識別情報を前記メモリに書込む所属グループ識別情報書込手段、所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段、前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段、前記受信したメニュー情報内の各グループのグループ識別情報と、前記メモリ内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段、として機能させるためのプログラムである。
【0059】
第1の発明の変形例2(会員装置のプログラム表現への構成要素の付加)は、第1の発明の変形例1において、前記コンピュータを、予め利用可能なサービスのサービス識別情報に関連してサービス優先度情報を前記メモリに書込むサービス優先度書込手段、前記メモリ内のサービス優先度情報に基づいて、前記メニュー情報の表示を制御する表示制御手段、として機能させるためのプログラムである。
【0060】
第2の発明の変形例(会員装置のプログラム表現)は、第1の発明の変形例1において、前記コンピュータを、前記サービスの要求を含むグループ署名を生成するグループ署名生成手段、このグループ署名を前記メモリに書込むグループ署名書込手段、前記メモリ内のグループ署名及びこのグループ署名に含まれる前記サービスの要求を表示するサービス要求表示手段、前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段、として機能させるためのプログラムである。
【0061】
第1の発明の変形例3(検証装置のプログラム表現)は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、メモリを有し、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記検証者装置のコンピュータに用いられるプログラムであって、前記コンピュータを、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報をメモリに書込むメニュー情報書込手段、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メモリ内のメニュー情報を前記会員装置に送信するメニュー送信手段、として機能させるためのプログラムである。
【0062】
第4の発明の変形例(検証装置のプログラム表現)は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、メモリを有し、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記検証者装置のコンピュータに用いられるプログラムであって、各グループ毎に、当該グループが失効した場合にグループ失効情報を前記メモリに書込むグループ失効情報書込手段、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記メモリに書込むメニュー情報書込手段、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メモリ内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段、前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段、として機能させるためのプログラムである。
【0063】
また、第1〜第4の発明に限らず、他の変形例も可能である。例えば、他の変形例1は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置は、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記メニュー情報における各グループ間の検証者側での優先度を示す第1のグループ優先度情報が記憶されたグループ優先度情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報と前記グループ優先度情報記憶手段内の第1のグループ優先度情報とを前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置は、前記検証装置から前記メニュー情報及び第1のグループ優先度情報を受信する手段と、この第1のグループ優先度情報に示される検証者側での優先度に応じて前記メニュー情報を表示するメニュー情報表示手段と、前記メニュー情報表示手段による表示中、外部からの操作に基づいて、前記メニュー情報内のサービス識別情報を選択するサービス選択手段と、このサービス識別情報に対応するサービスの要求を含むグループ署名を生成するグループ署名生成手段とを備えたサービス提供システムである。なお、他の変形例1も前述同様に、各装置やプログラムで表現してもよく、他の構成要素を付加してもよいことは言うまでもない。
【発明の効果】
【0064】
以上説明したように本発明によれば、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持できる。また、無効な所属グループに対する利用者の不要な手間を削減できる。更に、会員装置が生成したグループ署名を検証者装置に送信せずに会員装置側で確認できる。
【発明を実施するための最良の形態】
【0065】
以下、本発明の各実施形態について図面を参照しながら説明するが、その前に各実施形態の要素技術であるグループ署名方式について述べる。
<グループ署名方式>
グループ署名とは、デジタル署名方式の一種であり、これまで様々な方式が提案されている(例えば、非特許文献1〜3等参照)。グループ署名方式は、非特許文献1によれば、以下の第1乃至第3の性質を持っている。
【0066】
第1の性質は、あるグループに所属する任意のメンバがグループの代表として署名を生成することが可能な性質である。第2の性質は、検証者側においては、グループのメンバにより生成された署名である旨を検証可能であるものの、署名を生成したメンバ(以下、署名者ともいう)を特定することが困難であるという匿名性を持つ性質である。第3の性質は、特定の情報により、グループ署名から署名者を特定することが可能な性質である(以下、追跡可能性ともいう)。
【0067】
続いて、このようなグループ署名方式について、特許文献3に記載されているカメニッシュ(J. Camenisch)らのグループ署名方式を代表例として述べる。ここで、次の表1は、カメニッシュらのグループ署名方式の記号とその説明を示している。
【表1】
【0068】
(Cam.1:準備)
グループ管理者GMは、RSA暗号方式の公開鍵e,n,素数L,元g,元a,整数μおよびセキュリティパラメータεの組yG=(e,n,L,g,a,μ,ε)をグループ公開鍵として公開する。メンバAとなるユーザは、秘密鍵x∈{1,…,2μ−1}を選び、公開鍵y=ax mod nを作る。
【0069】
(Cam.2:グループ参加要求)
メンバAとなるユーザは、乱数t∈{1,…,2ε(μ+k)−1}を選び、公開鍵yに対する秘密鍵xの知識証明SK(y)を算出する。知識証明SK(y)は、次のc1,s1の組である。
c1=h(y‖a‖at(mod n))
s1=t−xc1
そして、ユーザは、公開鍵y及び知識証明SK(y)をグループ管理者GMに送る。
【0070】
(Cam.3:メンバ証明書発行)
グループ管理者GMは、s1’=s1(mod λ(n))を算出し、次のc1の式により、正しい秘密鍵xをユーザが保持している旨を検証する。
【数1】
【0071】
その後、グループ管理者GMは、適切な方法でユーザの参加権限を確認する。
【0072】
しかる後、グループ管理者GMは、y+δに対して次式のように署名を施してメンバ証明書νを発行し、秘密にユーザに送る。
【0073】
ν=(y+δ)d (mod n)
なお、δは例えば1である。
【0074】
(Cam.4:グループ署名)
署名者としてのメンバAは、z=gy (mod L)を求める。その後、メンバAは、ui>xを満たすk個の乱数ui∈{1,…,2εμ−1}を選び、秘密鍵xの知識証明SK2(m)=(c2,s2,1,…,s2,k)を次式のように求める。
【数2】
【0075】
s2,i=ui−x …(c2(i)=0のとき)
s2,i=ui …(その他のとき)
但し、i=1,…,k
ここで、c2(i)とは、c2の2進表示上位ビットからのi番目(i=1,…,k)のビットを示す。
【0076】
また、メンバAは、乱数wi∈Zn*を選び、メンバ証明書νの知識証明SK3(m)=(c3,s3,1,…,s3,k)を次式のように求める。
【数3】
【0077】
s3,j=wj/ν (mod n) …(c3(j)=0のとき)
s3,j=wj …(その他のとき)
但し、j=1,…,k
結局、mについてのグループ署名は、(z,SK2(m),SK3(m))である。
【0078】
(Cam.5:グループ署名検証)
検証者Vは、グループ署名の正当性を以下のように検証し、正しければmを受理する。
【数4】
【0079】
(Cam.6:追跡)
グループ管理者GMは、任意のグループ署名(z,SK2(m),SK3(m))に対して、グループに参加している全てのメンバの公開鍵yから、以下の式が成り立つ公開鍵yを見つけることにより、グループ署名を生成したメンバを特定することが出来る。
【0080】
z=gy (mod L)
以上のようなカメニッシュのグループ署名方式は、メンバ証明書νに関連した秘密鍵xを用いてSK2(m)を作成することから、否認不可性を実現している。また、SK3(m)の検証により、グループ公開鍵eを用いて、メンバ証明書νを署名者であるメンバAが保持する旨を検証することから、検証性が示される。
【0081】
また、検証者Vがゼロ知識証明を用いて検証するので、メンバAの個人情報が漏洩せず、匿名性が保たれる。また、メンバAの署名のzは1つしかない秘密鍵xから作られるので、同じ基底gを用いるとセッション同士でメンバの情報がリンク(結合)可能となる。よって、署名毎に異なる基底gを用いれば、非結合性を満たす。
さらに、グループ管理者GMは、GMのみが知っているグループに参加しているメンバの公開鍵yを用いて、グループ署名を生成したメンバを特定することが可能であり、よって追跡可能性を満たす。
【0082】
以上がカメニッシュのグループ署名方式であり、前述した非特許文献1記載の第1乃至第3の性質を有している。また、グループ署名方式は、この方式に限らず様々な方式があるが、いずれの方式も同様に第1乃至第3の性質をもっている。
【0083】
なお、係るグループ署名方式は、上述した説明では1つのグループに適用されたが、本発明の各実施形態では複数のグループ内の各グループに適用される。各実施形態の管理者装置は、上述したグループ署名方式を各グループに適用すると共に、各グループを個別のグループIDにより識別して管理する。その他、本発明の各実施形態と、前述したカメニッシュのグループ署名方式との対応関係は、次の表2に示す通りである。
【表2】
【0084】
次に、以上のようなグループ署名方式及びその対応関係を前提として本発明の各実施形態を説明する。
【0085】
(第1の実施形態)
図1は本発明の第1の実施形態に係るサービス提供システムの構成を示す模式図であり、図14と同一部分については同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【0086】
すなわち、本実施形態は、検証者装置300aが予めCRL情報によって無効なグループをメニュー情報から削除し、無効なグループを含まないメニュー情報を会員装置200aに送信する構成により、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性の維持を図り、且つ無効なグループに対する利用者の不要な手間の削減を図るものである。なお、以下の各装置100,200a,300aは、それぞれ装置の各機能を実現するためのハードウェア構成、又はハードウェア(各記憶部)とソフトウエアとの組み合わせ構成として実現されている。ソフトウェアは、予め記憶媒体又はネットワークからインストールされ、各装置100,200a,300aにその機能を実現させるためのプログラムからなる。
ここで、管理者装置100は、前述同様の構成である。
【0087】
会員装置200aは、前述した属性情報送信部203、メニュー受信部204及びサービス要求情報生成部207に代えて、アクセス要求送信部220、メニュー情報サービス購入可能グループ情報受信部221、購入グループ優先度設定部222、所属グループ情報管理部223、所属グループ情報記憶部224、グループ有効性検証部225、メニュー生成部226、サービス要求情報生成部227及びサービス要求確認情報表示部228を備えている。これに伴い、属性情報管理部201a、メニュー表示部205a、サービス選択部206a及びサービス要求情報送信部208aは、前述した機能を有するが、データの入力元又は出力先が異なることから添字aを付している。
【0088】
アクセス要求送信部220は、検証者装置300aからサービスを受けるための会員装置200aのアドレスなどであるアクセス要求情報を、ネットワーク400を介して検証者装置300aのアクセス要求受信部312に送信する機能をもっている。ここで、アクセス要求情報は、会員装置200aから検証者装置300aに送信される情報であって、メニューを表示するために必要な情報の送信を要求する情報である。 メニュー情報サービス購入可能グループ情報受信部221は、検証者装置300aのメニュー情報サービス購入可能グループ情報送信部317からネットワーク400を介して送信されたメニュー情報及びサービス購入可能グループ情報とを受信し、グループ有効性検証部225に出力する機能をもっている。なお、サービス購入可能グループ情報には、グループ識別情報(以下、グループID情報、又は単にグループIDともいう)が含まれる。
【0089】
メニュー情報とは、検証者装置300a内のメニュー情報優先度データ記憶部329に保存されている、検証者装置300aから会員装置200aに提供するサービスの識別情報である。例えば、サービスの提供手段をオンラインとするコンテンツ販売の例を考えた場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループのグループIDなどが含まれる。例えば、図2に示すように、コンテンツIDが1、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10、サービス利用可能グループIDが00000、11111、22222、33333というように各情報が関連付けられた情報であり、コンテンツID「1」の商品は、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10であり、サービスの提供は、グループIDが00000、11111、22222、33333のうちいずれかのグループで可能であることを表している。
【0090】
サービス購入可能グループ情報とは、コンテンツID、サービス購入可能グループIDが含まれる情報であり、例えば、図3に示すように、コンテンツIDが1、サービス購入可能グループIDが00000、11111、22222というように各情報が関連付けられた情報であり、コンテンツIDが1の商品は、グループIDが00000、11111、22222のグループのうちいずれかで購入可能であることを表している。
【0091】
購入グループ優先度設定部222は、すでに会員装置200aが所属しており、サービスを購入する際にグループ署名を生成するために使用するグループについて、優先的に利用するグループをあらかじめ会員装置200a上で設定する機能と、所属グループ情報管理部223に購入グループ優先度情報を出力する機能とをもっている。購入グループ優先度情報は、グループID情報とその優先度情報が含まれており、例えば図4に示すように、優先度と、グループIDが関連付けられた情報であり、グループIDが77777、88888、99999の順位で優先度が定められていることを表している。
【0092】
所属グループ情報管理部223は、記憶装置としての所属グループ情報記憶部224から予め保存されている所属グループ情報を取り出し、グループ有効性検証部225に出力する機能をもっている。所属グループ情報とは、会員装置200aが所属しているグループの識別情報(グループ識別情報)である。つまり、会員装置200aに対応付けられたグループ識別情報(グループID情報)であり、会員がサービスの提供を受けるために必要となる情報である。例えば、図5に示すように、グループIDが11111、グループ名がグループ1というように各情報が関連付けられた情報であり、グループIDが11111のグループ「グループ1」が、会員装置200aの所属しているグループのうちのひとつであることを意味する情報となっている。
【0093】
所属グループ情報記憶部224では、上述の所属グループ情報が記憶されている。
【0094】
グループ有効性検証部225は、メニュー情報サービス購入可能グループ情報受信部221から出力されたメニュー情報及びサービス購入可能グループ情報を入力する機能と、所属グループ情報管理部223から利用者の所属グループ情報を入力する機能と、入力したサービス購入可能グループ情報に含まれるグループID情報と利用者の所属グループ情報に含まれるグループID情報とに基づいて検証を行う機能とをもっている。具体的には、グループID情報が、サービス購入可能グループ情報に含まれるグループID情報として存在し、更に利用者の所属グループ情報に含まれるグループID情報としても存在する場合には、当該グループID情報に対応したグループIDの検証結果が真となり、グループID情報が、サービス購入可能グループ情報に含まれるグループID情報として存在しないか、又は更に利用者の所属グループ情報に含まれるグループID情報としても存在しない場合には、グループIDの検証結果は偽となる。
【0095】
また、グループ有効性検証部225は、あるグループIDについての検証の結果が真であった場合、そのグループIDに対応したグループをコンテンツ購入可能グループと判断し、そのグループIDに対応したコンテンツ購入可能グループ情報とメニュー情報とをメニュー生成部226に出力する機能と、検証結果が偽であった場合、エラー情報を同時にメニュー生成部226に出力する機能とをもっている。
【0096】
コンテンツ購入可能グループ情報とは、コンテンツを識別する情報と、グループ識別情報と、グループを端的に表現した情報を対応付けた情報である。ここでいうグループ識別情報は、グループ有効性検証部225でコンテンツ購入可能グループと判断されたグループに対応する情報である。コンテンツ購入可能グループ情報は、例えばコンテンツを識別する情報としてコンテンツID、グループ識別情報としてグループID、グループを端的に表現した情報としてグループ名などが含まれる情報である。具体的には、図6に示すように、コンテンツIDが1、グループIDが00000、11111、グループ名がグループ0、グループ1というように各項目が関連付けられており、コンテンツIDが1のサービスは、グループID「00000」のグループ0、グループID「11111」のグループ1で購入可能であることを表している情報である。
【0097】
なお、グループを端的に表現した情報が一意に識別できる情報である場合は、グループ識別情報とグループを端的に表現した情報とは同意であっても良い。
【0098】
メニュー生成部226は、グループ有効性検証部225から出力されたコンテンツ購入可能グループ情報及びメニュー情報に基づいて、メニュー情報のうち、コンテンツ購入可能グループ情報に対応する情報を残すように画面表示用のメニュー情報を生成し、生成したメニュー情報をメニュー表示部205aに出力する機能と、グループ有効性検証部225から出力されたエラー情報をメニュー表示部205aに出力する機能とをもっている。
【0099】
メニュー情報の生成は、具体的には、メニュー情報のうち、コンテンツ購入可能グループと判断されたグループに対応するグループ識別情報に対応する情報を抽出し、抽出された情報が表示されるための画面表示用のメニュー情報を生成する。ここで、上述のグループ識別情報は、コンテンツ購入可能グループ情報に含まれており、各コンテンツを識別する情報に対応付けられた情報である。さらに、コンテンツ購入可能グループ情報に含まれていないグループの表示もされるが利用者により選択できないように画面表示用のメニュー情報を生成してもよい。 メニュー情報は、会員装置200aに検証者装置300aから提供されるサービスの識別情報であり、例えば、サービスの提供手段を、オンラインによるコンテンツ販売とした場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、会員装置200aの所属グループのグループID、グループ名などが含まれる。図7に示す例では、コンテンツIDが1、商品名がITEM、商品説明が説明1、単価が100、ファイルサイズが10、コンテンツ購入可能グループIDが00000、11111、グループ名がグループ0、グループ3というように各項目が関連付けられており、コンテンツIDが1の商品は、商品名がITEMで説明1という内容の商品で、単価100、ファイルサイズが10であり、グループIDが00000のグループ0または、グループIDが11111のグループ1で購入可能であることを表している。
【0100】
メニュー表示部205aは、メニュー生成部226より入力されたメニュー情報又はエラー情報に基づいて会員装置200aにメニュー画面を表示する機能をもっている。
【0101】
サービス選択部206aは、メニュー表示部205aで表示されたメニュー画面から利用者が受けたいサービスの情報(サービス選択情報)をサービス要求情報生成部227に出力する機能をもっている。なお、利用者は図示せず入力装置(この入力装置は会員装置200aに含まれてもよいし、含まれなくてもよい)から利用者が受けたいサービスの情報を入力し、サービス選択部206aはその情報を受け付ける機能も有する。また、サービス選択部206aは、選択したメニューに対して、コンテンツ購入可能グループが複数存在する場合は、利用するグループを1つ選択し、そのコンテンツ購入グループID情報を同時に出力する機能をもっている。
【0102】
ここで、サービス選択情報は、少なくともコンテンツ識別情報(コンテンツID)、グループ識別情報(グループID情報)が含まれる。
【0103】
属性情報記憶部202は、会員装置200aの属性情報が記憶されている記憶装置である。属性情報は、前述した通り、会員装置200aが予め所属しているグループに関する情報で、グループ署名を生成する時に使用する情報が含まれている。図17に一例が示されている。本例では、リスト形式となっており、属性情報は、グループID、グループメンバ鍵、グループメンバ証明書の情報が含まれる。
【0104】
属性情報管理部201aは、属性情報記憶部202から上述の属性情報を取り出し、サービス要求情報生成部227に出力する機能をもっている。
【0105】
サービス要求情報生成部227は、サービス選択部206aから出力された会員の選択したサービスの情報と、属性情報管理部201aから出力された属性情報とを入力する機能と、入力したサービス選択情報と、属性情報に含まれるメンバ鍵情報やメンバ証明書情報によりサービス要求情報を生成する機能と、このサービス要求情報をサービス要求確認情報表示部228及びサービス要求情報送信部208aに出力する機能とをもっている。
【0106】
ここで、サービス要求情報の生成は、上述の(Cam.4:グループ署名)の処理を実施する。ここで、mにコンテンツ識別情報(コンテンツID情報)又はコンテンツID(情報)とグループ識別情報(グループID情報)の両方が当てはめて処理を実施して、グループ署名を生成し、それをサービス要求情報とする。
【0107】
サービス要求情報とは、会員装置200aが正当なグループに所属していることを示す情報と、検証者装置300aから会員が受けようとするサービスの情報が含まれているグループ署名(文字列)である。なお、メンバ鍵などの秘密情報は、属性情報記憶部202では暗号化するなど第三者が見られないよう処置しておくことが望ましい。
【0108】
サービス要求確認情報表示部228は、サービス要求情報生成部227から入力されたサービス要求情報を会員装置200aの画面上に出力する機能をもっている。この機能は、会員自身が実際に管理者装置300に送信する情報に会員の個人情報が含まれていないことを、検証者装置300aに送信する前に確認することを可能とする。
【0109】
サービス要求情報送信部208aは、サービス要求情報生成部227から入力されたサービス要求情報を、ネットワーク400を介して検証者装置300aのサービス要求情報受信部307aに送信する機能をもっている。
【0110】
サービス受信部211は、検証者装置300aのサービス送信部311aよりネットワーク400を介して送信されたサービスデータを受信する機能をもっている。サービスデータは、前述した通り、会員装置200aに提供するサービス内容の情報であって、図21に一例が示されている。
【0111】
一方、検証者装置300aは、前述した属性情報受信部302、メニュー情報記憶部303、メニュー情報管理部304、メニュー作成部305、メニュー送信部306、サービス要求情報検証部308、サービス要求確認情報生成部309及びサービス要求確認情報送信部310に代えて、CRL情報記憶部320、アクセス要求受信部321、アクセス要求認証部322、CRL情報管理部323、サービス購入可能グループ有効性検証部324、サービス利用可能グループ管理部325、サービス利用可能グループ情報記憶部326、メニュー情報サービス購入可能グループ情報送信部327、メニュー情報管理部328、メニュー情報優先度データ記憶部329、グループ優先度設定部330及びサービス要求情報検証部331を備えている。これに伴い、CRL情報受信部301a、サービス要求情報受信部307a及びサービス送信部311aは、前述した機能を有するが、データの入力元又は出力先が異なることから添字aを付している。
【0112】
CRL情報受信部301aは、CRL情報送信部103から送信されたCRL情報を受信し、このCRL情報をCRL情報記憶部320に格納する機能をもっている。
【0113】
CRL情報記憶部320は、CRL情報受信部301aから書込まれたCRL情報が記憶される記憶装置である。
【0114】
アクセス要求受信部321は、会員装置200aのアクセス要求送信部220からアクセス要求情報を受信し、アクセス要求認証部322に出力する機能をもっている。
【0115】
アクセス要求認証部322は、アクセス要求受信部321から入力されたアクセス要求情報に基づいて、会員装置200aからアクセス要求を受けたことを認識し、このアクセス要求情報をCRL情報管理部323に出力する機能をもっている。
【0116】
CRL情報管理部323は、アクセス要求認証部からアクセス要求情報を受けると、CRL情報記憶部320からCRL情報を取り出す機能と、CRL情報をサービス購入可能グループ有効性検証部324に出力する機能とをもっている。
【0117】
サービス購入可能グループ有効性検証部324は、CRL情報管理部323から出力されたCRL情報と、サービス利用可能グループ管理部325から出力されたサービス利用可能グループ情報とに関し、CRL情報に含まれるシリアル番号情報と、サービス利用可能グループ情報に含まれるグループ公開鍵証明書から取り出し可能なグループシリアル番号とに基づいて検証を行う機能と、検証結果が真となったグループをサービス購入可能グループとし、サービス購入可能グループ情報をメニュー情報サービス購入可能グループ情報送信部327に出力する機能とをもっている。
【0118】
ここで、CRL情報に含まれるシリアル番号はリボークされ、利用不可能とされたグループの情報であり、グループ公開鍵証明書から取り出し可能なシリアル番号情報はサービスを受けることが可能なグループの情報である。このため、検証を行う機能は、CRL情報に含まれるシリアル番号情報に含まれず、かつグループ公開鍵証明書から取り出し可能なシリアル番号情報に含まれるシリアル番号情報の検証結果が真となるように検証を行う。
【0119】
サービス利用可能グループ情報とは、検証者がサービスを提供する際に提供可能であると認めているグループの情報であり、予め検証者によって設定されている。例えば、サービス提供手段をオンライン上とするコンテンツ販売の例を考えた場合、コンテンツのコンテンツID情報、コンテンツの利用が可能な利用可能グループのグループID情報と、それぞれのグループに特有のグループ公開鍵証明書などが含まれる。図8に示すように、コンテンツIDが1、グループIDが00000、11111、22222、33333、グループ公開鍵証明書がバイト(byte)列の情報であることが関連付けられており、コンテンツのコンテンツID「1」に対しては、グループID情報が、「00000」、「33333」、「11111」であるグループがサービス利用可能であり、それらのグループ公開鍵証明書がそれぞれバイト列であることをあらわすリストとなっている。グループ公開鍵証明書とは、グループ公開鍵の正当性を証明するものである。
【0120】
サービス購入可能グループ情報は、前述した通り、コンテンツID、サービス購入可能グループIDが含まれる情報であり、図3に一例を示している。
【0121】
サービス利用可能グループ管理部325は、サービス利用可能グループ情報記憶部326からサービス利用可能グループ情報を取り出し、サービス購入可能グループ有効性検証部324に入力する機能をもっている。
【0122】
サービス利用可能グループ情報記憶部326は、上述のサービス利用可能グループ情報が記憶されている記憶装置である。
【0123】
メニュー情報サービス購入可能グループ情報送信部327は、サービス購入可能グループ有効性検証部324から出力されたサービス購入可能グループ情報と、メニュー情報管理部328から出力されたメニュー情報とを、ネットワーク400を介して会員装置200aのメニュー情報サービス購入可能グループ情報受信部221に送信する機能をもっている。メニュー情報とは、前述した通り、検証者装置300aから会員装置200aに提供するサービスの識別情報であり、図2に一例を示している。
【0124】
メニュー情報管理部328は、メニュー情報優先度データ記憶部329からメニュー情報、及び優先度データを取り出し、メニュー情報サービス購入可能グループ情報送信部327に出力する機能をもっている。優先度データとは、検証者装置300aが予め設定したサービスを利用することが可能であるグループについて、会員に優先的に利用させようとするグループのデータである。例えば図9に示したように、東京都が提供するコンテンツAに対しては、1.東京都在住グループ、2.成人グループ、3.男性、もしくは女性グループ、4.その他のグループ、という形で優先度を設定する。
【0125】
メニュー情報優先度データ記憶部329は、上述のメニュー情報、及び優先度データが記憶されている記憶装置である。
【0126】
グループ優先度設定部330は、予め検証者装置300aにより設定されているサービス利用可能グループに関して、優先的に利用するグループである上述のような優先度データを予め検証者装置300aにより設定し、この優先度データをメニュー情報優先度データ記憶部329に書き込む機能をもっている。
【0127】
サービス要求情報受信部307aは、会員装置200aのサービス要求情報送信部208aから送信されたサービス要求情報をネットワーク400を介して受信し、サービス要求情報検証部331に出力する機能をもっている。
【0128】
サービス要求情報検証部331では、サービス要求情報受信部307aから出力されたサービス要求情報に基づいて検証を行う機能をもっている。具体的には、サービス要求情報であるグループ署名が正当である場合、検証結果が真となり、不正な場合、検証結果は偽となる。検証結果が真であった場合、サービスを会員装置200aに送信するためのサービス送信要求をサービス送信部311aに対して行う。
【0129】
サービス送信部311aは、サービス要求情報検証部331からサービス送信要求を受けると、サービスデータ記憶部312内の該当するサービスデータをネットワーク400を介して会員装置200aのサービス受信部211に送信する機能をもっている。サービスデータとは、前述した通り、会員装置200aに提供するサービス内容の情報であり、図21に一例を示している。
【0130】
サービスデータ記憶部312は、会員に提供するサービスデータの情報が記憶されている記憶装置である。
【0131】
次に、以上のように構成されたサービス提供システムの動作を図10のシーケンス図を用いて説明する。
【0132】
管理者装置100では、グループ公開鍵証明書が失効したとき、その失効(リボーク)を反映させるようにCRL情報管理部101がCRL情報をCRL情報記憶部102に書込む(ST31)。CRL情報管理部101は、この書込み後、CRL情報記憶部102からCRL情報を読み出してCRL情報送信部103に送出する。CRL情報送信部103は、CRL情報をネットワーク400を介して検証者装置300に送信する(ST32)。検証者装置300aでは、このCRL情報をCRL情報受信部301aが受信してCRL情報記憶部320に格納する。
ここまでは、従来のステップST11,ST12でも同様である。
【0133】
次に、会員装置200aは、会員の操作により、アクセス要求送信部220がアクセス要求(サービスメニュー要求)を検証者装置300aに送信する(ST33)。ここで、アクセス要求とは、クライアント/サーバシステムのWeb接続の様なURLの指定によるものと考えてよい。但し、従来とは異なり、属性情報を送信しない。すなわち、検証者装置300aは、会員装置200aの所属するグループのグループIDを得ることなく、以下に述べるステップST36までの動作を実行する。
【0134】
検証者装置300aでは、会員装置200aからアクセス要求を受けると、アクセス要求情報をアクセス要求認証部322がCRL情報管理部323に出力する。CRL情報管理部323は、アクセス要求情報を受けると、CRL情報記憶部320からCRL情報を取り出してサービス購入可能グループ有効性検証部324に出力する。
【0135】
サービス購入可能グループ有効性検証部324は、このCRL情報と、サービス利用可能グループ管理部325に管理されるサービス利用可能グループ情報とを用いて、現時点におけるサービス利用可能グループの検証を行う(ST34)。
【0136】
具体的にはCRL情報に含まれるシリアル番号情報と、サービス利用可能グループ情報に含まれるグループ公開鍵証明書から取り出し可能なグループシリアル番号とに基づいて検証を行う。例えば、図11に示すように、CRL情報に含まれるシリアル番号情報が「6B」、「6A」、「69」であり、グループ公開鍵証明書から取り出し可能なシリアル番号情報が「6B」、「67」、「66」である場合、2つのシリアル番号情報を比較し、CRL情報に含まれるシリアル番号情報に含まれず、かつグループ公開鍵証明書から取り出し可能なシリアル番号情報に含まれるシリアル番号情報である「67」、「66」により特定されるグループについて検証結果を真とする。また、一致するシリアル情報である「6B」、及びCRL情報にのみ含まれるシリアル番号情報である「6A」、「69」により特定されるグループ情報について検証結果を偽とする。
【0137】
サービス購入可能グループ有効性検証部324は、検証結果が真となったグループをサービス購入可能グループとし、サービス購入可能グループ情報をメニュー情報サービス購入可能グループ情報送信部327に出力する。なお、サービス購入可能グループ情報は、会員装置200aの所属するグループIDを含むか否かに関わらず、メニュー情報サービス購入可能グループ情報送信部327に出力される。
【0138】
しかる後、検証者装置300aは、グループ優先度設定部330により、会員に優先的に利用して欲しいグループをサービス毎に設定し、この優先度データをメニュー情報優先度データ記憶部329に保存する(ST35)。
【0139】
また、メニュー情報優先度データ記憶部329内のメニュー情報及び優先度データは、メニュー情報管理部328を介してメニュー情報サービス購入可能グループ情報送信部327に出力される。
【0140】
検証者装置300aにおいては、メニュー情報サービス購入可能グループ情報送信部327により、メニュー情報、利用可能グループ情報及びグループの優先度設定情報を会員装置200aに送信する(ST36)。このメニュー情報、サービス利用可能グループ情報は、HTML(Hyper Text Makeup Language)やJavaScriptなどの言語を用いて生成されるものである。
会員装置200aでは、メニュー情報サービス購入可能グループ情報受信部221で受信したサービス購入可能グループ情報と、所属グループ情報管理部223で管理する所属グループ情報とに基づいて、グループ有効性検証部225により、会員がサービスを受けるのに利用可能なグループを検証する(ST37)。
【0141】
例えば、以下の図12に示すようにサービス購入可能グループ情報に含まれるグループID情報が「00000」、「11111」、「22222」であり、所属グループ情報に含まれるグループID情報が「00000」、「33333」、「11111」である場合は、2つのグループID情報とを比較し、共通するグループID情報「00000」、「11111」により特定されるグループについて検証結果が真となり、一致しないグループID情報である「22222」、「33333」により特定されるグループについて検証結果が偽となる。
【0142】
会員装置200aでは、グループ有効性検証部225による検証の結果が真であった場合、そのグループをコンテンツ購入可能グループとし、コンテンツ購入可能グループ情報とメニュー情報とをメニュー生成部226に出力すると共に、検証結果が偽であった場合、エラー情報をメニュー生成部226に出力する。
【0143】
また、予め優先的に利用するグループを設定しておき、その情報を保存しておく(ST38)。
【0144】
会員装置200aでは、メニュー生成部226により、コンテンツ購入可能グループ情報及びメニュー情報に基づいて、メニュー情報のうち、コンテンツ購入可能グループ情報に対応する情報を残すように画面表示用のメニュー情報を生成し、このメニュー情報をメニュー表示部205aにより表示する(ST39)。なお、メニュー生成部226は、ステップ38で設定された優先度に基づいて、画面表示用のメニュー情報を並べ替えてもよい。但し、メニュー情報が会員装置200aで設定した購入グループの優先度を反映させない、という設定になっていれば、会員装置200aで設定した優先度は無視され、検証者装置300aで設定した優先度が反映されたメニューとなる。
【0145】
また、メニュー表示部205aは、グループ有効性検証部225による検証結果が偽のときのエラー情報に基づいて、エラーメッセージを表示してもよい。例えば図12に示したように、サービス購入可能グループ情報に含まれるが、結果が偽であるグループID(サービス購入可能グループ情報に含まれるグループID:22222)があった場合、そのグループはシステム管理者によりリボークされており、サービスを受けることが不可能である旨のエラーメッセージが、メニュー画面に追加されてもよい。なお、エラーメッセージとしては、例えば、一致しなかったグループIDに対応する部分のメニュー情報のうち、少なくともサービスIDがエラー情報と関連付けて表示される。
【0146】
また、所属グループ情報に含まれるが、結果が偽であるグループID(所属グループ情報に含まれるグループID:33333)があった場合、そのグループではサービスを利用することが不可能であるため、メニュー情報にグループを加えない。
【0147】
また、両グループIDに関する検証結果が全て偽となり、コンテンツ購入可能グループが0であった場合、会員の所属しているグループでサービスの利用が不可能である旨のエラーメッセージがメニュー画面に表示される。
【0148】
この様に、検証者装置300aへ会員の属性情報を送信しないことで、検証者装置300aへ会員の属性情報が伝わることを防止できるだけでなく、検証者装置300aでの会員ごとの個別メニューの生成を行わなくても良くなり、処理が軽減される。
【0149】
会員は、会員別に個別化されて表示されたメニュー画面からサービスを選択し、会員装置200aを操作する。
会員装置200aでは、会員の操作によってサービス選択部206aでサービスが選択されると、サービス要求情報生成部227にてメンバ秘密鍵や選択したサービスに関する情報から、グループ署名であるサービス要求情報が生成される。そして、サービス要求確認情報表示部228は、選択したサービスの内容や、生成したサービス要求情報を表示し、会員にサービス内容の確認を促す(ST40)。
【0150】
表示されたサービス内容で正しければ、サービス要求情報を検証者装置300aへ送信する(ST41)。
【0151】
検証者装置300aでは、サービス要求情報受信部307aでサービス要求情報を受信すると、受信したサービス要求情報をサービス要求情報検証部331にてグループ公開鍵を用いて検証する(ST42)。
【0152】
また、例として、会員に提供するサービスをオンライン購入によるコンテンツ購入とした場合、グループ署名から会員がコンテンツ購入に利用したグループのグループID情報、購入したいコンテンツのコンテンツID情報、購入数、合計金額などをグループ署名から復元する。
【0153】
検証結果が真であるならば、検証者装置300aは、復元されたコンテンツID情報により、サービスデータ記憶部312内のサービスデータを選択し、このサービスデータを会員装置200aへ送る(ST43)。
【0154】
会員装置200aは、検証者装置300aから送られたサービスを、サービス受信部211にて受信しサービスの提供を受ける。
【0155】
一方、検証結果が偽であれば、検証者装置300aは、サービス要求情報が不正であるとして、エラーメッセージを会員装置200aへ返す。この際、会員装置200aは、サービスの提供を受けることができない。
【0156】
上述したように本実施形態によれば、サービス提供者に利用者がどのグループに所属しているか、その属性情報をサービス提供者に伝えることなく、利用者が所属するグループが受けられるサービスのみを表示することができる。さらに、利用者が所属するグループのうちシステム管理者により利用不可能とされているグループの情報を、利用者に意識させることなく、利用者画面に表示する情報から排除することができる。さらに、要求したサービスの内容をサービス提供者に送ることなく確認することができる。さらに、どのグループで優先的にサービスを受けられるようにするか、サービス提供者が設定した順位でサービスを受けさせたり、利用者が設定した順位でサービスが受けたりすることができる。
【0157】
詳しくは、検証者装置300aへサービス要求情報を確認してから送信することで、会員が選択したサービスの内容を確認し了承して送ることが出来る。これにより、検証者装置300aでサービス要求について確認をするための画面情報を生成する必要も無くなり処理が軽減される。
【0158】
また、所属しているグループに関する情報を、サービス提供者に提示することなく、サービス提供者が行うサービスのうち、自分が受けられるサービスのみを表示させることができる。また、利用者の趣味・趣向に応じて、受けられるサービスのうち優先度を設けて会員装置200aに表示することができる。
【0159】
また、会員装置200a内で生成した情報を、従来のステップST17とは異なり、サービス提供者へ一度も送信することなく、会員装置200aに表示して結果を確認することができる。
【0160】
また、会員が所属しているグループに関する情報のみでなく、利用可能グループ情報を検証者装置300aから送信することにより、その時点で会員が所属しているグループのうち、管理者によりリボークされておらず、利用可能なグループのみを表示させることができる。例えば、従来の会員装置は、所属しているグループが現時点で有効か否かを確認したい場合、確認対象のグループでサービスを要求するか又は確認対象のグループを登録し直す必要があり、サービス提供者に趣味・趣向を知られる心配がある。一方、本実施形態では会員装置200a内で利用可能なグループを確認できるので、その心配が無い。
【0161】
また、利用不可能なグループでのグループ署名生成、および検証者装置300aへの送信がなくなり、サービス利用者の無駄な動作をなくすことができる。
【0162】
また、サービスを受けることができない場合の理由が明確となり、会員にとってさらに利用しやすいサービス提供システムとなる。
【0163】
(第2の実施形態)
次に、本発明の第2の実施形態に係るサービス提供システムについて前述した図面を参照しながら説明する。
【0164】
すなわち、本実施形態は、第1の実施形態の具体例であり、会員装置200aが複数のグループに所属し、かつサービスを受ける際にどのグループでもサービスが受けられる場合を想定する。この場合、検証者装置300aは、サービスを提供するグループのうち、優先的に利用させたいグループをサービス毎に予め設定しておき、会員装置200aには優先的に利用させたいグループを優先的に選択可能とした構成になっている。
【0165】
検証者装置300aではグループ優先度設定部330にてサービス毎に会員装置200aどのグループを優先的に利用してもらうかを設定しておく。
【0166】
例えば、図9に示したように、東京都が提供するコンテンツAに対しては、1.東京都在住グループ、2.成人グループ、3.男性、もしくは女性グループ、4.その他のグループ、という形で優先度を設定する。
【0167】
ある会員が、東京都在住グループ、男性グループの両方に所属している場合、この東京都が提供するコンテンツAは、優先的に東京在住グループによるサービスの提供を受けることとなる。
【0168】
設定した優先度データは、検証者装置300a内のメニュー情報優先度データ記憶部329に格納される。そして、メニュー情報管理部328でメニュー情報が取り出され、メニュー情報サービス購入可能グループ情報送信部327よりメニュー情報と一緒に優先度データが会員装置200aへネットワーク400を介して送られる。
【0169】
会員装置200aでは、予め会員が所属するグループについて、優先的に利用するグループを購入グループ優先度設定部222にて設定しておき、所属グループ情報管理部223にてグループについて優先的に利用するかどうかを管理しておく。
【0170】
購入グループ優先度情報には、グループIDと、優先度情報などが含まれており、例えば、図4に示したように、優先度が1、2、3、・・・、グループIDが77777、88888、99999という情報が関連付けられており、グループIDが77777、88888、99999の順に優先度がつけられていることを意味する。
【0171】
会員装置200aでは、メニュー情報サービス購入可能グループ情報受信部221にてメニュー情報及びサービス購入可能グループ情報を受信すると、所属グループ情報管理部223にて所属グループ情報をグループ有効性検証部225へ出力する。
【0172】
会員装置200aは、所属グループが利用可能なサービスだけを表示するメニューを生成し、メニュー表示部205aにて予め優先的に利用するグループからサービスが受けられるようにメニュー情報を表示する。会員はサービス選択部206aにてサービスを選択する。
【0173】
この時、検証者装置300aが優先的に利用して欲しいグループと、会員が優先的に利用したいグループとが、必ずしも一致しない場合がある。このような場合、検証者装置300aのメニュー情報に、会員が設定したグループの優先度を反映させるか否かを示す優先度制御情報を含めればよい。
【0174】
これにより、メニュー表示部205aは、この優先度制御情報に基づいて、検証者装置300aで設定された優先度をメニューに反映でき、あるいは、会員装置200aで設定された優先度をメニューに反映させることができる。
【0175】
上述したように本実施形態によれば、第1の実施形態の効果に加え、グループ優先度を設定する構成により、優先度の高いグループにサービスを利用してもらうことができる。
【0176】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0177】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0178】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
【0179】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0180】
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0181】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0182】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0183】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【0184】
【図1】本発明の第1の実施形態に係るサービス提供システムの構成を示す模式図である。
【図2】同実施形態におけるメニュー情報の一例を示す模式図である。
【図3】同実施形態におけるサービス購入可能グループ情報の一例を示す模式図である。
【図4】同実施形態における購入グループ優先度情報の一例を示す模式図である。
【図5】同実施形態における所属グループ情報の一例を示す模式図である。
【図6】同実施形態におけるコンテンツ購入可能グループ情報の一例を示す模式図である。
【図7】同実施形態におけるメニュー情報の一例を示す模式図である。
【図8】同実施形態におけるサービス利用可能グループ情報の一例を示す模式図である。
【図9】同実施形態における優先度データの一例を示す模式図である。
【図10】同実施形態における全体動作を説明するためのシーケンス図である。
【図11】同実施形態におけるCRL情報に基づく検証動作を説明するための模式図である。
【図12】同実施形態における所属グループ情報に基づく検証動作を説明するための模式図である。
【図13】一般的なサービス提供システムの概要を示す模式図である。
【図14】従来のサービス提供システムの構成を示す模式図である。
【図15】従来のサービス提供における全体動作を説明するためのシーケンス図である。
【図16】一般的なCRL情報の一例を示す模式図である。
【図17】一般的な属性情報の一例を示す模式図である。
【図18】一般的なメニュー情報の一例を示す模式図である。
【図19】属性情報に基づく従来の照合動作を説明するための模式図である。
【図20】従来の個別メニュー情報の一例を示す模式図である。
【図21】一般的なサービスデータの一例を示す模式図である。
【符号の説明】
【0185】
100…管理者装置、101…CRL情報管理部、102…CRL情報記憶部、103…CRL情報送信部、200a…会員装置、201a…属性情報管理部、202…属性情報記憶部、205a…メニュー表示部、206a…サービス選択部、208a…サービス要求情報送信部、211…サービス受信部、220…アクセス要求送信部、221…メニュー情報サービス購入可能グループ情報受信部、222…購入グループ優先度設定部、223…所属グループ情報管理部、224…所属グループ情報記憶部、225…グループ有効性検証部、226…メニュー生成部、227…サービス要求情報生成部、228…サービス要求確認情報表示部、300a…検証者装置、301a…CRL情報受信部、307a…サービス要求情報受信部、311a…サービス送信部、320…CRL情報記憶部、321…アクセス要求受信部、322…アクセス要求認証部、323…CRL情報管理部、324…サービス購入可能グループ有効性検証部、325…サービス利用可能グループ管理部、326…サービス利用可能グループ情報記憶部、327…メニュー情報サービス購入可能グループ情報送信部、328…メニュー情報管理部、329…メニュー情報優先度データ記憶部、330…グループ優先度設定部、331…サービス要求情報検証部。
【技術分野】
【0001】
本発明はグループ署名を用いたサービス提供システム、装置及びプログラムに関する。
【背景技術】
【0002】
最近、サービスを提供して決済するサービス提供システムでは、匿名の利用者を認証可能なグループ署名方式を用いたものが知られている(例えば、非特許文献1〜3参照)。この種のサービス提供システムは、大まかには次の(1)〜(3)のように運営される。
【0003】
(1)管理者は、予め利用者の申し込みにより、利用者の決済情報などの個人情報と、利用者がどのグループに所属するかとをグループ署名方式に基づいて登録する。なお、グループ署名方式の詳細については後述する。
【0004】
(2)登録の後、匿名の利用者は、サービスの要求と共に、所属しているグループをサービス提供者に通知する。このとき、サービス提供者は、匿名の利用者に関し、“誰が”という個人情報を入手不可能となっている。サービス提供者は、利用者が所属しているグループのうち、サービスを利用可能なグループの情報を返す。
【0005】
(3)匿名の利用者は、サービスを利用可能なグループのうち、選択したグループによるグループ署名を生成してサービス提供者に送る。サービス提供者は、このグループ署名を検証した後、そのグループが無効とされていなければ、要求されたサービスに相当するサービスデータを匿名の利用者に送る。匿名の利用者は、このサービスデータに基づいてサービスの提供を受ける。
【0006】
図13はこのようなサービス提供システムの概要を示す模式図である。なお、前述した説明中、利用者は会員とも呼ばれ、サービス提供者は検証者とも呼ばれる。
【0007】
管理者装置100は、会員登録後に会員装置200となる利用者端末からの要求に基づいて、要求されたサービスを利用可能なグループに所属する旨を証明するためのメンバ証明書を発行する機能を有し、会員情報を管理するサーバである。会員情報とは、会員の公開鍵と、決済情報等の個人情報と、メンバ証明書とを含み、サービスを利用した際のグループ署名に基づいて、会員から決済処理をするための秘密管理情報である。
【0008】
会員装置200は、管理者装置100に管理される会員が所有する装置で、例えばパーソナルコンピュータ(PC)の様な汎用計算機が使用可能となっている。会員装置200は、会員がメンバ証明書の発行の授受や,検証者装置300からサービスの提供を受けるために,グループ署名方式を用いるためのデータ及びプログラムを格納し、公開鍵ペアの生成やグループ署名の生成といった演算を実行し、ネットワーク通信を行なう機能をもっている。
【0009】
検証者装置300は、会員装置200からのサービス要求に基づき、利用可能なサービスを会員装置200に表示させ、会員装置200から送信されるサービス要求を検証し、会員装置200にサービスを提供する装置である。
【0010】
会員装置200となる利用者端末は、管理者装置100へ会員登録のための要求を出す(ST1)。この要求には、会員の公開鍵と、決済情報等の個人情報とが含まれている。管理者装置100では、この要求に従い会員登録を行うと,会員の公開鍵を管理者装置100の秘密鍵で署名し、得られたメンバ証明書を会員装置200に発行する(ST2)。
【0011】
会員装置200は,インターネットなどのネットワークを通じて検証者装置300へアクセスし、利用可能なサービスの情報を検証者装置300から入手する(ST3)。会員装置200は、利用可能なサービスのうち、受けたいサービスを選択し,サービス要求としてのグループ署名を検証者装置300へ送る(ST4)。
【0012】
検証者装置300は,会員装置200から送られたグループ署名を検証し,正当であればサービスデータを会員装置200へ送る。しかる後、検証者装置300は、サービスデータを送ったとして管理者装置100へ会員のグループ署名を送る(ST5)。
【0013】
管理者装置100は,このグループ署名を検証し,正当であればグループ署名のメンバ証明書から会員を特定し、サービス料金の決済代行を行い、匿名の会員の決済結果を検証者装置300へ送る(ST6)。
【0014】
なお、図13に示した匿名認証によるサービス提供については、非特許文献4,5及び特許文献1に詳しい。
【0015】
続いて、匿名認証によるサービス提供の具体例を図14及び図15を用いて説明する。
【0016】
図14は従来のサービス提供システムの構成を示す模式図であり、図15は従来のサービス提供における全体動作を説明するためのシーケンス図である。なお、会員は、前述した会員登録を済ませているものとする。
【0017】
管理者装置100には、CRL情報管理部101から読出/書込可能な記憶装置としてのCRL情報記憶部102にCRL(Certificate Revocation List:グループ公開鍵証明書失効リスト)情報が記憶されている。CRL情報とは、システム管理者により無効とされ、失効したグループ公開鍵証明書に関する関連情報である。例えば、図16に示すように、証明書のシリアル番号、失効日、理由コードが含まれるリスト形式の情報である。この例では、シリアル番号が6B、失効日が2005年4月6日、CRL理由コードが利用中止(1)というように各情報が関連付けられており、シリアル番号6Bの証明書が2005年4月6日に失効し、その失効理由が利用中止(1)である旨を意味している。
【0018】
ここで、CRL情報管理部101は、グループ公開鍵証明書が失効したとき、その失効(以下、リボークともいう)を反映させるようにCRL情報をCRL情報記憶部102に書込む(ST11)。CRL情報管理部101は、この書込み後、CRL情報記憶部102からCRL情報を読み出してCRL情報送信部103に送出する。CRL情報送信部103は、CRL情報をネットワーク400を介して検証者装置300に送信する(ST12)。検証者装置300では、このCRL情報をCRL情報受信部301により受信し、図示しない記憶装置に保存する。
【0019】
一方、会員装置200では、属性情報管理部201から読出/書込可能な記憶装置としての属性情報記憶部202に会員の属性情報が記憶されている。属性情報とは、会員が予め所属しているグループのグループ署名を生成する時に使用する情報が含まれているリストであり、例えば、所属しているグループのグループID、所有するメンバ鍵、メンバ証明書など、が含まれている。図17に示す例では、会員装置200が所属するグループのグループID情報に対し、それぞれ1つのメンバ鍵情報と、1つのメンバ証明書情報とが関連付けられている。メンバ鍵情報とは、グループ署名生成時に使用され、会員と、会員が所属するグループのうち1つのグループとに特有のバイト(byte)列の情報である。メンバ証明書情報とは、会員がグループのメンバである旨を証明するためのグループ特有のバイト列である。メンバ鍵情報などの秘密情報は、暗号化した状態で属性情報記憶部202に保存する等、第三者から見られないように保護することが望ましい。
【0020】
会員装置200は、会員の操作により、インターネット等のネットワーク400を通じて検証者装置300へアクセス要求を実行し、属性情報のうち、全ての所属グループのグループIDを送信する(ST13)。アクセス要求とは、クライアント/サーバシステムのWeb接続のようなURLの指定によるものと考えてよい。属性情報は、属性情報記憶部202から属性情報管理部201により取得され、属性情報送信部203を通じて検証者装置300へ送信される。なお、属性情報のうち、メンバ鍵情報及びメンバ証明書情報は、送信されない。
【0021】
検証者装置300は、属性情報を属性情報受信部302にて受信し、メニュー作成部305に送出する。一方、検証者装置300では、メニュー情報管理部304から読出/書込可能な記憶装置としてのメニュー情報記憶部303にメニュー情報が保存されている。メニュー情報は、提供するサービスを識別可能なサービス識別情報であり、例えば提供するサービスがオンラインによるコンテンツ販売の場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループのグループIDなどの各情報を含んでいる。例えば図18に示すように、コンテンツIDが1、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10、サービス利用可能グループIDが00000、11111、22222、33333というように各情報が関連付けられてメニュー情報が構成されている。コンテンツID「1」の商品は、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10であり、グループIDが00000、11111、22222、又は33333であるサービス利用可能グループに販売可能である旨が表されている。
【0022】
メニュー作成部305は、属性情報受信部302から属性情報を受けると、メニュー情報管理部304に管理されるメニュー情報と、受け取った属性情報とに基づいて個別メニュー情報を作成する(ST14)。具体的にはメニュー作成部305では、図19に示すように、属性情報内の(所属)グループIDと、メニュー情報内のサービス利用可能グループIDとを照合し、互いに一致するグループIDのみをコンテンツ購入可能グループID(会員用のサービス利用可能グループID)として使用する。
【0023】
また、メニュー作成部305は、メニュー情報のうち、コンテンツ購入可能グループIDに該当するメニュー情報を選択し、各グループIDにグループ名を付加して個別メニュー情報を作成する。個別メニュー情報とは、会員装置200から送られた属性情報から、その会員が所属するグループのメンバだけが受けられるサービスだけを表示するための情報である。従って、会員が所属していないグループのメンバが受けられるサービスの情報は表示されない。具体的には個別メニュー情報は、図20に示すように、会員に提供するサービスの情報であり、例えば提供するサービスがオンラインによるコンテンツ販売の場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループ(コンテンツ購入可能グループ)のグループID及びグループ名などが含まれる。このメニュー個別情報は、HTML(Hyper Text Makeup Language)やJava(登録商標)Scriptなどの言語を用いて生成される。
【0024】
メニュー作成部305は、作成した個別メニュー情報をメニュー送信部306を介して会員装置200に送信する(ST15)。
【0025】
会員装置200では、個別メニュー情報をメニュー受信部204により受信すると、この個別メニュー情報をメニュー表示部205aにより会員装置画面に表示する。会員装置画面には、個別メニュー情報が利用可能サービスとして表示される。なお、表示される利用可能サービスは、システム管理者によりリボークされて現時点で無効なグループを含む場合がある。この場合の無効なグループは、後述するステップST19の検証により無効と判定されるが、現時点では利用可能サービスとして表示される。
【0026】
会員装置200は、会員の操作により、表示中の利用可能サービスから、受けたいサービスをサービス選択部206にて選択し、サービス要求情報生成部207にてサービス要求情報を生成する。サービス要求情報とは、選択されたサービスに対応するグループのメンバ鍵とメンバ証明書に基づいて生成されるグループ署名である。なお、選択されたサービスに対応するグループが無効の場合でも、サービス要求情報生成部207は、無効なグループのメンバ鍵とメンバ証明書に基づいてサービス要求情報(グループ署名)を生成する(ST16)。得られたサービス要求情報は、サービス要求情報送信部208からネットワーク400を通じて検証者装置300へ送られる(ST17)。
【0027】
検証者装置300では、サービス要求情報受信部307にてサービス要求情報を受信し、サービス要求情報検証部308にてサービス要求情報の正当性を検証する(ST18)。サービス要求情報の検証は、グループ公開鍵にて会員のグループ署名が正当であるかを検証することにより行う。このとき、サービス要求情報検証部308は、例えばサービス利用可能グループのグループID情報、購入対象のコンテンツのコンテンツID情報、購入数、合計金額などをグループ署名から復元する。
【0028】
また、サービス要求情報検証部308は、ステップST12の後に図示しない記憶装置に保存したCRL情報に基づいて、グループが有効であるかを検証する。CRL情報の検証は、CRL情報に含まれるシリアル番号とグループ公開鍵証明書から取り出し可能なシリアル番号とを照合することで行う。グループ公開鍵証明書とは、グループ公開鍵が正当なものであることを証明するものである。
【0029】
サービス要求情報及びCRL情報による検証の結果、グループ署名が正当であり、且つグループが有効である場合、検証者装置300では、要求したサービスの内容を確認表示させるためのサービス要求確認画面情報をサービス要求確認情報生成部309にて生成する(ST19)。サービス要求確認画面情報とは、会員装置200より送られたグループ署名であり、グループ署名から復元したサービス利用可能グループのグループID情報、購入対象のコンテンツのコンテンツID情報、購入数、合計金額などの表示画面情報である。検証者装置300は、サービス要求確認画面情報を、サービス要求確認情報送信部310よりネットワーク400を通じて会員装置200に送信する(ST20)。
【0030】
サービス要求情報及びCRL情報による検証の結果、グループ署名は正当であるが、グループが無効の場合、グループの失効によりサービス提供が不可能である旨のエラーメッセージを表示させるためのエラー画面情報を、サービス要求確認情報生成部309にて生成する。サービス要求確認画面情報及びエラー画面情報は、いずれも個別メニュー画面の生成と同様の手順で、HTMLやJavaScriptを用いて生成される。
【0031】
そして、検証者装置300は、生成したエラー画面情報を、サービス要求確認情報送信部310よりネットワーク400を通じて送信する。
【0032】
会員装置200では、サービス要求確認情報受信部209にてサービス要求確認画面情報又はエラー画面情報を受信する。サービス要求確認画面情報を受信した場合には、サービス提供が可能である旨とグループ署名とがサービス要求確認情報表示部210にて表示される(ST21)。一方、エラー画面情報を受信した場合には、サービス提供不可能である旨がサービス要求確認情報表示部210にて表示されるので、会員装置200は処理を終了する。
【0033】
また、検証者装置300は、検証結果が真のとき(グループ署名が正当であり、且つグループが有効である場合)、サービス要求情報検証部308でグループ署名より復元されたコンテンツID情報により、サービスデータ記憶部312内のサービスデータの中から、該当するサービスデータを選択し、サービス送信部311からネットワーク400を介して会員装置200へ送信する(ST22)。
【0034】
ここで、サービスデータとは、会員装置200に提供するサービスに用いられる(供される)情報である。例えば、提供するサービスがオンラインによるコンテンツ販売の場合、画像、動画、音楽、電子書籍などのドキュメントなどのマルチメディア・コンテンツの属性情報又はコンテンツ自体の情報であり、コンテンツのコンテンツID、コンテンツ名、ファイル名、ダウンロードURLが含まれる、リスト形式の情報である。サービスデータは、例えば図21に示すように、コンテンツIDが1、商品名がITEM、ファイル名Item.txtであるファイルをダウンロードURL Http://www.item/から取得できることを示している。なお、サービスデータは、前述したマルチメディア・コンテンツに限らず、電子チケット情報などのように、任意の電子情報が適用可能となっている。
【0035】
会員装置200は、サービスデータをサービス受信部211にて受信すると、サービス受領応答を検証装置300へ返信する(ST23)。しかる後、会員装置200は、サービスデータに基づいてサービスの提供を受ける。
【非特許文献1】D. Chaum, E. van Heyst, “Group Signatures”, EUROCRYPT’91, LNCS 547, Springer-Verlag, pp.257-265, 1991.
【非特許文献2】G. Ateniese , J. Camenisch, M. Joye and G. Tsudik. A practical and provably secure coalition-resistant group signature scheme. CRYPTO 2000, LNCS 1880, Springer-Verlag, pp.255-270, 2000.
【非特許文献3】J. Camenisch, M. Stadler, “Efficient Group Signature Schemes for Large Groups”, CRYPTO’97, LNCS 1294, pp.410-424, 1997.
【非特許文献4】加藤,岡田,吉田;“プライバシを保護する匿名認証システムの開発”,Computer Security Symposium 2003予稿集,p.569-574,2003
【非特許文献5】岡田,吉田,加藤;“計算能力の低いデバイスに適したグループ署名方式”,SCIS2005予稿集III/IV.p.1147-1152,2005
【特許文献1】特開2004−54905号公報
【発明の開示】
【発明が解決しようとする課題】
【0036】
しかしながら、以上のようなサービス提供システムでは、本発明者の検討によれば、次のような改良の余地(1)〜(3)がある。
【0037】
(1)ステップST13に伴い、サービス提供者(検証者)は、会員から受ける全ての所属グループのグループIDに基づいて、匿名の会員に関し、“どのような”という趣味・趣向情報を入手可能であるので、趣味・趣向に応じた広告などを会員装置200に返信可能となっている。また、所属グループのグループIDの数や種類から、アクセスしてきた会員が同じであることの推測が容易となり、匿名要件であるアンリンカビリティ(Unlinkability)を保てなくなる。なお、アンリンカビリティとは、2つのグループ署名に関し、同一のグループ会員が署名したか否かを判別できない旨の匿名要件である。
【0038】
(2)ステップST15に伴い、会員装置200に表示される各グループは、現時点で無効なグループを含む場合がある。この場合、会員は、サービスを要求する手続きを途中まで実行した後、最終的にサービス提供不可能(エラーメッセージ)が通知されることにより、不要な手間を取らされることになる。
【0039】
(3)ステップST17に伴い、会員装置200が生成したグループ署名(サービス要求情報)を確認するため、一旦、サービス提供者へ送信する必要がある。このため、会員は、会員装置200が生成したグループ署名をすぐに確認することができない状況にある。
【0040】
本発明は上記実情を考慮してなされたもので、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持し得るサービス提供システム、装置及びプログラムを提供することを目的とする。
【0041】
本発明の他の目的は、無効な所属グループに対する利用者の不要な手間を削減し得るサービス提供システム、装置及びプログラムを提供することにある。
【0042】
本発明の更に他の目的は、会員装置が生成したグループ署名を検証者装置に送信せずに会員装置側で確認し得る会員装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0043】
第1の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置としては、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置としては、所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段とを備えたサービス提供システムである。
【0044】
第1の発明によれば、サービスを提供する検証者装置からサービスの提供を受ける前に、検証者装置から送信される共通のメニューを受け取り、会員装置内で会員が所属するグループを確認し、会員が受けられるサービスのメニューだけを会員装置に表示するので、会員装置から会員の属性に関する情報を出さずに、会員が受けられるサービスメニューに関する情報を個別化し、各会員が受けられるサービスに応じたメニューを表示することができる。これにより、会員の趣味・趣向を外部に知られることも無くなり、会員のプライバシを保護できる。
【0045】
従って、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持することができる。
【0046】
第2の発明は、第1の発明において、前記会員装置としては、前記サービスの要求を含むグループ署名を生成するグループ署名生成手段と、このグループ署名が記憶されるグループ署名記憶手段と、前記記憶されたグループ署名及びこのグループ署名に含まれる前記サービスの要求を、前記検証装置にグループ署名を提示する前に表示するサービス要求表示手段と、前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段とを備えたサービス提供システムである。
【0047】
第2の発明によれば、会員が要求したいサービスの内容について、会員装置から一旦検証者装置へ送り、検証者装置でサービスの内容を確認する画面を生成し送るのでなく、会員装置内でサービスの内容を確認し、生成したグループ署名を表示して確認することが出来る。
【0048】
第3の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに用いられる前記会員装置であって、前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報が記憶されるグループ優先度情報記憶手段と、所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段と、前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段と、前記第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段とを備えた会員装置を前提としている。
【0049】
第3の発明は、この前提の会員装置において、前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段を備え、前記表示制御手段としては、前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段を備えた会員装置である。
【0050】
第3の発明によれば、サービス提供者が検証者装置に対してサービスによって利用してもらいたいグループの優先度を決めたり、会員がどのグループでサービスを受けるか予め優先度を決めたりすることで、サービスを選択するメニューを表示する際に、いちいちグループを選択することなく、一意に決めてサービスを受けることが出来る。
【0051】
第4の発明は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置としては、各グループ毎に、当該グループが失効した場合に書き込まれるグループ失効情報が記憶されるグループ失効情報記憶手段と、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段と、前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置としては、所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段とを備えたサービス提供システムである。なお、第4の発明は、前記会員装置としては、前記判定の結果、一致したグループ識別情報が無かったとき、サービスの提供が不可である旨を表示するサービス不可表示手段を備えたサービス提供システムとしてもよい。
【0052】
第4の発明は、換言すると、システムの管理者がリボーク(失効)させたグループの情報をCRLに登録し、サービス提供者がCRL情報(グループ失効情報)と、自身の持っている各サービスの利用可能グループとを検証することで、利用者にメニュー情報を送信する前に、現在の利用可能グループを確認するシステムである。
【0053】
第4の発明によれば、提供するサービスの情報をサービス利用者に送信する前に、利用可能グループを検証することができる。従って、無効な所属グループに対する利用者の不要な手間を削減することができる。
【0054】
また、第4の発明は、提供するサービスの情報とともに、そのサービスを利用することが可能なグループの情報をサービス利用者に送信するので、利用者に意識させることなく、利用不可能なグループの情報を排除したサービス情報を送信することができる。
【0055】
さらに、第4の発明は、サービスの提供を受けることが可能なグループ情報と、サービス利用者の所属しているグループを検証した後、利用者の装置画面に表示するシステムでもある。また、サービスの提供を受けることが不可能なグループ情報のみを得た場合には、サービスの提供が不可能なグループである旨を、利用者の装置画面に表示する。
【0056】
この様に、第4の発明は、会員が、サービスを受けるのに利用可能なグループのみの選択を可能とすることで、無効なグループによるグループ署名生成、およびサービス提供者に対してそのグループ署名を送信するという無駄な動作を避けることができる。また、サービスを受けることができない理由を明確に会員に表示することができる。
【0057】
なお、第1〜第4の発明は、各装置からなる「システム」又は各装置としての「装置」として表現したが、これに限らず、システム又は装置に用いられる「プログラム」で表現するように変形してもよい。さらに、これら第1〜第4の発明は、他の構成要素を付加して変形してもよい。以下、第1,第2,第4の発明に関し、プログラムで表現する変形例と、他の構成要素を付加する変形例とを述べる。これらの変形例はシステム又は装置として表現可能なことは言うまでもない。但し、プログラム表現を装置等で表現する場合、例えば、冒頭の「メモリを有し」を省略したり、「…を前記メモリに書込む…書込手段」を「…が記憶される…記憶手段」にしたり等、若干、表現を変形させた方がよい。
【0058】
第1の発明の変形例1(会員装置のプログラム表現)は、メモリを有し、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記会員装置のコンピュータに用いられるプログラムであって、前記コンピュータを、所属する各グループのグループ識別情報を前記メモリに書込む所属グループ識別情報書込手段、所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段、前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段、前記受信したメニュー情報内の各グループのグループ識別情報と、前記メモリ内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段、前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段、として機能させるためのプログラムである。
【0059】
第1の発明の変形例2(会員装置のプログラム表現への構成要素の付加)は、第1の発明の変形例1において、前記コンピュータを、予め利用可能なサービスのサービス識別情報に関連してサービス優先度情報を前記メモリに書込むサービス優先度書込手段、前記メモリ内のサービス優先度情報に基づいて、前記メニュー情報の表示を制御する表示制御手段、として機能させるためのプログラムである。
【0060】
第2の発明の変形例(会員装置のプログラム表現)は、第1の発明の変形例1において、前記コンピュータを、前記サービスの要求を含むグループ署名を生成するグループ署名生成手段、このグループ署名を前記メモリに書込むグループ署名書込手段、前記メモリ内のグループ署名及びこのグループ署名に含まれる前記サービスの要求を表示するサービス要求表示手段、前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段、として機能させるためのプログラムである。
【0061】
第1の発明の変形例3(検証装置のプログラム表現)は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、メモリを有し、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記検証者装置のコンピュータに用いられるプログラムであって、前記コンピュータを、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報をメモリに書込むメニュー情報書込手段、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メモリ内のメニュー情報を前記会員装置に送信するメニュー送信手段、として機能させるためのプログラムである。
【0062】
第4の発明の変形例(検証装置のプログラム表現)は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、メモリを有し、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記検証者装置のコンピュータに用いられるプログラムであって、各グループ毎に、当該グループが失効した場合にグループ失効情報を前記メモリに書込むグループ失効情報書込手段、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記メモリに書込むメニュー情報書込手段、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メモリ内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段、前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段、として機能させるためのプログラムである。
【0063】
また、第1〜第4の発明に限らず、他の変形例も可能である。例えば、他の変形例1は、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、前記検証者装置は、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、前記メニュー情報における各グループ間の検証者側での優先度を示す第1のグループ優先度情報が記憶されたグループ優先度情報記憶手段と、前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報と前記グループ優先度情報記憶手段内の第1のグループ優先度情報とを前記会員装置に送信するメニュー送信手段とを備えており、前記会員装置は、前記検証装置から前記メニュー情報及び第1のグループ優先度情報を受信する手段と、この第1のグループ優先度情報に示される検証者側での優先度に応じて前記メニュー情報を表示するメニュー情報表示手段と、前記メニュー情報表示手段による表示中、外部からの操作に基づいて、前記メニュー情報内のサービス識別情報を選択するサービス選択手段と、このサービス識別情報に対応するサービスの要求を含むグループ署名を生成するグループ署名生成手段とを備えたサービス提供システムである。なお、他の変形例1も前述同様に、各装置やプログラムで表現してもよく、他の構成要素を付加してもよいことは言うまでもない。
【発明の効果】
【0064】
以上説明したように本発明によれば、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性を維持できる。また、無効な所属グループに対する利用者の不要な手間を削減できる。更に、会員装置が生成したグループ署名を検証者装置に送信せずに会員装置側で確認できる。
【発明を実施するための最良の形態】
【0065】
以下、本発明の各実施形態について図面を参照しながら説明するが、その前に各実施形態の要素技術であるグループ署名方式について述べる。
<グループ署名方式>
グループ署名とは、デジタル署名方式の一種であり、これまで様々な方式が提案されている(例えば、非特許文献1〜3等参照)。グループ署名方式は、非特許文献1によれば、以下の第1乃至第3の性質を持っている。
【0066】
第1の性質は、あるグループに所属する任意のメンバがグループの代表として署名を生成することが可能な性質である。第2の性質は、検証者側においては、グループのメンバにより生成された署名である旨を検証可能であるものの、署名を生成したメンバ(以下、署名者ともいう)を特定することが困難であるという匿名性を持つ性質である。第3の性質は、特定の情報により、グループ署名から署名者を特定することが可能な性質である(以下、追跡可能性ともいう)。
【0067】
続いて、このようなグループ署名方式について、特許文献3に記載されているカメニッシュ(J. Camenisch)らのグループ署名方式を代表例として述べる。ここで、次の表1は、カメニッシュらのグループ署名方式の記号とその説明を示している。
【表1】
【0068】
(Cam.1:準備)
グループ管理者GMは、RSA暗号方式の公開鍵e,n,素数L,元g,元a,整数μおよびセキュリティパラメータεの組yG=(e,n,L,g,a,μ,ε)をグループ公開鍵として公開する。メンバAとなるユーザは、秘密鍵x∈{1,…,2μ−1}を選び、公開鍵y=ax mod nを作る。
【0069】
(Cam.2:グループ参加要求)
メンバAとなるユーザは、乱数t∈{1,…,2ε(μ+k)−1}を選び、公開鍵yに対する秘密鍵xの知識証明SK(y)を算出する。知識証明SK(y)は、次のc1,s1の組である。
c1=h(y‖a‖at(mod n))
s1=t−xc1
そして、ユーザは、公開鍵y及び知識証明SK(y)をグループ管理者GMに送る。
【0070】
(Cam.3:メンバ証明書発行)
グループ管理者GMは、s1’=s1(mod λ(n))を算出し、次のc1の式により、正しい秘密鍵xをユーザが保持している旨を検証する。
【数1】
【0071】
その後、グループ管理者GMは、適切な方法でユーザの参加権限を確認する。
【0072】
しかる後、グループ管理者GMは、y+δに対して次式のように署名を施してメンバ証明書νを発行し、秘密にユーザに送る。
【0073】
ν=(y+δ)d (mod n)
なお、δは例えば1である。
【0074】
(Cam.4:グループ署名)
署名者としてのメンバAは、z=gy (mod L)を求める。その後、メンバAは、ui>xを満たすk個の乱数ui∈{1,…,2εμ−1}を選び、秘密鍵xの知識証明SK2(m)=(c2,s2,1,…,s2,k)を次式のように求める。
【数2】
【0075】
s2,i=ui−x …(c2(i)=0のとき)
s2,i=ui …(その他のとき)
但し、i=1,…,k
ここで、c2(i)とは、c2の2進表示上位ビットからのi番目(i=1,…,k)のビットを示す。
【0076】
また、メンバAは、乱数wi∈Zn*を選び、メンバ証明書νの知識証明SK3(m)=(c3,s3,1,…,s3,k)を次式のように求める。
【数3】
【0077】
s3,j=wj/ν (mod n) …(c3(j)=0のとき)
s3,j=wj …(その他のとき)
但し、j=1,…,k
結局、mについてのグループ署名は、(z,SK2(m),SK3(m))である。
【0078】
(Cam.5:グループ署名検証)
検証者Vは、グループ署名の正当性を以下のように検証し、正しければmを受理する。
【数4】
【0079】
(Cam.6:追跡)
グループ管理者GMは、任意のグループ署名(z,SK2(m),SK3(m))に対して、グループに参加している全てのメンバの公開鍵yから、以下の式が成り立つ公開鍵yを見つけることにより、グループ署名を生成したメンバを特定することが出来る。
【0080】
z=gy (mod L)
以上のようなカメニッシュのグループ署名方式は、メンバ証明書νに関連した秘密鍵xを用いてSK2(m)を作成することから、否認不可性を実現している。また、SK3(m)の検証により、グループ公開鍵eを用いて、メンバ証明書νを署名者であるメンバAが保持する旨を検証することから、検証性が示される。
【0081】
また、検証者Vがゼロ知識証明を用いて検証するので、メンバAの個人情報が漏洩せず、匿名性が保たれる。また、メンバAの署名のzは1つしかない秘密鍵xから作られるので、同じ基底gを用いるとセッション同士でメンバの情報がリンク(結合)可能となる。よって、署名毎に異なる基底gを用いれば、非結合性を満たす。
さらに、グループ管理者GMは、GMのみが知っているグループに参加しているメンバの公開鍵yを用いて、グループ署名を生成したメンバを特定することが可能であり、よって追跡可能性を満たす。
【0082】
以上がカメニッシュのグループ署名方式であり、前述した非特許文献1記載の第1乃至第3の性質を有している。また、グループ署名方式は、この方式に限らず様々な方式があるが、いずれの方式も同様に第1乃至第3の性質をもっている。
【0083】
なお、係るグループ署名方式は、上述した説明では1つのグループに適用されたが、本発明の各実施形態では複数のグループ内の各グループに適用される。各実施形態の管理者装置は、上述したグループ署名方式を各グループに適用すると共に、各グループを個別のグループIDにより識別して管理する。その他、本発明の各実施形態と、前述したカメニッシュのグループ署名方式との対応関係は、次の表2に示す通りである。
【表2】
【0084】
次に、以上のようなグループ署名方式及びその対応関係を前提として本発明の各実施形態を説明する。
【0085】
(第1の実施形態)
図1は本発明の第1の実施形態に係るサービス提供システムの構成を示す模式図であり、図14と同一部分については同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【0086】
すなわち、本実施形態は、検証者装置300aが予めCRL情報によって無効なグループをメニュー情報から削除し、無効なグループを含まないメニュー情報を会員装置200aに送信する構成により、検証されるグループ署名の所属グループ以外には、利用者の所属グループをサービス提供者に知られず、利用者の匿名性の維持を図り、且つ無効なグループに対する利用者の不要な手間の削減を図るものである。なお、以下の各装置100,200a,300aは、それぞれ装置の各機能を実現するためのハードウェア構成、又はハードウェア(各記憶部)とソフトウエアとの組み合わせ構成として実現されている。ソフトウェアは、予め記憶媒体又はネットワークからインストールされ、各装置100,200a,300aにその機能を実現させるためのプログラムからなる。
ここで、管理者装置100は、前述同様の構成である。
【0087】
会員装置200aは、前述した属性情報送信部203、メニュー受信部204及びサービス要求情報生成部207に代えて、アクセス要求送信部220、メニュー情報サービス購入可能グループ情報受信部221、購入グループ優先度設定部222、所属グループ情報管理部223、所属グループ情報記憶部224、グループ有効性検証部225、メニュー生成部226、サービス要求情報生成部227及びサービス要求確認情報表示部228を備えている。これに伴い、属性情報管理部201a、メニュー表示部205a、サービス選択部206a及びサービス要求情報送信部208aは、前述した機能を有するが、データの入力元又は出力先が異なることから添字aを付している。
【0088】
アクセス要求送信部220は、検証者装置300aからサービスを受けるための会員装置200aのアドレスなどであるアクセス要求情報を、ネットワーク400を介して検証者装置300aのアクセス要求受信部312に送信する機能をもっている。ここで、アクセス要求情報は、会員装置200aから検証者装置300aに送信される情報であって、メニューを表示するために必要な情報の送信を要求する情報である。 メニュー情報サービス購入可能グループ情報受信部221は、検証者装置300aのメニュー情報サービス購入可能グループ情報送信部317からネットワーク400を介して送信されたメニュー情報及びサービス購入可能グループ情報とを受信し、グループ有効性検証部225に出力する機能をもっている。なお、サービス購入可能グループ情報には、グループ識別情報(以下、グループID情報、又は単にグループIDともいう)が含まれる。
【0089】
メニュー情報とは、検証者装置300a内のメニュー情報優先度データ記憶部329に保存されている、検証者装置300aから会員装置200aに提供するサービスの識別情報である。例えば、サービスの提供手段をオンラインとするコンテンツ販売の例を考えた場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、サービス利用可能グループのグループIDなどが含まれる。例えば、図2に示すように、コンテンツIDが1、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10、サービス利用可能グループIDが00000、11111、22222、33333というように各情報が関連付けられた情報であり、コンテンツID「1」の商品は、商品名がITEM、商品説明が説明(1)、単価が100、ファイルサイズが10であり、サービスの提供は、グループIDが00000、11111、22222、33333のうちいずれかのグループで可能であることを表している。
【0090】
サービス購入可能グループ情報とは、コンテンツID、サービス購入可能グループIDが含まれる情報であり、例えば、図3に示すように、コンテンツIDが1、サービス購入可能グループIDが00000、11111、22222というように各情報が関連付けられた情報であり、コンテンツIDが1の商品は、グループIDが00000、11111、22222のグループのうちいずれかで購入可能であることを表している。
【0091】
購入グループ優先度設定部222は、すでに会員装置200aが所属しており、サービスを購入する際にグループ署名を生成するために使用するグループについて、優先的に利用するグループをあらかじめ会員装置200a上で設定する機能と、所属グループ情報管理部223に購入グループ優先度情報を出力する機能とをもっている。購入グループ優先度情報は、グループID情報とその優先度情報が含まれており、例えば図4に示すように、優先度と、グループIDが関連付けられた情報であり、グループIDが77777、88888、99999の順位で優先度が定められていることを表している。
【0092】
所属グループ情報管理部223は、記憶装置としての所属グループ情報記憶部224から予め保存されている所属グループ情報を取り出し、グループ有効性検証部225に出力する機能をもっている。所属グループ情報とは、会員装置200aが所属しているグループの識別情報(グループ識別情報)である。つまり、会員装置200aに対応付けられたグループ識別情報(グループID情報)であり、会員がサービスの提供を受けるために必要となる情報である。例えば、図5に示すように、グループIDが11111、グループ名がグループ1というように各情報が関連付けられた情報であり、グループIDが11111のグループ「グループ1」が、会員装置200aの所属しているグループのうちのひとつであることを意味する情報となっている。
【0093】
所属グループ情報記憶部224では、上述の所属グループ情報が記憶されている。
【0094】
グループ有効性検証部225は、メニュー情報サービス購入可能グループ情報受信部221から出力されたメニュー情報及びサービス購入可能グループ情報を入力する機能と、所属グループ情報管理部223から利用者の所属グループ情報を入力する機能と、入力したサービス購入可能グループ情報に含まれるグループID情報と利用者の所属グループ情報に含まれるグループID情報とに基づいて検証を行う機能とをもっている。具体的には、グループID情報が、サービス購入可能グループ情報に含まれるグループID情報として存在し、更に利用者の所属グループ情報に含まれるグループID情報としても存在する場合には、当該グループID情報に対応したグループIDの検証結果が真となり、グループID情報が、サービス購入可能グループ情報に含まれるグループID情報として存在しないか、又は更に利用者の所属グループ情報に含まれるグループID情報としても存在しない場合には、グループIDの検証結果は偽となる。
【0095】
また、グループ有効性検証部225は、あるグループIDについての検証の結果が真であった場合、そのグループIDに対応したグループをコンテンツ購入可能グループと判断し、そのグループIDに対応したコンテンツ購入可能グループ情報とメニュー情報とをメニュー生成部226に出力する機能と、検証結果が偽であった場合、エラー情報を同時にメニュー生成部226に出力する機能とをもっている。
【0096】
コンテンツ購入可能グループ情報とは、コンテンツを識別する情報と、グループ識別情報と、グループを端的に表現した情報を対応付けた情報である。ここでいうグループ識別情報は、グループ有効性検証部225でコンテンツ購入可能グループと判断されたグループに対応する情報である。コンテンツ購入可能グループ情報は、例えばコンテンツを識別する情報としてコンテンツID、グループ識別情報としてグループID、グループを端的に表現した情報としてグループ名などが含まれる情報である。具体的には、図6に示すように、コンテンツIDが1、グループIDが00000、11111、グループ名がグループ0、グループ1というように各項目が関連付けられており、コンテンツIDが1のサービスは、グループID「00000」のグループ0、グループID「11111」のグループ1で購入可能であることを表している情報である。
【0097】
なお、グループを端的に表現した情報が一意に識別できる情報である場合は、グループ識別情報とグループを端的に表現した情報とは同意であっても良い。
【0098】
メニュー生成部226は、グループ有効性検証部225から出力されたコンテンツ購入可能グループ情報及びメニュー情報に基づいて、メニュー情報のうち、コンテンツ購入可能グループ情報に対応する情報を残すように画面表示用のメニュー情報を生成し、生成したメニュー情報をメニュー表示部205aに出力する機能と、グループ有効性検証部225から出力されたエラー情報をメニュー表示部205aに出力する機能とをもっている。
【0099】
メニュー情報の生成は、具体的には、メニュー情報のうち、コンテンツ購入可能グループと判断されたグループに対応するグループ識別情報に対応する情報を抽出し、抽出された情報が表示されるための画面表示用のメニュー情報を生成する。ここで、上述のグループ識別情報は、コンテンツ購入可能グループ情報に含まれており、各コンテンツを識別する情報に対応付けられた情報である。さらに、コンテンツ購入可能グループ情報に含まれていないグループの表示もされるが利用者により選択できないように画面表示用のメニュー情報を生成してもよい。 メニュー情報は、会員装置200aに検証者装置300aから提供されるサービスの識別情報であり、例えば、サービスの提供手段を、オンラインによるコンテンツ販売とした場合、コンテンツID、商品名、商品説明、単価、ファイルサイズ、会員装置200aの所属グループのグループID、グループ名などが含まれる。図7に示す例では、コンテンツIDが1、商品名がITEM、商品説明が説明1、単価が100、ファイルサイズが10、コンテンツ購入可能グループIDが00000、11111、グループ名がグループ0、グループ3というように各項目が関連付けられており、コンテンツIDが1の商品は、商品名がITEMで説明1という内容の商品で、単価100、ファイルサイズが10であり、グループIDが00000のグループ0または、グループIDが11111のグループ1で購入可能であることを表している。
【0100】
メニュー表示部205aは、メニュー生成部226より入力されたメニュー情報又はエラー情報に基づいて会員装置200aにメニュー画面を表示する機能をもっている。
【0101】
サービス選択部206aは、メニュー表示部205aで表示されたメニュー画面から利用者が受けたいサービスの情報(サービス選択情報)をサービス要求情報生成部227に出力する機能をもっている。なお、利用者は図示せず入力装置(この入力装置は会員装置200aに含まれてもよいし、含まれなくてもよい)から利用者が受けたいサービスの情報を入力し、サービス選択部206aはその情報を受け付ける機能も有する。また、サービス選択部206aは、選択したメニューに対して、コンテンツ購入可能グループが複数存在する場合は、利用するグループを1つ選択し、そのコンテンツ購入グループID情報を同時に出力する機能をもっている。
【0102】
ここで、サービス選択情報は、少なくともコンテンツ識別情報(コンテンツID)、グループ識別情報(グループID情報)が含まれる。
【0103】
属性情報記憶部202は、会員装置200aの属性情報が記憶されている記憶装置である。属性情報は、前述した通り、会員装置200aが予め所属しているグループに関する情報で、グループ署名を生成する時に使用する情報が含まれている。図17に一例が示されている。本例では、リスト形式となっており、属性情報は、グループID、グループメンバ鍵、グループメンバ証明書の情報が含まれる。
【0104】
属性情報管理部201aは、属性情報記憶部202から上述の属性情報を取り出し、サービス要求情報生成部227に出力する機能をもっている。
【0105】
サービス要求情報生成部227は、サービス選択部206aから出力された会員の選択したサービスの情報と、属性情報管理部201aから出力された属性情報とを入力する機能と、入力したサービス選択情報と、属性情報に含まれるメンバ鍵情報やメンバ証明書情報によりサービス要求情報を生成する機能と、このサービス要求情報をサービス要求確認情報表示部228及びサービス要求情報送信部208aに出力する機能とをもっている。
【0106】
ここで、サービス要求情報の生成は、上述の(Cam.4:グループ署名)の処理を実施する。ここで、mにコンテンツ識別情報(コンテンツID情報)又はコンテンツID(情報)とグループ識別情報(グループID情報)の両方が当てはめて処理を実施して、グループ署名を生成し、それをサービス要求情報とする。
【0107】
サービス要求情報とは、会員装置200aが正当なグループに所属していることを示す情報と、検証者装置300aから会員が受けようとするサービスの情報が含まれているグループ署名(文字列)である。なお、メンバ鍵などの秘密情報は、属性情報記憶部202では暗号化するなど第三者が見られないよう処置しておくことが望ましい。
【0108】
サービス要求確認情報表示部228は、サービス要求情報生成部227から入力されたサービス要求情報を会員装置200aの画面上に出力する機能をもっている。この機能は、会員自身が実際に管理者装置300に送信する情報に会員の個人情報が含まれていないことを、検証者装置300aに送信する前に確認することを可能とする。
【0109】
サービス要求情報送信部208aは、サービス要求情報生成部227から入力されたサービス要求情報を、ネットワーク400を介して検証者装置300aのサービス要求情報受信部307aに送信する機能をもっている。
【0110】
サービス受信部211は、検証者装置300aのサービス送信部311aよりネットワーク400を介して送信されたサービスデータを受信する機能をもっている。サービスデータは、前述した通り、会員装置200aに提供するサービス内容の情報であって、図21に一例が示されている。
【0111】
一方、検証者装置300aは、前述した属性情報受信部302、メニュー情報記憶部303、メニュー情報管理部304、メニュー作成部305、メニュー送信部306、サービス要求情報検証部308、サービス要求確認情報生成部309及びサービス要求確認情報送信部310に代えて、CRL情報記憶部320、アクセス要求受信部321、アクセス要求認証部322、CRL情報管理部323、サービス購入可能グループ有効性検証部324、サービス利用可能グループ管理部325、サービス利用可能グループ情報記憶部326、メニュー情報サービス購入可能グループ情報送信部327、メニュー情報管理部328、メニュー情報優先度データ記憶部329、グループ優先度設定部330及びサービス要求情報検証部331を備えている。これに伴い、CRL情報受信部301a、サービス要求情報受信部307a及びサービス送信部311aは、前述した機能を有するが、データの入力元又は出力先が異なることから添字aを付している。
【0112】
CRL情報受信部301aは、CRL情報送信部103から送信されたCRL情報を受信し、このCRL情報をCRL情報記憶部320に格納する機能をもっている。
【0113】
CRL情報記憶部320は、CRL情報受信部301aから書込まれたCRL情報が記憶される記憶装置である。
【0114】
アクセス要求受信部321は、会員装置200aのアクセス要求送信部220からアクセス要求情報を受信し、アクセス要求認証部322に出力する機能をもっている。
【0115】
アクセス要求認証部322は、アクセス要求受信部321から入力されたアクセス要求情報に基づいて、会員装置200aからアクセス要求を受けたことを認識し、このアクセス要求情報をCRL情報管理部323に出力する機能をもっている。
【0116】
CRL情報管理部323は、アクセス要求認証部からアクセス要求情報を受けると、CRL情報記憶部320からCRL情報を取り出す機能と、CRL情報をサービス購入可能グループ有効性検証部324に出力する機能とをもっている。
【0117】
サービス購入可能グループ有効性検証部324は、CRL情報管理部323から出力されたCRL情報と、サービス利用可能グループ管理部325から出力されたサービス利用可能グループ情報とに関し、CRL情報に含まれるシリアル番号情報と、サービス利用可能グループ情報に含まれるグループ公開鍵証明書から取り出し可能なグループシリアル番号とに基づいて検証を行う機能と、検証結果が真となったグループをサービス購入可能グループとし、サービス購入可能グループ情報をメニュー情報サービス購入可能グループ情報送信部327に出力する機能とをもっている。
【0118】
ここで、CRL情報に含まれるシリアル番号はリボークされ、利用不可能とされたグループの情報であり、グループ公開鍵証明書から取り出し可能なシリアル番号情報はサービスを受けることが可能なグループの情報である。このため、検証を行う機能は、CRL情報に含まれるシリアル番号情報に含まれず、かつグループ公開鍵証明書から取り出し可能なシリアル番号情報に含まれるシリアル番号情報の検証結果が真となるように検証を行う。
【0119】
サービス利用可能グループ情報とは、検証者がサービスを提供する際に提供可能であると認めているグループの情報であり、予め検証者によって設定されている。例えば、サービス提供手段をオンライン上とするコンテンツ販売の例を考えた場合、コンテンツのコンテンツID情報、コンテンツの利用が可能な利用可能グループのグループID情報と、それぞれのグループに特有のグループ公開鍵証明書などが含まれる。図8に示すように、コンテンツIDが1、グループIDが00000、11111、22222、33333、グループ公開鍵証明書がバイト(byte)列の情報であることが関連付けられており、コンテンツのコンテンツID「1」に対しては、グループID情報が、「00000」、「33333」、「11111」であるグループがサービス利用可能であり、それらのグループ公開鍵証明書がそれぞれバイト列であることをあらわすリストとなっている。グループ公開鍵証明書とは、グループ公開鍵の正当性を証明するものである。
【0120】
サービス購入可能グループ情報は、前述した通り、コンテンツID、サービス購入可能グループIDが含まれる情報であり、図3に一例を示している。
【0121】
サービス利用可能グループ管理部325は、サービス利用可能グループ情報記憶部326からサービス利用可能グループ情報を取り出し、サービス購入可能グループ有効性検証部324に入力する機能をもっている。
【0122】
サービス利用可能グループ情報記憶部326は、上述のサービス利用可能グループ情報が記憶されている記憶装置である。
【0123】
メニュー情報サービス購入可能グループ情報送信部327は、サービス購入可能グループ有効性検証部324から出力されたサービス購入可能グループ情報と、メニュー情報管理部328から出力されたメニュー情報とを、ネットワーク400を介して会員装置200aのメニュー情報サービス購入可能グループ情報受信部221に送信する機能をもっている。メニュー情報とは、前述した通り、検証者装置300aから会員装置200aに提供するサービスの識別情報であり、図2に一例を示している。
【0124】
メニュー情報管理部328は、メニュー情報優先度データ記憶部329からメニュー情報、及び優先度データを取り出し、メニュー情報サービス購入可能グループ情報送信部327に出力する機能をもっている。優先度データとは、検証者装置300aが予め設定したサービスを利用することが可能であるグループについて、会員に優先的に利用させようとするグループのデータである。例えば図9に示したように、東京都が提供するコンテンツAに対しては、1.東京都在住グループ、2.成人グループ、3.男性、もしくは女性グループ、4.その他のグループ、という形で優先度を設定する。
【0125】
メニュー情報優先度データ記憶部329は、上述のメニュー情報、及び優先度データが記憶されている記憶装置である。
【0126】
グループ優先度設定部330は、予め検証者装置300aにより設定されているサービス利用可能グループに関して、優先的に利用するグループである上述のような優先度データを予め検証者装置300aにより設定し、この優先度データをメニュー情報優先度データ記憶部329に書き込む機能をもっている。
【0127】
サービス要求情報受信部307aは、会員装置200aのサービス要求情報送信部208aから送信されたサービス要求情報をネットワーク400を介して受信し、サービス要求情報検証部331に出力する機能をもっている。
【0128】
サービス要求情報検証部331では、サービス要求情報受信部307aから出力されたサービス要求情報に基づいて検証を行う機能をもっている。具体的には、サービス要求情報であるグループ署名が正当である場合、検証結果が真となり、不正な場合、検証結果は偽となる。検証結果が真であった場合、サービスを会員装置200aに送信するためのサービス送信要求をサービス送信部311aに対して行う。
【0129】
サービス送信部311aは、サービス要求情報検証部331からサービス送信要求を受けると、サービスデータ記憶部312内の該当するサービスデータをネットワーク400を介して会員装置200aのサービス受信部211に送信する機能をもっている。サービスデータとは、前述した通り、会員装置200aに提供するサービス内容の情報であり、図21に一例を示している。
【0130】
サービスデータ記憶部312は、会員に提供するサービスデータの情報が記憶されている記憶装置である。
【0131】
次に、以上のように構成されたサービス提供システムの動作を図10のシーケンス図を用いて説明する。
【0132】
管理者装置100では、グループ公開鍵証明書が失効したとき、その失効(リボーク)を反映させるようにCRL情報管理部101がCRL情報をCRL情報記憶部102に書込む(ST31)。CRL情報管理部101は、この書込み後、CRL情報記憶部102からCRL情報を読み出してCRL情報送信部103に送出する。CRL情報送信部103は、CRL情報をネットワーク400を介して検証者装置300に送信する(ST32)。検証者装置300aでは、このCRL情報をCRL情報受信部301aが受信してCRL情報記憶部320に格納する。
ここまでは、従来のステップST11,ST12でも同様である。
【0133】
次に、会員装置200aは、会員の操作により、アクセス要求送信部220がアクセス要求(サービスメニュー要求)を検証者装置300aに送信する(ST33)。ここで、アクセス要求とは、クライアント/サーバシステムのWeb接続の様なURLの指定によるものと考えてよい。但し、従来とは異なり、属性情報を送信しない。すなわち、検証者装置300aは、会員装置200aの所属するグループのグループIDを得ることなく、以下に述べるステップST36までの動作を実行する。
【0134】
検証者装置300aでは、会員装置200aからアクセス要求を受けると、アクセス要求情報をアクセス要求認証部322がCRL情報管理部323に出力する。CRL情報管理部323は、アクセス要求情報を受けると、CRL情報記憶部320からCRL情報を取り出してサービス購入可能グループ有効性検証部324に出力する。
【0135】
サービス購入可能グループ有効性検証部324は、このCRL情報と、サービス利用可能グループ管理部325に管理されるサービス利用可能グループ情報とを用いて、現時点におけるサービス利用可能グループの検証を行う(ST34)。
【0136】
具体的にはCRL情報に含まれるシリアル番号情報と、サービス利用可能グループ情報に含まれるグループ公開鍵証明書から取り出し可能なグループシリアル番号とに基づいて検証を行う。例えば、図11に示すように、CRL情報に含まれるシリアル番号情報が「6B」、「6A」、「69」であり、グループ公開鍵証明書から取り出し可能なシリアル番号情報が「6B」、「67」、「66」である場合、2つのシリアル番号情報を比較し、CRL情報に含まれるシリアル番号情報に含まれず、かつグループ公開鍵証明書から取り出し可能なシリアル番号情報に含まれるシリアル番号情報である「67」、「66」により特定されるグループについて検証結果を真とする。また、一致するシリアル情報である「6B」、及びCRL情報にのみ含まれるシリアル番号情報である「6A」、「69」により特定されるグループ情報について検証結果を偽とする。
【0137】
サービス購入可能グループ有効性検証部324は、検証結果が真となったグループをサービス購入可能グループとし、サービス購入可能グループ情報をメニュー情報サービス購入可能グループ情報送信部327に出力する。なお、サービス購入可能グループ情報は、会員装置200aの所属するグループIDを含むか否かに関わらず、メニュー情報サービス購入可能グループ情報送信部327に出力される。
【0138】
しかる後、検証者装置300aは、グループ優先度設定部330により、会員に優先的に利用して欲しいグループをサービス毎に設定し、この優先度データをメニュー情報優先度データ記憶部329に保存する(ST35)。
【0139】
また、メニュー情報優先度データ記憶部329内のメニュー情報及び優先度データは、メニュー情報管理部328を介してメニュー情報サービス購入可能グループ情報送信部327に出力される。
【0140】
検証者装置300aにおいては、メニュー情報サービス購入可能グループ情報送信部327により、メニュー情報、利用可能グループ情報及びグループの優先度設定情報を会員装置200aに送信する(ST36)。このメニュー情報、サービス利用可能グループ情報は、HTML(Hyper Text Makeup Language)やJavaScriptなどの言語を用いて生成されるものである。
会員装置200aでは、メニュー情報サービス購入可能グループ情報受信部221で受信したサービス購入可能グループ情報と、所属グループ情報管理部223で管理する所属グループ情報とに基づいて、グループ有効性検証部225により、会員がサービスを受けるのに利用可能なグループを検証する(ST37)。
【0141】
例えば、以下の図12に示すようにサービス購入可能グループ情報に含まれるグループID情報が「00000」、「11111」、「22222」であり、所属グループ情報に含まれるグループID情報が「00000」、「33333」、「11111」である場合は、2つのグループID情報とを比較し、共通するグループID情報「00000」、「11111」により特定されるグループについて検証結果が真となり、一致しないグループID情報である「22222」、「33333」により特定されるグループについて検証結果が偽となる。
【0142】
会員装置200aでは、グループ有効性検証部225による検証の結果が真であった場合、そのグループをコンテンツ購入可能グループとし、コンテンツ購入可能グループ情報とメニュー情報とをメニュー生成部226に出力すると共に、検証結果が偽であった場合、エラー情報をメニュー生成部226に出力する。
【0143】
また、予め優先的に利用するグループを設定しておき、その情報を保存しておく(ST38)。
【0144】
会員装置200aでは、メニュー生成部226により、コンテンツ購入可能グループ情報及びメニュー情報に基づいて、メニュー情報のうち、コンテンツ購入可能グループ情報に対応する情報を残すように画面表示用のメニュー情報を生成し、このメニュー情報をメニュー表示部205aにより表示する(ST39)。なお、メニュー生成部226は、ステップ38で設定された優先度に基づいて、画面表示用のメニュー情報を並べ替えてもよい。但し、メニュー情報が会員装置200aで設定した購入グループの優先度を反映させない、という設定になっていれば、会員装置200aで設定した優先度は無視され、検証者装置300aで設定した優先度が反映されたメニューとなる。
【0145】
また、メニュー表示部205aは、グループ有効性検証部225による検証結果が偽のときのエラー情報に基づいて、エラーメッセージを表示してもよい。例えば図12に示したように、サービス購入可能グループ情報に含まれるが、結果が偽であるグループID(サービス購入可能グループ情報に含まれるグループID:22222)があった場合、そのグループはシステム管理者によりリボークされており、サービスを受けることが不可能である旨のエラーメッセージが、メニュー画面に追加されてもよい。なお、エラーメッセージとしては、例えば、一致しなかったグループIDに対応する部分のメニュー情報のうち、少なくともサービスIDがエラー情報と関連付けて表示される。
【0146】
また、所属グループ情報に含まれるが、結果が偽であるグループID(所属グループ情報に含まれるグループID:33333)があった場合、そのグループではサービスを利用することが不可能であるため、メニュー情報にグループを加えない。
【0147】
また、両グループIDに関する検証結果が全て偽となり、コンテンツ購入可能グループが0であった場合、会員の所属しているグループでサービスの利用が不可能である旨のエラーメッセージがメニュー画面に表示される。
【0148】
この様に、検証者装置300aへ会員の属性情報を送信しないことで、検証者装置300aへ会員の属性情報が伝わることを防止できるだけでなく、検証者装置300aでの会員ごとの個別メニューの生成を行わなくても良くなり、処理が軽減される。
【0149】
会員は、会員別に個別化されて表示されたメニュー画面からサービスを選択し、会員装置200aを操作する。
会員装置200aでは、会員の操作によってサービス選択部206aでサービスが選択されると、サービス要求情報生成部227にてメンバ秘密鍵や選択したサービスに関する情報から、グループ署名であるサービス要求情報が生成される。そして、サービス要求確認情報表示部228は、選択したサービスの内容や、生成したサービス要求情報を表示し、会員にサービス内容の確認を促す(ST40)。
【0150】
表示されたサービス内容で正しければ、サービス要求情報を検証者装置300aへ送信する(ST41)。
【0151】
検証者装置300aでは、サービス要求情報受信部307aでサービス要求情報を受信すると、受信したサービス要求情報をサービス要求情報検証部331にてグループ公開鍵を用いて検証する(ST42)。
【0152】
また、例として、会員に提供するサービスをオンライン購入によるコンテンツ購入とした場合、グループ署名から会員がコンテンツ購入に利用したグループのグループID情報、購入したいコンテンツのコンテンツID情報、購入数、合計金額などをグループ署名から復元する。
【0153】
検証結果が真であるならば、検証者装置300aは、復元されたコンテンツID情報により、サービスデータ記憶部312内のサービスデータを選択し、このサービスデータを会員装置200aへ送る(ST43)。
【0154】
会員装置200aは、検証者装置300aから送られたサービスを、サービス受信部211にて受信しサービスの提供を受ける。
【0155】
一方、検証結果が偽であれば、検証者装置300aは、サービス要求情報が不正であるとして、エラーメッセージを会員装置200aへ返す。この際、会員装置200aは、サービスの提供を受けることができない。
【0156】
上述したように本実施形態によれば、サービス提供者に利用者がどのグループに所属しているか、その属性情報をサービス提供者に伝えることなく、利用者が所属するグループが受けられるサービスのみを表示することができる。さらに、利用者が所属するグループのうちシステム管理者により利用不可能とされているグループの情報を、利用者に意識させることなく、利用者画面に表示する情報から排除することができる。さらに、要求したサービスの内容をサービス提供者に送ることなく確認することができる。さらに、どのグループで優先的にサービスを受けられるようにするか、サービス提供者が設定した順位でサービスを受けさせたり、利用者が設定した順位でサービスが受けたりすることができる。
【0157】
詳しくは、検証者装置300aへサービス要求情報を確認してから送信することで、会員が選択したサービスの内容を確認し了承して送ることが出来る。これにより、検証者装置300aでサービス要求について確認をするための画面情報を生成する必要も無くなり処理が軽減される。
【0158】
また、所属しているグループに関する情報を、サービス提供者に提示することなく、サービス提供者が行うサービスのうち、自分が受けられるサービスのみを表示させることができる。また、利用者の趣味・趣向に応じて、受けられるサービスのうち優先度を設けて会員装置200aに表示することができる。
【0159】
また、会員装置200a内で生成した情報を、従来のステップST17とは異なり、サービス提供者へ一度も送信することなく、会員装置200aに表示して結果を確認することができる。
【0160】
また、会員が所属しているグループに関する情報のみでなく、利用可能グループ情報を検証者装置300aから送信することにより、その時点で会員が所属しているグループのうち、管理者によりリボークされておらず、利用可能なグループのみを表示させることができる。例えば、従来の会員装置は、所属しているグループが現時点で有効か否かを確認したい場合、確認対象のグループでサービスを要求するか又は確認対象のグループを登録し直す必要があり、サービス提供者に趣味・趣向を知られる心配がある。一方、本実施形態では会員装置200a内で利用可能なグループを確認できるので、その心配が無い。
【0161】
また、利用不可能なグループでのグループ署名生成、および検証者装置300aへの送信がなくなり、サービス利用者の無駄な動作をなくすことができる。
【0162】
また、サービスを受けることができない場合の理由が明確となり、会員にとってさらに利用しやすいサービス提供システムとなる。
【0163】
(第2の実施形態)
次に、本発明の第2の実施形態に係るサービス提供システムについて前述した図面を参照しながら説明する。
【0164】
すなわち、本実施形態は、第1の実施形態の具体例であり、会員装置200aが複数のグループに所属し、かつサービスを受ける際にどのグループでもサービスが受けられる場合を想定する。この場合、検証者装置300aは、サービスを提供するグループのうち、優先的に利用させたいグループをサービス毎に予め設定しておき、会員装置200aには優先的に利用させたいグループを優先的に選択可能とした構成になっている。
【0165】
検証者装置300aではグループ優先度設定部330にてサービス毎に会員装置200aどのグループを優先的に利用してもらうかを設定しておく。
【0166】
例えば、図9に示したように、東京都が提供するコンテンツAに対しては、1.東京都在住グループ、2.成人グループ、3.男性、もしくは女性グループ、4.その他のグループ、という形で優先度を設定する。
【0167】
ある会員が、東京都在住グループ、男性グループの両方に所属している場合、この東京都が提供するコンテンツAは、優先的に東京在住グループによるサービスの提供を受けることとなる。
【0168】
設定した優先度データは、検証者装置300a内のメニュー情報優先度データ記憶部329に格納される。そして、メニュー情報管理部328でメニュー情報が取り出され、メニュー情報サービス購入可能グループ情報送信部327よりメニュー情報と一緒に優先度データが会員装置200aへネットワーク400を介して送られる。
【0169】
会員装置200aでは、予め会員が所属するグループについて、優先的に利用するグループを購入グループ優先度設定部222にて設定しておき、所属グループ情報管理部223にてグループについて優先的に利用するかどうかを管理しておく。
【0170】
購入グループ優先度情報には、グループIDと、優先度情報などが含まれており、例えば、図4に示したように、優先度が1、2、3、・・・、グループIDが77777、88888、99999という情報が関連付けられており、グループIDが77777、88888、99999の順に優先度がつけられていることを意味する。
【0171】
会員装置200aでは、メニュー情報サービス購入可能グループ情報受信部221にてメニュー情報及びサービス購入可能グループ情報を受信すると、所属グループ情報管理部223にて所属グループ情報をグループ有効性検証部225へ出力する。
【0172】
会員装置200aは、所属グループが利用可能なサービスだけを表示するメニューを生成し、メニュー表示部205aにて予め優先的に利用するグループからサービスが受けられるようにメニュー情報を表示する。会員はサービス選択部206aにてサービスを選択する。
【0173】
この時、検証者装置300aが優先的に利用して欲しいグループと、会員が優先的に利用したいグループとが、必ずしも一致しない場合がある。このような場合、検証者装置300aのメニュー情報に、会員が設定したグループの優先度を反映させるか否かを示す優先度制御情報を含めればよい。
【0174】
これにより、メニュー表示部205aは、この優先度制御情報に基づいて、検証者装置300aで設定された優先度をメニューに反映でき、あるいは、会員装置200aで設定された優先度をメニューに反映させることができる。
【0175】
上述したように本実施形態によれば、第1の実施形態の効果に加え、グループ優先度を設定する構成により、優先度の高いグループにサービスを利用してもらうことができる。
【0176】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0177】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0178】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
【0179】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0180】
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0181】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0182】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0183】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【0184】
【図1】本発明の第1の実施形態に係るサービス提供システムの構成を示す模式図である。
【図2】同実施形態におけるメニュー情報の一例を示す模式図である。
【図3】同実施形態におけるサービス購入可能グループ情報の一例を示す模式図である。
【図4】同実施形態における購入グループ優先度情報の一例を示す模式図である。
【図5】同実施形態における所属グループ情報の一例を示す模式図である。
【図6】同実施形態におけるコンテンツ購入可能グループ情報の一例を示す模式図である。
【図7】同実施形態におけるメニュー情報の一例を示す模式図である。
【図8】同実施形態におけるサービス利用可能グループ情報の一例を示す模式図である。
【図9】同実施形態における優先度データの一例を示す模式図である。
【図10】同実施形態における全体動作を説明するためのシーケンス図である。
【図11】同実施形態におけるCRL情報に基づく検証動作を説明するための模式図である。
【図12】同実施形態における所属グループ情報に基づく検証動作を説明するための模式図である。
【図13】一般的なサービス提供システムの概要を示す模式図である。
【図14】従来のサービス提供システムの構成を示す模式図である。
【図15】従来のサービス提供における全体動作を説明するためのシーケンス図である。
【図16】一般的なCRL情報の一例を示す模式図である。
【図17】一般的な属性情報の一例を示す模式図である。
【図18】一般的なメニュー情報の一例を示す模式図である。
【図19】属性情報に基づく従来の照合動作を説明するための模式図である。
【図20】従来の個別メニュー情報の一例を示す模式図である。
【図21】一般的なサービスデータの一例を示す模式図である。
【符号の説明】
【0185】
100…管理者装置、101…CRL情報管理部、102…CRL情報記憶部、103…CRL情報送信部、200a…会員装置、201a…属性情報管理部、202…属性情報記憶部、205a…メニュー表示部、206a…サービス選択部、208a…サービス要求情報送信部、211…サービス受信部、220…アクセス要求送信部、221…メニュー情報サービス購入可能グループ情報受信部、222…購入グループ優先度設定部、223…所属グループ情報管理部、224…所属グループ情報記憶部、225…グループ有効性検証部、226…メニュー生成部、227…サービス要求情報生成部、228…サービス要求確認情報表示部、300a…検証者装置、301a…CRL情報受信部、307a…サービス要求情報受信部、311a…サービス送信部、320…CRL情報記憶部、321…アクセス要求受信部、322…アクセス要求認証部、323…CRL情報管理部、324…サービス購入可能グループ有効性検証部、325…サービス利用可能グループ管理部、326…サービス利用可能グループ情報記憶部、327…メニュー情報サービス購入可能グループ情報送信部、328…メニュー情報管理部、329…メニュー情報優先度データ記憶部、330…グループ優先度設定部、331…サービス要求情報検証部。
【特許請求の範囲】
【請求項1】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、
前記検証者装置は、
サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、
前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、
前記会員装置は、
所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、
前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、
前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段と
を備えたことを特徴とするサービス提供システム。
【請求項2】
請求項1に記載のサービス提供システムにおいて、
前記会員装置は、
前記サービスの要求を含むグループ署名を生成するグループ署名生成手段と、
この生成されたグループ署名が記憶されるグループ署名記憶手段と、
前記記憶されたグループ署名及びこのグループ署名に含まれる前記サービスの要求を、前記検証装置にグループ署名を提示する前に表示するサービス要求表示手段と、
前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段と、
を備えたことを特徴とするサービス提供システム。
【請求項3】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、
前記検証者装置は、
各グループ毎に、当該グループが失効した場合に書き込まれるグループ失効情報が記憶されるグループ失効情報記憶手段と、
サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、
前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段と、
前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、
前記会員装置は、
所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、
前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、
前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段と
を備えたことを特徴とするサービス提供システム。
【請求項4】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに用いられる前記会員装置であって、
前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報が記憶されるグループ優先度情報記憶手段と、
所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段と、
前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段と、
前記第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段と、
前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段とを備え、
前記表示制御手段は、
前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段
を備えたことを特徴とする会員装置。
【請求項5】
メモリを有し、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記会員装置のコンピュータに用いられるプログラムであって、
前記コンピュータを、
前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報を前記メモリに書込むグループ優先度情報書込手段、
所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段、
前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段、
前記メモリ内の第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段、
前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段、として機能させ、
前記表示制御手段は、
前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段、
を備えたことを特徴とするプログラム。
【請求項1】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、
前記検証者装置は、
サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、
前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、
前記会員装置は、
所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、
前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、
前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段と
を備えたことを特徴とするサービス提供システム。
【請求項2】
請求項1に記載のサービス提供システムにおいて、
前記会員装置は、
前記サービスの要求を含むグループ署名を生成するグループ署名生成手段と、
この生成されたグループ署名が記憶されるグループ署名記憶手段と、
前記記憶されたグループ署名及びこのグループ署名に含まれる前記サービスの要求を、前記検証装置にグループ署名を提示する前に表示するサービス要求表示手段と、
前記サービス要求表示手段による表示中、外部からの確認操作に基づいて、前記グループ署名を前記検証者装置へ送信するグループ署名送信手段と、
を備えたことを特徴とするサービス提供システム。
【請求項3】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムであって、
前記検証者装置は、
各グループ毎に、当該グループが失効した場合に書き込まれるグループ失効情報が記憶されるグループ失効情報記憶手段と、
サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報が記憶されたメニュー情報記憶手段と、
前記会員装置からサービスメニュー要求を受けると、前記会員装置の所属するグループのグループ識別情報を得ることなく、前記メニュー情報記憶手段内のメニュー情報から前記グループ失効情報に該当するグループのグループ識別情報を削除する失効グループ削除手段と、
前記削除の後、残ったメニュー情報を前記会員装置に送信するメニュー送信手段とを備えており、
前記会員装置は、
所属する各グループのグループ識別情報が記憶された所属グループ識別情報記憶手段と、
前記検証者装置から送信されたメニュー情報内の各グループのグループ識別情報と、前記所属グループ識別情報記憶手段内のグループ識別情報とが一致するか否かにより、利用可能なサービスを判定するサービス利用判定手段と、
前記判定の結果、一致したグループ識別情報に対応する部分のメニュー情報を表示するメニュー表示手段と
を備えたことを特徴とするサービス提供システム。
【請求項4】
グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに用いられる前記会員装置であって、
前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報が記憶されるグループ優先度情報記憶手段と、
所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段と、
前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段と、
前記第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段と、
前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段とを備え、
前記表示制御手段は、
前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段
を備えたことを特徴とする会員装置。
【請求項5】
メモリを有し、グループ署名方式に基づいて、所属するグループ毎に、当該グループの利用可能なサービスの要求を含むグループ署名を生成して提示可能な会員装置と、
前記グループ署名方式に基づいて、前記会員装置から提示されたグループ署名を検証し、検証結果が真のとき、前記要求されたサービスのサービスデータを前記会員装置に提供する検証者装置とを備えたサービス提供システムに関し、前記会員装置のコンピュータに用いられるプログラムであって、
前記コンピュータを、
前記所属するグループのグループ識別情報毎に、各グループの会員側での優先度を示す第2のグループ優先度情報を前記メモリに書込むグループ優先度情報書込手段、
所属するグループのグループ識別情報を得ることなく前記検証者装置の提供可能なサービス一覧を要求するサービスメニュー要求を前記検証者装置に送信するサービスメニュー要求送信手段、
前記サービスメニュー要求の送信の後、サービスを識別可能なサービス識別情報毎に、当該サービスを利用可能な各グループのグループ識別情報を含むメニュー情報を前記検証者装置から受信するメニュー情報受信手段、
前記メモリ内の第2のグループ優先度情報に基づいて、前記受信したメニュー情報の表示を制御する表示制御手段、
前記メニュー情報の受信の際に、前記第2のグループ優先度情報とは異なる第1のグループ優先度情報と、前記第1又は第2のグループ優先度情報のいずれかを優先させる優先度制御情報とを前記検証者装置から受信する優先度情報受信手段、として機能させ、
前記表示制御手段は、
前記第2のグループ優先度情報とは別に、前記第1のグループ優先度情報及び前記優先度情報にも基づいて、前記受信したメニュー情報の表示を制御する手段、
を備えたことを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【公開番号】特開2007−128330(P2007−128330A)
【公開日】平成19年5月24日(2007.5.24)
【国際特許分類】
【出願番号】特願2005−321034(P2005−321034)
【出願日】平成17年11月4日(2005.11.4)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
【公開日】平成19年5月24日(2007.5.24)
【国際特許分類】
【出願日】平成17年11月4日(2005.11.4)
【出願人】(301063496)東芝ソリューション株式会社 (1,478)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
[ Back to top ]