1. Introduction
Internet of Things (IoT) technology is widely used to discover, access, and analyze available information [1]. With the continuous integration of IoT technologies and industrial systems, Industrial Internet of Things (IIoT) has been widely noticed and used [2]. IIoT is expected to revolutionize the industrial production model by utilizing sensing technology, communication networks, and other technological tools. The scale of networked equipment increases exponentially with the continuous increase in industrial equipment. The massive industrial data generated is easy to be attacked and leads to data leakage when transmitted and interacted with. At the same time, due to the complexity of industrial equipment and the inconvenience of data interaction, the scalability of the system is poor. Therefore, a new architecture is needed to meet the requirements of data storage security for IIoT systems while also ensuring scalability and interoperability.
Blockchain technology is a new distributed infrastructure and computing paradigm that uses block chain data structure to verify and store data, uses cryptography to ensure the security of data transmission and access, and uses smart contracts composed of automated script code to program and operate data [3]. Blockchain technology has the advantages of decentralization, immutability, traceability, and ease of collaboration [4]. In addition, the introduction of blockchain smart contract design [5] can safeguard industrial activities, such as transactions, transportation, and other industrial activities of entities in the IIoT. It is also possible to store critical industrial transaction information in the blockchain to ensure security. Universally Unique Identifier (UUID) [6] can be used to identify a data file. It is more suitable for storage in the blockchain as a relatively lightweight presence. InterPlanetary File System (IPFS) [7] is a peer-to-peer file distribution system that can effectively utilize the storage resources of network nodes. It can be used to extend the storage capacity of the blockchain.
Many researchers are exploring the feasibility of applying blockchain technology to IIoT architecture [8], but there is no work on establishing an efficient and reliable storage mechanism. In this paper, we propose a blockchain-based distributed storage architecture for IIoT data. The architecture solves the data security problem of IIoT and the storage scaling problem that exists with traditional blockchain-based IIoT architectures. The integration of edge computing, blockchain, and IPFS can solve existing latency, security, and storage scaling challenges. The contributions of this paper are as follows:
A distributed secure storage framework for IIoT data based on consortium blockchain is proposed, where the framework includes two layers, the edge network layer and the blockchain storage layer. The edge network layer is used to preprocess industrial data. The blockchain storage layer is used to store data securely. Its on-chain storage and off-chain storage method IPFS are combined to extend the storage capacity.
In the edge server of an industrial device, the corresponding UUID is obtained based on the timestamp and media access control (MAC) address of the device generating the raw data. UUID is uploaded to the blockchain as an identifier instead of the raw data for storage. The complete raw data is uploaded and stored in IPFS.
Leverage the automated processing power of blockchain smart contracts for data integrity verification. The designed smart contract performs the two-part function of obtaining UUIDs and comparing UUIDs. Get the UUID of one copy of data stored in the blockchain and then get the corresponding UUID stored in IPFS. Finally, the two are compared to determine if the data has not been tampered with. This is different from directly comparing the overall data, and automatically comparing UUIDs through smart contracts is a much lighter weight way to ensure data security.
The rest of the paper is structured as follows: Section 2 presents the research work related to this paper. Section 3 presents the current problems and relevant technologies. Section 4 describes the proposed IIoT architecture and presents its operational mechanisms. The experimental analysis and discussion are presented in Section 5 for the improved parts. Section 6 provides a summary and outlook.
2. Related Work
To ensure secure storage and application of IIoT data, scholars around the world continue to propose new solutions. The focus is on the discussion of the security of the IIoT system architecture, the application of related technologies, and the consideration of system scalability. The International Telecommunication Union (ITU) defines latency, scalability, security, and privacy as key requirements for IIoT networks [9].
Moens et al. [10] proposed an intelligent machine maintenance model based on edge and cloud computing. This model solves the network scalability, security, and low latency problems. However, centralized cloud computing has security concerns due to long distance. Tange et al. [11] pointed out that the security problem of IIoT is an obstacle to its wide application, so they discussed the possibility of the fog computing paradigm to improve the security of IIoT architecture, but there is no specific implementation plan. Zhao [12] et al. proposed a secure higher-order clustering algorithm based on fast search and discovery of density peaks on hybrid clouds to effectively manage and analyze industrial IoT data, but the scheme of computational offloading to the cloud suffers from high latency. Kumar et al. [13] proposed a blockchain edge framework for IIoT. The blockchain provides data integrity and security guarantees. The edge computing paradigm guarantees low-latency services for IIoT applications to optimize network usage but does not consider the storage scalability of the blockchain. Gai et al. [14] proposed a blockchain-based differential privacy IIoT structure. Edge computing is adopted as a supplement to cloud computing. Differential privacy can improve privacy protection in an energy-efficient manner without reducing performance. Zhang et al. [15] proposed a trusted edge platform based on blockchain in the edge environment, which solves the privacy and security challenges in the edge computing environment through the authentication and access mechanism based on blockchain.
Song et al. [16] constructed a three-tier advanced manufacturing system by using blockchain in the IIoT architecture. Wang et al. [17] designed a dual data compression optimization scheme, which can meet the demand of high concurrent data processing in blockchain-based IIoT architecture. Rathee et al. [18] proposed a secure hybrid IIoT framework using blockchain, which uses blockchain to extract information from IoT devices and stores the extracted records in the blockchain to maintain transparency among users, but this will cause greater storage pressure on the blockchain. Bai et al. [19] proposed a lightweight blockchain-based IIoT platform. The system consists of an on-chain network and an off-chain network. However, excessive computational pressure may cause failure when transactions are processed in the on-chain network. Wan et al. [20] proposed a framework based on blockchain to enhance the security and privacy of smart factories. The network is divided into intranet and extranet and performs different functions, respectively, which leads to the complexity of the network structure. Aiming at the problem of information security and privacy protection on the IoT. Guo et al. [21] proposed a distributed trusted authentication system based on blockchain and edge computing, which provides a security guarantee for the combination of blockchain and edge computing. Aiming at the problem that the traditional centralized storage method of firefighting IoT data leads to the problem that data is easy to be tampered with and destroyed, Li et al. [22] proposed a new network architecture and used IPFS technology to expand the storage of blockchain. However, it still needs to rely on a centralized server for some of the processing in the data upload section.
Tulkinbekov et al. [23] proposed an edge computing big data processing method based on blockchain, which can provide certain security and scalability. However, for IIoT application scenarios, the edge resources required to process big data are limited. Chen et al. [24] discussed a potential framework for blockchain-enabled IIoT in which mining tasks are offloaded to edge servers, which relieves computational pressure when large amounts of data are uploaded to the blockchain. Ghosh et al. [25] addressed the lack of system reliability by providing fault-tolerant IIoT architecture using edge gateways. However, storing the information in a local database has a weak storage capacity. Chandramohan et al. [26] proposed an SDN-based approach for energy-efficient resource management of IIoT. The method can be implemented to increase throughput and reduce overall latency. Puri et al. [27] introduced an IIoT architecture based on blockchain technology. It solves the security and privacy issues theoretically but does not address the scaling problem. Lupascu et al. [28] proposed a practical distributed ledger-based authentication framework. A combination of Secure Multi-Party Computing (SMPC) and Distributed Ledger Technology (DLT) is utilized to detect attacks and malicious sensors in IIoT. However, there are drawbacks in handling large-scale devices, which can also lead to scalability issues. Latif [29] proposed a blockchain-based architecture that ensures secure and trustworthy industrial operations. A new consensus mechanism proof of authentication (PoAh) is used, which can avoid single points of failure and multiple cyberattacks. However, it is difficult to solve the storage problem of blockchain.
3. Demand Analysis
3.1. Traditional IIoT Architecture and Problem Analysis
The common IIoT system structure diagram is shown in Figure 1. The IIoT system is divided into three layers, in which the physical layer is composed of physical devices widely deployed in the entire industrial production process, such as industrial manufacturing facilities and intelligent terminals. It is mainly responsible for collecting transaction data generated in industrial production. The communication layer is the integration of communication networks, including WSN, M2M, and other technical means [30]. It is mainly responsible for transmitting data uploaded by the physical layer and storing data. The application layer is oriented to the final application. Intelligent factories and industrial equipment can achieve effective industrial management and control based on the obtained IIoT information.
In fact, IIoT can be considered as a subset of the concept of the IoT. The traditional IoT can be called the consumer Internet of Things [31]. It is people-oriented, and the ‘thing’ is the interconnection of intelligent consumer electronic devices to improve human understanding of the surrounding environment and save time and money. IIoT is committed to digitalization and intelligent manufacturing, combining operation technology with information technology to make progress in the whole industrial process. Therefore, IIoT has different problems from the traditional IoT. The first is security. Industrial production usually has huge economic benefits, so the production process needs to ensure the safe storage of data and data integrity. The second is that the IIoT architecture needs to ensure strict real-time performance to ensure continuous and reliable production. The third is that IIoT requires a highly scalable architecture due to the large number of integrated devices and the large amount of data generated by industrial production processes.
3.2. Selection of Related Technologies
-
Blockchain technology can be categorized into public blockchain, private blockchain, and consortium blockchain [32]. The public chain is a completely decentralized mechanism, and the private chain has the lowest degree of decentralization. Since the read and write access to the data in the consortium chain is controlled by the authorized nodes, it has faster transaction speed, good scalability, and privacy-preserving access control. In this paper, we will use Hyperledger Fabric as the underlying blockchain architecture platform, which is a modular, pluggable, component-based consortium framework [33]. The concept of channel provided by Fabric makes it possible to maintain the privacy of transactions on a wider network. Its smart contract design supports multiple languages, which is convenient for users to develop their own smart contract projects. The use of Fabric-based consortium chain architecture in the IIoT architecture can further ensure the security of the system and facilitate the interaction of industrial data.
-
Edge computing is the transfer of computing services from centralized cloud servers to network edge servers. Edge servers can filter and analyze data to feed back to industrial controls, increasing productivity and saving production costs [34]. In industrial production, there are many edge terminal devices with certain computing power, in which the edge server can be used to process the data generated by the terminal device. Unlike cloud computing, which needs to transmit data to the cloud service center, the edge server is deployed at the edge of the network. Processing data near the terminal device can effectively alleviate the problem of information leakage and provide better privacy protection. Edge computing is not affected by network congestion, routing selection, etc., and can reduce latency. The use of edge computing can meet the low latency requirements of the IIoT system.
-
InterPlanetary File System (IPFS) is a point-to-point file distribution system, which can effectively use the storage resources of network nodes to support large-capacity storage and high concurrent access [35]. After uploading data to IPFS, the system returns a unique identifier called IPFS hash or CID (Content Identifier). This is a unique identifier for the content of the data, calculated by a hash function, which is used to address and retrieve data in IPFS networks. Storage with IPFS is less expensive and more efficient. IPFS does not limit bandwidth resources and has low bandwidth costs. Moreover, IPFS has distributed storage characteristics and can continue to be accessed through other nodes when information on one node is deleted. Therefore, permanent storage of files can be achieved. In this paper, we will use IPFS to store IIoT data, thus extending blockchain storage performance.
4. Methods
4.1. Two-Tier Distributed Secure Storage Framework
The IIoT system is a heterogeneous system that connects many sensors and industrial equipment. Industrial production is a continuous and uninterrupted activity that contains a large amount of information. Therefore, the terminal equipment of the IIoT will generate a large amount of heterogeneous data every day. Therefore, the system requires strong storage and processing capabilities. Aiming at the problems of industrial data transmission security, storage security, and delay sensitivity in the traditional cloud-based centralized IIoT architecture, this paper proposes a blockchain-based IIoT data security architecture. The architecture is shown in Figure 2.
Different from the three-tier IIoT system, which generally includes a physical layer, communication layer, and application layer, the data security framework of IIoT based on blockchain mainly focuses on the processing and storage of industrial data, with only two layers. The upper layer is the blockchain network layer, including the Fabric blockchain and IPFS. Fabric can interact with IPFS. The blockchain can store UUIDs preprocessed by edge computing. IPFS is responsible for storing all data to expand the storage capacity of the blockchain. The bottom layer is the edge network layer, which is responsible for interacting with users. Users can perform operations on stored IIoT data as well as verify the integrity of the data. Terminal equipment can collect data from industrial end devices. Once the data is collected, the edge network will preprocess the data. This results in a data structure adapted to the needs of the blockchain storage layer.
In this paper, the nodes in the edge network are divided into ordinary nodes and administrator nodes. Both ordinary and administrator nodes can perform operations that preprocess data. Ordinary nodes have limited privileges and functions to perform some basic computational storage tasks, and they are not involved in the management and control of the network. Ordinary nodes can be devices such as routers, switches, gateways, etc. Administrator nodes have higher privileges and more functions to monitor the network status, manage network resources, coordinate communications between nodes, and deal with abnormalities in the network, thus ensuring the security and reliability of the network. Administrator nodes also have strict authentication and authorization to ensure that only users or devices with special privileges can access and manage them.
Ordinary nodes can transfer keys to the administrator node for storage. The first criterion that distinguishes an administrator node from an ordinary node is the storage capacity. The storage capacity of edge network nodes in IIoT is available by direct query. In addition to evaluating the storage capacity of the nodes, there is a need to reduce the communication overhead associated with key transfer. In an undirected graph, the degree centrality of a node represents the extent to which it is connected to other nodes. For an undirected graph with k nodes, the degree centrality of node i is the total number of direct connections between it and other nodes. As shown in Equation (1),
(1)
denotes the degree centrality of node i. By counting the number of direct links between node i and the other j nodes. The nodes are g − 1 in total. This refers to the summation of cell values in the row or column corresponding to node i within the network matrix.
Therefore, the storage capacity and degree centrality of the node need to be considered when choosing an administrator node. First select the nodes with high storage capacity in the edge network. Additionally, then select the nodes with high degree centrality. In actual industrial edge scenarios, the more capable the administrator nodes, the better the framework performance.
4.2. Edge Network Preprocessing Data
The decentralized storage and management mode of the blockchain make up for the shortcomings of edge computing in storage and device management capabilities. Edge computing can perform real-time computing and provide low-latency edge services. The combination of the two technologies can achieve complementary advantages.
To ensure the security of IIoT data during transmission and reduce the time complexity of blockchain when interacting with IPFS, this scheme will preprocess the data on the edge server. On the edge server, each collected industrial data block is divided into an identifier part and a raw data part, and then all data blocks are stored on IPFS after encryption. IPFS will return Content Identifier (CID) and store it on the blockchain. At the same time, the identifier part of the data is stored directly on the blockchain on the edge server. A node that can upload data to the Fabric consortium blockchain indicates that the node has been authenticated by Fabric, so there is no need to encrypt the data for this step.
4.2.1. Generation of Raw Data
Data collection for IIoT relies on a variety of sensors and devices that monitor and record various parameters of the production process in real time. The devices that collect data are included in the edge network environment. They can interact with edge servers. Common methods of data collection include sensors, PLC (Programmable Logic Controller), and SCADA (Supervisory Control and Data Acquisition). These methods can be applied to different industrial production sectors. The data collected can be numeric data, state data, text data, etc. The data content can be transaction information, fault information, equipment maintenance information, etc.
The data goes through a total process in this IIoT architecture, as shown in Figure 3. Data collection is the acquisition of data by the device. Data conversion and packaging are preprocessing performed in the edge network. Management and storage of data is simplified after preprocessing. Data encryption and transmission are the processes of encrypting the data and then storing it after transmission.
4.2.2. Edge Computing for Data Preprocessing
This scheme divides the IIoT data into an identifier part and a raw data part, where the identifier part can be understood as an index of the raw data. The collected data will be preprocessed at the edge server to obtain the UUID (Universally Unique Identifier) of the raw data as the identifying part of the data. The UUID is then uploaded to IPFS along with the raw data, while the UUID is uploaded separately to the blockchain for storage. Finally, the data integrity can be determined by comparing the UUID in the blockchain and the UUID queried in IPFS. The method of comparing UUIDs is clearly more lightweight than directly comparing the raw data.
UUID is a data format widely used in the field of computer science and information technology to ensure the uniqueness of identifiers between different systems. UUID can enable the generation of unique identifiers without centralized services and are suitable for distributed computing systems such as the IIoT using edge computing. The basic structure of UUID is shown in Figure 4. The first part is the timestamp, which occupies the top 64 bits of the UUID. Time-low is 4 bytes, which is the lower part of the timestamp. The time-mid is 2 bytes, which is the middle part of the timestamp. Time-h and version account for 2 bytes, which is the high part of the timestamp and the version field. In addition to the high 12 bits of the timestamp, the remaining 4 bits are used to identify the version number of the UUID. The clock sequence part is the 16 bits that follow the timestamp. Setting the clock sequence avoids duplicate identifiers due to system time backtracking or node ID changes, which solves the conflict problem of generating multiple UUIDs at the same timestamp. The generation rules of the clock sequence part include information such as random numbers and MAC addresses. Clk-seq-hi-res occupies 1 byte with 6 clock sequence high bits with 2 reserved bits. Clock-seq-low takes up 1 byte, and the clock sequence low is 8 bits in total. The node part occupies the last 48 bits of UUID, accounting for 6 bytes. It is a node identifier and provides spatial uniqueness. Its generation, usually based on MAC addresses or random numbers, ensures that UUIDs generated even at the same time are unique to a particular network or physical location, thus guaranteeing global uniqueness.
There are several UUID algorithms, of which UUIDv1 is a time-based version that relies on the MAC address and timestamp to generate it. It is fast to generate, ensures global uniqueness from both a temporal and spatial point of view, and provides traceability to the source information. A lot of data is constantly generated in the IIoT, including time data, equipment data, operator data, equipment failure data, transportation data, data leaving the warehouse, data entering the warehouse, and so on. The data is generated with unique timestamps. Moreover, the data are generated by different manufacturers and devices and are accessed and uploaded by their respective network devices. Therefore, the timestamps and the MAC address of an industrial device can be used to identify a unique piece of industrial data. This is in line with the UUIDv1 algorithm concept.
In this paper, the UUIDv1 algorithm will be used to preprocess the data on the edge server of IIoT. The UUID of the raw data obtained is used to uniquely identify a piece of IIoT data. As shown in Figure 5.
The timestamps in the UUID v1 algorithm are obtained by getting the current UTC time. First, get the UNIX timestamp for the current UTC time when generating a timestamp. Converts the timestamp to a 60-bit binary number, where the first 48 bits represent the timestamp, and the last 16 bits represent the clock sequence. Conflicts may arise if multiple UUIDs are generated within the same millisecond, since the UUID v1 algorithm relies on the system clock. To solve this problem, the UUID v1 algorithm introduces the concept of clock sequences. Each UUID has a unique clock sequence value at the same timestamp. Thus, even if multiple UUIDs are generated in the same millisecond, they can still remain unique.
Every network device is shipped with a globally unique MAC address, theoretically. Duplicate MAC addresses may occur in practice due to administrative, technical, or human error. This phenomenon is not common. Therefore, unique timestamps and MAC addresses can effectively solve the problems posed by heterogeneous devices in IIoT.
Device heterogeneity in IIoT leads to data format heterogeneity and communication heterogeneity. Different devices in the IIoT may use different data representations, such as JSON, XML, etc. This lack of harmonization of data formats leads to increased complexity in data integration and processing. It is necessary to predetermine the format of the data generated by IIoT devices when preprocessing data in an edge network environment. Integrate relevant program code into the program that generates UUIDs to ensure that common data format files can be converted into the corresponding UUID format. Thus, the problem of data format heterogeneity is solved. The goal of the architecture in this paper is to secure extended storage of data. As long as the data can be transferred properly, the architecture is viable. Thus, communication heterogeneity would not have a bad effect.
Here is the process of using the UUIDv1 algorithm on IIoT data.
-
Get the timestamp (60 bits): The timestamp is usually a 60-bit number. UUIDv1 is expressed via Coordinated Universal Time (UTC), which is a count of 100-nanosecond intervals counted from 15 October 1582, at 0:00:0:00 UTC.
-
Set clock sequence (16 bits): An initial clock sequence value is randomly selected as a baseline when generating the UUID. The clock sequence field is incremented each time the UUID is generated. When the clock sequence field reaches its maximum value, the initial clock sequence value is randomly selected again.
-
Obtain the MAC address of the node (48 bits): The MAC address in the IIoT refers to the physical address of the network interface card used by users in industrial production, which can be used to uniquely identify a device in the network. The node MAC address that the UUIDv1 algorithm needs to obtain is usually the MAC address of the host network interface. If the MAC address is unavailable or for privacy reasons, a randomly generated value or a fixed value can be used instead.
-
Set the version and variant of UUID (4 bits): This part of the standard variant of the UUIDv1 algorithm can be set to 0001.
-
Combine timestamp, MAC address, version, and variant: The 60-bit timestamp, the 48-bit MAC address, the 4-bit version and variant, and the 16-bit time-series portion are sequentially combined into a 128-bit UUID.
-
Generating UUID: Converts the combined 128-bit value to a string representation of the UUID. By converting each byte to a hexadecimal representation and concatenating them together.
4.2.3. Encrypting Data with ECC
When the data is uploaded on IPFS, for the limited processing capacity of the edge server, this scheme uses a lightweight asymmetric encryption algorithm, the Elliptic Curve Cryptography [36] (ECC) algorithm, to reduce the computational complexity. ECC is an efficient and secure public key encryption algorithm. It uses the mathematical properties of elliptic curves to encrypt and decrypt data.
In this paper, a standard curve P-256 curve defined by NIST (National Institute of Standards and Technology) is used to realize the key generation of ECC. P-256 is also called secp256r1, and the mathematical expression is as follows:
(2)
The p is a large prime, b is the curve parameter, and x and y are the points on the elliptic curve. Using prime number to define the range of points on the curve.
However, ECC does not provide a specific encryption and decryption algorithm. We will use a hybrid encryption scheme that combines the ECC algorithm and the AES algorithm to perform the encryption and decryption operations on the data. The symmetric encryption algorithm AES has fast encryption speed and good performance. This paper will use the combination of the ECC algorithm and the AES algorithm to encrypt and decrypt the data. The process of encryption and decryption is shown in Figure 6. Both ordinary nodes and administrator nodes can generate ECC key pairs; Figure 6 represents the generation of ECC key pairs by the administrator node. The ordinary nodes can store private keys in administrator nodes to reduce storage pressure in practical scenarios. When user A needs to upload data, it starts encrypting the data. First, A will initiate a request to the administrator node. Then, the administrator node will send the ECC private key to A. Generate enc_aes_key by encrypting the locally generated AES key using the ECC private key. This key can be circulated in the user’s network so that it can be accessed by users who need to decrypt it. Then, use the AES key to encrypt the data that needs to be uploaded. Finally, store data that has been encrypted.
In the decryption phase, for example, user B needs to query the data uploaded by user A. B will send a request to the administrator node, which sends the ECC public key to B. B will decrypt enc_aes_key using the ECC public key to get the AES key. Decrypt the encrypted data using the AES key. Then user B gets the required data.
Algorithm 1 shows the encryption and decryption process. The input data are the user’s public key, private key, and the IIoT data that needs to be uploaded for encryption. The output is the IIoT data received by the user who initiated the query. A random AES symmetric encryption key is generated locally when a user node has a need to upload data. Encrypt the AES symmetric encryption key using an ECC public key. Encrypt the data that has been processed and integrated by edge computing using the encrypted AES symmetric encryption key. When querying data, the user first sends a request to the administrator node to obtain the ECC private key. The encrypted AES symmetric encryption key is then decrypted using the ECC private key. The required data can be decrypted using the decrypted AES key.
Algorithm 1 Encrypting and Decrypting IIoT Data Using ECC and AES | |
Input: user’s ecc public key, user’s ecc secret key, IIoT data | |
Output: IIoT data | |
1: | aes_key ← generate_random_aes_key() |
2: | enc_aes_key ← encrypt_with_ecc(aes_key, ecc_pk) |
3: | enc_data ← encrypt_with_aes(data, enc_aes_key) |
4: | data.ipfs_cid ← ipfs.add(enc_data) |
5: | if data.encrypted_ipfs_cid ≠ nil then |
6: | return data.encrypted_ipfs_cid |
7: | return Error(‘‘upload err.’’) |
8: | enc_data ← ipfs.download(data.ipfs_cid) |
9: | aes_key ← decrypt_with_ess(enc_aes_key, ecc_sk) |
10: | data ← aes_decrypt(enc_data, aes_sk) |
11: | return data |
4.3. IIoT Data Storage and Query Verification Based on IPFS and Blockchain
The blockchain is a technology to create trust. When storing data, the encryption technology and nontampering characteristics used can ensure the security of data. By querying the data records in the blockchain, the data of the IIoT can also be traced. However, each node of the blockchain stores all the information. As a result, the system has poor scalability and inefficient data storage and reading when confronted with the huge amount of data in the IIoT.
Therefore, this scheme uses IPFS distributed storage data and then stores the hash value returned by the IPFS system in Hyperledger Fabric. Users can obtain this information at any time through Fabric. The combination of the two technologies enables trust to be generated without having to upload all the data to the blockchain, while extending the storage performance of the blockchain. In order that the data will not be tampered with when uploading the data, as well as the integrity of the data can be easily verified after acquiring the data, this solution uploads the data in the edge environment through ECC combined with AES encryption and stores the UUID of the data in the blockchain. By comparing the consistency of UUIDs in IPFS and Fabric, users can determine if the data is complete and reliable.
The system combining Hyperledger Fabric and IPFS takes the blockchain as the core, and edge computing will be used as a service component to connect the client, IPFS, and Fabric blockchain. In Hyperledger Fabric, smart contracts are deployed to the blockchain in the form of chaincode. Chaincode is the business logic that defines assets, including smart contracts. The blockchain records transactions that update the ledger, and the records cannot be tampered with. Smart contracts programmatically access two different parts of the ledger. One is the blockchain, which records the history of all transactions, and the records cannot be tampered with. The other is the world state, which is a cache of the current value of the state and is frequently needed data. The edge computing device can interact with the state data in the Fabric and upload the data of the IIoT. IPFS can also interact with Fabric. Fabric members can query the data on IPFS, and after obtaining the data, they can verify the integrity of the data by deploying smart contracts on the Fabric.
Consensus algorithms are optional in Hyperledger Fabric. We chose the PBFT (Practical Byzantine Fault Tolerance) algorithm, which is a distributed system consensus algorithm capable of tolerating Byzantine faults. It differs from the classic consensus algorithms such as PoW, PoS, etc. PBFT usually requires only three rounds of message passing to complete the consensus process. Additionally, PBFT can tolerate no more than one-third of malicious or faulty nodes. To summarize, it requires fewer computational resources and is efficient, secure, and fault-tolerant. Thus, it is suitable for edge computing network environments and meets our requirements for architecture.
Therefore, the architecture provides a secure and reliable storage environment for short-term data management. Hyperledger Fabric participants can package and manage data. Data integrity can also be verified. From a long-term perspective, blockchain can certainly ensure the security of stored data. Storage capacity has been greatly improved through differentiated storage and the use of IPFS.
The whole process of uploading data to the blockchain and the IPFS using edge computing can be divided into two parts: data storage, data query, and integrity verification. The overall process is shown in Figure 7. There are four characters in Figure 7. The user is the initiator of the data storage. Additionally, the user can request verification of data integrity. The edge server is responsible for the pre-processing of the IIoT data. IPFS is responsible for storing the raw data. Fabric is responsible for storing the UUIDs.
4.3.1. Data Storage
Data storage is the process of storing IIoT data, including the process of uploading UUIDs to the blockchain and the process of uploading data blocks to IPFS. The specific process is as follows:
Edge computing servers receive and record data from industrial end devices and then preprocess it. The edge servers will calculate the UUID of the raw data and encrypt the required uploaded data using ECC combined with AES. Finally packaged into a data block to be sent to IPFS.
The data block is stored on IPFS, and then the IPFS hash value is returned to the Fabric.
The edge computing servers upload the calculated UUID to the Fabric and call the Fabric chaincode to store the information on the peer node ledger.
The user’s ECC private key is transmitted to the administrator node on the edge for storage.
4.3.2. Data Query and Integrity Verification
Users can initiate a request to query the required industrial data and then verify the integrity of the query data. The UUID stored directly in the Fabric through the edge environment is trusted and cannot be tampered with. Therefore, the verification contract in the Fabric can be called. If the UUIDs comparison is consistent, it can be determined that the data block has not been tampered with. This method is different from the direct use of raw data for verification, which is more convenient and quicker.
Smart contracts are an important part of the contract layer in Fabric. Flexible data operations can be achieved through the development of smart contracts. In Fabric, smart contracts mainly write (put), read (get), and delete (delete) the state in the world state and can query the nontamperable blockchain transaction record. The read (get) operation generally represents a query, and the purpose is to obtain information about the current state of the transaction object. The smart contract is automatically executed once a trigger condition is encountered when the system is running. The get operation logic of the smart contract is shown in Figure 8.
There is a need for a common contract in the IIoT, where smart contracts can implement governance rules for any type of business object. In Fabric, the chaincode manages how smart contracts are packaged for deployment. Smart contract is specifically used to manage transactions. Because smart contracts can programmatically access the ledger, calling a smart contract that is set up makes it easy to query the appropriate UUID from Fabric. Then get the raw data and UUID from IPFS. Compare them in the smart contract can confirm the integrity of the data.
The specific process of data query and integrity verification is shown in Figure 9, which can be divided into a total of seven steps.
-
Initiate a request. The user initiates a query request to start the Fabric chaincode container. Execute the query method of the response in the chaincode.
-
Return hash address. Query the IPFS address information for the required information in the blockchain. Fabric returns the storage hash address of the correct match.
-
Invoke the smart contract. Fabric starts calling smart contracts that compare data.
-
Initiate a request to IPFS. Users query the data on the IPFS network using the hash values returned by Fabric. The IPFS server returns the matching data file.
-
Getting the UUID stored in IPFS. After decrypting the data fetched from IPFS, the smart contract can get the UUID about the data. Prepare for data integrity comparisons.
-
Query data. The smart contract accesses the state database in Fabric and gets the UUID of the corresponding data stored in it.
-
Return the UUID. The status database returns the UUID. The smart contract performs a comparison to determine if the UUID stored in Fabric is the same as the UUID from IPFS. Thus, the integrity of the data is verified.
5. Experimental Analysis and Discussion
In order to describe the reliability of the architecture in detail. This section begins with a fusion analysis of blockchain and IIoT. Then, experimental comparisons of cryptographic schemes and blockchain performance testing experiments were performed. All experiments were realized in an Ubuntu system. The system memory of the device used is 16 GB. The processor is Intel(R) Core (TM) i5-6300HQ. The blockchain platform used in the architecture is Hyperledger Fabric. The data used for the simulation experiments is self-defined through smart contracts. These are described in detail later.
5.1. Fusion Analysis of Blockchain and IIoT
The IIoT exhibits a high degree of interconnectivity and requires real-time data collection and monitoring. The data is then analyzed to enable remote control as well as automated processes. Thus, it needs to be able to ensure security and reliability. The application of blockchain technology can effectively compensate for the shortcomings of centralized IIoT systems. This is due to the advantages that blockchain technology has, such as decentralization, immutability, and traceability. This has been proven and developed in many studies, as referenced in [16,17,18]. To describe the comprehensive connection between IIoT and blockchain, Table 1 details the compatibility of blockchain technology with IIoT.
5.2. Safety Analysis and Comparison
5.2.1. Encryption Phase Security Analysis
Data collection and preprocessing can be considered as an asset generation phase. Detailed timestamp information during the asset generation phase can effectively counter replay attacks. Using an encryption scheme that combines ECC and RSA at the edge server can make it impossible for an attacker to access the private key. Moreover, the ECC algorithm has the advantages of high attack resistance and fast processing speed.
The CIA model is a fundamental framework for threat modeling that helps to understand the potential risks to our information assets. It includes the principles of confidentiality (C), integrity (I), and availability (A). The IIoT data in our architecture is encrypted to meet confidentiality.
5.2.2. Upload and Store UUID Phase Security Analysis
Fabric, as a consortium blockchain, has strict access control features. Every new node that joins the architecture must be authenticated by Fabric. A node that can participate in blockchain storage indicates that the node is a trusted node. Thus, it can effectively prevent attackers from illegally accessing the data. This is equivalent to the data in the architecture being scrutinized at the outset. Thus, this can prevent data poisoning attacks and DoS attacks, among others. Consensus algorithms such as Raft, PBFT, etc., can be selected in Fabric. These consensus algorithms can avoid message forgery, byzantine errors, and replay attacks through digital signature techniques, view change mechanisms, and assigning unique serial numbers to messages. Fabric can interact with IPFS when a user requests data integrity verification. Thus, the architecture of this paper can satisfy the integrity and availability principles of the CIA model.
5.2.3. Comparison with Other Methods
The traditional IIoT architecture is centralized. There are a lot of new architectures now. For instance, the architectures that integrate edge/fog computing, as referenced in [10,11]. Additionally, architectures that combine emerging technologies such as SDN, as referenced in [24]. The architecture proposed in this paper is different from the above schemes. Edge computing preprocesses the data. Then differentially store the UUIDs and raw data. IPFS is then used to extend the storage capacity of the blockchain. Therefore, the architecture can realize the storage expansion with data security. Additionally, it has more good features. The overall analysis is shown in Table 2. The symbol ‘√’ indicates that the architecture has this feature. The symbol ‘~’ indicates that the architecture does not have this feature. Note that this comparison is only a relative comparison between methods.
5.3. Data Encryption Analysis
To prevent the data from being tampered with during transmission, ECC combined with AES will be used to encrypt the data when uploading the data. We tested the key generation time and encryption time.
At the same time, the RSA algorithm containing a 2048-bit key with similar encryption ability is also tested. The RSA algorithm is also an asymmetric encryption algorithm with a public key and a private key. The RSA algorithm has good compatibility with various systems and devices. It can be applied to a variety of application scenarios. Generating the key for the RSA algorithm requires arbitrarily picking two different large prime numbers, p and q. Then a calculation needs to be performed to get n and . As shown in Equations (3) and (4).
(3)
(4)
Arbitrarily choose a large integer e that satisfies Equation (5). The integer e is used as an additive key.
(5)
The determined solution key d that satisfies Equation (6).
(6)
The integers n and e are made public, while d is kept secret. Encrypt plaintext m (m < n) into ciphertext c. As shown in Equation (7):
(7)
Decrypt the ciphertext c into plaintext m. As shown in Equation (8).
(8)
For the RSA algorithm, the longer the key length, the more secure it is. However, the longer the key length, the more time it takes for encryption and decryption operations. Thus, considering the practical application scenario, we consider testing the RSA algorithm with a 2048-bit key. Additionally, compare it with the ECC encryption scheme.
In fact, even in the same hardware and software environment, the time of using the same algorithm to generate the key is different, and the time of using the same key to encrypt the same file is also different. Because even on the same computer, due to the different occupancy of CPU, memory, and other resources, the operating system has different scheduling of processes, which will affect the speed of generating keys. Therefore, we will run the test several times under the same system load and take the average as the result to minimize the error. First, files of different sizes are simulated to be generated as files to be encrypted in the network. The file is then encrypted using two different encryption schemes. The time taken for key generation and the time taken to encrypt the file were tested, and the average value was calculated. The results are shown in Figure 10.
The vertical axis of Figure 10 is the sum of the key generation time and the encryption file time. It can be seen that the ECC combined with the AES scheme has a smaller execution time. The generation time unit of an ECC key pair is generally μs, while the generation time unit of an RSA key pair is generally ms, so the time difference between the two is large. This is because although ECC belongs to the same asymmetric encryption method as RSA, ECC utilizes point operations on elliptic curves to achieve encryption and signatures, while RSA is based on the mathematical principle of decomposition of large numbers. The operation on the elliptic curve requires less computation than the large number decomposition, so the key length required for ECC can be shorter under the same security strength. At the same time, the ECC key occupies less storage space, the bandwidth requirement is lower, and the processing speed is faster. ECC is much faster than RSA in the processing speed of private keys, such as decryption and signature. Therefore, in the industrial edge network environment where the computational power is not strong, it is more appropriate to adopt the encryption scheme of ECC combined with AES.
5.4. Performance Analysis of Blockchain
This paper proposes a blockchain-based IioT data security architecture. The architecture takes the blockchain as the central component, and edge computing is applied to improve the performance of the blockchain. This section will focus on the improvement of blockchain performance after the introduction of edge computing. The Hyperledger Fabric platform used in this scheme is deployed in the virtual machine Vmware workstation. The main hardware and software information of the experimental simulation test is shown in Table 3.
Almost all of the work described is in the experimental stage. Some of these are descriptions of methods without experiments or simulations. Others are detailed descriptions of a specific industrial application scenario. Thus, it is difficult to compare the performance of our method with related works.
The uploaded data can be called an asset in Fabric. In order to simulate a real industrial application scenario, we set the original asset in our experiments as the information of the traded vehicles. Data in the IIoT is diverse and complex. Selecting transaction information is a simulation of an IIoT data storage scenario. In Fabric, the format of the stored data can be set through a smart contract. In our experiments, the information contained in the original asset includes the time of transaction occurrence, vehicle manufacturer, and vehicle base information. Information about the manufacturer and the factory’s production equipment can facilitate future traceability. Vehicle base information includes color, engine model, etc.
We will vary the number of assets uploaded to the blockchain in the Hyperledger Fabric test network chaincode and then compare the two scenarios of uploading raw data to Fabric and uploading UUIDs to Fabric. Uploading raw unprocessed data is an existing solution. Uploading UUID is a new solution proposed in this paper. In total, three sets of experiments were set up, corresponding to 6, 12, and 18 assets (transaction information) uploaded to the blockchain. Considering the large amount of data in general in IIoT application scenarios, we change the number of transactions in a test round from 1000 to 6000 in the benchmark pressure test file in Hyperledger Caliper. We show the throughput of the details in Table 4, when uploading 6 assets and the number of transactions is 3000. Transaction PerSecond (TPS) is an important metric for measuring the performance of a blockchain system. The higher the TPS, the more stable the performance of the blockchain system. There will be no network congestion or blockage. The TPS is calculated as shown in Equation (9).
(9)
The test results for throughput comparison are shown in Figure 11. This shows the process of increasing the number of assets from 6 to 12, and then to 18.
Through the experimental comparison of figures, the throughput gap between the two is small when the amount of data is small. The TPS difference between the two is also within 15 when network fluctuations are taken into account. However, as the number of assets increases, the gap between throughput begins to appear, and the throughput of uploading UUID is higher. The gap in TPS in the third graph reaches over 20. This is because increasing the complexity of the asset structure will cause chaincode to require more calculations and operations when processing data. Complex data structures also require more storage space, which will be more complex in retrieval. Thus, affecting the overall performance and throughput. In addition, increasing the complexity of the asset structure will lead to competition and blocking of chaincodes during concurrent execution, which will also affect the overall concurrency performance and throughput.
We then tested the time taken to upload the asset to the blockchain, using the case where the asset is 18 as an example. The test results are shown in Figure 12. According to Figure 12, the time difference between the two is small when the number of transactions is small. However, the scheme of uploading only UUID will take less time as the number of transactions increases.
In summary, we can further compare the IIoT architecture that merely incorporates blockchain technology with the architecture of this paper, as shown in Table 5. The ‘ymbol ‘√’ indicates that the architecture performs well in a certain aspect. The symbol ‘~’ indicates that the architecture has not improved in a certain aspect. The introduction of blockchain technology ensures data security and privacy. This paper further considers the introduction of UUID design to differentially store data. This allows the storage capacity of the system architecture to be extended. Additionally, our solution can achieve better performance in TPS and latency, two key blockchain technical metrics.
Therefore, this scheme can record more information on the blockchain and enhance the scalability of the IIoT system. Moreover, this scheme has an advantage in latency and has a better performance when it needs to handle uploading a large amount of data. This meets the low latency requirements of the IIoT.
6. Conclusions
This paper proposes a new architecture for IIoT. We address the scalability and security requirements needed for IIoT architectures by combining edge computing, blockchain, and IPFS. Use edge computing to preprocess data to improve system performance. Use blockchain and IPFS to differentially store data for data security. It is verified that the scheme of this paper can provide a secure architecture through analysis and experiments. Blockchain also offers better performance, and its storage capacity has been expanded. This paper discusses a blockchain-based, distributed, secure storage architecture for IIoT data from a new perspective. This can provide new ideas for the research of IIoT architecture. In future research, IIoT data can be further preprocessed at the near-device side. Additionally, it can be combined with security technologies, such as blockchain, to ensure data security.
However, as the IIoT scales up, the amount of data is increasing. The performance of IIoT architecture can be limited due to the higher communication overhead required for nodes in the blockchain to reach consensus. Thus, in our future work, we will explore consensus algorithm improvement to increase the efficiency of consensus. Blockchain sharding techniques are then considered to further expand the storage capacity of the blockchain. In addition to this, the main consideration of this framework is the security of data storage. Smart contracts adapted to various industrial environments will also be considered to be written for different industrial sectors to enable more functionality. Moreover, AI technology can be applied in IIoT to analyze data and improve human-machine collaboration. AI can help with the preprocessing of data, and in combination with blockchain, can also enable better security.
H.T.: Supervision, validation, writing—review and editing. G.H.: Conceptualization, methodology, writing, software, visualization—original draft. All authors have read and agreed to the published version of the manuscript.
Access to the experimental data presented in this article can be obtained by contacting the corresponding author.
The authors declare no conflicts of interest.
Footnotes
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.
Blockchain and IIoT compatibility analysis.
Feature | Centralized IIoT | Fabric + IIoT |
---|---|---|
Framework | High consumption and delay, single point of failure. | Save costs and avoid a single point of failure. |
Privacy | Easy to be attacked, data leakage. | Access control ensures privacy. |
Security | The data is stolen during uploading to the cloud. | The blockchain is encrypted and cannot be tampered with. |
Relative Comparison between methods.
Architecture | Security | Low Latency | Scalability | Reliability | Privacy | Interoperability |
---|---|---|---|---|---|---|
centralized | ~ | ~ | ~ | ~ | ~ | ~ |
IIoT + edge/fog | √ | √ | ~ | √ | √ | √ |
IioT + SDN etc. | ~ | √ | ~ | ~ | ~ | √ |
ours | √ | √ | √ | √ | √ | √ |
Hardware and software information.
Name | Specification/Version |
---|---|
CPU | Intel(R) Core(TM) i5-6300HQ |
Memory | 16 GB |
Hard disk | 120 G SSD |
Operating system | VMware Workstation 17.0.0 |
Hyperledger Fabric | v 2.4.4 |
Hyperledger caliper | v 0.4.2 |
Node | v 16.20.2 |
Npm | v 8.19.4 |
Go | v 1.20.1 |
Docker | v 24.0.7 |
Docker-Compose | v 1.24.0 |
Details of the throughput tested by Caliper.
Name | Succ | Fail | Send Rate | Max Latency (s) | Avg Latency (s) | TPS |
---|---|---|---|---|---|---|
Test1 | 3000 | 0 | 253.0 | 0.07 | 0.02 | 252.9 |
Test2 | 3000 | 0 | 259.9 | 0.06 | 0.02 | 259.8 |
Compare the two architectures.
Architecture | Security | Privacy | Scalability | TPS | Time Delay |
---|---|---|---|---|---|
IIoT + BC | √ | √ | ~ | ~ | ~ |
IIoT + BC (UUID) | √ | √ | √ | √ | √ |
References
1. Ramzan, S.; Ghadi, Y.Y.; Aljuaid, H.; Mahmood, A.; Ali, B. An Ingenious IoT Based Crop Prediction System Using ML and EL. Comput. Mater. Contin.; 2024; 79, pp. 183-199. [DOI: https://dx.doi.org/10.32604/cmc.2024.047603]
2. Wu, D.; Ansari, N. A Trust-Evaluation-Enhanced Blockchain-Secured Industrial IoT System. IEEE Internet Things J.; 2021; 8, pp. 5510-5517. [DOI: https://dx.doi.org/10.1109/JIOT.2020.3030689]
3. Zhao, X.; Peng, C.; Tan, W.; Niu, K. Blockchain-Based Key Management Scheme Using Rational Secret Sharing. Comput. Mater. Contin.; 2024; 79, pp. 307-328. [DOI: https://dx.doi.org/10.32604/cmc.2024.047975]
4. Yi, H. A post-quantum blockchain notary scheme for cross-blockchain exchange. Comput. Electr. Eng.; 2023; 110, 108832. [DOI: https://dx.doi.org/10.1016/j.compeleceng.2023.108832]
5. Guo, H.; Li, W.; Nejad, M.; Shen, C. Access Control for Electronic Health Records with Hybrid Blockchain-Edge Architecture. Proceedings of the IEEE International Conference on Blockchain (Blockchain); Atlanta, GA, USA, 14–17 July 2019; pp. 44-51.
6. Hasan, H.; Salah, K.; Yaqoob, I.; Jayaraman, R.; Pesic, S.; Omar, M. Trustworthy IoT Data Streaming Using Blockchain and IPFS. IEEE Access; 2022; 10, pp. 17707-17721. [DOI: https://dx.doi.org/10.1109/ACCESS.2022.3149312]
7. Wu, M.; Zhang, Y.; Yu, J.; Zhou, Z. A dynamic resource-aware endorsement strategy for improving throughput in blockchain systems. Expert Syst. Appl.; 2023; 225. [DOI: https://dx.doi.org/10.1016/j.eswa.2023.119989]
8. Huo, Y.; Meng, C.; Li, R.; Jing, T. An Overview of Privacy Preserving Schemes for Industrial Internet of Things. China Commun.; 2020; 17, pp. 1-18. [DOI: https://dx.doi.org/10.23919/JCC.2020.10.001]
9. Clemm, A.; Zhani, M.F.; Boutaba, R. Network management 2030: Operations and control of network 2030 services. J. Netw. Syst. Manag.; 2020; 28, pp. 721-750. [DOI: https://dx.doi.org/10.1007/s10922-020-09517-0]
10. Moens, P.; Bracke, V.; Soete, C. Scalable fleet monitoring and visualization for smart machine maintenance and industrial IoT applications. Sensors; 2020; 20, 4308. [DOI: https://dx.doi.org/10.3390/s20154308]
11. Tange, K.; Donno, M.D.; Fafoutis, X.; Dragoni, N. A Systematic Survey of Industrial Internet of Things Security: Requirements and Fog Computing Opportunities. IEEE Commun. Surv. Tutor.; 2020; 22, pp. 2489-2520. [DOI: https://dx.doi.org/10.1109/COMST.2020.3011208]
12. Zhao, Y.; Yang, L.; Sun, J. A Secure High-Order CFS Algorithm on Clouds for Industrial Internet of Things. IEEE Trans. Ind. Inform.; 2018; 14, pp. 3766-3774. [DOI: https://dx.doi.org/10.1109/TII.2018.2816343]
13. Kumar, T.; Harjula, E.; Ejaz, M.; Manzoor, A.; Porambage, P.; Ahmad, I.; Liyanage, M.; Braeken, A.; Ylianttila, M. BlockEdge: Blockchain-Edge Framework for Industrial IoT Networks. IEEE Access; 2020; 8, pp. 154166-154185. [DOI: https://dx.doi.org/10.1109/ACCESS.2020.3017891]
14. Gai, K.; Wu, Y.; Zhu, L.; Zhang, Z.; Qiu, M. Differential Privacy-Based Blockchain for Industrial Internet-of-Things. IEEE Trans. Ind. Inform.; 2020; 16, pp. 4156-4165. [DOI: https://dx.doi.org/10.1109/TII.2019.2948094]
15. Zhang, J.; Lu, C.; Cheng, G.; Guo, T.; Kang, J.; Zhang, X.; Yuan, X.; Yan, X. A Blockchain-Based Trusted Edge Platform in Edge Computing Environment. Sensors; 2021; 21, 2126. [DOI: https://dx.doi.org/10.3390/s21062126]
16. Wang, T.; Liu, J.; Liu, T.; Zhai, D.; Wang, J.; Zhang, T. Secure and Scalable Blockchain for IIoT with Dual Compression Scheme. Proceedings of the 2023 IEEE International Conferences on Internet of Things (iThings) and IEEE Green Computing & Communications (GreenCom) and IEEE Cyber, Physical & Social Computing (CPSCom) and IEEE Smart Data (SmartData) and IEEE Congress on Cybermatics (Cybermatics); Danzhou, China, 17–21 December 2023; pp. 1-6.
17. Song, A.; Seo, E.; Kim, H. Novel Design of Blockchain based IIoT Framework for Smart Factory. Proceedings of the 2024 26th International Conference on Advanced Communications Technology (ICACT); Pyeong Chang, Republic of Korea, 4–7 February 2024; pp. 147-151.
18. Rathee, G.; Sharma, A.; Kumar, R.; Iqbal, R. A Secure Communicating Things Network Framework for Industrial IoT using Blockchain Technology. Ad Hoc Netw.; 2019; 94, 101933. [DOI: https://dx.doi.org/10.1016/j.adhoc.2019.101933]
19. Bai, L.; Hu, M.; Liu, M.; Wang, J. BPIIoT: A Light-Weighted Blockchain-Based Platform for Industrial IoT. IEEE Access; 2019; 7, pp. 58381-58393. [DOI: https://dx.doi.org/10.1109/ACCESS.2019.2914223]
20. Wan, J.; Li, J.; Imran, M.; Li, D. Fazal-e-Amin. A Blockchain-Based Solution for Enhancing Security and Privacy in Smart Factory. IEEE Trans. Ind. Inform.; 2019; 15, pp. 3652-3660. [DOI: https://dx.doi.org/10.1109/TII.2019.2894573]
21. Guo, S.; Hu, X.; Guo, S.; Qiu, X.; Qi, F. Blockchain Meets Edge Computing: A Distributed and Trusted Authentication System. IEEE Trans. Ind. Inform.; 2020; 16, pp. 1972-1983. [DOI: https://dx.doi.org/10.1109/TII.2019.2938001]
22. Li, L.; Jin, D.; Zhang, T.; Li, N. A Secure, Reliable and Low-Cost Distributed Storage Scheme Based on Blockchain and IPFS for Firefighting IoT Data. IEEE Access; 2023; 11, pp. 97318-97330. [DOI: https://dx.doi.org/10.1109/ACCESS.2023.3311712]
23. Tulkinbekov, K.; Kim, D. Blockchain-Enabled Approach for Big Data Processing in Edge Computing. IEEE Internet Things J.; 2022; 9, pp. 18473-18486. [DOI: https://dx.doi.org/10.1109/JIOT.2022.3160838]
24. Chen, W.; Zhang, Z.; Hong, Z.; Chen, C.; Wu, J.; Maharjan, S.; Zhang, Z.; Zhang, Y. Cooperative and Distributed Computation Offloading for Blockchain-Empowered Industrial Internet of Things. IEEE Internet Things J.; 2019; 6, pp. 8433-8446. [DOI: https://dx.doi.org/10.1109/JIOT.2019.2918296]
25. Ghosh, A.; Mukherjee, A.; Misra, S. Sega: Secured edge gateway microservices architecture for iiot-based machine monitoring. IEEE Trans. Ind. Inform.; 2021; 18, pp. 1949-1956. [DOI: https://dx.doi.org/10.1109/TII.2021.3102158]
26. Chandramohan, S.; Senthilkumaran, M.; Sivakumar, M. Adaptive computing optimization for industrial IoT using SDN with edge computing. Proceedings of the 2022 6th International Conference on Computing Methodologies and Communication (ICCMC); Erode, India, 29–31 March 2022.
27. Puri, V.; Priyadarshini, I.; Kumar, R. Blockchain meets IIoT: An architecture for privacy preservation and security in IIoT. Proceedings of the 2020 International Conference on Computer Science, Engineering and Applications (ICCSEA); Gunupur, India, 13–14 March 2020; pp. 1-7.
28. Lupascu, C.; Lupascu, A.; Bica, I. DLT based authentication framework for industrial IoT devices. Sensors; 2020; 20, 2621. [DOI: https://dx.doi.org/10.3390/s20092621]
29. Latif, S.; Idrees, Z.; Ahmad, J.; Zheng, L.; Zou, Z. A blockchain-based architecture for secure and trustworthy operations in the industrial Internet of Things. J. Ind. Inf. Integr.; 2021; 21, 100190. [DOI: https://dx.doi.org/10.1016/j.jii.2020.100190]
30. Hussain, M.Z.; Hanapi, Z.M. Efficient Secure Routing Mechanisms for the Low-Powered IoT Network: A Literature Review. Electronics; 2023; 12, 482. [DOI: https://dx.doi.org/10.3390/electronics12030482]
31. Sisinni, E.; Saifullah, A.; Han, S.; Jennehag, U.; Gidlund, M. Industrial Internet of Things: Challenges, Opportunities, and Directions. IEEE Trans. Ind. Inform.; 2018; 14, pp. 4724-4734. [DOI: https://dx.doi.org/10.1109/TII.2018.2852491]
32. Liu, M.; Yeoh, W.; Jiang, F.; Choo, K.R. Blockchain for Cybersecurity: Systematic Literature Review and Classification. J. Comput. Inf. Syst.; 2021; 62, pp. 1182-1198. [DOI: https://dx.doi.org/10.1080/08874417.2021.1995914]
33. Qiu, H.; Zhu, K.; Luong, N.; Yi, C.; Niyato, D.; Kim, D. Applications of Auction and Mechanism Design in Edge Computing: A Survey. IEEE Trans. Cogn. Commun.; 2022; 8, pp. 1034-1058. [DOI: https://dx.doi.org/10.1109/TCCN.2022.3147196]
34. Saviour, M.A.; Samiappan, D. IPFS based file storage access control and authentication model for secure data transfer using block chain technique. Concurr. Comput.-Pract. Exp.; 2022; 35, e7485. [DOI: https://dx.doi.org/10.1002/cpe.7485]
35. Triebel, D.; Reichert, W.; Bosert, S.; Feulner, M.; Okach, D.O.; Slimani, A.; Rambold, G. A generic workflow for effective sampling of environmental vouchers with UUID assignment and image processing. Database-J. Biol. Databases Curation; 2018; 2018, bax096. [DOI: https://dx.doi.org/10.1093/database/bax096]
36. Kumar, P.; Bhatt, A.K. Enhancing multi-tenancy security in the cloud computing using hybrid ECC-based data encryption approach. IET Commun.; 2020; 14, pp. 3212-3222. [DOI: https://dx.doi.org/10.1049/iet-com.2020.0255]
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/). Notwithstanding the ProQuest Terms and Conditions, you may use this content in accordance with the terms of the License.
Abstract
The conventional centralized Industrial Internet of Things (IIoT) framework is plagued by issues like subpar security performance and challenges related to storage expansion. This paper proposes a two-tier distributed secure storage framework based on blockchain for IIoT data. The authors first introduce the two-layer framework, which includes the edge network layer and the blockchain storage layer. The nodes in the edge network layer are classified into administrator nodes and ordinary nodes. It provides a lower latency network environment compared to cloud computing to preprocess raw industrial data. The blockchain storage layer provides storage space to keep data secure and traceable. Secondly, the authors propose a differentiated storage solution. Based on the timestamps of industrial data and the specific media access control (MAC) address, the Universally Unique Identifier (UUID) of the raw data is generated and uploaded to the blockchain for secure storage. Encrypt the corresponding raw data using the elliptic curve cryptography algorithm, and then upload it to InterPlanetary File System (IPFS) to expand the storage capacity of the blockchain. Deploy a smart contract on the blockchain to compare UUIDs for consistency in an automated, lightweight method to determine data integrity. Finally, we analyze the advantages brought by the integration of blockchain and IIoT. Additionally, the authors design comparative tests on different storage methods. The results prove that the security of this paper’s scheme is improved, and the storage performance is extended. Noteworthy enhancements include heightened throughput of data uploaded to the blockchain and minimized delay overhead.
You have requested "on-the-fly" machine translation of selected content from our databases. This functionality is provided solely for your convenience and is in no way intended to replace human translation. Show full disclaimer
Neither ProQuest nor its licensors make any representations or warranties with respect to the translations. The translations are automatically generated "AS IS" and "AS AVAILABLE" and are not retained in our systems. PROQUEST AND ITS LICENSORS SPECIFICALLY DISCLAIM ANY AND ALL EXPRESS OR IMPLIED WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES FOR AVAILABILITY, ACCURACY, TIMELINESS, COMPLETENESS, NON-INFRINGMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Your use of the translations is subject to all use restrictions contained in your Electronic Products License Agreement and by using the translation functionality you agree to forgo any and all claims against ProQuest or its licensors for your use of the translation functionality and any output derived there from. Hide full disclaimer