Next Article in Journal
Pricing of Al-Urbun and a Class of Al-Istijrar Islamic Contracts under the Black–Scholes Framework
Next Article in Special Issue
RHCA: Robust HCA via Consistent Revoting
Previous Article in Journal
Dynamic Malware Mitigation Strategies for IoT Networks: A Mathematical Epidemiology Approach
Previous Article in Special Issue
SmartMeasurer: A Secure and Automated Bandwidth Measurement for Tor with Smart Contract
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Blockchain-Enabled Group Covert Channel against Transaction Forgery

1
School of Cyberspace Science and Technology, Beijing Institude of Technology, Beijing 100081, China
2
School of Computer Science and Information Engineering, Hefei University of Technology, Hefei 230009, China
*
Authors to whom correspondence should be addressed.
Mathematics 2024, 12(2), 251; https://doi.org/10.3390/math12020251
Submission received: 13 December 2023 / Revised: 7 January 2024 / Accepted: 8 January 2024 / Published: 12 January 2024

Abstract

:
As a decentralized network infrastructure, the data sent to the blockchain are public and temper-evident. The cover of massive normal transactions in a blockchain network is ideal for constructing a stable and reliable covert channel to achieve one-to-many group covert communication. Existing blockchain-based covert communication schemes face challenges in balancing concealment, embedding rate and filtering efficiency, making them unsuitable for direct extension to group scenarios. Adopting a key-leakage scheme can increase the channel capacity while maintaining high concealment from external adversaries. However, it will also expose more knowledge to the receiver. A malicious receiver has the ability to steal a sender’s identity or replay historical transactions to control the entire channel. In this paper, we define the capabilities of malicious receivers in blockchain-based group covert communication scenarios and propose a group covert communication scheme resistant to transaction forgery attacks. Theoretical analysis and experiments prove that our covert transactions do not have any transaction correlativity, ensuring the unique authenticity of the sender’s identity while maintaining supreme concealment compared with the existing schemes. The precision and recall of machine learning detection results can reach 0.57–0.62 (0.5 is the ideal value).

1. Introduction

Blockchain-based covert communication utilizes the blockchain transactions and network as a covert channel for steganographic transmission [1]. Specifically, the sender builds covert transaction by embedding the message within certain fields of a typical blockchain transaction. Meanwhile, the receiver needs to identify the covert transaction from all of the transactions recorded on the blockchain and subsequently extract the encoded message. Traditional network-based covert communication mechanisms rely on peer-to-peer transmission, which can expose the identities of both communicating parties. Covert channels established through the utilization of packet redundancy and inter-packet delays exhibit instability. They are prone to detection via data statistical analysis and machine learning techniques. Moreover, they can be disrupted by adversarial maneuvers such as packet reordering and noise injection attacks [2]. Hence, their security and stability cannot be adequately guaranteed. In contrast, the blockchain provides a decentralized and distributed system that leverages the immutability of transaction and the randomness of address, which brings high confidentiality and reliability to the communication process.
In a one-on-one blockchain-based covert communication scenario, the existing systems focus on security against external adversaries. These adversaries mainly use data statistical analysis methods to identify covert transactions in the blockchain, such as using KLD (Kullback–Leibler divergence) tests and KS tests to detect whether the character distribution is abnormal. To counter these detection methods, the sender collects the distribution patterns of normal transactions and constructs covert transactions that match them, or they embed covert messages using fields with unordered outputs, such as signatures [3].
In addition, since blockchain transaction data are public, anyone can check historical transaction data. Therefore, receivers can filter covert transactions offline instead of performing operations on the accounts. The sender can negotiate the necessary parameters for communication with any number of receivers and then achieve group covert communication between the sender and multiple receivers through the blockchain by making a single covert transaction. All receivers can filter out covert transactions at any time since they are recorded.
In general, the sender assigns different key pairs for each receiver group as identity [4]. When communicating with a certain receiver group, the sender chooses the group’s corresponding key pair to participate in generating the covert transaction. This mechanism ensures that only members of the specified group can receive and extract messages. Since the selected algorithm remains the same each time, the construction pattern of the covert transaction is fixed.
In a blockchain-based group covert communication scenario, where multiple receivers or receiver groups exist, the threat of internal adversaries needs to be considered. These internal adversaries are more interested in messages sent to other receiver groups and attempt to use knowledge on the receiver side to reconstruct the entire covert channel. They may even collude with external adversaries, resulting in more severe security threats to covert communication. Since they do not possess the corresponding keys, internal adversaries cannot accurately identify covert transactions using filtering algorithms. However, relative to external adversaries, internal adversaries are familiar with the characteristics of covert transactions generated by the same algorithm, such as the number of inputs and outputs in a transaction and the way addresses are associated. As a result, they are more likely to identify suspected covert transactions sent to other groups. Based on the above analysis, the sender needs to not only simulate normal transactions on character distribution but also strengthen the covert nature of transaction patterns, minimize the correlativity between transactions, and reduce the security risks posed by internal adversaries.
On the other hand, to achieve efficient embedding and filtering, the sender may choose a key-leakage-based scheme to implement covert communication, which exposes the sender’s private key on the receiver’s side. In this case, malicious receivers may use the sender’s private key to send covert transactions and steal the sender’s identity to communicate with other receiver groups or replay historical transactions in the channel to carry out an identity-forgery attack and ultimately control the entire channel. Thus, in a blockchain-based group covert communication scenario, an effective authentication mechanism is needed to ensure the unforgeability of the sender’s identity and transactions.
A well-designed blockchain-based covert communication scheme should be able to resist attacks from internal adversaries while maintaining high channel capacity and efficiency without sacrificing anonymity. Existing covert communication models underestimate the threat posed by internal adversaries and lack effective measures to counter identity forgery attacks. In addition, existing covert communication schemes exhibit significant differences in transaction association and patterns from ordinary transactions, which can be easily exploited by adversaries to expose the covert channel. To address these issues, we propose a novel identity authentication mechanism based on the BLS short signature [5]. The sender generates an identity authentication signature, and the receiver can uniquely determine the source of the message based on the validity and timeliness of the signature, thereby excluding interference from internal adversaries. Moreover, to reduce the correlativity of transactions while efficiently applying the mechanism, we propose an message-embedding and transaction filtering algorithm based on Kleptography and ECDH (Elliptic Curve Diffie–Hellman). By integrating the two and embedding the identity authentication signature in the transaction, we ultimately design a blockchain-based group covert communication scheme that is effective against attacks from internal adversaries. We evaluate the scheme’s concealment from the perspectives of defending against both external and internal adversaries. The results of KLD and KS tests show that the covert transactions generated by the scheme can resist statistical analysis attacks. An internal adversary may obtain extra accuracy in locating covert transactions sent to other groups with known transaction features. We use a machine learning detection model to simulate the attack. The results of the machine learning detection show that the internal adversary cannot effectively distinguish between covert and ordinary transactions even if they obtain transaction construction patterns.
Our contributions:
  • We propose a blockchain-based group covert communication model, which takes into account the threat from internal adversaries to lay the foundation for solving the transaction detection and identity forgery risks.
  • We propose an message embedding and transaction filtering mechanism which can achieve data covert embedding and extraction while ensuring the unlinkability of transactions, thereby enhancing the concealment of covert transactions. An identity authentication mechanism based on the BLS signature is also implemented within the limited storage space of blockchain transactions to achieve sender identity authentication and address the risks of identity forgery and replay attacks by internal adversaries.
  • We implemented a prototype system and evaluated the proposed scheme to demonstrate the feasibility. Experimental results show that compared to the existing method, our scheme can resist identity forgery attacks by internal adversaries, achieve higher concealment against external adversaries and provide a higher channel capacity with acceptable cost.
The remainder of this paper is organized as outlined below. Section 2 proposes our blockchain-based group covert communication system and threat model. Section 3 provides related works about traditional covert communication, blockchain-based covert communication and blockchain-based group covert communication. Section 4 discusses the impact of transaction correlation on the concealment and introduces relevant background knowledge. Section 5 describes the implementation details of the proposed scheme. In Section 6, we evaluate the performance of our scheme and analyze the countermeasures against the adversaries. Finally, Section 7 concludes the paper and proposes future research directions.

2. Problem Statement

Traditional network-based covert channels are susceptible to detection and disruption, while blockchain-based covert communication offers inherent concealment and anonymity. In current blockchain-based group covert communication models, the attack target of internal adversaries is defined as discovering covert channels, but the possibility of internal adversaries forging covert transactions is overlooked. For example, the sender sends covert transactions from a fixed address [6], which is the sole identifier used by the receiver to filter transactions. However, the private key corresponding to this address can be derived by the receiver, so once the algorithm is public, all receivers can create covert transactions and send them from that address. To ensure the unique authenticity of the sender’s identity in the context of group covert communication, this section presents a blockchain-based group covert communication model that can resist forged transaction attacks. In another scheme, the sender uses a group key to create the corresponding index matrix of address interaction [4]. The receiver uses the same group key to recover the matrix and filter transactions. As long as malicious receivers have knowledge of the transaction construction algorithm, they have the capability to forge covert transactions using the held group key, thus deceiving other members of the group. Related works are detailed in Section 3.
In this section, we present the system model as shown in Figure 1 alongside a formal description of the threat model and the design goals of our scheme.

