JP2007020060A - 追跡機能を有する部分ブラインド署名方法及びシステム - Google Patents

追跡機能を有する部分ブラインド署名方法及びシステム Download PDF

Info

Publication number
JP2007020060A
JP2007020060A JP2005201556A JP2005201556A JP2007020060A JP 2007020060 A JP2007020060 A JP 2007020060A JP 2005201556 A JP2005201556 A JP 2005201556A JP 2005201556 A JP2005201556 A JP 2005201556A JP 2007020060 A JP2007020060 A JP 2007020060A
Authority
JP
Japan
Prior art keywords
signature
info
verification
disclosure
tracking function
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.)
Granted
Application number
JP2005201556A
Other languages
English (en)
Other versions
JP4577720B2 (ja
Inventor
Koji Senda
浩司 千田
Miyako Okubo
美也子 大久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005201556A priority Critical patent/JP4577720B2/ja
Publication of JP2007020060A publication Critical patent/JP2007020060A/ja
Application granted granted Critical
Publication of JP4577720B2 publication Critical patent/JP4577720B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】追跡機能を有するブラインド署名(FBS)を部分ブラインド署名(PBS)に拡張し、FBSのより柔軟な運用を可能とする。
【解決手段】ブラインド署名の発行及び検証手続きで用いる固定値の一部を署名装置と署名依頼装置の双方に入力されている情報Infoから一意的に生成することで、Infoを含み、かつ追跡機能を有する部分ブラインド署名に拡張する。また、Infoを用いて固定値の一部を構成するかわりに、事前に決定されたInfoを定数として署名発行及び署名検証で該Infoを利用するようにプロトコルを変更する。
【選択図】図1

Description

本発明は電子署名の応用技術であり、特にブラインド署名方式と呼ばれる、署名者に対して署名対象文書の秘匿を目的とする署名方式の機能拡張技術に関する。
署名依頼者のプライバシ保護および不正防止を両立させるための署名技術として、署名依頼者の追跡機能を有するブラインド署名方式が知られている(例えば非特許文献1)。これはFair Blind Signature(FBS)と呼ばれ、署名依頼者が署名者に対して署名依頼文書を伏せたまま署名付与してもらうことができる、ブラインド署名と呼ばれる技術の拡張であり、ある権限者(開示機関)だけは、ブラインド署名によって生成された特定の署名付き文書から署名依頼者を識別する、あるいは特定の署名依頼者に対応する署名付き文書を識別することが可能な技術である。また最近では、FBSのある種の安全性が証明された方式も提案されている(非特許文献2)。
さらに、署名者をCA(Certificate Aithority)、署名依頼文書を署名公開鍵とし、署名依頼者はCAに対してFBSを用いて該署名公開鍵を知られることなく鍵証明書を発行してもらうことで、CAは開示機関と協力しない限りは、署名依頼者と署名公開鍵との対応関係を知ることができないような方式も提案されている(非特許文献3)。このような権限分散手法を用いることで、ユーザ(=署名依頼者)からみたサービス提供者(=CA、開示機関)に対する信頼性向上、およびサービス提供者の情報漏洩防止といった効果が期待できる。
M.Stadler,J.M.Piveteau,and J.Camenisch,"Fair blind signatures,"EUROCRYPT ’95,LNCS 921,pp.209−219,Spinger Verlag,1995 M.Abe and M.Ohkubo,"Provably secure fair blind signatures with tight revocation,"ASIACRYOT ’01,LNCS 2248,pp.583−601,Spinger Verlag,2001 千田、谷口、塩野入、金井 「代理アクセスを利用した匿名認証方式」 情報処理学会研究報告 Vol.2005,No.33,pp.235−240,2005
上述のようなFBSを鍵証明書の発行に応用した方式は、該鍵証明書に有効期限やユーザ属性等のオープンな情報を記述できることが望ましいと考えられる。例えばITU(国際電気通信連合)が定めた鍵証明書の仕様であるX.509v3の証明書フォーマットでは、バージョン情報や証明書番号、署名アルゴリズムといった情報が含まれる。以降、この種の鍵証明書に埋め込むオープンな情報をInfoと表記する。しかしながら、署名者、署名依頼者及び検証者に対してオープンな情報を署名依頼文書に埋め込み、かつ追跡機能を有するようなブラインド署名方式は、現在まで提案されていない。
本発明は、このような状況に鑑みてなされたもので、追跡機能を有するブラインド署名(FBS)を部分ブラインド署名(PBS;Partially Blind Signature)に拡張し、署名者がInfoを鍵証明書にオープンな情報として記述することが可能な、追跡機能を有する部分ブラインド署名方法及びシステムを提供することにある。
部分ブラインド署名(PBS)は、署名者に対して部分的に伏せた文書を署名依頼することが可能な技術である。これについては、例えば文献「M.Abe and T.Okamato,“Provably secure partially blind signatures,“CRYPTO,‘00,LNCS 1880,pp.271−286,Springer Verlag,2000」(以下、非特許文献4)に詳述されている。
本発明は、FBSをPBSに拡張し、任意のブラインド署名で用いる群の元を、オープンな情報Infoを用いて生成する。例えば非特許文献4で提案されているFBSでは、p,qを素数とし、H(・)を任意のビット列から群Z に写すハッシュ関数とし、g,h,yをZ の元として、署名者はz=H(p‖q‖g‖h‖y)を生成するが(‖はデータの連結を表す)、本発明では、z=H(p‖q‖g‖h‖y‖Info)とする、あるいはg,h,yの何れかを同様の操作により生成することで、非特許文献4のFBSをPBSとできる。
また、本発明は、上記のようにInfoを含めて群の元を構成するのではなく、事前に決定されたInfoを定数として署名発行処理及び署名検証処理で該Infoを利用するようにプロトコルを変更することで、FBSをPBSに拡張する。
本発明によれば、署名者などが指定したオープンな情報を含み、かつ追跡機能を有するようなブラインド署名を生成することができる。これにより、追跡機能を有するブラインド署名を応用した鍵証明書発行方式のより柔軟な運用が可能となる。
以下、本発明の実施の形態について図面を参照して詳述する。なお、本発明は追跡機能を有するブラインド署名(FBS)を部分ブラインド署名(PBS)に拡張するものであるが、高いセキュリティを有することが望ましいという理由から、以下の第1,2の実施の形態ともに、非特許文献2で提案された(ある種の安全性が保証された)FBSを元にPBSへ拡張する例について説明する。但し、本発明の拡張は非特許文献2のFBSに限ったものではなく、他のFBSに容易に適用できることは言うまでもない。
[第1の実施の形態]
本実施の形態は、署名者が指定したオープンな情報Infoを含み、かつ追跡機能を有するようなブラインド署名を生成するもので、以下では、非特許文献2で提案されているFBSに対して、非特許文献4で提案されているPBSの技術を適用することでPBSの機能を追加する方法について、図面を用いて説明する。
図1は本実施の形態のシステム構成を示す図であり、署名依頼装置10、署名装置20、検証装置30、開示装置(管理装置)40、及びこれら装置を結ぶネットワーク50からなる。署名依頼装置10には、パソコン、携帯端末、携帯電話、その他、利用者が操作する任意の機器(利用者端末装置)が含まれる。署名装置20、検証装置30、開示装置40はサーバ装置であり、その具体的構成は所謂コンピュータシステムと同様である。
署名依頼装置10、署名装置20、検証装置30開示装置40では、FBSのシステムパラメータprm=(p,q,g,h)が生成、共有されているものとする。ここでp,qはq|p−1となる素数、g,hは乗法群Z の位数qの部分群Gの元である。
<鍵生成>
署名装置20は秘密鍵xを生成・保管し、公開鍵y=gmodpを計算する。また、開示装置40は秘密鍵rsk=(x,dk)を生成・保管し、公開鍵rpk=(y=gxtmodp,ek)を計算する。ここで、xはq以下のランダムな自然数、ek,dkはそれぞれある検証可能暗号(VE;Verifiable Encryption)の公開鍵および秘密鍵である。なお、VEの説明および具体例は非特許文献2に示されている。全ての装置10〜40がy,rpkを共有する。署名依頼装置10はRSA署名やSchnorr署名など、任意の署名方式の秘密鍵、公開鍵の組(Sk,PK)を作成する。図1に、ここまでの各装置10〜40が保持する情報を示す。
<ブラインド署名>
署名依頼装置10は、署名装置20にPKの鍵証明書生成を依頼する。鍵証明書生成の処理は非特許文献2のFBSとほぼ等しいが、Gの元zの生成が異なる。非特許文献2FBSでは、以下のようにしてzを生成している。
z=H(p‖q‖g‖h‖y)
ここでHはGに写す一方向性ハッシュ関数である。本実施の形態では、該FBSにPBSの機能を追加するために、zを以下のようにして生成する。
ここでInfoは署名装置20が指定したオープンな情報z=H(p‖q‖g‖h‖y‖Info)である。なお、Infoの埋め込みについて、基本的には一意的に生成されない元であれば、上記同様の方法によりZ以外の値に対してもInfoの埋め込みが可能である。
以上を踏まえ、署名依頼装置10がPKの鍵証明書を取得する手順について説明する。図2に、本実施の形態における鍵証明書生成の詳細な処理フローを示す。
署名依頼装置10は署名装置20に鍵証明書の生成を依頼する(ステップ101)。署名装置20は特定の文字列Infoを署名依頼装置10に返す(ステップ102)。また、署名装置20は署名依頼装置10(または署名依頼者)を識別する情報(ID)を登録する(ステップ103)。
署名依頼装置10では、以下の処理を行う。
(a)q以下のランダムな自然数γをブラインド係数として選ぶ(ステップ104)。
(b)z=H(p‖q‖g‖h‖y‖Info),zu=z1/γ,ξ=gγ,E=εek(γ),P=Ρ((z,ξ),γ,ek)を計算する(ステップ105)。ここで、εは検証可能暗号(VE)の暗号化関数であり、E=εek(γ)は該VEの関数を用いて公開鍵ekによりγを暗号化した暗号文である。ΡはEに対応する平分(=γ)が1/log(=γ)およびlogξ(=γ)と等しいことを署名装置20に証明するための関数であり、Pは該証明のための述語(predicate)である。
(c)(z,ξ,E,P)を署名装置20に送信する(ステップ106)。
署名依頼装置10から(z,ξ,E,P)を受信した署名装置20は以下の処理を行う。
(a)z=H(p‖q‖g‖h‖y‖Info)を計算し、(z,ξ,E,P)が正しい結果かどうか検証する(ステップ107)。検証OKであれば次に進み、NGであれば署名依頼装置10の不正として処理を終了する。
(b)q以下のランダムな自然数v,u,s,s,dを選ぶ(ステップ108)。
(c)z=y ,z=z/z,P=Ρ(z,y,v),a=g,b=gs1 ,b=hs2 を計算する(ステップ109)。ここで、Pはlogyt(=v)の値を知っていることを署名依頼装置10に証明するための述語である。
(d)(P,z,a,b,b)を署名依頼装置に送信する(ステップ110)。
(e)ξを計算する(ステップ111)。
(f)IDとξの対応を示す(ID,ξ)の組を保存する(ステップ112)。
署名装置20から(P,z,a,b,b)を受信した署名依頼装置10は以下の処理を行う。
(a)(z,b,b)がGの元かどうか、および(z,y,P)が正しい結果かどうか検証する(ステップ113)。両方とも検証OKであれば次に進み、どちらか一方でもNGであれば署名装置の不正として処理を終了する。
(b)q以下のランダムな自然数t,t,t,t,tを選ぶ(ステップ114)。
(c)ζ=z γ,ζ=z/ζ,α=agt1t2,β=b γt3ζ t5,β=b γt4ζ t5,ε=H(ζ‖α‖β‖β‖PK),e=ε−t−tを計算する(ステップ115)。ここでHは任意の文字列をq以下の自然数に写す一方向性ハッシュ関数とする。
(d)eを署名装置20に送信する(ステップ116)。
署名依頼装置10からeを受信した署名装置10は以下の処理を行う。
(a)c=e−d,r=u−cxを計算する(ステップ117)。
(b)(r,c,s,s,d)を署名依頼装置10に送信する(ステップ118)。
署名装置20から(r,c,s,s,d)を受信した署名依頼装置10は以下の処理を行う。
(a)ρ=r+t,ω=c+t,σ=γs+t,σ=γs+t,δ=d+tを計算する(ステップ119)。
(b)ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2ζ δ‖PK)が成り立つかどうか検証する(ステップ120)。検証OKであれば次に進み、NGであれば署名装置20の不正として処理を終了する。
(c)Σ=(ζ,ρ,ω,σ,σ,δ)をPKの証明書として出力する(ステップ121)。
<署名検証>
署名装置20よりPKの証明書Σ=(ζ,ρ,ω,σ,σ,δ)を得た署名依頼装置10は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とする。
署名検証は、PKの鍵証明書の正当性検証とメッセージmsgの署名Sの正当性検証からなるとする。図3に、本実施の形態における署名検証の処理フローを示す。
署名依頼装置10は、msg,Tを検証装置30へ送信する(ステップ201)。ここで、T=(S,PK,Info,Σ)であり、Σ=(ζ,ρ,ω,σ,σ,δ)である。
署名依頼装置10から(msg,T)を受信した検証装置30は以下の処理を行う。
(a)Infoが所定の条件を満たすものであるか確認する(ステップ202)。OKであれば次に進み、NGであれば処理を終了する。
(b)z=H(p‖q‖g‖h‖y‖Info)を計算する(ステップ203)。
(c)ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ δ)‖PKが成り立つかどうか検証する(ステップ204)。検証OKであれば次に進み、NGであれば署名装置20の不正として処理を終了する。
(d)PKに対応する署名方式の検証アルゴリズムを用いて、Sがmsgの正しい署名であるか検証する(ステップ205)。検証NGであれば署名装置20の不正とする。
上記処理において、ステップ202〜204はPKの鍵証明書の正当性検証であり、ステップ205はメッシセージmsgの署名Sの正当性検証である。
<署名追跡>
これは、例えば、メッセージmsgが不正なメッセージだとして、メッセージmsgの署名Sの生成者を特定したい場合に実施する。図4に、本実施の形態における署名追跡の処理フローを示す。
1.検証装置30は、msg,Tを開示装置40、署名装置20に送信する(ステップ301)。
2.開示装置40および署名装置20は検証装置30と同様の検証処理(図3)を行い、検証OKとなることを確認する(ステップ302)。もしNGであれば処理を終了する。
3.開示装置40は以下の処理を行う。
(a)I=ζ 1/xtを計算する(ステップ303)。
(b)Iを署名装置20に送信する(ステップ304)。
4.開示装置40からIを受信した署名装置20は以下の処理を行う。
(a)保持してある(ID,ξ)からI=ξとなるようなξを見つける(ステップ305)。
(b)該ξに対応するIDから、msgの署名Sを生成した署名依頼装置(または署名依頼者)を特定する(ステップ306)。ここでは署名依頼者とする。
(c)特定した署名依頼者を開示装置40に送信する(ステップ307)。
5.開示装置40は署名装置20から送られた署名依頼者を検証装置30に送信する(ステップ308)。
これにより、開示装置20及び署名装置40が協力した場合に限り、メッセージmsgの署名Sを生成した署名依頼装置(又は署名依頼者)を特定することができる。
[第2の実施の形態]
本実施の形態では、非特許文献2で提案されているFBSに対して、署名装置と署名依頼装置が事前に合意して得られる共通情報Infoを、署名発行処理および署名検証処理で定数として用いる必要があるようにすることで、PBSの機能を追加する方法について説明する。
本実施の形態のシステム構成は、第1の実施の形態と同様であり、図1に示すように、署名依頼装置10、署名装置20、検証装置30、開示装置40、及びこれら装置を結ぶネットワークからなる。署名依頼装置10、署名装置20、検証装置30、開示装置40では、第1の実施の形態と同様に、FBSのシステムパラメータprm=(p,q,g,h)が生成、共有されているものとする。ここでp,qはq|p−1となる素数、g,hは乗法群Z *の位数qの部分群Gの元である。
<鍵生成>
署名装置20は秘密鍵xを生成・保管し、y=gmodpを計算する。開示装置40は秘密鍵rsk=(x,dk)を生成・保管し、rpk=(y=gxt(modp),ek)を計算する。ここでxはq以下のランダムな自然数、ek,dkはそれぞれある検証可能暗号(VE;Verifiable Encryption)の公開鍵および秘密鍵である。全ての装置10〜40がy,rpkを共有する。署名依頼装置10はRSA署名やSchnorr署名など、任意の署名方式の秘密鍵、公開鍵の組(SK,PK)を作成する。ここまでは、第1の実施の形態と同じである。
<ブラインド署名>
署名依頼装置10は、署名装置20にPKの鍵証明書生成を依頼する。鍵証明書生成の処理は、第1の実施の形態と同様であるが、非特許文献2のFBSの署名発行処理において、以下の変更を行えば良い。
=z/z → z/z Info
ζ=z/ζ → z/ζ Info
ω+δ=H((ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ)δ‖msg)
→ H((ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ info)δ‖msg)
以下では、署名依頼装置10がPKの鍵証明書を取得する手順を上記の変更を踏まえて説明する。処理フローは図2と同様であるので省略する。
署名依頼装置10は署名装置20に鍵証明書の生成を依頼する。署名装置20は特定の文字列Infoを署名依頼装置10に返す。ここで、Infoはq以下の自然数とする。また、署名装置20は署名依頼装置10(または署名依頼者)を識別する情報(ID)を登録する。
署名依頼装置10は以下の処理を行う。
(a)q以下のランダムな自然数γ(ブラインド係数)を選ぶ。
(b)z=H(p‖q‖g‖h‖y),z=z1/γ,ξ=gγ,E=εek(γ),P=ΡP((z,ξ),γ,ek)を計算する。ここでεはVEの暗号化関数であり、特にE=εek(γ)は該VEの関数を用いて公開鍵ekによりγを暗号化した暗号文である。ΡはEに対応する平文(=γ)が1/log(=γ)およびlogξ(=γ)と等しいことを署名装置20に証明するための関数であり、特にPは該証明のための述語(predicate)である。
(c)(z,ξ,E,P)を署名装置20に送信する。
署名依頼装置10から(z,ξ,E,P)を受信した署名装置20は以下の処理を行う。
(a)z=H(p‖q‖g‖h‖y)を計算し、(z,ξ,E,P)が正しい結果かどうか検証する。検証OKであれば次に進み、NGであれば署名依頼装置10の不正として処理を終了する。
(b)q以下のランダムな自然数v,u,s,s,dを選ぶ。
(c)z=y ,z=z/z Info,P=Ρ(z,y,v),a=g,b=gs1 ,b=hs2 を計算する。ここでPはlogyt(=v)の値を知っていることを署名依頼装置10に証明するための述語である。
(d)(P,z,a,b,b)を署名依頼装置10に送信する。
(e)ξを計算する。
(f)(ID,ξ)の組を保存する。
署名装置20から(P,z,a,b,b)を受信した署名依頼装置10は以下の処理を行う。
(a)(z,b,b)がGの元かどうか、および(z,y,P)が正しい結果かどうか検証する。両方とも検証OKであれば次に進み、どちらか一方でもNGであれば署名装置20の不正として処理を終了する。
(b)q以下のランダムな自然数t,t,t,t,tを選ぶ。
(c)ζ=z γ,ζ=z/ζ Info,α=agt1t2,β=b γt3ζ t5,β=b γt4ζ t5,ε=(ζ‖α‖β‖β‖PK),e=ε−t−tを計算する。ここでHは任意の文字列をq以下の自然数に写す一方向性ハッシュ関数とする。
(d)eを署名装置20に送信する。
署名依頼装置10からeを受信した署名装置20は以下の処理を行う。
(a)c=e−d,r=u−cxを計算する。
(b)(r,c,s,s,d)を署名依頼装置10に送信する。
署名装置20から(r,c,s,s,d)を受信した署名依頼装置10は以下の処理を行う。
(a)ρ=r+t,ω=c+t,σ=γs+t,σ=γs+t,δ=d+tを計算する。
(b)ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2ζ δ‖PK)が成り立つかどうか検証する。検証OKであれば次に進み、NGであれば署名装置20の不正として処理を終了する。
(c)Σ=(ζ,ρ,ω,σ,σ,δ)をPKの証明書として出力する。
<署名検証>
本実施の形態における署名検証の処理フローを図5に示す。署名装置20よりPKの証明書Σ=(ζ,ρ,ω,σ,σ,δ)を得た署名依頼装置10は、次に(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とする。
署名依頼装置10は、メッセージmsg,T=(s,PK,info,Σ)を検証装置30に送信する(ステップ401)。
署名依頼装置10から,msg,Tを受信した検証装置30は、以下の処理を行う。
(a)Infoが所定の条件を満たすものであるか確認する(ステップ402)。OKであれば次に進み、NGであれば処理を終了する。
(b)z=H(p‖q‖g‖h‖y)を計算する(ステップ403)。
(c)ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ1 Infoδ‖PK)が成り立つかどうか検証する(ステップ404)。検証OKであれば次に進み、NGであれば署名装置20の不正として処理を終了する。
(d)PKに対応する署名方式の検証アルゴリズムを用いて、Sがmsgの正しい署名であるか検証する(ステップ405)。検証NGであれば署名装置20の不正とする。
上記処理において、ステップ402〜404はPKの鍵証明書の正当性検証であり、ステップ405はmsgの署名Sの正当性検証である。
<署名追跡>
メッセージmsgは不正なメッセージだとして、該msgの署名Sの生成者を特定したい場合、検証装置30は開示装置40および署名装置20にmsg,Tを送付にする。開示装置40および署名装置20はmsg,Tを入力して以下の処理を行う。
1.開示装置40および署名装置20は検証装置30と同様の検証の処理(図5)を行い、検証OKとなることを確認する。もしNGであれば処理を終了する。
2.開示装置40は以下の処理を行う。
(a)I=ζ 1/xtを計算する。
(b)Iを署名装置20に送信する。
3.開示装置40からIを受信した署名装置20は以下の処理を行う。
(a)(ID,ξ)I=ξとなるようなξを見つける。
(b)該ξに対応するIDから、メッセージmsgの署名Sを生成した署名依頼装置(または署名依頼者)を特定する。
上記処理は図4と同様である。これにより、開示装置40および署名装置30が協力した場合に限り、メッセージmsgの署名Sを生成した署名依頼装置(または署名依頼者)を特定することが出来る。
なお、図1で示したシステム構成における各装置の一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、あるいは、図2〜図5で示した処理手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもない。また、コンピュータでその処理機能を実現するためのプログラム、あるいは、コンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、FD、MO、ROM、メモリカード、CD、DVD、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。
本発明の実施の形態のシステム構成を示す図。 第1の実施の形態における鍵証明書生成の処理フロー図。 第1の実施の形態における署名検証の処理フロー図。 第1の実施の形態における署名追跡の処理フロー図。 第2の実施の形態における署名検証の処理フロー図。
符号の説明
10 署名依頼装置
20 署名装置
30 検証装置
40 開示装置
50 ネットワーク

