Privacy and security as main characteristics of the Blockchain: Part 1
“Blockchain” is a term used to refer to a decentralized consensus technology that holds considerable potential for developing new foundations for socio-economic development and decentralizing security in emerging areas. Due to its ability to effectively build trust between humans and machines, blockchain reduces costs and improves resource utilization.
The Blockchain technology is becoming increasingly vital in various fields, including Bitcoin, Ethereum, and Hyperledger. However, over the last decade, significant advancements have been made in this technology, leading to diverse data security and privacy protection challenges. These challenges include transaction traceability, account pooling, Sybil attacks, eclipse attacks, and clever contract fraudulent attacks. These attacks severely violate users’ data security and privacy and, therefore, must be addressed.
Security and privacy in Blockchain is a line of research?
Today, researchers from academia and industry regularly convene to discuss Blockchain data research, security, and privacy protection. They comprehensively examine the challenges facing the future development of Blockchain technology and provide in-depth analyses of state-of-the-art cybersecurity techniques. All aspects they address are related to security and privacy in Blockchain.
Indexed editorials and editions related to Blockchain can be found, including developments in detection methods for trade laundering in Ethereum Blockchains, frameworks to evaluate the decentralization of nodes in peer-to-peer networks, and studies on cryptographic obfuscation for smart contracts. Some works present schemes allowing users to provide encrypted inputs to encrypted smart contracts and permit an untrusted third party to execute them. These applications provide direction for the pattern in the practice of Blockchain security and demonstrate the security of obfuscation schemes.
What other intellectual endeavors on Blockchain are there?
There are also efforts on measuring the decentralization of nodes in Blockchain peer to peer networks. In this sense, NodeMaps have been presented, which is a decentralization of data measurement framework nodes to capture, analyze and visualize data from various popular Blockchain P2P platforms, such as Bitcoin, Lightning Network, Cosmos, and Stellar. In other words, they perform IP address analysis and provide a snapshot of each Blockchain platform to compare and contrast their nodes’ geographic, ASN, and version distribution information. The measurements are evaluated to elucidate the degree of decentralization of the nodes in the underlying network of the different blockchains.
Another topic of interest is the detection and quantification of the on-chain laundering trade for ERC20 cryptocurrencies. The subject of the re-study is the laundering trade on ERC20 cryptocurrencies by performing a systematic analysis of the transaction data chain. For this, the laundering trade has been mathematically defined using the state set of addresses, and for this, algorithms have been proposed to reserve direct evidence of the laundering trade. After obtaining the characteristics of wash trading, they quantify the volume of wash trading and provide market regulations to prevent wash trading.
Likewise, progress has been made in developing methods for robust grouping Ethereum transactions using fixed node time leaks, whose scheme covers all transactions and is resistant to privacy enhancement techniques. Using timestamps relayed from N fixed nodes to describe the network properties of transactions, the scheme groups transactions entering the network from the same source node.
How the Blockchain works
A blockchain functionally serves as a secure, distributed database of transaction records. In a Bitcoin network, if user A wants to send some Bitcoins to another user B, he will create a Bitcoin transaction by user A. The transaction must be approved by the miners before it is committed by the Bitcoin network. To start the mining process, the transaction is broadcast to all nodes in the network, which are collected by miners as transactions in a block, who will verify transactions in the block, and broadcast the block and its verification using a consensus protocol. These are known as Proof of Work to get approval from the network.
When other nodes verify that all transactions contained in the block are valid, the block can be added to the blockchain. Only when the block containing the transaction is approved by the other nodes and added to the blockchain, this transfer of Bitcoin from user A to user B will be finalized and legitimate.
This process is summarized in the following stages:
1) the chained storage.
2) the digital signature.
3) the commitment consensus to add a new block to the globally chained storage.
Blockchain technology has a set of popular security techniques, such as hash chain, Merkle tree, digital signature, with consensus mechanisms; the Bitcoin blockchain can prevent both the Bitcoin double spending problem and stop the retrospective modification of any data transaction in a block after the block has been successfully committed to the Blockchain.
Chained storage security technique
The hash pointer and the Merkle tree are the most widely used chained storage techniques for implementing the blockchain in Bitcoin. The hash pointer is a cryptographic hash of the data that points to the location where the data is stored. Using hash pointers, the blockchain links data blocks together, with each block indicating the address where the data from the predecessor block is stored. Users can publicly verify the hash of the stored data to prove that it has not been tampered with.
If a hacker attempts to change the data in any block in the entire chain, they would have to change the hash pointers of all previous blocks. Ultimately, the hacker would have to stop tampering because they would not be able to falsify the data in the head of the chain, which is initially generated once the system is built. If they try, the cyberattack would be discovered because the chain has the property of resistance to manipulation. Users can return to a special block and check it from the beginning of the chain.
The Merkle tree is a binary search tree with nodes linked to each other using hash pointers. It is another useful data structure used to build a blockchain. The nodes are grouped into disjoint groups, with each pair of lower-level nodes grouped into one on the parent level. This prevents data from being altered by traversing hash pointers to any node in the tree.
When a cyberattack attempts to manipulate data in a child node, it changes the hash value of its parent node. Even if the hacker continues manipulating the top node, they need to change all nodes on the way from bottom to top. Detecting tampering is easy since the hash pointer of the root node does not match the stored hash pointer. One advantage of the Merkle tree is that it can effectively and concisely test the membership of a data node by displaying this data node and all of its ancestor nodes on their way up to the root node. Membership in the Merkle tree can be verified in logarithmic time by calculating hashes in the path and checking the hash value against the root.
Digital signature security technique
With this security technique, the validity of data is sought through the use of a cryptographic algorithm. It is a scheme to verify that data has not been manipulated. There are three fundamental components that formulate a digital signature scheme.
The first component is the key generation algorithm, which creates two keys: one is used to sign messages and keep them private, called the private key, and the other is made publicly available, called the public key. The public key is used to validate whether the message’s signature is signed with the private key.
The second component is the signature algorithm, which produces a signal in the input message endorsed by using the given private key.
The third component is the verification algorithm, which takes a signature, a message, and a public key as input and validates the signature of the message using the public key. It returns a Boolean value.
A reliable, secure digital signature algorithm is considered well-defined when it satisfies two properties. The first property is that valid signature are verifiable. The second property is that the signatures are existentially unforgeable. The Elliptic Curve Digital Signature Algorithm (ECDSA) adopted by Bitcoin is an example of such an algorithm.
The commit consensus to add a new block to globally chained storage
When a new block is sent to the network, each node can add that block to its copy of the ledger or ignore it. Consensus is used to find that the majority of the network agrees to a single state update to ensure the expansion of the ledger or Blockchain, thus preventing cyberattacks.
Specifically, since the Blockchain is a vast shared global ledger, anyone can update it. It is not lost sight of the fact that a cyberattack could occur when a node decides to alter the state of the copy of the ledger or when several nodes attempt a manipulation.
For example, if user A sent 10 Bitcoins to user B from her wallet, she would like to make sure that no one on the network can alter the content of the transaction and change 10 Bitcoins to 100 Bitcoins. In this order of ideas, to allow the chain of blocks to work on a global scale with a guarantee of security and correctness, the shared public ledger needs an efficient and secure consensus algorithm, which must ensure that:
all nodes simultaneously maintain an identical chain of blocks, and
does not depend on the central authority to prevent cyber attackers from disrupting the coordination process of reaching a consensus.
The majority of the network participants must approve each message transmitted between the nodes through a consensus-based agreement. Furthermore, the network must be resilient to partial failures, such as when a group of nodes is rogue or when a message in transit is corrupted. For this, a good consensus mechanism used in the Blockchain must comply with two properties: persistence and vivacity. That is, if one node in the network indicates that a transaction is in the “stable” state, then the other nodes in the network should also report it as stable if asked and answered honestly.
In the second part of this article, we will tell you more about Blockchain security and privacy properties and techniques.
César Daniel Barreto