2.1. System Model

A complete blockchain-based group covert communication process consists of five steps including initialize, build covert transaction, flooding broadcast, filter covert transaction, extract and verify. A one-time out-of-chain communication channel and three entities participate in the process: the sender, the receiver, and the blockchain network. The entities of the system model are given below:
  • Sender: The sender generates the necessary parameters and initiates group covert communication on the blockchain. During a communication session, the sender embeds covert messages and identity authentication signatures into a blockchain transaction, transforming it into a covert transaction. Then, the sender sends this transaction from a blockchain node to the network, thereby transmitting the covert messages.
  • Receiver: The receiver filters covert transactions from the blockchain based on pre-negotiated parameters, verifies their validity, and extracts the covert messages. In our proposed system model, receivers exist in the form of groups. All receivers within the same group hold the same parameters, while the process of filtering transactions remains independent. The sender generates transactions using the key corresponding to the designated receiver group to achieve covert communication.
  • Out-of-chain communication channel: The secure channel outside the blockchain that the sender and receiver utilize before establishing their initial communication. Through this channel, the sender transmits the necessary parameters for establishing communication such as keys, shared random numbers, and so on. This channel does not involve any actual communication content. For security, it is only used once unless the sender needs to change the key to construct a new channel.
  • Blockchain network: The media used for covert communication. Covert transactions originate from one blockchain node and propagate to all nodes in the blockchain network through the flooding broadcast mechanism. Once these transactions are confirmed, they will be recorded in the transaction list of a particular block.
  • Initialize: Prior to the first communication, the sender assigns a group label to the receiver and negotiates necessary parameters.
  • Build covert transaction: The sender encodes the original information and constructs a covert transaction using an embedding algorithm. This covert transaction contains the sender’s identity authentication signature, proving that it originates from the sender. Additionally, the transaction includes a modified signature to assist the receiver in filtering and extracting covert information.
  • Flooding broadcast: The covert transaction is broadcasted throughout the network using a flooding method and is eventually recorded on the blockchain.
  • Filter covert transaction: The receiver searches the public blockchain for covert transactions based on the modified signature and the receiver’s group label.
  • Extract and verify: The receiver extracts the original information from the covert transaction and verifies the sender’s identity authentication signature. If the signature is valid, it confirms that the transaction is from the legitimate sender. Otherwise, if the signature is invalid, it indicates that the transaction is a forged transaction with an imitative signature created by an internal adversary.

2.2. Threat Model

In our blockchain-based group covert communication system, adversaries that need to be considered can be summarized into three main types, including network eavesdropper, blockchain data analyst and internal adversary. Network eavesdropper and blockchain data analyst are classified as external adversaries.
  • Network eavesdropper: Adversaries present in the form of blockchain network nodes that propagate transactions. They monitor the network flow on its connected nodes. These adversaries attempt to identify covert channels, recognize the communication parties and extract covert messages by intercepting and analyzing network traffic packets, even reconstructing the entire communication network topology.
  • Blockchain data analyst: Adversaries analyze transaction data to summarize characteristics from all blocks. Their goal is to differentiate between normal transactions and covert transactions. When more covert transactions are uncovered, analysts are increasingly able to identify the properties of covert channels, thereby detecting communication behaviors.
  • Internal adversary: Internal adversaries present as malicious receivers within the receiver group. As communication participants, internal adversaries possess the same parameters and permissions as legitimate receivers. Once they obtain enough knowledge like a sender’s private key, they can send forged covert transactions by imitating the construction pattern of the sender. Specifically, they build covert transactions with modified signatures and imitative signatures, which can be recognized by other receivers. This allows them to communicate with other receivers in the same group, thereby delivering incorrect information. Alternatively, they can replay transactions previously sent by the sender at any given time, therefore destroy message timeliness. The receivers cannot distinguish the authenticity of the message source due to the attacks which make the channel untrustworthy. Furthermore, compared to external adversaries, internal adversaries are quite familiar with the characteristics of cover transactions. This facilitates their ability to identify and target covert transactions sent to other groups.

2.3. Design Goals

Based on the formal models and definitions given above, we introduce the design goals of the proposed scheme as follows:
  • Concealment: Covert transactions should exhibit indistinguishability, where internal adversaries are unable to discern transactions intended for other groups, and external adversaries cannot differentiate between covert and regular transactions.
  • Practicability: Covert transactions should be efficiently sent and filtered. The time required for covert transaction filtration should be less than the time it takes to generate a new block. The time costs associated with information embedding and extraction should be acceptable.
  • Unforgeability: In covert communication, the identity of the sender should be uniquely verifiable, and internal adversaries should be incapable of forging sender transactions using recipient parameters.
  • Capability: Covert communication should provide a sufficient channel capacity while ensuring concealment, practicability and unforgeability. The channel should facilitate the cost-effective transmission of covert messages.

3. Related Work

In this section, we introduce the related works about traditional covert communication, blockchain-based covert communication and blockchian-based group covert communication.

3.1. Traditional Covert Communication

Covert communication serves as a mechanism for discreet information exchange between senders and receivers via public channels, eluding detection by third parties [7]. Traditional covert communication methods often rely on the establishment of covert channels using network traffic data packets or time intervals. In covert storage channels, various fields within network protocols, such as the ACK or SEQ fields of the TCP/IP protocol, are exploited for storing covert information [8]. Covert time channels leverage the order of data packet arrivals or the intervals between them for transmitting covert information [9]. Unfortunately, these fields exhibit fixed positions, rendering them susceptible to detection, restriction, or even modification by potential attackers, thereby compromising the integrity of the communication [2]. Furthermore, this approach necessitates the establishment of prolonged direct communication between the involved parties and is significantly impacted by fluctuations in network latency, rendering it inherently unreliable.
Traditional network-based covert channels often necessitate the establishment of direct communication between communicating parties, where their IP addresses are embedded within network data packets. Consequently, this direct association compromises the stealthiness of the communication, and the susceptibility of the communication carrier to interception and tampering further diminishes the reliability of traditional covert communication methods.

3.2. Blockchain-Based Covert Communication

Blockchain-based covert communication utilizes blockchain transactions as carriers of concealed information, achieving information dissemination through the propagation of transactions within the blockchain network. Blockchain transactions employ a flooding broadcast mechanism for network transmission, which is characterized by non-directional dissemination. Transactions embedded with covert information undergo forwarding by multiple nodes, eventually broadcasting across the entire network, making it challenging to ascertain the originating IP address of the transaction. Consequently, direct communication between the sender and receiver is not established. The immutability of blockchain transactions is ensured through the application of hash algorithms and consensus mechanisms. Furthermore, the blockchain addresses possess anonymity. In comparison to traditional covert channels, blockchain-based covert channels inherently exhibit concealment and reliability.
Zombiecoin [10] is an architecture for botnets implemented in the Bitcoin main network. The sender employs a fixed address to send covert transactions and embeds covert messages in the custom field OP_RETURN. With the advancement of abnormal transaction detection techniques in the blockchain, the intended padding of OP_RETURN fields reduces the concealment [11], and the reuse of addresses becomes detectable through address clustering methods [12]. Chainchannel [13] is a covert channel based on secret sharing and private key leakage. In each communication, the sender needs to send several transactions with the same address to completely leak covert messages. After each communication, additional transactions must be sent from the fixed address to update the necessary parameters for the next communication, leading to address reuse and a strong correlativity between covert transactions. Fionov [14] encoded the message as a random number used for signing and embedded it into the digital signature generated by the ECDSA algorithm. The sender needs to inform the receiver in advance of the private key corresponding to the input address of the covert transaction. This method has poor robustness. Once exposed, the covert channel can not be replaced in time. Tian et al. [15] proposed a covert communication scheme called DLchain based on a dynamic label algorithm. In this scheme, the sender and receiver dynamically generate synchronized OP_RETURN field content based on the statistical distribution of current blockchain transactions in OP_RETURN fields. However, the sender uses the same random number to sign two covert transactions, resulting in a partially identical signature, making them distinguishable from regular transactions. Cao et al. [16] proposed a covert message-embedding scheme based on a chained relationship between input addresses and output addresses. The output address of a covert transaction serves as the input address for the next covert transaction. The sender is able to embed 1 bit of data in each transaction. However, this method lacks scalability, as increasing the embedding rate comes at a computational cost that the sender cannot afford. In covert communication based on the Whisper protocol [17], the topic field is used as the unique identifier for the receiver to filter transactions. However, if the receiver fails to filter the transaction before it expires, the covert message may be lost.
From the above analysis, while blockchain-based covert channels can prevent the tampering of concealed information, they still face challenges such as address reuse, explicit embedding, and low channel capacity.

