M2M Security Technology of CPS Based on Blockchains - MDPI

1 downloads 0 Views 4MB Size Report
Sep 14, 2017 - of an intelligent cotton production CPS to solve malleability and instant .... value of the last block of the blockchain, and the transaction order ...
SS symmetry Article

M2M Security Technology of CPS Based on Blockchains Shiyong Yin 1 , Jinsong Bao 1, *, Yiming Zhang 2 and Xiaodi Huang 3 1 2 3

*

College of Mechanical Engineering, Donghua University, Shanghai 201620, China; [email protected] College of Literature, Science and the Arts, The University of Michigan, Ann Arbor, MI 48109, USA; [email protected] School of Computing and Mathematics, Charles Sturt University, Albury NSW 2640, Australia; [email protected] Correspondence: [email protected]; Tel.: +86-216-779-2562

Received: 24 August 2017; Accepted: 12 September 2017; Published: 14 September 2017

Abstract: As the core of intelligent manufacturing, cyber-physical systems (CPS) have serious security issues, especially for the communication security of their terminal machine-to-machine (M2M) communications. In this paper, blockchain technology is introduced to address such a security problem of communications between different types of machines in the CPS. According to the principles of blockchain technology, we designed a blockchain for secure M2M communications. As a communication system, M2M consists of public network areas, device areas, and private areas, and we designed a sophisticated blockchain structure between the public area and private area. For validating our design, we took cotton spinning production as a case study to demonstrate our solution to M2M communication problems under the CPS framework. We have demonstrated that the blockchain technology can effectively solve the safety of expansion of machines in the production process and the communication data between the machines cannot be tampered with. Keywords: blockchain; machine-to-machine (M2M); cyber-physical system (CPS); cotton spinning production

1. Introduction A cyber-physical system (CPS) is a complex system of computation, networks, and the physical world [1]. By using computing, communication, and control technologies, a CPS digitizes the physical world and realizes the unity of the information world and the physical world. Typically, a CPS consists of two main parts: one is the physical world, while another is an information system. Aiming to mine and analyse data of the physical world from the information world, a CPS intelligently monitors actions of entities in the physical world, and takes actions to change their behaviour to make the entities work more efficient. As a dynamic network, the industrial Internet of Things (IIoT) has physical and virtual bodies with its own identities and properties. It uses a smart interface to connect a physical world with a virtual world [2]. Relying on a variety of technologies, including sensing, communication, computing, data processing, and feedback control technology, machine-to-machine (M2M) supports intercommunication of many heterogeneous devices [3]. Nowadays, M2M has become an indispensable part in the next-generation network, and is being widely applied to many new smart applications and services. As the epoch of Industry 4.0 approaches, CPS, IIoT, and M2M have been infiltrating the industry. Current M2M security protocols are not capable of resolving the intercommunications between different heterogeneous devices in CPS devices. How to ensure the safety of communication of M2M is a question that is in urgent need of being solved. This paper attempts to solve the security of M2M in a CPS using blockchain technology. The main contributions of this work are as follows: (1) blockchain Symmetry 2017, 9, 193; doi:10.3390/sym9090193

www.mdpi.com/journal/symmetry

Symmetry 2017, 9, 193

2 of 16

technology to solve the security problems of M2M communication is introduced; (2) the design of a blockchain for M2M communication security is presented; and (3) the application of blockchain technology to a case study of cotton spinning is given. The rest of this paper is organized as follows: Section 2 presents related work. Section 3 introduces the blockchain technology. It mainly presents the connotation and characteristics of the blockchain, the nature of the blockchain, and its core technology. Afterwards, the safer M2M communication with the help of blockchain technology is discussed. Section 4 presents our blockchain design, including the design of the overall structure, the public network area blockchain, and private area blockchain. Section 5 describes a case study where we apply blockchain technology into the M2M communication of an intelligent cotton production CPS to solve malleability and instant security issues of an M2M system. Finally, Section 6 concludes this paper. 2. Related Work With the in-depth development and applications of CPS, its security issues increasingly become a concern. Related security issues are broadly studied and analysed in the fields of wireless sensor network, ad hoc network, and mobile ad hoc networks. They are, however, barely applicable. This is because CPS security covers a larger scope, contains much more content and requires higher levels of security. Security issues are not new. We should use advances in technology to address this issue. An analysis of the security issues at the various layers of the CPS architecture, risk assessment, and techniques were discussed for securing CPS in [4]. A framework for modelling the security of a cyber-physical system has been described [5], where the behaviour of the adversary is controlled by a threat model that captures the cyber aspects and the physical aspects of the cyber-physical system in a unified manner. Moreover, a content-aware security framework for generic CPS systems has been proposed [6], together with an investigation of the CPS security issues. Several security problems along with the currently proposed solutions at different network layers of mobile ad hoc networks have been discussed as well [7]. Through applications of current network security models to a CPS, flaws in the original model have been found. In response to this, a new model was proposed to address the challenges of CPS security [8]. The security design of the IoT should be standardized to achieve an open, widespread, and interacting fundamental security architecture [9]. On the basis of investigations of CPS security, the authors of [10] presented a series of challenges that urgently needed to be resolved to boost the performance of the CPS. A modelling approach to evaluating the security of a CPS was then presented, in which a game-theoretic paradigm with different parameters predicted the interactions between the attacker and the system [11]. Any leakage of private information in a CPS will cause serious consequences. Enhancing the secrecy of wireless communications in a CPS by using physical layer security techniques is key. A privacy-enhanced waveform design approach aided by artificial noise has been proposed to enhance the communication secrecy in a wireless environment with multipath reception [12]. Some security issues that may occur in a CPS have also been discussed [13,14]. A vast number of M2M intelligent devices have been deployed in CPSs. Thus, the security of M2M determines the performance of the CPS. A simplified protocol stack has been proposed, and some important sections introduced, to provide secure transmission between M2M servers and their terminals [15]. In [16], a survey of security threats against M2M network solutions to prevent or reduce their impact was presented after an overview of potential M2M applications was provided [16]. M2M communication faces a large number of security threats. For some unresolved security vulnerabilities, a dynamic-encryption authentication scheme has been proposed, by which a mobile device could be authenticated by the network and a shared one-time-password could be generated. It can withstand man-in-the-middle attacks, impersonation attacks, reply attacks, and disk operation system (DOS) attacks [17]. Distributing trust building and enforcement tasks between devices and networks leads to scalable concepts, which can provide a flexible solution to new threats that arise in M2M communications [18]. Combined with M2M characteristics, an improved direct anonymous

Symmetry 2017, 9, 193

3 of 16

authentication scheme has been proposed [19]. To prevent accidents, the design of an environmental monitoring platform of mines based on M2M technologies has also been proposed [20]. In [21], after discussing the security challenges in M2M communications in the wireless networks of CPSs, a secure architecture that is suitable for CPSs was proposed to cope with these security issues. Four aspects of the corresponding countermeasures to these security issues were discussed: access control, intrusion detection, authentication, and privacy preserving, respectively. Providing real-time cloud services to vehicular clients must address delay and delay-jitter issues. An energy-efficient adaptive resource scheduler for networked fog centres was reported with the test results [22]. The use of peer-to-peer (P2P) grid technology allows for the creation of a network with greater distribution and scalability. A reputation model on trust management is proposed for a semantic P2P grid, which can achieve good computational complexity with high ranking accuracy [23]. Harnessing the broadcast nature of wireless channels towards efficient multicast faces challenging security issues. For improving security in a wireless multicast, a dynamic fountain code was designed against passive eavesdropping [24]. It can significantly reduce the intercepting probability while achieving a higher transmission efficiency, thus facilitating wireless connections in support of multicast services. A number of frameworks and proposals on M2M security are available. To the best of our knowledge, this work is, however, the first attempt to apply blockchain technology into M2M communication security in a real-world case study. 3. Blockchain Technology 3.1. The Connotation and Main Features of a Blockchain After the inventor of Bitcoin published a paper named “Bitcoin: A peer-to-peer electronic cash system” [25] in 2008, blockchain saw significant publicity. Later, Swan claimed that blockchain is a transparent distributed database [26]. The Ministry of Industry and Information technology of the People’s Republic of China defines a blockchain as a creative application of distributed storage, P2P transmission, consensus mechanisms, and encrypted algorithms. Despite being far from reaching consensus on the definition of a blockchain, the connotation is fairly clear. Using mathematics as its foundation, a blockchain is a multidisciplinary technology that also combines cryptography, economic models, and network technology into a distributed system that is established on distrust and indecent operations. The main features of a blockchain are as follows: (1) (2)

