Next Article in Journal
Utilization of a Genetic Algorithm to Identify Optimal Geometric Shapes for a Seismic Protective Barrier
Previous Article in Journal
Predictability of Magnetic Field Reversals
Previous Article in Special Issue
AIOL: An Improved Orthogonal Lattice Algorithm for the General Approximate Common Divisor Problem
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Universally Composable Linkable Ring Signature Supporting Stealth Addresses

1
Department of Computer Science and Engineering, Shanghai Jiao Tong University, Shanghai 200240, China
2
Shanghai Qizhi Institute, Shanghai 200003, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(3), 491; https://doi.org/10.3390/math12030491
Submission received: 21 November 2023 / Revised: 30 December 2023 / Accepted: 23 January 2024 / Published: 3 February 2024
(This article belongs to the Special Issue New Advances in Cryptographic Theory and Application)

Abstract

:
The linkable ring signature supporting stealth addresses (SALRS) is a recently proposed cryptographic primitive, which is designed to comprehensively address the soundness and privacy requirements associated with concealing the identities of both the payer and payee in cryptocurrency transactions. However, concerns regarding the scalability of SALRS have been underexplored. This becomes notably pertinent in intricate blockchain systems where multiple cryptographic primitives operate concurrently. To bridge this gap, our work revisited and formalized the ideal functionality of SALRS within the universal composability (UC) model. This encapsulates all correctness, soundness, and privacy considerations. Moreover, we established that the newly proposed UC-security property for SALRS is equivalent to the concurrent satisfaction of signer-unlinkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability. These properties represent the four crucial game-based security aspects of SALRS. This result ensures the ongoing security of previously presented SALRS constructions within the UC framework. It also underscores their adaptability for seamless integration with other UC-secure primitives in complex blockchain systems.

1. Introduction

In traditional cryptocurrencies such as Bitcoin and Ethereum, the anonymity they provide is at a pseudonymous level. During transactions, it is not possible to link the wallet address to the real identity of the transactor. However, privacy-focused cryptocurrencies like Monero or Zcash demand the preservation of both payer and payee anonymity and unlinkability in transactions. In some of the blockchain systems, e.g., CryptoNote [1], linkable ring signatures (LRS) [2] and the key derivation mechanism (KeyDerM) [1] are employed to address the aforementioned goals of anonymity and unlinkability.
Specifically, when a payer intends to conduct a payment transaction with a payee, the payer first utilizes KeyDerM to derive a derived public key from the payee’s master public key as the receiving address for the transaction. As the payee’s master public key does not appear in the transaction, the recipient of this transaction, i.e., the payee, cannot be identified. KeyDerM is also known as the stealth address (SA) [3] mechanism. When the payee wishes to spend the currency associated with this derived public key, they need to select a ring of derived public keys during the transaction. This ring includes their own derived public key. Through this ring, a linkable ring signature is generated, allowing anyone to verify the validity of the signature without knowing the actual signer. The linkability aspect is also useful in detecting double-spending behavior by the signer, as two different signatures generated for the same derived public key will be linked.
Recently, there has been significant attention in the community on linkable ring signatures (LRS) and stealth addresses (SA) [4,5,6,7,8]. For instance, in projects like Monero [9] and CryptoNote [1], LRSs and KeyDerM are considered foundational constructs, but they are treated as separate entities without a unified security analysis, despite their tight coupling in usage. The existing literature [2,10,11,12] largely addresses LRSs or SAs individually, particularly in the context of standard signature schemes [4,8]. Moreover, the signature keys and public keys used in LRSs are generated by the SA mechanism, which means that the LRS mechanism used in the blockchain system does not independently generate keys. Further research is needed to explore the security and privacy aspects of key generation in SA. Whether the security and privacy models of linkable ring signatures and stealth addresses can be effectively applied in cryptocurrency scenarios requires thorough analysis by researchers. This is especially pertinent in the context of key selection attacks by adversaries, where existing linkable models either lack consideration for such attacks or fail to align with the practical use cases of cryptocurrencies.
In order to address the aforementioned issues, Liu et al. [13] proposed a new cryptographic primitive, namely the linkable ring signature supporting stealth addresses (SALRS). This scheme aims to fulfill the security and privacy requirements of concealing both the payer and the payee in cryptocurrency transactions. The security model of SALRS provides properties such as strong unforgeability, signer-linkability, and signer-non-slanderability. The privacy model ensures properties like signer-anonymity, master-public-key-unlinkability, and derived-public-key-unlinkability. All these properties can be concurrently defined in the SALRS model, aligning with the practical requirements of cryptocurrency scenarios, especially in the context of key selection attacks. Liu et al. [13] also introduced a lattice-based construction for SALRS and demonstrated its privacy and security under the random oracle model. However, there has not been dedicated research on the universal composability (UC) of SALRS to date. This section will analyze and study the UC security of SALRS, providing separate proofs for its security and privacy under UC security definitions. The conclusion drawn will affirm that SALRS satisfies UC security, enhancing its security and practicality in application scenarios like cryptocurrency.

1.1. Our Results

In this paper, we revisit the security definition of SALRS and explore its modularity and adaptability to other cryptographic primitives within a comprehensive cryptocurrency system. Our contributions can be summarized as follows.
  • We provide a novel security definition of linkable ring signatures supporting stealth addresses (SALRS) in the universal composability (UC) framework. We define the ideal functionality, which simultaneously captures correctness, signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability. This is a more robust simulation-based security definition, implying that the protocol remains secure even when composed with arbitrary protocols.
  • We further investigate the security level of the proposed security definition. Through rigorous analysis, we demonstrate that the proposed UC-security of SALRS is equivalent to the concurrent satisfaction of signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key unlinkability.
  • We establish that the ideal functionality can be securely realized by the previously proposed construction that achieving the former four security definitions. This finding indicates that, including the SALRS construction proposed in [13], all secure SALRS constructions satisfy the security definition of [13], are UC-secure, and can arbitrarily compose with other UC-secure components in a complicated blockchain system.

1.2. Related Work

Before Liu et al. [13] gave the first practical quantum-resistant solution that hides the payers and payees of transactions in cryptocurrencies, there were several studies on linkable ring signatures [5,14,15,16], but none of them introduced stealth addresses. Without taking efficiency into account, [17,18] can also attain a logarithmic signature size concerning the number of signers in the ring. The constructions supporting stealth addresses [4,8] do not fulfill the criteria for linkable ring signature satisfaction.
While our work is the first to specifically address the UC-security of SALRS, it is worth noting that there have been various studies focusing on UC-secure signature schemes. Canetti [19] initially proposed a functionality for signature schemes, but a flaw in the definition made secure realization impossible. Subsequently, Backes et al. [20] and Canetti [21] addressed the flaw, establishing that the newly defined UC-security is equivalent to the game-based definition of EUF-CMA. In this paper, we employ a similar proven technique to circumvent the flaw identified in [19]. Apart from typical signature schemes, Abe et al. [22] introduced the UC-secure non-committing blind signature. Later, Hong et al. [23] formally defined the UC security of proxy re-signature. More recently, Zhu et al. [24] discussed the UC-security of the key-insulated and privacy-preserving signature scheme with publicly derived public key (PDPKS). While similar techniques are employed in defining the ideal functionality of digital signatures, it is crucial to emphasize that SALRS is distinct from these signature-related primitives, offering unique functionality and security features.

1.3. Outline

In Section 2, we show the syntax and security definitions of the primitive linkable ring signature with stealth addresses (SALRS), and preliminaries on the universal composability framework. In Section 3, we define the ideal functionality of SALRS, which captures its UC-security. In Section 4, we prove the existence of a UC-secure construction, by proving the equivalence between the game-based security [13] and the newly defined security. This paper is concluded in Section 5.

2. Preliminaries

In this section, we begin by revisiting the definition of SALRS as proposed by Liu et al. [13]. Next, we review the background of the Universal Composability (UC) framework [19], as well as the definition of UC-security.

2.1. SALRS: Linkable Ring Signature Supporting Stealth Addresses

2.1.1. Syntax