3.3. Blockchain-Based Group Covert Communication

Blockchain-based covert communication involves two critical steps: the embedding of covert messages and the filtration of covert transactions. Since transactions are publicly accessible, the filtration process of covert transactions is executed off-chain. Consequently, covert transactions can be filtered by any number of receivers. Thus, in scenarios involving multiple receivers or receiver groups, blockchain-based group covert communication can be realized. Typically, the sender employs distinct keys to identify group identities and communicates with all members within the group [18].
Generally, owing to different group keys, receivers can only filter transactions intended for their respective groups. Nonetheless, malicious receivers, as internal adversaries, attempt to steal the sender’s identity, forge transactions purportedly sent to their own group, or identify transactions sent to other groups. Gao et al. [6] combined kleptography techniques with ECDSA signatures in Bitcoin to implement a mechanism that can filter indistinguishable transactions in polynomial time. However, the sender generates all covert transactions from a fixed address. Furthermore, all the parameters required for creating a covert transaction can be inferred by the receiver from known parameters. For example, while filtering transactions, the recipient can calculate the private key corresponding to the fixed address. A malicious receiver is fully capable of controlling the funds in that address and sending out their own constructed transactions, thereby forging the identity of the sender and engaging in covert communication with other receivers. Zhang et al. [4] proposed a group covert communication scheme based on the index matrix of address interaction. However, to ensure concealment, this scheme imposes limitations on the number of transactions sent within a single block.
The majority of existing blockchain-based covert communication schemes can be extended to group scenarios. However, in addition to the inherent challenges related to concealment, correlativity and channel capacity, these schemes lack effective measures to resist threats from internal adversaries. Therefore, this paper proposes a scheme that can withstand internal adversary threats while ensuring high concealment and channel capacity. This scheme proves to be effective in the context of covert communication within group scenarios.

4. Preliminaries

In this section, we introduce the relevant background knowledge of our scheme.

4.1. Transaction Correlation

In this subsection, we discuss the transaction correlation and describe its impact on concealment.

4.1.1. Overview

In Bitcoin, the transfer of funds follows the Unspent Transaction Output (UTXO) model. The input UTXO typically includes an input address, the sender’s signature, and the transferred amount, while the output UTXO commonly includes an output address or public key and the transferred amount. Notably, UTXOs containing the OP_RETURN field can be classified as null-data type and exhibit prominent features.
Bitcoin recommends the use of disposable addresses, which contributes to a significant portion of transactions with one input UTXO and two output UTXO [19]. Consequently, this model inherently provides concealment when constructing covert transactions. However, all funding sources must be transferred from one or multiple previous transactions’ UTXOs. As a result, transaction traceability can be established by examining the addresses and corresponding amounts spent in the UTXOs, ultimately forming a transaction chain.
Transactions carrying covert messages exhibit a notable characteristic: the output addresses often include at least one controlled by the sender, serving as the change address. In this way, the sender can accomplish covert communication by solely expending the transaction fee. The UTXO transferred to controllable output addresses will subsequently serve as input UTXO for future covert communication. Therefore, if an adversary identifies any of these transactions, they can easily discover additional covert transactions by examining the associated addresses and the chain relationship of the transactions. This facilitates further verification and analysis toward covert channels.
Assuming that the sender and receiver establish the essential parameters through a single negotiation prior to conducting on-chain communication, all covert communication is solely based on this initial agreement. Additionally, the sender possesses an abundant number of Bitcoin addresses with ample funds, disregarding any financial links unrelated to covert communication. The interrelation between covert transactions can be categorized into static-address correlation and chain-address correlation.

4.1.2. Static-Address Correlation

If an address a d d r i is involved in multiple covert transactions, these covert transactions exhibit static-address correlation. As shown in Figure 2, assuming an adversary discovers a specific covert transaction T X i , the adversary can easily retrieve related transactions ( T X 1 , T X 2 , T X 3 ) by filtering a d d r i . In this way, the adversary can obtain all covert transaction samples. Since the reuse of addresses violates the disposable address rule in Bitcoin, this characteristic significantly reduces the concealment of the covert channel. Static-address correlation is mainly caused by the vulnerable system design. For instance, a receiver may use a fixed address as a label to filter covert transactions [10,14]. The sender may also need to use the same address to send transactions in a single communication process, thereby exposing the private key [6,15] or improving insufficient channel capacity [13].

4.1.3. Chain-Address Correlation

Sending transactions from dynamic addresses can avoid static-address correlation, but it also sacrifices efficient filtering ability. In order to ensure that the receiver can still recognize covert transactions, existing schemes utilize key or address derivation relationships to generate covert transactions [16]. As shown in Figure 3, T X j is one of the transactions in the set of covert transactions T X . Due to the derived relationship between the keys used to construct the covert channel, the addresses in covert transactions automatically form an indexing sequence. The output address of the current covert transaction will be used as the input address for the next covert transaction; otherwise, the receiver will not be able to recognize the covert transaction or correctly extract the covert messages. In this case, all covert transactions can be connected as a chain of transactions based on the sequential relationship between the addresses. An adversary can start from T X j , find the previous covert transaction T X j 1 based on the input address a d d r j and then trace all historical transactions. Alternatively, the adversary can start from the output address a d d r j + 1 , monitor and then find transactions like T X j + 1 , T X j + 2 that are sent after T X j . Therefore, the adversary will find it easier to monitor the channel. In general, chain-address correlation is more likely to exist between the transactions sent in successive communication.

4.1.4. Unlinkability of Transactions

To achieve the unlinkability of transactions, two objectives need to be met: the absence of static-address correlation within a single or successive communication and the absence of chain-address correlation across historical communications. As shown in Figure 4, N T X represents a set of normal transactions, while C T X represents a set of covert transactions. They are distributed along four transaction chains depicted by the relationships between addresses and UTXO inputs and outputs. In general, to achieve one covert communication, it may be necessary to send more than two transactions. In the context of a single communication, the covert transactions involved should not exhibit static-address correlation. For example, C T X p 1 and C T X p 2 represent two transactions sent during the p-th communication, and the adversary should not be able to link them based on input addresses. Additionally, for each group of covert transactions involved across different communications, such as the p-th group ( C T X p 1 , C T X p 2 ) and the q-th group ( C T X q 1 , C T X q 2 ) , they should not exhibit chain-address correlation. In other words, the adversary should not be able to find any history or traces of the covert channel based on the covert transactions sent during each communication. To satisfy these requirements, it can be concluded that each covert transaction should be distributed on an independent transaction chain. Furthermore, within each covert transaction and its corresponding transaction chain, duplicate addresses should not be used in the inputs and outputs. This way, the adversary will not be able to find any other covert transactions based on a single covert transaction through the transaction chain.

4.2. ECDSA

The proposed blockchain group covert communication scheme utilizes the ECDSA (Elliptic Curve Digital Signature Algorithm) signature in Bitcoin for implementation. In this section, we provide an explanation of the algorithm’s process. Subsequently, in the specific description of the scheme, we only discuss the operations involved with the algorithm’s parameters and the direct acquisition of its input and output. It should be noted that this scheme can be implemented not only in Bitcoin but also in any blockchain that utilizes the ECDSA algorithm for digital signatures, such as Ethereum. Bitcoin uses the secp256k1 elliptic curve to implement the ECDSA signature algorithm. The globally shared domain parameters include the generator point G and the order of the curve N. The elliptic curve multiplication is represented as ( · ) and the transaction hash value to be signed is described as h.
We compute the ECDSA signature ( r , s ) = s i g n E C D S A ( d , k 1 , h ) by the following steps:
(1) Choose a random integer d [ 1 , N ] to calculate the point Q on the elliptic curve; d is the private key and Q is the public key.
Q = d · G
(2) Choose a random integer k [ 1 , N ] to calculate the point P on the elliptic curve.
P = ( r , y ) = k · G
(3) Compute
s = k 1 ( h + d r ) mod N
In Equation (3), only d and k cannot be directly obtained or computed from transaction data. In other words, if one of them is known, any one can deduce the other parameter. Therefore, if embedding covert messages in d or k, the key lies in ensuring that only the receiver can access them.

4.3. Kleptography on ECDSA