(3)

Rather than creating a system around a central server, blockchain utilizes P2P networking and a consensus mechanism to create the trust system between nodes, thus forming a decentralized system. A blockchain uses encryption, especially asymmetrical encryption, to protect transaction data. A consensus mechanism ensures that data cannot be modified or forged, guaranteeing a high level of security. Based on the chain structure, all data of a transaction are traceable. A blockchain utilizes special methods to motivate all nodes to cooperate in block verification and uses a consensus mechanism to choose specific nodes as new blocks [27].

3.2. The Working Mechanisms of a Blockchain 3.2.1. The Structure of a Blockchain A blockchain is an ordered chain of blocks. Blocks are containers of some related information and the data of transaction records. The different blocks may vary, but a normal block consists of a block head, which contains metadata, and a block body, which records the transaction process. The structure of a block is shown in Figure 1. A block head has three main parts, except for its version number: 1 a hash value linked to the previous block, which is essential to the chain structure; 2 a hash

function, timestamp, and nonce related to transactions (hash functions are used to store blockchain data; a timestamp records the time at which blocks are generated; a nonce is a calculator used in proofs

Symmetry 2017, 9, 193

4 of 16

Symmetry2017, 2017,9,9,193 193 Symmetry

of16 16 44of

3 a Merkel root used to summarize all transactions in the block and to quickly of the work algorithm); verified transactions during theofgeneration generation of aadata. block. By linking linking blocks with hash values, aa verified during the of block. By blocks hash values, check thetransactions existence and integrity the transaction A block body stores allwith verified transactions blockchain iscreated. created. of a block. By linking blocks with hash values, a blockchain is created. blockchain during the is generation

BlockN N Block Head Head Prev-hash Prev-hash

Nonce Nonce

Version Version

Hash Hash function function

Merkle Merkle root root

Timestamp Timestamp

BlockN+1 N+1 Block Head Head Prev-hash Nonce Prev-hash Nonce Hash Hash function function

Body Body

Merkle Merkle root root

BlockN+2 N+2 Block Head Head Prev-hash Nonce Nonce Prev-hash

Version Version

Hash Hash function function

Timestamp Timestamp

Body Body

Merkle Merkle root root

Version Version Timestamp Timestamp

Body Body

Figure1. 1.The Thestructure structureof ofaaablockchain. blockchain. Figure Figure 1. The structure of blockchain.

3.2.2.The TheWorking WorkingPrinciple Principleof ofaaBlockchain Blockchain 3.2.2. 3.2.2. The Working Theworking workingprinciple principleof ofaaablockchain blockchainisisillustrated illustratedin inFigure Figure2. 2.In Inthe thebitcoin bitcoinnetwork, network,ifif ifA Awants wants The The working principle blockchain illustrated In the bitcoin network, A wants to send a bitcoin to B, the following processes will be followed: ① Create a transaction order. Encrypt to 1 Create

to send send aabitcoin bitcointo toB, B,the thefollowing followingprocesses processeswill willbe befollowed: followed:① Create aatransaction transaction order. order. Encrypt Encrypt the previous transaction with B's public key, calculate the hash value, and then encrypt the hash value the previous transaction with B's public key, calculate the hash value, and then encrypt the hash the previous transaction with B's public key, and then encrypt the hash value value with its own private key to obtain its digital signature, and finally add the digital signature to the end with with its its own own private private key key to to obtain obtain its its digital digital signature, signature, and and finally finally add add the the digital digital signature signature to to the the end end of the bitcoin to create a transaction order. ② Broadcast the transaction order. Broadcast the of the bitcoin bitcointoto create a transaction ② Broadcast the transaction order. Broadcast the 2 Broadcast of the create a transaction order.order.

the transaction order. Broadcast the transaction transaction order to totothe the Internet to inform other nodes about about the transaction and each each node transaction Internet inform other nodes transaction and node order to the order Internet inform otherto nodes about the transaction andthe each node incorporates received incorporates received the transaction into a block. ③ Verify transaction validity. All participants incorporates received the transaction into a block.validity. ③ Verify Allvalidity participants 3 Verify transaction the transaction into a block.

All transaction participantsvalidity. verify the of the verify the validity of the transaction by searching for solution x, which allows the hashed verify the validity of the transaction by searching for solution x, which allows the hashed value transaction by searching for solution x, which allows the hashed value computed from x, the value hash computed from x, the theof hash value of of the theand lastthe block of the the blockchain, blockchain, and the transaction order using computed x, hash last block of and transaction order using value of thefrom last block the value blockchain, transaction order using thethe Hash256 algorithm satisfies the Hash256 Hash256 algorithm satisfies certain certain conditions; for example, the first first 20 20 digits are are 0. After After the the the algorithm satisfies for digits certain conditions; for example, the firstconditions; 20 digits are 0. example, After the the solution is found, the 0. privilege of solution is found, the privilege of creating a new block is guaranteed and a bitcoin is rewarded. ④ solution is found, the privilege of creating a new block is guaranteed and a bitcoin is rewarded. ④ 4 Transmit the verification results. creating a new block is guaranteed and a bitcoin is rewarded. Transmit the verification results. Thenode node that computes the solution firstly receivesand thebitcoin bitcoin from Transmit verification The that computes solution firstly receives the from The nodethe that computesresults. the solution firstly receives thethe bitcoin from the system this piece of the system and this piece of information is broadcast to all the nodes through the Internet. ⑤ the system and this piece is broadcast to all the nodes through the Internet. ⑤ 5 Complete information is broadcast to of all information the nodes through the Internet. the transaction. A’s and Complete the transaction. A’sand andB’s B’s bitcoins areseparately separately changedin inthe thedistributed distributedledger. ledger. Complete the transaction. are B’s bitcoins are separately A’s changed in bitcoins the distributed ledger. changed Createaatransaction transactionorder order 1.1.Create

Broadcastthe thetransaction transactionorder order 2.2.Broadcast

AA

Verifytransaction transactionvalidity validity 3.3.Verify

Completethe thetransaction transaction 5.5.Complete

TransmitVerification Verificationresults results 4.4.Transmit

BB

Figure 2. 2. The The working working principle principle of of aa blockchain. blockchain. Figure

Communicationof ofCPS CPS 3.3. The The Utilization Utilization of of Blockchain Blockchain for for M2M M2M Communication Communication of CPS 3.3. Features of ofaaablockchain blockchainand andM2M M2M communication of CPS compatible to some extent. of blockchain and M2M communication of CPS CPS areare compatible to some some extent. For Features communication of are compatible to extent. For For example: example: example: (1) Blockchain technology M2M bothboth utilize the idea distributed and decentralized computing. (1) Blockchain Blockchain technologyand and M2M both utilize theofidea idea of of distributed distributed and decentralized decentralized (1) technology and M2M utilize the and There is no There centralized in database adatabase blockchain, each network node storingnode its own copyits of computing. Thereisisno nodatabase centralized inaawith blockchain, witheach each network node storing its computing. centralized in blockchain, with network storing own copy copy of of the the blockchain. blockchain. The The physical physical level level of of aa CPS CPS contains contains energy/environment, energy/environment, own personnel, and various types of physical equipment and other elements. The interconnection interconnection personnel, and various types of physical equipment and other elements. The

Symmetry 2017, 9, 193

(2)

(3)

5 of 16

the blockchain. The physical level of a CPS contains energy/environment, personnel, and various types of physical equipment and other elements. The interconnection between machines and equipment (M2M) is a key technology in a CPS, and it can take the form of machine-to-machine, machine-to-cluster, and even cluster-to-cluster. However, no matter which form the M2M takes, they all exhibit the same nature of decentralization. A blockchain and M2M both require high levels of security. Other than a system being built on dependency and trust, a blockchain uses encryption and digital signature to secure information. While in an M2M system, the transmission and storage of information also require high confidentiality, integrity and validity, and authenticity. In addition, M2M has the nature of non-repudiation. Despite some level of variation in different systems, for example, military, electrical, medical, and manufacturing systems, the security of information is generally the first priority of such systems. A blockchain and M2M reach a high level of harmony in the traceability and sharing of information. Providing effective sharing of historical information, blockchain technology uses a hash value, which is connected to the previous block, to track information of transactions throughout the whole blockchain. In M2M systems, especially in the area of manufacturing, tracing historical data is crucial. For instance, by reviewing data, we can identify key factors that might impact product quality. By improving processes, a higher quality will then be achieved. By filtering through the data, we can discover weak spots in production. The rate of machine breakdowns will then be lowered considerably by optimizing the maintenance methods. Additionally, through data sharing, those unnecessary processes can be easily spotted. Then cutting or reducing expenses of these processes on the supply chain will help cut production costs.

4. M2M-Security-Oriented Blockchain Design 4.1. Overall Design On the foundation of ensuring data throughput and extensibility, to achieve validity of data, which means that data are usable, reliable, integral, safe, and manageable, senders of data are required to send real, legal, and standardized data. The transmission must be covert, recorded, queryable, and traceable. The receivers can only receive the data sent from the senders which cannot be forwarded. The process of receiving data can be recorded and queryable. In an M2M transmission system of CPS, the design of the blockchain in this work is illustrated in Figure 3. (1)

(2)

(3)

Public network area. Based on the industrial Internet of Things, the public network area builds machine communication platforms. This ensures the normal communication of various types of machines, audits the registration of machines, accesses authentication to achieve connection and communication among machines, unifies the data format and communication rules, maintains the blocks of the public network area, and queries communication records. Device area. The device area is the channel connecting the public network area and the private area. It receives messages from the public network area, and passes the query requests and query results to and from the private area. Private area. The private area establishes and records the blocks of communication process among machines, saves data of the communication process, accepts the external query, or obtains externally related data by querying.

On the foundation of ensuring data throughput and extensibility, to achieve validity of data, which means that data are usable, reliable, integral, safe, and manageable, senders of data are required to send real, legal, and standardized data. The transmission must be covert, recorded, queryable, and traceable. The receivers can only receive the data sent from the senders which cannot be forwarded. The process of receiving data can be recorded and queryable. In an M2M transmission Symmetry 2017, 9, 193 6 of 16 system of CPS, the design of the blockchain in this work is illustrated in Figure 3.

Public network area

Device area

Device area Symmetry 2017, 9, 193 CB

6 of 16 CB

CB

CB

(2) Device area. The device area is the channel connecting the public network area and the private CB CB query requests and query CB from CB the public CB CB area. ItCBreceives messages network area, and CB passes the Private area areathe private area. results to Private and from CB CB CB CB CB CB CB CB (3) Private area. The private area establishes and records the blocks of communication process Private area Private area CB CB CB CB among machines, saves data of the communication process, accepts the external query, or obtains externally related data by querying. Figure 3. 3. Our for machine-to-machine machine-to-machine (M2M) (M2M) security. security. Figure Our overall overall design design of of the the blockchain blockchain for

4.2. Design of Machine-Equipment Blockchain in the Public Network Area (1) Design Publicofnetwork area. Based Blockchain on the industrial Internet of Things, 4.2. Machine-Equipment in the Public Network Area the public network area builds In a CPS, if devices must be replaced due to malfunctioning or other reasons, the newtypes device machine communication platforms. This ensures the normal communication of various of In a CPS, if devices must be replaced due to malfunctioning or other reasons, the new device will will machines, have to be audits connected to the production line byaccesses registration. The new device calculates a private the registration of machines, authentication to achieve connection and have to be aconnected to the production line by the registration. The new devicealgorithm calculates a private key key communication from random among number by using unifies an algorithm such as the SHA256 [28], and then machines, data format and communication rules, maintains from a random number byusing using an algorithm as the algorithm [28], and[29]. thenIngenerates generates a public keypublic by another algorithm, such asSHA256 the Secp256K1 algorithm this way, the blocks of the network area, andsuch queries communication records. aa public key by using another algorithm, such as the Secp256K1 algorithm [29]. In this way, a key key pair is formed. The new device sends the digital certificate which marks its own identity pair is formed. The new device sends the digital certificate which marks its own identity together together with the public key to the public network area for registration. It will be successfully with the public to the public network for registration. It will be successfully registered after registered afterkey approval. Then, the publicarea network will create an equivalence between the certificate approval. Then, the public network will create an equivalence between the certificate and its identity, and its identity, and store the public key of this device into the key pool. At the same time, the device and store as theapublic key of thisinto device the key pool. At blockchain the same time, the device is addedofasthe a is added new blockchain the into machine-equipment (M-EB). The structure new blockchain into the machine-equipment blockchain (M-EB). The structure of the M-EB is shown M-EB is shown in Figure 4. After a public area has accepted and registered a new device, the M-EB in Figure 4. After a public hasthe accepted and registered a new device, thethe M-EB will use the device, public will use the public key toarea verify encrypted digital certificate, confirm identity of the key verifyauthorize the encrypted digital confirm identity of the device, finally authorize andtofinally access into certificate, this area. Up untilthe now, the new device canand participate in M2M access into this area. Up until now, the new device can participate in M2M communication. communication. M-EB

M-EBi

M-EB

M-EBi+1

M-EB

M-EB

Prev-block Head information Production process

M-EB

M-EB

M-EB

Hash function

Device ID

Device information

Merkle root

Device type

Digital signature

Nonce

Public network area M-EB

M-EBn

Timpstamp

Device name

(a)

(b)

Figure 4. 4. The machine-equipment blockchain in public: (a) the diagram of the Figure Thedesign designofofthe the machine-equipment blockchain in public: (a)schematic the schematic diagram machine-equipment blockchain in public network area; (b) the structure of the machine and of the machine-equipment blockchain in public network area; (b) the structure of the machine and equipment blockchain. equipment blockchain.

M2M technology uses a communication mechanism, which aims to empower all machines with the M2M technology uses a communication mechanism, which aims to empower all machines with ability of communication, to realize the smart and interactive connections between machines and systems. the ability of communication, to realize the smart and interactive connections between machines To maintain data integrity and reduce data redundancy, the public network should standardize the and systems. To maintain data integrity and reduce data redundancy, the public network should format of communication among any M2M terminals of CPS. Here, we also reach a consensus on types standardize the format of communication among any M2M terminals of CPS. Here, we also reach a of communication data: uploading information that refers to the collection of local data, and downloading consensus on types of communication data: uploading information that refers to the collection of local information that refers to the communication protocol, orders of networks, and settings of parameters. 4.3. Design of Communication Blockchain in the Private Area Private sectors are in charge of recording communications between blocks, storing data, and querying the relevant information. Since information about the communication process can be

Symmetry 2017, 9, 193

7 of 16

data, and downloading information that refers to the communication protocol, orders of networks, and settings of parameters. 4.3. Design of Communication Blockchain in the Private Area Private sectors are in charge of recording communications between blocks, storing data, and querying the relevant information. Since information about the communication process can be shared, private sectors ensure that it is difficult to be tampered with. The blocks of a communication blockchain (CB) are composed mainly of header information 1 a hash value that links and communication information. In particular, header info includes: 2 a target hash, 3 a Merkel root, 4 a nonce, 5 a timestamp, and other to the previous block, 1 a sender ID, to identify the initiator, 2 components. Communication information consists of Symmetry 2017, 9, 193 7 of 16 Symmetry 2017, 9, 193 7 of 16 3 information type, to embody the data type of communication receiver ID, to identify the receiver, Symmetry 2017, 9, 193 7 of 16 4 data size, to specify the total number of and tell whether it is uploaded data or and tell whether it is uploaded data or downloaded downloaded data, data, ④ data size, to specify the total number of and tell whether itunit, is uploaded data or downloaded data, ④ data size, to specify the total number of 5 data, to 6 encryption bytes of the

stored for communication data required,

and tell is uploaded downloaded data, ④ data size, to specify the total number of bytes ofwhether the data data it unit, ⑤ data, data tobe beor stored forspecific specific communication data required, ⑥ encryption bytes to of specify the datathe unit, ⑤ofdata, to be stored for specific communication data required, ⑥ encryption 7 information type, type encryption, and verification, to verify the accuracy

bytes of the data unit, ⑤ data, to be stored for specific communication data required, ⑥ encryption type, to specify the type of encryption, and ⑦ information verification, to verify the accuracy of of the the type,after to specify the type The of encryption, and ⑦ information verification, toillustrated verify the in accuracy of the data transmission. structure of the communication blockchain is Figure 5. type, to specify the type The of encryption, and information verification, verify the accuracy data after transmission. structure of the⑦ communication blockchain to is illustrated in Figureof 5. the data after transmission. The structure of the communication blockchain is illustrated in Figure 5. data after transmission. The structure of the communication blockchain is illustrated in Figure 5. CBi

CBi+1

CBn Prev-block

CB

Sender ID

CB

Head information

Hash function

Communication information

Merkle root

Information Type Data size

Digital signature

Receiver ID

CB

CB

Nonce Timpstamp

CB

Private area

CB

Data Encryption type Inspection information

(a) (a) (a)

(b) (b) (b)

Figure 5. 5. The design of the communication blockchain in the private area: (a) thethe schematic diagram of the Figure Thedesign designof ofthe thecommunication communicationblockchain blockchain private area: schematic diagram of Figure 5. The inin thethe private area: (a) (a) the schematic diagram of the Figure 5. The design of the communication blockchain in the private area: (a) the schematic diagram of the communication blockchain in the private area; (b) the structure of the communication blockchain. the communication blockchain in the private area; (b) the structure of the communication blockchain. communication blockchain in the private area; (b) the structure of the communication blockchain. communication blockchain in the private area; (b) the structure of the communication blockchain.

The communication blockchain mainly records the communications between devices. Each records the the communications communications between between devices. devices. Each The communication blockchain mainly records The communication blockchain mainly the communications between devices. Each communication is linked to the blockchain as arecords separate block. The data in the interworking process, communication is linked to the blockchain as a separate block. The data in the interworking The data in the interworking process, process, communication is linked the blockchain as The data the interworking including the ID of the tocommunication, thea separate type of block. information, thein size of the data, process, and the including the theIDIDof of communication, the of type of information, size of and the the data, and the including thethe communication, the type information, the sizethe of the data, encryption including ID of communication, encryptionthe mode, arethe saved to the block. the type of information, the size of the data, and the encryption mode,toare mode, are saved thesaved block.to the block. encryption mode, are saved to thefor block. If device M1 wants to search its communication record with a certain device, M2, for example, If device M1 wants to search search for its its communication communication record with a certain certain device, device, M2, M2, for for example, example, If device M1 wants to to search for its communication withshown a certain can send a query packet the public network area inrecord the form in device, Figure M2, 6. If for theexample, query is form shown shown in Figure Figure 6. 6. If the query is can send a query packet to the public network area in the form can send a query packetthe to packet the public network shown Figurenetwork 6. If thearea. queryThe is successful, M2 returns of the query area resultintothe M1form through theinpublic successful, M2 M2returns returnsthe thepacket packet query result tothrough M1 through the public network area. The successful, of of thethe query result to M1 the public network area. The format successful, M2 returns the packet of the query result M1 through public network area. The format of the packet is shown in Figure 7. Otherwise, thetopublic networkthe area returns the query failure format of theis packet isin shown in7.Figure 7. Otherwise, thenetwork public network areathe returns query failure of the packet shown Figure Otherwise, the public area returns querythe failure message format of back the packet message to M1.is shown in Figure 7. Otherwise, the public network area returns the query failure message back to M1. back to M1. message back to M1. Receiver ID

Sender ID

Digital signature of Sender

Data to be inquired

Inspection information

Figure 6. The data format of a query packet. Figure 6. The format of a query packet. packet. Figure The data data Figure 6. 6. The data format format of of aa query query packet. Receiver ID

Sender ID

Digital signature of Sender

Encrypted data

Figure 7. The data format of an information packet. Figure 7. The data format of an information packet. Figure 7. The format of of an an information information packet. packet. Figure 7. The data data format

Inspection information

The whole process of query communication is illustrated in Figure 8. The step-by-step The whole process of query communication is illustrated in Figure 8. The step-by-step The whole process as offollows: query communication is illustrated in Figure 8. The step-by-step descriptions are detailed descriptions are detailed as follows: descriptions are detailed as follows: Step 1: M1 sends a query packet to the public network area. Step 1: M1 sends a query packet to the public network area. Step sends a query to the public network area.area resolves the query packet and checks Step 1: 2: M1 After receiving thepacket query packet, the public network Step 2: After receiving the query packet, the public network area resolves the query packet and checks Step 2: After receiving the query packet, the public network area resolves the query checks whether it is complete or not, according to the data check information. If not,packet M1 is and required to whether it is complete or not, according to the data check information. If not, M1 is required to

Symmetry 2017, 9, 193

8 of 16

