*3.1.3 Key characteristics*

Blockchain technology has many unique features that allow for the creation of a verifiable, secure, transparent, and immutable distributed ledger, the core characteristics of which are summarized as follows:


## *3.1.4 Main components and data flow*

To cater to the vastly different needs of unique businesses and users, many blockchain networks are created, and each contains a slightly different set of features; however, a basic foundation remains the same for all. As an example, we use Bitcoin, the first and the most successful permissionless blockchain system, to illustrate the key components of typical data flow in a blockchain network:

**Block**: A data structure that is used to collect a set of transactions and is protected by adding a hash value to ensure the integrity of stored data. It is an essential component and is deployed in all blockchain networks.

**Digital wallet**: A secure repository for a user to store the private and public key pair. It interacts with the Bitcoin network so a user can receive and send digital currency (Bitcoins) and monitor their balance.

**Node**: A client who participates in transactional activities on the blockchain network. First and most importantly, a node owns a complete and permanent copy of the ledger that consists of all historical transactions. It works as a cornerstone to store a full copy of the tamper-proof ledger in each node in a blockchain network. Second, a node contributes to the network by broadcasting transactions and enabling miners to validate and create blocks.

**Miner**: A miner, a special user in the Bitcoin network, collects and validates all broadcasted transactions and creates new blocks. It competes with other miners in the network to solve a mathematical puzzle, widely known as a proof-of-work problem. The first to win the puzzle adds a new block to the chain and gains a specific amount of reward, such as a small number of Bitcoins. When a block is added, all nodes synchronize their local copy, ensuring their ledger is up-to-date. A miner or mining procedure is used for validation in many permissionless blockchains, whereas validation is executed by nodes under the control of a consensus in most permissioned blockchains.

**Consensus**: An agreement between nodes in a blockchain network that submits transactional information, and is one of the most critical components of blockchain technology. A blockchain network is updated via the deployed consensus protocol to ensure that transactions and blocks are ordered correctly, to guarantee the integrity and consistency of the distributed ledger, and, ultimately, to enhance trust between stakeholders (nodes). Additionally, a consensus algorithm can help a distributed or decentralized network unanimously make a decision [11, 29]. Prevalent consensus algorithms include proof-of-work, proof-of-stake, Byzantine fault tolerance, delegated proof-of-stake, proof-of-elapsed time, and proof-of-authority matched [34, 35].

**63**

**Figure 3.**

*Data flow of an open blockchain network [27].*

*Deploying Blockchain Technology in the Supply Chain DOI: http://dx.doi.org/10.5772/intechopen.86530*

used by Hyperledger Fabric) that nodes use for validation.

Bitcoin network:

**3.2 What is a "smart contract"?**

In a typical open and permissionless blockchain network such as Bitcoin, when a user starts a transaction, the digital wallet verifies and signatures the transaction before broadcasting it to all nodes in the network. The verified transaction is added to a block that collects a set of new transactions. Miners validate the block, and once validated, the block is added to the existing blockchain by all nodes. This completes the transaction. The following is an illustration of typical data flow within the

A typical permissioned blockchain follows a similar data flow to that illustrated in **Figure 3**, where a signature is added to the transaction, which is then submitted or broadcasted to the network and added to a block. After the block is validated, the transaction is permanently stored in the chain. Permissioned blockchain differs from permissionless blockchain by how blocks and transactions are validated. To gain better performance and lower latency, most permissioned blockchain networks deploy efficient consensus protocols (e.g., the Byzantine fault tolerance consensus

The term "smart contract" was first proposed by Nick Szabo, and defined as "a set of promises, specified in the digital form, including protocols within which the parties perform on these promises" [36]. The smart contract concept was integrated into Ethereum's blockchain network to facilitate, verify, and enforce contract negotiations and to improve the contract performance. Before transactions are conducted in a blockchain network, a smart contract that defines the conditions,

*Deploying Blockchain Technology in the Supply Chain DOI: http://dx.doi.org/10.5772/intechopen.86530*

*Computer Security Threats*

modified.

identity.

centralized system.

the chances of illegal transactions.

*3.1.4 Main components and data flow*

4.**Logically centralized**: With only one transaction record shared with and agreed upon by all participants, a blockchain network behaves like a logically

6.**Immutable data**: Once a block with a set of transactions is verified by the consensus and stored in the chain, the encapsulated data can no longer be

7.**Enhanced data security**: Blockchain technology utilizes asymmetric cryptography and digital signature algorithms to ensure data security and individual

To cater to the vastly different needs of unique businesses and users, many blockchain networks are created, and each contains a slightly different set of features; however, a basic foundation remains the same for all. As an example, we use Bitcoin, the first and the most successful permissionless blockchain system, to

**Block**: A data structure that is used to collect a set of transactions and is protected by adding a hash value to ensure the integrity of stored data. It is an essential

**Digital wallet**: A secure repository for a user to store the private and public key pair. It interacts with the Bitcoin network so a user can receive and send digital

**Node**: A client who participates in transactional activities on the blockchain network. First and most importantly, a node owns a complete and permanent copy of the ledger that consists of all historical transactions. It works as a cornerstone to store a full copy of the tamper-proof ledger in each node in a blockchain network. Second, a node contributes to the network by broadcasting transactions and

**Miner**: A miner, a special user in the Bitcoin network, collects and validates all broadcasted transactions and creates new blocks. It competes with other miners in the network to solve a mathematical puzzle, widely known as a proof-of-work problem. The first to win the puzzle adds a new block to the chain and gains a specific amount of reward, such as a small number of Bitcoins. When a block is added, all nodes synchronize their local copy, ensuring their ledger is up-to-date. A miner or mining procedure is used for validation in many permissionless blockchains, whereas validation is executed by nodes under the control of a consensus in most

**Consensus**: An agreement between nodes in a blockchain network that submits transactional information, and is one of the most critical components of blockchain technology. A blockchain network is updated via the deployed consensus protocol to ensure that transactions and blocks are ordered correctly, to guarantee the integrity and consistency of the distributed ledger, and, ultimately, to enhance trust between stakeholders (nodes). Additionally, a consensus algorithm can help a distributed or decentralized network unanimously make a decision [11, 29]. Prevalent consensus algorithms include proof-of-work, proof-of-stake, Byzantine fault tolerance, delegated proof-of-stake, proof-of-elapsed time, and proof-of-authority matched [34, 35].

illustrate the key components of typical data flow in a blockchain network:

component and is deployed in all blockchain networks.

currency (Bitcoins) and monitor their balance.

enabling miners to validate and create blocks.

permissioned blockchains.

5.**Data transparency**: Blockchain technology allows for a highly transparent network that is visible to each stakeholder at all times. This dramatically reduces

**62**

In a typical open and permissionless blockchain network such as Bitcoin, when a user starts a transaction, the digital wallet verifies and signatures the transaction before broadcasting it to all nodes in the network. The verified transaction is added to a block that collects a set of new transactions. Miners validate the block, and once validated, the block is added to the existing blockchain by all nodes. This completes the transaction. The following is an illustration of typical data flow within the Bitcoin network:

A typical permissioned blockchain follows a similar data flow to that illustrated in **Figure 3**, where a signature is added to the transaction, which is then submitted or broadcasted to the network and added to a block. After the block is validated, the transaction is permanently stored in the chain. Permissioned blockchain differs from permissionless blockchain by how blocks and transactions are validated. To gain better performance and lower latency, most permissioned blockchain networks deploy efficient consensus protocols (e.g., the Byzantine fault tolerance consensus used by Hyperledger Fabric) that nodes use for validation.
