Difference between revisions of "Double spend"

From Minter Wiki
(Replaced content with "Category: Terms 150px|thumb {{Template:RuPage}}")
(Tag: Replaced)
(Initial English Release)
(One intermediate revision by the same user not shown)
Line 1: Line 1:
 +
[[ru:Double spend]]
 +
[[File:Double spend.png|150px|thumb]]
 +
'''Double spend''' in blockchain is an attempt to spend one amount twice by sending two transactions simultaneously to different recipients.
 +
 +
==Problem history==
 +
In the world of fiat currencies, the problem of '''double spending''' is solved by centralization. The intermediary organization assumes responsibility, that transaction parties behave fairly: the real estate register certifies the rights of the owner and the moment of rights transfer to the buyer, bank guarantees the availability of funds on the payer's account, etc. Fight against double spending is carried out by central banks and law enforcement agencies.
 +
 +
This problem is particularly acute with the advent of decentralization. There are no central banks and police in the world of cryptocurrencies, so the problem of double spend must be solved by network rules. Such rules have been adopted in all known blockchains. Double spending is considered as a serious problem for blockchains with [[PoS]] (Proof-of-Stake, proof of share) consensus algorithm. In classic PoS version validators are interested in processing all transactions, including double spend (either to get a commission several times, or if they are related to the sender). This can lead to permanent blockchain forks, which is not necessary for fair network members.
 +
 +
==Prevention methods==
 +
Fighting double spend is done by setting rules, that do not favor double spend. For example, Bitcoin blockchain rules contain support for the longest blockchain, so possible branching (and potential double spending) may occur, but will not last long. Bitcoin network users have also taken it as a rule to wait for 3-6 block confirmations, which guarantees to discard blocks with possible double payments.
 +
 +
There is information about [https://www.opennet.ru/opennews/art.shtml?num=49920 several successful double spend attacks] in Ethereum Classic network. They are possible because of insufficient capacity decentralization, which is crucial for PoW (Proof-of-Work, proof of performance) consensus algorithm.
 +
 +
Some blockchains, such as Ripple, struggle with double spending by consensus rules. Ripple confirms only the transactions, supported by 80% of network members.
 +
 +
==Benefits of DPoS==
 +
A promising step in struggle against double spend is the '''DPoS''' (Delegated Proof-of-Stake) consensus algorithm. It significantly reduces the likelihood of abuse by participants and validators, as they are financially responsible for their network actions. Therefore, the more rights they have, the greater is their interest and responsibility. Strength distribution plays a crucial role as delegators choose validators but do not vote themselves, and validators operate blocks, but not owe stakes. In theory, this should lead to stable systems with fair participants behavior. In practice, the experience of operating networks with [[DPoS]] consensus algorithm is currently positive (ex. BitShares, Steemit).
 +
 +
The problem may be centralization, protection against which is in hands of the network coin holders. It is necessary to carefully '''monitor stake distribution''' between validators and '''support independent validators''' with little strength and positive reputation, so the DPoS system will be more stable.
 +
 +
==Double-spend in Minter==
 +
The Minter network implements a modified DPoS [[Minter Consensus|consensus]], sometimes called "MDPoS" by the developers. The difference is that the delegators can place their stakes in custom coins. 
 +
 +
As in other DPoS blockchains, validators in Minter network can sign one block at the same height twice, but with different data, which leads to a branching of the blockchain (fork).
 +
 +
This kind of behaviour in Minter network causes validators to be penalized with a '''5% stake penalty''' and all its delegators receive stakes '''unbound''', which blocks their funds for 30 days. The financial loss from a 30-day blocking of stakes is high in itself and combined with a penalty should result in the economic impracticality of maintaining double-spend for validator. Delegators from their side need to carefully monitor the qualification and reputation of the validator, as well as to distribute their stakes.
 +
 +
==See also==
 +
 +
*[[PoW]]
 +
*[[DPoS]]
 +
 +
==References==
 +
 +
*[https://forklog.com/sp/DPoS/ Forklog, Delegated-Proof-of-Stake as an alternative to PoW and PoS: Comparison and Prospects] (russian)
 +
*[[wikipedia:Double-spending|Wikipedia, Double-spend]]
 +
*[https://en.bitcoinwiki.org/wiki/Double-spending Bitcoinwiki, Double-spend at Bitcoin]
 +
*[https://bitshares.org/technology/delegated-proof-of-stake-consensus/ Bitshares, DPoS]
 +
 
[[Category: Terms]]
 
[[Category: Terms]]
[[File:Double spend.png|150px|thumb]]
 
{{Template:RuPage}}
 

Revision as of 23:29, 12 October 2019

Double spend.png

Double spend in blockchain is an attempt to spend one amount twice by sending two transactions simultaneously to different recipients.

Problem history

In the world of fiat currencies, the problem of double spending is solved by centralization. The intermediary organization assumes responsibility, that transaction parties behave fairly: the real estate register certifies the rights of the owner and the moment of rights transfer to the buyer, bank guarantees the availability of funds on the payer's account, etc. Fight against double spending is carried out by central banks and law enforcement agencies.

This problem is particularly acute with the advent of decentralization. There are no central banks and police in the world of cryptocurrencies, so the problem of double spend must be solved by network rules. Such rules have been adopted in all known blockchains. Double spending is considered as a serious problem for blockchains with PoS (Proof-of-Stake, proof of share) consensus algorithm. In classic PoS version validators are interested in processing all transactions, including double spend (either to get a commission several times, or if they are related to the sender). This can lead to permanent blockchain forks, which is not necessary for fair network members.

Prevention methods

Fighting double spend is done by setting rules, that do not favor double spend. For example, Bitcoin blockchain rules contain support for the longest blockchain, so possible branching (and potential double spending) may occur, but will not last long. Bitcoin network users have also taken it as a rule to wait for 3-6 block confirmations, which guarantees to discard blocks with possible double payments.

There is information about several successful double spend attacks in Ethereum Classic network. They are possible because of insufficient capacity decentralization, which is crucial for PoW (Proof-of-Work, proof of performance) consensus algorithm.

Some blockchains, such as Ripple, struggle with double spending by consensus rules. Ripple confirms only the transactions, supported by 80% of network members.

Benefits of DPoS

A promising step in struggle against double spend is the DPoS (Delegated Proof-of-Stake) consensus algorithm. It significantly reduces the likelihood of abuse by participants and validators, as they are financially responsible for their network actions. Therefore, the more rights they have, the greater is their interest and responsibility. Strength distribution plays a crucial role as delegators choose validators but do not vote themselves, and validators operate blocks, but not owe stakes. In theory, this should lead to stable systems with fair participants behavior. In practice, the experience of operating networks with DPoS consensus algorithm is currently positive (ex. BitShares, Steemit).

The problem may be centralization, protection against which is in hands of the network coin holders. It is necessary to carefully monitor stake distribution between validators and support independent validators with little strength and positive reputation, so the DPoS system will be more stable.

Double-spend in Minter

The Minter network implements a modified DPoS consensus, sometimes called "MDPoS" by the developers. The difference is that the delegators can place their stakes in custom coins.

As in other DPoS blockchains, validators in Minter network can sign one block at the same height twice, but with different data, which leads to a branching of the blockchain (fork).

This kind of behaviour in Minter network causes validators to be penalized with a 5% stake penalty and all its delegators receive stakes unbound, which blocks their funds for 30 days. The financial loss from a 30-day blocking of stakes is high in itself and combined with a penalty should result in the economic impracticality of maintaining double-spend for validator. Delegators from their side need to carefully monitor the qualification and reputation of the validator, as well as to distribute their stakes.

See also

References