Bitcoin Forum
December 11, 2016, 10:19:50 AM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 [2]  All
  Print  
Author Topic: The problem with transaction fees  (Read 3821 times)
marcus_of_augustus
Legendary
*
Offline Offline

Activity: 2100



View Profile
March 27, 2011, 02:39:59 PM
 #21

(Posted on other thread first but more pertinent here).


Current coins in circulation 5.7mill, average 24hr transactions around 200-250K ... or about 1500BTC per block.
http://www.bitcoinwatch.com/
with current exchange rates to "real world" monies that people use to buy mining gear and electricity with it is currently profitable on 50 BTC per block.

So extrapolating out to 21mill BTC in circulation, with similar money velocity as now, is about 800-850K per 24hr, or about 5700 BTC per block on a rolling average. Interestingly, if you assume a sensible round number average fee of 1% you get 57BTC per block for fees in the mature bitcoin economy .... hmmmm.

Recall that due to the deflationary nature of the beast, and the divisibility (2.1e15 satoshis), 800K BTC per day in transactions could represent the combined wealth transfers and economic activity of who knows how many millions of people. So that even a 0.01% average fee (6BTC per block) may easily incentivise quite substantial future mining rigs.

1481451590
Hero Member
*
Offline Offline

Posts: 1481451590

View Profile Personal Message (Offline)

Ignore
1481451590
Reply with quote  #2

1481451590
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
caveden
Legendary
*
Offline Offline

Activity: 1106



View Profile
March 27, 2011, 04:38:56 PM
 #22

One solution would be to have a maximum block size limit that automatically adjusts itself. It can be made so that it's always "tight", possibly pushing fees up. There's a thread for this: http://bitcointalk.org/index.php?topic=1865.0

Another solution would be to leave solving this problem to the miners, instead of trying to impose layer upon layer of "community generated red tape". What a bunch of control freaks...  Wink

Huh

The block maximum size is not only a "miners problem", it's the whole system, since it's a criterion that says whether a block is valid or not.
And this constant will probably have to change one day, if we want this project to scale. And such change will be backward incompatible. And as always, it's damn difficult to organize a backward incompatible change after your protocol has evolved enough to have multiple clients everywhere.

If this backward incompatible change will have to be done one day, why not make it only once (by setting an automatic adjustment rule), and why not considering making it now, while it's still easy?

It's not related with transaction fees only, it's related to the scalability of the bitcoin network as well.

18rZYyWcafwD86xvLrfuxWG5xEMMWUtVkL
Gavin Andresen
Legendary
*
Offline Offline

Activity: 1652


Chief Scientist


View Profile WWW
March 27, 2011, 07:39:31 PM
 #23

If this backward incompatible change will have to be done one day, why not make it only once (by setting an automatic adjustment rule), and why not considering making it now, while it's still easy?

Patches welcome.

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

When we get close to bumping into the block size limitation it will be easy to convince a majority of the network to upgrade-- that's one problem that is obvious and easy to fix.

How often do you get the chance to work on a potentially world-changing project?
twobitcoins
Full Member
***
Offline Offline

Activity: 144


View Profile
March 27, 2011, 08:40:03 PM
 #24

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

We already assume no attacker has 50% of the computing power.  If we choose an adjustment rule based on median block size, it should be immune from that type of attack.
caveden
Legendary
*
Offline Offline

Activity: 1106



View Profile
March 27, 2011, 08:47:03 PM
 #25

If this backward incompatible change will have to be done one day, why not make it only once (by setting an automatic adjustment rule), and why not considering making it now, while it's still easy?

Patches welcome.

Great, now I only need to relearn C++! Cheesy

Sorry, no patches coming from me... but I'm glad you are open for it.

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

For the jerk with a botnet to succeed with this he would need to either pay lot of transaction fees to include spam transactions in everybody's else blocks, or make the spam blocks himself.

If he's paying, well, miners are getting properly rewarded, the jerk is not a jerk anymore, he's rather an impulsive consumer of miners services. Miners will probably make him pay whatever they need in order to sustain such irrational demand.
Honestly, I don't see this happening.

Now, for him to make it on his own, he would need an immense amount of computing power. Having more than 50% of the network is already a way more dangerous thing than spamming, so let's assume he's not that strong.
Let's say that he has something like 25% of total power, which is already a lot.
He could act in two ways:

