JP4577720B2 - Partial blind signature / verification / tracking method and system - Google Patents

Partial blind signature / verification / tracking method and system Download PDF

Info

Publication number
JP4577720B2
JP4577720B2 JP2005201556A JP2005201556A JP4577720B2 JP 4577720 B2 JP4577720 B2 JP 4577720B2 JP 2005201556 A JP2005201556 A JP 2005201556A JP 2005201556 A JP2005201556 A JP 2005201556A JP 4577720 B2 JP4577720 B2 JP 4577720B2
Authority
JP
Japan
Prior art keywords
signature
verification
info
requesting device
msg
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.)
Active
Application number
JP2005201556A
Other languages
Japanese (ja)
Other versions
JP2007020060A (en
Inventor
浩司 千田
美也子 大久保
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/en
Publication of JP2007020060A publication Critical patent/JP2007020060A/en
Application granted granted Critical
Publication of JP4577720B2 publication Critical patent/JP4577720B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は電子署名の応用技術であり、特にブラインド署名方式と呼ばれる、署名者に対して署名対象文書の秘匿を目的とする署名方式の機能拡張技術に関する。   The present invention is an application technique of an electronic signature, and particularly relates to a function expansion technique of a signature scheme for the purpose of concealing a signature target document from a signer, which is called a blind signature scheme.

署名依頼者のプライバシ保護および不正防止を両立させるための署名技術として、署名依頼者の追跡機能を有するブラインド署名方式が知られている(例えば非特許文献1)。これはFair Blind Signature(FBS)と呼ばれ、署名依頼者が署名者に対して署名依頼文書を伏せたまま署名付与してもらうことができる、ブラインド署名と呼ばれる技術の拡張であり、ある権限者(開示機関)だけは、ブラインド署名によって生成された特定の署名付き文書から署名依頼者を識別する、あるいは特定の署名依頼者に対応する署名付き文書を識別することが可能な技術である。また最近では、FBSのある種の安全性が証明された方式も提案されている(非特許文献2)。   As a signature technique for achieving both privacy protection and fraud prevention of a signature requester, a blind signature method having a signature requester tracking function is known (for example, Non-Patent Document 1). This is called Fair Blind Signature (FBS), which is an extension of a technology called blind signature that allows a signer to give a signer a signature request with the signer lying down. Only (disclosing institution) is a technology that can identify a signature requester from a specific signed document generated by a blind signature, or can identify a signed document corresponding to a specific signature requester. Recently, there has also been proposed a method in which certain safety of FBS is proved (Non-Patent Document 2).

さらに、署名者をCA(Certificate Aithority)、署名依頼文書を署名公開鍵とし、署名依頼者はCAに対してFBSを用いて該署名公開鍵を知られることなく鍵証明書を発行してもらうことで、CAは開示機関と協力しない限りは、署名依頼者と署名公開鍵との対応関係を知ることができないような方式も提案されている(非特許文献3)。このような権限分散手法を用いることで、ユーザ(=署名依頼者)からみたサービス提供者(=CA、開示機関)に対する信頼性向上、およびサービス提供者の情報漏洩防止といった効果が期待できる。   Further, the signer is a CA (Certificate Aithority), the signature request document is a signature public key, and the signature requester uses the FBS to issue a key certificate to the CA without knowing the signature public key. Thus, a method is proposed in which the CA cannot know the correspondence between the signature requester and the signature public key unless it cooperates with the disclosure organization (Non-patent Document 3). By using such an authority distribution method, it is possible to expect an effect of improving the reliability of the service provider (= CA, disclosure organization) from the viewpoint of the user (= signing requester) and preventing information leakage of the service provider.

M.Stadler,J.M.Piveteau,and J.Camenisch,“Fair blind signatures,”EUROCRYPT ’95,LNCS 921,pp.209−219,Spinger Verlag,1995M.M. Stadler, J .; M.M. Piveteau, and J.M. 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,2001M.M. Abe and M. Ohkubo, “Provably secure fair blind signatures with tight revocation,” ASIA CRYOT '01, LNCS 2248, pp. 583-601, Spinger Verlag, 2001 千田、谷口、塩野入、金井 「代理アクセスを利用した匿名認証方式」 情報処理学会研究報告 Vol.2005,No.33,pp.235−240,2005Senda, Taniguchi, Iono Shiono, Kanai “Anonymous Authentication Method Using Proxy Access” IPSJ Report Vol. 2005, No. 33, pp. 235-240, 2005

上述のようなFBSを鍵証明書の発行に応用した方式は、該鍵証明書に有効期限やユーザ属性等のオープンな情報を記述できることが望ましいと考えられる。例えばITU(国際電気通信連合)が定めた鍵証明書の仕様であるX.509v3の証明書フォーマットでは、バージョン情報や証明書番号、署名アルゴリズムといった情報が含まれる。以降、この種の鍵証明書に埋め込むオープンな情報をInfoと表記する。しかしながら、署名者、署名依頼者及び検証者に対してオープンな情報を署名依頼文書に埋め込み、かつ追跡機能を有するようなブラインド署名方式は、現在まで提案されていない。   It is considered that a method in which the FBS as described above is applied to the issuance of a key certificate desirably describes open information such as an expiration date and user attributes in the key certificate. For example, X.I., which is a key certificate specification established by the ITU (International Telecommunication Union). The 509v3 certificate format includes information such as version information, certificate number, and signature algorithm. Hereinafter, open information embedded in this type of key certificate is referred to as Info. However, a blind signature method that embeds information open to a signer, a signature requester, and a verifier in a signature request document and has a tracking function has not been proposed so far.

本発明は、このような状況に鑑みてなされたもので、追跡機能を有するブラインド署名(FBS)を部分ブラインド署名(PBS;Partially Blind Signature)に拡張し、署名者がInfoを鍵証明書にオープンな情報として記述することが可能な、追跡機能を有する部分ブラインド署名・検証・追跡方法及びシステムを提供することにある。 The present invention has been made in view of such circumstances. The blind signature (FBS) having a tracking function is expanded to a partial blind signature (PBS), and the signer opens Info as a key certificate. It is an object to provide a partial blind signature / verification / tracking method and system having a tracking function that can be described as simple information.

部分ブラインド署名(PBS)は、署名者に対して部分的に伏せた文書を署名依頼することが可能な技術である。これについては、例えば文献「M.Abe and T.Okamato,“Provably secure partially blind signatures,“CRYPTO,‘00,LNCS 1880,pp.271−286,Springer Verlag,2000」(以下、非特許文献4)に詳述されている。   Partial blind signature (PBS) is a technology that allows a signer to request a partially obfuscated document. Regarding this, for example, the document “M. Abe and T. Okamato,“ Probably secure partially blind signatures, ”CRYPTO, '00, LNCS 1880, pp. 271-286, Springer Verlag, 2000” (hereinafter, Non-Patent Document 4). Is described in detail.

本発明は、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とできる。 In the present invention, FBS is extended to PBS, and a group element used in an arbitrary blind signature is generated by using open information Info. For example, in the FBS proposed in Non-Patent Document 4, p and q are prime numbers, H 1 (·) is a hash function that maps from an arbitrary bit string to a group Z p * , and g, h, and y are Z p * . Originally, the signer generates z = H 1 (p‖q‖g‖h‖y) (‖ represents data concatenation), but in the present invention, z = H 1 (p‖q‖g‖) h‖y‖Info), or by generating any one of g, h, and y by a similar operation, the FBS of Non-Patent Document 4 can be made PBS.

また、本発明は、上記のようにInfoを含めて群の元を構成するのではなく、事前に決定されたInfoを定数として署名発行処理及び署名検証処理で該Infoを利用するようにプロトコルを変更することで、FBSをPBSに拡張する。   In addition, the present invention does not constitute a group element including Info as described above, but uses a protocol so that Info is used in signature issuing processing and signature verification processing using Info determined in advance as a constant. By changing, the FBS is expanded to PBS.

本発明によれば、署名者などが指定したオープンな情報を含み、かつ追跡機能を有するようなブラインド署名を生成することができる。これにより、追跡機能を有するブラインド署名を応用した鍵証明書発行方式のより柔軟な運用が可能となる。   According to the present invention, it is possible to generate a blind signature that includes open information designated by a signer and the like and has a tracking function. As a result, a more flexible operation of the key certificate issuance method using a blind signature having a tracking function is possible.

以下、本発明の実施の形態について図面を参照して詳述する。なお、本発明は追跡機能を有するブラインド署名(FBS)を部分ブラインド署名(PBS)に拡張するものであるが、高いセキュリティを有することが望ましいという理由から、以下の第1,2の実施の形態ともに、非特許文献2で提案された(ある種の安全性が保証された)FBSを元にPBSへ拡張する例について説明する。但し、本発明の拡張は非特許文献2のFBSに限ったものではなく、他のFBSに容易に適用できることは言うまでもない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Although the present invention extends the blind signature (FBS) having a tracking function to the partial blind signature (PBS), the following first and second embodiments are preferable because it is desirable to have high security. In both cases, an example of extending to PBS based on FBS proposed in Non-Patent Document 2 (a certain kind of safety is guaranteed) will be described. However, it is needless to say that the extension of the present invention is not limited to the FBS of Non-Patent Document 2, and can be easily applied to other FBSs.

[第1の実施の形態]
本実施の形態は、署名者が指定したオープンな情報Infoを含み、かつ追跡機能を有するようなブラインド署名を生成するもので、以下では、非特許文献2で提案されているFBSに対して、非特許文献4で提案されているPBSの技術を適用することでPBSの機能を追加する方法について、図面を用いて説明する。
[First Embodiment]
This embodiment generates a blind signature that includes open information Info specified by a signer and has a tracking function. In the following, for an FBS proposed in Non-Patent Document 2, A method of adding a PBS function by applying the PBS technique proposed in Non-Patent Document 4 will be described with reference to the drawings.

図1は本実施の形態のシステム構成を示す図であり、署名依頼装置10、署名装置20、検証装置30、開示装置(管理装置)40、及びこれら装置を結ぶネットワーク50からなる。署名依頼装置10には、パソコン、携帯端末、携帯電話、その他、利用者が操作する任意の機器(利用者端末装置)が含まれる。署名装置20、検証装置30、開示装置40はサーバ装置であり、その具体的構成は所謂コンピュータシステムと同様である。   FIG. 1 is a diagram showing a system configuration of the present embodiment, which includes a signature requesting device 10, a signature device 20, a verification device 30, a disclosure device (management device) 40, and a network 50 connecting these devices. The signature requesting device 10 includes a personal computer, a mobile terminal, a mobile phone, and any other device (user terminal device) operated by the user. The signature device 20, the verification device 30, and the disclosure device 40 are server devices, and the specific configuration thereof is the same as that of a so-called computer system.

署名依頼装置10、署名装置20、検証装置30開示装置40では、FBSのシステムパラメータprm=(p,q,g,h)が生成、共有されているものとする。ここでp,qはq|p−1となる素数、g,hは乗法群Z の位数qの部分群Gの元である。 It is assumed that the signature request device 10, the signature device 20, the verification device 30 , and the disclosure device 40 generate and share the FBS system parameter prm = (p, q, g, h). Here, p and q are prime numbers of q | p−1, and g and h are elements of the subgroup G of the order q of the multiplicative group Z p * .

<鍵生成>
署名装置20は秘密鍵xを生成・保管し、公開鍵y=gmodpを計算する。ここで、xはq以下のランダムな自然数である。また、開示装置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が保持する情報を示す。
<Key generation>
The signature device 20 generates and stores a secret key x, and calculates a public key y = g x modp. Here, x is a random natural number of q or less. Further, the disclosure device 40 generates and stores a secret key rsk = (x t , dk), and calculates a public key rpk = (y t = g xt modp, ek). Here, x t is q following a random natural number, ek, dk is verifiable encryption with each; a public key and a private key (VE Verifiable Encryption). A description and specific examples of VE are shown in Non-Patent Document 2. All devices 10-40 share y, rpk. The signature requesting apparatus 10 creates a private key / public key pair (Sk, PK) of an arbitrary signature scheme such as an RSA signature or a Schnorr signature. FIG. 1 shows information held by the devices 10 to 40 so far.

<ブラインド署名>
署名依頼装置10は、署名装置20にPKの鍵証明書生成を依頼する。鍵証明書生成の処理は非特許文献2のFBSとほぼ等しいが、Gの元zの生成が異なる。非特許文献2FBSでは、以下のようにしてzを生成している。
z=H(p‖q‖g‖h‖y)
ここでH任意のビット列であるp‖q‖g‖h‖yをGに写す一方向性ハッシュ関数である。本実施の形態では、該FBSにPBSの機能を追加するために、zを以下のようにして生成する。
z=H (p‖q‖g‖h‖y‖Info)
<Blind signature>
The signature requesting device 10 requests the signature device 20 to generate a PK key certificate. The key certificate generation process is almost the same as the FBS of Non-Patent Document 2, but the generation of the element z of G is different. In Non-Patent Document 2 FBS, z is generated as follows.
z = H 1 (p‖q‖g‖h‖y)
Here, H 1 is a one-way hash function that copies an arbitrary bit string p‖q‖g で h‖y to G. In the present embodiment, z is generated as follows in order to add a PBS function to the FBS.
z = H 1 (p‖q‖g‖h‖y‖Info)

ここでInfoは署名装置20が指定したオープンな情報である。なお、Infoの埋め込みについて、基本的には一意的に生成されない元であれば、上記同様の方法により以外の値に対してもInfoの埋め込みが可能である。 Here, Info is open information designated by the signature device 20. As for the embedding of Info, it is basically possible to embed Info for values other than z as long as it is an element that is not uniquely generated.