The whole process of query communication is illustrated in Figure 8. The step-by-step descriptions are detailed as follows: Step 1: M1 sends a query packet to the public network area. Step 2: After receiving the query packet, the public network area resolves the query packet and checks whether it is complete or not, according to the data check information. If not, M1 is required to resend the packet and the system re-enters Step 1; otherwise, the system enters Step 3. Step 3: According to the ID of M2 in the query packet, the public network area checks whether M2 exists in the machine-equipment blockchain or not. If not, a null value from the public network area is sent to the query sender, and the query fails; otherwise, the system enters Step 4. Step 4: The public network area delivers the query packet to the private area of M2 through the equipment sector. Step 5: The private area of M2 analyses the query packet to decide if the digital signature of packet is Symmetry 2017, 9, 193 8 of 16 legal. If not, the service request will be denied, and denial of service information will be sent to M1 through the public network area. The system re-enters Step 1; otherwise, it goes directly M1 through the public network area. The system re-enters Step 1; otherwise, it goes directly to to Step 6. Step 6. Step Step6:6: The Theprivate privatearea areaof ofM2 M2searches searchesfor forthe thequery querypacket packetin inthe thehistory. history.ItItencrypts encrypts the the results results using M1’s public key and then encapsulates it into a packet, which is later sent to the public using M1’s public key and then encapsulates it into a packet, which is later sent to the public network networkarea. area. Step Step7:7: After After receiving receiving the the packet, packet, the the public public network network area area checks checks whether whether or or not not itit isis complete complete according to the inspection information in the packet. If not, M2 is required to resend according to the inspection information in the packet. If not, M2 is required to resend the the packet; packet;otherwise, otherwise,the thesystem systemgoes goestotoStep Step8.8. Step Step8:8: The Theinformation informationpacket packetisissent senttotothe theprivate privatearea areaofofM1 M1through throughits itsdevice devicearea. area. Step the digital signature of M2 to identify its legitimacy. If it If is it illegal, M2 Step9:9: The Theprivate privatearea areaanalyses analyses the digital signature of M2 to identify its legitimacy. is illegal, will required to resend the packet and theand system re-enters Step 6. Otherwise, the private M2 be will be required to resend the packet the system re-enters Step 6. Otherwise, the area of M1 uses its private to obtain the data and the whole query completes. private area of M1 uses itskey private key to obtain the data and the whole query completes. The private area of Sender

The device of Sender

The public network area

The device of receiver

The private area of receiver

1. create and send a search package incomplete, request to resend,enter step 1

2. test the integrity of search package 3. complete, check receiver ID 4.exist, search package is sent to receiver

not exist, search is failed

5. check the digital signature of sender

illegal, denial of service,enter step 1

information package is sent to the public network area 7. test integrity of information package

6. legal, create information package

incomplete, enter step 6

8.complete, information package is sent to sender 9. check the digital signature of receiver

enter step 6 illegal, request to resend the information package

legal, receive results, search ends

Figure8.8.The Thecommunication communicationprocess processfor foraasearch. search. Figure

5. A Case Study: Cotton-Production-Oriented Security of M2M under a CPS Architecture 5. A Case Study: Cotton-Production-Oriented Security of M2M under a CPS Architecture In this section, we present a case study to exemplify our design of the Blockchain under a CSP In this section, we present a case study to exemplify our design of the Blockchain under a architecture. CSP architecture. 5.1. Problem Description Traditional cotton production is quite a complicated process. As illustrated in Figure 9, cotton spinning involves a few key processes: blow room opening, cleaning, and mixing, carding, drawing, lap forming, combing, carded yarn, combed yarn, packing palletizing, etc. The processes are complex and continuity is demanded. The cotton-production-oriented CPS architecture involves a bottom physics layer of machines,

Symmetry 2017, 9, 193

9 of 16

5.1. Problem Description Traditional cotton production is quite a complicated process. As illustrated in Figure 9, cotton spinning involves a few key processes: blow room opening, cleaning, and mixing, carding, drawing, lap forming, combing, carded yarn, combed yarn, packing palletizing, etc. The processes are complex and continuity is demanded. The cotton-production-oriented CPS architecture involves a bottom physics layer of machines, devices, energy, environment, and workers, and a middle layer of the industrial network based on various types of smart sensors, radio-frequency identification, WiFi, and tags. In our design, hundreds of high-performance sensors will need to be deployed in one single cotton production workshop to differentiate machines, equipment, or raw materials. By then, each device will record vast amounts of real-time data, e.g., quality data of cotton yarn during each processes and the status data of operational devices. As production proceeds, a cotton bale becomes cotton slivers, carded yarns, and, finally, combed yarns. The whole transformation process will also establish a great amount of data. Therefore, in the large data environment, intelligent cotton production will encounter the following challenges: First, though the size of cotton-production-oriented CPS is very large in size, M2M technology is Symmetry 2017, 9, 193 9 of 16 increasingly mature, and the CPS itself is growing. Specifically, the equipment will increase or decrease in numberthe according actual needs of production the stability M2M sacrificing stabilityto of the M2M communication. Second, if without a cardingsacrificing machine sends a query of request, communication. Second, if a carding sends a query request, for example,regarding to a lap-forming for example, to a lap-forming machinemachine laid on its previous process for information the lapmachine laid on its previous process for information regarding the lap-forming status and quality so as forming status and quality so as to adjust its own setting accordingly, the M2M system will then have to its own setting to accordingly, M2M system thenrelated have tomachines, send an instruction extend to adjust send an instruction extend thethe working hourswill to the due to thetosudden the working hours to the related machines, due to the sudden increase of the order quantity. A carding increase of the order quantity. A carding machine also conveys quality information of carded yarn to machine alsomachine conveysas quality information of acarded to the combing as a reference to the combing a reference to adjust properyarn parameter. How canmachine this information or these adjust a proper cantothis or By these instructions transmitted to its instructions be parameter. transmittedHow safely its information target device? answering thisbe question, this safely case study target device? By answering this question, this case study discusses how to ensure communication discusses how to ensure communication scalability in the dynamic change of the M2M system under scalability in the dynamic the M2M system under and the CPS architecture for cotton spinning the CPS architecture for change cotton of spinning and timeliness safety of multipoint-to-multipoint and timeliness and safety of multipoint-to-multipoint communication in the data environment. communication in the data environment.

AGVs

combing

combed sliver

AGVs

carding

carded sliver

cotton rolls

opening

AGVs

AGVs

warehouse

roving

AGVs

drawen sliver

AGVs

drawing

spinning

roving

AGVs

spinning

packaging palletizing

Figure 9. The diagram of of cotton cotton spinning. spinning. Figure 9. The process process flow flow diagram

5.2. Solution 5.2. Solution and and Simulations Simulations In this this section, section, we we present present our our solution solution to to the the cotton-production-oriented cotton-production-oriented security In security of of M2M, M2M, together with the simulations that validate our design. together with the simulations that validate our design. We conducted conducted the the simulations simulations by by the the selecting selecting the the Enterprise Enterprise 2015 2015 version version of of C# C# language language We developed by Microsoft. The reasons for this are as follows: (1) The NET framework is popular, developed by Microsoft. The reasons for this are as follows: (1) The NET framework is popular, andand we we can create a portable code that functions across iOS, Android, Windows tablets/phones, desktops, can create a portable code that functions across iOS, Android, Windows tablets/phones, desktops, servers, and and embedded servers, embedded systems; systems; (2) (2) everything everything from from the the compiler compiler to to the the core core runtime runtime is is open open source. source. The program is executed with the following environment: Windows 10, Intel (R) Core™ i5-5200U 2.20 GHz CPU, and 8.0 GB of RAM. The application types of C# mainly include Windows console applications, Windows form applications, ASP.NET Web applications, and ASP.NET Web services applications. We chose Windows console application programming by which to implement our simulation in this work.

Symmetry 2017, 9, 193

10 of 16