Stupid jerk mode: He fills all his blocks with spam, refusing everybody else's transactions. This is stupid because he'd be wasting money, by refusing to accept the transaction fees from others. I suppose people running botnets are not that stupid, but sill, what could the stupid spammer do?
Let's suppose the network is already running with a block size limit of 110% of the average needed. Now, the jerk occupies 25% of the space with garbage, forcing all transactions to be in the remaining 75%. That should be 82,5% of the needed space, so such space will get filled and the block size limit will increase. But how much should it increase? It would stop increasing as long as the 75% space not occupied by the spammer is 110% of what is needed. If I'm not lost in the numbers already, this super-spammer with limited intellect would make the block size limit around 144% (one third + 10%) of what it would need to be.
Anyway, what I want to say is that is that the relative damage he could cause is proportional and limited to the computing power he has, since as soon as all transactions are fitting in the space the spammer does not control, the bock size limit would stop growing. (I probably made some mistakes in the numbers above, but I hope you get the picture)
Having 25% is already a lot, and the relative damage for this stupid-mode is not that great.

By picking an arbitrary constant too much higher than the actual needs of the network, we'd probably be giving spammers much more space to spam. Actually, right now, with this 500Kb limit, a spammer with all this power could probably do much more relative damage, making the network download much more than it would need to.

Now, assuming that the spammer is not that stupid and he accepts paying transactions into his blocks, that greatly decreases the relative harm. Actually, his blocks would contain around 10% of spam only, the rest would be true transactions. He would barely move the block size limit, even with a great computing power.

When we get close to bumping into the block size limitation it will be easy to convince a majority of the network to upgrade-- that's one problem that is obvious and easy to fix.

I hope you're right on that. Nevertheless, consider what I said above: a high constant gives spammers much more opportunity, and risks not creating a sufficient artificial scarcity to incentive mining and thus weakening the network. And a low constant would require frequent backward incompatible changes.

18rZYyWcafwD86xvLrfuxWG5xEMMWUtVkL
caveden
Legendary
*
Offline Offline

Activity: 1106



View Profile
March 27, 2011, 08:49:55 PM
 #26

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

We already assume no attacker has 50% of the computing power.  If we choose an adjustment rule based on median block size, it should be immune from that type of attack.

That's pretty much the tl;dr version of my previous post. Cheesy

18rZYyWcafwD86xvLrfuxWG5xEMMWUtVkL
casascius
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1344


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
March 27, 2011, 08:53:29 PM
 #27

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

I almost would welcome the jerk - the jerk would help us make the network strong while the window of opportunity is as open as it's ever going to be.  The jerk would be doing us a favor.  He should be charging for the favor.  It's a "stress test".  Everyone knows the current version is non-scalable and will HAVE to be fixed.  So why not fix it sooner than later?

Just like the jerk who exploited an overflow bug in 0.3.9.  We're now stronger because of it.  It was far easier to get a few early adopters to upgrade, than a mass of five million users.

There is a huge amount of non-consensus as to what will happen when the going gets tough.  It would be far better for the longevity of the system to have it happen experimentally than have it turn off a whole influx of users.

A jerk who spams our block chain may very well give us the motivation to start working on scalability promoters like making blocks prunable, or allowing people to run "full nodes" versus "minimal nodes" etc.

No matter how much spam one jerk can produce, real transaction volume is eventually going to eclipse it... that is, if the system will scale to support it.

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper wallets instead.
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
March 27, 2011, 09:05:52 PM
 #28

What about keeping the hard limit, but adding an occasional exemption, say every retarget block can be as large as necessary to clear the backlog. (or ten times as large, or 100 times, whatever)  That way, the longest delay that a cheap/free transaction is a couple weeks, and the clients without much bandwidth only has to deal with an oversized block occasionally and on a predictable schedule.

This way. the near term scarcity that would drive transaction fees in the future would still be present, and donations won't languish to unrealistic terms.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
deadlizard
Member
**
Offline Offline

Activity: 112



View Profile
March 27, 2011, 09:07:49 PM
 #29

But be aware that any patch that is vulnerable to denial-of-service attacks will be rejected, and I can't think of a way to automatically adjust the block size that wouldn't be vulnerable to some big, anti-social miner (think "jerk with a botnet") deciding it would be fun to artificially drive up transaction volume, drive up the block size, and create a few gigabytes of worthless blocks we all get to download forevermore.

We already assume no attacker has 50% of the computing power.  If we choose an adjustment rule based on median block size, it should be immune from that type of attack.


At this point that is not a safe assumption.
O.K lets do the math
Network total - 0.506 Thash/s  = 506Ghash/s = 50600Mhash/s  / 600 = 85 (5970 cards) * 699 (RRP) = $59415 / 2 = 50% of the computing power of the network would cost $29707.50

I forgot where I was going with this ... oh right, I'm sure ATI sold a few more than 85 "5970" cards so it's deffinetly not a safe assumption.

