Proposed Model for Secured Data Storage in Decentralized Cloud by Blockchain Ethereum
Abstract
:1. Introduction
Research Contributions
- Identify the breadth of blockchain technology and its application in cloud computing;
- Assess the security implications of blockchain technology’s use in cloud computing;
- Examine the most recent solutions in terms of security by ensuring the confidentiality, integrity, and authenticity of public information.
2. Cloud Computing and Blockchain Technology Background
2.1. Cloud Computing
2.2. Blockchain Ethereum Technology
Ethereum Virtual Machine (EVM)
2.3. Blockchain Technologies in Secure Cloud Computing
- Integrating blockchain with the cloud facilitates enterprise networks such as storage, replication, and access to transactional databases.
- Integrating security ideas into cloud tasks, user, and data management.
2.4. Decentralized Cloud Storage
3. Literature Review
- Agreement on the blockchain
- Transactional protection
- Security of the wallet
- Security of software
- The current impediment to providing a model of secure storing data in cloud computing by utilizing blockchain Ethereum is, according to the assessment, still in the initial stages.
- One of the primary challenges that researchers confront in developing a viable system for assessment is access control.
- To reward the data, transmission between multi-party calculations interrupts networks and causes unanticipated monetary loss. The creation of false accounts also reduces the system’s scalability.
- A need for a secure and workable model to mitigate real-life complications for uninterrupted services.
4. Proposed System
4.1. EVM-ECC Model
- MetaMask is a cryptocurrency wallet that uses software to interface with the Ethereum network. It gives users access to their Ethereum wallet via a browser extension or mobile app, which they can connect with decentralized apps.
- Ethereum is a smart contract with a currency, Ether (ETH), and a programming language, Solidity. Ethereum, as a blockchain network, is a decentralized public ledger used for transaction verification and recording.
- The Interplanetary File System (IPFS) is a protocol and peer-to-peer network that allows data to be stored and shared in a distributed file system. IPFS employs data to identify each file in a facility that connects various computing devices.
- Elliptic-curve cryptography (ECC) is a public-key encryption technique based on the integral equation of elliptic curves over finite fields. Because ECC employs fewer keys and signatures than RSA for the same degree of security and enables rapid key generation, key agreement, and signatures, it is considered a natural contemporary successor to the RSA cryptosystem.
4.1.1. Architecture
Phase 1: Encryption and Decryption
- Key Generation: This is the most crucial step in which an algorithm generates both public and private keys
- i.
- Encryption: (Input: Document, Output: Encrypted blocks)
- Choose the document to be uploaded
- Divide documents into data blocks.
- Encrypt each block with a secret key
- Generate the tag index for each block.
- Upload the data into the blockchain Ethereum.
- ii.
- Decryption: (Input: Encrypted Document, Output: Decrypted Document
- Select the document from Ethereum storage by the pool of peers
- Retrieve all blocks of that file from the pool of peers(miners).
- Decrypt each block with the secret key Sk
- Combine all blocks and download them as a single file.
- 2.
- Phase 2: Uploading Document
- There is enough space on the network to store files.
- The user has a sufficient wallet balance to pay the peers.
- 3.
- Phase 3: Document storage across several peers
4.2. Ethereum
4.2.1. Remix: Smart Contracts Editor
- It shows source files as tabs;
- In the garbage, compilation warnings and error messages are shown;
- Remix constantly stores the existing file (5s after the last changes)
pragma solidity >-0.7.0 <0.9.0; /** * @title Storage * @dev Store & retrieve value in a variable */ contract Storage { unit256 number; /** * @dev Storage value in variable * @param num value to store */ function store(uint256 num) public { number - numb; } /** * @dev Return value * @return value of ‘number’ */ function retrieve() public view returns (uint256){ return number; } } |
4.2.2. Solidity: Smart Contracts Language
4.3. Proposed System Model
5. Implementation and Results
5.1. Encryption and Decryption Using ECC Algorithm
- Work mechanism: Generate two keys, the pair (public and private keys) of the sender: generated and saved at the beginning for use each time the text will be encrypted or decrypted (the public key will be used to encrypt the file and the private key will be used to decrypt the file).
- 2.
- Reading the file will be performed by creating a file dialog to choose a file to be encrypted (the file in .docx format).
- 3.
- The encrypted file is saved as a text file, where its content can only be obtained by knowing the private key corresponding to the public key that was used to encrypt.
- 4.
- For decryption, the encrypted file is selected like in the previous stage via file dialog, and then decryption is done by using the private key.
5.2. Create the Smart Contract
- Define The Version: pragmasolidity^0.4.17;
- Define two variables to identify the account that sent the request and the hash of each piece of file.
- 3.
- Define the constructer to set the account: Create an address owner to store the address of the person who deployed the smart contract to Ethereum. When the constructor runs, it may utilize the owner’s address in the modifier.
- 4.
- Define three functions to receive the account balance and to send and receive hashes.
- 5.
- Compile using Remix by clicking the deploy button after developing a smart contract; it can be tested in a simulated environment. The last step is deploying the smart contract on the web3 provider. After compiling it without errors, we can call the smart contract MetaMsk to be automatically opened to accept the transaction. Then, we will save the contract address and Application Binary Interface (ABI).
5.3. Metamask and Ganache (Create Address and Get ETH)
- 1.
- Open Ganache to get an account: Figure 7 shows the accounts and private key to use a Ganache account.
- 2.
- Open MetaMask and then choose to import an account and input one private key from an account on Ganache, as shown in Figure 8:
- 3.
- 100 ETH added to our account, as shown in Figure 9:
5.4. Uploading Cithered File on Ethereum Using IPFS
- 1.
- The first step was to install the dependencies (using npm on NodeJS) for this library, which was needed to complete our project work.
- 2.
- Next, we defined our smart contract address and ABI threat and we protected them against before developing our smart contract for use.
- 3.
- Building the application:
- Set the state variables:
- Set the state variables:
- Uploading the buffered file to IPFS to block it and get block hash:
- Getting the user account and connecting it with the smart contract:
- Sending the file to IPFS and generating hashes:
- Sending the file blocks to Ethereum:
5.5. Results
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Atieh, A.T. The Next Generation Cloud technologies: A Review On Distributed Cloud, Fog And Edge Computing and Their Opportunities and Challenges. Res. Rev. Sci. Technol. 2021, 1, 1–15. Available online: https://researchberg.com/ (accessed on 5 March 2022).
- Bacis, E.; Vimercati, S.D.C.D.; Foresti, S.; Paraboschi, S.; Rosa, M.; Samarati, P. Securing Resources in Decentralized Cloud Storage. IEEE Trans. Inf. Forensics Secur. 2020, 15, 286–298. [Google Scholar] [CrossRef] [Green Version]
- Baalamurugan, K.M.; Kumar, S.R.; Kumar, A.; Kumar, V.; Padmanaban, S. Padmanaban, Blockchain Security in Cloud Computing; Springer: Cham, Switzerland, 2022. [Google Scholar]
- Kumar, A.; Abhishek, K.; Nerurkar, P.; Ghalib, M.R.; Shankar, A.; Cheng, X. Secure smart contracts for cloud-based manufacturing using Ethereum blockchain. Trans. Emerg. Telecommun. Technol. 2020, 33, e4129. [Google Scholar] [CrossRef]
- Taha, A.; Zakaria, A.; Kim, D.; Suri, N. Decentralized Runtime Monitoring Approach Relying on the Ethereum Blockchain Infrastructure. In Proceedings of the 2020 IEEE International Conference on Cloud Engineering (IC2E), Sydney, NSW, Australia, 21–24 April 2020; pp. 134–143. [Google Scholar] [CrossRef]
- Awadallah, R.; Samsudin, A.; Teh, J.S.; Almazrooie, M. An Integrated Architecture for Maintaining Security in Cloud Computing Based on Blockchain. IEEE Access 2021, 9, 69513–69526. [Google Scholar] [CrossRef]
- Dannen, C. Introducing Ethereum and Solidity: Foundations of Cryptocurrency and Blockchain Programming for Beginners; Apress: Berkeley, CA, USA, 2017; Volume 318. [Google Scholar]
- Goldin, P. State of the Cloud Report: DevOps Trends; Ferreira, D.M.P., Ed.; RightScale Inc.: Santa Barbara, CA, USA, 2021; pp. 1–19. [Google Scholar]
- Monti, M.; Rasmussen, S. RAIN: A Bio-Inspired Communication and Data Storage Infrastructure. Artif. Life 2017, 23, 552–557. [Google Scholar] [CrossRef] [PubMed]
- Zhu, Y.; Lv, C.; Zeng, Z.; Wang, J.; Pei, B. Blockchain-based Decentralized Storage Scheme. J. Phys. Conf. Ser. 2019, 1237, 042008. [Google Scholar] [CrossRef] [Green Version]
- Sarmah, S.S. Application of Block chain in Cloud Computing. Int. J. Innov. Technol. Explor. Eng. 2019, 8, 4698–4704. [Google Scholar] [CrossRef]
- Nedakovic, A. Analysis and Improvements of VerifyMed-The Blockchain Solution for Virtualized Healthcare Trust Relations.Security and Cloud Computing (SECCLO). Master’s Thesis, Aalto University, Espoo, Finland, 2022. [Google Scholar]
- Nizamuddin, N.; Salah, K.; Azad, M.A.; Arshad, J.; Rehman, M. Decentralized document version control using ethereum blockchain and IPFS. Comput. Electr. Eng. 2019, 76, 183–197. [Google Scholar] [CrossRef] [Green Version]
- Chacon, S.; Straub, B. Pro Git Book, 2nd ed.; Apress: Berkeley, CA, USA, 2014. [Google Scholar]
- Available online: https://ethereum.org/en/developers/docs/evm/ (accessed on 12 October 2021).
- Sharma, S.G.; Ahuja, L.; Goyal, D.P. Building Secure Infrastructure for Cloud Computing Using Blockchain. In Proceedings of the 2018 Second International Conference on Intelligent Computing and Control Systems (ICICCS), Madurai, India, 14–15 June 2018; pp. 1985–1988. [Google Scholar] [CrossRef]
- Piao, Y.; Ye, K.; Cui, X. A Data Sharing Scheme for GDPR-Compliance Based on Consortium Blockchain. Future Internet 2021, 13, 217. [Google Scholar] [CrossRef]
- Hasselgren, A.; Wan, P.K.; Horn, M.; Kralevska, K.; Gligoroski, D. GDPR Compliance for Blockchain Applications in Healthcare. In Proceedings of the International Conference on Big Data, IOT and Blockchain (BIBC 2020), Dubai, United Arab Emirates, 24–25 October 2020. [Google Scholar] [CrossRef]
- Basnet, S.R.; Shakya, S. BSS: Blockchain security over software defined network. In Proceedings of the 2017 International Conference on Computing, Communication and Automation (ICCCA), Greater Noida, India, 5–6 May 2017; pp. 720–725. [Google Scholar] [CrossRef]
- Khanna, A.; Sah, A.; Bolshev, V.; Burgio, A.; Panchenko, V.; Jasiński, M. Blockchain–Cloud Integration: A Survey. Sensors 2022, 22, 5238. [Google Scholar] [CrossRef] [PubMed]
- Bharathi Murthy, C.V.N.U.; Shri, M.L.; Kadry, S.; Lim, S. Blockchain Based Cloud Computing: Architecture and Research Challenges. IEEE Access 2020, 8, 205190–205205. [Google Scholar] [CrossRef]
- Srilakshmi, K.; Bhargavi, P. Cloud Computing Security Using Cryptographic Algorithms. Asian J. Comput. Sci. Technol. 2019, 8, 76–80. [Google Scholar] [CrossRef]
- Tabassum, M.; Perumal, S.; Mohanan, S.; Suresh, P.; Cheriyan, S.; Hassan, W. IoT, IR 4.0, and AI Technology Usability and Future Trend Demands: Multi-Criteria Decision-Making for Technology Evaluation. In Design Methodologies and Tools for 5G Network Development and Application; IGI Global: Hershey, PA, USA, 2021; pp. 109–144. [Google Scholar]
- Liang, X.; Shetty, S.; Tosh, D.K.; Kamhoua, C.A.; Kwiat, K.A.; Njilla, L. ProvChain: A Blockchain-Based Data Provenance Architecture in Cloud Environment with Enhanced Privacy and Availability. In Proceedings of the 2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID), Madrid, Spain, 14–17 May 2017; pp. 468–477. [Google Scholar] [CrossRef]
- Rensaa, J.-A.H.; Gligoroski, D.; Kralevska, K.; Hasselgren, A.; Faxvaag, A. VerifyMed-A blockchain platform for transparent trust in virtualized healthcare: Proof-of-concept. In Proceedings of the 2nd International Electronics Communication Conference, Singapore, 8–10 July 2020; pp. 73–80. [Google Scholar] [CrossRef]
- Buccafurri, F.; De Angelis, V.; Lazzaro, S. A Blockchain-Based Framework to Enhance Anonymous Services with Accountability Guarantees. Future Internet 2022, 14, 243. [Google Scholar] [CrossRef]
- Nguyen, D.C.; Pathirana, P.N.; Ding, M.; Seneviratne, A. Integration of Blockchain and Cloud of Things: Architecture, Applications and Challenges. IEEE Commun. Surv. Tutor. 2020, 22, 2521–2549. [Google Scholar] [CrossRef]
- Shah, M.; Shaikh, M.; Mishra, V.; Tuscano, G. Decentralized Cloud Storage Using Blockchain. In Proceedings of the 2020 4th International Conference on Trends in Electronics and Informatics (ICOEI) (48184), Tirunelveli, India, 15–17 June 2020; pp. 384–389. [Google Scholar] [CrossRef]
- Perumal, S.; Tabassum, M.; Narayana, G.; Ponnan, S.; Chakraborty, C.; Mohanan, S.; Basit, Z.; Quasim, M.T. ANN Based Novel Approach to Detect Node Failure in Wireless Sensor Network. Comput. Mater. Contin. 2021, 69, 1447–1462. [Google Scholar] [CrossRef]
- Hankerson, D.; Vanstone, S.; Menezes, A. Guide to Elliptic Curve Cryptography; Springer: New York, NY, USA, 2006. [Google Scholar]
- Wikipedia. Elliptic-Curve Cryptography. Available online: https://en.wikipedia.org/wiki/Elliptic-curve_cryptography (accessed on 10 December 2021).
- Remix. Welcome to Remix’s Documentation, 2019–2022. Available online: https://remix-ide.readthedocs.io/en/latest/ (accessed on 25 November 2021).
- Ethereum Revision. Solidity, 2016–2019. Available online: https://docs.soliditylang.org/en/v0.5.3/ (accessed on 4 December 2021).
- Liang, C.B.; Tabassum, M.; Kashem, S.B.A.; Zama, Z.; Suresh, P.; Saravanakumar, U. Smart home security system based on Zigbee. In Advances in Smart System Technologies; Springer: Singapore, 2021; pp. 827–836. [Google Scholar]
- Park, A.; Li, H. The Effect of Blockchain Technology on Supply Chain Sustainability Performances. Sustainability 2021, 13, 1726. [Google Scholar] [CrossRef]
Ref | Purpose or Motivation | Methodology | Result | Limitations and Future Directions |
---|---|---|---|---|
[5] | Propose a decentralized service monitoring strategy based on the Ethereum blockchain. | The implemented smart contract combined and abstracted measurable SLOs and monitored cloud services compliance with contractual SLOs. | The findings demonstrated that the technique was appropriate for assessing the values of SLOs and discovering violations of contractual SLO standards. | |
[6] | Present a hybrid cloud-blockchain system. | The design was built on CSP and BC technologies, which were equally important. | The proposed technique used homomorphic encryption to offer data security and privacy during outsourced computations. | |
[10] | Decentralize safe storage of data. | Encrypted data using the AES 256-bit encryption method. | Privacy and security problems associated with centralized cloud storage also provided a platform for users to rent out their unused storage and earn cryptocurrency. | Flexible scheduling method, in which files can be viewed several times and a payment system. |
[11] | Determine the purpose of blockchain technology in the field of cloud computing. | Integrated system to ensure and improve confidence between the cloud servers, data consumers, and data security. | The planned model should address access control; the connection between multilateral accounts broke the networks and caused unexpected economic loss. | |
[12] | Provide a blockchain-based solution and platform for file decentralized way. | Used the Ethereum blockchain and smart contracts to authorize, track, and conduct versioning operations for the IPFS-stored file. | Enabled transactions and files with high integrity, resilience, and security to exchange and monitor multiple versions of online content. | Developers were able to create smart contracts for various file management functions. Create smart contracts for domain-specific decentralized data procedures. |
[15] | Demonstrate the usage of blockchain technologies in developing secure cloud computing infrastructure. | Blockchain is quickly growing in fintech, such as financial services, the insurance sector, online payments, and many others. | Used the platforms in extreme scenarios and investigated how they may improve data availability across a distributed ledger utilizing blockchain technology. | |
[17] | Blockchain technology and related core technologies. | Explored the method of providing security. | Presented a way of securing blockchain use and removal protocol to explore the method of providing security. | Considering the environment in which a vast volume of data is sent, efficiency studies were also required in addition to security studies. |
[18] | Cloud computing and blockchain technologies were briefly discussed | Established an architecture that integrated blockchain with the cloud, disclosing the connection between the two. | There were numerous benefits in terms of usability, trust, security, scalability, data management, and other factors if blockchain and cloud computing were combined. | We can solve data privacy and security problems by integrating blockchain technology to support cloud computing growth. |
[19] | Examine the many issues of security in blockchain and cloud computing. | Blockchain could be a useful and powerful tool for ensuring security in the cloud computing environment. | ||
[20] | Collect and verify cloud data provenance by embedding provenance data into blockchain transactions. | Designed and built ProvChain, a system. | ProvChain delivered security characteristics such as tamper-proof provenance, user privacy, and dependability with little overhead for cloud storage applications. | Built ProvChain on top of an open-source architecture. |
[25] | VerfiyMed: A blockchain platform for transparent trust in virtualized healthcare: proof of concept. | Design, implementation, and evaluation of VerifyMed. | A contemporary solution for the healthcare domain to incorporate a robust blockchain platform for transparent trust. | Open source with limited trust boundaries. |
[26] | A blockchain-based framework to enhance anonymous services with accountability guarantees. | Proposed a framework to deal with an identification issue of unauthorized access of anonymous entities. | Strengthened access control system, a private key and user credentials were generated using secured third-party protocols, which enabled the framework to utilize group signatures. | Real-life implementation issues due to lack of validation and industrial support. |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 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
Khan, N.; Aljoaey, H.; Tabassum, M.; Farzamnia, A.; Sharma, T.; Tung, Y.H. Proposed Model for Secured Data Storage in Decentralized Cloud by Blockchain Ethereum. Electronics 2022, 11, 3686. https://doi.org/10.3390/electronics11223686
Khan N, Aljoaey H, Tabassum M, Farzamnia A, Sharma T, Tung YH. Proposed Model for Secured Data Storage in Decentralized Cloud by Blockchain Ethereum. Electronics. 2022; 11(22):3686. https://doi.org/10.3390/electronics11223686
Chicago/Turabian StyleKhan, Nabeel, Hanan Aljoaey, Mujahid Tabassum, Ali Farzamnia, Tripti Sharma, and Yew Hoe Tung. 2022. "Proposed Model for Secured Data Storage in Decentralized Cloud by Blockchain Ethereum" Electronics 11, no. 22: 3686. https://doi.org/10.3390/electronics11223686
APA StyleKhan, N., Aljoaey, H., Tabassum, M., Farzamnia, A., Sharma, T., & Tung, Y. H. (2022). Proposed Model for Secured Data Storage in Decentralized Cloud by Blockchain Ethereum. Electronics, 11(22), 3686. https://doi.org/10.3390/electronics11223686