An SALRS scheme [13] consists of the following eight algorithms:
  • Setup ( κ ) PP . Taking as input a security parameter κ , the algorithm outputs the system public parameter PP , which corresponds to the common parameters in the system.
  • MasterKeyGen ( ) ( MPK , MSK ) . Each user executes the master-key-generating algorithm to generate its master public–private key pair.
  • DPKDerive ( MPK ) DPK . Anyone can execute the derived public-key-generating algorithm to generate a fresh derived public key DPK from a master public key MPK .
  • DPKOwnerCheck ( DPK , MPK , MSK ) 0 1 . Taking as input a derived public key DPK and a master public–private key pair ( MPK , MSK ) , the owner of the master public key can execute the derived public key owner checking algorithm to obtain a bit b { 0 , 1 } , indicating whether a derived public key DPK is a valid derived public key generated from its master public key MPK .
  • DPKPublicCheck ( DPK ) 0 1 . Taking as input a derived public key DPK , anyone can execute the derived-public-key-checking algorithm to obtain a bit b { 0 , 1 } , indicating whether the derived public key is well formed, so that it can use them as ring numbers for its ring signature generation.
  • Sign ( M , R , DPK , MPK , MSK ) σ . Taking as input a message M, a ring of well-formed derived public keys R = ( DPK 1 , . . . , DPK r ) , a derived public key DPK R , and its corresponding master public-private key pair ( MPK , MSK ) , the key owner can execute the signing algorithm to generate a signature σ on the message M with respect to the ring R.
  • Verify ( M , R , σ ) 0 1 . Taking as input a message M, a ring of well-formed derived public keys R, and a purported signature σ on the message M with respect to the ring R, anyone can execute the verifying algorithm to obtain a bit b { 0 , 1 } indicating the validity of the signature.
  • Link ( M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) 0 1 . Taking as input two valid signatures ( M 0 , R 0 , σ 0 ) and ( M 1 , R 1 , σ 1 ) , anyone can execute the linking algorithm to obtain a bit b { 0 , 1 } indicating whether two signatures are linked or unlinked.
Remark 1.
We consider a public key ring R as an ordered set. Specifically, it is composed of a set of public keys, and during the execution of Sign () and Verify (), the public keys are arranged in a specific order, each assigned a unique index.
Remark 2.
We note that the nature of whether Sign () is probabilistic or deterministic remains open, as it may vary depending on the specific constructions employed.
Correct. An SALRS scheme is correct if it satisfies the following property:
Let PP Setup ( κ ) ,
  • ( MPK , MSK ) MasterKeyGen ( ) , DPK DPKDerive ( MPK ) , it holds that DPKOwner Check ( DPK , MPK , MSK ) = 1 and DPKPublicCheck ( DPK ) = 1 .
  • M M , any ring of well-formed derived public keys R, and DPK s R s.t. DPKOwnerCheck ( DPK s , MPK , MSK ) = 1 for some master key pair ( MPK , MSK ) , it holds that Verify ( M , R , Sign ( M , R , DPK s , MPK , MSK ) ) = 1 .
  • M 0 , M 1 M , any well-formed derived public key rings R 0 , R 1 , and DPK s 0 R 0 , DPK s 1 R 1 , s.t. DPKOwnerCheck ( DPK s i , MPK i , MSK i ) = 1 for some master key pairs ( MPK i , MSK i ) ( i { 0 , 1 } ) , σ i Sign ( M i , R i , DPK s i , MPK i , MSK i ) ( i { 0 , 1 } ) , it holds that
    Pr [ Link ( M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) = 1 ] = 1
    if DPK s 0 = DPK s 1 , and
    Pr [ Link ( M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) = 1 ] 1 n e g l ( κ )
    if DPK s 0 DPK s 1 .

2.1.2. Security Models

Below, we provide the security definitions of SALRS, including soundness and privacy. Specifically, soundness encompasses unforgeability, signer-linkability, and signer-non-slanderability, while privacy includes signer-anonymity, master-public-key-unlinkability, and derived-public-key-unlinkability [13].
In more detail, unforgeability holds when only the user possessing the secret key for some public key in a ring can generate a valid signature with respect to that ring. Signer-linkability concerns the scenario where, with respect to a derived public key, if the key owner generates two or more valid signatures, these signatures will be identified as linked. This fulfills the security requirement of preventing double spending in cryptocurrencies. Signer-non-slanderability ensures that no one can falsely implicate other users by creating a signature linked to the signature of the target user.
For privacy requirements, signer-anonymity ensures that, given a valid signature for a ring of derived public key, it is infeasible for anyone to identify the signer’s derived public key within the ring. This property captures the privacy-preserving requirement of concealing the payer’s identity. Master-public-key-unlinkability ensures that, given a derived public key and its corresponding signatures, it is impossible to determine which master public key, from a known set of master public keys, was the origin of the derivation. Derived-public-key-unlinkability ensures that, given two derived public keys and their corresponding signatures, it is impossible to ascertain whether they are derived from the same master public key. This property ensures privacy by obscuring the link between payees in different transactions.
Particularly, Liu et al. [13] shows that unforgeability can be implied from signer-linkability and signer-non-slanderability together, and derived public-key-unlinkability can be implied from master public-key-unlinkability. We focus mainly on the remaining four properties in this paper. Formal definitions on the security properties are shown as follows.
Definition 1
(Signer-Linkability). For an SALRS scheme defined according to the specifications described above, for any PPT adversary A , consider the following experiment Exp A snlink ( κ ) :
  • Setup Phase. PP Setup ( κ ; r ) is executed, where r represents the randomness used within Setup (). A acquires both PP and r.
  • Output Phase. The adversary A outputs a set of tuples { ( M i * , R i * , σ i * ) } i [ k ] , where k 2 .
The adversary A succeeds if (1) i [ k ] , it holds that Verify ( M i * , R i * , σ i * ) = 1 , (2) i , j [ k ] , i j , Link ( M i * , R i * , σ i * , M j * , R j * , σ j * ) = 0 , and (3) | i [ k ] R i * | < k .
The SALRS scheme is signer-linkable, if for any PPT adversary A , there is a negligible function negl ( · ) such that Pr [ A succeeds in Exp A snlink ( κ ) ] negl ( · ) .
Definition 2
(Signer-Non-Slanderability). For an SALRS scheme defined according to the specifications described above, for any PPT adversary A , consider the following experiment Exp A snnsl ( κ ) :
1.
Setup Phase. PP Setup ( κ ; r ) is executed, where r represents the randomness used withinSetup(). A acquires both PP and r.
A set of master key generating algorithms { ( MPK i , MSK i ) MasterKeyGen ( ) } i [ p o l y ( κ ) ] are initiated, and the resulting set { MPK i } i [ p o l y ( κ ) ] is presented to A .
An empty set, L d p k = Ø , is initialized, which serves the purpose of storing valid derived public keys derived from the target master public keys.
2.
Probing Phase. The adversary A can query the following two oracles adaptively:
-
Derived Public Key Adding Oracle O DPKAdd ( · , · ) :
Taking as input a derived public key DPK and a master public key MPK i , the adversary A receives from this oracle a bit b DPKOwnerCheck ( DPK , MPK i , MSK i ) . If the response b = 1 , update L d p k = L d p k { DPK } .
-
Signing Oracle O Sign ( · , · , · ) :
Taking as input a message M M , a ring of well-formed derived public keys R, and a derived public key DPK R d p k , the adversary A receives from this oracle a signature σ Sign ( M , R , DPK , MPK i , MSK i ) , where ( MPK i , MSK i ) represents the master key pair for DPK .
3.
Output Phase. The adversary A outputs two well-formed tuples, denoted as ( M ^ , R ^ , σ ^ ) and ( M * , R * , σ * ) .
Let S s o = { ( M , R , DPK , σ ) } be the query-answer tuples for O Sign ( · , · , · ) . A succeeds if (1) Verify ( M * , R * , σ * ) = 1 , (2) ( M ^ , R ^ , DPK ^ , σ ^ ) S s o for some DPK ^ R ^ L DPK , (3) ( M * , R * , DPK ^ , σ * ) S s o , and (4) Link ( M * , R * , σ * , M , R ^ , σ ^ ) = 1 .
The SALRS scheme is signer-non-slanderable if, for any PPT adversary A , there is a negligible function negl ( · ) such that Pr [ A succeeds in Exp A snnsl ( κ ) ] negl ( κ ) .
Definition 3
(Signer-Anonymity). For an SALRS scheme defined according to the specifications described above, for any PPT adversary A , consider the following experiment Exp A snano ( κ ) :
  • Setup Phase. Same as the Setup phase in the experiment Exp A snnsl ( κ ) as defined in Definition 2.
  • Probing Phase 1. Same as the Probing phase in the experiment Exp A snnsl ( κ ) as defined in Definition 2.
  • Challenge Phase. The adversary A outputs a message M * M , a ring of well-formed derived public keys R * , and two indices i 0 , i 1 [ p o l y ( κ ) ] , such that (1) i 0 i 1 , (2) DPK i 0 , DPK i 1 R * L d p k , and (3) none of DPK i 0 or DPK i 1 were queried as input of O Sign .
    A challenge bit b { 0 , 1 } is selected; the adversary A is provided with the signature σ Sign ( M * , R * , DPK i b , MPK , MSK ) , where ( MPK , MSK ) represents the master key pair for DPK i b .
  • Probing Phase 2. Same as Probing Phase 1, with the added condition that none of DPK i 0 or DPK i 1 were queried as an input of O Sign .
  • Output Phase. The adversary A outputs a bit b { 0 , 1 } as its guess for b.
The advantage of the adversary A winning Exp A snano ( κ ) is Adv A snano = | Pr [ b b ] 1 2 | .
The SALRS scheme is signer-anonymous if, for any PPT adversary A , there is a negligible function negl ( · ) such that Adv A snano negl ( · ) .
Definition 4
(Master-Public-Key-Unlinkability). For an SALRS scheme defined according to the specifications described above, for any PPT adversary A , consider the following experiment Exp A mpkunl ( κ ) :
  • Setup Phase. Same as the Setup Phase in the experiment Exp A snnsl ( κ ) as defined in Definition 2.
  • Probing Phase 1. Same as the Probing phase in the experiment Exp A snnsl ( κ ) as defined in Definition 2.
  • Challenge Phase. The adversary A outputs two indices i 0 , i 1 [ p o l y ( κ ) ] , such that i 0 i 1 . A challenge bit b { 0 , 1 } is selected, and the adversary A is provided with the derived public key DPK * DPKDerive ( MPK i b ) . Update L d p k = L d p k { DPK * } .
  • Probing Phase 2. Same as Probing Phase 1, with the added condition that none of ( DPK * , MPK i j ) j { 0 , 1 } were queried as an input of O DPKAdd .
  • Output Phase. The adversary A outputs a bit b { 0 , 1 } as its guess for b.
The advantage of the adversary A winning Exp A mpkunl ( κ ) is Adv A mpkunl = | Pr [ b b ] 1 2 | .
The SALRS scheme is master-public-key-unlinkable if, for any PPT adversary A , there is a negligible function negl ( · ) , such that Adv A mpkunl negl ( · ) .
With these comprehensive security and privacy models, SALRS effectively addresses the security- and privacy-preserving requirements essential in practical cryptocurrency scenarios. Notably, SALRS accommodates rings containing derived public keys that an adversary generated from their own master public keys. This realistic feature acknowledges situations where an attacker might create derived public keys from their master public keys, engaging in transactions among these keys with the intention of executing attacks, such as double spending or compromising the security and privacy of other users.

2.2. Universal Composability

We adopt the concept of universally composable security as defined by Canetti [19]. This framework offers a systematic approach to defining the security properties of cryptographic primitives, ensuring security is preserved under a general composition with an unbounded number of instances of arbitrary protocols running concurrently. Within this framework, all protocols operate in a specified computational environment in the presence of an adversary. The computational environment represents other protocols that may be concurrently executed alongside the protocol under consideration.
Given that communication is public, with no assurance of message delivery and is asynchronous without a guarantee of messages being delivered in order in the actual network, we presume that the communication between parties is authenticated. This authentication ensures that messages sent by honest parties will not be tampered with. We proceed by providing an overview of the model for protocol execution, known as the real-world model of computation. Subsequently, we introduce the ideal-world model of computation and present the general definition of security that realizes an ideal functionality.
In the real world, there exists an adversary A and a protocol π that realizes a functionality among several parties. We denote the output of environment Z when interacting with adversary A and parties P 1 , , P n running protocol π on a security parameter k, auxiliary input z, and random input r = ( r Z , r A , r 1 , , r n ) , where each element represents the random tape used by the corresponding participant. We use the notation REAL π , A , Z ( k , z , r ) to represent this output. Additionally, let REAL π , A , Z ( k , z ) denote the random variable describing REAL π , A , Z ( k , z , r ) when r is uniformly chosen.
In the ideal world, there is a simulator S that simulates the real-life scenario, an ideal functionality F, and n dummy parties for the integrity of the simulation. Let IDEAL F , S , Z ( k , z , r ) denote the output of environment Z when interacting with adversary S and ideal functionality F on security parameter k, auxiliary input z, and random input r = ( r Z , r S , r F ) , where each element represents the random tape used by the corresponding participants. Let IDEAL F , S , Z ( k , z ) denote the random variable describing IDEAL F , S , Z ( k , z , r ) when r is uniformly chosen.
The definition of universal composability is shown as follows.
Definition 5
(Universal Composability [19]). A protocol π UC-realizes a well-designed ideal functionality F if, for any PPT adversary A , the ensembles REAL π , A , Z and IDEAL F , S , Z are indistinguishable.

3. Security Model of SALRS in the UC Framework

In this section, we aim to define the security model of SALRS in the universal composability model by introducing the newly designed ideal functionality F SALRS . The definition of F PDPKS is presented in Figure 1.
We assume that this ideal functionality operates under a fixed system parameter, hence the Setup functionality interface. This omission eliminates the need for repetitive checks on the rationality of system parameters in subsequent interfaces.
Remark 3.
Our definition in the UC framework captures the correctness, soundness, and privacy of SALRS simultaneously. A formal proof establishing the existence of a UC-secure construction will be presented in Section 4.

4. A UC-Secure SALRS Construction

