Before few weeks, the BCH (Bit Cash) community has released a lively discussion on the problem of merchants accepting "zero confirmation transactions". As more and more people support BCH, the acceptance of "zero confirmation transactions" gets higher and higher, and "zero verification transactions" have grown to be a hot subject. Currently, the merchants that have approved BCH "zero verification transactions" consist of Bitasia Exchange, Secrets4coins, Bitpay, Satoshi Dice, Mini-POS, Lieferando, etc.
Exactly what is a "zero-confirmation deal" A transaction within the blockchain is confirmed every ten minutes, and a "zero-confirmation transaction" does not exist in the block. It refers to the state before a transaction is usually broadcast to the complete network and is about to become packaged into the stop. Before the block containing this deal is definitely mined, "zero confirmation" is available, but following the block will be mined, "zero confirmation" will not exist.
The positive view is that "zero-confirmation transactions" raise the transaction speed and so are also the main element to making digital currencies more widely accepted with the audience. At the same time, there are unfavorable opinions that it could bring double-spending risks, and both BTC and BCH networks have encountered several double-spending attacks.
Is "zero confirmation transaction" safe? In a debate called "Bitcoin Snack Machine" over the Bitcointalk.org web site, Satoshi Nakamoto said that as soon as July 2010, Bitcoin tried no confirmation payment transactions.
"I think transaction processing nodes can perform sufficient checks in 10 mere seconds or less." Satoshi Nakamoto complete that when a double-spending attack occurs, network nodes only accept the initial transaction they receive. When a transaction has been broadcast, the perpetrator efforts to double-spend the attack by broadcasting another deal at the same time. At this time, it is more important to observe which of the two transactions will undoubtedly be provided priority by even more of the entire network. The node allows.
From this perspective, "zero-confirmation transactions" are not absolutely safe, and you can find indeed certain dangers.
Previous reports furthermore summarized the five types of double-spending assaults (ie 51% episodes, racial assaults, Vector76 attacks, alternative historical episodes, etc.). Regarding the double-spending danger that may outcome, the industry is certainly actively looking for various answers to create "zero-confirmation transactions" better.
"Zero Confirmation Deal" Anti-Double Investing Scheme
* Relay program
As soon as 2015, Bitcoin programmer Mike Hearn discussed the targeting of inside a paper entitled "Twice spending within Bitcoin and steps to make it tougher" (Double spending in Bitcoin and how to make it harder) The solution to the double-spending assault of "zero-confirmation transaction"-relay system. With this relay scheme, whenever a Bitcoin node finds a double-spending transaction, it transmits the deal that arrives initial to various other nodes across the network for relay.
Gavin Andresen and Tom Harding, the early developers of Bitcoin, applied this function and integrated this feature into the earlier Bitcoin system, but this content was later removed by the developers. Although Bitcoin Core rejected the contract, Hearn and Harding held it in Bitcoin XT.
Tom Harding, the chief developer of Bitcoin XT, continues to be discussing and researching this subject with the BCH local community. At the Satoshi Vision Conference in Tokyo, he once again talked about a relay system in his speech entitled "Local Respend Level of resistance".
* Build a specific transaction output mechanism
To be able to prevent double-spending attacks, researchers from your Section of Information Executive and Communication in the Autonomous University of Barcelona proposed ways to construct a special transaction output mechanism.
A paper entitled "Double-spending Prevention for Bitcoin Zero-Confirmation Transactions" (double-spending Prevention for Bitcoin Zero-Confirmation Transactions) explains this mechanism at length. That is, if two various signatures are used to indication the same transaction output (dual spend), then your private key utilized to sign the transaction will be shown.
* Increase double-spend caution and create double-spend proof
The Bitcoin Unlimited team is developing a program called Two times Spend Proof Creation and Forwarding. Within this structure, once any node on the chain receives a double-spending transaction, a proof of the double-spending deal will be created, and other nodes can verify the proof and spread it to the complete network.
At present, several BCH supporters trust these ideas and concepts. The reason why more and more people are willing to accept "zero confirmation transactions" is because they believe that the likelihood of double spending is very low. As Satoshi Nakamoto said in 2010 2010: The risk of double spending attacks in the Bitcoin system is less than the threat of credit card fraud.
At the same time, the double-spend attack itself is quite difficult, and enough time for double-spend is short. The expense of double spending generally in most dealings is much larger than its benefits. For small dealings, double spending is certainly even more unprofitable.
But in the ultimate analysis, whether to simply accept a "zero confirmation deal" or even to wait for a "safer" blockchain verification is dependant on the merchant's decision.
Extended reading: As well as the 51% strike, there's also these four types of "double-spending assaults" recently
(I am the author Mo Xinnan, exploring true blockchains, high-quality blockchain projects seeking reports, please put WeChat: 16601131135, please note your name, company, and placement.)