The program is executed with the following environment: Windows 10, Intel (R) Core™ i5-5200U 2.20 GHz CPU, and 8.0 GB of RAM. The application types of C# mainly include Windows console applications, Windows form applications, ASP.NET Web applications, and ASP.NET Web services applications. We chose Windows console application programming by which to implement our simulation in this work. Console applications typically use standard command-line inputs and outputs. The information in the blockchain is handled with the combination of the bitcoin class. Our simulation is implemented by using C#. There are four kinds of information flows in the simulation, namely, the material blockchain, the device blockchain, the communication blockchain, and the control flow of the program itself. The Merkel class of the blockchain can read and write blockchain information directly. In the C# environment, the output of the model has two classes of request and confirms to apply to a user for help using the information in the blockchain. The request class and confirm class contain the Merkel roots of the latest block. The user sends a request message, waiting for a fixed cycle time in order to receive the confirmation message. Once the user receives the confirmation message, the method of processing the information starts to execute the output. If the output is the query information, the output is executed before being processed by two classes: query request and query results Symmetryreturn. 2017, 9, 193 10 of 16 5.2.1. Maintenance of Extensibility of M2M 5.2.1. Maintenance of Extensibility of M2M If a production line is built, new devices must be added to the industrial network. Things will If a production line is built, new devices must be added to the industrial network. Things will happen when the production line has to be modified or updated according to needs. Some devices happen when the production line has to be modified or updated according to needs. Some devices must be substituted. In a word, M2M systems are dynamic and must be extensible. How, then, does must be substituted. In a word, M2M systems are dynamic and must be extensible. How, then, does one maintain the extensibility of M2M systems? one maintain the extensibility of M2M systems? M2M systems of a CPS use blockchain technology to maintain extensibility. Industrial IoT M2M systems of a CPS use blockchain technology to maintain extensibility. Industrial IoT platforms recognize the IDs of new devices and timestamps them before adding them to the blockchain platforms recognize the IDs of new devices and timestamps them before adding them to the as a new block (see Figure 10). For a changing scenario, the information of the replaced parts are blockchain as a new block (see Figure 10). For a changing scenario, the information of the replaced still stored in the equipment blockchain as historical data for later querying and analysing. If a large parts are still stored in the equipment blockchain as historical data for later querying and analysing. number of devices are replaced, the whole production line must be re-deployed and the blockchain If a large number of devices are replaced, the whole production line must be re-deployed and the must be re-established. This situation will be discussed otherwise. When a comber is successfully blockchain must be re-established. This situation will be discussed otherwise. When a comber is registered to the M2M system, the device blockchain will be changed accordingly. Figure 11 shows the successfully registered to the M2M system, the device blockchain will be changed accordingly. Figure information of the new block of the comber after its successful registration. 11 shows the information of the new block of the comber after its successful registration.

Communication blockchain spinning frame

cotton rolls

carder

roving frame

cotton bales

cleaning Device blockchain

drawing frame

spun yarn

opener

device

comb sliver

Material blockchain

Industrial internet of things platform

comber

card sliver

drawn sliver roving

material

Figure 10. Create and communication communication blockchains. blockchains. Figure 10. Create device, device, material, material, and

Symmetry 2017, 9, 193

11 of 16

Figure 10. Create device, material, and communication blockchains.

Figure 11. The information of the new block in a device blockchain. Figure 11. The information of the new block in a device blockchain.

Furthermore, similar to M2M systems, raw materials are dynamic, as well. That is to say, the forms Furthermore, similar to systems, raw materials dynamic, as well. That is toin say, the forms of materials are different in M2M each step of production. Forare example, cotton is displayed bales before of materials are different in each step of production. For example, cotton is displayed in bales beforeis opening and cleaning, and roll forms after this step. It will become cotton strips after combing. Cotton opening and cleaning, andyarn roll after formsallafter thisprocesses. step. It will cotton strips after combing. Cotton finally presented as spun of the Thebecome dynamic maintenance of raw materials can isalso finally presented as spun yarn after all of the processes. The dynamic maintenance of raw materials be achieved through blockchain technology. Industrial IoT platforms recognize the IDs of new forms can also be achieved blockchain technology. IoT platforms recognize the IDsasofanew of the material, stampthrough them with verification time, andIndustrial then add them to the material blockchain new forms of the material, stamp them with verification time, and then add them to the material blockchain block, as shown in Figure 10. The forms of materials have undergone physical changes in production, but as new block, as shown Figure 10. entire The forms of materials undergone in allathe transformation datain during their life cycle are storedhave in the blockchain.physical This willchanges be helpful production, butanalysis all the transformation dataofduring their entire cycle yarns. are stored in the blockchain. for future data and quality tracing raw materials andlife finished For example, Figure 12 This will be helpful for future data analysis and quality tracing of raw materials and finished yarns. shows that the form of the material in the block is drawn silver. For example, 12 shows that the form of the material in the block is drawn silver. Symmetry 2017, 9,Figure 193 11 of 16

Figure 12. The information of the new form of the material in the material blockchain. Figure 12. The information of the new form of the material in the material blockchain.

From the perspective of the M2M system, the access of a machine does not affect the From the perspective of devices the M2M access of a machine does not affect the communication between other withsystem, the aid the of the blockchain, and the security expansion of communication between other devices with the aid of the blockchain, and the security expansion of the devices has been implemented effectively. At the same time, the material blockchain keeps track the devices has of been implemented effectively. At the same time, the material blockchain keeps track of the changes material form, providing guarantee for the production process monitoring and the of the changes of material form, providing guarantee for the production process monitoring and the quality traceability of the material life cycle. quality traceability of the material life cycle. 5.2.2. Data Security 5.2.2. Data Security In cotton production process, machines, materials, and environment all produce enormous In cotton production process, machines, materials, and environment all produce enormous amount of real-time data. Under such large date environments, the request information of any amount of real-time data. Under such large date environments, the request information of any devices devices in the M2M system, or the operation instructions of the system itself, or how relevant in the M2M system, or the operation instructions of the system itself, or how relevant information is information is transmitted to the target device within the specified time all reflect security and transmitted to the target device within the specified time all reflect security and timeliness demand for timeliness demand for M2M systems. M2M systems. As illustrated in Figure 10, all data of machinery and materials in yarn production are stored in As illustrated in Figure 10, all data of machinery and materials in yarn production are stored in the equipment blockchain and raw material blockchain, respectively. If intercommunications happen the equipment blockchain and raw material blockchain, respectively. If intercommunications happen between devices or mutual visits occur between equipment and materials, all communication or access process data will be stored in the communication blockchain. At the same time, equipment information of the two communication sides, material information of the accessed materials will be backed up in a timely manner in the communication blockchain. A blockchain has an important feature of keeping multiple backups. If some devices have malfunctions, their own data will, thus, be backed up not only in the device blockchain, but also in its communication blockchain, and in those

Symmetry 2017, 9, 193

12 of 16

between devices or mutual visits occur between equipment and materials, all communication or access process data will be stored in the communication blockchain. At the same time, equipment information of the two communication sides, material information of the accessed materials will be backed up in a timely manner in the communication blockchain. A blockchain has an important feature of keeping multiple backups. If some devices have malfunctions, their own data will, thus, be backed up not only in the device blockchain, but also in its communication blockchain, and in those devices they have been in contact with previously. Even if the IIoT is attacked, it is difficult to tamper with the data due to the existence of multiple copies. All of these ensure the high security and timeliness of data. Figure 13 shows part of the classes created for the communication objects in our simulations. Symmetry 2017, 9, 193 12 of 16

Figure 13. Part of the classes created for the object in the C# environment. Figure 13. Part of the classes created for the object in the C# environment.

Figure 14 indicates the three cases in which a communication object (a) does not exist, (b) is Figure in which communication (a)be does not exist, is offline, and 14 (c) indicates is online. the Casethree (a) iscases that the deviceahas not registered,object cannot accessed and, (b) thus, offline, and (c) is online. Case (a) is that the device has not registered, cannot be accessed and, thus, the communication fails; Case (b) refers to that the device fails to work properly in an offline status, the fails; Casebut (b) its refers to thatdata the device fails to work in blockchain; an offline status, as acommunication result of its maintenance, historical can be accessed fromproperly the device Case as a result of its maintenance, but its historical data can be accessed from the device blockchain; (c) reflects that the device is in the working state and can communicate normally. Case (c) reflects that the device is in the working state and can communicate normally.

