Bitcoin Forum
April 25, 2024, 05:29:37 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: A bitcoin fee proposal  (Read 1095 times)
critterfidget (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
May 20, 2014, 07:51:19 PM
 #1

I've been thinking about the future direction for fees a lot and had the following idea: What if the amount of fees somehow affected, on a block-by-block basis, the difficulty for that block? This idea would require a hard fork but the more I think about it the more it appeals to me. I call it "weighted per-block difficulty."
The basic gist of it is:
1/ there will still be a "base" difficulty rate which would adjust approximately bi-weekly;
2/ the amount of fees included in a block, divided by the total input value for that block, would affect this "base" difficulty in a zero or positive way. Say the base difficulty is 1000 and the fees for the block comprise 10% of the total input value -- this would raise the difficulty to 1010. Of course the percentage would have to be thought out more than this. Smiley
A few ways this would affect miners' and users' that I've come up with:
1/ transactions which (probably, mistakenly) include huge fees will be shunned by miners as they will negatively affect their ability to solve a block;
2/ At present there is a perverse incentive for miners to include large fee transactions in a block over small fee incentives; they currently include small fee transactions out of the goodness of their heart because the block reward far outweighs any transaction fees they earn. This perverse incentive in the future will tend to, with a non-weighted difficulty rate, make miners include large fee transactions over small fee transactions — the fee pricing structure therefore, at present, is a POSITIVE FEEDBACK LOOP — when transaction fees are the lion’s share of the block reward the incentive will be to include higher and higher fees on transactions, ignoring lower-fee transactions. Needless to say this is a Bad Thing(tm).
3/ if the difficulty per block is reliant on the fees for that block the incentive then becomes to include the transactions with the lowest fees economically possible — however transactions with fees below a miner’s economic threshold will take longer to confirm, if they confirm at all;
4/ because the formula for adjusting difficulty would be based on the percentage of fees as they relate to the block’s total transaction inputs the idea is bitcoin-value agnostic -- always larger transactions with lower fees affect the difficulty less than small transactions with higher fees -- however fees would be stable as a percentage of the input(s);
5/ fees would be easily calculated by Bitcoin users by analyzing one or a few previous blocks; minimum, maximum, average and standard deviation of fees could be easily calculated;
6/ blocks could be just as easily confirmed by the reference implementation as the formula used by miners to adjust the base difficulty would be deterministic, based on the base difficulty, transaction input totals and fees included;
I'd love to hear your thoughts...
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
"Bitcoin: mining our own business since 2009" -- Pieter Wuille
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
1714022977
Hero Member
*
Offline Offline

Posts: 1714022977

View Profile Personal Message (Offline)

Ignore
1714022977
Reply with quote  #2

1714022977
Report to moderator
telepatheic
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1


View Profile
May 20, 2014, 08:20:26 PM
 #2

Firstly it won't happen with bitcoin because the miners are so powerful and they will not wish to change their expected revenue models. However it could be implemented in other coins.

I don't see the problem at the moment. The network is a fair(ish) market, when blocks are larger than the number of transactions, low fee transactions are included. When blocks are smaller than the number of transactions the average transaction fee goes up. Sending 0 fee transactions is simply wrong because it costs everyone on the network to process a transaction and it leads to spam.

What I would like to see is the ability for the default client to relay transactions with different inputs and a larger transaction fee (say must be 20% more than an existing transaction to limit spam) but with the exact same outputs (and of course you can't send it with inputs which are in other unconfirmed transactions). This would allow a user to send a transaction with a low fee and for them to slowly increase the fee until it gets included in a block.
critterfidget (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
May 20, 2014, 08:28:00 PM
 #3

It could easily be implemented. Miners don't accept blocks -- users running the reference implementation do. If the community likes the idea of miners competing for fees rather than monopolizing them then it'll catch on and the miners won't have any choice in the matter.

TL;DR Bitcoin users outnumber miners.
telepatheic
Jr. Member
*
Offline Offline

Activity: 56
Merit: 1


View Profile
May 20, 2014, 08:48:32 PM
 #4

It could easily be implemented. Miners don't accept blocks -- users running the reference implementation do. If the community likes the idea of miners competing for fees rather than monopolizing them then it'll catch on and the miners won't have any choice in the matter.

Good luck with that since this requires a hard fork! I'll admit the dynamics of miners vs users is quite complex but I'd say miners have the upper hand right now.
critterfidget (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
May 20, 2014, 08:54:27 PM
 #5

Yep, would require a hard fork probably (maybe?).

But the dynamic between users and miners will always favor users, until we have more miners than users. It's the majority of clients which accept or reject a block, not the mining power they have.

Furthermore, this change doesn't affect miners much at this time, as it's the block reward they're mining for. It affects miners in the future and makes them compete for fees. I don't see a big problem getting present miners to accept.
ThePurplePlanet
Full Member
***
Offline Offline

Activity: 144
Merit: 100


View Profile
May 20, 2014, 10:29:51 PM
 #6

Here is another idea not very well received by devs! https://bitcointalk.org/index.php?topic=343756.msg3693082#msg3693082
critterfidget (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
May 20, 2014, 10:36:15 PM
 #7

That idea still has a positive feedback mechanism.

When fees are what a miner mines for this will destroy Bitcoin.

For example:

1/ We have four miners in the world, each with 25% of the hashing power (for example).

2/ Miner #1 only includes transactions in a block if they include fees at least 100% higher than what other miners' will accept.

3/ The other miners will process transactions which have at least a 50 cent fee.

4/ Miner #1 solves a block and gets twice the transaction fees as the others'.

5/ The others raise their fees. Go to 1/

This is important: Miner #1 can do this because he is not penalized for requiring higher fees -- he is rewarded! The chances of solving a block have nothing to do with fees. All miners will catch on in very little time that this is the case.

Unfortunately there's no way to stop this in the future. The protocol doesn't have a negative feedback mechanism in place for fees.
ThePurplePlanet
Full Member
***
Offline Offline

Activity: 144
Merit: 100


View Profile
May 20, 2014, 10:48:56 PM
 #8

I dont see how this is a problem. You assume that users will want to pay higher fees. Other coins have been already mined. Does the same happen? No..
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
May 20, 2014, 10:54:50 PM
 #9

2/ Miner #1 only includes transactions in a block if they include fees at least 100% higher than what other miners' will accept.

...
4/ Miner #1 solves a block and gets twice the transaction fees as the others'.

Check your math.

Fees on transactions awaiting for next block:
10 bits
8 bits
5 bits
5 bits
5 bits
4 bits
4 bits
1 bit

Miner #1 requires a fee of 8 bits or more.  
Miners #2 & #3 require a fee of 4 bits or more.
Miner #4 requires a fee of 1 bit or more.  
Which transactions are included by each miner?  What is the total fee revenue for each miner assuming they solve the next block first?

critterfidget (OP)
Newbie
*
Offline Offline

Activity: 6
Merit: 0


View Profile
May 20, 2014, 11:19:05 PM
Last edit: May 20, 2014, 11:29:48 PM by critterfidget
 #10

Yep, just got corrected on reddit about that. Going to have to do more thinking on this for sure.

Miner #1: 18 bits
Miner #2 & #3: 41 bits
Miner #4: 42 bits

I completely failed to consider that those solving a block that require lower fees get the higher fees too. Lol.
odolvlobo
Legendary
*
Offline Offline

Activity: 4298
Merit: 3208



View Profile
May 21, 2014, 04:03:17 PM
 #11

Your idea could break bitcoin because adding blocks with no transactions might be the most profitable for miners.

I don't see why miners preferring large transaction fees over small transaction fees is "perverse". It makes economic sense. Anyway, it will be very difficult to come up with a workable system in which miners prefer the opposite.

Join an anti-signature campaign: Click ignore on the members of signature campaigns.
PGP Fingerprint: 6B6BC26599EC24EF7E29A405EAF050539D0B2925 Signing address: 13GAVJo8YaAuenj6keiEykwxWUZ7jMoSLt
ThePurplePlanet
Full Member
***
Offline Offline

Activity: 144
Merit: 100


View Profile
May 23, 2014, 06:31:57 PM
 #12

Your idea could break bitcoin because adding blocks with no transactions might be the most profitable for miners.

I don't see why miners preferring large transaction fees over small transaction fees is "perverse". It makes economic sense. Anyway, it will be very difficult to come up with a workable system in which miners prefer the opposite.

To be fair the most profitable scheme for miners with current block reward is to not include any transactions anyway.. But they do it to support the network.
Summer,69
Newbie
*
Offline Offline

Activity: 50
Merit: 0


View Profile
May 26, 2014, 07:34:33 AM
 #13

it could be implemented in other coins but not with Bitcoin. Bitcoin miners will not wish to change their expected revenue models.
KyrosKrane
Sr. Member
****
Offline Offline

Activity: 295
Merit: 250


View Profile WWW
May 27, 2014, 09:02:43 AM
 #14

Your idea could break bitcoin because adding blocks with no transactions might be the most profitable for miners.

I don't see why miners preferring large transaction fees over small transaction fees is "perverse". It makes economic sense. Anyway, it will be very difficult to come up with a workable system in which miners prefer the opposite.

To be fair the most profitable scheme for miners with current block reward is to not include any transactions anyway.. But they do it to support the network.
Huh? Could you elaborate a bit on this, please? (The profitability of zero-transaction blocks, I mean.)

Tips and donations: 1KyrosREGDkNLp1rMd9wfVwfkXYHTd6j5U  |  BTC P2Pool node: p2pool.kyros.info:9332
ThePurplePlanet
Full Member
***
Offline Offline

Activity: 144
Merit: 100


View Profile
May 27, 2014, 10:33:17 AM
 #15

Your idea could break bitcoin because adding blocks with no transactions might be the most profitable for miners.

I don't see why miners preferring large transaction fees over small transaction fees is "perverse". It makes economic sense. Anyway, it will be very difficult to come up with a workable system in which miners prefer the opposite.

To be fair the most profitable scheme for miners with current block reward is to not include any transactions anyway.. But they do it to support the network.
Huh? Could you elaborate a bit on this, please? (The profitability of zero-transaction blocks, I mean.)

Many transactions mean bigger blocks and thus more time to propagate in the network. For miners the biggest income right now is the block reward so they want as small block as possible to propagate fast and get the reward.  Bigger blocks reduces their chances for their solved chain to propagate fast picked by others and win the race. For transactions to make sense for miners now to include them they need to be much much higher to balance the cost of missing the block solving arms race. As I said they include them to support the network maybe at their cost.

Reward needs to come down and devs compress block size and propagation time for transactions to be profitable for miners.
KyrosKrane
Sr. Member
****
Offline Offline

Activity: 295
Merit: 250


View Profile WWW
May 27, 2014, 10:49:21 AM
 #16

Ah, I see what you mean. Thanks.

Tips and donations: 1KyrosREGDkNLp1rMd9wfVwfkXYHTd6j5U  |  BTC P2Pool node: p2pool.kyros.info:9332
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!