Three-part system

Parallel distributed cloud computing and storage

The parallel architecture solves the current IoT scalability problems of data storage and sharing. Due to the parallel distributed computing, the pressure on the main chain is lowered, something that is essential for IoT to flourish, as it is estimated that IoT will entail around 75 billion connected devices in 2025 and currently the amount of connected devices already outnumbers the worldwide human population (Columbus, 2017). In the CPChain architecture, the data layer is separated from the control layer as can be seen in figure one. This parallel architecture provides open data sharing while protecting user privacy and adopts a distributed storage scheme. The user data is encrypted and uploaded to the cloud to reduce the burden of data storage prevailing in the current IoT landscape.

In the physical layer, data is collected through the use of smart devices. These devices join the CPChain network by either running a blockchain node or by communicating with the blockchain network.

Simultaneously, the node also deals with encryption of data (in the data layer) and participates in the consensus protocol (in the control layer) and other tasks needed to run the CPChain environment. Even more, the data provided by nodes in the data layer does not have to be uploaded to the control layer. Only hash values, which can act solely as identification of the uniqueness of data is uploaded to the blockchain, ensuring un-tampered data while not slowing down the control layer, which occurs if the encryption happens there. Although only the hash values are uploaded to the blockchain, the control layer does have access control over the data.

‘Parallel distributed architecture separates the data layer from the block chain, which not only preserves the security and decentralization of the block chain system, but also improves the scalability and greatly reduces the block size’.

For data hashing, CPChain uses distributed hash table (DHT)-based distributed encrypted storage, in which each node only saves a random part of the data. Consequently, malicious nodes have only limited impact. DHT-based encryption is useful for the scalability CPChain tries to achieve. This mechanism is highly scalable because data is automatically and randomly distributed to new nodes. More nodes will therefore result in more (random) distribution, which makes the system more secure and faster. A disadvantage of DHT is verifying data integrity and searching for data as it is randomly distributed among nodes. Especially since CPChain wants to enable the sharing of data, it is paramount that an effective data authorization access mechanism is designed. To tackle these problems, CPChain proposes a modified DHT, which is patented by one of the founders of CPChain, Bin Zhao (patents.justia.com). In this mechanism, the correspondence between the key-value pair of data and the data block is recorded, where the key is used at the data encryption level. A key-value pair is a set of two linked data items: a key, which is a unique identifier for some item of data, and the value, which is a pointer to the location of the data. The combination of encrypting both the key-value pair along with the data block makes this solution secure and it enables the sharing of data as well. This modified DHT encryption is unique and will be revolutionary in this field. Also, contrary to current encryption mechanisms in other blockchain applications, data only needs to be encrypted one time in the CPChain infrastructure, which is referred to as one-to-many-authorization. In doing so, CPChain intends to combine symmetric and asymmetric encryption based on re-encryption technology. In this fashion, the encryption as well as the decryption will use the same secret key (symmetric encryption). Consequently, the correspondence between the encrypted data block and the secret key will be recorded in the distributed hash table. To partially resolve the security problem of data sharing in a parallel-distributed architecture, the re-encryption (one-to-many authorization) is done using asymmetric encryption, as will be explained now.

Each encryption interval needs to update the secret key, so that not all encryption is done with the same key. Consequently, there is a different secret key to encrypt data in every single encryption interval. Every time data needs to be re-encrypted, it is done by asymmetrically encrypting the initially used secret key (which was done with symmetric encryption). As this secret key is different for every encryption interval, data authorization is limited to a certain encryption interval. This makes the data sharing more secure.

To effectively use the data for smart contracts, the CPChain infrastructure will use homomorphic encryption, which enables modifying encrypted data without the need of decrypting it. In this way, the encrypted data in the CPChain infrastructure can be used and modified to make the data compatible with smart contracts. This is a very important aspect, as the interoperability of smart contracts with IoT devices will give the combination of blockchain and IoT much more applications. In the infrastructure of IOTA for example, it is much more difficult to have devices compatible with smart contracts. In the Tangle (DAG) of IOTA, only a partial order structure exists, contrary to a blockchain in which everything is time stamped in a correct time order of events, as is the case in the proposed infrastructure of the data in the CPChain infrastructure (Popov, 2017). Without timestamp accuracy, smart contract compatibility will not be possible. This is a huge disadvantage for DAG-based projects like IOTA and a huge advantage for blockchain projects like CPChain. According to CPChain founder Dr. Long, there are several other disadvantages to IOTA’s DAG model. First, the DAG model of IOTA has some incentive problems in which IOTA is solely in an initial stage of overcoming this. Another problem not yet solved by IOTA is the vulnerability to DDOS attacks in case of new nodes that are not yet identified on the DAG map (http://www.gongxiangcj.com).

Moreover, to enhance the speed in the proposed parallel infrastructure of CPChain, only basic smart contracts are positioned in the control layer; other functions that require contractual interaction are located in the application layer (Long et al.. 2018).

‘The combination of encryption technology and blockchain technology will achieve more secure and more efficient data sharing and services’.

Double consensus mechanism

Next, CPChain offers an innovative hybrid consensus protocol for large-scale blockchain infrastructures based on optimization of computing and communication. The problem that needs to be solved is; which nodes are allowed to complete the data collection, add chains to the block, and how block data security is achieved. Some earlier proposed solutions include Practical Byzantine Fault Tolerance (PBFT) for example, but this is not scalable for the architecture of IoT as it relies heavily on communication for consensus. In an IoT environment with the possibility of failing nodes, this is not a good solution. Therefore, an innovative double consensus mechanism is proposed that is derived from the original Byzantine Fault Tolerance. In the two-layered consensus, a local electoral algorithm will be held when a block is added to determine the amount of nodes participating in the two rounds. The role of an elected node in the elected committee in the second round (block data collection, packaging, and new block creation) will be determined by its credibility. To prevent malicious nodes from affecting the whole network, the electoral algorithm will be partially based on randomness. Consequently, a malicious node does not know what nodes to attack in order to affect the whole network. Needless to say, divergent behavior of elected nodes will result in removal from the committee. Even more, the committee will be re-elected regularly, enhancing the security of the whole system (Long et al., 2018).

Side chain consensus system

As the requirements for worldwide IoT applications differ per application, CPChain will offer a lightweight side chain consensus protocol to meet these requirements. In this consensus system, the data gateway is used for data processing and encryption computation because it generally has more hardware support and the power of the device is not limited. Moreover, using the gateway in the proposed way will prevent a computing delay as a result by data processing of nodes thereby prolonging the lifetime of these nodes. This approach is very innovative and based on severe research by Dr. Zhao Bin. Currently, a patent for dr. Zhao Bin of this technology is currently reviewed.

The consensus of IoT transactions will be embedded in different communication technologies currently available in the IoT landscape. Embedding consensus in these communication protocols enables information interaction in consensus to take place outside of the data layer. Moreover, CPChain will develop a cooperative incentive and security mechanism. This will be based on directed acyclic graph structure. Noteworthy, only this mechanism will be based on the DAG as the DAG itself has some limitations, which are previously discussed in the parallel distributed cloud computing and storage part of this paper (Long et al., 2018).