Pages:
Author

Topic: Inflation and the end of 50 BTC per block (from technical discussion) - page 3. (Read 5876 times)

vip
Activity: 1386
Merit: 1140
The Casascius 1oz 10BTC Silver Round (w/ Gold B)
Multiple replies to multiple comments.  This original thread was in the technical section at https://bitcointalksearch.org/topic/questions-about-inflation-enforcement-2252, I thought to reply as a new thread in economics because that seemed more on topic.  As it says to the left, I am a newbie, so even though I have made fairly pointed suggestions, if I've made them in the context of not properly understanding the way this nifty system works, or I've failed to notice where some of this stuff has already been hashed out in detail in some other thread, please feel free to put me in my place!

Quote from: creighto
The max block size is not imposed by fiat, but by agreement to a convention.  You could change that in your client right now and produce blocks just fine, but unless at least 50% of generators agree with you, whenever your client produces a block that defies this agreed convention it will be ignored by those who do.


By fiat, I don't mean to suggest that someone dictated it with an iron fist.  But I do mean to point out that it makes the currency dependent on a central authority.  Sure, it is open source, but it is meant to benefit humankind, not just developers... over 99.9% of its users will have no clue how to participate in the management of this convention, which at this point appears to be designed to require it.

Wouldn't it make sense to change the convention to something that will automatically cope with growth, much like the difficulty system adjusts to new computational pressure?  With a hard limit like this, the threshold at which it suddenly grinds reliable transaction processing to a halt at a reasonable price (until everyone upgrades their client at the direction of the developers) will, in all likelihood, be exactly at the moment where it sees a viral surge in new popularity that suddenly brings it past that point and to its knees.  That may bring it a lot of unnecessary questioning and criticism by the public and the media, particularly about just how truly viable and independent it is.

I have read repeatedly that the achilles heal of Bitcoin is that 50% CPU threshold.  I have never heard of another one I believe might exist - the possibility that the Bitcoin community gets very large, and then has factions, the block chain forks, and the system crumbles in the face of FUD while two or more camps argue which leg is correct (sort of like a country that started out with a Constitution or a religion that started out with a Bible or Koran and now has two large factions eternally asserting their particular interpretation of it).  Two religious factions can go their own way and live their own separate lives on separate lands, but if they must trade while they can't agree on what constitutes the existence of money, the money may as well not exist.  If Bitcoin is in its "constitution" phase, I would submit that the time to address something like this is now.

Quote from: creighto
Yes there are such market forces, at least there will be once the rate of transactions is averaging over 50KB per block.  Some fees are voluntary, but increase your priority, allowing your transaction to be processed in a timely manner.  There are numberous cases in real life wherein a delay of a couple of hours is unacceptable, and it would be worthwhile to tack on a transaction fee of .02 bitcoin in order to jump the line of freebies.  If you are tyring todonate to a cause, or just moving funds around between multiple clients of your own (working client to a savings client, for example) then you can probably wait a few hours, or a few days, for the transaction to get processed at the network's own convience.  Buying a car, however, would likely justify the fee for speed.

That requires an assumption that the rate of transactions will be sometimes above 50 KB per block, and sometimes under.  That's a pretty narrow line.  What about the point where it is always over 50 KB?  Then it will always cost money - possibly substantial money - just to use money, making it very different from cash.  No one will want to receive Bitcoins without any guarantee that they're actually going to receive them anytime soon, there will be lots of uncertainty while recipients wonder if they will ever receive that payment they were sent, there will be lots of unusable bitcoins tied up in limbo because their recipients can't safely spend them, there will be lots of recipients who demand that their transactions be accompanied by an X fee to assure prompt posting, where X is a number that escalates indefinitely until an equilibrium is achieved between growth versus people get frustrated and decide to abandon the system.

At some point it's reasonably necessary to match the transaction volume with the capabilities of the system - if I buy a soda, and 10 million nodes must each exchange and store 210 bytes (total 2.1 GB system-wide for my soda) that's admittedly impractical, especially when 10 million other people might be buying a soda too.

At a volume like that, Bitcoins would become no longer useful for trivial stuff like lawn mowing or MMORPG equipment, and become more like wire transfers (where the fees make impractical all but the largest transactions), until some sort of mechanism (like a distributed hash table or "supernode" hierarchy) were put in place to cull the noise arriving at every node.

If Bitcoin has aspirations of being a real currency that can survive the evils of governments, it's perhaps best not to consider it a long term solution as a way to pay for swords in games and micropayments.  The way it looks to me, it doesn't look like it could sustainably serve large and small commerce at the same time.  Short of an overhaul, it would have to pick one - and if I understand its goals correctly in the big picture, it will do the world more good for the big things rather than the small.