以上を踏まえ、署名依頼装置10がPKの鍵証明書を取得する手順について説明する。図2に、本実施の形態における鍵証明書生成の詳細な処理フローを示す。
署名依頼装置10は署名装置20に鍵証明書の生成を依頼する(ステップ101)。署名装置20は特定の文字列Infoを署名依頼装置10に返す(ステップ102)。また、署名装置20は署名依頼装置10(または署名依頼者)を識別する情報(ID)を登録する(ステップ103)。
Based on the above, a procedure for the signature requesting apparatus 10 to acquire a PK key certificate will be described. FIG. 2 shows a detailed processing flow of key certificate generation in the present embodiment.
The signature requesting device 10 requests the signature device 20 to generate a key certificate (step 101). The signature device 20 returns a specific character string Info to the signature request device 10 (step 102). Further, the signature device 20 registers information (ID) for identifying the signature request device 10 (or the signature requester) (step 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)。
The signature requesting apparatus 10 performs the following processing.
(A) A random natural number γ of q or less is selected as a blind coefficient (step 104).
(B) z = H 1 (p‖q‖g‖h‖y‖Info), zu = z 1 / γ , ξ = g γ , E = ε ek (γ), P = Γ ((z u , ξ ), Γ, ek) (step 105). Here, ε is an encryption function of verifiable cipher (VE), and E = ε ek (γ) is a ciphertext obtained by encrypting γ with a public key ek using the VE function. Γ is a function for demonstrating zero knowledge to the signature device 20 that the plaintext (= γ) corresponding to E is equal to 1 / log z z u (= γ) and log g ξ (= γ), and P is A predicate for the proof.
(C) Transmit (z u , ξ, E, P) to the signature device 20 (step 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) =y ,z=z/z,PΓ ,y,v),a=g,b=gs1 ,b=hs2 を計算する(ステップ109)。ここで、Γ はlogyt(=v)の値を知っていることを署名依頼装置10にゼロ知識証明する関数であり、P は該証明のための述語である。
(d)(P ,a,b,b)を署名依頼装置に送信する(ステップ110)。
(e)ξを計算する(ステップ111)。
(f)IDとξの対応を示す(ID,ξ)の組を保存する(ステップ112)。
The signature device 20 that has received (z u , ξ, E, P) from the signature request device 10 performs the following processing.
(A) Calculate z = H 1 (p‖q‖g‖h‖y‖Info) and verify whether (z u , ξ, E, P) is a correct result (step 107). If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature requesting apparatus 10 is illegal.
(B) Random natural numbers v, u, s 1 , s 2 , and d less than or equal to q are selected (step 108).
(C) z 1 = y t v, z 2 = z u / z 1, P s = Γ s (z 1, y t, v), a = g u, b 1 = g s1 z 1 d, b 2 = H s2 z 2 d is calculated (step 109). Here, Γ s is a function that proves to the signature requesting apparatus 10 that the value of log yt z 1 (= v) is known , and P s is a predicate for the proof .
(D) (P s , z 1 , a, b 1 , b 2 ) is transmitted to the signature requesting device (step 110).
(E) ξ v is calculated (step 111).
(F) A set of (ID, ξ v ) indicating the correspondence between ID and ξ v is stored (step 112).

署名装置20から(P ,a,b,b)を受信した署名依頼装置10は以下の処理を行う。
(a)( ,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)。
The signature requesting apparatus 10 that has received (P s , z 1 , a, b 1 , b 2 ) from the signature apparatus 20 performs the following processing.
(A) It is verified whether ( z 1 , b 1 , b 2 ) is an element of G and whether (z 1 , y t , P s ) is a correct result (step 113). If both are verification OK, the process proceeds to the next step, and if either one is NG, the process is terminated because the signature device is invalid.
(B) Random natural numbers t 1 , t 2 , t 3 , t 4 , t 5 which are equal to or less than q are selected (step 114).
(C) ζ 1 = z 1 γ, ζ 2 = z / ζ 1, α = ag t1 y t2, β 1 = b 1 γ g t3 ζ 1 t5, β 2 = b 2 γ h t4 ζ 2 t5, ε = H 21 ‖α‖β 1 ‖β 2 ‖PK), e = ε−t 2 −t 5 is calculated (step 115). Here, H 2 is a one-way hash function that copies an arbitrary character string to a natural number of q or less.
(D) Send e to the signature device 20 (step 116).

署名依頼装置10からeを受信した署名装置10は以下の処理を行う。
(a)c=e−d,r=u−cxを計算する(ステップ117)。
(b)((r,c,s,s,d)を署名依頼装置10に送信する(ステップ118)。
The signature device 10 that has received e from the signature request device 10 performs the following processing.
(A) c = ed and r = u-cx are calculated (step 117).
(B) ((r, c, s 1 , s 2 , d) is transmitted to the signature requesting apparatus 10 (step 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)。
The signature requesting apparatus 10 that has received (r, c, s 1 , s 2 , d) from the signature apparatus 20 performs the following processing.
(A) ρ = r + t 1 , ω = c + t 2 , σ 1 = γs 1 + t 3 , σ 2 = γs 2 + t 4 , δ = d + t 5 are calculated (step 119).
(B) It is verified whether or not ω + δ = H 21 ‖g ρ y ω ‖g σ 1 ζ 1 δ ‖ h σ 2 ζ 2 δ ‖ PK) holds (step 120). If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature device 20 is illegal.
(C) Σ = (ζ 1 , ρ, ω, σ 1 , σ 2 , δ) is output as a certificate of PK (step 121).

<署名検証>
署名装置20よりPKの証明書Σ=(ζ,ρ,ω,σ ,σ,δ)を得た署名依頼装置10は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とする。
<Signature verification>
The signature requesting device 10 that has obtained the PK certificate Σ = (ζ 1 , ρ, ω, σ 1 , σ 2 , δ) from the signature device 20 generates a signature S for the message msg using (SK, PK). T = (S, PK, Info, Σ) is a set of signatures including the key certificate.

署名検証は、PKの鍵証明書の正当性検証とメッセージmsgの署名Sの正当性検証からなるとする。図3に、本実施の形態における署名検証の処理フローを示す。
署名依頼装置10は、msg,Tを検証装置30へ送信する(ステップ201)。ここで、T=(S,PK,Info,Σ)であり、Σ=(ζ,ρ,ω,σ ,σ,δ)である。
The signature verification is assumed to consist of validity verification of the PK key certificate and validity verification of the signature S of the message msg. FIG. 3 shows a processing flow of signature verification in the present embodiment.
The signature requesting apparatus 10 transmits msg, T to the verification apparatus 30 (step 201). Here, T = (S, PK, Info, Σ), and Σ = (ζ 1 , ρ, ω, σ 1 , σ 2 , δ).

署名依頼装置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の不正とする。
The verification apparatus 30 that has received (msg, T) from the signature request apparatus 10 performs the following processing.
(A) It is confirmed whether Info satisfies a predetermined condition (step 202). If it is OK, the process proceeds to the next step, and if it is NG, the process is terminated.
(B) z = H 1 (p‖q‖g‖h‖y‖Info) is calculated (step 203).
(C) It is verified whether or not ω + δ = H 21 ‖g ρ y ω ‖g σ 1 ζ 1 δ ‖ h σ 2 (z / ζ 1 δ ) ‖PK) holds (step 204). If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature device 20 is illegal.
(D) Using the signature scheme verification algorithm corresponding to PK, verify whether S is a correct msg signature (step 205). If the verification is NG, the signature device 20 is illegal.

上記処理において、ステップ202〜204はPKの鍵証明書の正当性検証であり、ステップ205はメッシセージmsgの署名Sの正当性検証である。   In the above processing, steps 202 to 204 are the validity verification of the key certificate of the PK, and step 205 is the validity verification of the signature S of the message msg.

<署名追跡>
これは、例えば、メッセージmsgが不正なメッセージだとして、メッセージmsgの署名Sの生成者を特定したい場合に実施する。図4に、本実施の形態における署名追跡の処理フローを示す。
1.検証装置30は、msg,Tを開示装置40、署名装置20に送信する(ステップ301)。
2.開示装置40および署名装置20は検証装置30と同様の検証処理(図3)を行い、検証OKとなることを確認する(ステップ302)。もしNGであれば処理を終了する。
<Signature tracking>
This is performed, for example, when the message msg is an invalid message and it is desired to specify the creator of the signature S of the message msg. FIG. 4 shows a processing flow of signature tracking in the present embodiment.
1. The verification device 30 transmits msg, T to the disclosure device 40 and the signature device 20 (step 301).
2. The disclosure apparatus 40 and the signature apparatus 20 perform the same verification process (FIG. 3) as the verification apparatus 30 and confirm that the verification is OK (step 302). If it is NG, the process is terminated.