Kleptography is a technique that embeds messages and modifies the original cryptographic system algorithm with the attacker’s key to produce output that is indistinguishable from the original output, thus enabling the secure and subliminal stealing of information [20]. Existing schemes have implemented covert channels in Bitcoin using kleptography [6]. In these schemes, the sender generates a private key and calculates p k s = s k s · G on the elliptic curve, which are then sent to the receiver through a one-time secure out-of-chain channel. Subsequently, the sender modifies the ECDSA algorithm in Bitcoin to generate a special signature that is indistinguishable from the normal one while ensuring the validity. The modified signature algorithm s i g n E C D S A K L E ( d , h 1 , h 2 , p k k l e ) and verification algorithm e x t r a c t E C D S A K L E ( σ 1 , σ 2 , h 2 , s k k l e ) are shown below.
As shown in Algorithm 1, the sender chooses a private key d to create two unsigned transactions t x 1 and t x 2 ; then, it calculates their corresponding unsigned transaction hash value h 1 and h 2 . A random binary string k 1 with length λ is chosen as a random factor, which is 256 bits in Bitcoin. The first transaction t x 1 is signed by using normal ECDSA. Next, a deterministic function m a p is used with inputs k 1 and h 2 to obtain the random factor k 2 , which is required for signing the second transaction t x 2 . This algorithm generates two signatures at one time.
Algorithm 1  s i g n E C D S A K L E ( d , h 1 , h 2 , p k k l e )
 Require:  d , h 1 , h 2 , p k k l e
 Ensure:  ( σ 1 , σ 2 )
1:
Randomly choose k 1 { 0 , 1 } λ
2:
Set σ 1 = ( r 1 , s 1 ) = s i g n E C D S A ( d , k 1 , h 1 )
3:
Set k 2 = m a p ( k 1 , p k k l e , h 2 )
4:
Set σ 2 = ( r 2 , s 2 ) = s i g n E C D S A ( d , k 2 , h 2 )
5:
return  ( σ 1 , σ 2 )
The receiver identifies covert transactions by executing Algorithm 2. Firstly, the receiver checks the value r 1 from the signature of the first transaction t x 1 as the x-coordinate to find the point X on the elliptic curve. This point can also be obtained during the process of verifying the validity of the ECDSA signature [21]. Secondly, the receiver uses the deterministic function m a p with inputs X and h 2 to derive the random number k 2 chose by the sender to sign the second transaction t x 2 . Finally, the receiver can compute the private key d used to send these two transactions by Equation (3). In practical scenarios, the receiver can select any two transactions from the blockchain, assuming that they are the two covert transactions generated by the sender and apply the extraction algorithm to attempt to obtain private key d. The receiver uses d to generate a Bitcoin address, and if that address matches the one exactly used to send the transactions, it confirms that these two transactions carry covert messages. Otherwise, they need to continue searching for a pair of transactions that meet the criteria.
Algorithm 2  e x t r a c t E C D S A K L E ( σ 1 , σ 2 , h 2 , s k k l e )
 Require:  σ 1 , σ 2 , h 2 , s k k l e
 Ensure: d
1:
draw X = ( r 1 , y 1 ) from σ 1
2:
Set k 2 = m a p ( X , s k k l e , h 2 )
3:
Set d = r 1 ( s 2 k 2 h 2 ) mod N
4:
return d
Assuming there are n transactions in a block, the receiver can use the aforementioned method to filter the covert transactions ( t x 1 , t x 2 ) with a time complexity of O ( n 2 ) . To reduce computation and improve the filtering efficiency, the receiver can first collect a set of transactions T X = { T x 1 , T x 2 , } related to the negotiated fixed address from the blockchain and perform the filtering operation by iterating through the set. However, using a fixed address significantly decreases the concealment of the covert transactions [12]. Furthermore, utilizing a fixed address implies that no information can be embedded within the private keys of the two transactions, requiring extra alternative user-controlled fields, such as OP_RETURN and other custom fields, to achieve information embedding, which further reduces concealment [11].
Constructing covert channels within the blockchain poses compatibility challenges in terms of concealment, channel capacity, and filtering efficiency. We draw upon kleptography techniques and introduce enhancements to implement a covert communication scheme with variable sender addresses. The scheme supports implicit embedding and ensures that covert transactions cannot be differentiated from regular transactions. We also reduce the filtering efficiency to O ( n ) .

4.4. Ecdh in Covert Communication

In the ECDHC-CDE scheme [16], the Elliptic Curve Diffie–Hellman (ECDH) algorithm is utilized to establish the derivation relationship between private keys and public keys. Specifically, the new derived private key has to be used for generating output addresses in the same transaction. In fact, this concept can effectively establish secret connections between any two transactions by employing a pre-shared key ( P S K ) denoted as k s . In blockchain-based group covert communication, k s refers to the key and label that the sender distributes to the receiver group. Different receiver groups correspond to different k s values. The sender builds transactions using different k s values to communicate with the respective groups. Only the groups chosen by the sender can link two covert transactions, allowing for the filtration of covert transactions.
s k 2 = s k 1 k s mod N
p k 1 = s k 1 · G
p k 2 = s k 2 · G
p k 2 = p k 1 · k s = ( s k 1 · G ) · k s = ( s k 1 k s ) · G = s k 2 · G = p k 2
As shown in Figure 5, the sender randomly generates private key s k 1 for transaction T X 1 . Subsequently, the private key s k 2 for transaction T X 2 is computed as Equation (4). The corresponding p k 1 and p k 2 can be derived from Equations (5) and (6). Equation (7) derives the correctness of obtaining p k 2 using p k 1 and k s . Since p k 1 is public on the blockchain, once retrieving the first transaction T X 1 from the blockchain, the receiver can calculate p k 2 by Equation (7), thereby filtering out T X 2 .
Since the output addresses can be arbitrarily specified, there is no chain correlation between the input and unspent transaction outputs (UTXOs). Therefore, if a covert message is embedded in a set of transactions ( T X 1 , T X 2 ) generated according to Equations (4)–(7), these two transactions do not exhibit any explicit association. Except for the receiver who holds k s , no one else can link these two transactions together, and thus, the complete nature of the covert transactions remains unknown.

5. The Proposed Scheme

In our proposed blockchain-based group covert communication scheme, a complete covert communication process consists of five steps, as shown in Figure 1. The sender needs to initialize and build covert transactions. The created covert transactions are propagated to the entire blockchain network through the flooding broadcast mechanism and recorded on the blockchain ledger. On the other hand, the receiver needs to filter covert transactions among all of the blockchain transactions and finally extract messages and verify them. The sequence of implementation and the algorithms are described in Figure 6.

5.1. Initialize

The sender generates pre-shared key k s , message sequence number s e q n , a series of public–private key pairs including authentication key pairs ( s k m , p k m ) and signature embedding key pairs ( s k s , p k s ) . These parameters are then transmitted to each receiver through the out-of-chain communication channel. Additionally, to facilitate the efficient filtering of covert transactions, the sender should inform receivers of the suitable starting block for the first covert transaction when establishing the covert channel. This step is only executed once during the initialization of communication and is not required afterwards.

5.2. Build Covert Transaction

The sender creates covert transactions that carry covert messages by executing the E m b e d M s g algorithm (Algorithm 3) and the B u i l d C o v T x algorithm (Algorithm 4). In this scheme, the sender needs to send a set of two covert transactions, denoted as C T X = ( t x 1 , t x 2 ) , in each time of covert communication. To simplify the notation, the parameters related to the transactions are represented with corresponding subscripts 1 or 2. The notations used in this section are illustrated in Table 1.
The sender splits the original covert message into two parts as m e s s a g e = ( m e s s a g e 1 , m e s s a g e 2 ) . Then, two random strings r a n d o m 1 and r a n d o m 2 are generated. They are concatenated with the current sequence number s e q n to form the message to be signed, which is denoted as m e s s a g e T o s i g n . The identity authentication signature σ m is calculated by H a s h ( m e s s a g e T o s i g n ) and the identity authentication private key. In the proposed scheme, the identity authentication signature, as part of the embedded data, shares the embedding capacity with the actual message to be transmitted. RSA signatures are too long to be fully embedded in two covert transactions and are not suitable for the scheme. On the other hand, ECDSA signatures would encroach on the embedding space, greatly reducing the covert information transmission rate. Therefore, to maintain the confidentiality of transactions and an effective information transmission rate, we use a BLS short signature [5] with a total length of 33 bytes as the identity authentication signature, which has been proven to be sufficiently secure and reliable. The sender splits the identity authentication signature into two parts. σ 1 is concatenated with r a n d o m 1 and m e s s a g e 1 to serve as random factor k 1 for signing the first transaction t x 1 . σ 2 is concatenated with m e s s a g e 2 , r a n d o m 2 , and s e q n to compose the sender’s private key s k 2 for sending the second covert transaction t x 2 . An example of the embedding format is shown in Figure 7. The lengths of each component can be adjusted according to the security and embedding rate requirements.
Algorithm 3 EmbedMsg
 Require: original text m e s s a g e , current sequence number s e q n , sender’s authentication private key s k m
 Ensure: sender’s private key s k 2 for sending t x 2 , random factor k 1 for sending t x 1