In this section, we prove that the UC-security of SALRS defined above in Section 3 is equivalent to satisfying signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability simultaneously.
Let Σ = ( Setup ,   MasterKeyGen ,   DPKDerive ,   DPKOwnerCheck ,   DPKPublicCheck ,   Sign ,   Verify ,   Link ) denote the SALRS scheme. The protocol π Σ is constructed from Σ , shown in Figure 2. Similar to the ideal functionality F SALRS , it shares identical interfaces with the environment Z .
We establish equivalence by proving that a UC-secure SALRS scheme implies an SALRS scheme with signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability, and vice versa.
Lemma 1.
Let Σ be an SALRS scheme. If the corresponding protocol π Σ securely realizes the ideal functionality F SALRS , then the SALRS scheme Σ satisfies signer-linkability (SN-LINK), signer-non-slanderability (SN-NSL), signer-anonymity (SN-ANO), and master-public-key-unlinkability (MPK-UNL) simultaneously.
Proof. 
We prove this lemma by contradiction. In other words, if Σ lacks signer-linkability, signer-non-slanderability, signer-anonymity, or master-public-key-unlinkability, then π Σ cannot UC-realize the ideal functionality F SALRS .
Firstly, if Σ lacks signer-linkability, there exists an adversary G that can break the signer-linkability property of Σ with a non-negligible advantage. In other words, there exists a PPT adversary A , for any ideal world simulator S , and an environment Z that, with the assistance of G , can distinguish ( S , F SALRS ) and ( A , π Σ ) with a non-negligible probability. The process of the environment Z is as follows:
1.
Z activates the Setup Party T with information ( Setup ,   sid , T ) , obtaining system parameters PP, and sends PP to adversary G .
2.
Z receives k (where k 2 ) tuples ( M i * ,   R i * ,   σ i * ) ( i [ k ] ) from adversary G , consisting of messages, well-formed derived public key rings, and signatures.
In step 2, because adversary G can break the signer-linkability of Σ , the k tuples received by Z satisfy the following conditions:
1.
Verify ( M i * , R i * , σ i * ) = 1 , where i [ k ] ;
2.
i , j [ k ] s . t . i j , Link ( M i * , R i * , σ i * , M j * , R j * , σ J * ) = 0 ;
3.
i [ k ] R i * k .
When Z executes in the real world, all these conditions can be verified. However, when Z executes in the ideal world, since the ideal functionality F SALRS does not store relevant information, the first condition cannot be verified. Therefore, Z distinguishes between the real and ideal worlds, and the probability that Z distinguishes between the real and ideal worlds is equal to the probability that G can break the signer-linkability. Hence, if Σ does not satisfy signer-linkability, then π Σ cannot UC-realize F SALRS .
Secondly, if Σ lacks signer-non-slanderability, there exists an adversary G that can break the signer-non-slanderability property of Σ with a non-negligible advantage. In other words, there exists a PPT adversary A , for any ideal-world simulator S , and an environment Z that, with the assistance of G, can distinguish ( S , F SALRS ) and ( A , π Σ ) with a non-negligible probability. The interaction process of the environment Z is as follows:
1.
Z activates the setup party T with information ( Setup , sid , T ) , obtaining system parameters PP, and sends PP to adversary G .
2.
When Z receives a query on the master public key of a participant P i from adversary G , Z activates participant P i to obtain its master public key and sends it to G . G can inquire about the master public key of any participant.
3.
When Z receives a query from adversary G regarding whether a given derived public key dpk i is derived from a given master public key ( DPKOwnerCheck , sid , dpk i , P i ) , Z activates participant P i to obtain the check result and sends it to G .
4.
When Z receives a signature query about ( M , R , dpk i ) from adversary G , Z activates the owner of the derived public key dpk i to obtain the signature result and sends it to G .
5.
When Z receives two well-formed tuples ( M ^ , R ^ , σ ^ ) and ( M * , R * , σ * ) from adversary G , where (1) ( M * , R * , σ * ) can be verified by signature, (2) ( M ^ , R ^ , σ ^ ) is the signature result of G ’s query to Z about a derived public key dpk ^ , (3) ( M ^ , R ^ , σ ^ ) is not the signature result of G ’s query to Z about derived public key dpk ^ , and (4) these two tuples can pass the linkable verification, Z outputs 0 and halts. Otherwise, Z activates the party to return the linkable verification bit. Z obtains such tuples, and if Z is interacting with A and π Σ in the real world, Z will output 1, since signature verification and linkable verification are valid. If Z is interacting with S and F SALRS in the ideal world, Z will output 0 because the ideal function F SALRS does not record ( M * , R * , , σ * ) , so signature verification cannot pass, or F SALRS records ( M * , R * , , σ * ) , but dpk ^ , so linkable verification cannot pass.
Since G can break the signer-non-slanderability property of Σ with a non-negligible probability, the probability that Z outputs 1 when interacting with the real model is also non-negligible. Therefore, Z can distinguish the interaction with the real model and the ideal model with a non-negligible probability. In other words, if Σ lacks signer-non-slanderability, then π Σ cannot UC-realize F SALRS .
Thirdly, if Σ lacks signer-anonymity, there exists an adversary G that can break the signer-anonymous property of Σ with a non-negligible advantage. In other words, there exists a PPT adversary A , for any ideal-world simulator S, and an environment Z that, with the assistance of G , can distinguish ( S , F SALRS ) and ( A , π Σ ) with a non-negligible probability. The interaction process of the environment Z is as follows:
1.
Activate parties { P i } i [ p o l y ( κ ) ] with the message ( Masterkeygen , sid , PP ) to obtain individual master public keys { mpk i } i [ p o l y ( κ ) ] .
2.
Send { mpk i } i [ p o l y ( κ ) ] to G , and play the roles of oracle O DPKAdd ( · , · ) for adding derived public keys and the signing oracle O Sign ( · , · , · ) . Initialize the empty set L dpk = Ø .
3.
Receive a message M * , a well-formed derived public key ring R * , and two derived public keys dpk i 0 and dpk i 1 from G , satisfying the following: (1) dpk i 0 , dpk i 1 R * L dpk , and (2) neither dpk i 0 or dpk i 1 is queried before as an input by oracle O Sign ( · , · , · ) .
4.
Randomly choose a bit b { 0 , 1 } , run the DPKOwnerCheck algorithm to obtain the participant corresponding to the selected target derived public key dpk i b , and activate this participant to obtain a signature σ Sign ( M * , R * , dpk i b , mpk , msk ) , where ( mpk , msk ) is the master key pair corresponding to dpk i b . Send this signature σ to G .
5.
Continue to play the roles of oracle O DPKAdd ( · , · ) and oracle O Sign ( · , · , · ) for the adversary G .
6.
Receive b from G , output 1 if b b , otherwise output 0 and halt.
In step 2, adversary G initiates queries q 1 , . . . , q m , where query q l is one of the following:
  • Oracle O DPKAdd ( · , · ) : Z receives a derived public key adding request concerning dpk and the master public key mpk i . Z sends a derived public key owner check request regarding this information to the participant P i corresponding to the master public key mpk i , obtaining the return value b DPKOwnerCheck ( dpk , mpk i , msk i ) . If b = 1 , update L dpk = L dpk { dpk } . Return the result b to G .
  • Oracle O Sign ( · , · , · ) : Z receives a signature request concerning the message M, a well-formed derived public key ring R, and a derived public key dpk R L dpk . Z queries the owner of the derived public key dpk and activates the owner of the derived public key dpk with this signature request. Z receives the returned signature information σ Sign ( M , R , dpk , mpk i , msk i ) , where ( mpk i , msk i ) is the master public–private key pair corresponding to dpk. Return the signature σ to G .
These query requests may be adaptive, meaning that each query q l may be determined based on the answers to previous queries q 1 , , q l 1 .
In step 5, adversary G initiates more queries q m + 1 , , q n , where q l may be adaptively chosen as in step 2, except that O Sign ( dpk i 0 , · , · ) and O Sign ( dpk i 1 , · , · ) cannot be queried.
When Z interacts with A and π Σ , Z in step 4 obtains a signature σ Sign ( M * , R * , dpk i b , mpk , msk ) , and G can break the signer-anonymity with a non-negligible advantage. When Z interacts with A and π Σ , we use Pr [ Z 1 | Z REAL ] to denote the probability that Z outputs 1.
Pr Z 1 | Z REAL = 1 2 1 Pr b = 1 | σ Sign ( M * , R * , dpk i 0 , mpk , msk ) + 1 2 Pr b = 1 | σ Sign ( M * , R * , dpk i 1 , mpk , msk ) = 1 2 + 1 2 Pr Exp Σ , G snano , 1 ( κ ) = 1 Pr Exp Σ , G snano , 0 ( κ ) = 1 > 1 2 + 1 2 negl ( κ ) .
In contrast, when Z interacts with the ideal functionality F SALRS and any adversary, the instance of G ’s perspective is statistically independent of b. In this case, the probability that b = b is exactly one-half. G ’s perspective is independent of b; it includes all derived public-key-checking algorithms and signing algorithms. The σ randomly generated by S is independent of b, and the oracle queries provided by Z are also independent of b.
When Z interacts with S and the ideal functionality F SALRS , we denote by Pr Z 1 | Z IDEAL the probability that Z outputs 1.
Pr Z 1 | Z IDEAL = 1 2 1 Pr b = 1 | σ S + 1 2 Pr b = 1 | σ S = 1 2 1 Pr b = 1 | σ S + Pr b = 1 | σ S = 1 2 .
Therefore, the probability Pr Z 1 | Z REAL [ Z 1 | Z IDEAL ] > 1 2 negl ( κ ) . Thus, Z can distinguish ( π Σ , A ) and ( F SALRS , S ) with a non-negligible probability, proving that UC-secure SALRS implies signer-anonymity of SALRS.
Fourthly, if Σ lacks master-public-key-unlinkability, there exists an adversary G that can break the master-public-key-unlinkability property of Σ with a non-negligible advantage. In other words, there exists a PPT adversary A , for any ideal world simulator S , and an environment Z that, with the assistance of G , can distinguish ( F SALRS , S ) and ( π Σ , A ) with a non-negligible probability. The interaction process of the environment Z is as follows:
1.
Activate each participant { P i } i [ p o l y ( κ ) ] with the message ( Masterkeygen , sid , PP ), obtaining the master public keys { mpk i } i [ p o l y ( κ ) ] for each participant, and send them to G .
2.
Play the roles of the oracle O DPKAdd ( · , · ) and a signature oracle O Sign ( · , · , · ) for adversary G during the interaction. Initialize an empty set L dpk = Ø .
3.
G sends two master public keys mpk i 0 and mpk i 1 to Z . Z randomly chooses a bit b { 0 , 1 } , selects an arbitrary participant P r , and activates P r with ( DPKDerive , sid , mpk i b ), obtaining dpk * DPKDerive ( mpk i b ) .
4.
Send dpk * to G as the target derived public key.
5.
Continue playing the role of an oracle O DPKAdd ( · , · ) and a signature oracle O Sign ( · , · , · ) for adversary G during the interaction, except that queries O DPKAdd ( dpk * , mpk i j ) where j { 0 , 1 } cannot be made.
6.
G outputs b as the guess result. If b = b , output 1; otherwise, output 0 and halt.
In step 2, adversary G initiates queries q 1 , , q m , where query q l can be one of the following:
  • Oracle O DPKAdd ( · , · ) : When Z receives a query from G about whether a given derived public key dpk belongs to a certain master public key mpk i , Z sends this information to the participant P i corresponding to mpk i . When Z receives the result b DPKOwnerCheck ( dpk , mpk i , msk i ) from participant P i , if b = 1 , update L dpk = L dpk { dpk } . Submit the result b to G .
These query requests may be adaptive, meaning that each query q l may depend on the responses to previous queries q 1 , . . . , q l 1 .
In step 5, adversary G initiates additional queries q m + 1 , . . . , q n , where q l may be adaptively chosen like in step 2, except for queries O DPKAdd ( d p k * , dpk i j ) , where j { 0 , 1 } , cannot be made.
When Z interacts with A and π Σ , in step 3, Z obtains dpk * DPKDerive ( mpk i b ) . G can break the master-public-key-unlinkability with a non-negligible advantage. When Z interacts with A and π Σ , we use Pr Z 1 | Z REAL to denote the probability that Z outputs 1.
Pr Z 1 | Z REAL = Pr mpk i b = mpk i 0 Pr b = 0 | dpk * DPKDerive ( mpk i 0 ) + Pr mpk i b = mpk i 1 Pr b = 1 | dpk * DPKDerive ( mpk i 1 ) = 1 2 1 Pr b = 1 | dpk * DPKDerive ( mpk i 0 ) + 1 2 Pr b = 1 | dpk * DPKDerive ( mpk i 1 ) = 1 2 + 1 2 Pr Exp Σ , G m p k u n l , 0 ( κ ) = 1 Pr Exp Σ , G m p k u n l , 1 ( κ ) = 1 > 1 2 + 1 2 negl ( κ ) .
In contrast, when Z interacts with the ideal functionality F SALRS and any adversary, the perspective of the instance G is statistically independent of b. In this case, the probability that b = b is exactly one-half. The derived public key dpk * generated by S is independent of b, and the queries provided by Z are also independent of b. When Z interacts with S and F SALRS in the ideal world, let Pr Z 1 | Z IDEAL denote the probability that Z outputs 1.
Pr Z 1 | Z IDEAL = Pr mpk i b = mpk i 0 Pr b = 0 | dpk * S + Pr mpk i b = mpk i 1 Pr b = 1 | dpk * S = 1 2 1 Pr b = 1 | dpk * S + 1 2 Pr b = 1 | dpk * S = 1 2 .
Therefore, Pr Z 1 | Z REAL Pr Z 1 | Z IDEAL > 1 2 negl ( κ ) . Thus, Z can distinguish ( π Σ , A ) from ( F SALRS , S ) with a non-negligible probability, demonstrating that UC-secure SALRS inherently implies the non-linkability of public keys in SALRS.
In conclusion, if π Σ UC-realizes ( F SALRS , then Σ satisfies the properties of signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability. □
Lemma 2.
If an SALRS scheme Σ satisfies signer-linkability, signer-non-slanderability, signer-anonymity, an d master-public-key-unlinkability simultaneously, the corresponding protocol π Σ securely realizes the ideal functionality F SALRS .
Proof. 
We establish the proof through a method of contradiction. In other words, if π Σ cannot UC-realize F SALRS , then Σ fails to satisfy at least one of the properties: signer-linkability, signer-non-slanderability, signer-anonymity, or master-public-key-unlinkability.
Firstly, we claim that if π Σ cannot UC-realize F SALRS , while satisfying the other three properties, it can be deduced that Σ does not satisfy signer-linkability. In more detail, we assume the existence of an adversary A in the real world such that for any ideal world adversary S , there exists an environment Z capable of distinguishing ( S , F SALRS ) and ( A , π Σ ) . If this holds true, then there exists an adversary B that simulates the simulator S and the ideal functionality F SALRS , using the environment Z to distinguish between the ideal and real world.
B simulates the ideal adversary S in the following manner: Firstly, B obtains the public key mpk i of participant P i from Z .
1.
Upon receiving input from the environment Z , B forwards this input to A and replicates A ’s output as its own output.
2.
Upon receiving ( DPKDerive , sid , mpk i ) from F SALRS , B first checks if mpk i = mpk i . If not, it ignores this information; otherwise, it runs the algorithm DPKDerive ( mpk i ) to obtain a derived public key dpk i corresponding to mpk i .
3.
Upon receiving ( DPKOwnerCheck , sid , dpk i ) from F SALRS , B queries the derived public key adding oracle O DPKAdd ( · ) to verify whether dpk i is derived from mpk i and returns the verification result ( DPKOwnerChecked , sid , dpk i , f ) .
4.
Upon receiving ( DPKPublicCheck , sid , dpk i ) from F SALRS , B runs the corresponding algorithm and returns the verification result.
5.
Upon receiving ( Sign , sid , M , R , dpk i ) from F SALRS , B queries the signature oracle O Sign ( · , · , · ) to obtain a signature σ for the message M, the ring R, and the derived public key dpk i , and returns ( Signature , sid , M , R , σ , dpk i ) .
6.
Upon receiving ( Verify , sid , M , R , σ ) from F SALRS , B runs the verification algorithm to obtain a verification value f and returns ( Verified , sid , M , R , σ , f ) .
7.
Upon receiving ( Link , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) from F SALRS , B runs the corresponding linking verification algorithm to obtain a verification value f and returns ( Linked , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 , f ) .
Clearly, in the above interaction, through querying oracles and invoking algorithms, the simulated S and F SALRS by B are indistinguishable from the real S and F SALRS .
When the environment Z activates the participant P j with ( Link , sid , M 0 * , R 0 * , σ 0 * , M 1 * , R 1 * , σ 1 * ) , B verifies whether this information is linkable. If the linkability verification fails, and at the same time, B can successfully verify the signatures for the tuples ( M 0 * , R 0 * , σ 0 * ) and ( M 1 * , R 1 * , σ 1 * ) while having queried the signature oracle O Sign ( · , · , · ) about ( M 0 * , R 0 * , 0 * ) and ( M 1 * , R 1 * , 1 * ) , obtaining signatures σ 0 * and σ 1 * , where 0 1 , then B outputs ( Link , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) and halts. In other words, B has obtained a set of information that breaks the linkability of signers. Otherwise, B continues the simulation.
If B can obtain such a set of information, then for the input ( Link , sid , M 0 * , R 0 * , σ 0 * , M 1 * , R 1 * , σ 1 * ) , if Z interacts with the real-world protocol π Σ , the observed output by Z is 1; if Z executes in the ideal world, Z observes an output of 0. In other words, Z can distinguish whether it is interacting with the ideal functionality F SALRS or the implemented protocol π Σ . Therefore, if the probability of B successfully breaking the signer-linkability is negligible, then the probability that the environment Z can distinguish between the real world and the ideal world is also negligible, contradicting the assumption.
Secondly, we claim that if π Σ cannot UC-realize F SALRS , while satisfying the other three properties, it can be deduced that Σ does not satisfy signer-non-slanderability. In more detail, we assume the existence of an adversary A in the real world such that for any simulator S , there exists an environment Z capable of distinguishing ( S , F SALRS ) from ( A , π Σ ) . This assumption leads to the existence of an adversary B that simulates the ideal world simulator S and ideal functionality F SALRS , attempting to distinguish between the ideal and the real world by interacting with the environment Z .
B simulates the ideal adversary S in the following manner: Firstly, B obtains the public key { mpk i } i [ p o l y ( κ ) ] of all participants from Z .
1.
Upon receiving input from the environment Z , B forwards this input to A and replicates A ’s output as its own output.
2.
Upon receiving ( DPKDerive , sid , mpk i ) from F SALRS , B first checks if mpk i = mpk i . If not, it ignores the message; otherwise, it runs the algorithm DPKDerive ( mpk i ) to obtain a derived public key dpk i corresponding to mpk i .
3.
Upon receiving ( DPKOwnerCheck , sid , dpk i , mpk i ) , B queries the oracle O DPKAdd ( · ) to verify whether dpk i is derived from mpk i and returns the verification result
( DPKOwnerChecked , sid , dpk i , mpk i , f ) .
4.
Upon receiving ( DPKPublicCheck , sid , dpk i ) , B runs the corresponding algorithm and returns the verification result.
5.
Upon receiving ( Sign , sid , M , R , dpk i ) , B queries the signing oracle O Sign ( · , · , · ) to obtain the signature σ for the message M, context R, and derived public key dpk i , and returns ( Signature , sid , M , R , σ , dpk i ) .
6.
Upon receiving ( Verify , sid , M , R , σ ) , B runs the signature verification algorithm to obtain the verification value f and returns ( Verified , sid , M , R , σ , f ) .
7.
Upon receiving ( Link , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) , B runs the corresponding linkability verification algorithm to obtain the verification value f and returns ( Linked , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 , f ) .
Clearly, in the above interaction, through querying oracles and invoking algorithms, the simulations of S and F SALRS by B are indistinguishable from the actual S and F SALRS .
When the environment Z outputs two tuples ( M ^ , R ^ , σ ^ ) and ( M * , R * , σ * ) , these tuples satisfy the following conditions: (1) ( M * , R * , σ * ) can be verified by signature verification; (2) ( M ^ , R ^ , σ ^ ) is the signature result queried by B regarding a certain derived public key dpk ^ ; (3) ( M * , R * , σ * ) is not the signature result queried by B regarding the derived public key dpk ^ ; (4) these two tuples can be successfully verified by the linkability verification. In this case, B outputs this message pair and halts, indicating that B has obtained a pair of messages that can defame the signer. Otherwise, B continues the simulation.
If B can obtain such a pair of messages that can defame the signer, then if Z interacts with A and π Σ in the real world, the outputs observed by Z are 1 due to the effectiveness of signature verification and linkability verification. If Z interacts with S and F SALRS in the ideal world, signature verification cannot pass, since ( M * , R * , , σ * ) is not recorded in the ideal functionality F SALRS . Therefore, Z observes an output of 0. Alternatively, if F SALRS records ( M * , R * , , σ * ) , but dpk ^ ?, linkability verification cannot pass, and Z observes an output of 0. In this way, Z can distinguish whether it is interacting in the real or ideal world. Therefore, if the probability that B can slander the signer is negligible, then the probability that Z can distinguish between the real and ideal worlds is also negligible, contradicting the assumption.
Thirdly, we claim that if π Σ cannot UC-realize F SALRS , while satisfying the other three properties, it can be deduced that Σ does not satisfy signer-anonymity. In other words, there exists an adversary B , assisted by an environment Z , capable of breaking the signer-anonymity property of Σ . To elaborate further, we assume the existence of an adversary A in the real world such that for any adversary S in the ideal world, there exists an environment Z capable of distinguishing ( S , F SALRS ) from ( A , π Σ ) for any fixed security parameter κ and fixed input z:
IDEAL F SALRS , S , Z ( κ , z ) REAL π Σ , A , Z ( κ , z ) > negl ( κ ) .
We demonstrate that the adversary G h possesses an advantage in the signer-anonymity game, denoted as Adv Σ , G h snano ( κ ) > negl ( κ ) l , where l is the total number of signed messages. The public keys of the participants { mpk i } i [ p o l y ( κ ) ] are sent to G h and Z , allowing G h to make queries to the two mentioned oracles. G h conveys a message M * , and a correctly formatted derived public key ring R * to Z . G h simulates the operation of the environment Z similarly to the system running π Σ F SALRS as follows.
1.
Whenever participant P j is activated with input ( DPKDerive , sid ) , G h instructs P j to return the corresponding derived public key. This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
2.
Whenever participant P i is activated with input ( DPKOwnerCheck , sid , dpk ) , G h instructs P i to return the corresponding check result. This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
3.
Whenever participant P j is activated with input ( DPKPublicCheck , sid , dpk ) , G h instructs P j to return the corresponding check result. This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
4.
For the first h 1 instances, Z requests signatures on M * , R * , and dpk n , where n [ h 1 ] . G h instructs the signing party to return a signature σ Sign ( M * , R * , dpk n , mpk , msk ) , where ( mpk , msk ) is the public–private key pair corresponding to dpk n .
5.
For the h-th instance, Z requests a signature on M * , R * , and dpk h . G h randomly selects an honestly derived public key dpk r from the set R * and queries the oracle O Sign ( · , · , · ) with information ( M * , R * , dpk h , dpk r ) to obtain a signature σ in return. That is, during execution, when b = 0 , σ Sign ( M * , R * , dpk h , mpk h , msk h ) ; when b = 1 , σ Sign ( M * , R * , dpk r , mpk r , msk r ) .
6.
For the remaining l h instances, Z requests signatures on M * , R * , and dpk n , where n [ l ] [ h ] . G h instructs the signing party P r to return a signature σ Sign ( M * , R * , dpk r , mpk r , msk r ) , where ( mpk r , msk r ) is the master public–private key pair corresponding to dpk r , and P r is the owner of dpk r .
7.
Whenever participant P j is activated with input ( Verify , sid , M , R , σ ) , G h instructs P j to output the execution result ( sid ,   M ,   R ,   σ ,   f ) to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
8.
Whenever participant P j is activated with input ( Link , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) , G h instructs P j to output the execution result ( Linked , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 , f ) to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
9.
When Z halts, G h outputs the output value of Z and halts.
We analyze the success probability of G h using the methodology of hybrid argument. For j { 0 , , l } , let Env j represent the event: Z interacts with S in the ideal process, except that the first j signatures are generated by the truly derived public key dpk i rather than an arbitrarily chosen derived public key dpk r . Let H j be Pr Z 1 | Env j .
We easily observe that H 0 is equivalent to the probability of Z outputting 1 in the ideal world, and H l is equivalent to the probability of Z outputting 1 in the real world. Moreover, during the execution of G h , if G h obtains a σ value from its signing oracle that is generated by the actual derived public key dpk i , the probability of Z outputting 1 is equivalent to H h . If σ is generated from an arbitrarily chosen honest derived public key dpk r , the probability of Z outputting 1 is equivalent to H h 1 . The detailed process is as follows:
H 0 = IDEAL F SALRS , S , Z ( κ , z ) H l = REAL π Σ , A , Z ( κ , z ) H h 1 = Pr G h 1 | σ Sign ( M * , R * , dpk r , mpk r , msk r ) H h = Pr G h 1 | σ Sign ( M * , R * , dpk i , mpk i , msk i ) .
i = 1 l H i 1 H i i = 1 l ( H i 1 H i ) = H 0 H l = IDEAL F SALRS , S , Z ( κ , z ) REAL π Σ , A , Z ( κ , z ) > negl ( κ ) .
Therefore, there exists some h { 0 , , l } such that H h 1 H h > negl ( κ ) l . Here, without loss of generality, we assume H h 1 H h > negl ( κ ) l . Thus, the advantage of the adversary G h is as follows:
Adv Σ , G h snano ( κ ) = Pr Exp Σ , A snano , 1 ( κ ) = 1 Pr Exp Σ , A snano , 0 ( κ ) = 1 = Pr G h 1 | σ Sign ( M * , R * , dpk i , mpk i , msk i ) Pr G h 1 | σ Sign ( M * , R * , dpk r , mpk r , msk r ) = H h H h 1 > negl ( κ ) l
This implies that G has a non-negligible advantage with respect to κ , as l is polynomially bounded in κ . Therefore, if the environment Z can distinguish between the real and ideal worlds, there exists an adversary B that, under the help of the environment Z , breaks the signer-anonymity of Σ .
Finally, we claim that if π Σ cannot UC-realize F SALRS while satisfying the other three properties, it can be deduced that Σ does not satisfy master-public-key-unlinkability. More specifically, we assume the existence of an adversary A in the real world such that, for any ideal-world adversary S , there exists an environmental machine Z , which can distinguish ( S , F SALRS ) from ( A , π Σ ) for any fixed security parameter κ and fixed input z, as shown in Equation (3).
We demonstrate that the adversary G h exhibits an advantage in the game of master-public-key-unlinkability, denoted as Adv Σ , G h mpkunl ( κ ) > negl ( κ ) / l , where l is the total number of generated target derived public keys. The public keys of participants, denoted as { mpk i } i [ p o l y ( κ ) ] , are sent to both G h and Z , allowing G h to make queries to the aforementioned two oracles. G h simulates the environment Z in a manner analogous to the execution of π Σ / F SALRS .
1.
For the first h 1 queries, Z requests participant P j to provide a derived public key dpk n related to mpk i , where n [ h 1 ] . G h instructs P j to execute the corresponding algorithm and return dpk n DPKDerive ( mpk i ) .
2.
For the h-th query, Z requests participant P j to provide a derived public key dpk h related to mpk i . G h randomly selects a public key mpk r such that mpk i mpk r and queries the oracle O DPKDerive ( · ) with the information ( mpk i , mpk r ) to obtain the target derived public key dpk h . Subsequently, G h submits dpk h as the derived public key for mpk i . In other words, dpk h DPKDerive ( PP , mpk i ) where b = 0 or dpk h DPKDerive ( PP , mpk r ) where b = 1 .
3.
For the remaining l h queries, Z requests participant P j to provide a derived public key dpk n related to mpk i , where n [ l ] [ h ] . G h instructs P j to return dpk n DPKDerive ( PP , mpk r ) .
4.
Whenever participant P i is activated with the input ( DPKOwnerCheck , sid , dpk ) , G h instructs P i to return the corresponding result f, where f = 1 indicates that dpk is linked to the public key of P i . Otherwise, G h queries the oracle O DPKAdd ( · , · ) about dpk and receives the result value f, instructing P i to return this value to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
5.
Whenever participant P i is activated with the input ( Sign , sid , M , R , dpk ) , G h instructs P i to output the execution result ( Signature , sid , M , R , σ , dpk ) and sends it to Z . Otherwise, G h queries the oracle O Sign ( · , · , · ) with dpk and ( M , R ) , receiving the corresponding signature σ . G h instructs P i to return the information ( Sign , sid , M , R , σ , dpk ) to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
6.
Whenever participant P j is activated with the input ( Verify , sid , M , R , σ ) , G h instructs P j to output the execution result ( Verified , sid , M , R , σ , f ) to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
7.
Whenever participant P j is activated with the input ( Link , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 ) , G h instructs P j to output the execution result ( Linked , sid , M 0 , R 0 , σ 0 , M 1 , R 1 , σ 1 , f ) to Z . This is a perfect simulation, and at this step, Z cannot distinguish between ( S , F SALRS ) and ( A , π Σ ) .
8.
When Z halts, G h outputs the output value of Z and halts.
We analyze the success probability of G h using the methodology of hybrid argument. For j { 0 , , l } , let Env j represent the event: Z interacts with S in the ideal world, except that the first j derived public keys are derived from the real master public key mpk i instead of mpk r . Let H j be Pr Z 1 | Env j .
We easily observe that H 0 is equivalent to the probability of Z outputting 1 in the ideal world, and H l is equivalent to the probability of Z outputting 1 in the real world. Moreover, during the execution of G h , if G h obtains the value dpk h from its derived public key oracle, where dpk h is derived from the genuine master public key mpk i , then the probability of Z outputting 1 is equivalent to H h . If dpk h is derived from the master public key mpk r , then the probability of Z outputting 1 is equivalent to H h 1 . The detailed process is as follows:
H 0 = IDEAL F SALRS , S , Z ( κ , z ) H l = REAL π Σ , A , Z ( κ , z ) H h 1 = Pr G h 1 | dpk h DPKDerive ( mpk r ) H h = Pr G h 1 | dpk h DPKDerive ( mpk i ) .
i = 1 l H i 1 H i i = 1 l ( H i 1 H i ) = H 0 H l = IDEAL F SALRS , S , Z ( κ , z ) REAL π Σ , A , Z ( κ , z ) > negl ( κ ) .
Similar to the proof of signer-anonymity, there exists some h { 0 , , l } such that H h 1 H h > negl ( κ ) l . Here, without loss of generality, we assume H h 1 H h > negl ( κ ) l . Thus, the advantage of the adversary G h is as follows:
Adv Σ , G h mpkunl ( κ ) = Pr Exp Σ , A mpkunl , 1 ( κ ) = 1 Pr Exp Σ , A mpkunl , 0 ( κ ) = 1 = Pr G h 1 | dpk h DPKDerive ( mpk i ) Pr G h 1 | dpk h DPKDerive ( mpk r ) = H h H h 1 > negl ( κ ) l
This implies that G has a non-negligible advantage with respect to κ , as l is polynomially bounded in κ . Therefore, if the environment Z can distinguish between the real and ideal worlds, there exists an adversary B that, under the help of the environment Z , breaks the master-public-key-unlinkability of Σ . □
Consequently, we arrive at the following theorem.
Theorem 1.
Let Σ be an SALRS scheme. The corresponding protocol π Σ securely realizes the ideal functionality F SALRS if and only if the scheme Σ satisfies signer-linkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability simultaneously.
Proof. 
The proof can be deduced from the preceding two lemmas. □

5. Conclusions

In this paper, we revisited and formalized the ideal functionality of the linkable ring signature supporting stealth addresses (SALRS) within the universal composability (UC) model, encapsulating all correctness, soundness, and privacy considerations. Furthermore, our research conclusively demonstrates that the newly introduced UC-security feature for SALRS aligns with the simultaneous fulfillment of essential game-based security properties: signer-unlinkability, signer-non-slanderability, signer-anonymity, and master-public-key-unlinkability. This finding not only safeguards the sustained security of pre-existing SALRS designs within the UC framework but also highlights their seamless integration capabilities with other UC-secure primitives in intricate blockchain systems. Future research may focus on providing security proofs for more cryptographic primitives in the UC model within the context of blockchain, thereby strengthening the overall security of the blockchain structure.

Author Contributions

Conceptualization, X.W. and Z.L.; methodology, X.W., C.Z. and Z.L.; formal analysis, X.W.; writing—original draft preparation, X.W.; writing—review and editing, X.W. and Z.L.; supervision, Z.L. All authors have read and agreed to the published version of the manuscript.

Funding

This work was funded by the National Natural Science Foundation of China (No. 62072305, 62132013).

Data Availability Statement

The data will be made available by the authors on request.

Conflicts of Interest

The authors declare no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
PPTProbabilistic Polynomial Time
SALRSLinkable Ring Signature Supporting Stealth Addresses
UCUniversal Composability

References

  1. Van Saberhagen, N. CryptoNote v 2.0. 2013. Available online: https://www.bytecoin.org/old/whitepaper.pdf (accessed on 20 November 2023).
  2. Liu, J.K.; Wei, V.K.; Wong, D.S. Linkable spontaneous anonymous group signature for ad hoc groups. In Proceedings of the Information Security and Privacy: 9th Australasian Conference, ACISP 2004, Sydney, NSW, Australia, 13–15 July 2004; Proceedings 9. Springer: Berlin/Heidelberg, Germany, 2004; pp. 325–335. [Google Scholar]
  3. Todd, P. Stealth Addresses. Bitcoin Development Mailing List. 6 January 2014. Available online: https://www.mail-archive.com/bitcoin-development@lists.sourceforge.net/msg03613.html (accessed on 20 November 2023).
  4. Liu, Z.; Yang, G.; Wong, D.S.; Nguyen, K.; Wang, H. Key-insulated and privacy-preserving signature scheme with publicly derived public key. In Proceedings of the 2019 IEEE European Symposium on Security and Privacy (EuroS&P), Stockholm, Sweden, 17–19 June 2019; IEEE: New York, NY, USA, 2019; pp. 215–230. [Google Scholar]
  5. Baum, C.; Lin, H.; Oechsner, S. Towards practical lattice-based one-time linkable ring signatures. In Proceedings of the International Conference on Information and Communications Security, Lille, France, 29–31 October 2018; Springer: Cham, Switzerland, 2018; pp. 303–322. [Google Scholar]
  6. Boyen, X.; Haines, T. Forward-secure linkable ring signatures from bilinear maps. Cryptography 2018, 2, 35. [Google Scholar] [CrossRef]
  7. Branco, P.; Mateus, P. A code-based linkable ring signature scheme. In Proceedings of the Provable Security: 12th International Conference, ProvSec 2018, Jeju, Republic of Korea, 25–28 October 2018; Proceedings 12. Springer: Cham, Switzerland, 2018; pp. 203–219. [Google Scholar]
  8. Courtois, N.T.; Mercer, R. Stealth address and key management techniques in blockchain systems. In Proceedings of the ICISSP 2017—3rd International Conference on Information Systems Security and Privacy, Porto, Portugal, 19–21 February 2017; pp. 559–566. [Google Scholar]
  9. Noether, S.; Mackenzie, A.; Monero Research Lab. Ring confidential transactions. Ledger 2016, 1, 1–18. [Google Scholar] [CrossRef]
  10. Fujisaki, E. Sub-linear size traceable ring signatures without random oracles. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. 2012, 95, 151–166. [Google Scholar] [CrossRef]
  11. Liu, J.K.; Au, M.H.; Susilo, W.; Zhou, J. Linkable ring signature with unconditional anonymity. IEEE Trans. Knowl. Data Eng. 2013, 26, 157–165. [Google Scholar] [CrossRef]
  12. Tsang, P.P.; Wei, V.K. Short linkable ring signatures for e-voting, e-cash and attestation. In Proceedings of the International Conference on Information Security Practice and Experience, Singapore, 11–14 April 2005; Springer: Berlin/Heidelberg, Germany, 2005; pp. 48–60. [Google Scholar]
  13. Liu, Z.; Nguyen, K.; Yang, G.; Wang, H.; Wong, D.S. A lattice-based linkable ring signature supporting stealth addresses. In Proceedings of the Computer Security—ESORICS 2019: 24th European Symposium on Research in Computer Security, Luxembourg, 23–27 September 2019; Proceedings, Part I 24. Springer: Cham, Switzerland, 2019; pp. 726–746. [Google Scholar]
  14. Alberto Torres, W.A.; Steinfeld, R.; Sakzad, A.; Liu, J.K.; Kuchta, V.; Bhattacharjee, N.; Au, M.H.; Cheng, J. Post-quantum one-time linkable ring signature and application to ring confidential transactions in blockchain (lattice RingCT v1. 0). In Proceedings of the Information Security and Privacy: 23rd Australasian Conference, ACISP 2018, Wollongong, NSW, Australia, 11–13 July 2018; Proceedings 23. Springer: Cham, Switzerland, 2018; pp. 558–576. [Google Scholar]
  15. Zhang, H.; Zhang, F.; Tian, H.; Au, M.H. Anonymous post-quantum cryptocash. In Proceedings of the International Conference on Financial Cryptography and Data Security, Nieuwpoort, Curaçao, 26 February–2 March 2018; Springer: Berlin/Heidelberg, Germany, 2018; pp. 461–479. [Google Scholar]
  16. Lu, X.; Au, M.H.; Zhang, Z. Raptor: A practical lattice-based (linkable) ring signature. In Proceedings of the Applied Cryptography and Network Security: 17th International Conference, ACNS 2019, Bogota, Colombia, 5–7 June 2019; Proceedings 17. Springer: Cham, Switzerland, 2019; pp. 110–130. [Google Scholar]
  17. Libert, B.; Ling, S.; Nguyen, K.; Wang, H. Zero-knowledge arguments for lattice-based accumulators: Logarithmic-size ring signatures and group signatures without trapdoors. In Proceedings of the Advances in Cryptology—EUROCRYPT 2016: 35th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Vienna, Austria, 8–12 May 2016; Proceedings, Part II 35. Springer: Berlin/Heidelberg, Germany, 2016; pp. 1–31. [Google Scholar]
  18. Esgin, M.F.; Steinfeld, R.; Sakzad, A.; Liu, J.K.; Liu, D. Short lattice-based one-out-of-many proofs and applications to ring signatures. In Proceedings of the Applied Cryptography and Network Security: 17th International Conference, ACNS 2019, Bogota, Colombia, 5–7 June 2019; Proceedings 17. Springer: Cham, Switzerland, 2019; pp. 67–88. [Google Scholar]
  19. Canetti, R. Universally composable security: A new paradigm for cryptographic protocols. In Proceedings of the 42nd IEEE Symposium on Foundations of Computer Science, Newport Beach, CA, USA, 7 August 2002; IEEE: New York, NY, USA, 2002; pp. 136–145. [Google Scholar]
  20. Backes, M.; Hofheinz, D. How to break and repair a universally composable signature functionality. In Proceedings of the International Conference on Information Security, Palo Alto, CA, USA, 27–29 September 2004; Springer: Berlin/Heidelberg, Germany, 2004; pp. 61–72. [Google Scholar]
  21. Canetti, R. Universally composable signature, certification, and authentication. In Proceedings of the 17th IEEE Computer Security Foundations Workshop, Pacific Grove, CA, USA, 30 June 2004; IEEE: New York, NY, USA, 2004; pp. 219–233. [Google Scholar]
  22. Abe, M.; Ohkubo, M. A framework for universally composable non-committing blind signatures. Int. J. Appl. Cryptogr. 2012, 2, 229–249. [Google Scholar] [CrossRef]
  23. Hong, X.; Gao, J.; Pan, J.; Zhang, B. Universally composable secure proxy re-signature scheme with effective calculation. Clust. Comput. 2019, 22, 10075–10084. [Google Scholar] [CrossRef]
  24. Zhu, C.; Wang, X.; Liu, Z. Universally Composable Key-Insulated and Privacy-Preserving Signature Scheme with Publicly Derived Public Key. In Proceedings of the Inscrypt 2023, HangZhou, China, 11–12 November 2023. [Google Scholar]
Figure 1. Ideal functionality of linkable ring signature supporting stealth addresses.
Figure 1. Ideal functionality of linkable ring signature supporting stealth addresses.
Mathematics 12 00491 g001
Figure 2. An SALRS protocol π Σ .
Figure 2. An SALRS protocol π Σ .
Mathematics 12 00491 g002
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

Wang, X.; Zhu, C.; Liu, Z. A Universally Composable Linkable Ring Signature Supporting Stealth Addresses. Mathematics 2024, 12, 491. https://doi.org/10.3390/math12030491

AMA Style

Wang X, Zhu C, Liu Z. A Universally Composable Linkable Ring Signature Supporting Stealth Addresses. Mathematics. 2024; 12(3):491. https://doi.org/10.3390/math12030491

Chicago/Turabian Style

Wang, Xingkai, Chunping Zhu, and Zhen Liu. 2024. "A Universally Composable Linkable Ring Signature Supporting Stealth Addresses" Mathematics 12, no. 3: 491. https://doi.org/10.3390/math12030491

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