How does Mastercoin avoid double-spend attacks without it's own blockchain?

8

Bitcoin's main innovation is the blockchain, responsible for making sure that the same bitcoin cannot be spent twice.

Mastercoin rides on top of bitcoin, but does not have it's own blockchain.

How does Mastercoin avoid double-spend attacks?

Assaf Shomer

Posted 2013-12-28T23:40:02.830

Reputation: 523

Answers

9

The answer is double-layered:

  1. Mastercoin uses Bitcoin for timestamping. It's impossible to revert the transaction at the Bitcoin level without doing a Bitcoin double spend (super costly).
  2. Mastercoin clients track the state of the system including how much is stored at each address. If a client double spends by sending two contradicting Mastercoin transactions, the second one will be discarded as an invalid spend by any client that parses the transaction stream.

ripper234

Posted 2013-12-28T23:40:02.830

Reputation: 25 192

1Thanks Ron. So after posting that question I realized that in fact, also in bitcoin the blockchain is not there to avoid double spend directly. The block-chain is there to ensure a consistent history. Bitcoin clients protect from double spend by checking new transactions' validity against the history. Thus, bitcoin, and anything using bitcoin as a time stamping device, are equally protected from double spend (well, equally as far as the block-chain is concerned, of course each client needs to do a good job in transaction validation). Does that sound right?Assaf Shomer 2013-12-30T09:46:26.320

1Let me elaborate a little on my previous comment. The block-chain achieves a consistent (single) and durable (hard to change) history. Double spend can occur in two ways. 1 - Send two conflicting transactions: This is dealt with in the client. 2 - Change history: This is taken care of by the block-chain.Assaf Shomer 2013-12-30T10:19:41.077

@AssafShomer - yeah, you got that nailed.ripper234 2014-01-01T23:24:29.763

4

Mastercoin adds a layer on top of Bitcoin.
It uses small transaction in the Bitcoin blockchain to transfer Mastercoins.
Thus the Bitcoin blockchain is used to avoid double spending the same way it is used for Bitcoins.

torusJKL

Posted 2013-12-28T23:40:02.830

Reputation: 141