3.開示装置40は以下の処理を行う。
(a)I=ζ 1/xtを計算する(ステップ303)。
(b)Iを署名装置20に送信する(ステップ304)。
3. The disclosure device 40 performs the following processing.
(A) I = ζ 1 1 / xt is calculated (step 303).
(B) I is transmitted to the signature device 20 (step 304).

4.開示装置40からIを受信した署名装置20は以下の処理を行う。
(a)保持してある(ID,ξ)からI=ξとなるようなξを見つける(ステップ305)。
(b)該ξに対応するIDから、msgの署名Sを生成した署名依頼装置(または署名依頼者)を特定する(ステップ306)。ここでは署名依頼者とする。
(c)特定した署名依頼者を開示装置40に送信する(ステップ307)。
5.開示装置40は署名装置20から送られた署名依頼者を検証装置30に送信する(ステップ308)。
4). The signature device 20 that has received I from the disclosure device 40 performs the following processing.
(A) Find ξ v such that I = ξ v from the stored (ID, ξ v ) (step 305).
(B) from the ID corresponding to the xi] v, it identifies the signature request device that generated the signature S of msg (or signature requester) (step 306). Here, it is assumed that the signature requester.
(C) The identified signature requester is transmitted to the disclosure device 40 (step 307).
5). The disclosure device 40 transmits the signature requester sent from the signature device 20 to the verification device 30 (step 308).

これにより、開示装置20及び署名装置40が協力した場合に限り、メッセージmsgの署名Sを生成した署名依頼装置(又は署名依頼者)を特定することができる。   Thereby, only when the disclosure device 20 and the signature device 40 cooperate, it is possible to specify the signature requesting device (or the signature requester) that generated the signature S of the message msg.

[第2の実施の形態]
本実施の形態では、非特許文献2で提案されているFBSに対して、署名装置と署名依頼装置が事前に合意して得られる共通情報Infoを、署名発行処理および署名検証処理で定数として用いる必要があるようにすることで、PBSの機能を追加する方法について説明する。
[Second Embodiment]
In the present embodiment, for the FBS proposed in Non-Patent Document 2, the common information Info obtained by the signing device and the signature requesting device agreeing in advance is used as a constant in the signature issuance processing and signature verification processing. A method of adding the PBS function by making it necessary will be described.

本実施の形態のシステム構成は、第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の元である。 The system configuration of this embodiment is the same as that of the first embodiment. As shown in FIG. 1, the signature requesting device 10, the signature device 20, the verification device 30, the disclosure device 40, and a network connecting these devices Consists of. In the signature request apparatus 10, the signature apparatus 20, the verification apparatus 30, and the disclosure apparatus 40, the FBS system parameter prm = (p, q, g, h) is generated and shared as in the first embodiment. Shall. Here, p and q are prime numbers of q | p−1, and g and h are elements of the subgroup G of the order q of the multiplicative group Z p * .

<鍵生成>
署名装置20は秘密鍵xを生成・保管し、y=gmodpを計算する。ここで、xはq以下のランダムな自然数である。開示装置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の実施の形態と同じである。
<Key generation>
The signature device 20 generates and stores a secret key x, and calculates y = g x modp. Here, x is a random natural number of q or less. The disclosure apparatus 40 generates and stores a secret key rsk = (x t , dk), and calculates rpk = (y t = g xt (modp), ek). Here x t is q following a random natural number, ek, dk is verifiable encryption with each; a public key and a private key (VE Verifiable Encryption). All devices 10-40 share y, rpk. The signature requesting apparatus 10 creates a private key / public key pair (SK, PK) of an arbitrary signature scheme such as an RSA signature or a Schnorr signature. Up to this point, the process is the same as in the first embodiment.

