Bitcoin is inarguably the most successful cryptocurrency so far, when market capital and growing popularization are considered. Users have to have online access to be able to initiate transactions to spend their bitcoins. A certain amount of time is required for the transaction to be successfully confirmed and validated (20-30 minutes in most cases). However, a large number of real world scenarios require immediate payments that are initiated offline, but offline bitcoin payments raise a number of serious security challenges, as the receiver of the coins can never verify that the payment has actually been received without accessing the bitcoin network via the internet. Furthermore, even immediate forms of online payments have been proven to be vulnerable to double spending scenarios.
A recently published paper presented the first ever solution that can facilitate secure offline bitcoin payments throughout instances when immediate payments have to be immediately accepted (e.g. vending machines, mobile ticketing….etc). The proposed approach is based on using an offline wallet and implementing a number of new security mechanisms that can shield transactions against double spending attacks and verify their validity within an offline setting. These new mechanisms aim at probabilistic security that ensures that the probability of launching an attack is lower than the required threshold for success. The developers of the solution provided a risk and security analysis, in addition to security parameters for various forms of adversaries. They also eliminated remaining risks via excluding misbehaving wallets.
The solution was implemented on Android mobile clients to instantiate an offline bitcoin wallet via a microSD security card. The implementation showed that using a popular platform, such as Android, to smoothly integrate this solution is possible and that online and offline bitcoin transactions can coexist in secure settings. An alternative implementation approach is also proposed for the offline wallet that does not rely on secure hardware; instead, it is based on a deposit framework that is managed by the bitcoin network.
The Offline Payment Scenario:
The new solution is comprised of three phases as shown on the below figure;
i. Online bitcoin preloading
ii. Offline bitcoin payment
iii. Online redemption of coins and revocation of double spending attacks
Throughout the first phase, the sender of the coins X creates a pre-loading bitcoin transaction T1 (step 1) which leads to transfer of some coins from his/her main bitcoin account x to the account of the offline wallet w, so w‘s balance became positive. This is achieved via an online bitcoin transaction, for which the nodes of the network will create n-transaction confirmation n-Tl . Throughout the second phase, the sender of the coins X communicates with W requesting it to create an offline bitcoin transaction T0 with the amount destined to be sent to the account y (step 3). Throughout the third phase, the receiver of the coins Y will redeem the coins he/she received offline via publishing T0 to the blockchain (step 4) and occasionally obtaining transaction’s confirmation (step 5). The confirmation(s) of transactions will be issued, only when no double spending attack attempts have been detected against T0. If not, the receiver of the payment Y will initiate a double spending revocation bitcoin procedure, which includes initiating a double spending revocation transaction Tr (step 6), broadcasting it to the blockchain and obtaining its confirmations n-Tr (step 7).
The New Solution, CoinBlesk and Green Addresses:
The new solution is somehow similar to CoinBlesk, which is a mobile payment platform that facilitates fast bitcoin payments. Similarly to this solution, CoinBlesk facilitates direct payments from the sender to the receiver (via NFC). Nevertheless, CoinBlesk requires at least one party has to have an online connection, so it does not address the problem this new solution solves. Another solution, which is known as Green Addresses, solves the problem of “confirmation delay” via the introduction of a trusted intermediary, or third party, that aids in the guarantee of zero confirmation transactions. Generally speaking, Green Addresses present a striking evidence that third parties can be accepted within Bitcoin’s ecosystem, yet it cannot solve the problem of offline payments.
By far, this new solution is the first ever payment system to promote offline bitcoin payments; thus, opening the door for the implementation of bitcoin payments in a myriad of sectors including ticketing for public transportation, events, and concerts.