Blockchain-Based Distributed Computing Consistency Verification for IoT Mobile Applications
Abstract
:1. Introduction
- We propose a novel blockchain-based distributed and lightweight data consistency verification model (BDCA), which provides robust data security and privacy guarantees. Furthermore, we demonstrate that BDCA can effectively achieve cross-chain data interaction consistency verification with minimal overhead through experimental evaluations.
- We design a batch verification dynamic Merkle hash tree (BV-MHT), which supports batch verification and dynamic data updates. Furthermore, we introduce the concept of the auxiliary verification information form (AVF) to locate the position of the stored data and improve batch validation efficiency.
- We construct random challenges and store the audit logs in the audit chain () for future checking, enabling efficient and reliable cross-chain data consistency verification while preserving the transparency and tamper-proof feature of the blockchain.
2. Related Work
2.1. Cross-Chain Technologies and Applications
2.2. Dynamic Data Integrity Auditing Scheme
2.3. Gamma Signature Scheme
2.4. Merkle Hash Tree
3. Preliminaries
3.1. Advanced Gamma Multi-Signature Scheme
- Setup: take a security parameter n as the input, output a public parameter , where is a group of prime order q and g is a generator of .
- KenGen: take a public parameter as the input, randomly choose , compute , and output
- KeyAgg: take the public key as the input, compute the aggregated public key , and output .
- Sign: take the message m, an aggregation commitment , and an aggregation public key as the input, and output a signature .
- Verify: take the message m, aggregated commitment , and as the input, and output to indicate whether the message is invalid or valid.
3.2. Bilinear Map
- Bilinearity: For any , , and , .
- Non-degeneracy: For any and , if only if or .
- Computability: There exists an efficiently computable homomorphism between and .
3.3. Mathematical Assumptions
- Discrete logarithm (DL) assumption. Given as the input, it is computationally infeasible to compute a. That is, for any PPT adversary , the probability of solving the DL problem is negligible in .
- Computational Diffie–Hellman (CDH) assumption. Given as the input, it is computationally infeasible to compute . That is, for any PPT adversary , the probability of solving the CDH problem is negligible in .
4. Models
5. The Proposed BDCA
5.1. System Model
- IoT device (): is an entity that is responsible for processing and storing the original data M, and initiating data update requests to the source chain (). To ensure the security and privacy of the data, preprocesses M into blinded data before generating authentication tags for . Once has generated the authentication tags for , it transfers the blinded data and corresponding tags to the audit chain () for secure storage. Within the BDCA model, there are two distinct entities, namely and , which are deployed within the source chain () and target chain (), respectively.
- Source chain (): is an entity that serves as the primary repository for data received from and facilitates the exchange of data with the target chain (). Upon receiving data update requests from , is responsible for updating the data accordingly and synchronizing the data updates with to ensure consistency across the two chains. In addition, is programmed to respond to audit challenges issued by the audit chain () by generating an audit proof that verifies the consistency and accuracy of the data stored within the system. Once the audit proof is generated, sends it to for data consistency verification, ensuring that the data remains secure and reliable.
- Target chain (): is an entity that is responsible for receiving data from the source chain () and facilitates data exchange between the two chains. Upon receiving data update requests from , updates the data as required, ensuring that the data remains consistent across both chains. Like , also responds to audit challenges from the audit chain () by generating storage proofs that verify the integrity and accuracy of the data stored within the system. Once the storage proof is generated, sends it to for data consistency verification, ensuring that the data remains secure and reliable.
- Audit chain (): is an entity that is established and overseen by national regulatory authorities. is responsible for conducting data consistency verification between the source chain () and the target chain () based on the audit proof and storage proof received from and , respectively. Through its advanced data consistency verification protocols, ensures that the data exchanged between and remains accurate and consistent, preventing any unauthorized modifications or tampering.
5.2. Threat Model
- Tampering attacks: The transferred data , corresponding tags, and data update requests may be tampered with or forged by an adversary in the process of cross-chain interaction.
- Privacy leakage attacks: The content of the transferred data , corresponding tags, and data update requests may be leaked and expose the private information of in the process of cross-chain interaction.
- Audit inconsistency attacks: The may pretend to forge a storage proof to pass the data consistency verification of to conceal its incomplete data storage or updates.
5.3. Design Goals
- Consistency: BDCA can ensure the consistency of the data interaction between and and when modifies or does not update the data as requested, it cannot pass the consistency verification by .
- Privacy: BDCA can ensure the privacy of the transferred data. and cannot gain any private information of in the process of cross-chain data interaction.
- Dynamic operations: BDCA can allow to perform data update operations at will with low overhead, including insertions, deletions, and modifications.
- Security: BDCA can ensure that the data updates operations, including insertions, deletions, and modifications, are conducted only by the owner of the data.
6. The Proposed BDCA
6.1. System Initialization
- Upon receiving a security parameter , each in BDCA selects four random large prime p, q, , and . Meanwhile, computes RSA modulus and selects a generator g of , where , , and is a multiplicative cyclic group of quadratic residues modulo N.
- BDCA then selects a hash function , a pseudo-random permutation , and a pseudo-random function (PRF) .
- BDCA then selects a security random large prime e as the public key and computes the private key d, where , u is a security random large prime, and .
- BDCA then generates a public key and private key pair and outputs the public parameters .
6.2. Data Processing
- Given a original data file , splits M into k blocks, represented as . Note that if the last block is not the same size as the other blocks, pads 0 at the end of the last block. In order to protect the security and privacy of M, applies a blind signature technique by creating a blinded version of M, denoted as , with , where is the unique identification of M, is a random number, and is a one-way hash function. Additionally, calculates a verification value , where g is a generator of a cyclic group , and N is the order of .
- constructs the batch verification Merkle hash tree (BV-MHT) based on the processed data to facilitate efficient and secure data auditing. In BV-MHT, each node stores a tuple (), which represents the position information of the node in BV-MHT. Specifically, if the node is the i-th leaf node , is set to 1 and . If the node is a non-leaf node , stores the number of the leaf nodes that can reach from the left to right and , where and denote the left and right child nodes of [37]. If the node is the left child node of its parent node, is set to 0; the node is the right child node of its parent node, is set to 1; the node is the root of the BV-MHT, is set to 2. The process of constructing BV-MHT is shown in Figure 2 and the nodes are verified simultaneously.
- constructs the auxiliary verification information form (AVF) to implement the batch verification and accelerate the process of batch verification. In traditional MHT, the i-th leaf node can only be verified one by one with its siblings on the path from the i-th leaf node to the root. For instance, if the nodes want to be verified simultaneously, they need to generate the auxiliary verification information , , and , respectively. The node will be retrieved twice, which will cause more overhead. Furthermore, as the number of verified nodes simultaneously increases, the number of duplicate retrieval nodes increase. From the perspective of saving verification overhead, we introduce a concept auxiliary verification information form (AVF) in BV-MHT, as an example is shown in Table 2, the nodes can be verified simultaneously by retrieving the AVF, where r is the number of the nodes verified simultaneously, t is the max layer of the leaf nodes in BV-MHT, and is a point that points to the different line in AVF. The specific procedures of constructing AVF are shown in Algorithm 1. Finally, invokes Algorithm 1 to generate an AVF for the last leaf node .
- generates the authenticated tags of the transferred data with Equation (1) and uploads the datasets , AVF to for storage.
- After receiving the datasets from , generates a data-uploading transaction and sends to :
Algorithm 1 Constructing the auxiliary verification information form (AVF). |
|
6.3. Data Uploading
- invokes Algorithm 2 to encrypt and obtain the signature (). Then, sends the signature (), , and to .
Algorithm 2 Advanced gamma multi-signature scheme. |
|
- computes and .
- verifies the correctness of the signature () with Equation (2). If the equation holds, the signature is valid and continues to conduct the following verification; otherwise the signature is invalid, and rejects to store .
- verifies the correctness of by checking whether the hash value based on the datasets is equal to of the node . If the verification passes, continues to conduct the following verification; otherwise, is invalid, and rejects to store .
- invokes Algorithm 3 to verify the correctness of AVF. If the algorithm outputs 0, rejects to storage of ; otherwise, stores and returns its acceptance and signature of . It is worth noting that we assume that is a size set. For any element , the set operations ’±’ of are described as follows:
6.4. Data Updating
- calculates and .
- invokes Algorithm 1 to generate an auxiliary verification information form AVF.
- modifies the original node into and updates the BV-MHT by recalculating all the nodes on the path from the node to the root, generating a new hash root .
- generates a data update request and sends it to .
- verifies the request with Algorithm 3 and updates the data as the request , generating a new transaction linked to the original blockchain network. Then, generates a data update transaction and encrypts with AGMS in a similar process in Section 6.3 and uploads to .
- After receiving the transaction , first verifies the correctness and validity of the received transaction in a similar way in Section 6.3. If the verification is valid, updates the BV-MHT as requested; otherwise, rejects to update the transaction.
Algorithm 3 Batch verification. |
|
- generates the data updates request and updates the BV-MHT on the path from the node to the root. Then, sends it to .
- verifies and updates the BV-MHT in a similar way as above, and generates a data update transaction encrypted with AGMS. Then, is sent to for data updating.
- updates the data in a similar way as above.
- generates the data updates request and updates the BV-MHT on the path from the node to the root, where . Then, sends it to .
- verifies and updates the BV-MHT in a similar way as above, and generates a data update transaction encrypted with AGMS. Then, is sent to for data updating.
- updates the data in a similar way as above.
6.5. Data Auditing
- constructs a random challenge:
- sends the challenge to and .
- Upon receiving the challenge from , selects a secret random value and generates a storage proof:
- sends the proof and its signature used to provide non-repudiation to for consistency verification.
- generates an audit proof and sends the proof with its signature to for consistency verification.
- Upon receiving the proof from and . calculates the verification information based on the :
- AC checks the signature of and , then verifies the correctness of with Equation (4). If the equation verification fails, may not store the data as required and notifies about the exceptional situation; otherwise, generates an audit log and stores on the blockchain for further checking logs.
7. Security Analysis
8. Performance Analysis
8.1. AGMS Execution Overhead Evaluation
8.2. Computation Overhead Evaluation
8.3. Communication Overhead Evaluation
8.4. The Probability of Data Consistency Guarantees
9. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Arasteh, H.; Hosseinnezhad, V.; Loia, V.; Tommasetti, A.; Troisi, O.; Shafie-khah, M.; Siano, P. Iot-based smart cities: A survey. In Proceedings of the IEEE 16th International Conference on Environment and Electrical Engineering (EEEIC), Florence, Italy, 7–10 June 2016; pp. 1–6. [Google Scholar]
- Devi, Y.U.; Rukmini, M. IoT in connected vehicles: Challenges and issues—A review. In Proceedings of the International Conference on Signal Processing, Communication, Power and Embedded System (SCOPES), Paralakhemundi, India, 3–5 October 2016; pp. 1864–1867. [Google Scholar]
- Gandhi, D.A.; Ghosal, M. Intelligent healthcare using IoT: A extensive survey. In Proceedings of the 2018 Second International Conference on Inventive Communication and Computational Technologies (ICICCT), Coimbatore, India, 20–21 April 2018; pp. 800–802. [Google Scholar]
- Taherdoost, H. Blockchain-Based Internet of Medical Things. Appl. Sci. 2023, 13, 1287. [Google Scholar] [CrossRef]
- Sadeq, N.; Hamzeh, Z.; Nassreddine, G.; ElHassan, T. The impact of Blockchain technique on trustworthy healthcare sector. Mesopotamian J. CyberSecurity 2023, 2023, 105–115. [Google Scholar]
- Qiao, R.; Zhu, S.; Wang, Q.; Qin, J. Optimization of dynamic data traceability mechanism in Internet of Things based on consortium blockchain. Int. J. Distrib. Sens. Netw. 2018, 14, 1550147718819072. [Google Scholar] [CrossRef] [Green Version]
- Cheng, J.; Li, Y.; Yuan, Y.; Zhang, B.; Xu, X. A Blockchain-Based Trust Model for Uploading Illegal Data Identification. Appl. Sci. 2022, 12, 9657. [Google Scholar] [CrossRef]
- Shafagh, H.; Burkhalter, L.; Hithnawi, A.; Duquennoy, S. Towards blockchain-based auditable storage and sharing of IoT data. In Proceedings of the 2017 on Cloud Computing Security Workshop, Dallas, TX, USA, 3 November 2017; pp. 45–50. [Google Scholar]
- Wang, C.; Bi, Z.; Da Xu, L. IoT and cloud computing in automation of assembly modeling systems. IEEE Trans. Ind. Inform. 2014, 10, 1426–1434. [Google Scholar] [CrossRef]
- Aazam, M.; Khan, I.; Alsaffar, A.A.; Huh, E.N. Cloud of Things: Integrating Internet of Things and cloud computing and the issues involved. In Proceedings of the 2014 11th International Bhurban Conference on Applied Sciences & Technology (IBCAST), Islamabad, Pakistan, 14–18 January 2014; pp. 414–419. [Google Scholar]
- Mekala, M.S.; Viswanathan, P. A Survey: Smart agriculture IoT with cloud computing. In Proceedings of the 2017 International Conference on Microelectronic Devices, Circuits and Systems (ICMDCS), Vellore, India, 10–12 August 2017; pp. 1–7. [Google Scholar]
- AlShamsi, M.; Al-Emran, M.; Shaalan, K. A systematic review on blockchain adoption. Appl. Sci. 2022, 12, 4245. [Google Scholar] [CrossRef]
- Johar, S.; Ahmad, N.; Asher, W.; Cruickshank, H.; Durrani, A. Research and applied perspective to blockchain technology: A comprehensive survey. Appl. Sci. 2021, 11, 6252. [Google Scholar] [CrossRef]
- Chen, R.; Li, Y.; Yu, Y.; Li, H.; Chen, X.; Susilo, W. Blockchain-based dynamic provable data possession for smart cities. IEEE Internet Things J. 2020, 7, 4143–4154. [Google Scholar] [CrossRef]
- Hashim, A.N. Blockchain technology, methodology behind it, and its most extensively used encryption techniques. Al-Salam J. Eng. Technol. 2023, 2, 140–151. [Google Scholar]
- Vaigandla, K.K.; Karne, R.; Siluveru, M.; Kesoju, M. Review on Blockchain Technology: Architecture, Characteristics, Benefits, Algorithms, Challenges and Applications. Mesopotamian J. CyberSecurity 2023, 2023, 73–85. [Google Scholar]
- Hope-Bailie, A.; Thomas, S. Interledger: Creating a standard for payments. In Proceedings of the 25th International Conference Companion on World Wide Web, Montreal, QC, Canada, 11–15 May 2016; pp. 281–282. [Google Scholar]
- Back, A.; Corallo, M.; Dashjr, L.; Friedenbach, M.; Maxwell, G.; Miller, A.; Poelstra, A.; Timón, J.; Wuille, P. Enabling Blockchain Innovations with Pegged Sidechains. 2014. Available online: http://www.cpensciencereview.com/papers/123/enablingblockchain-innov (accessed on 18 May 2023).
- Poon, J.; Dryja, T. The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments. 2016. Available online: https://www.bitcoinlightning.com (accessed on 18 May 2023).
- Ateniese, G.; Burns, R.; Curtmola, R.; Herring, J.; Kissner, L.; Peterson, Z.; Song, D. Provable data possession at untrusted stores. In Proceedings of the 14th ACM Conference on Computer and Communications Security, Alexandria, VA, USA, 31 October–2 November 2007; pp. 598–609. [Google Scholar]
- Jiang, Y.; Wang, C.; Wang, Y.; Gao, L. A cross-chain solution to integrating multiple blockchains for IoT data management. Sensors 2019, 19, 2042. [Google Scholar] [CrossRef] [Green Version]
- Tian, H.; Xue, K.; Luo, X.; Li, S.; Xu, J.; Liu, J.; Zhao, J.; Wei, D.S. Enabling cross-chain transactions: A decentralized cryptocurrency exchange protocol. IEEE Trans. Inf. Forensics Secur. 2021, 16, 3928–3941. [Google Scholar] [CrossRef]
- Xiong, A.; Liu, G.; Zhu, Q.; Jing, A.; Loke, S.W. A notary group-based cross-chain mechanism. Dig. Commun. Netw. 2022, 8, 1059–1067. [Google Scholar] [CrossRef]
- Herlihy, M.; Liskov, B.; Shrira, L. Cross-chain deals and adversarial commerce. arXiv 2019, arXiv:1905.09743. [Google Scholar] [CrossRef]
- Li, Y.; Weng, J.; Li, M.; Wu, W.; Weng, J.; Liu, J.N.; Hu, S. ZeroCross: A sidechain-based privacy-preserving Cross-chain solution for Monero. J. Parallel Distrib. Comput. 2022, 169, 301–316. [Google Scholar] [CrossRef]
- Ateniese, G.; Di Pietro, R.; Mancini, L.V.; Tsudik, G. Scalable and efficient provable data possession. In Proceedings of the 4th International Conference on Security and Privacy in Communication Netowrks, Istanbul, Turkey, 22–25 September 2008; pp. 1–10. [Google Scholar]
- Tian, H.; Chen, Y.; Chang, C.C.; Jiang, H.; Huang, Y.; Chen, Y.; Liu, J. Dynamic-hash-table based public auditing for secure cloud storage. IEEE Trans. Serv. Comput. 2015, 10, 701–714. [Google Scholar] [CrossRef]
- Rao, L.; Zhang, H.; Tu, T. Dynamic outsourced auditing services for cloud storage based on batch-leaves-authenticated Merkle hash tree. IEEE Trans. Serv. Comput. 2017, 13, 451–463. [Google Scholar] [CrossRef]
- Shen, J.; Shen, J.; Chen, X.; Huang, X.; Susilo, W. An efficient public auditing protocol with novel dynamic structure for cloud data. IEEE Trans. Inf. Forensics Secur. 2017, 12, 2402–2415. [Google Scholar] [CrossRef]
- Yao, A.C.C.; Zhao, Y. Online/offline signatures for low-power devices. IEEE Trans. Inf. Forensics Secur. 2012, 8, 283–294. [Google Scholar] [CrossRef]
- Schnorr, C.P. Efficient signature generation by smart cards. J. Cryptol. 1991, 4, 161–174. [Google Scholar] [CrossRef] [Green Version]
- Merkle, R.C. A certified digital signature. In Proceedings of the Conference on the Theory and Application of Cryptology; Springer: Berlin/Heidelberg, Germany, 1989; pp. 218–238. [Google Scholar]
- Li, H.; Lu, R.; Zhou, L.; Yang, B.; Shen, X. An efficient merkle-tree-based authentication scheme for smart grid. IEEE Syst. J. 2013, 8, 655–663. [Google Scholar] [CrossRef]
- Xiao, Y.; Zhang, P.; Liu, Y. Secure and efficient multi-signature schemes for fabric: An enterprise blockchain platform. IEEE Trans. Inf. Forensics Secur. 2020, 16, 1782–1794. [Google Scholar] [CrossRef]
- Schnorr, C.P. Efficient identification and signatures for smart cards. In Proceedings of the Advances in Cryptology—CRYPTO’89; Proceedings 9. Springer: Berlin/Heidelberg, Germany, 1990; pp. 239–252. [Google Scholar]
- Wang, W.; Zhang, Z.; Wang, G.; Yuan, Y. Efficient cross-chain transaction processing on blockchains. Appl. Sci. 2022, 12, 4434. [Google Scholar] [CrossRef]
- Erway, C.C.; Küpçü, A.; Papamanthou, C.; Tamassia, R. Dynamic provable data possession. ACM Trans. Inf. Syst. Secur. (TISSEC) 2015, 17, 1–29. [Google Scholar] [CrossRef] [Green Version]
- Zhang, Y.; Xu, C.; Lin, X.; Shen, X. Blockchain-based public integrity verification for cloud storage against procrastinating auditors. IEEE Trans. Cloud Comput. 2019, 9, 923–937. [Google Scholar] [CrossRef] [Green Version]
- Diffie, W.; Hellman, M.E. New directions in cryptography. In Democratizing Cryptography: The Work of Whitfield Diffie and Martin Hellman; Association for Computing Machinery: New York, NY, USA, 2022; pp. 365–390. [Google Scholar]
- Bellare, M.; Neven, G. Multi-signatures in the plain public-key model and a general forking lemma. In Proceedings of the 13th ACM conference on Computer and Communications Security, Alexandria, VA, USA, 30 October–3 November 2006; pp. 390–399. [Google Scholar]
- Lynn, B. The Pairing-Based Cryptography (PBC) Library. 2013. Available online: http://crypto.stanford.edu/pbc (accessed on 18 May 2023).
- Xiong, H.; Jin, C.; Alazab, M.; Yeh, K.H.; Wang, H.; Gadekallu, T.R.; Wang, W.; Su, C. On the design of blockchain-based ECDSA with fault-tolerant batch verification protocol for blockchain-enabled IoMT. IEEE J. Biomed. Health Inform. 2021, 26, 1977–1986. [Google Scholar] [CrossRef]
- Abdul-Sada, H.H.; Rabee, F. The Genetic Algorithm Implementation in Smart Contract for the Blockchain Technology. Al-Salam J. Eng. Technol. 2023, 2, 37–47. [Google Scholar]
- Hohenberger, S.; Waters, B. Synchronized aggregate signatures from the RSA assumption. In Proceedings of the Advances in Cryptology–EUROCRYPT 2018: 37th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Tel Aviv, Israel, 29 April–3 May 2018; Proceedings, Part II. Springer: Berlin/Heidelberg, Germany, 2018; pp. 197–229. [Google Scholar]
- Syta, E.; Tamas, I.; Visher, D.; Wolinsky, D.I.; Jovanovic, P.; Gasser, L.; Gailly, N.; Khoffi, I.; Ford, B. Keeping authorities “honest or bust” with decentralized witness cosigning. In Proceedings of the 2016 IEEE Symposium on Security and Privacy (SP), San Jose, CA, USA, 22–26 May 2016; pp. 526–545. [Google Scholar]
- Boneh, D.; Drijvers, M.; Neven, G. Compact multi-signatures for smaller blockchains. In Proceedings of the Advances in Cryptology–ASIACRYPT 2018: 24th International Conference on the Theory and Application of Cryptology and Information Security, Brisbane, QLD, Australia, 2–6 December 2018; pp. 435–464. [Google Scholar]
- Drijvers, M.; Edalatnejad, K.; Ford, B.; Kiltz, E.; Loss, J.; Neven, G.; Stepanovs, I. On the security of two-round multi-signatures. In Proceedings of the 2019 IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA, 20–22 May 2019; pp. 1084–1101. [Google Scholar]
- Armknecht, F.; Bohli, J.M.; Karame, G.O.; Liu, Z.; Reuter, C.A. Outsourced proofs of retrievability. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, Scottsdale, AZ, USA, 3–7 November 2014; pp. 831–843. [Google Scholar]
Notations | Descriptions |
---|---|
M | The original data |
The blinded data | |
The updated data | |
d | A public key of |
A private key of | |
n | System security parameter |
Data uploading transaction | |
Data updating request transaction | |
The leader of all the signers in blockchain | |
The IoT device of | |
The IoT device of | |
The threshold number of signers |
AVI | |||
---|---|---|---|
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Zhao, J.; Zhang, Y.; Jiang, J. Blockchain-Based Distributed Computing Consistency Verification for IoT Mobile Applications. Appl. Sci. 2023, 13, 7762. https://doi.org/10.3390/app13137762
Zhao J, Zhang Y, Jiang J. Blockchain-Based Distributed Computing Consistency Verification for IoT Mobile Applications. Applied Sciences. 2023; 13(13):7762. https://doi.org/10.3390/app13137762
Chicago/Turabian StyleZhao, Jiahao, Yushu Zhang, and Jiajia Jiang. 2023. "Blockchain-Based Distributed Computing Consistency Verification for IoT Mobile Applications" Applied Sciences 13, no. 13: 7762. https://doi.org/10.3390/app13137762