With the number of services and products which allow payments in cryptocurrencies increasing on a daily basis, the threat of Double-spending has increased in recent times.
Double-spending happens when a user makes two transactions with the same cryptocurrency. Both the transactions will go into the pool of unconfirmed transactions initially. When they are to be copied on the blockchain, only the first transaction will be recorded, and the second will be ignored.
If both transactions get validated simultaneously, then two branches of the blockchain are formed which compete with each other. In this, the transaction that receives most confirmations will be considered as complete.
The user may enjoy a free service at the exchange of the service provider, or he may have moved on and realized later that he would not be able to enjoy service as his transaction was not confirmed. Thus, either the service provider or the client will be left unsatisfied with the payment system.
To increase transaction Cryptocurrency payments, allow individual transactions with just a few or even zero confirmations. And digital wallets are not developed enough to differentiate between an actual transaction and a double spend.
Developers of a mobile application app Paynoway claim that their app can protect businesses from being duped by double-spending of Cryptocurrency. They claim that
Paynoway is a tool that you can use to test the applications that you, or your business, depend on to accept on-chain Cryptocurrency payments.
The Paynoway app has been specifically developed for Android devices and is currently available for free download on Google Play Store. The app is still in the development phase, but users have been asked to try it and give their feedback.
In GitHub, Paynoway allows users to give details of a transaction, and the app will check it for double-spend. Paynoway brings out reports of all submitted transactions along with the IDs from which they were submitted. It highlights each transaction as either a “payment” or a “double-spend.” Consequently, the status of each transaction is marked as “confirmed” or “invalid.”