Abstract
Blockchain-based decentralized infrastructure is intended to achieve peer-to-peer transactions without relying on centralized/trusted third parties. However, most of the existing blockchain systems suffer from several weaknesses including a certain level of centralization, centralized authority (e.g., data miners), and continuous increase in data storage or data bloating. To overcome these issues, in this paper, we propose Octopus, a truly peer-to-peer transactions system, based on Interplanetary File System (IPFS). Here, transactions between two parties take place via a direct peer-to-peer channel while the proofs of transactions are stored in an IPFS cluster. Unlike traditional blockchain-based systems, Octopus does not require blocks, chains, or miners to provide transaction proofs. Octopus offers several features such as horizontal and vertical scalability, data privacy, and high transaction throughput. Performance results from our prototype confirm these properties.
Similar content being viewed by others
Data availability statement
Data sharing not applicable to this article as no datasets were generated or analysed during the current study.
References
Gochhayat, S.P., Shetty, S., Mukkamala, R., Foytik, P., Kamhoua, G. A., Njilla, L.: Measuring decentrality in blockchain based systems, IEEE Access
Muftic, S.: Blockchain identity management system based on public identities ledger, US Patent 9,635,000 (2017)
Muftic, S.: Bixcoin: A secure peer-to-peer payment system based on the public payments ledger, US Patent App. 15/168,200 (2017)
Chou, I.-T., Su, H.-H., Hsueh, Y.-L., Hsueh, C.-W.: Bc-store: A scalable design for blockchain storage, in Proceedings of the 2020 2nd International Electronics Communication Conference, pp. 33–38 (2020)
Dai, M., Zhang, S., Wang, H., Jin, S.: A low storage room requirement framework for distributed ledger in blockchain. IEEE Access 6, 22970–22975 (2018)
Benet, J.: Ipfs-content addressed, versioned, p2p file system, arXiv preprint arXiv:1407.3561
Nakamoto, S.: Bitcoin: A peer-to-peer electronic cash system
Gipp, B., Meuschke, N., Gernandt, A.: Decentralized trusted timestamping using the crypto currency bitcoin, arXiv preprint arXiv:1502.04015
IPFS, ipfs-cluster. (2020) https://github.com/ipfs/ipfs-cluster
Huang, D., Ma, X., Zhang, S.: Performance analysis of the raft consensus algorithm for private blockchains. IEEE Trans. Syst. Man Cybern. Syst. 50(1), 172–181 (2019)
Bandara, E., Ng, W.K., Zoysa, K.D., Fernando, N., Tharaka, S., Maurakirinathan, P., Jayasuriya, N.: Mystiko - blockchain meets big data, in IEEE International Conference on Big Data, Big Data 2018, Seattle, WA, USA, December 10–13, pp. 3024–3032 (2018)
Skrzypczak, J., Schintke, F., Schütt, T.: Linearizable state machine replication of state-based crdts without logs, in Proceedings of the 2019 ACM Symposium on Principles of Distributed Computing, pp. 455–457 (2019)
Okusanya, O.: Consensus in distributed systems: Raft vs. crdts
Muftic, S.: Bix certificates: cryptographic tokens for anonymous transactions based on certificates public ledger. Ledger 1, 19–37 (2016)
Zheng, Q., Li, Y., Chen, P., Dong, X.: An innovative IPFS-based storage model for blockchain, in 2018 IEEE/WIC/ACM International Conference on Web Intelligence (WI), IEEE, pp. 704–708 (2018)
Muralidharan, S., Ko, H.: An interplanetary file system (IPFS) based IoT framework, in 2019 IEEE International Conference on Consumer Electronics (ICCE), IEEE, pp. 1–2 (2019)
Steichen, M., Fiz, B., Norvill, R., Shbair, W., State, R.: Blockchain-based, decentralized access control for IPFS, in 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData), IEEE, pp. 1499–1506 (2018)
Tenorio-Fornés, A., Hassan, S., Pavón, J.: Open peer-to-peer systems over blockchain and IPFS: an agent oriented framework, in Proceedings of the 1st Workshop on Cryptocurrencies and Blockchains for Distributed Systems, pp. 19–24 (2018)
Vimal, S., Srivatsa, S.: A new cluster p2p file sharing system based on ipfs and blockchain technology. J. Ambient Intell. Hum. Comput. 3(4), 1–7 (2019)
Nizamuddin, N., Hasan, H.R., Salah, K.: IPFS-blockchain-based authenticity of online publications, in International Conference on Blockchain, pp. 199–212, Springer (2018)
Hasan, S.S., Sultan, N.H., Barbhuiya, F.A.: Cloud data provenance using IPFS and blockchain technology, in Proceedings of the Seventh International Workshop on Security in Cloud Computing, pp. 5–12, (2019)
Chen, Y., Li, H., Li, K., Zhang, J.: An improved p2p file system scheme based on IPFS and blockchain, in 2017 IEEE International Conference on Big Data (Big Data), IEEE, 2017, pp. 2652–2657
Thönes, J.: Microservices. IEEE Softw. 32(1), 116–116 (2015)
Merkel, D.: Docker: lightweight linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014)
Burns, B., Grant, B., Oppenheimer, D., Brewer, E., Wilkes, J.: Borg, omega, and kubernetes. Queue 14(1), 70–93 (2016)
Liang, X., Shetty, S., Tosh, D., Kamhoua, C., Kwiat, K., Njilla, L., Provchain: a blockchain-based data provenance architecture in cloud environment with enhanced privacy and availability, in 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID). IEEE 2017, 468–477 (2017)
Bandara, E., Liang, X., Shetty, S., Ng, W.K., Foytik, P., Ranasinghe, N., De Zoysa, K., Langöy, B., Larsson, D.: Lekana-blockchain based archive storage for large-scale cloud systems, in International Conference on Blockchain. pp. 169–184, Springer (2020)
Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)
The go programming language. https://golang.org/
Kreps, J., Narkhede, N., Rao, J. et al.: Kafka: a distributed messaging system for log processing, in Proceedings of the NetDB, pp. 1–7 (2011)
Davis, A.L.: Akka streams, in Reactive Streams in Java. pp. 57–70, Springer (2019)
Akka streams documentation. https://doc.akka.io/docs/akka/2.5/stream/
The scala programming language. https://www.scala-lang.org/
Odersky, M., Altherr, P., Cremet, V., Emir, B., Maneth, S., Micheloud, S., Mihaylov, N., Schinz, M., Stenman, E., Zenger, M.: An overview of the scala programming language, Tech. rep. (2004)
Akka documentation. https://doc.akka.io/docs/akka/2.5/actors.html
Gupta, M.: Akka essentials, Packt Publishing Ltd. (2012)
Hewitt, C.: Actor model of computation: scalable robust information systems, arXiv preprint arXiv:1008.1459
Destounis, A., Paschos, G.S., Koutsopoulos, I.: Streaming big data meets backpressure in distributed network computation, in IEEE INFOCOM 2016-The 35th Annual IEEE International Conference on Computer Communications, IEEE. pp. 1–9 (2016)
Mühle, A., Grüner, A., Gayvoronskaya, T., Meinel, C.: A survey on essential components of a self-sovereign identity. Comput. Sci. Rev. 30, 80–86 (2018)
Baars, D.: Towards self-sovereign identity using blockchain technology, Master’s thesis, University of Twente (2016)
Bandara, E., Shetty, S., Mukkamala, R., Liang, X., Foytik, P., Ranasinghe, N., De Zoysa, K.: Casper: a blockchain-based system for efficient and secure customer credential verification. J. Bank. Financ. Technol 6(1), 43–62 (2022)
Bandara, E., Liang, X., Foytik, P., Shetty, S., Ranasinghe, N., De Zoysa, K.: Rahasak-scalable blockchain architecture for enterprise applications. J. Syst. Arch. 4(2), 348–372 (2021)
Bandara, E., Tosh, D., Foytik, P., Shetty, S., Ranasinghe, N., De Zoysa, K.: Tikiri-towards a lightweight blockchain for IoT. Fut. Gener. Comput. Syst. 5(3), 425–447 (2021)
Androulaki, E., Barger, A., Bortnikov, V., Cachin, C., Christidis, K., De Caro, A., Enyeart, D., Ferris, C., Laventman, G., Manevich, Y. et al.: Hyperledger fabric: a distributed operating system for permissioned blockchains, in Proceedings of the Thirteenth EuroSys Conference, ACM, p. 30 (2018)
Dent, A.: Getting started with LevelDB, Packt Publishing Ltd. (2013)
Kulabukhova, N.: Zero-knowledge proof in self-sovereign identity, in: CEUR Workshop Proceedings, Vol. 2507, RWTH Aahen University, pp. 381–385 (2019)
Funding
This work was supported in part by the DoD Center of Excellence in AI and Machine Learning (CoE-AIML) under Contract Number W911NF-20-2-0277 with the U.S. Army Research Laboratory.
Author information
Authors and Affiliations
Contributions
EB: Methodology, Software Implementation, Writing, Draft Preparation. XL: Investigation, Writing-Reviewing-Editing, Supervision. PF: Visualization, Writing-Reviewing-Editing. SS: Supervision, Investigation, Writing-Reviewing-Editing. RM: Investigation, Writing-Reviewing-Editing, Supervision. NR: Supervision, Investigation. KZ: Supervision, Investigation.
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Bandara, E., Liang, X., Shetty, S. et al. Octopus: privacy preserving peer-to-peer transactions system with InterPlanetary file system (IPFS). Int. J. Inf. Secur. 22, 591–609 (2023). https://doi.org/10.1007/s10207-022-00650-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10207-022-00650-2