Quote from: creighto
I think that you misunderstand the point of decentralization in the context of currency.  It's not the idea of a bank that is the problem, but the monopolies that cnetral banks have in our modern world.  Bitcoin banks will likely exist before very long, as Mybitcoin.com and Mtgox.com already offer some of the most important functions of a bank, but none of them can manipulate the system to their own advantage over any other peer, be they a user or another bank.

That is true only because Mybitcoin.com and Mtgox.com do not collectively control more than 50% of the CPU power on the network.  I assume things would be different if they did.  This is the thought that leads me to advocate for the maximum incentive for average Joes to keep generating blocks.

Quote from: creighto
Those two incentives are not equivalant, transaction fees do not affect the value of all other bitcoins held by others.  Increasing the monetary base does.

The risk of having the entire network usurped by an adversary as a result of not incentivizing users to throw all the CPU power they can at the network is potentially material to the value of all bitcoins in the system.

An increase to an economy's monetary base isn't intrinsically bad - it's only bad when it substantially exceeds the increase in size of the economy's capacity for production.  The opposite on the other hand, deflation, which occurs when output grows faster than the money supply, has got to be at least as destructive to preservation of value, when it leads people to hoard coins speculatively, and when that in turn leads to bubbles and wide swings of volatility.  I guess it depends on what purpose the currency was being minted for.  Unless bitcoins are meant for long-term saving, I am suggesting that zero inflation isn't automatically a good thing.

Further, if permanent slow inflation is allowed explicitly for one purpose (supporting miners), then by participating in distributed mining, anyone can offset their inflation losses by contributing their fair share of the distributed mining.  In doing so, they're compelled to contribute their CPU, which strengthens the network as a whole, and unlike investing fiat currencies to combat unpredictable inflation, their payout would be more or less predictable (and always positive).

Quote
I think the wisdom is that a declining pay out for discovering new blocks closely models currencies based on commodities (gold, silver, etc).  The profit margins on gold mining are much lower now than they were 100 years ago, when one only needed a river and a pan.  Gold mining is still possible, but it requires a substantial capital investment (buying "GPUs" so to speak).  Such commodities have proven to be useful currencies over the last couple thousand years.  It seems like a prudent model for a new currency.

One danger not applicable to gold and silver, is that all of the mining companies in the world can't just get together and decide to change the fundamental physical properties of the metals they are looking for.  They can't suddenly agree that gold is now twice as abundant today as it was yesterday, or that its atomic number is now +10 what it was before.  But if they control more than half the CPU power being used for mining, it seems they could have quite a bit of influence over the fundamentals of bitcoin.

Quote
First, the day that comes that a reward is zero is beyond our lifetimes, and only a theoretical issue to us.  Second, the priorities system gives more priority to transactions that pay a higher fee.  So the blocksize limit, whatever it is in the future, functions as artifical scarcity as well as limit the bandwidth/storage consumption of the network.  If Bitcoin were to become as regularly used as Paypal, even a 10 meg top limit is likely to delay transactions of the smallest fee, creating a natural market price for the value of a near term transaction.  A future client can look at the most recent several blocks, and produce an average transaction fee recommendation for a user to get his transactions processed in a timely manner.  This premium on speed will likely be in constant flux.

Perhaps we should consider a "flushing block" every so often, wherein the top limit is uncapped for that single block, to allow all persistant transactions to clear.  This could be done once every retarget, permitting the network to catch up, so that even free transactions have a high end limit of two weeks of wait.

If Bitcoin were to become as regularly used as Paypal, and the influx of 10 megs every few minutes (along with the outflow relaying it to other nodes) were a reality, I and presumably many others would not be able to sustain it on our internet connections.  It would suffer the same fate as the first revisions of Gnutella where the network was crushed under the weight of every search being propagated to every node, until the system were re-engineered to work in a more hierarchical fashion.

The way I understand it, a flushing block would defeat the purpose of a block limit, which I understand mainly to be spam prevention.  IF a transaction is going to end up on a later block anyway, what reason does there exist to stop it from going on a block generated now?

Quote
Right now everyone who generates leaves it on all the time. When a block is found they keep right on going because they are after the 50 and there is another 50 for the next block. When the reward is 0 everyone will likely stop after a block is found and wait for a fee transaction to show up. If the fee is worth the average power it will take to get it then they turn on, else they wait for more fees to accumulate. If generators are not finding it worth it to solve the block in an average of 10 minutes then the difficulty will drop until they do. 

If that becomes the status quo, the way it looks to me, that's a gift to anyone who wants to attack the network.  Anything that gives "good" block generators (as opposed to "evil" ones) an incentive to stop trying to generate blocks is something that appears to me would weaken the network as a whole.


Pages:
Jump to: