Hash, wallets, Blockchain … The cryptocurrency market involves specific terms, mostly in English. Many of them end up in the early readings, which may discourage the search for deeper knowledge and double spending is one of them.
Double spending is one of them, although the title is more self-explanatory compared to the others. Double spending consists of the repetition of a transaction that should be unique. When this occurs, all other users are negatively affected and the system itself loses credibility.
In this article, you will find out:
- What is double spending?
- How does double spending occur?
- What are the approaches used to avoid this practice?
3.1. Centralization Strategy
3.2. Decentralization Strategy
1. What is double spending?
In short, double spending is the act of spending Bitcoin twice. This occurs when a user makes an initial transaction and then closes someone else’s purchase using the same cryptocurrencies. Although difficult to execute, even due to the system’s own defenses, it occurs more commonly than we would like to think.
Double spending is considered to be a serious flaw within the cryptocurrency community as the fraudster does not gain advantages for himself alone. The operation ends up hurting other users connected to the network, as transactions involve solving complex mathematical equations.
Thus, when a user ends up performing two transactions, he “breaks the queue” and circumvents the system, compromising the proper functioning of the network. Although cryptocurrency operations involve high levels of security, any digital file can be duplicated, unlike traditional currencies.
2. How does double spending occur?
We can exemplify the occurrence for ease of understanding. Imagine that one of the network’s users, Carlos, makes a virtual currency transfer to Jorge. However, no other person is informed about what is happening.
So Carlos can decide to create another transaction and transfer it to another user, Adriano. As no other Blockchain participant is aware of the first operation, the second one is also validated by the system and Carlos ends up contributing to the double spending issue.
This is because both Jorge and Adriano received the same coin – the number of Bitcoins is limited and each unit cannot be doubled. If the operation is not investigated, Carlos will have damaged the loyalty among users and gained an unequal advantage.
3. What are the approaches used to avoid this practice?
Fortunately, the system itself sets out two strategies to ensure that this problem does not occur. Let’s take a closer look at each one.
3.1. Centralization Strategy
The reduction in the possibility of double spending can occur through a direct centralization strategy. It is carried out with the participation and establishment of a third entity, together with the two transferring users, acting as a kind of arbitrator.
Thus, this third instance authorizes transactions made in the system and verifies that the coins were actually spent on the first attempt. One problem with this approach, however, is the possibility that any system errors or failures caused by the new identity will prevent proper verification.
To ensure the success of such a strategy, it is critical that all users involved in the network rely on the entity designated to process transactions and perform proper verification. For this, everyone should be well informed of the parameters from the start of the approach.
3.2. Decentralization Strategy
4. How does Bitcoin curb double spending?
Bitcoin is the perfect example of virtual currency that has relied on the decentralized solution protocol to combat double spending attempts within its own network. It all started with a mental experiment known as the Two Generals’ Problem.
Also called the Problem of the Two Generals (or Byzantine Generals) by Brazilian programmers, this experiment takes into account a metaphorical conflict. In it, two officers want to attack a particular city, but must defeat its strong defenses.
Thus, as the main strategy, each of the generals occupies a mountain, having a valley between the two officers. For both to win the victory, the attack must be simultaneous. To ensure good communication, intermediaries should be used.
However, this resolution carries an internal problem: the messenger must cross the valley and reach the opposite mountain. Along the way, he risks being captured or attacked by the defenders of the fortress.
If a general sends a message that the attack is imminent, he needs the other officer’s response. Even if the recipient receives the message, the sender is not sure that it was properly delivered – after all, the intermediary may have been caught midway.
In addition, as there is no guaranteed response to the messages, defeat will affect both generals if one of them hesitates to attack. The big problem is that there is no guarantee of confirmation of receipt of messages.
This story exemplifies what happens in a Blockchain (a kind of digital record of cryptocurrency operations). Since there is no agent able to confirm the authenticity of the transaction, a confirmation could not be guaranteed.
To solve the dilemma, Bitcoin uses a system known as Proof of Work. In this system, participants submit to a protocol, which validates transactions by consensus. The Blockchain is therefore the public database that records the operations performed.
This consensus ensures a solid defense against users attempting double spend. Only extremely talented hackers can pierce this trench, which makes the Bitcoin transaction a very safe practice for users of different profiles.
The problem of the Byzantine generals illustrates how Bitcoin has been able to establish an efficient way to prevent double spending fraud. Thus, each block in the Blockchain creates networks, and transactions are only validated when miners connect other blocks in this operation.