1:
Initialize P R F
2:
Generate two random strings r a n d o m 1 and r a n d o m 2 using P R F
3:
Set ( m e s s a g e 1 , m e s s a g e 2 ) = s p l i t ( m e s s a g e )
4:
Set σ m = s i g n m ( s k m , H a s h ( m e s s a g e T o s i g n ) )
5:
Set ( σ m 1 , σ m 2 ) = s p l i t ( σ m )
6:
Set k 1 = σ m 1 | | r a n d o m 1 | | m e s s a g e 1
7:
Set s k 2 = σ m 2 | | r a n d o m 2 | | s e q n
8:
return  s k 2 , k 1
After obtaining s k 2 , the sender calculates the private key s k 1 for the first covert transaction based on the pre-shared random factor k s . Next, the sender selects output addresses arbitrarily and constructs the unsigned transactions t x 1 t o s i g n and t x 2 t o s i g n . The sender utilizes k 1 and private key s k 1 to sign t x 1 t o s i g n for σ 1 by the ECDSA algorithm (refer to Section 4.2). Then, the signature σ 1 , the address a d d r 1 corresponding to s k 1 , and the unsigned transaction t x 1 t o s i g n are combined together to generate the complete covert transaction t x 1 .
When constructing the second covert transaction, the sender first initializes a pseudo-random function. As long as the same parameters are used for initialization, subsequent pseudo-random numbers generated in sequence will be identical. We use P R F to generate two pseudo-random numbers denoted as a and b in sequence. They are then involved in the calculation of the point ( z x , z y ) on the elliptic curve with k 1 and p k s . The hash function is used on the x-coordinates z x to obtain k 2 . Next, the sender follows the steps of the ECDSA algorithm to generate σ 2 and build covert transaction t x 2 . The sender can transmit either or both of the covert transactions to the blockchain at any time. The complete process of building covert transactions is illustrated in Figure 8.
Algorithm 4 BuildCovTx
 Require:  s k 2 , k 1 , pre-shared key k s , embed public key p k s , the generator point G
 Ensure: a set of covert transaction ( t x 1 , t x 2 )
1:
Compute s k 1 = s k 2 k s
2:
Generate t x 1 t o s i g n and t x 2 t o s i g n
3:
Set σ 1 = s i g n E C D S A ( s k 1 , k 1 , t x 1 t o s i g n )
4:
Generate a d d r 1 corresponding to s k 1
5:
Set t x 1 = ( a d d r 1 , σ 1 , t x 1 t o s i g n )
6:
Initialize P R F with t x 2 t o s i g n
7:
Generate two random factor a and b using P R F
8:
Compute ( Z x , Z y ) = G · k 1 · a + p k s · k 1 · b
9:
Set k 2 = H a s h ( z x )
10:
Set σ 2 = s i g n E C D S A ( s k 2 , k 2 , t x 2 t o s i g n )
11:
Generate a d d r 2 corresponding to s k 2
12:
Set t x 2 = ( a d d r 2 , σ 2 , t x 2 t o s i g n )
13:
return  t x 1 , t x 2

5.3. Flooding Broadcast

Covert transactions are propagated to all Bitcoin nodes through the flooding broadcast mechanism in the same manner as normal transactions and eventually recorded on the blockchain. They are permanent stored and can be accessed at any given time. If both t x 1 and t x 2 can be confirmed in the blockchain, covert messages have been successfully sent.

5.4. Filter Covert Transaction

Receiver can filter out a set of covert transactions in a block through F i l t e r C o v T x  algorithm (Algorithm 5).
The receiver needs to identify a set of covert transactions C T X = ( t x 1 , t x 2 ) sent by the sender from the blockchain. Initially, the receiver obtains a list of transactions T X l i s t 2 in a block. The sender can inform the receiver of a suitable block number, allowing the receiver to quickly locate the block containing the covert messages in the first time of communication. For each transaction T x i in the list, the receiver extracts the sender’s public key p k i and then attempts to compute a public key p k 1 and its corresponding address a d d r 1 with k s . The receiver then searches for all transactions associated with a d d r 1 . If such transactions exist, they are potential candidates for the covert transactions sent by the sender and serve as the first covert transaction t x 1 of the covert transaction set C T X , while T x i serves as the matching t x 2 . Generally, unless the sender deliberately sends other transactions from the address for the purpose of hiding, confusing or other reasons, there will usually be only one covert transaction that utilizes the address. If no transactions can be found, it indicates that the transaction is not a covert transaction, and the receiver continues to search for the next transaction in the list T X l i s t 2 until all transactions have been filtered, which means that there are no covert transactions in the current block.
Algorithm 5 FilterCovTx
 Require: a set T X l i s t 2 = ( T x 1 , T x 2 , ) that contains the receiver’s newly obtained transaction, k s
 Ensure: the second covert transaction t x 2 and a covert transaction list T x l i s t 1 matches with t x 2
1:
for  T x i in T x l i s t 2  do
2:
   Extract p k i from T x i
3:
   Compute p k 1 = p k i · k s
4:
   Generate a d d r 1 corresponding to p k 1
5:
   Get T x l i s t 1 according to a d d r 1
6:
   if  T x l i s t 1 is not empty then
7:
     Set t x 2 = T x i
8:
       return  T x l i s t 1 , t x 2
9:
     end if
10:
end for
11:
return null

5.5. Extract and Verify

After the transactions are preliminary selected, the receiver extracts the covert messages among them using Algorithm 6 to verify the source and timeliness of the transactions.
Algorithm 6 Extract and verify
 Require:  T x l i s t 1 , t x 2 , authentication public key p k m , the latest sequence number s e q s
 Ensure: covert message m, updated sequence number t x n
1:
Parse t x 2 as ( r 2 , s 2 , p k 2 , t x 2 t o s i g n )
2:
for  T x j in T x l i s t 2  do
3:
   Parse T x j as ( r j , s j , p k j , t x j t o s i g n )
4:
   Set X = v e r i f y E C D S A ( r j , s j , p k j , t x j t o s i g n )
5:
   Initialize P R F with t x 2 t o s i g n
6:
   Generate two random factor a and b using P R F
7:
   Compute ( Z x , Z y = X · a + X · s k s · b )
8:
   Set k 2 = H a s h ( Z x )
9:
   Compute d = r 2 1 ( k 2 s 2 H a s h ( t x 2 t o s i g n ) )
10:
  if  d · G = = p k 2  then
11:
     Compute s k 1 = d k s
12:
     Compute k 1 = s j 1 ( H a s h ( t x j t o s i g n ) + s k 1 ) r j
13:
     Parse ( d , s k 1 ) as ( σ m , m e s s a g e T o s i g n , s e q n )
14:
     if  s e q n > s e q s and v e r i f y m ( m e s s a g e T o s i g n , p k m , σ m ) = =  True then 
15:
        Set m = s p l i t ( m e s s a g e T o s i g n )  
16:
        return  m , s e q n
17:
     end if
18:
   end if
19:
end for
20:
return null
First, the receiver extracts relevant transaction parameters, including the sender’s signature, the sender’s public key, and the unsigned transaction. Subsequently, for each transaction T x j in the list T x l i s t 1 , the receiver performs the ECDSA signature verification algorithm to obtain the point X. Next, the receiver initializes P R F with t x 2 t o s i g n and generates two pseudo-random numbers denoted as a and b in sequence. The point ( Z x , Z y ) can be calculated by embedding private key s k s . Then, the receiver performs a hash operation on the x-coordinate Z x to obtain the random factor k 2 used for the second covert transaction’s signature. With this, the private key d can also be derived. The receiver computes the corresponding public key, and if the result matches the actual public key p k 2 , it further proves the successful pairing of a set of transactions C T X = ( t x 1 , t x 2 ) .
To mitigate the possibility of transaction forgery and replay by internal adversary, the receiver needs to additionally verify the identity authentication signatures embedded in the transactions. The receiver first uses the recovered private key of the second covert transaction d and k s to calculate the private key of the first covert transaction. Then, it recovers the random factor k 1 used during the transaction signing. The receiver can separate the identity authentication signature σ m , m e s s a g e T o s i g n , and current sequence number s e q n according to the embedding rules. The transaction can be considered valid only if σ m passes verification and satisfying s e q n > s e q s , which means the transaction is not being replayed. Finally, the receiver extracts the original covert message m embedded in the transaction, updates s e q s with s e q n and records the number of blocks containing t x 2 . The next filtering process will begin from that block number.

6. Performance Analysis

In this section, we present the experiment conducted on the prototype system and conduct an analysis of its performance toward various adversaries. The experimental results demonstrate that our scheme is more secure and undetectable compared to existing schemes with acceptable efficiency.

