A Group Signature Scheme Based on the Integer Factorization and the Subgroup Discrete Logarithm Problems (Cryptography)

Abstract

Group signature schemes allow a user, belonging to a specific group of users, to sign a message in an anonymous way on behalf of the group. In general, these schemes need the collaboration of a Trusted Third Party which, in case of a dispute, can reveal the identity of the real signer. A new group signature scheme is presented whose security is based on the Integer Factorization Problem (IFP) and on the Subgroup Discrete Logarithm Problem (SDLP).

Keywords: Digital signature, Group signature, Public key cryptography.

Introduction

As it is well-known, there are different protocols to determine digital signatures. In general, these protocols are based on public key cryptosystems [1,2,3]. The main characteristic of this signature schemes is that each signer has one public key and one private key.

Moreover, the procedures of digital signatures are made more efficient if hash functions are used [4]. The hash functions are public and they allow to sign a digest or hash of the message.

Group signature schemes were proposed by Chaum and van Heyst in 1991 [5]. These schemes permit a signer group to sign a given message such that only a member of the group computes the signature on behalf of the whole group. A Trusted Third Party (T) collaborates in the generation of the keys and is able to reveal the identity of the user who signed the message, if a dispute arises. The main characteristics defining the group signatures are the following:


1. Only a member of the signer group signs the message.

2. The receiver of the message can verify that the signature of the message was generated by a member of the signer group, but he cannot determine which member of the group was the signer.

3. If a dispute arises, it is possible to open the signature in order to determine who was the actual signer of the message.

Group signatures can be understood as an extension of credential authentication and membership authentication schemes. In the first schemes, a user proves that he belongs to a specific group [6]; whereas in the second ones, a member of a group can convince a verifier that he belongs to that group without revealing him his identity [7,8].

There exist several proposals for group signatures, which use a number of cryptographic primitives. Some of these proposals need a Trusted Third Party (TTP), T, at least for the initialization process. Other schemes, however, allow any user to create the group he chooses to belong to.

As a general rule, group signatures make use of schemes whose security is based on computationally-intractable mathematical problems [9,10,11]. Typically, such problems are the Integer Factorization Problem (IFP) and the Discrete Logarithm Problem (DLP).

Nevertheless, most of these protocols show some limitations. For example, the schemes described in [12,13,14] have a security problem [15]. Moreover, the security of the schemes presented in [16,17] is tested under artificial and unlikely conditions [18].

The proposed group signature scheme presented here guarantees that a true group signature is generated for a given message. Moreover, the scheme improves existing protocols in terms of user friendliness, computational efficiency, time and band-width saving. Moreover, this proposal verifies the properties required for group signature schemes: Only a group member can validly sign a document or message. The signed-message receiver is able to verify that the signature is a valid group signature, i.e., it has been carried out by one legitimate member of the group. However, the receiver will not be able to determine which particular group member actually signed the message. Finally, if required (in case of a dispute, for example) it is possible to disclose the signer, i.e., to reveal which user actually signed the message.

The rest of this paper is organized as follows: In section 2 a group signature scheme based on the Integer Factorization and Subgroup Discrete Logarithm Problems is proposed. In section 3, the main properties of the new scheme are shown. The security analysis of the proposal is performed in section 4, and finally, the conclusions are presented in section 5.

A Group Signature Scheme Based on IFP and SDLP

In this section we propose a group signature scheme for which a randomly chosen member of a given group signs a document, on behalf of the whole group, making use of his private key. The verifier of the signature checks whether or not the signature corresponds to one of them, using the public key that all the members of the group share. Moreover, the verifier will not be able to decide who was the original signer.

Let G = {Ui,U2,… ,Ut} be the signer group and let T be the Trusted Third Party.

Setup Phase

In this phase, T generates its pre-key, the public key shared by the group, as well as helps the members of G to generate their private keys [19].

Pre-key generation. T generates its pre-key as follows: 1. T chooses two large primes p and q, such that

tmp18-401_thumb

where r,p1,q1 are prime numbers,tmp18-402_thumbwith gcd(ui,u2) = 2, that is, u\ = 2vi, u2 = 2v2, and gcd(v1 ,v2) = 1.

In order to guarantee the security of the scheme, the bitlength of r is selected so that the Subgroup Discrete Logarithm Problem (SDLP) of order r in Z* be computationally infeasible. 2. T computes

tmp18-404_thumb

wheretmp18-405_thumbis the Euler function,tmp18-406_thumbis the Carmichael function, and lcm represents the least common multiple.

Then, T selects an elementtmp18-407_thumbwith multiplicative order r modulo n, such that

tmp18-411_thumb

Note that this element, a, can be efficiently computed as T knows the factorization of n and consequently it knowstmp18-412_thumb[19, Lemma 3.1]. We denote by Sr the subgroup of Z* generated by a. 3. T generates a secret random numbertmp18-413_thumband determines

tmp18-416_thumb

4. T publishes the values (a, r, f3, n); whereas it keeps secret the values of (p, q, s).

With the previous hypothesis, the security of T’s secret, s, is based on the Integer Factorization Problem (IFP) and on the Subgroup Discrete Logarithm Problem (SDLP).

Key generation. In order to determine the private keys of the members of G, T computes its private key and the public key which will be shared by all the signers of G.

To do this, T generates four random numberstmp18-417_thumbas its private key and determines the shared public key for G by computing

tmp18-419_thumb

From (2), we have

tmp18-421_thumb

that is, there exist integers

Hence,

tmp18-422_thumb

that is, there exist integers tmp18-423_thumb such that

tmp18-424_thumb

In order to guarantee that T cannot impersonate any user of G, an interactive session between each user Ui and T is necessary to determine the private key of tmp18-425_thumbHence, the following interactive protocol is developed:

1. Ui generates two secret integerstmp18-426_thumbat random and sends to T the values oftmp18-427_thumbin a secure way for protecting both secret integers.

2. T computes

tmp18-431_thumb

From (3), T can compute Ai,Ci since it knows h,k,abi, and adi, but it cannot compute ai,ci because it cannot solve the SDLP. Then T sends to Ui the values of Ai, Ci by using a secure channel. 3. The private key of Ui is the set (bi,di,Ai,Ci). Note that for Ui is also impossible to compute the values of ai,ci.

Remark. Note that T knows two values of the U’s private, Ai,Ci, but it is impossible for it to know the rest of that key. Moreover, for both Ui and T it is impossible to compute the values ai: ci because they are protected by the SDLP.

Key verification. For verifying the pre-key of T, each members of the signer group,tmp18-432_thumbmust check

tmp18-434_thumb

Moreover, each signer,tmp18-435_thumbmust verify that his private key corresponds to the shared public key, i.e., must check if it holds:

tmp18-437_thumb

In fact:

tmp18-438_thumb

Group Signature Generation

Let M be the message to be signed by a member of G. We can assume that after computing its hash value (by using, for example, a public hash function from the SHA-2 family), we have (j(M) = m. For signing M on behalf of the group G, a random and anonymous member of G is chosen, for example, Ui. Next, U\ does the following.

1. Ui generates a secret integertmp18-439_thumbat random. This value must be generated each time a message is signed.

2. Ui determines his signature, (Fi,Gi,Hi), for M, computing the following values:

tmp18-441_thumb

3. Finally, T publishes the group signature for the message M: (F, G, H) = (Fj, Gj,Hi).

Remark. Nobody can impersonate the user Ui because he is the only one knowing the values bi,di, and Xi.

Group Signature Verification

Let (F, G, H) be a group signature of G for the message M. In order to verify this signature, any verifier knowing the public key of the group G, (P,Q), can check that

tmp18-442_thumb

The equation (7) can be immediately justified from expressions (4)-(6) as follows:

tmp18-443_thumb

Properties of the New Scheme

The proposed scheme has the following properties:

1. All the operations involved in the different phases described in the previous paragraphs can be efficiently computed in polynomial time.

2. Despite T knows part of Ui’s private key, it cannot forge the signature determined by Ui as the signer has generated at random the value: Xi. Nevertheless, it can generate a valid group signature.

3. The verifier is only able to test whether the signature was generated by a member of the signer group and it is not able to ascertain the identity of the actual signer.

4. In case of dispute, T can disclose the signer since it knows part of the private key of each member of G.

In fact, as T knows the values of Ai and Ci of the signer Ui, by using the equations in (6) defining the group signature, it can compute

tmp18-444_thumb

Then, T can prove, without the collaboration of Ui, that

tmp18-445_thumb

Security Analysis

Moreover, the scheme is secure as no member of G, say U, knowing only his own private key, (bi,di,Ai,Ci), and the shared public key,tmp18-446_thumb tmp18-447_thumbcan determine neither the secret value s of T, nor its private key (ao, bo, co, do).

In fact, determining s from a andtmp18-448_thumbsee formula (1), means solving the discrete logarithm problem in the subgroup Sr, of order r generated by a, which is impossible as the size of r was chosen such that the SDLP was unfeasible to solve, and moreover, the factorization of n is infeasible as well.

Moreover, the private key of T was generated at random and it is only known that it verifies the equation (2), but computing any of the values of this key implies solving the DLP in Z* .

It is also impossible for any Ui to determine the values of h = ai + s • bi, and k = s • ci + di, as he only knows bi,di,aai,@ci. In all cases, it is necessary to solve a discrete logarithm problem.

Furthermore, two members of G, say Ui and Uj, could conspire and try to compute any of the secret values of T: s,h,k,a0,b0,c0,d0, or generate a false signature for the group. To carry out any of these attacks, both could generate their signatures for a message, say (Fi,Gi,Hi) and (Fj,Gj,Hj), respectively. Then, from the verification identity (7), they have

tmp18-452_thumb

Hence, they obtain

tmp18-453_thumb

or equivalently,

tmp18-454_thumb

and as a has order r modulo n, it results

tmp18-455_thumb

that is, they could obtain

tmp18-456_thumb

Nevertheless, none of them know the values oftmp18-457_thumbso they cannot compute s.

Finally, nobody is able to forge a group signature for the message M without this fact being detected and proved by T. In fact, a forger could know the public key, (P, Q), the message, M, its hash, m, and the valuestmp18-458_thumbFrom these  data, the forger can choose an elementtmp18-459_thumbdetermine the value

tmp18-463_thumb and publish the settmp18-464_thumbfor a hash valuetmp18-465_thumbas a group signature for the message M, that passes the verification equation (7).

Nevertheless, T can prove that this group signature is a forgery by computing

tmp18-468_thumb

and showing that tmp18-469_thumb

Conclusions

A new group signature scheme has been proposed. The security of the scheme is based on two difficult problems from Number Theory: Integer factorization and subgroup discrete logarithms (and the DLP in the key generation).

The scheme verifies the properties required for general group signature schemes. Any single member of the signer group is able to sign the message. The receiver of the message can verify that the signature of the message was generated by a actual member of the signer group, but he cannot determine which member of the group was the signer. If a dispute arises, a Trusted Third Party can open the signature and determine who was the signer of the message.

The group signature scheme is efficient since the computations only require polynomial time and moreover it is secure against conspiracy attacks and against forgery.

Next post:

Previous post: