Next Article in Journal
On Linear Codes over Local Rings of Order p4
Previous Article in Journal
Hybrid Deep Neural Network Approaches for Power Quality Analysis in Electric Arc Furnaces
Previous Article in Special Issue
Enhancing Autism Spectrum Disorder Classification with Lightweight Quantized CNNs and Federated Learning on ABIDE-1 Dataset
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Attribute-Based Designated Combiner Transitive Signature Scheme

1
School of Mathematics and Statistics, Fujian Normal University, Fuzhou 350117, China
2
Key Laboratory of Analytical Mathematics and Applications (Ministry of Education), Fujian Normal University, Fuzhou 350117, China
3
Fujian Key Laboratory of Financial Information Processing, Putian University, Putian 351100, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(19), 3070; https://doi.org/10.3390/math12193070
Submission received: 30 August 2024 / Revised: 27 September 2024 / Accepted: 27 September 2024 / Published: 30 September 2024
(This article belongs to the Special Issue Advances in Mathematics Computation for Software Engineering)

Abstract

:
Transitive signatures allow any entity to obtain a valid signature of ( i , k ) by combining signatures of ( i , j ) and ( j , k ) . However, the traditional transitive signature scheme does not offer fine-grained control over the combiner. To address this issue, we propose a formal definition of the attribute-based designated combiner transitive signature (ABDCTS) and its security model, where only entities whose inherent attributes meet the access policy can combine signatures. By introducing the fine-grained access control structure, control over the combiner is achieved. To demonstrate the feasibility of our primitive, this paper presents the first attribute-based designated combiner transitive signature scheme. Under an adaptive chosen-message attack, we prove its security based on the one-more CDH problem and the co-CDH problem, and that its algorithms have robustness.

1. Introduction

A digital signature is an important technology in the cryptography for protecting data security. It uses specific algorithms to verify the source and integrity of data, and is typically used to ensure the authenticity of network data and to prevent data tampering. Currently, digital signatures are widely used in electronic contract, electronic voting, electronic payment, and other fields.
Traditional digital signatures only involve simple signing and verification services, which obviously cannot meet the needs of some scenarios. Fo exaple, given an administrative domain with n nodes; clearly, a graph with n nodes can have O ( n 2 ) edges, and when using a traditional digital signature to authenticate the entire graph, we need to sign each edge, which will result in the signing complexity, as O ( n 2 ) . In order to optimize the authentication operations of large-graph data, Micali and Rivest [1] proposed the concept of a transitive signature, allowing any entity to obtain an effective signature of ( i , k ) by combining two signatures of ( i , j ) and ( j , k ) . Thus, a valid signature for ( i , j ) can be obtained by combining any signature chain of edge sequences on the path from i to j. This only requires O ( n ) signatures to authenticate the entire administrative domain, thereby greatly reducing the signing complexity.
Even though the ability to combine signatures offers great convenience for authenticating large-graph data, in some cases, the signer might not want that combinability to be public. As shown in Figure 1, a chairman provides each member of his company a transitive signature, but only wants the department manager Alice (resp., Bob) to be able to combine his team A (resp., B) members’ signatures, while the others cannot. To achieve this goal, one solution is to issue public and private keys to each manager, and then use their public keys to disguise the signatures of their team members. However, this approach would result in a high cost. Another measure is to establish an access control policy to achieve fine-grained control over combiners, allowing only entities with both “A” and “manager” attributes to combine the signatures of A department members. Access control policy is a kind of authorization. The signer sets an access control policy that authorizes the combination capability of transitive signatures to entities with a specific set of attributes, that is, entities that do not meet the access control policy cannot combine signatures. In 2000, Rivest posed an open question: how to design transitive signature with a designated combiner, allowing only the entity specified by the signer to have the ability to combine signatures. There is currently no proposed transitive signature with a designated combiner, making further research in this area worthwhile.

1.1. Relate Works

The concept of transitive signatures was proposed by Micali and Rivest [1] in 2002. They designed two schemes based on the discrete logarithm problem and the RSA problem, but the security of the RSA-based scheme is limited to non-adaptive chosen message attacks. In 2005, Bellare and Neven [2,3] proposed multiple transitive signature schemes based on RSA, one-more discrete logarithm problem, and one-more gap Diffie–Hellman problem, all of which offer performance improvements greater than [1]. To address the efficiency issues caused by using special hash functions in the schemes, Lin et al. [4] introduced a scheme constructed using general hash functions, significantly improving efficiency by reducing computation time.
Hou et al. [5] proposed the universal designated verifier transitive signature (UDVTS) scheme for preventing transitive signature abuse. Zhu et al. [6] introduced the universal designated multiple verifier transitive signature (UDMVTS), a variant with multiple designated verifiers. Lin et al. [7] improved the UDVTS scheme efficiency with an RSA-based approach. Hou et al. [8] proposed a scheme with traceability features to resolve the signature dispute of UDVTS, introducing a tracer into the system to be able to trace back to the true source of the signature.
Lattice-based cryptosystems can withstand quantum computing attacks, unlike other cryptosystems that are vulnerable to such threats. In 2019, Geontae et al. [9] designed two lattice-based signature schemes under the random oracle model and the standard model, marking the first research on lattice-based signatures. Subsequently, Geontae et al. [10] combined the idea of identity-based signatures to design an identity-based lattice signature scheme.
This article will concisely introduce the access structure of the scheme. In 2011, Waters [11] proposed a method for describing any boolean function related to attribute control using a linear secret sharing scheme. Inspired by [11], numerous digital signature schemes have emerged, enabling fine-grained control over the signer or message, such as: [12,13,14].

1.2. Our Contributions

This paper aims to develop a transitive signature scheme enabling precise control over combiners, allowing the signer to designate specific entities with certain attributes for combined operations. The signer sets varying access control policies for combiners based on different data types, controlling “who can combine what data”. The main contributions of this paper are summarized as follows:
  • This study presents a new access control mechanism for transitive signature combiners, and formally defines attribute-based designated combiner transitive signature and its security models. It also suggests a method to finely regulate unauthorized combined operations.
  • We propose the first construction of the attribute-based designated combiner transitive signature (ABDCTS). Our proposal introduces ABDCTS via a monotone span program and linear secret sharing scheme, concealing transitive signatures by a secret, such that only those meeting specific attributes can reveal and combine it. Its security is subsequently demonstrated based on the one-more CDH problem and the co-CDH problem.

2. Definitions and Preliminaries

This section introduces some general notations and reviews some related concepts.

2.1. Notions

We introduce some symbols and their definitions in Table 1.

2.2. Bilinear Groups and Complexity Assumptions

Definition 1
([15]). Let G 1 , G 2 and G T be three cyclic groups of large prime order p, with a bilinear map e : G 1 × G 2 G T . If ( G 1 , G 2 , G T , e , φ ) is referred to as a bilinear group tuple, then it satisfies the following conditions:
1.
e can be efficiently computed.
2.
h G 1 , g G 2 and a , b Z , e ( h a , g b ) = e ( h , g ) a b .
3.
If h and g generates G 1 and G 2 , respectively, then e ( h , g ) generates G T .
4.
Isomorphism φ : G 2 G 1 can be efficiently computed.
Definition 2
(one-more CDH problem [16]). Given g and g a G 1 for unknown a Z , and two oracles O C h a l l and O C D H as follows:
  • O C h a l l : input a point i, output a random point h i from G 1 .
  • O C D H : input a point h i G 1 , output g a l o g g h i .
We say that an adversary solves one-more CDH problem if he successfully outputs the CDH value g a l o g g h i of n points while calling O C h a l l less than n.
Definition 3
(co-CDH problem [17]). Given h G 1 and g , g a G 2 for unknown a Z p * , compute h a G 1 .

2.3. Access Structure

Definition 4
([18]). Let P = P 1 , P 2 , , P n be a set of parties. We refer to an access structure A 2 P \ { } as monotonic if B A , B C implies that C A . If D A (resp., D A ), then D is called an authorized (resp., unauthorized) set.

2.4. Monotone Span Program (MSP)

Definition 5
([19]). Consider a field K and a set of variables { x 1 , , x n } . A monotone span program over K is represented by a labeled matrix E ^ = ( E , ρ ) , where E is a matrix over K, and ρ labels the rows of E with literals from { x 1 , , x n } (each row is labeled by one literal). This program accepts or rejects inputs based on whether a linear combination of rows labeled by literals in the input set yields the all-one vector 1 . The size of the program is determined by the number of rows in the matrix E .
We use MSP to convert a monotone boolean function into an equivalent matrix, with the specific process as follows: we convert the monotone boolean formula into an access binary tree using the method described in [19]. In a binary tree, each internal node represents an AND or OR gate, while the leaf nodes represent the attributes.
Converting a binary tree into an equivalent matrix E can be achieved using the method outlined in [20]. Each tree node is assigned a vector. Initially, the vector of the root node is a . The setting method for the vectors on the rest of the internal nodes is as follows: if the parent node represents an OR gate, the vectors of both left and right child nodes are equal to the parent node vector; if the parent node represents an AND gate, the vectors of the left and right child nodes are a | 1 and ( 0 , , 0 ) a | 1 , respectively. After labeling the entire tree, if the lengths of vectors of all of the leaf nodes are unequal, append (0,⋯,0) to the right of the shorter vectors until all of the lengths are equal. The vectors from all of the leaf nodes constitute a linear secret sharing matrix.
Figure 2 shows an conversion example: ( m 1 A N D m 2 ) A N D ( m 3 O R ( m 4 A N D m 5 ) ) . In the example in Figure 2, the vector ( 1 , 1 , 1 , 0 , 0 ) represents the set of variables { m 1 , m 2 , m 3 } as an input to P = ( m 1 A N D m 2 ) A N D ( m 3 O R ( m 4 A N D m 5 ) ) . P ( 1 , 1 , 1 , 0 , 0 ) = 1 as the combination of the first, second, and third rows of matrix E can span ( 1 , 0 , 0 ) . This satisfies the policy for { m 1 , m 2 , m 3 } . In our context, attributes will replace parties, labeling each row of matrix E .

2.5. Linear Secret-Sharing Scheme (LSSS))