6.1. Concealment

Since the blockchain data analyst tends to discover covert channels by statistical distribution, we employ the Kolmogorov–Smirnov (KS) test and the Kullback–Leibler divergence (KLD) test [22], which are two types of detection metrics to demonstrate the resilience of the proposed scheme against statistical analysis. The KS test utilizes the p-value to determine the difference between two sample distributions. When p > 0.05 , it can be considered that the two samples follow the same distribution and there is no significant difference between them. KLD, also known as relative entropy, quantifies the difference between two sample distributions. When the two distributions are totally identical, the KLD result is 0. Otherwise, a larger KLD value indicates a greater difference. Therefore, if the difference between hidden transactions and normal transactions is smaller than or approximately equal to the difference threshold of normal transactions, it indicates that covert transactions cannot be distinguished from normal transactions.
We download 10,000 normal transactions from the Bitcoin main network. These transactions were then randomly divided into 10 groups, each containing 1000 transactions, to form a normal transaction dataset denoted as N G = ( n 1 , n 2 , , n 9 , n 10 ) . We also download an additional 1000 normal transactions to build a baseline group, which represents the character distribution features of normal transactions. Furthermore, using the proposed approach, we generated 10,000 special transactions. Similar to the normal transaction dataset, these special transactions were randomly divided into 10 groups, each containing 1000 transactions to build a covert transaction dataset denoted as C G = ( c 1 , c 2 , , c 9 , c 10 ) . Since the differences are reflected only in the sender’s address and script fields, we collect transaction data in these two fields for the KS test and KLD test. In conclusion, we have obtained the test results for each group compared to the baseline group.
As shown in Figure 9a,b, in the KS test for the sender’s address and script of normal transactions, all the KS p-values are greater than 0.05. This suggests that the address and script fields of normal transactions conform to a specific distribution, meeting the conditions for using the KS test. Meanwhile, the KS p-values for the covert transactions are also found to be greater than 0.05, implying that they follow the same distribution as the corresponding fields in normal transactions and are indistinguishable.
Figure 9c displays the results of the KLD test for the address field. It can be observed that all of the values in the normal transaction groups are below 2.4 × 10 3 . As long as all KLD values of covert transactions are below this threshold, the statistical distributions of covert transactions and normal transactions can be ignored. Hence, we set the KLD threshold for the address field as θ a d d r = 2.4 × 10 3 . All of the KLD test values for the covert transaction group are below θ a d d r . This signifies that the differences between all special transaction samples and normal transaction samples cannot be distinguished from the differences among normal transaction samples alone. Thus, the address field of covert transaction can pass KLD tests and possesses significant concealment capabilities.
Similarly, in Figure 9d, the KLD threshold for the script field is set to θ s c r i p t = 1.1 × 10 4 for normal transactions. All of the KLD values of covert transactions are less than θ s c r i p t , which proves that the script field of covert transaction is able to resist the KLD test and is indistinguishable from other transactions.
In addition to statistical analysis, we refer to Wang’s Covert Transaction Recognition model [23], which is proposed by the Text Convolutional Neural Networks and Back Propagation Neural Networks, to identify the proposed covert transactions. The proximity of precision, recall and F_SCORE to 0.5 suggests the challenge of differentiating regular transactions from covert ones using machine learning detection methods. This trend underscores the enhanced concealment of covert transactions. In scenarios employing the OP_RETURN field [6,24], these schemes exhibit precision, recall and F_SCORE values all exceeding 0.99, signifying their high non-covert nature. Alternatively, schemes that directly encode information into other adjustable fields, such as amount [4] and output address [25,26], maintain precision, recall and F_SCORE levels above 0.7. Comparatively, the DSA [14] scheme registers precision, recall and F_SCORE at 0.54, 0.53, and 0.54, respectively, making it the most covert among these schemes due to its values closely approximating 0.5. The result of our scheme is shown in Table 2. The identified precision and recall of input addresses is 0.57, while the input script is 0.59. When considering both factors simultaneously, the result is 0.62. This indicates that increasing the embedding locations results in a slight decline in concealment. However, overall, our proposed scheme exhibits performance that is closest to the DSA scheme, outperforming all other schemes. In other words, our scheme demonstrates a distinct advantage in terms of concealment.
Referring to Section 5, correlations between transactions can compromise concealment. In our proposed scheme, all addresses that have been used are utilized only once, thus eliminating static-address correlation. There is no sequential linkage in historical transactions, thus preventing a chain-address correlation between covert transactions. The temporal occurrence of all covert transactions remains unpredictable, even for internal adversaries, who are unable to anticipate the addresses employed in transactions. The difference between the covert transactions created by the proposed scheme and regular transactions lies solely in the parameters used during transaction generation. These parameters are not influenced by time or space. Therefore, adversaries cannot distinguish between them based on factors such as time intervals, frequencies, or other patterns. Our proposed scheme exhibits sufficient concealment to withstand detection by various adversaries.
Even if an adversary understands the algorithm, they can only attempt to find covert transactions by exhaustively trying different k s values. Specifically, the adversary exhaustively searches through k s values, starting from any address, and calculates the addresses that are linked to that address. If such addresses exist, they could potentially be used for covert transactions. The range of k s values is 256 bits, and the sender randomly selects k s i values to represent group i from this range. As the number of groups increases, the effective range of k s values gradually expands. Now, consider an adversary randomly generating their own k c , with the current number of groups being g s . The collision probability of k c being an effective k s value is g s 2 256 . For example, when the number of groups is 1000, the collision probability is approximately 8.6 × 10 75 .

6.2. Practicability

We implement our scheme on an Alibaba cloud server running a Ubuntu 20.04 x64 operating system with Intel (R) Xeon (R) CPU E5-2682 v4 @ 2.50GHz and 8 GB RAM. The average time consumption of each process is shown in Table 3.
In contrast to normal transactions, embedding messages in covert transaction takes more time consumption because k and s k are customized rather than random. The identity authentication signature also needs time to be generated. When building transactions, since the rules of arithmetic have not changed, there is little difference in time cost. Combining these two steps, sending a covert transaction takes about 0.04752 s, while sending a normal transaction takes about 0.03141 s with an instance of only 0.01611 s, which is not significantly different.
We download 5000 transactions from the Bitcoin main network to test the time required to filter transactions. The ratio of normal transactions to covert transactions is 5000:1. As shown in Table 3, on average, the time consumption of the filtering transaction is around 0.00212 s per transaction. Since transactions are sequentially scanned, the time cost is linearly related to the size of the transactions set n. The time complexity is O ( n ) . When n is 5000, the total time taken is 10.5947 s. Bitcoin typically generates a new block in approximately 10 min, and the number of transactions in a block is usually less than 5000. Therefore, in around 10 s, the receiver can complete the traversal of a block. The filtering speed is 60 times faster than the speed of new block generation. This means that the receiver does not need to synchronize and maintain block numbers incessantly. Filtering can be started from any block at any moment and is able to identify transactions in the latest blocks.

6.3. Unforgeability

The transactions embed identity authentication signatures, and only the genuine sender possesses the corresponding private key, rendering internal adversaries incapable of generating valid signatures. Therefore, even with knowledge of the covert transaction generation algorithm, the forging of entirely new transactions is unattainable. The signature encompasses the message and sequence number. Any modification to either element results in the failure of the original signature verification. Consequently, the receivers can discern that a forged transaction originates from an internal adversary rather than the authentic sender. Thus, adversaries are precluded from fabricating transactions by replaying past transactions or duplicating previous signatures. In summary, the transactions generated by our group covert communication scheme exhibit unforgeability.

6.4. Capability Comparison

To facilitate the comparison of concealment, channel capacity, transmission efficiency, and transaction fees among different schemes, we adopted a single-input and two-output mode for each transaction. Firstly, as of April 2023, this transaction mode accounted for almost 50% [19], making it more universally applicable and providing inherent concealment for covert transactions. Secondly, a single transaction can have multiple inputs and outputs, which means that multiple transaction fields, such as output addresses and signatures, can be constructed to embed covert information. Theoretically, the amount of information embedded in a single transaction can be limitless. Therefore, it is necessary to specify the number of inputs and outputs to compare the embedding rate while ensuring the same level of concealment.
The characteristics of the P2PKH-type transactions generated by each covert communication scheme are presented in Table 4 and Table 5. The static-address correlation and chain-address correlation have been discussed in Section 4.1.2, which make the channel susceptible to address clustering analysis attacks [27]. We set the transaction fee as 0.0000747 BTC/KB acccording to block 801,087 [28], and the exchange rate between Bitcoin and the US Dollar is set as 1:29,325.
Compared to other schemes, our scheme exhibits the highest level of concealment as it possesses neither reuse addresses nor any address correlation. Additionally, it does not utilize the OP_RETURN field for explicit embedding. Consequently, it ensures maximum concealment. Moreover, it maintains an embedding rate of 10 bytes per transaction with a cost of 0.122 USD/bit while countering internal adversaries with acceptable filtering efficiency of O ( n ) .