btc address:1MEyKbVbmMVzVxLdLmt4Zf1SZHFgj56aqg
gpg fingerprint:DD1AB28F8043D0837C86A4CA7D6367953C6FE9DC

casascius
Mike Caldwell
VIP
Legendary
*
Offline Offline

Activity: 1344


The Casascius 1oz 10BTC Silver Round (w/ Gold B)


View Profile WWW
March 27, 2011, 09:47:53 PM
 #30

O.K lets do the math
Network total - 0.506 Thash/s  = 506Ghash/s = 50600Mhash/s  / 600 = 85 (5970 cards) * 699 (RRP) = $59415 / 2 = 50% of the computing power of the network would cost $29707.50

I forgot where I was going with this ... oh right, I'm sure ATI sold a few more than 85 "5970" cards so it's deffinetly not a safe assumption.

506 GHash/s != 50600Mhash/s

Off by a factor of 10

Companies claiming they got hacked and lost your coins sounds like fraud so perfect it could be called fashionable.  I never believe them.  If I ever experience the misfortune of a real intrusion, I declare I have been honest about the way I have managed the keys in Casascius Coins.  I maintain no ability to recover or reproduce the keys, not even under limitless duress or total intrusion.  Remember that trusting strangers with your coins without any recourse is, as a matter of principle, not a best practice.  Don't keep coins online. Use paper wallets instead.
marcus_of_augustus
Legendary
*
Offline Offline

Activity: 2100



View Profile
March 27, 2011, 11:52:44 PM
 #31


Would someone mind specifying the 'max block size' limitation is tight, well-defined systematic way? Is there a link to the problem definition, e.g. bug report?

I'm getting the gist of it only through the passing comments but hard to get a grasp on the complete animal that way.

Jim Hyslop
Member
**
Offline Offline

Activity: 98


View Profile
March 31, 2011, 02:38:04 AM
 #32

O.K lets do the math
Network total - 0.506 Thash/s  = 506Ghash/s = 50600Mhash/s  / 600 = 85 (5970 cards) * 699 (RRP) = $59415 / 2 = 50% of the computing power of the network would cost $29707.50
Leaving aside the factor-of-10 error pointed out by cassacius, wouldn't an attacker have to double to size of the network in order to control 50% of it?

In other words, suppose the current hash power of the network is xMhash/s. If the attacker adds 2 / x Mhash/s, then the total network power is 1.5x, and the attacker controls 0.5x, or 1/3 of the network.

Like my answer? Did I help? Tips gratefully accepted here: 1H6wM8Xj8GNrhqWBrnDugd8Vf3nAfZgMnq
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
March 31, 2011, 03:17:09 AM
 #33

O.K lets do the math
Network total - 0.506 Thash/s  = 506Ghash/s = 50600Mhash/s  / 600 = 85 (5970 cards) * 699 (RRP) = $59415 / 2 = 50% of the computing power of the network would cost $29707.50
Leaving aside the factor-of-10 error pointed out by cassacius, wouldn't an attacker have to double to size of the network in order to control 50% of it?

In other words, suppose the current hash power of the network is xMhash/s. If the attacker adds 2 / x Mhash/s, then the total network power is 1.5x, and the attacker controls 0.5x, or 1/3 of the network.

Yes.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
MoonShadow
Legendary
*
Offline Offline

Activity: 1666



View Profile
March 31, 2011, 03:24:08 AM
 #34


Would someone mind specifying the 'max block size' limitation is tight, well-defined systematic way? Is there a link to the problem definition, e.g. bug report?

I'm getting the gist of it only through the passing comments but hard to get a grasp on the complete animal that way.

The max block size is currently a hard limit of one megabyte.  The current fee structure is designed to make hitting that limit prohibitively expensive, by limiting the free transaction section (to 20 kilobytes, I believe) and an exponentially increasing set of required fees for transactions to be included above certain arbitrary soft limits.  I don't recall the actual fee schedule, but a block larger than half a megabyte would be very profitable for the miner that solved it.

"The powers of financial capitalism had another far-reaching aim, nothing less than to create a world system of financial control in private hands able to dominate the political system of each country and the economy of the world as a whole. This system was to be controlled in a feudalist fashion by the central banks of the world acting in concert, by secret agreements arrived at in frequent meetings and conferences. The apex of the systems was to be the Bank for International Settlements in Basel, Switzerland, a private bank owned and controlled by the world's central banks which were themselves private corporations. Each central bank...sought to dominate its government by its ability to control Treasury loans, to manipulate foreign exchanges, to influence the level of economic activity in the country, and to influence cooperative politicians by subsequent economic rewards in the business world."

- Carroll Quigley, CFR member, mentor to Bill Clinton, from 'Tragedy And Hope'
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!