Claims (10)

  1. 署名依頼装置、署名装置、検証装置および開示装置を備え、開示装置および署名装置が協力する場合に限り署名依頼装置あるいは署名依頼者を特定できる追跡機能を有するブラインド署名を部分ブラインド署名に拡張する方法であって、
    ブラインド署名の発行及び検証手続きで用いられる固定値の一部を、署名装置と署名依頼装置の双方に入力されている情報Infoを含めて一意的に生成することで、追跡機能を有するようなブラインド署名を部分ブラインド署名に拡張することを特徴とする追跡機能を有する部分ブラインド署名方法。
  2. 請求項1記載の追跡機能を有する部分ブラインド署名方法において、
    H(・,・)を任意のビット列からある群の元に写す一方向性ハッシュ関数とし、z=H(Info,・)を生成することを特徴とする追跡機能を有する部分ブラインド署名方法。
  3. 署名依頼装置、署名装置、検証装置および開示装置を備え、開示装置および署名装置が協力する場合に限り署名依頼装置あるいは署名依頼者を特定できる追跡機能を有するブラインド署名を部分ブラインド署名に拡張する方法であって、
    署名装置と署名依頼装置が事前に合意して得られる共通情報Infoを、署名発行処理および署名発行処理で定数として用いることで、追跡機能を有するようなブラインド署名を部分ブラインド署名に拡張することを特徴とする追跡機能を有する部分ブラインド署名方法。
  4. 署名依頼装置、署名装置、検証装置および開示装置を備え、開示装置および署名装置が協力する場合に限り署名依頼装置あるいは署名依頼者を特定できる追跡機能を有するブラインド署名を部分ブラインド署名に拡張する方法であって、
    p,qをq|p−1となる素数、g,hを群Z の位数qの部分群Gの元とし、署名依頼装置、署名装置、検証装置および開示装置は、ブラインド署名のシステムパラメータprm=(p,q,g,h)を生成し、共存し、
    署名装置は、秘密鍵xを生成・保管し、公開鍵y=gmodpを計算し、開示装置は秘密鍵rsk=(x,dk)を生成・保管し、公開鍵rpk=(y=gxtmodp,ek)を計算し、署名依頼装置、署名装置、検証装置および開示装置の全てがy,rpkを共有し、
    署名依頼装置は署名のための秘密鍵、公開鍵の組(Sk,PK)を作成し、署名装置にPKの鍵証明書生成を依頼し、
    署名装置は、特定の文字列Infoを署名依頼装置に返し、署名依頼装置又は署名依頼者を識別する情報(ID)を登録し、
    署名依頼装置は、g以下の自然数γをランダムに選び、z=H(p‖q‖g‖h‖y‖Info)(HはGに写す一方向性ハッシュ関数)、z=z1/γ,ξ=gγ,E=εek(γ)(εekはekでγを暗号化する関数),P=Ρ((z,ξ),γ,ek)(ΡはEに対応する平分(=γ)が1/log(=γ)およびlogξ(=γ)と等しいことを署名装置に証明するための関数)を計算し、(z,ξ,E,P)を署名装置に送信し、
    署名装置は、z=H(p‖q‖g‖h‖y‖Info)を計算して、(z,ξ,E,P)が正しいか検証し、検証成功の場合、q以下の自然数v,u,s,s,dをランダムに選び、z=y ,z=z/z,P=Ρ(z,y,v)(Pはlogyt(=v)の値を知っていることを署名依頼装置に証明するための関数)、a=g,b=gs1 ,b=hs2 ,ξを計算し、(P,z,a,b,b)を署名依頼装置に送信し、(ID,ξ)を保存し、
    署名依頼装置は(z,b,b)がGの元かどうか、(z,y,P)が正しいか検証し、両方検証成功の場合、q以下の自然数t,t,t,t,tをランダムに選び、ζ=z γ,ζ=z/ζ,α=agt1t2,β=b γt3ζ t5,β=b γt4ζ t5,ε=H(ζ‖α‖β‖β‖PK)(Hは任意の文字列をq以下の自然数に写す一方向性ハッシュ関数)、e=ε−t−tを計算し、eを署名装置に送信し、
    署名装置は、c=e−d,r=u−cxを計算し、(r,c,s,s,d)を署名依頼装置に送信し、
    署名依頼装置は、ρ=r+t,ω=c+t,σ=γs+t,σ=γs+t,δ=d+tを計算し、ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2ζ δ‖PK)が成り立つか検証し、検証成功の場合、Σ=(ζ,ρ,ω,σ,σ,δ)をPKの証明書として出力する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  5. 請求項4記載の追跡機能を有する部分ブラインド署名方法において、
    署名依頼装置は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とし、msg,Tを出力し、
    検証装置は、msg,Tを入力として、Infoが所定の条件を満たすか確認し、満たす場合、z=H(p‖q‖g‖h‖y‖Info)を計算し、ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ)δ‖PKが成り立つか検証し、検証成功の場合、Sがmsgの正しい署名であるか検証する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  6. 請求項5記載の追跡機能を有する部分ブラインド署名方法において、
    開示装置および署名装置はmsg,Tを入力し、
    開示装置は、I=ζ 1/xtを計算し、Iを署名装置に送信し、
    署名装置は、(ID,ξ)の組からI=ξとなるようなξを見つけ、該ξに対応するIDから、msgの署名Sを生成した署名依頼装置または署名依頼者を特定する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  7. 署名依頼装置、署名装置、検証装置および開示装置を備え、開示装置および署名装置が協力する場合に限り署名依頼装置あるいは署名依頼者を特定できる追跡機能を有するブラインド署名を部分ブラインド署名に拡張する方法であって、
    p,qをq|p−1となる素数、g,hを群Z の位数qの部分群Gの元とし、署名依頼装置、署名装置、検証装置および開示装置は、ブラインド署名のシステムパラメータprm=(p,q,g,h)を生成し、共存し、
    署名装置は、秘密鍵xを生成・保管し、公開鍵y=gmodpを計算し、開示装置は秘密鍵rsk=(x,dk)を生成・保管し、公開鍵rpk=(y=gxtmodp,ek)を計算し、署名依頼装置、署名装置、検証装置および開示装置の全てがy,rpkを共有し、
    署名依頼装置は署名のための秘密鍵、公開鍵の組(Sk,PK)を作成し、署名装置にPKの鍵証明書生成を依頼し、
    署名装置は、特定の文字列Info(Infoはg以下の自然数)を署名依頼装置に返し、署名依頼装置又は署名依頼者を識別する情報(ID)を登録し、
    署名依頼装置は、g以下の自然数γをランダムに選び、z=H(p‖q‖g‖h‖y)(HはGに写す一方向性ハッシュ関数)、z=z1/γ,ξ=gγ,E=εek(γ)(εekはekでγを暗号化する関数),P=Ρ((z,ξ),γ,ek)(ΡはEに対応する平分(=γ)が1/log(=γ)およびlogξ(=γ)と等しいことを署名装置に証明するための関数)を計算し、(z,ξ,E,P)を署名装置に送信し、
    署名装置は、z=H(p‖q‖g‖h‖y)を計算して、(z,ξ,E,P)が正しい結果か検証し、検証成功の場合、q以下の自然数v,u,s,s,dをランダムに選び、z=y ,z=z/z Info,P=Ρ(z,y,v)(Pはlogyt(=v)の値を知っていることを署名依頼装置に証明するための関数)、a=g,b=gs1 ,b=hs2 ,ξを計算し、(P,z,a,b,b)を署名依頼装置に送信し、(ID,ξ)を保存し、
    署名依頼装置は(z,b,b)がGの元かどうか、(z,y,P)が正しいか検証し、両方検証成功の場合、q以下の自然数t,t,t,t,tをランダムに選び、ζ=z γ,ζ=z/ζ Info,α=agt1t2,β=b γt3ζ t5,β=b γt4ζ t5,ε=H(ζ‖α‖β‖β‖PK)(Hは任意の文字列をq以下の自然数に写す一方向性ハッシュ関数)、e=ε−t−tを計算し、eを署名装置に送信し、
    署名装置は、c=e−d,r=u−cxを計算し、(r,c,s,s,d)を署名依頼装置に送信し、
    署名依頼装置は、ρ=r+t,ω=c+t,σ=γs+t,σ=γs+t,δ=d+tを計算し、ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2ζ δ‖PK)が成り立つか検証し、検証成功の場合、Σ=(ζ,ρ,ω,σ,σ,δ)をPKの証明書として出力する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  8. 請求項7記載の追跡機能を有する部分ブラインド署名方法において、
    署名依頼装置は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とし、msg,Tを出力し、
    検証装置は、msg,Tを入力として、Infoが所定の条件を満たすか確認し、満たす場合、z=H(p‖q‖g‖h‖y)を計算し、ω+δ=H(ζ‖gρω‖gσ1ζ δ‖hσ2(z/ζ Info)δ‖PKが成り立つか検証し、検証成功の場合、Sがmsgの正しい署名であるか検証する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  9. 請求項8記載の追跡機能を有する部分ブラインド署名方法において、
    開示装置および署名装置はmsg,Tを入力し、
    開示装置は、I=ζ 1/xtを計算し、Iを署名装置に送信し、
    署名装置は、(ID,ξの組からI=ξとなるようなξを見つけ、該ξに対応するIDから、msgの署名Sを生成した署名依頼装置または署名依頼者を特定する、
    ことを特徴とする追跡機能を有する部分ブラインド署名方法。
  10. 署名依頼装置、署名装置、検証装置および開示装置を備え、請求項4乃至9のいずれか1項に記載の追跡機能を有する部分ブラインド署名方法を実施することを特徴とす部分ブラインド署名システム。
JP2005201556A 2005-07-11 2005-07-11 部分ブラインド署名・検証・追跡方法及びシステム Active JP4577720B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005201556A JP4577720B2 (ja) 2005-07-11 2005-07-11 部分ブラインド署名・検証・追跡方法及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005201556A JP4577720B2 (ja) 2005-07-11 2005-07-11 部分ブラインド署名・検証・追跡方法及びシステム

Publications (2)

Publication Number Publication Date
JP2007020060A true JP2007020060A (ja) 2007-01-25
JP4577720B2 JP4577720B2 (ja) 2010-11-10

Family

ID=37756784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005201556A Active JP4577720B2 (ja) 2005-07-11 2005-07-11 部分ブラインド署名・検証・追跡方法及びシステム

Country Status (1)

Country Link
JP (1) JP4577720B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278144A (ja) * 2007-04-27 2008-11-13 Univ Of Tokyo アクセス制御装置及びユーザ端末及びプログラム
CN114205081A (zh) * 2021-12-03 2022-03-18 中国科学院大学 一种保护用户隐私的盲协同签名方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284271A (ja) * 1996-04-18 1997-10-31 Nippon Telegr & Teleph Corp <Ntt> 制限付ブラインド署名方法およびシステム
JP2001343893A (ja) * 2000-05-30 2001-12-14 Nippon Telegr & Teleph Corp <Ntt> 部分ブラインド署名方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284271A (ja) * 1996-04-18 1997-10-31 Nippon Telegr & Teleph Corp <Ntt> 制限付ブラインド署名方法およびシステム
JP2001343893A (ja) * 2000-05-30 2001-12-14 Nippon Telegr & Teleph Corp <Ntt> 部分ブラインド署名方式

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278144A (ja) * 2007-04-27 2008-11-13 Univ Of Tokyo アクセス制御装置及びユーザ端末及びプログラム
WO2008139652A1 (ja) * 2007-04-27 2008-11-20 The University Of Tokyo アクセス制御装置及びユーザ端末及びプログラム
CN114205081A (zh) * 2021-12-03 2022-03-18 中国科学院大学 一种保护用户隐私的盲协同签名方法
CN114205081B (zh) * 2021-12-03 2023-12-19 中国科学院大学 一种保护用户隐私的盲协同签名方法

Also Published As

Publication number Publication date
JP4577720B2 (ja) 2010-11-10

Similar Documents

Publication Publication Date Title
US11108565B2 (en) Secure communications providing forward secrecy
Camenisch Better privacy for trusted computing platforms
Deng et al. An efficient buyer-seller watermarking protocol based on composite signal representation
Delavar et al. PUF‐based solutions for secure communications in Advanced Metering Infrastructure (AMI)
US20150043735A1 (en) Re-encrypted data verification program, re-encryption apparatus and re-encryption system
US8015398B2 (en) Set membership proofs in data processing systems
JP2021510954A (ja) デジタル署名されたデータを取得するためのコンピュータにより実施される方法及びシステム
WO2019093478A1 (ja) 鍵交換装置、鍵交換システム、鍵交換方法、及び鍵交換プログラム
EP2846492A1 (en) Cryptographic group signature methods and devices
US8356182B2 (en) Electronic signature system and electronic signature verifying method
JP2014515125A (ja) データの暗号化のための方法、コンピュータ・プログラム、および装置
TWI593267B (zh) 具有時戳驗證的免憑證公開金鑰管理方法
JP2024506720A (ja) 匿名署名スキームのユーザ制御のリンク可能性
JP4571117B2 (ja) 認証方法及び装置
JP4577720B2 (ja) 部分ブラインド署名・検証・追跡方法及びシステム
JP2012103655A (ja) 耐量子コンピュータ性をもつディジタル署名方式
JP6634171B2 (ja) 公開鍵の信頼性を証明するための装置、方法及びそのためのプログラム
JP2007189605A (ja) グループ署名システム、装置、プログラム及び方法
JP2009225356A (ja) デジタル署名システム、装置及びプログラム
JP2009224997A (ja) 署名システム、署名方法、証明装置、検証装置、証明方法、検証方法、プログラム
Yap et al. On the security of a lightweight authentication and encryption scheme for mobile ad hoc network
Candebat et al. Pseudonym management using mediated identity-based cryptography
Park et al. A proxy blind signature scheme with proxy revocation
TWI248744B (en) Multisignature scheme with message recovery for group authorization in mobile networks
CN114128213B (zh) 用于验证公钥的可靠性的装置、方法以及其程序

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100609

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100818

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100818

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4577720

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350