6.5. Prevention of Malicious Adversary

  • Prevention of Network Eavesdropper: Network eavesdroppers attempt to capture and analyze the traffic generated during the data transmission process. The off-chain channel is only used once during the initial establishment of communication, significantly reducing the possibility of data leakage. On the other hand, data transmission within the blockchain utilizes a flooding broadcast mechanism, where the packets exchanged between nodes only contain transaction data itself. The source and destination addresses within these packets represent node addresses rather than the addresses of the sender and receiver in covert communication. Furthermore, the data format of covert transactions is identical to that of normal transactions. As a result, network eavesdroppers are unable to identify the identities of the communicating parties through the analysis of network traffic data.
  • Prevention of blockchain data analyst: The fields influenced by covert messages can resist statistical analysis methods like the KS test and KLD test. The character distribution of these fields cannot be distinguished from normal transactions. The generation method of the other fields is exactly the same as that of normal transactions. Therefore, a blockchain data analyst cannot differentiate between covert transactions and normal transactions. On the other hand, covert transactions are independent from each other, making their construction patterns identical to normal transactions. As a result, adversaries are unable to confirm the existence of covert channels based on the correlation between covert transactions.
  • Prevention of internal adversary: In our scheme, the private key to create covert transactions is exposed on the receiver’s side. Therefore, the members of the receiver group also have the capability to construct covert transactions. However, due to the identity authentication signatures embedded in the transactions, as long as the corresponding private keys for the signatures are kept absolutely confidential, malicious receivers are unable to generate correct identity authentication signatures for covert transactions they forge. As a result, their attempt to exploit this channel and steal the sender’s identity for communication with other receivers cannot be achieved.
    On the other hand, the identity authentication signature includes a sequence number of the message which strictly increases, implying a unique correspondence between each sequence number and the historical messages. An internal adversary is unable to pass the sequence number authentication by completely replaying the covert transactions previously constructed by the sender. Consequently, the forged transactions will not be accepted by other receivers. Moreover, this abnormal behavior would expose the presence of an internal adversary within the receiver group. Based on these premises, we can conclude that rational malicious receivers would refrain from forgery and replay attacks. The internal adversary is well acquainted with the characteristics and patterns of covert transactions, which may increase their accuracy in identifying covert transactions transforming to other groups. Machine learning detection, based on known features of covert transactions, can be used to search for other covert transactions and simulate the behavior of internal adversary. The experimental results demonstrate that even with the adversary’s familiarity with the scheme and covert transaction features, our proposed scheme still maintains concealment.

7. Conclusions and Future Work

The decentralized and flood broadcasting nature of a blockchain enables communication parties to achieve group covert communication without the usage or association of real identity information. However, existing schemes based on blockchain transactions exhibit significant transaction correlations, posing the risk of being traced. Additionally, these schemes lack countermeasures against malicious receivers while ensuring both covert operation and sufficient transmission efficiency, resulting in the reduced reliability of the channel.
This paper presents a blockchain-based group covert communication scheme. We improve ECDH and the concept of kleptography to achieve a higher concealment of covert transactions. The covert transactions generated by this scheme exhibit no correlations and thus offer untraceability and unlinkability. We also attempt to embed a short identical authentication signature to prevent attacks from internal adversaries. Consequently, our scheme can resist statistical analysis attacks and machine learning analyses. The precision and recall of machine learning detection result can reach 0.57–0.62 (0.5 is the ideal value); thus, they are proved to be undetectable. In comparison to other group covert communication schemes, our scheme not only considers filtering efficiency and channel capacity but also resolves replay attacks and identity forgery attacks from internal adversaries. This further enhances the reliability of communication.
The objective of this paper is to prevent internal adversaries from successfully executing replay and forgery attacks while acknowledging the limitation of countering constant monitoring. To further mitigate the threats posed by internal adversaries, it is necessary to explore effective methods for dynamically updating group members and removing specified malicious receivers from the group.

Author Contributions

Conceptualization, T.S.; Methodology, T.S.; Software, L.Z. and F.G.; Validation, Z.C. and F.G.; Formal analysis, Z.Z. and M.L.; Investigation, F.G. and L.Z.; Writing—original draft, T.S., M.L. and Z.Z.; Writing—review and editing, T.S. and M.L. and Z.Z.; Visualization, L.Z.; Data curation, Z.C. and F.G.; Supervision, Z.Z. and M.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Defense Basic Scientific Research program of China under grant number JCKY2020602B008.

Data Availability Statement

The raw data supporting the conclusions of this article will be made available by the authors on request.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Zhang, T.; Li, B.; Zhu, Y.; Han, T.; Wu, Q. Covert channels in blockchain and blockchain based covert communication: Overview, state-of-the-art, and future directions. Comput. Commun. 2023, 205, 136–146. [Google Scholar] [CrossRef]
  2. Caviglione, L. Trends and challenges in network covert channels countermeasures. Appl. Sci. 2021, 11, 1641. [Google Scholar] [CrossRef]
  3. Giron, A.A.; Martina, J.E.; Custódio, R. Steganographic analysis of blockchains. Sensors 2021, 21, 4078. [Google Scholar] [CrossRef] [PubMed]
  4. Zhang, P.; Cheng, Q.; Zhang, M.; Luo, X. A group covert communication method of digital currency based on blockchain technology. IEEE Trans. Netw. Sci. Eng. 2022, 9, 4266–4276. [Google Scholar] [CrossRef]
  5. Boneh, D.; Lynn, B.; Shacham, H. Short signatures from the weil pairing. In Advances in Cryptology—ASIACRYPT 2001, Proceedings of the 7th International Conference on the Theory and Application of Cryptology and Information Security, Gold Coast, Australia, 9–13 December 2001; Proceedings 7; Springer: Berlin/Heidelberg, Germany, 2001; pp. 514–532. [Google Scholar]
  6. Gao, F.; Zhu, L.; Gai, K.; Zhang, C.; Liu, S. Achieving a covert channel over an open blockchain network. IEEE Netw. 2020, 34, 6–13. [Google Scholar] [CrossRef]
  7. Lampson, B.W. A note on the confinement problem. Commun. ACM 1973, 16, 613–615. [Google Scholar] [CrossRef]
  8. Trabelsi, Z.; El-Hajj, W.; Hamdy, S. Implementation of an icmp-based covert channel for file and message transfer. In Proceedings of the 2008 15th IEEE International Conference on Electronics, Circuits and Systems, Saint Julian’s, Malta, 31 August–September 2008; pp. 894–897. [Google Scholar]
  9. Gianvecchio, S.; Wang, H. An entropy-based approach to detecting covert timing channels. IEEE Trans. Dependable Secur. Comput. 2010, 8, 785–797. [Google Scholar] [CrossRef]
  10. Ali, S.T.; McCorry, P.; Lee, P.H.-J.; Hao, F. Zombiecoin: Powering next-generation botnets with bitcoin. In Financial Cryptography and Data Security: FC 2015, Proceedings of the International Workshops, BITCOIN, WAHC, and Wearable, San Juan, Puerto Rico, 26–30 January 2015; Springer: Berlin/Heidelberg, Germany, 2015; pp. 34–48. [Google Scholar]
  11. Bartoletti, M.; Pompianu, L. An analysis of bitcoin op_return metadata. In Financial Cryptography and Data Security: FC 2017, Proceedings of the International Workshops, WAHC, BITCOIN, VOTING, WTSC, and TA, Sliema, Malta, 3–7 April 2017; Springer: Berlin/Heidelberg, Germany, 2017; pp. 218–230. [Google Scholar]
  12. Liu, F.; Li, Z.; Jia, K.; Xiang, P.; Zhou, A.; Qi, J.; Li, Z. Bitcoin address clustering based on change address improvement. IEEE Trans. Comput. Soc. Syst. 2023, 1–12. [Google Scholar] [CrossRef]
  13. Frkat, D.; Annessi, R.; Zseby, T. Chainchannels: Private botnet communication over public blockchains. In Proceedings of the 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), Halifax, NS, Canada, 30 July–3 August 2018; pp. 1244–1252. [Google Scholar]
  14. Fionov, A. Exploring covert channels in bitcoin transactions. In Proceedings of the 2019 International Multi-Conference on Engineering, Computer and Information Sciences (SIBIRCON), Novosibirsk, Russia, 21–27 October 2019; pp. 59–64. [Google Scholar]
  15. Tian, J.; Gou, G.; Liu, C.; Chen, Y.; Xiong, G.; Li, Z. Dlchain: A covert channel over blockchain based on dynamic labels. In Proceedings of the Information and Communications Security: 21st International Conference, ICICS 2019, Beijing, China, 15–17 December 2019; Revised Selected Papers 21. Springer: Berlin/Heidelberg, Germany, 2020; pp. 814–830. [Google Scholar]
  16. Cao, H.; Yin, H.; Gao, F.; Zhang, Z.; Khoussainov, B.; Xu, S.; Zhu, L. Chain-based covert data embedding schemes in blockchain. IEEE Internet Things J. 2020, 9, 14699–14707. [Google Scholar] [CrossRef]
  17. Zhang, Z.; Zhang, L.; Rasheed, W.; Jin, Z.; Ma, T.; Chen, H.; Xu, G. The research on covert communication model based on blockchain: A case study of ethereum’s whisper protocol. In Frontiers in Cyber Security, Proceedings of the Third International Conference, FCS 2020, Tianjin, China, 15–17 November 2020; Springer: Berlin/Heidelberg, Germany, 2020; pp. 215–230. [Google Scholar]
  18. Baden, M.; Torres, C.F.; Pontiveros, B.B.F.; State, R. Whispering botnet command and control instructions. In Proceedings of the 2019 Crypto Valley Conference on Blockchain Technology (CVCBT), Rotkreuz, Switzerland, 24–26 June 2019; pp. 77–81. [Google Scholar]
  19. Transaction Fee Information. Available online: https://transactionfee.info/ (accessed on 5 December 2023).
  20. Young, A.; Yung, M. Kleptography: Using cryptography against cryptography. In Advances in Cryptology—EUROCRYPT’97, Proceedings of the International Conference on the Theory and Application of Cryptographic Techniques, Konstanz, Germany, 11–15 May 1997; Proceedings 16; Springer: Berlin/Heidelberg, Germany, 1997; pp. 62–74. [Google Scholar]
  21. Genç, Y.; Afacan, E. Design and implementation of an efficient elliptic curve digital signature algorithm (ecdsa). In Proceedings of the 2021 IEEE International IOT, Electronics and Mechatronics Conference (IEMTRONICS), Toronto, ON, Canada, 21–24 April 2021; pp. 1–6. [Google Scholar]
  22. Xiang, L.; Wang, R.; Yang, Z.; Liu, Y. Generative linguistic steganography: A comprehensive review. Ksii Trans. Internet Inf. Syst. 2022, 16, 986–1005. [Google Scholar]
  23. Wang, M.; Zhang, Z.; He, J.; Gao, F.; Li, M.; Xu, S.; Zhu, L. Practical blockchain-based steganographic communication via adversarial ai: A case study in bitcoin. Comput. J. 2022, 65, 2926–2938. [Google Scholar] [CrossRef]
  24. Matzutt, R.; Hiller, J.; Henze, M.; Ziegeldorf, J.H.; Müllmann, D.; Hohlfeld, O.; Wehrle, K. A quantitative analysis of the impact of arbitrary blockchain content on bitcoin. In Proceedings of the Financial Cryptography and Data Security: 22nd International Conference, FC 2018, Nieuwpoort, Curaçao, 26 February–2 March 2018; Revised Selected Papers 22. Springer: Berlin/Heidelberg, Germany, 2018; pp. 420–438. [Google Scholar]
  25. Partala, J. Provably secure covert communication on blockchain. Cryptography 2018, 2, 18. [Google Scholar] [CrossRef]
  26. Ali, S.T.; McCorry, P.; Lee, P.H.-J.; Hao, F. Zombiecoin 2.0: Managing next-generation botnets using bitcoin. Int. J. Inf. Secur. 2018, 17, 411–422. [Google Scholar] [CrossRef]
  27. Saxena, R.; Arora, D.; Nagar, V. Efficient blockchain addresses classification through cascading ensemble learning approach. Int. J. Electron. Secur. Digit. Forensics 2023, 15, 195–210. [Google Scholar] [CrossRef]
  28. Block Information. Available online: https://www.blockchain.com/explorer/blocks/btc/801087 (accessed on 5 December 2023).