<ブラインド署名>
署名依頼装置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)
<Blind signature>
The signature requesting device 10 requests the signature device 20 to generate a PK key certificate. The key certificate generation process is the same as in the first embodiment, but the following changes may be made in the FBS signature issue process of Non-Patent Document 2.
z 2 = z u / z 1 → z u / z 1 Info
ζ 2 = z / ζ 1 → z / ζ 1 Info
ω + δ = H ((ζ 1 ‖g ρ y ω ‖g σ1 ζ 1 δ ‖h σ2 (z / ζ 1 ) δ ‖ msg)
→ H ((ζ 1 ‖g ρ y ω ‖g σ1 ζ 1 δ ‖h σ2 (z / ζ 1 info ) δ ‖ msg)

以下では、署名依頼装置10がPKの鍵証明書を取得する手順を上記の変更を踏まえて説明する。処理フローは図2と同様であるので省略する。
署名依頼装置10は署名装置20に鍵証明書の生成を依頼する。署名装置20は特定の文字列Infoを署名依頼装置10に返す。ここで、Infoはq以下の自然数とする。また、署名装置20は署名依頼装置10(または署名依頼者)を識別する情報(ID)を登録する。
In the following, a procedure for the signature requesting apparatus 10 to acquire a PK key certificate will be described based on the above changes. The processing flow is the same as in FIG.
The signature requesting device 10 requests the signature device 20 to generate a key certificate. The signature device 20 returns a specific character string Info to the signature request device 10. Here, Info is a natural number of q or less. The signature device 20 registers information (ID) for identifying the signature request device 10 (or the signature requester).

署名依頼装置10は以下の処理を行う。
(a)q以下のランダムな自然数γ(ブラインド係数)を選ぶ。
(b)z=H(p‖q‖g‖h‖y),z=z1/γ,ξ=gγ,E=εek(γ),P=Γ((z,ξ),γ,ek)を計算する。ここでεはVEの暗号化関数であり、特にE=εek(γ)は該VEの関数を用いて公開鍵ekによりγを暗号化した暗号文である。ΓはEに対応する平文(=γ)が1/log(=γ)およびlogξ(=γ)と等しいことを署名装置20にゼロ知識証明するための関数であり、特にPは該証明のための述語(predicate)である。
The signature requesting apparatus 10 performs the following processing.
(A) A random natural number γ (blind coefficient) of q or less is selected.
(B) z = H 1 (p‖q‖g‖h‖y), z u = z 1 / γ , ξ = g γ , E = ε ek (γ), P = Γ ((z u , ξ) , Γ, ek). Here, ε is a VE encryption function, and in particular, E = ε ek (γ) is a ciphertext obtained by encrypting γ with the public key ek using the VE function. Γ is a function for proving zero knowledge to the signature device 20 that the plaintext (= γ) corresponding to E is equal to 1 / log z z u (= γ) and log g ξ (= γ), and in particular P Is a predicate for the proof.

(c)(z,ξ,E,P)を署名装置20に送信する。 (C) Send (z u , ξ, E, P) to the signature device 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 を計算する。ここでΓ はlogyt(=v)の値を知っていることを署名依頼装置10にゼロ知識証明するための関数であり、P は該証明のための述語である。
(d)(P,z,a,b,b)を署名依頼装置10に送信する。
(e)ξを計算する。
(f)(ID,ξ)の組を保存する。
The signature device 20 that has received (z u , ξ, E, P) from the signature request device 10 performs the following processing.
(A) Calculate z = H 1 (p‖q‖g‖h‖y) and verify whether (z u , ξ, E, P) is a correct result. If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature requesting apparatus 10 is illegal.
(B) Select random natural numbers v, u, s 1 , s 2 , and d that are less than or equal to q
(C) z 1 = y t v, z 2 = z u / z 1 Info, P s = Γ s (z 1, y t, v), a = g u, b 1 = g s1 z 1 d, b 2 = h s2 z 2 d is calculated. Here, Γ s is a function for proving zero knowledge to the signature requesting apparatus 10 that the value of log yt z 1 (= v) is known , and P s is a predicate for the proof .
(D) (P s , z 1 , a, b 1 , b 2 ) is transmitted to the signature requesting apparatus 10.
(E) ξ v is calculated.
(F) Save the set of (ID, ξ v ).

署名装置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に送信する。
The signature request apparatus 10 that has received (P s , z 1 , a, b 1 , b 2 ) from the signature apparatus 20 performs the following processing.
(A) It is verified whether (z 1 , b 1 , b 2 ) is an element of G and whether (z 1 , y t , P s ) is a correct result. If both are verified OK, the process proceeds to the next step, and if either one is NG, the process is terminated because the signature device 20 is illegal.
(B) Random natural numbers t 1 , t 2 , t 3 , t 4 , t 5 which are less than or equal to q are selected.
(C) ζ 1 = z 1 γ, ζ 2 = z / ζ 1 Info, α = ag t1 y t2, β 1 = b 1 γ g t3 ζ 1 t5, β 2 = b 2 γ h t4 ζ 2 t5, ε = (ζ 1 ‖α‖β 1 ‖β 2 ‖PK), e = ε−t 2 −t 5 is calculated. Here, H 2 is a one-way hash function that copies an arbitrary character string to a natural number of q or less.
(D) Send e to the signature device 20.

署名依頼装置10からeを受信した署名装置20は以下の処理を行う。
(a)c=e−d,r=u−cxを計算する。
(b)(r,c,s,s,d)を署名依頼装置10に送信する。
The signature device 20 that has received e from the signature request device 10 performs the following processing.
(A) Calculate c = ed, r = u−cx.
(B) (r, c, s 1 , s 2 , d) is transmitted to the signature requesting apparatus 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の証明書として出力する。
The signature requesting apparatus 10 that has received (r, c, s 1 , s 2 , d) from the signature apparatus 20 performs the following processing.
(A) ρ = r + t 1 , ω = c + t 2 , σ 1 = γs 1 + t 3 , σ 2 = γs 2 + t 4 , δ = d + t 5 are calculated.
(B) It is verified whether or not ω + δ = H 21 ‖g ρ y ω ‖g σ 1 ζ 1 δ ‖ h σ 2 ζ 2 δ ‖ PK). If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature device 20 is illegal.
(C) Σ = (ζ 1 , ρ, ω, σ 1 , σ 2 , δ) is output as a certificate of PK.

<署名検証>
本実施の形態における署名検証の処理フローを図5に示す。署名装置20よりPKの証明書Σ=(ζ,ρ,ω,σ,σ,δ)を得た署名依頼装置10は、次に(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とする。
<Signature verification>
FIG. 5 shows a processing flow of signature verification in the present embodiment. The signature requesting device 10 that has obtained the PK certificate Σ = (ζ 1 , ρ, ω, σ 1 , σ 2 , δ) from the signature device 20 next uses the signature SSK for the message msg using (SK, PK). And T = (S, PK, Info, Σ) is a signature set including a key certificate.

署名依頼装置10は、メッセージmsg,T=(s,PK,info,Σ)を検証装置30に送信する(ステップ401)。   The signature requesting apparatus 10 transmits a message msg, T = (s, PK, info, Σ) to the verification apparatus 30 (step 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の不正とする。
The verification device 30 that has received msg and T from the signature requesting device 10 performs the following processing.
(A) Check whether Info satisfies a predetermined condition (step 402). If it is OK, the process proceeds to the next step, and if it is NG, the process is terminated.
(B) z = H 1 (p‖q‖g‖h‖y) is calculated (step 403).
(C) It is verified whether or not ω + δ = H 21 ‖g ρ y ω ‖g σ 1 ζ 1 δ ‖ h σ 2 (z / ζ 1 Info ) δ ‖ PK) holds (step 404). If the verification is OK, the process proceeds to the next step, and if it is NG, the process is terminated because the signature device 20 is illegal.
(D) Using a signature method verification algorithm corresponding to PK, verify whether S is a correct signature of msg (step 405). If the verification is NG, the signature device 20 is illegal.

上記処理において、ステップ402〜404はPKの鍵証明書の正当性検証であり、ステップ405はmsgの署名Sの正当性検証である。   In the above processing, steps 402 to 404 are the validity verification of the PK key certificate, and step 405 is the validity verification of the msg signature S.

<署名追跡>
メッセージmsgは不正なメッセージだとして、該msgの署名Sの生成者を特定したい場合、検証装置30は開示装置40および署名装置20にmsg,Tを送付にする。開示装置40および署名装置20はmsg,Tを入力して以下の処理を行う。
<Signature tracking>
When it is determined that the message msg is an illegal message and the generator of the signature S of the msg is to be specified, the verification device 30 sends msg and T to the disclosure device 40 and the signature device 20. The disclosure device 40 and the signature device 20 input msg and T and perform the following processing.

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を生成した署名依頼装置(または署名依頼者)を特定する。
1. The disclosure device 40 and the signature device 20 perform the same verification process (FIG. 5) as the verification device 30 and confirm that the verification is OK. If it is NG, the process is terminated.
2. The disclosure device 40 performs the following processing.
(A) Calculate I = ζ 1 1 / xt .
(B) I is transmitted to the signature device 20.
3. The signature device 20 that has received I from the disclosure device 40 performs the following processing.
(A) Find ξ v such that I = ξ v from (ID, ξ v ).
(B) The signature requesting device (or signature requester) that generated the signature S of the message msg is identified from the ID corresponding to the ξ v .

上記処理は図4と同様である。これにより、開示装置40および署名装置30が協力した場合に限り、メッセージmsgの署名Sを生成した署名依頼装置(または署名依頼者)を特定することが出来る。   The above processing is the same as in FIG. Thereby, only when the disclosure device 40 and the signature device 30 cooperate, the signature requesting device (or the signature requester) that generated the signature S of the message msg can be specified.

なお、図1で示したシステム構成における各装置の一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、あるいは、図2〜図5で示した処理手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもない。また、コンピュータでその処理機能を実現するためのプログラム、あるいは、コンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、FD、MO、ROM、メモリカード、CD、DVD、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。   It is possible to implement the present invention by configuring a part or all of the processing functions of each device in the system configuration shown in FIG. 1 by a computer program and executing the program using the computer, or FIG. It goes without saying that the processing procedure shown in FIGS. 2 to 5 can be constituted by a computer program and the program can be executed by the computer. In addition, a computer-readable recording medium such as an FD, MO, ROM, memory card, CD, or the like is stored in the computer. In addition, the program can be recorded and stored on a DVD, a removable disk, etc., and the program can be distributed through a network such as the Internet.

本発明の実施の形態のシステム構成を示す図。The figure which shows the system configuration | structure of embodiment of this invention. 第1の実施の形態における鍵証明書生成の処理フロー図。FIG. 5 is a process flow diagram of key certificate generation in the first embodiment. 第1の実施の形態における署名検証の処理フロー図。FIG. 6 is a processing flow diagram of signature verification in the first embodiment. 第1の実施の形態における署名追跡の処理フロー図。FIG. 5 is a processing flow diagram of signature tracking in the first embodiment. 第2の実施の形態における署名検証の処理フロー図。FIG. 10 is a processing flow diagram of signature verification in the second embodiment.

10 署名依頼装置
20 署名装置
30 検証装置
40 開示装置
50 ネットワーク
DESCRIPTION OF SYMBOLS 10 Signature request apparatus 20 Signature apparatus 30 Verification apparatus 40 Disclosure apparatus 50 Network

Claims (3)

署名依頼装置、署名装置、検証装置および開示装置を有し、A signature requesting device, a signature device, a verification device, and a disclosure device;
前記署名依頼装置、前記署名装置、前記検証装置および前記開示装置は、それぞれブラインド署名のシステムパラメータprm=(p,q,g,h)(p,qはq|p−1となる素数、g,hは群ZThe signature requesting device, the signature device, the verification device, and the disclosure device are respectively configured as blind signature system parameters prm = (p, q, g, h) (p, q is a prime number for q | p−1, g , H is group Z p * の位数qの部分群Gの元)を保持し、Of the subgroup G of the order q of
前記署名装置は、秘密鍵x(xはq以下のランダムな自然数)を生成し、公開鍵y=gThe signing device generates a secret key x (x is a random natural number less than or equal to q), and a public key y = g x modpを計算して、x,yを保持するとともに、yを前記署名依頼装置、前記検証装置および前記開示装置へ送信して、各装置がyを保持するようにし、modp is calculated and x and y are held, and y is transmitted to the signature requesting device, the verification device, and the disclosure device so that each device holds y.
前記開示装置は、秘密鍵rsk=(xThe disclosure device has a secret key rsk = (x t ,dk)を生成し、公開鍵rpk=(y, Dk) and public key rpk = (y t =g= G xtxt modp,ek)を計算し(xmodp, ek) (x t はq以下のランダムな自然数、dkおよびekはそれぞれ検証可能暗号の秘密鍵および公開鍵)、rsk,rpkを保持するとともに、rpkを前記署名依頼装置、前記署名装置および前記検証装置へ送信して、各装置がrpkを保持するようにし、Is a random natural number less than or equal to q, dk and ek are respectively a verifiable cryptographic private key and public key), rsk, rpk, and rpk is transmitted to the signature requesting device, the signature device, and the verification device Make each device hold rpk,
(1)前記署名依頼装置は署名のための秘密鍵、公開鍵の組(Sk,PK)を作成し、前記署名装置にPKの鍵証明書生成を依頼し、(1) The signature requesting device creates a private key / public key pair (Sk, PK) for signing, requests the signing device to generate a key certificate for the PK,
前記署名装置は、特定の文字列Infoを前記署名依頼装置に返すとともに、前記署名依頼装置又は署名依頼者を識別する情報(ID)を登録し、The signature device returns a specific character string Info to the signature requesting device and registers information (ID) for identifying the signature requesting device or the signature requester,
前記署名依頼装置は、g以下の自然数γをランダムに選び、z=HThe signature requesting device randomly selects a natural number γ of g or less, and z = H 1 (p‖q‖g‖h‖y‖Info)(H(P‖q‖g‖h‖y‖Info) (H 1 は任意のビット列であるp‖q‖g‖h‖y‖InfoをGに写す一方向性ハッシュ関数)、zIs a one-way hash function that maps p‖q‖g‖h‖y‖Info, which is an arbitrary bit string, to G), z u =z= Z 1/γ1 / γ ,ξ=g, Ξ = g γγ ,E=ε, E = ε ekek (γ)(ε(Γ) (ε ekek はekでγを暗号化する関数),P=Γ((zIs a function for encrypting γ with ek), P = Γ ((z u ,ξ),γ,ek)(ΓはEに対応する平文(=γ)が1/log, Ξ), γ, ek) (Γ is the plaintext corresponding to E (= γ) is 1 / log z z u (=γ)およびlog(= Γ) and log g ξ(=γ)と等しいことを署名装置にゼロ知識証明するための関数)を計算し、(za function to prove zero knowledge to the signing device that is equal to ξ (= γ), and (z u ,ξ,E,P)を前記署名装置に送信し、, Ξ, E, P) to the signing device,
前記署名装置は、z=HThe signature device is z = H 1 (p‖q‖g‖h‖y‖Info)を計算して、(z(P‖q‖g‖h‖y‖Info) is calculated and (z u ,ξ,E,P)が正しいか検証し、正しい場合、q以下の自然数v,u,s, Ξ, E, P) are correct, and if they are correct, natural numbers v, u, s below q 1 ,s, S 2 ,dをランダムに選び、z, D are selected at random, z 1 =y= Y t v ,z, Z 2 =z= Z u /z/ Z 1 ,P, P s =Γ= Γ s (z(Z 1 ,y, Y t ,v)(Γ, V) (Γ s はlogIs log ytyt z 1 (=v)の値を知っていることを署名依頼装置にゼロ知識証明するための関数)、a=g(= Function to prove zero knowledge to the signature requesting device that the value of v is known), a = g u ,b, B 1 =g= G s1s1 z 1 d ,b, B 2 =h= H s2s2 z 2 d ,ξ, Ξ v を計算し、(PAnd calculate (P s ,z, Z 1 ,a,b, A, b 1 ,b, B 2 )を前記署名依頼装置に送信し、(ID,ξ) To the signature requesting device, and (ID, ξ) v )を保存し、)
前記署名依頼装置は(zThe signature requesting device is (z 1 ,b, B 1 ,b, B 2 )がGの元かどうか、(z) Is an element of G, (z 1 ,y, Y t ,P, P s )が正しいか検証し、(z) Is correct and (z 1 ,b, B 1 ,b, B 2 )がGの元であり、かつ、(z) Is an element of G, and (z 1 ,y, Y t ,P, P s )が正しい場合、q以下の自然数t) Is correct, natural number t less than or equal to q 1 ,t, T 2 ,t, T 3 ,t, T 4 ,t, T 5 をランダムに選び、ζRandomly select ζ 1 =z= Z 1 γγ ,ζ, Ζ 2 =z/ζ= Z / ζ 1 ,α=ag, Α = ag t1t1 y t2t2 ,β, Β 1 =b= B 1 γγ g t3t3 ζζ 1 t5t5 ,β, Β 2 =b= B 2 γγ h t4t4 ζζ 2 t5t5 ,ε=H, Ε = H 2 (ζ 1 ‖α‖β‖Α‖β 1 ‖β‖Β 2 ‖PK)(H‖PK) (H 2 は任意の文字列をq以下の自然数に写す一方向性ハッシュ関数)、e=ε−tIs a one-way hash function that copies an arbitrary character string to a natural number of q or less), e = ε−t 2 −t-T 5 を計算し、eを前記署名装置に送信し、And sends e to the signing device;
前記署名装置は、c=e−d,r=u−cxを計算し、(r,c,sThe signature device calculates c = ed, r = u-cx, and (r, c, s 1 ,s, S 2 ,d)を前記署名依頼装置に送信し、, D) to the signature requesting device,
前記署名依頼装置は、ρ=r+tThe signature requesting device has ρ = r + t 1 ,ω=c+t, Ω = c + t 2 ,σ, Σ 1 =γs= Γs 1 +t+ T 3 ,σ, Σ 2 =γs= Γs 2 +t+ T 4 ,δ=d+t, Δ = d + t 5 を計算し、ω+δ=HAnd ω + δ = H 2 (ζ 1 ‖g‖G ρρ y ωω ‖g‖G σ1σ1 ζζ 1 δδ ‖h‖H σ2σ2 ζζ 2 δδ ‖PK)が成り立つか検証し、成り立つ場合、Σ=(ζIt is verified whether or not (成 り PK) holds, and if it holds, Σ = (ζ 1 ,ρ,ω,σ, Ρ, ω, σ 1 ,σ, Σ 2 ,δ)をPKの証明書とする、, Δ) as a PK certificate,
(2)前記署名依頼装置は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とし、msg,Tを出力し、(2) The signature requesting device generates a signature S for the message msg using (SK, PK), T = (S, PK, Info, Σ) as a signature set including a key certificate, and msg , T,
前記検証装置は、msg,Tを入力として、Infoが所定の条件を満たすか確認し、満たす場合、z=HThe verification device receives msg and T as input and checks whether Info satisfies a predetermined condition. 1 (p‖q‖g‖h‖y‖Info)を計算し、ω+δ=H(P‖q‖g‖h‖y‖Info) is calculated and ω + δ = H 2 (ζ 1 ‖g‖G ρρ y ωω ‖g‖G σ1σ1 ζζ 1 δδ ‖h‖H σ2σ2 (z/ζ(z / ζ 1 )) δδ ‖PK)が成り立つか検証し、成り立つ場合、Sがmsgの正しい署名であるか検証する、Verifies that) PK) holds, and if so, verifies that S is the correct signature of msg,
(3)前記開示装置および前記署名装置はmsg,Tを入力し、(3) The disclosure device and the signature device input msg and T,
前記開示装置は、I=ζThe disclosed apparatus has I = ζ 1 1/xt1 / xt を計算し、Iを前記署名装置に送信し、And send I to the signing device,
前記署名装置は、(ID,ξThe signature device is (ID, ξ v )の組からI=ξ) From the set I = ξ v となるようなξΞ such that v を見つけ、該ξFind ξ v に対応するIDから、msgの署名Sを生成した署名依頼装置または署名依頼者を特定する、Identifying the signature requesting device or signature requester that generated the msg signature S from the ID corresponding to
ことを特徴とする部分ブラインド署名・検証・追跡方法。A partial blind signature / verification / tracking method.
署名依頼装置、署名装置、検証装置および開示装置を有し、A signature requesting device, a signature device, a verification device, and a disclosure device;
前記署名依頼装置、前記署名装置、前記検証装置および前記開示装置は、それぞれブラインド署名のシステムパラメータprm=(p,q,g,h)(p,qはq|p−1となる素数、g,hは群ZThe signature requesting device, the signature device, the verification device, and the disclosure device are respectively configured as blind signature system parameters prm = (p, q, g, h) (p, q is a prime number for q | p−1, g , H is group Z p * の位数qの部分群Gの元)を保持し、Of the subgroup G of the order q of
前記署名装置は、秘密鍵x(xはq以下のランダムな自然数)を生成し、公開鍵y=gThe signing device generates a secret key x (x is a random natural number less than or equal to q), and a public key y = g x modpを計算して、x,yを保持するとともに、yを前記署名依頼装置、前記検証装置および前記開示装置へ送信して、各装置がyを保持するようにし、modp is calculated and x and y are held, and y is transmitted to the signature requesting device, the verification device, and the disclosure device so that each device holds y.
前記開示装置は、秘密鍵rsk=(xThe disclosure device has a secret key rsk = (x t ,dk)を生成し、公開鍵rpk=(y, Dk) and public key rpk = (y t =g= G xtxt modp,ek)を計算し(xmodp, ek) (x t はq以下のランダムな自然数、dkおよびekはそれぞれ検証可能暗号の秘密鍵および公開鍵)、rsk,rpkを保持するとともに、rpkを前記署名依頼装置、前記署名装置および前記検証装置へ送信して、各装置がrpkを保持するようにし、Is a random natural number less than or equal to q, dk and ek are respectively a verifiable cryptographic private key and public key), rsk, rpk, and rpk is transmitted to the signature requesting device, the signature device, and the verification device Make each device hold rpk,
(1)前記署名依頼装置は署名のための秘密鍵、公開鍵の組(Sk,PK)を作成し、前記署名装置にPKの鍵証明書生成を依頼し、(1) The signature requesting device creates a private key / public key pair (Sk, PK) for signing, requests the signing device to generate a key certificate for the PK,
前記署名装置は、特定の文字列Infoを前記署名依頼装置に返すともに、前記署名依頼装置又は署名依頼者を識別する情報(ID)を登録し、The signature device returns a specific character string Info to the signature requesting device and registers information (ID) for identifying the signature requesting device or the signature requester,
前記署名依頼装置は、g以下の自然数γをランダムに選び、z=HThe signature requesting device randomly selects a natural number γ of g or less, and z = H 1 (p‖q‖g‖h‖y)(H(P‖q‖g‖h‖y) (H 1 は任意のビット列であるp‖q‖g‖h‖yをGに写す一方向性ハッシュ関数)、zIs a one-way hash function that copies p‖q‖g‖h‖y, which is an arbitrary bit string, to G), z u =z= Z 1/γ1 / γ ,ξ=g, Ξ = g γγ ,E=ε, E = ε ekek (γ)(ε(Γ) (ε ekek はekでγを暗号化する関数),P=Γ((zIs a function for encrypting γ with ek), P = Γ ((z u ,ξ),γ,ek)(ΓはEに対応する平文(=γ)が1/log, Ξ), γ, ek) (Γ is the plaintext corresponding to E (= γ) is 1 / log z z u (=γ)およびlog(= Γ) and log g ξ(=γ)と等しいことを署名装置にゼロ知識証明するための関数)を計算し、(za function to prove zero knowledge to the signing device that is equal to ξ (= γ), and (z u ,ξ,E,P)を前記署名装置に送信し、, Ξ, E, P) to the signing device,
前記署名装置は、z=HThe signature device is z = H 1 (p‖q‖g‖h‖y)を計算して、(z(P‖q‖g‖h‖y) is calculated and (z u ,ξ,E,P)が正しいか検証し、正しい場合、q以下の自然数v,u,s, Ξ, E, P) are correct, and if they are correct, natural numbers v, u, s below q 1 ,s, S 2 ,dをランダムに選び、z, D are selected at random, z 1 =y= Y t v ,z, Z 2 =z= Z u /z/ Z 1 InfoInfo ,P, P s =Γ= Γ s (z(Z 1 ,y, Y t ,v)(Γ, V) (Γ s はlogIs log ytyt z 1 (=v)の値を知っていることを署名依頼装置にゼロ知識証明するための関数)、a=g(= Function to prove zero knowledge to the signature requesting device that the value of v is known), a = g u ,b, B 1 =g= G s1s1 z 1 d ,b, B 2 =h= H s2s2 z 2 d ,ξ, Ξ v を計算し、(PAnd calculate (P s ,z, Z 1 ,a,b, A, b 1 ,b, B 2 )を署名依頼装置に送信し、(ID,ξ) To the signature requesting device, and (ID, ξ v )を保存し、)
前記署名依頼装置は(zThe signature requesting device is (z 1 ,b, B 1 ,b, B 2 )がGの元かどうか、(z) Is an element of G, (z 1 ,y, Y t ,P, P s )が正しいか検証し、(z) Is correct and (z 1 ,b, B 1 ,b, B 2 )がGの元であり、かつ、(z) Is an element of G, and (z 1 ,y, Y t ,P, P s )が正しい場合、q以下の自然数t) Is correct, natural number t less than or equal to q 1 ,t, T 2 ,t, T 3 ,t, T 4 ,t, T 5 をランダムに選び、ζRandomly select ζ 1 =z= Z 1 γγ ,ζ, Ζ 2 =z/ζ= Z / ζ 1 InfoInfo ,α=ag, Α = ag t1t1 y t2t2 ,β, Β 1 =b= B 1 γγ g t3t3 ζζ 1 t5t5 ,β, Β 2 =b= B 2 γγ h t4t4 ζζ 2 t5t5 ,ε=H, Ε = H 2 (ζ 1 ‖α‖β‖Α‖β 1 ‖β‖Β 2 ‖PK)(H‖PK) (H 2 は任意の文字列をq以下の自然数に写す一方向性ハッシュ関数)、e=ε−tIs a one-way hash function that copies an arbitrary character string to a natural number of q or less), e = ε−t 2 −t-T 5 を計算し、eを前記署名装置に送信し、And sends e to the signing device;
前記署名装置は、c=e−d,r=u−cxを計算し、(r,c,sThe signature device calculates c = ed, r = u-cx, and (r, c, s 1 ,s, S 2 ,d)を前記署名依頼装置に送信し、, D) to the signature requesting device,
前記署名依頼装置は、ρ=r+tThe signature requesting device has ρ = r + t 1 ,ω=c+t, Ω = c + t 2 ,σ, Σ 1 =γs= Γs 1 +t+ T 3 ,σ, Σ 2 =γs= Γs 2 +t+ T 4 ,δ=d+t, Δ = d + t 5 を計算し、ω+δ=HAnd ω + δ = H 2 (ζ 1 ‖g‖G ρρ y ωω ‖g‖G σ1σ1 ζζ 1 δδ ‖h‖H σ2σ2 ζζ 2 δδ ‖PK)が成り立つか検証し、成り立つ場合、Σ=(ζIt is verified whether or not (成 り PK) holds, and if it holds, Σ = (ζ 1 ,ρ,ω,σ, Ρ, ω, σ 1 ,σ, Σ 2 ,δ)をPKの証明書とする、, Δ) as a PK certificate,
(2)前記署名依頼装置は、(SK,PK)を用いてメッセージmsgに対する署名Sを生成し、T=(S,PK,Info,Σ)を鍵証明書を含んだ署名の組とし、msg,Tを出力し、(2) The signature requesting device generates a signature S for the message msg using (SK, PK), T = (S, PK, Info, Σ) as a signature set including a key certificate, and msg , T,
前記検証装置は、msg,Tを入力として、Infoが所定の条件を満たすか確認し、満たす場合、z=HThe verification device receives msg and T as input and checks whether Info satisfies a predetermined condition. 1 (p‖q‖g‖h‖y)を計算し、ω+δ=H(P‖q‖g‖h‖y) is calculated and ω + δ = H 2 (ζ 1 ‖g‖G ρρ y ωω ‖g‖G σ1σ1 ζζ 1 δδ ‖h‖H σ2σ2 (z/ζ(z / ζ 1 InfoInfo )) δδ ‖PK)が成り立つか検証し、成り立つ場合、Sがmsgの正しい署名であるか検証する、Verifies that) PK) holds, and if so, verifies that S is the correct signature of msg,
(3)前記開示装置および前記署名装置はmsg,Tを入力し、(3) The disclosure device and the signature device input msg and T,
前記開示装置は、I=ζThe disclosed apparatus has I = ζ 1 1/xt1 / xt を計算し、Iを前記署名装置に送信し、And send I to the signing device,
前記署名装置は、(ID,ξThe signature device is (ID, ξ v )の組からI=ξ) From the set I = ξ v となるようなξΞ such that v を見つけ、該ξFind ξ v に対応するIDから、msgの署名Sを生成した署名依頼装置または署名依頼者を特定する、Identifying the signature requesting device or signature requester that generated the msg signature S from the ID corresponding to
ことを特徴とする部分ブラインド署名・検証・追跡方法。A partial blind signature / verification / tracking method.
署名依頼装置、署名装置、検証装置および開示装置を備え、請求項1もしくは2に記載の部分ブラインド署名・検証・追跡方法を実施することを特徴とする部分ブラインド署名・検証・追跡システム。A partial blind signature / verification / tracking system comprising a signature requesting device, a signature device, a verification device, and a disclosure device, wherein the partial blind signature / verification / tracking method according to claim 1 or 2 is implemented.
JP2005201556A 2005-07-11 2005-07-11 Partial blind signature / verification / tracking method and system Active JP4577720B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005201556A JP4577720B2 (en) 2005-07-11 2005-07-11 Partial blind signature / verification / tracking method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005201556A JP4577720B2 (en) 2005-07-11 2005-07-11 Partial blind signature / verification / tracking method and system

Publications (2)

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

Family

ID=37756784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005201556A Active JP4577720B2 (en) 2005-07-11 2005-07-11 Partial blind signature / verification / tracking method and system

Country Status (1)

Country Link
JP (1) JP4577720B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5114733B2 (en) * 2007-04-27 2013-01-09 国立大学法人 東京大学 Access control device, user terminal and program
CN114205081B (en) * 2021-12-03 2023-12-19 中国科学院大学 Blind collaborative signature method for protecting user privacy

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284271A (en) * 1996-04-18 1997-10-31 Nippon Telegr & Teleph Corp <Ntt> Blind signature method and system with limitation
JP2001343893A (en) * 2000-05-30 2001-12-14 Nippon Telegr & Teleph Corp <Ntt> Partial blind signature scheme

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284271A (en) * 1996-04-18 1997-10-31 Nippon Telegr & Teleph Corp <Ntt> Blind signature method and system with limitation
JP2001343893A (en) * 2000-05-30 2001-12-14 Nippon Telegr & Teleph Corp <Ntt> Partial blind signature scheme

Also Published As

Publication number Publication date
JP2007020060A (en) 2007-01-25

Similar Documents

Publication Publication Date Title
EP3642997B1 (en) Secure communications providing forward secrecy
Camenisch Better privacy for trusted computing platforms
Delavar et al. PUF‐based solutions for secure communications in Advanced Metering Infrastructure (AMI)
JP2012098690A (en) Authentication device, authentication method, program, and signature generation device
Camenisch et al. Anonymous attestation with subverted TPMs
US8015398B2 (en) Set membership proofs in data processing systems
WO2019093478A1 (en) Key exchange device, key exchange system, key exchange method, and key exchange program
EP2846492A1 (en) Cryptographic group signature methods and devices
JP6041864B2 (en) Method, computer program, and apparatus for data encryption
US8356182B2 (en) Electronic signature system and electronic signature verifying method
WO2010013699A1 (en) Signature system
JP2024506720A (en) User-controlled linkability of anonymous signature schemes
JP4571117B2 (en) Authentication method and apparatus
JP4577720B2 (en) Partial blind signature / verification / tracking method and system
JP4791828B2 (en) Group signature system, apparatus, program and method
Heydari et al. An Improved Authentication Scheme for Electronic Payment Systems in Global Mobility Networks
JP6634171B2 (en) Apparatus, method and program for certifying public key reliability
Yap et al. On the security of a lightweight authentication and encryption scheme for mobile ad hoc network
JP2009225356A (en) Digital signature system, apparatus and program
Park et al. A proxy blind signature scheme with proxy revocation
CN114128213B (en) Apparatus, method, and program for verifying the authenticity of a public key
TWI248744B (en) Multisignature scheme with message recovery for group authorization in mobile networks
JP4518397B2 (en) Signature generator identity verification method and system, and program
Chatterjee et al. Encrypting Messages for Incomplete Chains of Certificates
Xie et al. Self‐certified proxy convertible authenticated encryption: formal definitions and a provably secure scheme

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