BlockDeepNet: A Blockchain-Based Secure Deep Learning for IoT Network
Abstract
:1. Introduction
- Introduction of BlockDeepNet, a Blockchain-based secure DL for IoT network that can support a secure, collaborative DL at the device level and which provides data integrity and confidentiality in the IoT network.
- Introduction of a collaborative DL mechanism in the blockchain environment to support local learning models at the device level and aggregation of these local learning models at the edge server through blockchain transactions.
- Presentation of prototype implementation and experimental evaluation to demonstrate the practicability and feasibility of the BlockDeepNet system.
2. Related Work
3. System Infrastructure of BlockDeepNet
3.1. Reconfigured IoT Network
3.2. Functional Module of BlockDeepNet
- 1)
- Local model: Each IoT device prepares a local learning model by employing DL over its own private data.
- 2)
- Smart Contract: The smart contract defines all the policies and rules for operating and governing the BlockDeepNet system. It consists of two main modules: learning and mining contracts. Through learning contract, each IoT device sends out the parameters of its local model referred to as local update to the blockchain network. The edge server downloads the learning contract for further processing wherein a collaborative DL model is trained by the edge server with the help of a local model update shared through its associated IoT devices. Finally, the parameters of the collaborative DL model referred to as global update are mined by the edge server and sent out to the blockchain network, which is called the mining contract. The corresponding global update is downloaded by each IoT device, and their local model is updated.
- 3)
- Smart contract interface: It connects an IoT device and the edge server to the smart contract. It automatically triggers smart contract operations and activities at the IoT device layer, such as IoT device registration, communication among IoT devices, sharing of local models of the IoT devices with the edge server, and IoT device requesting for collaborative DL model. In the proposed BlockDeepNet system, we employed a JavaScript-based Application Programming Interface (API) called Web3 protocol to deploy the smart contract interfaces for IoT devices. For each IoT device, programming functions are called by a smart contract interface to execute the rules defined in the smart contract.
- 4)
- Blockchain network: The BlockDeepNet system employs a private blockchain to deliver a collaborative DL task in IoT, wherein an edge server has more control on the blockchain network. We chose private blockchain since a very resource-intensive proof of work is not needed for consensus and there is less possibility of sybil attacks. Moreover, a mining task does not require an economic incentive, and a less resource-intensive mining task is provided compared to that of a public blockchain. In this sense, since IoT devices are resource constraints, they serve as blockchain and smart contract clients in our system, and a mining task is carried out only by the edge server in the blockchain network of the BlockDeepNet system. In other words, the entire task of transaction monitoring, new block creation, and propagation is done by a resource-intensive edge server. The IoT devices interact with the edge server by installing blockchain and smart contract software (blockchain application), and they are able to obtain resources and support for offloading their processing job using mechanisms such as cloud offloading.In the BlockDeepNet implementation, the deployment and distribution of a smart contract are carried out on the blockchain. The blockchain service is supported by a blockchain server where IoT devices are connected to it as a client. The blockchain server performs two key operations to support the blockchain service. First, the server collects all the transactions among the IoT devices and runs the smart contracts. It generates new blocks to support the execution of embedded code in the smart contracts. Second, the blockchain server records all the activities in the system such as information about requesting and logging devices and mining blocks. Note that the blockchain server in the BlockDeepNet system uses a lightweight consensus mechanism such as PBFT [13], which does not require proof-of-work task and supports less resource-intensive mining tasks [14].
- 5)
- Iteration and epoch: In the BlockDeepNet system, iterations refer to the multiple steps of DL tasks performed by an IoT device to obtain an effective local model. On the other hand, an epoch refers to a single operation of generating a new candidate block in the blockchain by the edge server.
4. Working Mechanism of BlockDeepNet
4.1. Collaborative DL Process
4.2. Blockchain in Collaborative DL
Algorithm 1: Collaborative DL Paradigm. | |
1: | Input: a set of IoT devices associated with edge server , : a set of data samples having a device , : total number of iterations in an epoch, : total number of epochs, : threshold error. |
2: | Output: Final model update or parameter |
3: | Process: |
4: | Initialize: local iteration , epoch , model parameter , , , to the same value for all device . |
5: | whiledo |
6: | { |
7: | Set |
8: | For each device in the do |
9: | Compute local update using Equation (3) |
10 | If t is an integer multiple of |
11: | Compute global update using Equation (4) |
12: | Set |
13: | Update |
14: | Set |
16: | Else |
17: | Set |
18: | } |
19: | End |
Algorithm 2: A Candidate Block Generation Process in BlockDeepNet | |
1: | Input: As described in Algorithm 1 |
2: | Output: global update for a device |
3: | Initialize (for epoch p = 1): i.e., Line 4 in the Algorithm 1. |
4: | Compute local update {}, i.e., Line 7 to 9 in the Algorithm 1. |
5: | Learning Contract: IoT Devices |
6: | Key generation: Public key (PK): , Secret key (SK):. |
7: | For each device in the do |
8: | Compute |
9: | Envelope |
10: | Upload to the edge server |
11: | End |
12: | Mining Contract: Edge server |
13: | Receive |
14: | For each in do |
15: | Extract and from |
16: | Verify |
17: | End |
18: | Compute weighted average using Equation (4) |
19: | Envelope |
20: | Candidate Block B |
21: | Learning Contract: IoT Devices /* Block propagation*/ |
22: | For each device in the do |
23: | Download from the edge server |
24: | Extract from |
25: | Compute |
26: | Update /* Compute global update */ |
27: | End |
5. Experimental Analysis
BlockDeepNet Testbed Setup
6. Conclusions
Author Contributions
Funding
Conflicts of Interest
References
- Rathore, S.; Park, J.H. Semi-supervised learning based distributed attack detection framework for IoT. Appl. Soft Comput. 2018, 72, 79–89. [Google Scholar] [CrossRef]
- Rathore, S.; Sharma, P.K.; Sangaiah, A.K.; Park, J.J. A hesitant fuzzy based security approach for fog and mobile-edge computing. IEEE Access 2017, 6, 688–701. [Google Scholar] [CrossRef]
- The Future of Data with the Rise of the IoT. Available online: https://www.rfidjournal.com/articles/view?17954 (accessed on 11 April 2019).
- Mohammadi, M.; Al-Fuqaha, A.; Sorour, S.; Guizani, M. Deep learning for IoT big data and streaming analytics: A survey. IEEE Commun. Surv. Tutor. 2018, 20, 2923–2960. [Google Scholar] [CrossRef]
- Park, J.H. Practical approaches based on deep learning and social computing. J. Inf. Process. Syst. 2018, 14, 1–5. [Google Scholar]
- Zhang, Q.; Yang, L.T.; Chen, Z.; Li, P.; Deen, M.J. Privacy-preserving double-projection deep computation model with crowdsourcing on cloud for big data feature learning. IEEE Internet Things J. 2018, 5, 2896–2903. [Google Scholar] [CrossRef]
- Abeshu, A.; Chilamkurti, N. Deep learning: The frontier for distributed attack detection in fog-to-things computing. IEEE Commun. Mag. 2018, 56, 169–175. [Google Scholar] [CrossRef]
- Li, H.; Ota, K.; Dong, M. Learning IoT in edge: Deep learning for the internet of things with edge computing. IEEE Netw. 2018, 32, 96–101. [Google Scholar] [CrossRef]
- Wang, Z. Deep learning-based intrusion detection with adversaries. IEEE Access 2018, 6, 38367–38384. [Google Scholar] [CrossRef]
- Edge, M.L. Deep Learning on IoT Devices. Available online: https://conferences.oreilly.com/oscon/oscon-or-2018/public/schedule/detail/67199 (accessed on 11 April 2019).
- Tang, J.; Sun, D.; Liu, S.; Gaudiot, J.L. Enabling deep learning on IoT devices. Computer 2017, 50, 92–96. [Google Scholar] [CrossRef]
- Rathore, S.; Kwon, B.W.; Park, J.H. BlockSecIoTNet: Blockchain-based decentralized security architecture for IoT network. J. Netw. Comput. Appl. 2019, 143, 167–177. [Google Scholar] [CrossRef]
- Castro, M.; Barbara, L. Practical Byzantine fault tolerance. OSDI 1999, 99, 173–186. [Google Scholar]
- Kim, H.W.; Jeong, Y.S. Secure authentication-management human-centric scheme for trusting personal resource information on mobile cloud computing with blockchain. Hum. Cent. Comput. Inf. Sci. 2018, 8, 1–11. [Google Scholar] [CrossRef]
- Johnsonm, R.; Zhang, T. Accelerating Stochastic Gradient Descent Using Predictive Variance Reduction. In Proceedings of the NIPS, Lake Tahoe, NV, USA, 5–10 December 2013; pp. 1–10. [Google Scholar]
- LeCun, Y.; Bengio, Y.; Hinton, G. Deep learning. Nature 2015, 521, 436–444. [Google Scholar] [CrossRef] [PubMed]
- Rathore, S.; Ryu, J.H.; Sharma, P.K.; Park, J.H. DeepCachNet: A Proactive Caching Framework Based on Deep Learning in Cellular Networks. IEEE Netw. 2019, 33, 130–138. [Google Scholar] [CrossRef]
- Sharma, P.K.; Rathore, S.; Park, J.H. DistArch-SCNet: Blockchain-based distributed architecture with li-fi communication for a scalable smart city network. IEEE Consum. Electron. Mag. 2018, 7, 55–64. [Google Scholar] [CrossRef]
- Fouque, P.A.; Poupard, G.; Stern, J. Sharing Decryption in the Context of Voting or Lotteries. In Proceedings of the International Conference on Financial Cryptography; Springer: Berlin/Heidelberg, Germany, 2000; pp. 90–104. [Google Scholar]
- Everingham, M.; Eslami, S.A.; Van Gool, L.; Williams, C.K.; Winn, J.; Zisserman, A. The pascal visual object classes challenge: A retrospective. Int. J. Comput. Vis. 2015, 111, 98–136. [Google Scholar] [CrossRef]
- Hazay, C.; Mikkelsen, G.L.; Rabin, T.; Toft, T. Efficient RSA Key Generation and Threshold Paillier in the Two-Party Setting. In Proceedings of the Cryptographers’ Track at the RSA Conference; Springer: Berlin/Heidelberg, Germany, 2012; pp. 313–331. [Google Scholar] [Green Version]
Research Challenges | Without BlockDeepNet | With BlockDeepNet |
---|---|---|
Single point of failure | Leverages on centralized architecture, wherein a centralized server has full control over DL operations (i.e., raw data collection, pre-processing, features extraction, and analysis) that produces overwhelming, sometimes unbearable, load to the single centralized servers and results in single-point failure. | Employs blockchain technology to provide a secure sharing of resources and data among all the member nodes in the IoT network that distributes load of the DL operation in a decentralized manner and overcomes a central control dependency. |
Privacy leak | Unable to preserve the full privacy of the data contributors (IoT devices), since the IoT devices are excluded from DL process as the data for learning process are collected without the permission of device owners, which may cause a privacy leak. | Each IoT device participates in the DL operation and delivers a local model update by employing the DL over its own private data that protect IoT device from a significant privacy leak. |
Training data insufficiency | Due to the privacy issue, some data contributors do not share their data to the server resulting in difficulty in accumulating enough training data for the distributed DL model that lead to a weak DL model with low accuracy. | Instead of sharing the data to the server, each IoT device shares the local update (gradient parameters, learning model’s weight) of its local model that overcomes the issue of training data insufficiency and provides an accurate global model to each IoT device. |
Data poisoning attack | Any of the entities in the IoT network may pose adversarial behavior in the distributed DL process, e.g., a malicious server can implant misleading training data deliberately that may disrupt the distributed DL process and wrongly update the model parameters into distributed DL models. | Each entity in the IoT network communicates securely via blockchain transaction, where the learning and mining contracts provide two security requisites, i.e., confidentiality and secret sharing with the help of additively homomorphic encryption and decryption. |
© 2019 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/).
Share and Cite
Rathore, S.; Pan, Y.; Park, J.H. BlockDeepNet: A Blockchain-Based Secure Deep Learning for IoT Network. Sustainability 2019, 11, 3974. https://doi.org/10.3390/su11143974
Rathore S, Pan Y, Park JH. BlockDeepNet: A Blockchain-Based Secure Deep Learning for IoT Network. Sustainability. 2019; 11(14):3974. https://doi.org/10.3390/su11143974
Chicago/Turabian StyleRathore, Shailendra, Yi Pan, and Jong Hyuk Park. 2019. "BlockDeepNet: A Blockchain-Based Secure Deep Learning for IoT Network" Sustainability 11, no. 14: 3974. https://doi.org/10.3390/su11143974
APA StyleRathore, S., Pan, Y., & Park, J. H. (2019). BlockDeepNet: A Blockchain-Based Secure Deep Learning for IoT Network. Sustainability, 11(14), 3974. https://doi.org/10.3390/su11143974