Figure 1. System model.
Figure 1. System model.
Mathematics 12 00251 g001
Figure 2. Static-address correlation.
Figure 2. Static-address correlation.
Mathematics 12 00251 g002
Figure 3. Chain-address correlation.
Figure 3. Chain-address correlation.
Mathematics 12 00251 g003
Figure 4. Unlinkability of transactions.
Figure 4. Unlinkability of transactions.
Mathematics 12 00251 g004
Figure 5. ECDH derivation.
Figure 5. ECDH derivation.
Mathematics 12 00251 g005
Figure 6. The sequence of implementation.
Figure 6. The sequence of implementation.
Mathematics 12 00251 g006
Figure 7. An example of embedding format.
Figure 7. An example of embedding format.
Mathematics 12 00251 g007
Figure 8. Build covert transactions.
Figure 8. Build covert transactions.
Mathematics 12 00251 g008
Figure 9. KS and KLD tests. (a) KS test for address, (b) KS test for script, (c) KLD test for address, (d) KLD test for script.
Figure 9. KS and KLD tests. (a) KS test for address, (b) KS test for script, (c) KLD test for address, (d) KLD test for script.
Mathematics 12 00251 g009
Table 1. List of notations.
Table 1. List of notations.
ParametersDescription
s k private key
p k public key
krandom factor
| | concatenating two strings
s i g n m ( ) authentication signature algorithm
s i g n E C D S A ( ) ECDSA signature algorithm
H a s h ( ) hash function
s p l i t ( ) split a string
t x t o s i g n unsigned transaction
σ signature
a d d r address
P R F pseudo random function
( r , s ) signature value
v e r i f y E C D S A ECDSA signature verification algorithm
v e r i f y m authentication signature algorithm
Table 2. The result of covert transaction recognition (embedded field).
Table 2. The result of covert transaction recognition (embedded field).
PrecisionRecallF_Score
Our scheme’s input addresses0.570.570.57
Our scheme’s input script0.590.590.59
Our scheme’s input addresses and script0.620.620.61
Table 3. Average time consumption of each process.
Table 3. Average time consumption of each process.
ProcessNormal Transaction (s)Covert Transaction (s)
Embed messages3.2679 × 10 6 0.0133
Build transaction0.03140.0341
Filter transaction2.3409 × 10 5 0.0021
Extract and verifynull0.0251
Table 4. Comprehensive performance (concealment).
Table 4. Comprehensive performance (concealment).
SchemeMinimum TX for
Communication
Maximum Times
for Address Reuse
Static-Address
Correlation
Chain-Address
Correlation
Explicit
Embedding
Resist
Internal Adversary
BLOCCE [25]1always×
Zombiecoin [10]1always
Chainchannel [13]22××
DLchain [15]22××
ECDHC-CDE [16]11××
Kleptography [6]2always×
Digital Currency [4]11×××
Our scheme21×××
Table 5. Comprehensive performance (capacity and cost).
Table 5. Comprehensive performance (capacity and cost).
SchemeChannel Capacity
per TX
Channel Capacity
per Covert
Communication
TX Size
per Covert
Communication
Embedding
Rate
Cost/bit
(Satoshi)
Cost/Bit
(USD)
Filter Efficiency
BLOCCE [25]1 bit1 bit225 bytes0.056%16810.4929 O ( 1 )
Zombiecoin [10]80 bytes80 bytes315 bytes25.397%40.0011 O ( 1 )
Chainchannel [13]15 bytes30 bytes450 bytes6.667%140.0041 O ( 1 )
DLchain [15]16 bytes32 bytes630 bytes5.079%180.0054 O ( n 2 )
ECDHC-CDE [16]1 bit1 bit225 bytes0.056%16810.4929 O ( 1 )
Kleptography [6]80 bytes160 bytes630 bytes25.397%40.0011 O ( 1 )
Digital Currency [4]14 bits14 bits225 bytes6.222%1200.0352 O ( 1 )
Our scheme10 bytes20 bytes450 bytes4.444%210.0062 O ( n )
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

Shen, T.; Zhu, L.; Gao, F.; Chen, Z.; Zhang, Z.; Li, M. A Blockchain-Enabled Group Covert Channel against Transaction Forgery. Mathematics 2024, 12, 251. https://doi.org/10.3390/math12020251

AMA Style

Shen T, Zhu L, Gao F, Chen Z, Zhang Z, Li M. A Blockchain-Enabled Group Covert Channel against Transaction Forgery. Mathematics. 2024; 12(2):251. https://doi.org/10.3390/math12020251

Chicago/Turabian Style

Shen, Tongzhou, Liehuang Zhu, Feng Gao, Zhuo Chen, Zijian Zhang, and Meng Li. 2024. "A Blockchain-Enabled Group Covert Channel against Transaction Forgery" Mathematics 12, no. 2: 251. https://doi.org/10.3390/math12020251

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