(a)

Figure 14 indicates the three cases in which a communication object (a) does not exist, (b) is offline, and (c) is online. Case (a) is that the device has not registered, cannot be accessed and, thus, the communication fails; Case (b) refers to that the device fails to work properly in an offline status, as a result of its maintenance, but its historical data can be accessed from the device blockchain; Case Symmetry 2017, 9, 193 13 of 16 (c) reflects that the device is in the working state and can communicate normally.

(a)

Symmetry 2017, 9, 193

13 of 16

(b)

(c) Figure Three casesininwhich whichthe thecommunication communication object object (a) and (c)(c) is online. Figure 14.14. Three cases (a) does doesnot notexist; exist;(b) (b)isisoffline; offline; and is online.

The simulation results of this case study confirm that the device has already left the M2M system, The simulation results of this case study confirm that the device has already left the M2M system, but the data stored in the blockchain can still be accessed, ensuring the communication data is secure. but the data stored in the blockchain can still be accessed, ensuring the communication data is secure. With the fundamental technology of Bitcoin, the blockchain has gained more and more attention With the fundamental technology of Bitcoin, the blockchain has gained more and more attention and has begun to be applied to various fields [30], such as medicine [31,32], economics [33,34], the and has begun to be applied to various fields [30], such as medicine [31,32], economics [33,34], Internet of Things [35,36], and software engineering [37]. We believe that there will be a wide range the Internet of Things [35,36], and software engineering [37]. We believe that there will be a wide of applications in M2M security. With the transformation and upgrading of textile enterprises and range of applications in M2M security. With the transformation and upgrading of textile enterprises the expansion of production scale, the update of production equipment will become more frequent. and the expansion of production scale, the update of production equipment will become more The extensibility of production devices of M2M in CPS will also be challenged. In terms of improving frequent. The extensibility of production devices of M2M in CPS will also be challenged. In terms of product quality and downgrading production costs, the demand for data of production devices and improving product quality and downgrading production costs, the demand for data of production production processes of textile enterprises is becoming more and more urgent. Therefore, the devices and production processes of textile enterprises is becoming more and more urgent. Therefore, requirements of data security will increase. the requirements of data security will increase. 5.2.3. Comparisons 5.2.3. Comparisons The security of M2M in the existing literature is concentrated in the field of communication. No The security of M2M in the existing literature is concentrated in the field of communication. corresponding countermeasures have been reported to solve the security problems on the M2M of a CPS. No corresponding countermeasures have been reported to solve the security problems on the M2M A secure architecture suitable for CPS applications has been presented, which is composed of of a CPS. four layers: a perception layer, a network access layer, data management, and intelligence [21]. This A secure architecture suitable for CPS applications has been presented, which is composed of four secure architecture can detect black holes, selective forwarding, repetition, delay, data alteration, layers: a perception layer, a network access layer, data management, and intelligence [21]. This secure interference, wormholes, and negligence. Unfortunately, the paper does not present a detailed architecture can detect black holes, selective forwarding, repetition, delay, data alteration, interference, implementation plan. In contrast, we present our detailed design framework together with the wormholes, and negligence. Unfortunately, the paper does not present a detailed implementation simulation in this paper. Furthermore, we apply our design of blockchain technology to secure M2M plan. In contrast, we present our detailed design framework together with the simulation in this of a CPS for cotton spinning. Our approach differs from existing relevant work on cotton spinning in the following aspects. First, there are many kinds of devices participating in cotton spinning production. Our model is able to deal with heterogeneous device interconnections. In particular, it can effectively avoid noninterconnection problems caused by the heterogeneity of devices and the amounts of calculation of the communication data encryption by using blockchain technology.

Symmetry 2017, 9, 193

14 of 16

paper. Furthermore, we apply our design of blockchain technology to secure M2M of a CPS for cotton spinning. Our approach differs from existing relevant work on cotton spinning in the following aspects. First, there are many kinds of devices participating in cotton spinning production. Our model is able to deal with heterogeneous device interconnections. In particular, it can effectively avoid non-interconnection problems caused by the heterogeneity of devices and the amounts of calculation of the communication data encryption by using blockchain technology. Second, the materials in the production process of cotton spinning always keep changing. For addressing this challenge, we design the material blockchain that can be established to track the changes of the materials and its influence on the product quality. Finally, during cotton spinning production, the data of the device itself and the data associated with the devices can be lost due to the replacement of devices. Blockchain technology can not only preserve the complete historical data, but also prevent the data from being illegally modified. As such, the data security can be effectively guaranteed. In summary, our design system on cotton spinning is able to work in a more efficient and secure way. 5.2.4. Outlook on Future Research First, the data of the devices and the production process are safely stored in the blockchain due to the non-symmetric cryptography principles. With the development of advanced mathematical techniques, the security of the algorithms will, however, become more and more vulnerable. This may cause insecurity with respect to M2M of the CPS because of the blockchain itself. Therefore, the improvement and new development of encryption algorithms to ensure the security of the blockchain is a research direction. Second, the blockchain technology in this paper was used as a method to study the security of M2M in CPS. This was performed by exploring the security expansion of production devices and data security of M2M communication. We will further explore other security issues of M2M communication of CPS using blockchain technology or other ways to address the M2M security of a CPS. 6. Conclusions In this paper, we introduced blockchain technology to the security of M2M communication of a CPS. The main features and working principles of a blockchain were described. According to the characteristics and principles of a blockchain, we have presented a design of a blockchain for M2M communication security of a CPS. As is known, an M2M communication system consists of three areas—public networks area, device areas, and private areas. We presented our design of the structures of the machine and equipment blockchain in the public network area, as well as the communication blockchain in the private area in detail. Using a case study on cotton spinning production, we have demonstrated that blockchain technology can safely expand machines and secure the communication of data between them in the cotton production process. Acknowledgments: This study was supported by the Fundamental Research Funds for the Central Universities, China, and the National Natural Science Foundation of China (51475301 and 61370229). Author Contributions: Shiyong Yin and Jinsong Bao conceived this study and wrote the paper; Yiming Zhang conceived and designed the case study; Xiaodi Huang performed the case study and wrote the paper. Conflicts of Interest: The authors declare no conflicts of interest.

References 1. 2.

Park, K.J.; Zheng, R.; Liu, X. Cyber-physical systems: Milestones and research challenges. Comput. Commun. 2012, 36, 1–7. [CrossRef] Palavicini, G., Jr.; Bryan, J.; Sheets, E.; Kline, M.; Miguel, J. Towards firmware analysis of industrial internet of things (IIoT)—Applying symbolic analysis to IIOT firmware vetting. In Proceedings of the 2nd International Conference on Internet of Things, Big Data and Security, Porto, Portugal, 24–26 April 2017; pp. 470–477.

Symmetry 2017, 9, 193

3.

4. 5. 6.

7. 8.

9. 10.

11. 12. 13.

14. 15. 16.

17.

18. 19. 20. 21. 22. 23. 24.

15 of 16

