9

I read today twice concerns about inflating the blockchain:

  1. NameCoin
  2. Bitcoin Message Service

So, does using these services "over inflate" the blockchain? The way I see it, if another protocl rides on top of Bitcoin but obeys by its rules and pay all the proper transaction fees / mining time, then it's "legit". My question is how can such a "legit" protocol inflate the blockchain more than a regular miner would?

Does it introduce spurious transactions? If this actually became a problem, wouldn't increasing the minimal transaction fee solve it?

2 Answers 2

5

NameCoin merged mining adds no more than 49 bytes to the size of the block. Namecoin messages aren't stored in the bitcoin block chain, instead the hash of the most recent namecoin block is stored in the Bitcoin block providing continuity between a potential hash and the Namecoin block chain.

So yes it technically does "bloat" the Bitcoin blockchain but it current is ~4% and that percentage will decline as transaction volume increases, as that fixed 49 bytes is measured against increasingly larger blocks.

As for "how" can it be done. The coinbase transaction (which transfers rewards and fees to miner's address) contains a field called coinbase. Without merged mining this field is used to generate entropy for hashing process (extra nonce) which alters the block header each time it is changed. Allowing a miner to try nearly infinite number of hashes.

This field is not used by the blockchain for anything other than entropy so adding namecoin hash to the field doesn't collide with any Bitcoin transaction. Once a block is signed the field is never used for anything other than verifying the block valid (by verifying the hash is correct and is smaller than required target).

3
  • So ... how much extra data could we put in a block? I'm sure there's an upper limit.
    – ripper234
    Oct 9, 2011 at 4:19
  • 2
    Asked as a separate question: bitcoin.stackexchange.com/questions/1438/…
    – ripper234
    Oct 9, 2011 at 7:03
  • 1
    Also, there is a maximum block size which keeps this "non-transaction" stuff from getting too large. Oct 9, 2011 at 7:27
-1

Of course you can simply encode a message as the amount of bitcoins sent in a transaction. And like any transaction, a transaction increases the size of the blockchain. Could that bloat, that is could it add a significant amount of "undesired" data to the blockchain? You can bloat it up to a point where the "value" of your message is smaller than or equal to the transaction fee (including the "value" a disruption of Bitcoin itself might have to you).

If this results in an increase of the size of the blockchain faster than hardware vendors (hard disks, CPU, internet bandwidth, ...) can keep up with then the transaction fees will increase, too. Whether at this point "normal" transactions have become unfeasible - I don't know. I guess that comes down to the question how scalable the Bitcoin protocol is and will be.

4
  • 1
    Stack Exchange is not a forum. Please post questions as separate questions and not answers. Later, when you have a bit more rep, you'll be able to post comments as well. See the FAQ - bitcoin.stackexchange.com/faq
    – ripper234
    Jul 25, 2012 at 7:45
  • 1
    @ripper234 I think asking a question whether this question is insufficiently answered would have been a silly thing... And I don't have a proper answer either. I've spent an hour trying to figure out how to write it as a comment instead of an answer (the FAQ does not mention it) but only found this weird "not-an-answer" tag suggestion and that someone else would convert it to a comment...
    – T_X
    Jul 25, 2012 at 8:52
  • 1
    @ripper234 Ok, thought about it some more and maybe writing it as a comment is not the thing I'm looking for - I'll try to rewrite it as an incomplete, but disjunct answer. (I guess someone else can improve/merge/... answers later, right?)
    – T_X
    Jul 25, 2012 at 9:12
  • Yeah, this looks more like an answer now, thanks (-1 removed).
    – ripper234
    Jul 25, 2012 at 13:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.