JP2004320562A - 匿名認証システム、装置及びプログラム - Google Patents
匿名認証システム、装置及びプログラム Download PDFInfo
- Publication number
- JP2004320562A JP2004320562A JP2003113386A JP2003113386A JP2004320562A JP 2004320562 A JP2004320562 A JP 2004320562A JP 2003113386 A JP2003113386 A JP 2003113386A JP 2003113386 A JP2003113386 A JP 2003113386A JP 2004320562 A JP2004320562 A JP 2004320562A
- Authority
- JP
- Japan
- Prior art keywords
- information
- group
- user terminal
- tamper
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【解決手段】グループ署名方式において、利用者端末30に着脱自在に保持される耐タンパー装置50を設け、この耐タンパー装置50が秘密情報を生成し、且つ秘密情報による演算を実行する。これにより、利用者端末30に秘密情報を漏洩させずに実現できる。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、グループ署名を用いた匿名認証システム、装置及びプログラムに関する。
【0002】
【従来の技術】
電子ネットワーク上でサービスを提供する分野では、サービス提供者が不特定多数のアクセス要求者に対して、サービスを受ける権限の有無を確認し、権限を持つ要求者のみにアクセスを許可するアクセス制御や、認証システムが知られている。
【0003】
この種のアクセス制御や認証システムとしては、例えば(a)IDとパスワードを利用する方式、(b)PKI(Public Key Infrastructure:公開鍵暗号基盤)による方式、などがある。
【0004】
(a)IDとパスワードを用いる方式は、利用者登録時にサービス提供者がIDとパスワードを利用者に発行し、サービスが要求された際に、サービス要求者のIDとパスワードを確認するものである。
【0005】
(b)PKIによる方式は、公開鍵の正当性を保証する公開鍵証明書及び公開鍵を用いて、利用者が確かに公開鍵のペアである秘密鍵を所有していることを確認することにより、秘密情報がネットワークを流れないため、第三者に漏洩しにくい特徴を持つ。また、他のトランザクション(取引、処理)への対応付けが容易となる利点がある。
【0006】
(c)電子ネットワーク以外のアクセス制御や、認証システムとしては、 酒類・煙草を販売する自動販売機において、免許証に記載された生年月日を読み取り、年齢の認証を行うものもある。
【0007】
しかしながら、以上のようなアクセス制御や、認証システムでは、次の(a’)〜(c’)に示すような不都合がある。
【0008】
(a’) 上記(a)のID及びパスワードを用いる方式は、サービス提供者が個人情報やID及びパスワードのリストを厳重に管理する必要があるので、高いコストを要するものとなる。
【0009】
(b’) 上記(b)の公開鍵証明書を用いる方式は、公開鍵や公開鍵証明書といった利用者のユニークな情報をサービス提供者に与えることになる。このユニークな情報は、匿名ネットワークを介しても、隠蔽不可能となっている。
【0010】
また、公開鍵証明書を用いる方式は、利用者IDが仮名情報で代替されたことに等しく、個人情報と仮名情報との組合せが露呈した段階で、個人情報を流出させる可能性が高くなる。また、サービス提供者は、利用者の公開鍵とサービス利用情報とが対応付けされた情報を厳密に管理する場合には、高いコストを負担することになる。
【0011】
ここで、上記(a’),(b’)に述べたコストは、個人情報保護法の法制化やプライバシマークの制定等、利用者の個人情報を法的に保護する動向に比例して高くなると考えられる。
【0012】
これに加え、上記(a),(b)の方式は、個人情報の運用体制や実績が、利用者や他のビジネスパートナーとの関係に影響を与えるリスク要因となり得る。
【0013】
例えば個人情報を厳重に管理しない場合、クレジットカード番号等の決済情報を漏洩させる、といった事件と同様に、情報漏洩を生じさせる可能性が生じる。この種の情報漏洩は、利用者には被害を生じさせ、サービス提供者にはブランドの信用を失墜させて他のビジネスパートナーから受けていた信用をも低下させてしまう。
【0014】
しかしながら、サービス提供業者は、特に電子コンテンツを提供するサービスの場合、通常、少人数の従業員から構成されるので、個人情報を厳重管理する運用体制を設けて実績を残そうとすると、従業員の業務の負担やコストの負担が過大になってしまう。
【0015】
(c’) 上記(c)の免許証を読取る方式は、免許証から年齢以外の個人情報が読取られる旨の利用者側の不安と、年齢以外の個人情報を読取らない旨を保証する販売者側のコストとを生じさせてしまう。
【0016】
ところで、以上のような不都合(a’)〜(c’)を解決可能な暗号技術として、グループ署名方式がある。グループ署名方式とは、異なる署名者(グループのメンバ)の署名を単一のグループ公開鍵で検証できる特殊な署名方式である。具体的には、以下の性質(i)〜(iii)を持つ。
(i)署名に用いる鍵情報は、メンバ毎に異なる。
(ii)他メンバや検証者(例、サービス提供者)は、署名からメンバを特定できない。
(iii)グループの管理者は、グループの秘密情報により、署名からメンバを特定できる。
【0017】
なお、グループ署名方式の先行技術文献情報には、次のものがある(例えば、非特許文献1参照。)。
【0018】
【非特許文献1】
ジー・アテニース(G. Ateniese)、ジェイ・キャメニッシュ(J. Camenisch)、エム・ジョイ(M. Joye)、ジー・ツディク(G. Tsudik)著、「ア・プラクティカル・アンド・プロバブリー・セキュア・コーリション−レジスタント・グループ・シグネチャ・スキーム(A practical and provably secure coalition−resistant group signature scheme.)」、クリプト2000(CRYPTO 2000), LNCS 1880,シュプリンガー・ファアラーク(Springer−Verlag),2000年 ,pp.255−270.
【0019】
【発明が解決しようとする課題】
しかしながら以上のようなグループ署名方式では、通常は何の問題もないが、本発明者の検討によれば、パーソナルコンピュータを利用者装置とした場合、秘密情報を漏洩させる可能性がある。また、複数の利用者端末を所有する利用者にとっては、利用者端末毎に権限グループに加入する必要があるので、利便性が低い印象を与える可能性がある。また、利便性を向上させるように、複数の利用者端末間で秘密情報のコピーを許可すると、今度は秘密情報を漏洩させる可能性を大きくしてしまう。
【0020】
本発明は上記実情を考慮してなされたもので、利用者装置からの秘密情報の漏洩を阻止し得る匿名認証システム、装置及びプログラムを提供することを目的とする。
【0021】
また、本発明の他の目的は、複数の利用者端末を所有する利用者に対し、利便性を向上し得る匿名認証システム、装置及びプログラムを提供することにある。
【0022】
【課題を解決するための手段】
第1の発明は、グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者装置から受けたグループ署名を認証して当該利用者装置にサービスを提供するサービス提供装置とを備えた匿名認証システムであって、前記利用者装置としては、前記グループ管理装置及びサービス提供者装置と通信可能な利用者端末と、前記利用者端末に着脱自在に保持され、前記権限グループに所属する際に、前記利用者端末を介して前記管理装置から受けた乱数(α,β)により秘密情報(xi)を生成して格納し且つ前記利用者端末を介して前記管理装置から受けたグループ証明書情報を格納し、前記サービス提供を受ける際に、前記利用者端末にてグループ署名の生成に用いられる前記グループ証明書情報と前記秘密情報(xi)による演算結果(s2)とを個別に前記利用者端末に出力する耐タンパー装置と、を備えた匿名認証システムである。
【0023】
このように、第1の発明は、グループ署名方式を用いて利用者装置が権限グループに所属する旨をサービス提供装置に証明することにより、利用者の個人情報をサービス提供者が管理する必要が無いので、サービス提供者による個人情報の管理の負担を軽減できると共に、権限の証明に不要な個人情報をサービス提供者から保護することができる。
【0024】
これに加え、第1の発明は、利用者端末に保持される耐タンパー装置を設け、この耐タンパー装置内で秘密情報を生成し、且つ秘密情報による演算を実行するので、利用者端末に秘密情報を漏洩させずに実現できる。さらに、秘密情報を漏洩させないため、例えば秘密情報のコピーを不可として不正な利用を阻止でき、セキュリティ性を向上させることができる。
【0025】
さらに、第1の発明は、耐タンパー装置が着脱自在であるため、例えば会社の利用者端末に装着してサービス提供を受けた後、耐タンパー装置を持ち帰り、自宅の利用者端末にてサービス提供を受ける等というように、異なる利用者端末でそれぞれサービス提供を受けることができるので、複数の利用者端末を所有する利用者に対し、利便性を向上させることができる。
【0026】
なお、第1の発明は全体構成を「システム」として表現した場合を示しているが、これに限らず、全体構成又は各装置を「装置」、「プログラム」、「方法」又は「コンピュータ読取り可能な記憶媒体」といった他の名称やカテゴリーで表現しても良いことは言うまでもない。
【0027】
【発明の実施の形態】
以下、本発明の一実施形態について図面を参照しながら説明する。
図1は本発明の一実施形態に係る匿名認証システムの構成を示す模式図である。この匿名認証システムは、属性発行管理サーバ10、利用者端末30、耐タンパー装置50、サービス提供サーバ70及び決済機関装置90を備えている。ここで、各装置10,30,50,70,90は、各々ハードウェア構成のみ、又はハードウェア構成とソフトウェア構成との組合せにより実現可能であるが、ソフトウェア構成による部分は、対応する機能を実現させるためのプログラムが予め記憶媒体又はネットワークから自装置10,30,50,70,90のコンピュータにインストールされて実現される。
【0028】
属性発行管理サーバ10は、利用者端末30からの参加要求に基づいて、サービスを受けられる権限グループに利用者が所属する旨を証明するグループ証明書を発行し、利用者情報を管理するサーバである。
【0029】
具体的には、属性発行管理サーバ10は、図2に示すように、システム情報記憶部11、利用者管理情報記憶部12、パラメータ生成部13、グループ鍵生成部14、管理受付部15、要求受付部16、チャレンジ生成部17、第1証明情報検証部18、メンバー秘密鍵乱数生成部19、第2証明情報検証部20、第3証明情報検証部21、グループ証明書生成部22、利用者情報管理部23、グループ署名オープン部24及び決済処理部25を備えている。
【0030】
ここで、システム情報記憶部11は、パラメータ生成部13からのシステムパラメータ、グループID、グループ公開鍵、グループ秘密鍵などのシステム情報が記憶されるものであり、各機能部13〜24から読出可能となっている。
【0031】
利用者管理情報記憶部12は、要求受付部16からの利用者管理情報、利用者情報管理部23からのグループ証明書が記憶されるものであり、グループ署名オープン部24から読出可能となっている。
【0032】
パラメータ生成部13は、システムで用いる基本パラメータ(以下、システムパラメータという)を生成し、得られたシステムパラメータをシステム情報記憶部11に格納する機能をもっている。ここで、システムパラメータは、後述する表1に示すように、セキュリティパラメータε,ビット長k,鍵ビット長Ln,変数λ1,λ2,ν1,ν2,整数範囲Λ,Γ,変数ζ1〜ζ5等がある。
【0033】
グループ鍵生成部14は、管理受付部15により起動され、管理申込みに応じたグループ公開鍵とグループ秘密鍵とを生成し、これらグループ公開鍵とグループ秘密鍵とをシステム情報記憶部11に格納する機能とをもっている。
【0034】
管理受付部15は、サービス提供サーバ70からの属性発行管理申込みに応じ、グループ鍵生成部14を起動する機能と、システム情報記憶部11内のグループ公開鍵のみをサービス提供サーバ70へ送信する機能とをもっている。
【0035】
要求受付部16は、利用者端末30からのアクセスにより、グループ証明書発行可能なサービスのグループ情報及びシステムパラメータを利用者端末30に送信する機能と、グループID及び利用者情報を利用者管理情報として、利用者管理情報記憶部12に格納する機能と、このグループIDに基づいて、システム情報記憶部11内の対応するグループ公開鍵をチャレンジ生成部17に送る機能とをもっている。
【0036】
チャレンジ生成部17は、要求受付部16からグループ公開鍵を受けると、チャレンジ値の長さを入力として、チャレンジ生成部17でチャレンジ値を生成する機能と、このチャレンジ値及びグループ公開鍵を利用者端末30へ送信する機能とをもっている。なお、本実施形態では、チャレンジ値は、第1〜第3証明情報の生成処理及び検証処理にて共通のものが用いられるが、これに限らず、第1〜第3証明情報の生成処理毎に、新たなチャレンジ値を生成して利用者端末30に送信する構成としてもよい。
【0037】
第1証明情報検証部18は、チャレンジ生成部からのチャレンジ値及び利用者端末からの第1証明情報proofA及びコミットメント値C1に基づいて、第1証明情報の検証処理を実行し、第1検証結果をメンバー秘密鍵乱数生成部19に送出する機能をもっている。
【0038】
メンバー秘密鍵乱数生成部19は、第1証明情報検証部18から受けた第1検証結果が真のとき、乱数α,βを生成して利用者端末に送信する機能と、第1検証結果が偽のとき、検証失敗を利用者端末30へ返す機能とをもっている。
【0039】
第2証明情報検証部20は、利用者端末30から第2証明情報proofBを受けると、このproofBに基づいてパラメータz2’〜z4’を計算する機能と、このz2’〜z4’に基づいてハッシュ値c2’〜c4’を計算する機能と、得られたハッシュ値c2’〜c4’を用いて第2証明情報proofBを検証する機能と、検証結果を利用者端末30に送信する機能とをもっている。
【0040】
第3証明情報検証部21は、利用者端末30から受けたC2とproofCに基づいて、z1’,z5’,z6’を計算する機能と、得られたz1’,z5’,z6’に基づいてハッシュ値c1,c5を計算する機能と、得られたハッシュ値c1,c5に基づいて、第3証明情報proofCを検証する機能と、第3検証結果をグループ証明書生成部22に出力する機能とをもっている。
【0041】
グループ証明書生成部22は、第3証明情報検証部21から受けた第3検証結果が偽の場合、処理を中止して検証が失敗した旨を利用者端末30へ通知する機能と、第3検証結果が真の場合、利用者からのメンバー鍵(C2)の正当性を検証し、それに基づいたグループ証明書(Ai,ei,Ei)を発行する機能と、グループ証明書(Ai,ei,Ei)を利用者端末30へ送信する機能とをもっている。
【0042】
利用者情報管理部23は、利用者端末からの完了通知により、グループ証明書(Ai,ei,Ei)を利用者管理情報記憶部12に格納し、最終結果(OK/NG)を利用者端末30に送信する機能をもっている。
【0043】
グループ署名オープン部24は、サービス提供サーバ70からアクセスログを受け取り、ログ送信完了をサービス提供サーバ70に通知する機能と、アクセスログに含まれるグループ署名のオープン処理を行う機能と、オープン処理により得られたAiから利用者管理情報記憶部12を参照して利用者情報を抽出する機能と、この利用者情報を決済処理部25に送出する機能とをもっている。
【0044】
決済処理部25は、グループ署名オープン部24から受けた利用者情報に基づいて、決済要求を決済機関装置90とに送信する機能と、決済機関装置90から決済結果を受けると、利用者を特定できる情報を削除して利用者を匿名とした決済結果(例、OK/NG)を作成し、この匿名の決済結果をサービス提供サーバ70に通知する機能とをもっている。
【0045】
利用者端末30は、利用者が所有する端末で、例えばパーソナルコンピュータ(以下、PC)の如き汎用計算機が用いられている。
【0046】
具体的には図3に示すように、利用者端末30は、メモリ31、参加要求部32、メンバー鍵初期情報生成部33、第1証明情報生成部34、乱数入力部35、第2証明情報生成部36、第3証明情報生成部37、グループ証明書検証部38、サービス要求部39、グループ署名生成部40及びサービス受信部41を備えている。
【0047】
ここで、メモリ31は、メンバー鍵初期情報生成部33からのグループ公開鍵、乱数sr、コミットメント値C1や、チャレンジ値、乱数入力部35からの乱数α、コミットメント値C2などを記憶するものであり、各部33〜38から読出可能となっている。
【0048】
参加要求部32は、属性発行管理サーバ10とSSL接続し、属性発行管理サーバ10からグループ証明書発行可能なサービスのグループ情報及びシステムパラメータを得る機能と、利用者の操作により、入力されるグループ選択情報と利用者情報とからなるグループ参加要求を属性発行管理サーバ10へ送信する機能と、システムパラメータをメンバー鍵初期情報生成部33に送出する機能とをもっている。
【0049】
メンバー鍵初期情報生成部33は、属性発行管理サーバ10からチャレンジ値及びグループ公開鍵を受けると、グループ公開鍵をメモリ31に格納する機能と、システムパラメータ及びグループ公開鍵を耐タンパー装置50に入力する機能と、耐タンパー装置50からコミットメント元情報C1’を受けると、乱数srを生成する機能と、乱数srをメモリ31に格納する機能と、コミットメント値C1を求める機能と、このC1をメモリ31に格納する機能とをもっている。
【0050】
第1証明情報生成部34は、z1生成要求を耐タンパー装置50に入力する機能と、耐タンパー装置50からz1を受けると、乱数r2に基づいてz2を計算する機能と、z1,z2に基づいてzを計算する機能と、zに基づいてハッシュ値cを計算する機能と、ハッシュ値cを耐タンパー装置50へ入力する機能と、耐タンパー装置50からs1を受ける機能と、ハッシュ値cに基づいて、s2を計算する機能と、第1の証明情報proofA=(c,s1,s2)とコミットメント値C1とを属性発行管理サーバ10へ送信する機能とをもっている。
【0051】
乱数入力部35は、属性発行管理サーバ10から乱数αとβを受けると、乱数αをメモリ31に格納する機能と、乱数α,βを耐タンパー装置50に入力する機能と、耐タンパー装置50から受けたコミットメント値C2をメモリ31に格納する機能とをもっている。
【0052】
第2証明情報生成部36は、yz生成要求を耐タンパー装置50に入力する機能と、耐タンパー装置50からy1,y2,z2,z3を受ける機能と、乱数α,srに基づいてwを計算する機能と、得られたwに基づいてy3を計算する機能と、乱数r4を生成する機能と、得られた乱数r4に基づいて、z4を計算する機能と、パラメータy1〜y3,z2〜z3に基づいてハッシュ値c2〜c4を計算する機能と、ハッシュ値c4に基づいてs4を計算する機能と、ハッシュ値c2,c3を耐タンパー装置50に入力する機能と、耐タンパー装置50からs2,s3を受ける機能と、これら(y1,y2,y3,c2,c3,c4,s2,s3,s4 )を第2証明情報proofBとして属性発行管理サーバ10へ送信する機能とをもっている。
【0053】
第3証明情報生成部37は、属性発行管理サーバ10からの応答が真のとき、チャレンジ値(challenge)を入力として、z生成要求を耐タンパー装置50へ入力する機能と、耐タンパー装置50からz1,z5,z6を受ける機能と、これらz1,z5,z6を用いてハッシュ値c1,c5を計算する機能と、得られたハッシュ値c1,c5を耐タンパー装置50へ入力する機能と、耐タンパー装置からs1,s5を受けると、メモリ31内のコミットメント値C2、及び第3証明情報proofC=(c1,c5,s1,s5 )を属性発行管理サーバ10に送信する機能とをもっている。
【0054】
グループ証明書検証部38は、属性発行管理サーバ10から受けたグループ証明書(Ai,ei,Ei)の正当性を検証する機能と、検証結果が正当のとき、グループ証明書を耐タンパー装置50に格納する機能と、完了通知を属性発行管理サーバ10に送信する機能とをもっている。
【0055】
サービス要求部39は、利用者の操作により、サービス提供サーバ70へアクセスし、サービス提供サーバ70が提供するメニューを受信する機能と、このメニューを表示させる機能と、利用者の操作により、メニューからサービスを選択し、選択内容をサービス要求としてサービス提供サーバ70へ返す機能とをもっている。
【0056】
グループ署名生成部40は、サービス提供サーバ70からメッセージ(msg)を受信すると、証明書要求を耐タンパー装置50へ入力する機能と、耐タンパー装置50からグループ証明書(Ai,ei,Ei)を受けると、z生成要求を耐タンパー装置50に入力する機能と、耐タンパー装置50からパラメータzを受ける機能と、乱数wを生成し、この乱数wに基づいて、(T1,T2,T3) を計算する機能と、3つの乱数(r1,r3,r4)を生成する機能と、これら(T1,T2,T3,r1,r3,r4)に基づいて、後述するハッシュ値cに用いる値(d1,d2,d3,d4)を計算する機能と、これらd1〜d4に基づいてハッシュ値cを計算する機能と、このハッシュ値cを用い、(s1,s3,s4)を計算する機能と、s2生成要求及びハッシュ値cを耐タンパー装置50に入力する機能と、耐タンパー装置50からs2を受ける機能と、得られた(c,s1,s2,s3,s4,T1,T2,T3)をグループ署名としてサービス提供サーバ70に送信する機能と、サービス提供サーバ70から受けた検証結果をサービス受信部41に送出する機能とをもっている。
【0057】
サービス受信部41は、サービス提供サーバ70による検証結果が真の場合には、サービスの提供要求をサービス提供サーバ70へ送信する機能と、サービス提供サーバ70からサービスを受信する機能とをもっている。
【0058】
耐タンパー装置50は、利用者がグループ証明書の発行の授受や、サービス提供サーバ70へサービスの提供を受けるために、グループに所属している証明をするためのデータを生成するために、本人ならびに第三者にも秘匿する秘密情報を格納し、その秘密情報を用いた演算を行い、結果を利用者端末30に出力する装置である。
【0059】
耐タンパー装置50は、例えば演算機能を有するICカードが使用可能となっており、具体的には図4に示すように、耐タンパー性メモリ51、C1’生成部52、z1生成部53、s1生成部54、C2生成部55、yz生成部56、s3生成部57、z2生成部58、s4生成部59、情報書込部60、証明書出力部61、z3生成部62及びs2生成部63を備えている。
【0060】
ここで、耐タンパー性メモリ51は、耐タンパー性を有し、各部52,55,56等から情報書込部60を介して格納されたシステムパラメータ、グループ公開鍵、グループ証明書、メンバー秘密鍵が記憶されるメモリであり、各部52〜63から読出可能となっている。
【0061】
C1’生成部52は、利用者端末30からシステムパラメータ及びグループ公開鍵を受けると、乱数sxiを生成する機能と、この乱数sxiに基づいてコミットメント元情報C1’を計算する機能と、システムパラメータ及びグループ公開鍵を耐タンパー性メモリ51に格納する機能と、コミットメント元情報C1’を利用者端末30に出力する機能とをもっている。
【0062】
z1生成部53は、利用者端末30からz1生成要求を受けると、乱数r1を生成する機能と、この乱数r1に基づいてz1を計算する機能と、このz1を利用者端末30に出力する機能とをもっている。
【0063】
s1生成部54は、利用者端末30からハッシュ値cを受けると、このハッシュ値cに基づいてs1を演算する機能と、このs1を利用者端末30に出力する機能とをもっている。
【0064】
C2生成部55は、利用者端末30から受けた乱数α,βに基づいて、メンバー秘密鍵xiを計算する機能と、xiの計算過程で得られる値「α・sxi+β」を耐タンパー性メモリ51に格納する機能と、メンバー秘密鍵xiを耐タンパー性メモリ51に格納する機能と、メンバー秘密鍵xiに基づいてコミットメント値C2を計算する機能と、得られたC2を利用者端末30に出力する機能とをもっている。
【0065】
yz生成部56は、利用者端末30から受けたyz生成要求により、耐タンパー性メモリ51を参照し、v,uを算出する機能と、uを耐タンパー性メモリ51に格納する機能と、u,vに基づいてy1,y2を計算する機能と、乱数r2,r3を生成する機能と、この乱数r2,r3に基づいてz2,z3を計算する機能と、以上のように得られたy1,y2,z2,z3を利用者端末30に出力する機能と、y1 を耐タンパー性メモリ51に格納する機能とをもっている。
【0066】
s3生成部57は、利用者端末30から受けたハッシュ値c2,c3に基づいて、s2,s3を計算する機能と、得られたs2,s3を利用者端末30に出力する機能とをもっている。
【0067】
z2生成部58は、利用者端末30からz生成要求を受けると、乱数r1,r5を生成し、z1,z5,z6を計算する機能と、得られたz1,z5,z6を利用者端末30へ返す機能とをもっている。
【0068】
s4生成部59は、利用者端末30から受けたハッシュ値c1,c5に基づいてs1,s5を計算する機能と、このs1,s5を利用者端末30に出力する機能とをもっている。
【0069】
情報書込部60は、各部52,55,56等から受ける情報を耐タンパー性メモリ51に格納する機能をもっている。
【0070】
証明書出力部61は、利用者端末30から受けた証明書要求により、耐タンパー性メモリ51から読出したグループ証明書(Ai,ei,Ei)を利用者端末30に出力する機能をもっている。
【0071】
z3生成部62は、利用者端末30から受けたz生成要求により、乱数r2を生成し、この乱数r2に基づいて、パラメータzを計算する機能と、パラメータzを利用者端末30に出力する機能とをもっている。
【0072】
s2生成部63は、利用者端末30から受けたs2生成要求及びハッシュ値cに基づいて、パラメータs2を生成する機能と、このs2を利用者端末30に出力する機能とをもっている。
【0073】
サービス提供サーバ70は、匿名の利用者の利用者端末30から受けたグループ署名を認証して当該利用者端末30にサービスを提供する機能をもっている。
【0074】
具体的には図5に示すように、サービス提供サーバ70は、システム情報記憶部71、アクセスログ記憶部72、決済情報記憶部73、管理申込部74、サービス部75、グループ署名検証部76、アクセス制御部77、ログ送信部78、決済管理部79及び開示要求部80を備えている。
【0075】
ここで、システム情報記憶部71は、管理申込部74から書込まれたシステムパラメータ及びグループ公開鍵などのシステム情報を記憶するものであり、グループ署名検証部76から読出可能となっている。
【0076】
アクセスログ記憶部72は、アクセス制御部77から書込まれたアクセスログを記憶するものであり、ログ送信部78から読出可能となっている。
【0077】
決済情報記憶部73は、アクセスログと決済結果とが関連付けて記憶されるメモリであり、決済管理部79から読出/書込可能となっている。
【0078】
管理申込部74は、サービス提供者の操作により、属性発行管理申込みを属性発行管理サーバ10に送信する機能と、属性発行管理サーバ10から受けたグループ公開鍵やシステムパラメータをシステム情報記憶部71に格納する機能をもっている。
【0079】
サービス部75は、利用者端末30からのアクセスにより、メニューを利用者端末30に提供する機能と、利用者端末30から受けたサービス要求に含まれるグループIDにより、グループ署名検証部76を起動する機能とをもっている。
【0080】
グループ署名検証部76は、サービス部75から受けたグループIDに基づいて、テンポラリなメッセージ(msg)を利用者端末30へ返す機能と、利用者端末30から受けたグループ署名(c,s1,s2,s3,s4,T1,T2,T3)を検証する機能と、検証結果をアクセス制御部77及び利用者端末30に送信する機能とをもっている。
【0081】
アクセス制御部77は、利用者端末30から提供要求を受けると、グループ署名検証部76による検証結果が真のとき、サービスを利用者端末30へ送信する機能をもっている。
【0082】
ログ送信部78は、定期的に又はサービス提供者の操作により、アクセスログ記憶部72内のアクセスログを属性発行管理サーバ70に送信する機能と、属性発行管理サーバ70からログ送信完了を受けると、送信完了したアクセスログを決済管理部79に送出する機能とをもっている。
【0083】
決済管理部79は、ログ送信部78から受けたアクセスログを決済情報記憶部73に格納する機能と、属性発行管理サーバ70から受けた決済結果に従って決済完了を確認すると、決済情報記憶部73内の送信完了ログに対し、決済完了の旨を書込んで決済処理を終了する機能とをもっている。
【0084】
なお、決済管理部79は、属性発行管理サーバ70から受けた決済結果が決済失敗を示すとき、送信完了ログを指定して決済失敗を開示要求部80に通知する機能と、開示要求部80から受けた利用者情報を決済情報記憶部73に格納する機能とをもっている。
【0085】
開示要求部80は、決済管理部79から受けた通知により、送信完了ログを指定して開示要求を属性発行管理サーバ10に送信する機能と、属性発行管理サーバ10から受けた利用者情報を決済管理部79に出力する機能とをもっている。
【0086】
決済機関装置90は、銀行等の決済機関に用いられ、利用者の口座から決済が可能な装置であり、具体的には、属性発行管理サーバ10から受けた利用者情報及び決済要求に基づいて、利用者の決済処理を実行し、決済結果を属性発行管理サーバ10に返信する機能をもっている。
【0087】
次に、以上のように構成された匿名認証システムの動作を説明する。
まず、属性発行管理サーバ10は、パラメータ生成部13により、システムパラメータを生成し、システム情報記憶部11に格納する。生成したシステムパラメータのうち、秘密にしなければいけない情報は、システム情報記憶部11内で安全に格納されているものとする。
【0088】
属性発行管理サーバ10が生成するシステムパラメータを表1に示す。
【0089】
【表1】
【0090】
また、属性発行管理サーバ10が、サービス提供サーバ70が提供するサービスに対して、グループを構成し、そのグループに対する鍵情報を生成する。生成した鍵情報のうち、グループ公開鍵はサービス提供者に渡し、グループ秘密鍵は属性発行管理サーバ10内で安全に管理され、外部への漏洩はないものとする。
【0091】
具体的には、あるサービス提供者がサービス提供サーバ70を用いて、例えば静止画データや動画データの閲覧サービスを行いたい場合を想定する。なお、サービス提供については、上記のような画像や動画などのマルチメディアデータの提供だけでなく、ネットワークの利用などへも利用できる。
【0092】
また、サービス提供サーバ70は、管理申込部74が属性発行管理申込みを属性発行管理サーバ10に送信する。この属性発行管理申込みは、例えば、サービス提供サーバ70が提供するサービスに対して、サービス提供者が設定するグループに関する情報である。
【0093】
例えば、ある画像Aを閲覧するためには、100円を支払う必要があるが、画像Aと画像Bを閲覧するためには200円を支払う必要がある場合を考える。この場合、画像Aのみを閲覧するグループと、画像A及び画像Bを閲覧するグループとが考えられる。このため、属性発行管理サーバ10は、サービス提供サーバ70からの管理申込みにより、利用者からの申込みに応じた、後述するグループ証明書を発行する契約をする。
【0094】
属性発行管理サーバ10は、管理受付部15がサービス提供サーバ70からの属性発行管理申込みを受けると、この申込みに応じたグループ公開鍵とグループ秘密鍵をグループ鍵生成部14が生成する。
【0095】
ここで、グループ公開鍵及びグループ秘密鍵の生成処理を説明する。
(グループ公開鍵生成処理)
グループ鍵生成部14は、システム情報記憶部11内のシステムパラメータを参照しつつ、次式を満たす素数p,qを選定する。
【0096】
p=2p’+1(p’:素数)
q=2q’+1(q’:素数)
次に、グループ鍵生成部14は、鍵のビット長Lnについて、素数p,qが Ln/2 ビットの自然数かどうかをチェックする。さらに、素数p及びqが2Ln/2−1 以上で且つ2Ln/2−1 以下であることを確認する。
【0097】
続いて、グループ鍵生成部14は、p,q,(p−1)/2,(q−1)/2が全て素数かどうかをチェックする。
【0098】
全て素数の場合、グループ鍵生成部14は、法となる積n=pqを計算する。
【0099】
しかる後、グループ鍵生成部14は、平方剰余QR(n)の生成元(generator)を生成し、この生成元に基づいてQR(n)の要素a,a0,g,hをランダムに選ぶ。
【0100】
さらに、グループ鍵生成部14は、乗法群Zp ’ q ’ *の要素xをランダムに選び、得られた要素xに基づいて、次式のようにyを計算する。
y=gx(mod n)
また、グループ鍵生成部14は、次式のようにmを算出する。
m=((p−1)/2)・((q−1)/2)
しかる後、グループ鍵生成部14は、グループ公開鍵(n,a,a0,g,h,y)及びグループ秘密鍵(p,q,x,m)をシステム情報記憶部11に格納する。以上でグループ公開鍵及びグループ秘密鍵の生成処理が完了する。
なお、グループ公開鍵とグループ秘密鍵は表2に示す通りである。
【0101】
【表2】
【0102】
続いて、管理受付部15は、システム情報記憶部11内のグループ公開鍵のみをサービス提供サーバ70へ送信する。
サービス提供サーバ70は、管理申込部74がこのグループ公開鍵をシステム情報記憶部71に格納する。
【0103】
なお、サービス提供者からの属性発行管理申込みや、属性発行管理サーバ10からのグループ公開鍵の送信は、ネットワーク経由で送信しても良いし、属性発行管理申込みは書面、グループ公開鍵はCD−ROMなどの記録媒体で送付してもよい。ネットワークを用いる場合は、少なくとも属性発行管理申込み時は、SSL(Secure Sockets Layer)などのセキュアな通信が成立しているものとする。
【0104】
次に、これらの準備が整い、利用者が属性発行管理サーバ10へ利用申込みをし、グループ証明書の発行を受ける動作について、図6及び図7を用いて説明する。ここで、属性発行管理サーバ10と利用者端末30とは、ネットワークで接続され、SSLなどのセキュア通信が行われるものとする。なお、SSL通信を行う場合、サーバ認証及びクライアント認証を行うSSL通信が望ましい。
【0105】
また、利用者端末30と耐タンパー装置50とは、例えば耐タンパー装置50がICカードである場合、リーダライタの様な装置により接続されているものとする。もしくは、ブルーツース(Bluetooth)の様な無線通信により利用者端末30(PC)と通信しても良い。この場合、無線通信路は一時的な鍵で通信路が暗号化されていることが望ましい。
【0106】
さて、利用者は、自己が所有する耐タンパー装置50を利用者端末30に挿入する。ここで、耐タンパー装置50は、Java(登録商標)カードの様なマルチアプリケーションに対応したICカードであるとする。
【0107】
利用者端末30は、属性発行管理サーバ10とSSL接続し、属性発行管理サーバ10の要求受付部16からグループ証明書発行可能なサービスのグループ情報及びシステムパラメータを得る(ST1)。
【0108】
利用者端末30は、利用者の操作により、グループ情報から、希望するグループが選択された後、利用者情報が入力される。続いて、利用者端末30は、参加要求部32がこれらグループ選択情報と利用者情報とからなるグループ参加要求を属性発行管理サーバ10へ送信する(ST2)。
【0109】
グループ選択情報は、例えばグループIDである。利用者情報は、氏名、性別、住所、電話番号、生年月日、所属、決済用の口座番号もしくはクレジット番号、などが含まれる。
【0110】
属性発行管理サーバ10では、要求受付部16がこれらグループID及び利用者情報を利用者管理情報として、利用者管理情報記憶部12に格納する。
【0111】
また、要求受付部16は、このグループIDに基づいて、システム情報記憶部11内の対応するグループ公開鍵をチャレンジ生成部17に送る。チャレンジ値の長さを入力として、チャレンジ生成部17でチャレンジ値(以下、challengeともいう)が生成される。チャレンジ値は、0〜2Lc−1の範囲の乱数である。なお、チャレンジ生成部17は、チャレンジ値を生成すると、このチャレンジ値及びグループ公開鍵を利用者端末30へ送信する(ST3)。
【0112】
利用者端末30は、メンバー鍵初期情報生成部33が、チャレンジ値及びグループ公開鍵を受けると、耐タンパー装置50と連携してコミットメント値C1を生成する。
【0113】
コミットメント値C1の生成処理を以下に示す。
【0114】
(コミットメント値C1生成処理)
メンバー鍵初期情報生成部33は、引数として与えられたグループ公開鍵をメンバ変数としてメモリ31に格納する。なお、既にメンバ変数にグループ公開鍵があっても、引数として与えられたものを利用する。
【0115】
メンバー鍵初期情報生成部33は、システムパラメータ及びグループ公開鍵を耐タンパー装置50内のC1’生成部52に入力する(ST4)。
【0116】
C1’生成部52では、システムパラメータ及びグループ公開鍵を受けると、乱数sxi(0<sxi<2λ 2)を生成し、この乱数sxiに基づいて次式のようにコミットメント元情報C1’を計算する。
【0117】
C1’=gsxi(mod n)
しかる後、C1’生成部では、システムパラメータ及びグループ公開鍵を耐タンパー性メモリ51に格納し、コミットメント元情報C1’を利用者端末30のメンバー鍵初期情報生成部33へ出力する(ST5)。
【0118】
メンバー鍵初期情報生成部33は、コミットメント元情報C1’を受けると、乱数sr(0<sr<n2)を生成する。なお、生成した乱数srは、後で利用するため、メモリ31内で保持される。
【0119】
続いて、メンバー鍵初期情報生成部33は、コミットメント値C1を次式のように求め、このC1を後で利用するため、メモリ31に格納する。
C1=C1’・hsr(mod n)
以上でコミットメント値C1生成処理が完了する。
【0120】
次に、第1証明情報生成部34では、C1= gsxi・hsr(mod n)のsxiとsrとを知っていることの第1証明情報を生成する。
【0121】
以下、第1の証明情報の生成処理について説明する。
(第1証明情報生成処理)
第1証明情報生成部34では、z1生成要求を耐タンパー装置50のz1生成部53へ入力する(ST6)。
【0122】
z1生成部53は、以下のように乱数r1を生成し、この乱数r1に基づいてz1を計算し、このz1を第1証明情報生成部34に出力する(ST7)。
【0123】
r1:−2( ζ 4+1)<r1<2( ζ 4+1)
z1=gr1(mod n)
第1証明情報生成部34は、以下のように乱数r2を生成し、この乱数r2に基づいてz2を計算する。
r2:−2( ζ 4+1)<r2 <2( ζ 4+1)
z2=hr2(mod n)
しかる後、第1証明情報生成部34は、次式のようにzを計算する。
z= z1・z2(mod n)
また、第1証明情報生成部34は、ハッシュ値cを次式のように計算する。
c=H(g‖h‖C1‖z‖challenge)
但し、H(m):メッセージmに対するハッシュ値の演算。
【0124】
さらに、第1証明情報生成部34は、ハッシュ値cを耐タンパー装置50のs1生成部54へ入力する(ST8)。
【0125】
s1生成部54では、次式のようにs1を演算し、このs1を第1証明情報生成部34へ返す(ST9)。
s1=r1−c・sxi
第1証明情報生成部34は、次式のようにs2を計算する。
s2=r2−c・sr
しかる後、第1証明情報生成部34は、第1の証明情報proofA=(c,s1,s2)とコミットメント値C1とを属性発行管理サーバ10へ送信する(ST10)。
以上で第1証明情報生成処理が完了する。
【0126】
属性発行管理サーバ10は、第1の証明情報proofA=(c,s1,s2)とコミットメント値C1とを受けると、C1=gsxi・hsr(mod n)のsxiとsrを利用者端末30が知っている旨の証明を検証する。
【0127】
具体的には、第1証明情報検証部18が、前述したチャレンジ値及び受信したproofA、C1に基づいて以下の処理を実行する。
【0128】
(第1証明情報検証処理)
第1証明情報検証部18は、後で利用するため、コミットメント値C1を属性発行管理サーバ10のシステム情報記憶部11に格納する。
【0129】
第1証明情報検証部18は、次式のようにz’を計算する。
z’=C1 c・gs1・hs2 (mod n)
続いて、第1証明情報検証部18は、得られたz’を用い、次式のようにハッシュ値c’を計算する。
c’=H(g‖h‖C1‖z’‖challenge)
このとき、第1証明情報検証部18は、c=c’の場合に真(true)を第1検証結果とし、他の場合に偽(false)を第1検証結果としてメンバー秘密鍵乱数作成部19に出力する。
以上で第1証明情報検証処理が完了する。
メンバー秘密鍵乱数生成部19は、第1検証結果が真のとき、メンバー秘密鍵を構成する乱数αとβを生成する。なお、第1検証結果が偽のとき、検証失敗を利用者端末30へ返す。
【0130】
ここで、メンバー秘密鍵の乱数αとβの生成処理は、以下の通りである。
(メンバー秘密鍵乱数生成処理)
メンバー秘密鍵乱数生成部19は、C1が平方剰余であるかを検証し、平方剰余のとき、乱数α,β(0<α,β<2λ 2 )を生成し、この乱数α,βを利用者端末30へ返す(ST11)。なお、この乱数α,βは後で用いられるため、属性発行管理サーバ10のシステム情報記憶部11に書込まれる。
【0131】
以上でメンバー秘密鍵乱数生成処理が完了する。
【0132】
利用者端末30は、乱数αとβを受けると、後で利用するため、乱数入力部35が乱数αをメモリ31に保持する。しかる後、利用者端末30は、乱数入力部35が乱数α,βを耐タンパー装置50のC2生成部55に入力し(ST12)、耐タンパー装置50にメンバー秘密鍵xiとコミットメント値C2とを計算させる。これらの計算は、以下の処理により行う。
【0133】
(メンバー秘密鍵生成処理)
耐タンパー装置50においては、乱数α,βに基づいて、C2生成部55が次式のようにメンバー秘密鍵xiを計算する。
xi=2λ 1 +(α・sxi+β(mod 2λ 2))
なお、この計算過程で得られる値「α・sxi+β」は、後で利用するため、耐タンパー性メモリ51に保持される。また、C2生成部55は、演算結果のメンバー秘密鍵xiを耐タンパー性メモリ51に格納する。なお、このメンバー秘密鍵xiは、耐タンパー装置50の外部に出されることはない。
【0134】
続いて、C2生成部55は、メンバー秘密鍵xiに基づいて、次式のようにコミットメント値C2を計算し、得られたC2を利用者端末30に出力する(ST13)。
C2=axi (mod n)
以上でメンバー秘密鍵生成処理が完了する。
【0135】
利用者端末30は、コミットメント値C2を受けると、後で利用するために、C2をメモリ31に保持する。
次に、利用者端末30は、メンバー秘密鍵xi=logaC2が、コミットメント値C1及び乱数α,βから正しく計算されていることの知識証明を生成するため、第2証明情報生成部36において、第2の証明情報を生成する。
【0136】
第2の証明情報の生成処理を以下に示す。
(第2証明情報生成処理)
第2証明情報生成部36は、以下を満たすu,v,wを計算するため、yz生成要求を耐タンパー装置50のyz生成部56へ送る(ST14)。
【0137】
yz生成部56は、yz生成要求により、耐タンパー性メモリ51内の値「α・sxi+β」に基づいて、次式のようにv,uを算出する。
【0138】
α・sxi+β= v・2λ 2 + u
−2λ 2+1 <u<2λ 2+1
具体的には、値「α・sxi+ β」の下位 λ2 ビットを uとし、残りの上位ビットを v とする。
【0139】
また、後で用いるため、uを耐タンパー性メモリ51に保持しておく。
【0140】
続いて、yz生成部56は、次式のようにy1,y2を計算する。
【0141】
y1=gu (mod n)
y2=gv (mod n)
また、yz生成部56は、次式を満たす乱数r2,r3を生成する。
r2: −2( ζ 2+1)<r2<2( ζ 2+1)
r3:−2( ζ 4+1)<r3<2( ζ 4+1)
さらに、yz生成部56は、この乱数r2,r3に基づいて、次式のようにz2,z3を計算する。
z2=gr2 (mod n)
z3=gr3 (mod n)
しかる後、yz生成部56は、以上のように得られたy1,y2,z2,z3を利用者端末30の第2証明情報生成部36に出力する(ST15)。なお、後で利用するため y1 を耐タンパー性メモリ51内に保持しておく。
【0142】
一方、第2証明情報生成部36は、次式のようにwを計算し、得られたwに基づいてy3を計算する。
【0143】
w=α・sr
y3=hw(mod n)
また、第2証明情報生成部36は、次式を満たす乱数r4を生成する。
r4:−2( ζ 5+1)<r4<2( ζ 5+1)
第2証明情報生成部36は、得られた乱数r4に基づいて、次式のようにz4を計算する。
【0144】
z4=hr4 (mod n)
次に、第2証明情報生成部36は、以下のハッシュ値c2〜c4を計算する。
【0145】
c2= H(y1‖g‖z2‖challenge)
c3= H(y2‖g‖z3‖challenge)
c4= H(y3‖h‖z4‖challenge)
また、第2証明情報生成部36は、次式のようにs4を計算する。
s4=r4−c4・w
しかる後、第2証明情報生成部36は、ハッシュ値c2,c3を耐タンパー装置50に入力する(ST17)。
【0146】
耐タンパー装置50では、s3生成部57がこのハッシュ値c2,c3に基づいて、次式のようにs2,s3を計算し、得られたs2,s3を利用者端末30に出力する(ST18)。
s2=r2−c2・u
s3=r3−c3・v
利用者端末30では、第2証明情報生成部36が、以上のように生成されたproofB=(y1,y2,y3,c2,c3,c4,s2,s3,s4 )を、第2証明情報として属性発行管理サーバ10へ送信する(ST18)。
【0147】
以上で第2証明情報生成処理が完了する。
次に、属性発行管理サーバ10では、メンバー秘密鍵xi=logaC2がコミットメント値C1及び乱数α,βから正しく計算されていることの証明を検証するため、第2証明情報検証部20が第2証明情報proofBと生成したチャレンジ値(challenge)とから、以下の検証処理を実行する。
【0148】
(第2証明情報検証処理)
属性発行管理サーバ10では、第2証明情報検証部20が第2証明情報proofBを受けると、後で利用するため、y1をシステム情報記憶部11に保持しておく。
【0149】
次に、第2証明情報検証部20は、以下のz2’〜z4’を計算する。
z2’=y1 c2・gs2 (mod n)
z3’=y2 c3・gs3 (mod n)
z4’=y3 c3・hs4 (mod n)
また、第2証明情報検証部20は、以下のハッシュ値c2’〜c4’を計算する。
c2’= H(y1‖g‖z2’‖challenge)
c3’= H(y2‖g‖z3’‖challenge)
c4’= H(y3‖h‖z4’‖challenge)
このとき、第2証明情報検証部20は、c2=c2’とc3=c3’とc4=c4’とを満たし、且つ、以下の(1)式を満たす場合には、検証結果の応答(ans)として真(true)を、他の場合には偽(false)を利用者端末30の第3証明情報生成部37へ送る(ST19)。
【0150】
【数1】
【0151】
以上で第2証明情報検証処理が完了する。
利用者端末30では、応答が偽のとき、その旨を利用者へ表示する。
【0152】
応答が真のとき、第3証明情報生成部37は、メンバー秘密鍵xi=logaC2がコミットメント値C1及び乱数α,βから正しく計算されていることの知識証明を生成するため、以下の処理を実行する。
【0153】
(第3証明情報生成処理)
利用者端末30では、第3証明情報生成部37が、応答が真のとき、チャレンジ値(challenge)を入力として、z生成要求を耐タンパー装置50のz2生成部58へ入力する(ST20)。
【0154】
z2生成部58は、以下のように、乱数r1,r5を生成し、z1,z5,z6を計算する。
r1:−2( ζ 2+1)<r1<2( ζ 2+1)
r5:−2( ζ 4+1)<r5<2( ζ 4+1)
z1=ar1 (mod n)
z5=ar5 (mod n)
z6=gr5 (mod n)
しかる後、z2生成部58は、得られたz1,z5,z6を利用者端末30の第3証明情報生成部37へ返す(ST21)。
【0155】
第3証明情報生成部37は、z1,z5,z6を受け取ると、以下のハッシュ値c1,c5を計算する。
c1=H(C2‖a‖z1‖challenge)
【数2】
【0156】
続いて、第3証明情報生成部37は、得られたハッシュ値c1,c5を、耐タンパー装置50のs4生成部59へ入力する(ST22)。
s4生成部59は、以下のようにs1,s5を計算して利用者端末30の第3証明情報生成部37へ出力する(ST23)。なお、uは、第2証明情報生成処理で保持しておいた値を用いる。
【0157】
s1=r1−c1(xi−2λ 1)
s5=r5−c5・u
第3証明情報生成部37は、s1,s5を受けると、メモリ31内のコミットメント値C2、及び第3証明情報proofC=(c1,c5,s1,s5 )を属性発行管理サーバ10に送信する(ST24)。
【0158】
以上で第3証明情報生成処理が完了する。
属性発行管理サーバ10では、C2及びproofCを受けると、メンバ秘密鍵xi=logaC2がコミットメント値C1及び乱数α,βから正しく計算されていることの証明を検証するため、第3証明情報検証部21において検証する。
【0159】
入力は、生成したchallenge、及び受信したC2とproofCである。
【0160】
(第3証明情報検証処理)
第3証明情報検証部21は、後で利用するため、コミットメント値C2をシステム情報記憶部11に格納する。
【0161】
また、第3証明情報検証部21は、以下のように、z1’,z5’,z6’を計算する。
【0162】
【数3】
【0163】
z5’=(C2)c5・as5 (mod n)
z6’=y1 c5・gs5 (mod n)
さらに、第3証明情報検証部21は、以下のように、ハッシュ値c1,c5を計算する。
【0164】
c1= H(C2‖a‖z1’‖challenge)
【数4】
【0165】
このとき、第3証明情報検証部21は、c1=c1’と、c5=c5’とを満たす場合には、第3検証結果を真とし、他の場合には偽として、グループ証明書生成部22に出力する。
【0166】
以上で第3証明情報検証処理が完了する。
グループ証明書生成部22は、第3検証結果が偽の場合、処理を中止して検証が失敗した旨を利用者端末30へ通知し、利用者端末30はモニター等に表示し利用者に伝える。
【0167】
第3検証結果が真の場合、グループ証明書生成部22は、利用者からのメンバー鍵の正当性を検証し、それに基づいたグループ証明書(Ai,ei,Ei)を発行する。
まず以下の処理に従って、範囲Γのランダムな素数eiを生成する。
(eiの生成処理)
グループ証明書生成部22は、システムパラメータを入力とし、0〜2ν 2−1の範囲の乱数rを生成する。また、グループ証明書生成部22は、乱数rに付す正負の符号をランダムに選択する。
【0168】
しかる後、グループ証明書生成部22は、選択した符号に従って次式のいずれかを計算する。
【0169】
2ν 1 +r
2ν 1 −r
この計算結果が素数でなければ、再度、乱数rの生成から処理をし直す。一方、計算結果が素数ならばその素数をeiとして出力する。
【0170】
上記eiが生成できたら、続いてグループ証明書の生成処理を実行する。
【0171】
(グループ証明書生成処理)
グループ証明書生成部22は、コミットメント値C2が平方剰余であるかを検証する。C2が平方剰余であれば、グループ証明書生成部22は、以下のように、σi,Ai,Eiを計算する。
σi=ei −1 (mod 2m)
Ai=(C2・a0)σ i (mod n)
Ei=gei (mod n)
しかる後、グループ証明書生成部22は、得られた(Ai,ei,Ei)をグループ証明書として出力し、利用者端末30へ送信する(ST25)。
以上により、グループ証明書生成処理が完了する。
【0172】
利用者端末30は、グループ証明書を受信すると、グループ証明書検証部38において、以下の処理に従ってグループ証明書(Ai,ei,Ei)の正当性を検証する。
【0173】
(グループ証明書検証処理)
グループ証明書検証部38は、以下のように、b1,b2を計算し、b1=b2となるかを検証する。
b1=C2・a0 (mod n)
b2=Ai ei (mod n)
b1=b2となる場合には正当であるので、グループ証明書検証部38は、グループ証明書として(Ai,ei,Ei)を耐タンパー装置50に格納し(ST26)、完了通知(ack)を属性発行管理サーバ10に送信する(ST27)。
【0174】
属性発行管理サーバ10では、この完了通知により、利用者情報管理部23がグループ証明書(Ai,ei,Ei)を利用者管理情報記憶部12に格納し、最終結果(OK/NG)を利用者端末30に送信する(ST28)。
【0175】
以上が終了すると、利用者が匿名でサービス提供者からサービスを受けられる準備が整う。
【0176】
次に、利用者がサービスを受ける場合の処理について、図8及び図9を用いて説明する。
利用者端末30は、利用者の操作により、サービス要求部39からサービス提供サーバ70へアクセスし、サービス提供サーバ70のサービス部75が提供するメニューを受信し(ST31)、このメニューを表示する。
【0177】
利用者端末30は、利用者の操作により、メニューからサービスを選択し、選択内容をサービス要求としてサービス提供サーバ70へ返す(ST32)。
【0178】
なお、利用者端末30とサービス提供サーバ70との間の通信は、利用者の匿名性を出来るだけ確保するため、クライアント認証の無いサーバ認証によるSSLなどのセキュアな通信を行うものとする。
【0179】
また、サービス要求部39によるサービスの選択は、例えば利用者端末30にあるWebブラウザを用いるWebサービスにより提供されても良い。
【0180】
この利用者端末30とサービス提供サーバ70との間の通信は、日時(Timestamp)、セッションIDにより管理され、ログとして保存される。
【0181】
さて、サービス提供サーバ70は、サービス要求に含まれるグループIDにより、提供するサービスが何であるかを判断し、利用者が権限グループに所属していることを確認するため、テンポラリなメッセージ(msg)を利用者端末30へ返す(ST33)。
【0182】
利用者端末30は、メッセージを受信すると、グループ署名生成部40において、以下の手順のようにグループ署名を生成する。
(グループ署名生成処理)
グループ署名生成部40は、証明書要求を耐タンパー装置50へ入力する(ST34)。耐タンパー装置50では、この証明書要求により、証明書出力部61が耐タンパー性メモリ51から読出したグループ証明書(Ai,ei,Ei)をグループ署名生成部40に出力する(ST35)。
【0183】
また、グループ署名生成部40は、z生成要求を耐タンパー装置50のz3生成部62へ入力する(ST36)。
【0184】
z3生成部62は、z生成要求により、以下のように乱数r2を生成し、この乱数r2に基づいて、パラメータzを計算する。
【0185】
r2: −2( ζ 2+1)<r2<2( ζ 2+1)
z=ar2 (mod n)
しかる後、z3生成部62は、パラメータzをグループ署名生成部40に出力する(ST37)。
【0186】
グループ署名生成部40は、乱数w (0<w<n) を生成し、この乱数wに基づいて、(T1,T2,T3) を以下のように計算する。
【0187】
T1=Ai・yw (mod n)
T2=gw (mod n)
T3=Ei・hw (mod n)
また、グループ署名生成部40は、3つの乱数(r1,r3,r4)を以下の条件で生成する。
r1:−2( ζ 1+1) < r1 < 2( ζ 1+1)
r3:−2( ζ 3+1) < r3 < 2( ζ 3+1)
r4:−2( ζ 4+1) < r4 < 2( ζ 4+1)
さらに、グループ署名生成部40は、後述するハッシュ値cに用いる値(d1,d2,d3,d4)を以下のように計算する。
d1=T1 r1(zyr3)−1 (mod n)
d2=T2 r1(gr3)−1 (mod n)
d3=gr4 (mod n)
d4=gr1・hr4(mod n)
しかる後、グループ署名生成部40は、ハッシュ値cを次式のように計算する。
c= H(g‖h‖y‖a0‖a‖T1‖T2‖T3‖d1‖d2‖d3‖d4‖msg )
続いて、グループ署名生成部40は、このハッシュ値cを用い、(s1,s3,s4)を以下のように計算する。
【0188】
s1=r1−c(ei−2ν 1)
s3=r3−c・ei・w
s4=r4−c・w
さらに、グループ署名生成部40は、s2生成要求及びハッシュ値cを耐タンパー装置50に入力する(ST38)。
【0189】
耐タンパー装置50では、s2生成部63がこのハッシュ値cに基づいて、次式のようにパラメータs2を生成し、このs2をグループ署名生成部40に出力する(ST39)。
【0190】
s2=r2−c(xi−2λ 1)
以上により、グループ署名生成部40は、得られた(c,s1,s2,s3,s4,T1,T2,T3)をグループ署名として出力する。
【0191】
グループ署名(c,s1,s2,s3,s4,T1,T2,T3)は、サービス提供サーバ70へ送信される(ST40)。
サービス提供サーバ70では、グループ署名検証部76により、受信したグループ署名が正当であるか検証する。検証処理は、以下の手順で行う。
【0192】
(グループ署名検証処理)
グループ署名検証部76は、受信したグループ署名(c,s1,s2,s3,s4,T1,T2,T3)、生成したメッセージ(msg)、グループ公開鍵を入力とし、以下のように、s1,s2,s3,s4の範囲を検証する。範囲から逸脱したものが1つでもあれば、偽(false)を示す検証結果を出力する。
範囲検証: −2( ζ 1+2)<s1<2( ζ 1+2)
範囲検証: −2( ζ 2+2)<s2<2( ζ 2+2)
範囲検証: −2( ζ 3+2)<s3<2( ζ 3+2)
範囲検証: −2( ζ 4+2)<s4<2( ζ 4+2)
グループ署名検証部76は、各s1〜s4の検証結果が真の場合、後述するハッシュ値c’に用いる値(d1’,d2’,d3’,d4’)を以下のように計算する。
【0193】
【数5】
【0194】
次に、グループ署名検証部76は、これらd1’〜d4’に基づいて、次式のようにハッシュ値c’を計算する。
c’=H(g‖h‖y‖a0‖a‖T1‖T2‖T3‖d1’‖d2’‖d3’‖d4’‖msg )
しかる後、グループ署名検証部76は、c=c’の場合には真(true)を検証結果(ans)として出力し、他の場合には偽(false)を検証結果(ans)としてアクセス制御部77に出力する一方、利用者端末30へ送信する(ST41)。
利用者端末30は、受信した検証結果が偽の場合には処理を中止し、真の場合には、サービス受信部41が、サービスの提供要求をサービス提供サーバ70へ送信する(ST42)。
【0195】
サービス提供サーバ70は、提供要求を受けると、アクセス制御部77が検証結果の真である旨を確認し、サービスを利用者端末30へ送信する(ST43)。
【0196】
また、サービス提供サーバ70は、アクセス制御部77が、グループID,msg,Timestamp,セッションID,グループ署名といった情報をログとしてアクセスログ記憶部72に格納しておく。
【0197】
最後に、利用者への提供サービスに対し、例えば決済する場合又は不正を確認する場合のように、利用者を開示する場合の処理について、図10及び図11を用いて説明する。ここで、利用者を開示する処理は、アクセスログに含まれるグループ署名からグループ証明書の一部Aiを抽出する処理に相当する。
【0198】
なお、サービス提供サーバ70と属性発行管理サーバ10との通信は、SSLなどのセキュアな通信が行われることが好ましい。
【0199】
属性発行管理サーバ10は、サービス提供サーバ70から、アクセスログを受け取り(ST51)、ログ送信完了をサービス提供サーバ70に通知した後(ST52)、グループ署名のオープン処理を行う。
【0200】
(グループ署名オープン処理)
グループ署名オープン部24は、以下のように、bを計算し、このbに基づいて、Aiを計算する。
b=T2 x (mod n)
Ai=T1・b−1 (mod n)
しかる後、グループ署名オープン部24は、得られたAiから利用者情報を抽出し、この利用者情報を決済処理部25に送出する。
【0201】
決済処理部25は、この利用者情報に基づいて、決済要求を決済機関装置90に送信する(ST53)。決済機関装置90は、この決済要求に従って決済処理を実行し、決済結果を属性発行管理サーバ10に返信する(ST54)。
【0202】
属性発行管理サーバ10では、決済処理部25がこの決済結果を受けると、利用者を特定できる情報を削除して利用者を匿名とした決済結果(例、OK/NG)を作成し、この匿名の決済結果をサービス提供サーバ70に通知する(ST55)。
【0203】
サービス提供サーバ70では、決済管理部79がこの決済結果に従って決済完了を確認すると、決済情報記憶部73内の送信完了ログに対し、決済完了の旨を書込んで決済処理を終了する。
但し、ステップST55で受けた決済結果が決済失敗を示すとき、決済管理部79は、送信完了ログを指定して決済失敗を開示要求部80に通知する。
開示要求部80は、この通知により、送信完了ログを指定して開示要求を属性発行管理サーバ10に送信する(ST56)。属性発行管理サーバ10では、グループ署名オープン部24が前述同様に、送信完了ログから利用者情報を抽出し、この利用者情報をサービス提供サーバ70に返信する(ST57)。
【0204】
サービス提供サーバ70では、この利用者情報を決済管理部79が決済情報記憶部73に格納する。以下、この利用者情報は、サービス提供者の図示しない端末等から読出され、適宜、決済の催促などに用いられる。
上述したように本実施形態によれば、グループ署名方式を用いて利用者が権限グループに所属する旨をサービス提供サーバ70に証明することにより、利用者の個人情報をサービス提供者が管理する必要が無いので、サービス提供者による個人情報の管理の負担を軽減できると共に、権限の証明に不要な個人情報をサービス提供者から保護することができる。
【0205】
これに加え、利用者端末30に保持される耐タンパー装置50を設け、この耐タンパー装置50内で秘密情報としてのメンバー秘密鍵xiを生成し、且つメンバー秘密鍵xiによる演算を実行するので、利用者端末30に秘密情報を漏洩させずに実現できる。さらに、秘密情報を漏洩させないため、例えば秘密情報のコピーを不可として不正な利用を阻止でき、セキュリティ性を向上させることができる。
【0206】
さらに、耐タンパー装置50が着脱自在であるため、例えば会社の利用者端末301に装着してサービス提供を受けた後、耐タンパー装置50を持ち帰り、自宅の利用者端末302にてサービス提供を受ける等というように、異なる利用者端末301,302でそれぞれサービス提供を受けることができるので、複数の利用者端末を所有する利用者に対し、利便性を向上させることができる。
【0207】
(他の実施形態)
なお、上記実施形態では、第2証明情報(proofB)と第3証明情報(proofC)とを別々に送信した場合について説明したが、これに限らず、図12に示すように、図7のステップST19,ST20を省略し、図7のステップST24において、第2証明情報(proofB)を併せて送信するステップST24xを設け、第2証明情報(proofB)と第3証明情報(proofC)とを同時に送信する場合であっても、本発明を同様に実施して同様の効果を得ることができる。この場合、第2証明情報検証部20による第2証明情報検証処理は、ステップST24xにより第2証明情報(proofB)を受信した後で行われることは言うまでもない。
【0208】
また、この場合、第2証明情報生成部36及び第3証明情報生成部37は、属性発行管理サーバ10の段階的な検証による中断が無く、第2証明情報と第3証明情報との生成処理を連続的に実行する。同様に、第2証明情報検証部20及び第3証明情報検証部21は、利用者端末30の段階的な生成による中断が無く、第2証明情報と第3証明情報との検証処理を連続的に実行する。
【0209】
また、上記各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【0210】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【0211】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行しても良い。
【0212】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【0213】
また、記憶媒体は1つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【0214】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【0215】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【0216】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【0217】
【発明の効果】
以上説明したように本発明によれば、利用者装置からの秘密情報の漏洩を阻止できる。また、複数の利用者端末を所有する利用者に対し、利便性を向上できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る匿名認証システムの構成を示す模式図である。
【図2】同実施形態における属性発行管理サーバの構成を示す模式図である。
【図3】同実施形態における利用者端末の構成を示す模式図である。
【図4】同実施形態における耐タンパー装置の構成を示す模式図である。
【図5】同実施形態におけるサービス提供サーバの構成を示す模式図である。
【図6】同実施形態における動作を説明するための模式図である。
【図7】同実施形態における動作を説明するためのシーケンス図である。
【図8】同実施形態における動作を説明するための模式図である。
【図9】同実施形態における動作を説明するためのシーケンス図である。
【図10】同実施形態における動作を説明するための模式図である。
【図11】同実施形態における動作を説明するためのシーケンス図である。
【図12】本発明の他の実施形態を説明するためのシーケンス図である。
【符号の説明】
属性発行管理サーバ10、システム情報記憶部11、利用者管理情報記憶部12、パラメータ生成部13、グループ鍵生成部14、管理受付部15、要求受付部16、チャレンジ生成部17、第1証明情報検証部18、メンバー秘密鍵乱数生成部19、第2証明情報検証部20、第3証明情報検証部21、グループ証明書生成部22、利用者情報管理部23、グループ署名オープン部24、決済処理部25、利用者端末30、メモリ31、参加要求部32、メンバー鍵初期情報生成部33、第1証明情報生成部34、乱数入力部35、第2証明情報生成部36、第3証明情報生成部37、グループ証明書検証部38、サービス要求部39、グループ署名生成部40、サービス受信部41、耐タンパー装置50、耐タンパー性メモリ51、C1’生成部52、z1生成部53、s1生成部54、C2生成部55、yz生成部56、s3生成部57、z2生成部58、s4生成部59、情報書込部60、証明書出力部61、z3生成部62、s2生成部63、サービス提供サーバ70、システム情報記憶部71、アクセスログ記憶部72、決済情報記憶部73、管理申込部74、サービス部75、グループ署名検証部76、アクセス制御部77、ログ送信部78、決済管理部79、開示要求部80、決済機関装置90。
Claims (9)
- グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者装置から受けたグループ署名を認証して当該利用者装置にサービスを提供するサービス提供装置とを備えた匿名認証システムであって、
前記利用者装置は、
前記グループ管理装置及びサービス提供者装置と通信可能な利用者端末と、
前記利用者端末に着脱自在に保持され、前記権限グループに所属する際に、前記利用者端末を介して前記管理装置から受けた乱数(α,β)により秘密情報(xi)を生成して格納し且つ前記利用者端末を介して前記管理装置から受けたグループ証明書情報を格納し、前記サービス提供を受ける際に、前記利用者端末にてグループ署名の生成に用いられる前記グループ証明書情報と前記秘密情報(xi)による演算結果(s2)とを個別に前記利用者端末に出力する耐タンパー装置と、
を備えたことを特徴とする匿名認証システム。 - グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者端末から受けたグループ署名を認証して当該利用者端末にサービスを提供するサービス提供装置とを備えた匿名認証システムに用いられ、前記利用者に携帯される耐タンパー装置を着脱自在に保持可能な利用者端末に用いられるプログラムであって、
前記利用者端末のコンピュータを、
前記権限グループに所属する際に、前記管理装置から受けたシステムパラメータ及びグループ公開鍵をメモリに格納すると共に、前記耐タンパー装置に入力する手段、
前記システムパラメータに基づいてメンバー鍵初期情報(sr)を生成する手段、
前記システムパラメータ、前記グループ公開鍵及び前記メンバー鍵初期情報(sr)と前記耐タンパー装置から受けるコミットメント元情報(C1’)とに基づいて、第1コミットメント値(C1)を生成する手段、
前記第1コミットメント値の生成に用いられたメンバー鍵初期情報(sr)と前記コミットメント元情報(C1’)の生成に用いられた乱数(sxi)との知識を有することを証明するための第1証明情報(proofA)を生成する手段、
前記第1証明情報(proofA)及び第1コミットメント値(C1)を前記管理装置に送信する手段、
この送信に応じて前記管理装置から受けた乱数(α,β)を前記耐タンパー装置に入力する手段、
前記乱数(α,β,sxi)により耐タンパー装置内で生成された秘密情報(xi)の離散対数である第2コミットメント値(C2)を前記耐タンパー装置から受ける手段、
前記第2コミットメント値及び前記秘密情報が正しく計算されたことを証明するための第2証明情報(proofB)を生成し、得られた第2の証明情報を前記管理装置に送信する手段、
この送信に応じて前記管理装置から受けた検証結果が真のとき、前記第2コミットメント値及び前記秘密情報が正しく計算されたことを証明するための第3証明情報(proofC)を生成する手段、
前記第3証明情報(proofC)及び前記第2コミットメント値(C2)を前記管理装置に送信する手段、
として機能させるためのプログラム。 - 請求項2に記載のプログラムにおいて、
前記利用者端末のコンピュータを、
前記第3証明情報(proofC)及び前記第2コミットメント値(C2)の送信に応じて前記管理装置からグループ証明書を受信すると、このグループ証明書を前記第2コミットメント値(C2)に基づいて検証し、検証結果が真のとき、当該グループ証明書情報を前記耐タンパー装置に入力するグループ証明書検証手段、
として機能させるためのプログラム。 - グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者端末から受けたグループ署名を認証して当該利用者端末にサービスを提供するサービス提供装置とを備えた匿名認証システムに用いられる前記利用者端末に着脱自在に保持される耐タンパー装置であって、
前記権限グループに所属する際に、前記利用者端末から入力されたシステムパラメータ及びグループ公開鍵を耐タンパー性メモリに格納する手段と、
前記システムパラメータに基づいて乱数(sxi)を生成し、この乱数と前記グループ公開鍵に基づいて第1コミットメント元情報(C1’)を生成し、この第1コミットメント元情報を前記利用者端末に出力する手段と、
前記利用者端末から入力されたハッシュ値(c)及び前記生成した乱数(sxi)に基づいて、第1証明情報(proofA)の一部となる演算結果(s1)を生成し、この演算結果を前記利用者端末に出力する手段と、
前記利用者端末から入力された乱数(α,β)及び前記生成した乱数(sxi)に基づいて秘密情報(xi)を生成し、得られた秘密情報の離散対数である第2コミットメント値(C2)を生成する手段と、
前記秘密情報の生成過程で得られる値(α・sxi+β)の上位ビット(v)及び下位ビット(u)に基づいて、第2証明情報(proofB)の一部となる演算結果(y1,y2)を生成し、この演算結果を前記利用者端末に出力する手段と、
前記利用者端末からハッシュ値(c1,c5)が入力されると、前記秘密情報(xi)及び前記下位ビット(u)に基づいて、第3証明情報(proofC)の一部となる演算結果(s1,s5)を生成し、この演算結果を前記利用者端末に出力する手段と、
を備えたことを特徴とする耐タンパー装置。 - 請求項4に記載の耐タンパー装置において、
前記利用者端末から入力されるグループ証明書を前記耐タンパー性メモリに格納する手段、を備えたことを特徴とする耐タンパー装置。 - グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者端末から受けたグループ署名を認証して当該利用者端末にサービスを提供するサービス提供装置とを備えた匿名認証システムに用いられ、前記利用者端末に着脱自在に保持される耐タンパー装置に用いられるプログラムであって、
前記耐タンパー装置のコンピュータを、
前記権限グループに所属する際に、前記利用者端末から入力されたシステムパラメータ及びグループ公開鍵を耐タンパー性メモリに格納する手段、
前記システムパラメータに基づいて乱数(sxi)を生成し、この乱数と前記グループ公開鍵に基づいて第1コミットメント元情報(C1’)を生成し、この第1コミットメント元情報を前記利用者端末に出力する手段、
前記利用者端末から入力されたハッシュ値(c)及び前記生成した乱数(sxi)に基づいて、第1証明情報(proofA)の一部となる演算結果(s1)を生成し、この演算結果を前記利用者端末に出力する手段、
前記利用者端末から入力された乱数(α,β)及び前記生成した乱数(sxi)に基づいて秘密情報(xi)を生成し、得られた秘密情報の離散対数である第2コミットメント値(C2)を生成する手段、
前記秘密情報の生成過程で得られる値(α・sxi+β)の上位ビット(v)及び下位ビット(u)に基づいて、第2証明情報(proofB)の一部となる演算結果(y1,y2)を生成し、この演算結果を前記利用者端末に出力する手段、
前記利用者端末からハッシュ値(c1,c5)が入力されると、前記秘密情報(xi)及び前記下位ビット(u)に基づいて、第3証明情報(proofC)の一部となる演算結果(s1,s5)を生成し、この演算結果を前記利用者端末に出力する手段、
として機能させるためのプログラム。 - 請求項6に記載のプログラムにおいて、
前記耐タンパー装置のコンピュータを、
前記利用者端末から入力されるグループ証明書を前記耐タンパー性メモリに格納する手段、として機能させるためのプログラム。 - グループ署名方式を用いてサービス提供を受ける権限グループに所属する利用者を管理する管理装置と、匿名の利用者の利用者端末から受けたグループ署名を認証して当該利用者端末にサービスを提供するサービス提供装置とを備えた匿名認証システムに用いられ、前記利用者に携帯される耐タンパー装置を着脱自在に保持可能な利用者端末に用いられるプログラムであって、
前記利用者端末のコンピュータを、
前記権限グループに所属する際に、前記管理装置から受けたシステムパラメータ及びグループ公開鍵をメモリに格納すると共に、前記耐タンパー装置に入力する手段、
前記システムパラメータに基づいてメンバー鍵初期情報(sr)を生成する手段、
前記システムパラメータ、前記グループ公開鍵及び前記メンバー鍵初期情報(sr)と前記耐タンパー装置から受けるコミットメント元情報(C1’)とに基づいて、第1コミットメント値(C1)を生成する手段、
前記第1コミットメント値の生成に用いられたメンバー鍵初期情報(sr)と前記コミットメント元情報(C1’)の生成に用いられた乱数(sxi)との知識を有することを証明するための第1証明情報(proofA)を生成する手段、
前記第1証明情報(proofA)及び第1コミットメント値(C1)を前記管理装置に送信する手段、
この送信に応じて前記管理装置から受けた乱数(α,β)を前記耐タンパー装置に入力する手段、
前記乱数(α,β,sxi)により耐タンパー装置内で生成された秘密情報(xi)の離散対数である第2コミットメント値(C2)を前記耐タンパー装置から受ける手段、
前記第2コミットメント値及び前記秘密情報が正しく計算されたことを証明するための第2証明情報(proofB)及び第3証明情報(proofC)を生成する手段、
前記第2証明情報(proofB)、前記第3証明情報(proofC)及び前記第2コミットメント値(C2)を前記管理装置に送信する手段、
として機能させるためのプログラム。 - 請求項8に記載のプログラムにおいて、
前記利用者端末のコンピュータを、
前記第2証明情報(proofB)、第3証明情報(proofC)及び前記第2コミットメント値(C2)の送信に応じて前記管理装置からグループ証明書を受信すると、このグループ証明書を前記第2コミットメント値(C2)に基づいて検証し、検証結果が真のとき、当該グループ証明書情報を前記耐タンパー装置に入力するグループ証明書検証手段、
として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113386A JP2004320562A (ja) | 2003-04-17 | 2003-04-17 | 匿名認証システム、装置及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113386A JP2004320562A (ja) | 2003-04-17 | 2003-04-17 | 匿名認証システム、装置及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004320562A true JP2004320562A (ja) | 2004-11-11 |
Family
ID=33473345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003113386A Pending JP2004320562A (ja) | 2003-04-17 | 2003-04-17 | 匿名認証システム、装置及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004320562A (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006203827A (ja) * | 2005-01-24 | 2006-08-03 | Toshiba Corp | グループ署名生成システム、装置、プログラム及び方法 |
WO2006137250A1 (ja) * | 2005-06-23 | 2006-12-28 | Nec Corporation | サービス提供システム、アウトソーシング業者装置、サービス提供方法およびプログラム |
JP2007128330A (ja) * | 2005-11-04 | 2007-05-24 | Toshiba Solutions Corp | サービス提供システム、装置及びプログラム |
JP2008125054A (ja) * | 2006-09-25 | 2008-05-29 | Nec (China) Co Ltd | 匿名選択可能認証情報のための通信システムおよびその方法 |
JP2009071412A (ja) * | 2007-09-11 | 2009-04-02 | Nippon Hoso Kyokai <Nhk> | 署名生成装置、署名検証装置、グループ管理装置、およびそれらのプログラム |
JP2011130447A (ja) * | 2009-12-18 | 2011-06-30 | Korea Electronics Telecommun | 匿名性に基づく個人向けサービスの提供システム及び方法 |
US8055589B2 (en) | 2005-07-01 | 2011-11-08 | International Business Machines Corporation | Traceability verification system, method and program for the same |
US8074067B2 (en) | 2005-02-10 | 2011-12-06 | Nec Corporation | Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device |
KR101330245B1 (ko) | 2008-11-11 | 2013-11-15 | 한국전자통신연구원 | 권한 분산형 가명 인증서 처리 시스템 |
US9129262B2 (en) | 2007-01-23 | 2015-09-08 | Kabushiki Kaisha Toshiba | Shop apparatus and purchaser apparatus |
CN112491625A (zh) * | 2020-11-30 | 2021-03-12 | 深圳前海微众银行股份有限公司 | 基于即时通讯平台的运维告警方法、装置及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03162152A (ja) * | 1989-11-21 | 1991-07-12 | Toshiba Corp | 携帯用暗号鍵記憶装置 |
JP2000245008A (ja) * | 1999-02-24 | 2000-09-08 | Honda Motor Co Ltd | ハイブリッド車両 |
-
2003
- 2003-04-17 JP JP2003113386A patent/JP2004320562A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03162152A (ja) * | 1989-11-21 | 1991-07-12 | Toshiba Corp | 携帯用暗号鍵記憶装置 |
JP2000245008A (ja) * | 1999-02-24 | 2000-09-08 | Honda Motor Co Ltd | ハイブリッド車両 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006203827A (ja) * | 2005-01-24 | 2006-08-03 | Toshiba Corp | グループ署名生成システム、装置、プログラム及び方法 |
JP4653504B2 (ja) * | 2005-01-24 | 2011-03-16 | 株式会社東芝 | グループ署名生成システム、装置、プログラム及び方法 |
US8074067B2 (en) | 2005-02-10 | 2011-12-06 | Nec Corporation | Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device |
KR100938785B1 (ko) | 2005-06-23 | 2010-01-27 | 닛본 덴끼 가부시끼가이샤 | 서비스 제공 시스템, 아웃소싱 비지니스 장치, 서비스 제공 방법, 및 컴퓨터 판독가능 저장 매체 |
WO2006137250A1 (ja) * | 2005-06-23 | 2006-12-28 | Nec Corporation | サービス提供システム、アウトソーシング業者装置、サービス提供方法およびプログラム |
US8055589B2 (en) | 2005-07-01 | 2011-11-08 | International Business Machines Corporation | Traceability verification system, method and program for the same |
JP2007128330A (ja) * | 2005-11-04 | 2007-05-24 | Toshiba Solutions Corp | サービス提供システム、装置及びプログラム |
JP4704406B2 (ja) * | 2006-09-25 | 2011-06-15 | エヌイーシー(チャイナ)カンパニー, リミテッド | 匿名選択可能認証情報のための通信システムおよびその方法 |
JP2008125054A (ja) * | 2006-09-25 | 2008-05-29 | Nec (China) Co Ltd | 匿名選択可能認証情報のための通信システムおよびその方法 |
US8060914B2 (en) | 2006-09-25 | 2011-11-15 | Nec (China) Co., Ltd. | Anonymous selectable credential system and method therefor |
US9129262B2 (en) | 2007-01-23 | 2015-09-08 | Kabushiki Kaisha Toshiba | Shop apparatus and purchaser apparatus |
JP2009071412A (ja) * | 2007-09-11 | 2009-04-02 | Nippon Hoso Kyokai <Nhk> | 署名生成装置、署名検証装置、グループ管理装置、およびそれらのプログラム |
KR101330245B1 (ko) | 2008-11-11 | 2013-11-15 | 한국전자통신연구원 | 권한 분산형 가명 인증서 처리 시스템 |
JP2011130447A (ja) * | 2009-12-18 | 2011-06-30 | Korea Electronics Telecommun | 匿名性に基づく個人向けサービスの提供システム及び方法 |
CN112491625A (zh) * | 2020-11-30 | 2021-03-12 | 深圳前海微众银行股份有限公司 | 基于即时通讯平台的运维告警方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hardjono et al. | Cloud-based commissioning of constrained devices using permissioned blockchains | |
CN108781161B (zh) | 用于控制和分发数字内容的区块链实现的方法 | |
Weise | Public key infrastructure overview | |
JP5165598B2 (ja) | 秘密鍵とのアカウントリンク | |
JP2020145733A (ja) | 信頼できるアイデンティティを管理する方法 | |
KR101071790B1 (ko) | 어써션 메세지 시그너처 | |
CN101180829B (zh) | 认证系统、设备和程序 | |
US20080235513A1 (en) | Three Party Authentication | |
JP6585038B2 (ja) | 暗号化のためのシステムと方法 | |
US20130007461A1 (en) | Non-transferable anonymous digital receipts | |
JPH1185890A (ja) | 金融機関サーバ及びクライアントウェブブラウザ用セキュリティシステム及び方法 | |
JP2008501176A (ja) | プライバシーを保護する情報配布システム | |
JP2004023796A (ja) | 選択的に開示可能なデジタル証明書 | |
Camenisch et al. | Concepts and languages for privacy-preserving attribute-based authentication | |
Hwang et al. | Securing on-line credit card payments without disclosing privacy information | |
JP4678956B2 (ja) | 属性証明プログラム及び装置 | |
JP2004320562A (ja) | 匿名認証システム、装置及びプログラム | |
US8644509B2 (en) | Data providing process based on an IBPE scheme | |
JP7222436B2 (ja) | 保証制御方法、情報処理装置および保証制御プログラム | |
KR101581663B1 (ko) | 공인인증기관 연동 인증 및 부인 방지 방법 및 시스템 | |
JP4795776B2 (ja) | サービス提供システム、装置及びプログラム | |
Persiano et al. | A secure and private system for subscription-based remote services | |
JP2005318269A (ja) | 電子証明書管理システム、電子証明書管理方法、及び、サーバ | |
KR20180088106A (ko) | 인증서 발급 시스템 및 이를 이용한 전자 거래 방법 | |
Hsin et al. | Simple certified e-check with a partial PKI solution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090616 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090812 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100615 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20101102 |