Kim, B.H.; Ahn, H.J.; Kim, J.O.; Yoo, M. Application of M2M technology to manufacturing systems. In Proceedings of the International Conference on Information and Communication Technology Convergence, Jeju, Korea, 17–19 November 2010; pp. 519–520. Burmester, M.; Magkos, E.; Chrissikopoulos, V. Modeling security in cyber–physical systems. Int. J. Crit. Infrastruct. Prot. 2012, 5, 118–126. [CrossRef] Ashibani, Y.; Mahmoud, Q.H. Cyber physical systems security: Analysis, challenges and solutions. Comput. Secur. 2017, 68, 81–97. [CrossRef] Wang, E.K.; Ye, Y.M.; Xu, X.F.; Yiu, S.M.; Hui, C.K.; Chow, K.P. Security issues and challenges for cyber physical system. In Proceedings of the IEEE/ACM International Conference on Green Computing and Communications & Cyber, Physical and Social Computing, Hangzhou, China, 18–20 December 2010; pp. 733–738. Djenouri, D.; Khelladi, L.; Badache, A.N. A survey of security issues in mobile ad hoc and sensor networks. IEEE Commun. Surv. Tutor. 2005, 7, 2–28. [CrossRef] Anand, M.; Cronin, E.; Sherr, M.; Blaze, M.; Ives, Z.; Lee, I. Security challenges in next generation cyber physical systems. In Proceedings of the Beyond SCADA: Network Embedded Control for Cyber Physical Systems, Washington, DC, USA, 16–17 March 2006. Lee, E.A. Cyber physical systems: Design challenges. In Proceedings of the 11th IEEE Symposium on Object Oriented Real-Time Distributed Computing, Washington, DC, USA, 5–7 May 2008; pp. 363–369. Cardenas, A.A.; Amin, S.; Sastry, S. Secure control: Towards survivable cyber-physical systems. In Proceedings of the 28th International Conference on Distributed Computing Systems Workshops, Beijing, China, 17–20 June 2008; pp. 495–500. Orojloo, H.; Azgomi, M.A. A game-theoretic approach to model and quantify the security of cyber-physical systems. Comput. Ind. 2017, 88, 44–57. [CrossRef] Xu, Q.; Ren, P.Y.; Song, H.B.; Du, Q.H. Security-aware waveforms for enhancing wireless communications privacy in cyber-physical systems via multipath receptions. IEEE Int. Things J. 2017. [CrossRef] Medaglia, C.; Serbanati, A. An overview of privacy and security issues in the internet of things. In Proceedings of the 20th Tyrrhenian International Work-Shop on Digital Communications, Sardinia, Italy, 18–20 September 2009; pp. 389–395. Weber, R. Internet of things-new security and privacy challenges. Comput. Law Secur. Rev. 2010, 6, 23–30. [CrossRef] Saedy, M.; Mojtahed, V. Ad hoc M2M communications and security based on 4G cellular system. Wirel. Telecommun. Symp. 2011, 1–5. [CrossRef] Tuna, G.; Kogias, D.G.; Gungor, V.C.; Gezer, C.; Ta¸skın, E.; Ayday, E. A survey on information security threats and solutions for machine to machine (M2M) communications. J. Parallel Distrib. Comput. 2017, 109, 142–154. [CrossRef] Chen, S.; Ma, M.D. A dynamic-encryption authentication scheme for M2M security in cyber-physical systems. In Proceedings of the Global Communications Conference, Atlanta, GA, USA, 9–13 December 2013; pp. 2897–2901. Inhyok, C.; Shah, Y.; Schmidt, A.U.; Leicher, A.; Meyerstein, M.V. Trust in M2M communication. IEEE Veh. Technol. Mag. 2009, 4, 69–75. He, Y.Y.; Chen, L.Q.; Wang, L.L. An improved direct anonymous attestation scheme for M2M network. Proced Eng. 2011, 15, 1481–1486. [CrossRef] Zhang, K.S.; Chen, M.Z. Research of environment monitoring platform of mine area based on M2M. Ind. Mine Autom. 2013, 39, 63–67. Chen, D.; Chang, G.R. A survey on security issues of M2M communications in cyber-physical systems. KSII Trans. Internet Inf. Syst. 2012, 6, 24–45. [CrossRef] Shojafar, M.; Cordeschi, N.; Baccarelli, E. Energy-efficient adaptive resource management for real-time vehicular cloud services. IEEE Trans. Cloud Comput. 2016. [CrossRef] Javanmardi, S.; Shojafar, M.; Shariatmadari, S.; Ahrabi, S.S. Fr Trust: A fuzzy reputation based model for trust management in semantic P2P grids. Int. J. Grid Util. Comput. 2015, 6, 57–66. [CrossRef] Du, Q.H.; Li, W.Y.; Song, H.B. Security enhancement via dynamic fountain code for wireless multicast. In Proceedings of the International Conference on Wireless Algorithms, Systems, and Applications, Guilin, China, 27 May 2017; pp. 509–521.

Symmetry 2017, 9, 193

25. 26. 27. 28. 29.

30. 31.

32. 33. 34. 35.

36. 37.

16 of 16

Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. Available online: https://bitcoin.org/bitcoin. pdf (accessed on 12 August 2017). Swan, M. Blockchain: Blueprint for a New Economy; O’Reilly Media: Sebastopol, CA, USA, 2015. Yuan, Y.; Wang, F.Y. Blockchain: The state of the art and future trends. ACTA Autom. Sin. 2016, 42, 481–494. Appel, A.W. Verification of a cryptographic primitive: Sha-256. ACM Trans. Program. Lang. Syst. 2015, 37, 7. [CrossRef] Fan, S.Q.; Wang, W.B.; Cheng, Q.F. Attacking openssl implementation of ECDSA with a few signatures. In Proceedings of the ACM Conference on Computer and Communications Security, Vienna, Austria, 24–28 October 2016; pp. 1505–1515. Li, X.Q.; Jiang, P.; Chen, T.; Luo, X.P.; Wen, Q.Y. A survey on the security of blockchain systems. Futur. Gener. Comput. Syst. 2017, in press, accepted manuscript. [CrossRef] Azaria, A.; Ekblaw, A.; Vieira, T.; Lippman, A. Medrec: Using blockchain for medical data access and permission management. In Proceedings of the 2nd International Conference on Open and Big Data, Vienna, Austria, 25–30 August 2016. Yue, X.; Wang, H.J.; Jin, D.W.; Li, M.Q.; Jiang, W. Healthcare data gateways: Found healthcare intelligence on blockchain with novel privacy risk control. J. Med. Syst. 2016, 40, 218. [CrossRef] [PubMed] Huckle, S.; Bhattacharya, R.; White, M.; Beloff, N. Internet of things, blockchain and shared economy applications. Proced Comput. Sci. 2016, 98, 461–466. [CrossRef] Hurich, P. The virtual is real: An argument for characterizing bitcoins as private property. Bank. Financ. Law Rev. 2016, 31, 573. Dorri, A.; Kanhere, S.S.; Jurdak, R.; Gauravaram, P. Blockchain for IOT security and privacy: The case study of a smart home. In Proceedings of the 2nd IEEE Percom Workshop on Security Privacy and Trust in the Internet of Things, Hawaii, HI, USA, 13–17 March 2017. Zhang, Y.; Wen, J. The IOT electric business model: Using blockchain technology for the internet of things. Peer-to-Peer Netw. Appl. 2016, 10, 1–12. [CrossRef] Xu, X.; Pautasso, C.; Zhu, L.; Gramoli, V.; Ponomarev, A.; Tran, A.B.; Chen, S. The blockchain as a software connector. In Proceedings of the 13th Working IEEE/IFIP Conference on Software Architecture, Venice, Italy, 5–8 April 2016. © 2017 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 (http://creativecommons.org/licenses/by/4.0/).

Suggest Documents