Open Access
ARTICLE
Blockchain Mobile Wallet with Secure Offline Transactions
1 Faculty of Engineering, Islamic University of Gaza, P.O. Box 108, Gaza, Palestine
2 Department of Computer Science, College of Computer, Qassim University, P.O. Box 52211, Buraydah, Saudi Arabia
3 University College of Applied Sciences, P.O. Box 1415, Gaza, Palestine
4 Palestine Technical College, P.O. Box 6037, Deir ElBalah, Palestine
* Corresponding Author: Khalil Hamdi Ateyeh Al-Shqeerat. Email:
Computers, Materials & Continua 2023, 75(2), 2905-2919. https://doi.org/10.32604/cmc.2023.036691
Received 09 October 2022; Accepted 29 December 2022; Issue published 31 March 2023
Abstract
There has been an increase in the adoption of mobile payment systems worldwide in the past few years. However, poor Internet connection in rural regions continues to be an obstacle to the widespread use of such technologies. On top of that, there are significant problems with the currently available offline wallets; for instance, the payee cannot verify the number of coins received without access to the Internet. Additionally, it has been demonstrated that some existing systems are susceptible to false token generation, and some do not even permit the user to divide the offline token into smaller portions to be used as change. This paper proposes a blockchain-based wallet system that provides a secure mobile payment service even if a user cannot access a reliable Internet connection. Our approach relies on Bluetooth and digital signatures to establish and build a trust connection between the parties. The proposed solution overcomes the main limitations of existing systems that use offline transactions, such as the generation of fake offline tokens and the indivisibility of offline tokens. The user buys Offline Tokens (OTs) from a server called an Offline Token Manager (OTM) to use them later to perform offline transactions. Each mobile device must store a single, signed offline token transaction to prevent fake tokens. On the other hand, all offline transactions will be kept as a history in a particular local database. Finally, when the receiver becomes online, it will send a convert request to the OTM to change the value of the OTs to the appropriate amount in real coins. This step requires a connection to the Internet. To evaluate the effectiveness of the system, the Solidity programming language was used to develop a smart contract on the Ethereum blockchain with a backend application programming interface (API) and an android mobile application. The proposed method has an advantage over other prominent wallets.Keywords
Cite This Article
This work is licensed under a Creative Commons Attribution 4.0 International License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.