Definition 6
([18]). A secret sharing scheme Π A for a set S and a access structure A is called linear (over Z p ) if:
1. 
Each share value of the secret s Z p forms a vector over Z p .
2. 
For each access structure A on set S, there exits a sharing-generating matrix E Z p t × n . Define a function ρ that labels the i-th row of E as ρ ( i ) . Let w = ( s , y 2 , , y n ) be a vector, where y 2 , , y n are chosen randomly in Z p . Ew is a column vector with t secret sharing values of s, where the i-th row represents the share allocated to the entity corresponding to ρ ( i ) .
Ref. [18] presents a model that equivalently converts the matrix of MSP into the sharing-generating matrix of LSSS. Taking the matrix E in Figure 2 as an example, we use it as the sharing-generating matrix for LSSS. Let ( b 1 , b 2 , , b t ) = Ew = E ( s , y 2 , , y n ) , and at this point, { m 1 , m 2 , m 3 } is an authorized set, then there exists constants { ω i } i = 1 , 2 , 3 such that ω 1 b 1 + ω 2 b 2 + ω 3 b 3 = s . Ref. [21] has already proven that { ω i } i = 1 , 2 , 3 can be found in polynomial time.
Lemma 1
(Forking Lemma [22]). Let Π be a signature scheme, k be the security parameter, and A be a PPT adversary. If A can, within time T and with at most q 1 and q 2 inquiries to the random oracle and the sign oracle, respectively, output a valid signature ( m , σ 1 , h , σ 2 ) with probability ε 10 ( q 2 + 1 ) ( ( q 1 + q 2 ) / 2 k , then he can output two valid signatures ( m , σ 1 , h , σ 2 ) and ( m , σ 1 , h , σ 2 ) with probability ε 1 / 9 within time T 120686 T q 1 / ε , such that h h .

3. Attribute-Based Designated Combiner Transitive Signature Scheme

This section provides the formal definitions of ABDCTS and its security models.

3.1. The Formal Definition of ABDCTS

Unlike traditional transitive signature, ABDCTS allows the signer to set an access control policy P at the time of signing, so only entities that meet P can perform combination operations on the signature, as shown in Figure 3. A ABDCTS scheme consists of seven PPT algorithms Π = (Setup, SKGen, TSign, AKGen, DVry, Comp, Vry).
  • Setup ( 1 k ) . The algorithm takes the security parameter k as the input and outputs the public parameters p p and the master secret key M S K .
  • SKGen ( p p ) . The algorithm takes the public parameters p p as the input and outputs the signer’s public/secret key pairs ( P K , S K ) .
  • TSign ( i , j , S K ) . The algorithm takes the signer’s secret key S K and nodes i , j { 0 , 1 } * as the input. It outputs a signature σ i j of edge ( i , j ) and an access control policy P of combiners (it is specified by the signer).
  • AKGen ( m s k , P , S ) . The algorithm takes the master secret key M S K and a set of attributes S as the input. It outputs a secret key S K S specific to S.
  • DVry ( i , j , S , P K , S K S , P , σ i j ) . The algorithm takes the signer’s public key P K , nodes i , j { 0 , 1 } * , a set of attributes S, a secret key S K S , an access control policy P , and a signature σ i j as the input. It outputs 1 (accept) or 0 (reject).
  • Comp ( i , j , k , S , P K , S K S , P , σ i j , σ j k ) . The algorithm takes a public key P K , a set of attributes S, a secret key S K S , an access control policy P , nodes i , j , k { 0 , 1 } * , and two signatures σ i j , σ j k as the input. It outputs the composed signature σ on edge ( i , k ) or ⊥.
  • Vry ( i , j , P K , σ ) . The algorithm takes the signer’s public key P K , nodes i , j { 0 , 1 } * , and a combined signature σ as the input. It outputs 1 (accept) or 0 (reject).
Next, we introduce ABDCTS’s correctness requirements.
  • Correctness of the Sign algorithm. For σ i j TSign ( i , j , S K ) , it holds that
    1 DVry ( i , j , S , P K , S K S , P , σ i j ) .
  • Correctness of the Comp algorithm. For the output σ of Comp, if both σ i j and σ j k are are accepted by DVry, it holds that
    1 Vry ( i , k , P K , σ ) .

3.2. Security Models

An attribute-based designated combiner transitive signature scheme should satisfy the following security requirements.
Collusion resistance. Collusion resistance requires that no entity can collaborate with other entities to combine transitive signatures without having the specified attributes.
Unforgeability. Unforgeability requires that only the signer and entities with specific attributes can generate valid signatures. Therefore, the unforgeability of ABDCTS is divided into the following two types: Type 1 Unforgeability ( UF 1 ) requires that no adversary can forge a signature on a new edge ( i , j ) (where no complete path from i to j has been signed by the signer), and because the entity with specific attributes has the most knowledge, the adversary can be seen as a malicious combiner. The malicious combiner can request the transitive signature of some edges and has the ability to combine signatures. Type 2 Unforgeability ( UF 2 ) requires that entities whose own attributes do not satisfy the access policy cannot combine signatures. In this case, the adversary may request transitive signatures and combined signatures of some edges, and he can also ask for the attribute keys corresponding to some sets of attributes, but those attribute sets do not meet the access control policy.
The formal definition of UF 1 is outlined through the following game between a challenger C 1 and an adversary A 1 .
Definition 7.
A ABDCTS scheme satisfies UF 1 if any PPT adversary A 1 has a negligible advantage in the following game Sig - forge A 1 , A B D C T S ( k ) :
  • Setup: C 1 runs Setup and SKGen to generate p p and ( P K , S K ) , respectively. Then, ( p p , P K ) is sent to A 1 .
  • TSign Queries: Proceeding adaptively, A 1 picks an edge ( i , j ) . Then, C 1 runs TSign to generate ( σ i j , P ) and sends it to A 1 .
  • Output: A 1 outputs a pair ( σ i j , ( i , j ) ) .
A 1 wins the game if 1 Vry ( i , j , P K , σ ) and ( i , j ) G ˜ , where G is made up of all edges ( i , j ) that have been queried.
The formal definition of UF 2 is outlined through the following game between a challenger C 2 and an adversary A 2 . The advantage of A 1 is
Adv A 1 , A B D C T S UF 1 = Pr [ Sig - forge A 1 , A B D C T S ( k ) = 1 ] .
Definition 8.
A ABDCTS scheme satisfies UF 2 if any PPT adversary A 2 has a negligible advantage in the following game Sig - forge A 2 , A B D C T S ( k ) :
  • Setup: C 2 runs Setup and SKGen to generate p p and ( P K , S K ) , respectively. Then, ( p p , P K ) is sent to A 2 .
  • TSign Queries: Proceeding adaptively, A 2 picks an edge ( i , j ) . Then, C 2 runs TSign to generate ( σ i j , P ) and sends it to A 2 .
  • AKGen Queries: Proceeding adaptively, A 2 requests the secret key for attribute sets S 1 , , S t that that fail to meet the access structure P .
  • Comp Queries: Proceeding adaptively, C 2 runs Comp to output the combined signature σ after A 2 submits ( i , j , k , σ i j , σ j k ) .
  • Output: A 2 outputs a pair ( σ i j , ( i , j ) ) .
A 2 wins the game if 1 Vry ( i , j , P K , σ i j ) and ( i , j ) was not submitted to Comp Queries. The advantage of A 2 is
Adv A 2 , A B D C T S UF 2 = Pr [ Sig - forge A 2 , A B D C T S ( k ) = 1 ] .

4. Our Construction

We reviewed the linear homomorphic signature scheme with the designated combiner provided in [23]; they used a random value h i to encrypt the signature σ i , and only the signer or the designated combiner who can successfully calculate that random value can remove the disguise from signatures (e.g., σ i · h i and σ j · h j ) and combine them to obtain σ i · σ j . After that, the designated combiner uses the technology of IBS to generate reliable evidence to show the verifier that they have σ i · σ j .
Our approach draws from [23]. The signer calculates a hash value h i j to conceal signature σ i j , and the published signature is σ i j · h i j , where the hash value h i j is tied to the access control policy set by the signer. Then, the key generation center distributes the key for calculating the hash value h i j according to the access control policy, sharing them according to the corresponding attributes. Only entities whose attribute sets meet the access policy can successfully compute h i j and obtain the original signature σ i j . After combining signatures σ i j and σ j k to obtain σ i k , the combiner uses the method of IBS to generate evidence to prove to other entities that they possess the signature ( i , k ) .
We construct our ABDCTS scheme Π = (Setup, SKGen, TSign, AKGen, DVry, Comp, Vry) as follows:
  • Setup( 1 k ) . Take as input the security parameter k:
    • Let a bilinear group tuple G = ( G 1 , G 2 , G T , e , φ ) , as defined in Definition 1.
    • Let h and g be the generators of G 1 and G 2 , respectively.
    • Pick five hash functions H : Z p n × n × G 2 Z p * , H 1 : 0 , 1 * G 1 , H 2 : { 0 , 1 } * × { 0 , 1 } * G 1 , H 3 : G T G 1 and H 4 : { 0 , 1 } * × { 0 , 1 } * × G T Z p * .
    • Let U = 1 , 2 , , n be the set that includes all attributes.
    • Pick b $ Z p * and set B = g b .
    • Output the public parameters p p = ( G , p , h , g , B , U , H , H 1 , H 2 , H 3 , H 4 ) and the master secret key M S K = b .
  • SKGen( p p ) . The signer chooses a $ Z p * as S K and sets A = g a as P K .
  • TSign( i , j , S K ). Take S K = a and nodes i , j { 0 , 1 } * as the input:
    • Set the access structure A for U, meaning the combiner is designated by the signer.
    • Characterize A as a monotone Boolean function and convert it into an access binary tree T based on MSP.
    • Convert T into a matrix M Z p t × n based on MSP and define M i as the i-th row vector of matrix M .
    • Calculate c = H ( M , B a ) .
    • Compute σ i j = ( h i h j 1 ) a H 3 ( e ( H 2 ( i , j ) , B ) a c ) , where h i = H 1 ( i ) , h j = H 1 ( j ) .
    • Output P = ( M , A ) and σ i j .
  • AKGen ( M S K , P , S ) . Take M S K = b , the access structure ( M , A ) , and a set of attributes S U as the input:
    • Choose x 2 , x 3 , , x n $ Z p and calculate v = ( b , x 2 , x 3 , , x n ) .
    • Compute ( b 1 , b 2 , , b n ) M v , c = H ( M , A b ) and A c b i i S .
    • Output the secret key S K S = A c b i i S specific to S.
  • DVry( i , j , P K , S K S , S , P , σ i j ). Take P K = A , nodes i , j { 0 , 1 } * , and a signature σ i j as the input:
    • If S A , it returns ⊥.
    • If S A , there are constants ω i 0 , 1 i S , such that i S A c b i ω i = A c b .
    • If e ( σ i j , g ) = e ( h i h j 1 , A ) e ( H 3 ( e ( H 2 ( i , j ) , A c b ) ) , g ) , then it outputs 1 (accept). Otherwise, it outputs 0 (reject).
  • Comp( i , j , k , S , P K , S K S , P , σ i j , σ j k ). The algorithm does the following:
    • Check the validity of σ i j , σ j k by runing DVry. If either σ i j or σ j k is not valid, it returns ⊥.
    • Compute K = H 3 ( e ( H 2 ( i , j ) , A c b ) ) and K i j = σ i j · K 1 = ( h i h j 1 ) a and K j k = σ j k · K 1 = ( h j h k 1 ) a .
    • Compute K i k = K i j · K j k = ( h i h k 1 ) a .
    • Pick r $ Z P * and calculate R = e ( h , g ) r , Y = H 4 ( i , k , R ) , and T = K i k Y h r .
    • Output ( i , k ) and a signature σ = ( Y , T ) .
  • Vry( i , k , P K , σ ). Take P K = A , nodes i , j { 0 , 1 } * , and a signature σ as the input:
    • Calculate R = e ( T , g ) / e ( h i h j 1 , A ) Y .
    • If Y = H 4 ( i , k , R ) , then it outputs 1 (accept). Otherwise, it outputs 0 (reject).
The correctness of the scheme is as follows:
  • Correctness of the Sign algorithm. For σ i j TSign ( i , j , S K ) , we have:
    e ( σ i j , g ) = e ( ( h i h j 1 ) a H 3 ( e ( H 2 ( i , j ) , B a c ) ) , g ) = e ( h i h j 1 , A ) · e ( H 3 ( e ( H 2 ( i , j ) , A c b ) ) , g ) .
  • Correctness of the Comp algorithm. For the output ( i , k ) and σ = ( Y , T ) of Comp, if both σ i j and σ j k are valid, then we have:
    H 4 ( i , k , R ) = H 4 ( i , k , e ( T , g ) / e ( h i h j 1 , A ) Y ) = H 4 ( i , k , e ( K i k Y , g ) e ( h , g ) r / e ( h i h j 1 , A ) Y ) = H 4 ( i , k , e ( h , g ) r ) = Y .

5. Security Analysis

This section analyzes the security of our proposed ABDCTS scheme. With attribute-based cryptosystems, a key challenge is preventing user collusion. The scheme proposed in this paper is akin to  [11], where the user’s attribute private key is randomized, preventing the merging of different users’ keys. More precisely, this paper incorporates secret A b c in the signature, then allocates shares linked to attributes to each combiner via LSSS. Only combiners whose attributes meet the access structure can reconstruct the secret, verify the signature, and combine it. Due to the use of different random numbers in assigning secret shares to various combiners, collusion attempts among users will prove futile.
Assuming an adversary has compromised the signature scheme in UF 1 , we construct a challenger C 1 who can simulate the signature scheme, and solve the one-more CDH problem in ( G 2 , G T ) . Similarly, we show that the presence of a successful adversary A 2 allows challenger C 2 to solve the co-CDH problem in UF 2 .
Theorem 1.
Let Π be the ABDCTS scheme described above. If the one-more CDH problem is difficult, then Π satisfies UF 1 against an adaptive chosen-message attack.
Proof. 
let A 1 be a PPT adversary. Define
ε 1 ( k ) = Pr [ Sig - forge A 1 , Π ( k ) = 1 ] .
Our goal is to build a PPT algorithm C 1 to solve one-more CDH problem in ( G 2 , G T ) : given a tuple ( G 2 , G T , e , p , g , g a ) and two oracles O C h a l l and O C D H , output the CDH solution g a · l o g g h i with respect to h i of all n points output by O C h a l l , using strictly less than n calls to its O C D H .
C 1 maintains two lists L 1 , L 2 , L 3 to record the output values of H 1 Queries , H 2 Queries and TSign Queries, respectively. The game Sig - forge A 1 , Π ( k ) is described as follows:
  • Setup.
    • C 1 sets P K = g a = A and the parameter p p = ( G , p , h , g , B , U , H 3 ) .
    • Sends ( P K , p p ) to A 1 .
  • H 1 Queries . When A 1 requests the value of H 1 ( i ) , answer it as follows:
    • If ( i , H 1 ( i ) ) is found in list L 1 , H 1 ( i ) will be returned.
    • Otherwise, C 1 calculates H 1 ( i ) = h i O C h a l l ( i ) and adds ( i , H 1 ( i ) ) to L 1 .
    • Sends H 1 ( i ) to A 1 .
  • H 2 Queries . When A 1 requests the value of H 2 ( i , j ) , answer it as follows:
    • If ( i , j , H 2 ( i , j ) ) is found in list L 2 , H 2 ( i , j ) will be returned.
    • Otherwise, C 1 picks x i j $ Z p * , calculates H 2 ( i , j ) = φ ( g ) x i j and adds H 2 ( i , j ) to L 2 .
    • Sends H 2 ( i , j ) to A 1 .
  • TSign Queries. When A 1 requests a signature of ( i , j ) , answer it as follows:
    • If i > j , then swap i and j.
    • If ( i , H 1 ( i ) ) is found in list L 1 , H 1 ( i ) will be returned.
    • Otherwise, C 1 calculates H 1 ( i ) = h i O C h a l l ( i ) and adds ( i , H 1 ( i ) ) to L 1 .
    • If ( j , H 1 ( j ) ) is found in list L 1 , H 1 ( j ) will be returned.
    • Otherwise, C 1 calculates H 1 ( j ) = h j O C h a l l ( j ) and adds ( j , H 1 ( j ) ) to L 1 .
    • If ( i , j , H 2 ( i , j ) ) is found in list L 2 , H 2 ( i , j ) will be returned.
    • Otherwise, C 1 picks x i j $ Z p * , calculates H 2 ( i , j ) = φ ( g ) x i j and adds ( i , j , H 2 ( i , j ) ) to L 2 .
    • If ( i , j , σ i j ) is found in list L 3 , ( P , σ i j ) will be returned.
    • Otherwise, C 1 sets the combiner control policy P and picks c $ Z p * .
    • Then C 1 calculates ( h i h j 1 ) a O C D H ( h i h j 1 ) and σ i j = ( h i h j 1 ) a · H 3 ( e ( φ ( A ) , B ) c x i j ) , and adds ( i , j , P , σ i j ) to L 3 .
    • Sends ( P , σ i j ) to A 1 .
  • Output. Eventually, A 1 outputs a tuple ( i , j , σ ) , where σ = ( Y , T ) , Y = H 4 ( i , j , R ) and R = e ( h , g ) r for r Z p * chosen by A 1 . The output of the experiment is 1 if 1 Vry ( i , j , P K A , σ ) and ( i , j ) is a new edge.
We have:
R = e ( T , g ) / e ( h i h j 1 , A ) Y = e ( K i j Y h r , g ) / e ( h i h j 1 , A ) Y = e ( K i j Y , g ) e ( h r , g ) / e ( h i h j 1 , A ) Y = e ( h , g ) r = R .
Therefore K i j = ( h i h j 1 ) a . Calculate the CDH values of all vertices in L 1 using the following method. First, C 1 divides all of the vertices into m disjoint sets V 1 , V 2 , , V m , where i V k but j V k .
For k = 1 , , k 1 , k + 1 , , m , C 1 selects t k $ V k , then:
  • ( H 1 ( t k ) ) a O C D H ( H 1 ( t k ) ) .
  • For t V k \ t k , ( H 1 ( t ) H 1 ( t k ) 1 ) a O C D H ( H 1 ( t ) H 1 ( t k ) 1 ) .
  • ( H 1 ( t ) ) a ( H 1 ( t ) H 1 ( t k ) 1 ) a · ( H 1 ( t k ) ) a .
For V k , C 1 does the following:
  • ( H 1 ( i ) ) a K i j · ( H 1 ( j ) ) a .
  • For t V k \ i , ( H 1 ( t ) H 1 ( i ) 1 ) a O C D H ( H 1 ( t ) H 1 ( i ) 1 ) .
  • ( H 1 ( t ) ) a ( H 1 ( t ) H 1 ( i ) 1 ) a · ( H 1 ( i ) ) a .
It is clearly visible that C 1 outputs the CDH value of L vertices, but only calls O C D H k k V k + V k 1 = L 1 times. Thus, C 1 solves the one-more CDH problem, and the probability A d v C 1 o n e m o r e C D H ε 1 ( k ) .    □
Theorem 2.
Let Π be the ABDCTS scheme described above. If the co-CDH problem is challenging, then Π satisfies UF 2 against an adaptive chosen-message attack.
Proof. 
let A 2 be a PPT adversary. Define
ε 2 ( k ) = Pr [ Sig - forge A 2 , Π ( k ) = 1 ] .
Our goal is to build a PPT algorithm C 2 to solve co-CDH problem in ( G 1 , G 2 , G T ) : given a bilinear group tuple ( G 1 , G 2 , G T , e , φ ) and ( g , g a , h , φ ( g ) , φ ( A ) ) , output h a , where a Z p * , h , φ ( g ) , φ ( A ) G 1 and g , g a G 2 .
C 2 maintains two lists L 1 , L 2 , L 3 , L 4 to record the output values of H 1 Queries , H 2 Queries , TSign Queries and H 4 Queries , respectively. The game Sig - forge A 2 , Π ( k ) is described as follows:
  • Setup.
    • C 2 sets P K A = g a = A and the parameter p p = ( G , p , h , g , B , U , H 3 ) .
    • Sends ( P K A , p p ) to A 2 .
  • H 1 Queries . When A 2 requests the value of H 1 ( i ) , answer it as follows:
    • If ( i , H 1 ( i ) ) is found in list L 1 , H 1 ( i ) will be returned.
    • Otherwise, C 2 picks x i $ Z p * , calculates H 1 ( i ) = φ ( g ) x i and adds ( i , H 1 ( i ) ) to L 1 .
    • Sends H 1 ( i ) to A 2 .
  • H 2 Queries . When A 2 requests the value of H 2 ( i , j ) , answer it as follows:
    • If ( i , j , H 2 ( i , j ) ) is found in list L 2 , H 2 ( i , j ) will be returned.
    • Otherwise, C 2 picks x i j $ Z p * , calculates H 2 ( i , j ) = φ ( g ) x i j and adds ( i , j , H 2 ( i , j ) ) to L 2 .
    • Sends H 2 ( i , j ) to A 2 .
  • TSign Queries. When A 2 requests a signature of ( i , j ) , answer it as follows:
    • If i > j , then swap i and j.
    • If ( i , H 1 ( i ) ) is found in list L 1 , H 1 ( i ) will be returned.
    • Otherwise, C 2 picks x i $ Z p * , calculates H 1 ( i ) = φ ( g ) x i and adds ( i , H 1 ( i ) ) to L 1 .
    • If ( j , H 1 ( j ) ) is found in list L 1 , H 1 ( j ) will be returned.
    • Otherwise, C 2 picks x j $ Z p * , calculates H 1 ( j ) = φ ( g ) x j and adds ( j , H 1 ( j ) ) to L 1 .
    • If ( i , j , H 2 ( i , j ) ) is found in list L 2 , H 2 ( i , j ) will be returned.
    • Otherwise, C 2 picks x i j $ Z p * , calculates H 2 ( i , j ) = φ ( g ) x i j and adds ( i , j , H 2 ( i , j ) ) to L 2 .
    • If ( i , j , P , σ i j ) is found in list L 3 , ( P , σ i j ) will be returned.
    • Otherwise, C 2 sets the combiner control policy P and picks c $ Z p * .
    • Then calculates σ i j = φ ( A ) x i x j · H 3 ( e ( φ ( A ) , B ) c x i j ) and adds ( i , j , P , σ i j ) to L 3 .
    • Sends ( P , σ i j ) to A 2 .
  • AKGen Queries. When A 2 requests the private key corresponding to the attribute set S, where S does not satisfy P , answer it as follows:
    • For all i S , C 2 picks t i $ Z p and calculates A c t i .
    • C 2 sends A c t i i S to A 2 .
  • H 4 Queries . When A 2 requests the value of H 4 ( i , j , R ) , answer it as follows:
    • If H 4 ( i , j , R ) is found in list L 4 , H 4 ( i , j , R ) will be returned.
    • Otherwise, C 2 picks Y i j $ Z p * and adds ( i , j , R , H 4 ( i , j , R ) ) to L 4 .
  • Comp Queries. When A 2 submits ( i , j , k , σ i j , σ j k ) to Comp Queries, answer it as follows:
    • If σ i j and σ j k are both valid, C 2 calculates K i j = σ i j · H 3 ( e ( φ ( A ) , B ) c x i j ) 1 and K j k = σ j k · H 3 ( e ( φ ( A ) , B ) c x j k ) 1 .
    • C 2 calculates K i k = K i j · K j k .
    • C 2 picks r $ Z p * and computes R = e ( h , g ) r .
    • C 2 submits ( i , k , R ) to H 4 Queries to obtain Y i k and computes T = K i k Y i k h r .
    • Adds ( Y i k , T ) to L 5 and sends ( Y i k , T ) to A 2 .
  • Output. Eventually, A 2 outputs a tuple ( i , j , σ ) , where σ = ( Y , T ) , Y = H 4 ( i , j , R ) and R = e ( h , g ) r for r Z p * chosen by A 2 . The output of the experiment is 1 if 1 Vry ( i , j , P K A , σ ) and ( Y , T ) does not belong to list L 5 .
Therefore, A 2 can output a valid forgery ( Y , T ) on ( i , j ) with probability ε 2 10 ( q 2 + 1 ) ( q 1 + q 2 ) / 2 k under the conditions of time t, q 1 and q 2 inquiries to H 4 Queries and Comp Queries, respectively.
When we replay the attack, if i < j , the lists L 1 , L 2 and L 4 remain unchanged. If i > j , we randomly select values again according to the above simulation process. For i = j , we select x j $ Z p * and set H 1 ( j ) = h x j . Note that A cannot query Comp Queries.
By using the technique in forking lemma, A 2 can output two valid forgeries ( Y 1 , T 1 ) and ( Y 2 , T 2 ) with a probability of 1 / 9 after conducting replay attacks up to t 120686 q 1 t / ε 2 .
For i = j , we have H 1 ( j ) = h x j H 1 ( j ) = h x j and compute ρ 1 = h x j φ ( g ) x i and ρ 2 = h x j φ ( g ) x i .
As both ( Y 1 , T 1 ) and ( Y 2 , T 2 ) are valid; therefore,
e ( T 1 , g ) = e ( ρ 1 , A ) Y 1 R
and
e ( T 2 , g ) = e ( ρ 2 , A ) Y 2 R .
Combining both equations provides:
e ( T 1 / T 2 , g ) = e ( ρ 1 / ρ 2 , A ) Y 1 Y 2 = e ( h ( x j x j ) ( Y 1 Y 2 ) , A ) = e ( h a ( x j x j ) ( Y 1 Y 2 ) , g ) .
As ( x j x j ) ( Y 1 Y 2 ) is random in Z p , the probability that ( x j x j ) ( Y 1 Y 2 ) = 0 is 1 / p . Therefore, h a = ( T 1 / T 2 ) 1 / ( x j x j ) ( Y 1 Y 2 ) . In other words, the probability that C 2 solves the co-CDH problem is A d v C 1 o n e m o r e C D H 1 / 9 1 / p .

Efficiency

Let | G 1 | , | G 2 | , | G T | , and | Z p | be the bit length of the element in G 1 , G 2 , G T , and Z p , respectively. Let T 1 , T 2 , T 3 , T 4 , T 5 be the computation cost of performing one e x p o n e n t , p a i r i n g , h a s h , i n v e r s e , and m u l t i p l y operation, respectively. Let s t a n d . p k and s t a n d . s i g s be the public key and signature size of a standard digital signature, respectively.
Taking algorithm TSign as an example, we need to perform one e x p o n e t and one h a s h operation to obtain c, and then perform one e x p o n e n t , 2 p a i r i n g , 4 h a s h , one i n v e r s e and 2 m u l t i p l y operation. Thus, the computation cost of TSign is 2 T 1 + 2 T 2 + 5 T 3 + T 4 + 2 T 5 . The detailed analysis results are shown in Table 2. In addition, we make a rough comparison of communication costs with some existing transitive signatuer schemes in Table 3. By comparing the computational cost, public key size, and signature size with some existing signature schemes, it is clear that our scheme has good practicality.

6. Conclusions

The paper introduces the formal definitions of ABDCTS and its security models, where the signer can set fine-grained combiner control policy, so that entities that do not satisfy the access policy of the attribute set cannot combine signatures. ABDCTS provides a solution for granting different entities the ability to combiner transitive signatures based on varied data requirements. Subsequently, a specific construction is proposed, and its security is proven based on the one-more CDH problem and the co-CDH problem in the random model. We analyze the communication cost and computational cost, showing that the scheme is quite practical. The public key, the transitive signature, and the combined siganture in our construction are G 2 bits, G 1 + | Z p t × n | bits, and G 1 + Z p * , respectively.

Author Contributions

Conceptualization, S.H., S.Y. and C.L.; methodology, S.H., S.Y. and C.L.; writing—original draft preparation, S.H.; writing—review and editing, S.Y. and C.L.; supervision, S.Y. and C.L.; project administration, S.Y. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (62272104, 62032005, 62172096).

Data Availability Statement

Data are contained within the article.

Acknowledgments

The authors gratefully acknowledge the editor and the anonymous reviewers for their comments that improved the final version of the manuscript.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Micali, S.; Rivest, R.L. Transitive Signature Schemes. In Proceedings of the Topics in Cryptology, San Jose, CA, USA, 18–22 February 2002; pp. 236–243. [Google Scholar] [CrossRef]
  2. Bellare, M.; Neven, G. Transitive signatures: New schemes and proofs. IEEE Trans. Inf. Theory 2005, 51, 2133–2151. [Google Scholar] [CrossRef]
  3. Bellare, M.; Neven, G. Transitive Signatures Based on Factoring and RSA. In Proceedings of the Advances in Cryptology, Santa Barbara, CA, USA, 18–22 August 2002; pp. 397–414. [Google Scholar] [CrossRef]
  4. Lin, C.; Zhu, F.; Wu, W.; Liang, K.; Choo, K.K.R. A New Transitive Signature Scheme. In Proceedings of the Network and System Security, Taipei, Taiwan, 28–30 September 2016; pp. 156–167. [Google Scholar] [CrossRef]
  5. Hou, S.; Huang, X.; Liu, J.K.; Lin, J.; Xu, L. Universal designated verifier transitive signatures for graph-based big data. Inf. Sci. 2015, 318, 144–156. [Google Scholar] [CrossRef]
  6. Zhu, F.; Zhang, Y.; Lin, C.; Wu, W.; Meng, R. A Universal Designated Multi-Verifier Transitive Signature Scheme. In Proceedings of the Information Security and Cryptology, Fuzhou, China, 14–17 December 2018; pp. 180–195. [Google Scholar] [CrossRef]
  7. Lin, C.; Wu, W.; Huang, X.; Xu, L. A new universal designated verifier transitive signature scheme for big graph data. J. Comput. Syst. Sci. 2017, 83, 73–83. [Google Scholar] [CrossRef]
  8. Hou, S.; Lin, C.; Yang, S. A Traceable Universal Designated Verifier Transitive Signature Scheme. Information 2024, 15, 43. [Google Scholar] [CrossRef]
  9. Noh, G.; Jeong, I.R. Transitive Signature Schemes for Undirected Graphs from Lattices. KSII Trans. Internet Inf. Syst. 2019, 13, 3316–3332. [Google Scholar] [CrossRef]
  10. Noh, G.; Chun, J.Y. Identity-Based Transitive Signature Scheme from Lattices. J. Korea Inst. Inf. Secur. Cryptol. 2021, 31, 509–516. [Google Scholar]
  11. Waters, B. Ciphertext-policy attribute-based encryption: An expressive, efficient, and provably secure realization. In Proceedings of the International Workshop on Public Key Cryptography, Taormina, Italy, 6–9 March 2011; pp. 53–70. [Google Scholar] [CrossRef]
  12. Ma, J.; Liu, J.; Huang, X.; Xiang, Y.; Wu, W. Authenticated Data Redaction with Fine-Grained Control. IEEE Trans. Emerg. Top. Comput. 2020, 8, 291–302. [Google Scholar] [CrossRef]
  13. Zhang, Z.; Zhou, S. A decentralized strongly secure attribute-based encryption and authentication scheme for distributed Internet of Mobile Things. Comput. Netw. 2021, 201, 108553. [Google Scholar] [CrossRef]
  14. Zhang, Z.; Huang, W.; Cai, S.; Yang, L.; Liao, Y.; Zhou, S. An efficient reusable attribute-based signature scheme for mobile services with multi access policies in fog computing. Comput. Commun. 2022, 196, 9–22. [Google Scholar] [CrossRef]
  15. Menezes, A.; Vanstone, S.A.; Okamoto, T. Reducing elliptic curve logarithms to logarithms in a finite field. IEEE Trans. Inf. Theory 1991, 39, 1639–1646. [Google Scholar] [CrossRef]
  16. Boldyreva, A. Threshold Signatures, Multisignatures and Blind Signatures Based on the Gap-Diffie-Hellman-Group Signature Scheme. In Proceedings of the Public Key Cryptography, Paris, France, 12–14 February 2002; pp. 31–46. [Google Scholar] [CrossRef]
  17. Boneh, D.; Lynn, B.; Shacham, H. Short signatures from the Weil pairing. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Gold Coast, Australia, 9–13 December 2001; pp. 514–532. [Google Scholar] [CrossRef]
  18. Beimel, A. Secure Schemes for Secret Sharing and Key Distribution. Ph.D. Thesis, Technion-Israel Institute of Technology, Haifa, Israel, 1996. Available online: https://technion.primo.exlibrisgroup.com/permalink/972TEC_INST/q1jq5o/alma990021768270203971 (accessed on 26 September 2024).
  19. Goyal, V.; Pandey, O.; Sahai, A.; Waters, B. Attribute-based encryption for fine-grained access control of encrypted data. In Proceedings of the 13th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 30 October–3 November 2006; pp. 89–98. [Google Scholar] [CrossRef]
  20. Liu, J.; Huang, X.; Liu, J.K. Secure sharing of Personal Health Records in cloud computing: Ciphertext-Policy Attribute-Based Signcryption. Future Gener. Comput. Syst. 2015, 52, 67–76. [Google Scholar] [CrossRef]
  21. Karchmer, M.; Wigderson, A. On Span Programs. In Proceedings of the Eigth Annual Structure in Complexity Theory Conference, San Diego, CA, USA, 18–21 May 1993; pp. 102–111. [Google Scholar] [CrossRef]
  22. Pointcheval, D.; Stern, J. Security arguments for digital signatures and blind signatures. J. Cryptol. 2000, 13, 361–396. [Google Scholar] [CrossRef]
  23. Lin, C.; Xue, R.; Huang, X. Linearly Homomorphic Signatures with Designated Combiner. In Proceedings of the Provable and Practical Security, Guangzhou, China, 5–8 November 2021; pp. 327–345. [Google Scholar] [CrossRef]
Figure 1. An administrative domain that includes multiple departments like A and B.
Figure 1. An administrative domain that includes multiple departments like A and B.
Mathematics 12 03070 g001
Figure 2. Converting a binary tree to a matrix.
Figure 2. Converting a binary tree to a matrix.
Mathematics 12 03070 g002
Figure 3. Flowchart of ABDCTS.
Figure 3. Flowchart of ABDCTS.
Mathematics 12 03070 g003
Table 1. Symbols and their definitions.
Table 1. Symbols and their definitions.
SymbolDefinition
G = ( V , E ) undirected graph
VVertex set
EEdge set
G ˜ Transitive closure of G
G * Transitive reduction of G
PPTProbabilistic polynomial time
CDHComputational Diffie Hellman
O X Oracle X
x $ Y x is randomly selected from Y
KGCKey generation center
Table 2. Comparisons of computation costs.
Table 2. Comparisons of computation costs.
SchemeAlgorithmTime Cost
OursTSign 2 T 1 + 2 T 2 + 5 T 3 + T 4 + 2 T 5
DVry T 1 + 3 T 2 + 4 T 3 + T 4 + 2 T 5
Comp 4 T 1 + 2 T 2 + 3 T 3 + T 4 + 5 T 5
Vry T 1 + 2 T 2 + 3 T 3 + 2 T 4 + T 5
[8]TSign T 1 + 2 T 3 + T 4 + T 5
TVry 2 T 2 + 2 T 3 + T 4
Comp T 5
Trans 2 T 1 + T 5
DS 4 T 1 + 3 T 2 + T 3 + 2 T 5
DV T 1 + T 2 + T 3 + 2 T 4 + 4 T 5
Sim 5 T 1 + 3 T 2 + T 3 + T 5
Table 3. Comparison to the existing transitive signature scheme for the undirected graph.
Table 3. Comparison to the existing transitive signature scheme for the undirected graph.
SchemePublic KeySignature SizeDesignated Combiner
[1] | G | 2 | Z p * | No
FBTS-1,RSATS-1 [3] | Z | + s t a n d . p k 3 | Z N * | + 2 s t a n d . s i g s No
DCTS-1M [2] s t a n d . p k | Z q | + 2 | G | + 2 s t a n d . s i g s No
GapTS-1 [2] | G | + s t a n d . p k 3 | G | + 2 s t a n d . s i g s No
RSATS-2 [2]N | Z N * | No
FactTS-2 [2]N | Z N * | No
GapTS-2 [2] | G | | G | No
[4] | G | | G | No
[5] | G | | G | No
[6] | G | | G | No
[8] | G | | G | No
[7] | Z N * | | Z N * | No
[9] | Z p n × m | 2 | Z p n | No
Our scheme | G | | G | + | Z p t × n | Yes
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Hou, S.; Yang, S.; Lin, C. Attribute-Based Designated Combiner Transitive Signature Scheme. Mathematics 2024, 12, 3070. https://doi.org/10.3390/math12193070

AMA Style

Hou S, Yang S, Lin C. Attribute-Based Designated Combiner Transitive Signature Scheme. Mathematics. 2024; 12(19):3070. https://doi.org/10.3390/math12193070

Chicago/Turabian Style

Hou, Shaonan, Shaojun Yang, and Chengjun Lin. 2024. "Attribute-Based Designated Combiner Transitive Signature Scheme" Mathematics 12, no. 19: 3070. https://doi.org/10.3390/math12193070

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop