2

What are the limits of the bitcoin protocol for microtransactions, and what are the alternatives?

I am contemplating an application that would require each user to spend fractions of bitcoins multiple times every second. I understand that there are limitations in the protocol to prevent such a thing from happening. How can I proceed thousands of microtransaction using bitcoins without having a central server?

  • 3
    Rather than telling us that you want to make hundreds of transactions per second, you should tell us why you want to do that, because this sounds like an XY problem – Nick ODell Mar 16 '13 at 18:17
  • Are you sure the "accounts" feature of bitcoind isn't what you need? – o0'. Mar 17 '13 at 12:25
2

There are systemic limits based on storage per block. So the limit isn't the number of transactions, the limit is instead the amount of data all transactions for inclusion in a block consume all together.

The definition of a "microtransaction" varies.

Bitcoin might be used to send a transaction without a fee if it is not a microtransaction. The Bitcoin-Qt/bitcoind client (and thus nearly all mining capacity) has special rules that if any outputs are under 0.01 BTC (currently about $5 USD), then it must include at least the minimum fee.

The minimum fee, when required, is 0.0005 BTC per KB of data.

In all likelihood then, all of your transactions would need to pay a fee.

However, simply paying a fee is no guarantee that a transaction will be included. The blocks have a limit of 500KB but as storage climbs above 250KB the fees needed for each additional KB increase. As space for blocks begin filling, those transactions with the higher fee will bump out those with a lower fee, which will need to wait to be included in a later block.

So to answer your question is not what the limits of the protocol, but what level of a fee in the future will be necessary for a transaction. That's something that is not known today, but most all will agree Bitcoin probably won't work well for transactions worth a fraction of a dollar especially if the value of the fee itself is in the "many cents" per transaction range.

Alternatives

Decentralized crypto currencies are decentralized to make them resistant to corruption.

But a decentralized currency can be used as the form of money on a centralized service. Most online gambling sites using bitcoins deal in bitcoin denominated microtransactions, and only use the bitcoin network whan a customer adds funds or when a user withdraws their funds. So that is an example of how Bitcoins can still be used for a service that deals in microtransactions.

Other methods:

Open Transactions is a technology that allows an issuer to receive bitcoins and issue bitcoin vouchers. Those vouchers can them be transacted on one or more Open Transactions servers.

Ripple is a distributed transaction system which might be able to handle your problem. Bitcoins are one of the types of funds that can be transacted.

0

The Bitcoin protocol has some built-in support for this, but I do not know whether it is currently being implemented. See https://en.bitcoin.it/wiki/Contracts Example 7 at the bottom.

Also, see http://www.youtube.com/watch?v=mD4L7xDNCmA for explanations of some of the advanced features.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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