# Empirical Evaluation of Privacy Efficiency in Blockchain Networks: Review and Open Challenges
## 3 Componential Classification of Blockchain Privacy Protecting Techniques  
In today's era, data is constantly being generated at a significant pace [31]. This significant generation of data from several sources demands secure and reliable storage and exchange systems. Usually, the data is stored on cloud servers, however, this brings new concerns regarding data privacy, duplication and fine-grained access control [32], to the forefront. Thus, the technology of blockchain is being explored and utilized in various applications to investigate its effect and impact on record storage management and communication systems. In its simplest terms, a blockchain can be referred to as database. This is because it is ledger that is responsible for storing data using data structure of a block [33]. The blockchain database exists on multiple computers at the same time to reduce the risk of data theft or loss [34]. These multiple computers or servers are called the participants, or \"nodes\" of the blockchain network. The data stored in blockchain database takes the form of a transaction. For example, if [PERSON] wants to send a simple text message of \"Hello\" to [PERSON], it will be communicated and stored as a transaction. This transaction will consist of sender's key, receiver's key, and time stamp (i.e., the time when the transaction took place). The authenticity of these transactions in a blockchain network is validated via cryptography, making it an important component of the blockchain design [35]. Blockchains use two kinds of cryptographic algorithms. The first ones lie in the category of primary cryptography and includes asymmetric cryptography and hashing [36], whereas the second category is secondary cryptography which deals with providing additional security and privacy to the systems [26]. We discuss both the categories in detail later in this section. When a transaction is initialized, it is propagated to all the participants in the network for verification [37]. The protocols and rules of this verification must be agreed upon by all the participants in the network. Hence, just like an ordinary agreement signed between trading parties, a digital agreement is enforced in the blockchain. Such digital agreements are called smart contracts [38]. Every node joining the chain, thus, provides its consent to abide by the rules of regulation, pre-coded into these contracts. Smart contracts [39] are responsible for provision of trust-less environment among participating nodes, integrity of data on chain, clear communication among peers, transparency and much more. These contracts are decentralized and immutable, so the blockchain nodes are assured of the integrity of these contracts. Since the seamless communication of blockchain is highly reliant on Smart Contracts, hence these can be intelligently programmed to transfer user assets in such a way that user and data privacy are retained. Moreover, these contracts are lightweight and require lesser computing resources as compared to the tradition cryptographic protocols. Furthermore, when smart contracts are used in conjunction with cryptographic schemes, they produce more promising results in terms of preserving blockchain privacy. More details on this are given further in this section. Another integral part of blockchain for maintaining justness of the blockchain system is known as consensus. This essential algorithms are responsible for conserving blockchain's  
\begin{table}
\begin{tabular}{c c c c c c c c} \hline \hline
**Article** & **YEAR** & **CITE** & **PRIV-CEN** & **CRYPT** & **SC** & **VAL** & **ORC** \\ \hline
[21] & 2019 & 281 & Yes & Yes & No & No & Yes \\ \hline
[11] & 2019 & 64 & Yes & Yes & No & No & Yes \\ \hline
[27] & 2020 & 12 & Yes & Yes & No & No & Yes \\ \hline
[28] & 2019 & 83 & No & No & No & No & Yes \\ \hline
[14] & 2020 & 1  
efficiency and safety [40]. These algorithms do so by reaching a mutual agreement about the latest state of the blockchain.