Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: sebastian on December 22, 2017, 08:13:10 AM



Title: txfee based on diffculty?
Post by: sebastian on December 22, 2017, 08:13:10 AM
As you might know, the surge and drop of bitcoin in the latest Days, and the volatility, is mainly because the txfee. Its just not resonable to pay like 20 USD to send a bitcoin transaction just because the value is so high.

txfee is a tool mostly to prevent malicious users from inserting garbage in the blockchain, thus you could have a txfee that stays roughtly constant (in value) over time, regardless of the value of the bitcoin.


Since the value is loosely pinned to the difficulty (higher difficulty = higher value), what about a txfee that is based on the inverse of difficulty?
Basically, a required txfee that is based on the inverse of the highest difficulty observed the latest 6 blocks, and clients will use a txfee that is calculated based on the inverse of the lowest of these 6 blocks.
This will gurantee that the txfee used in a transaction is always higher than required, and that the txfee follows the value (txfee drops when value become higher).

This also gives a opportunity to mine old blocks when value are rising (as old txfee's are more valueable as they are higher), and mine new blocks when value is dropping (as these have higher txfee)


Title: Re: txfee based on diffculty?
Post by: error08 on December 22, 2017, 10:36:27 AM
I'm not sure about bitcoin difficulty;
What is "difficulty"?
Difficulty is a measure of how difficult it is to find a hash below a given target.

The Bitcoin network has a global block difficulty. Valid blocks must have a hash below this target. Mining pools also have a pool-specific share difficulty setting a lower limit for shares.
https://en.bitcoin.it/wiki/Difficulty

Hash Rate is the speed at which a compute is completing an operation in the Bitcoin code. A higher hash rate is better when mining as it increases your opportunity of finding the next block and receiving the reward.

Current fee caused by; too many unconfirmed transactions and network ask for higher fee to become the priority, due to bitcoin hashrate declining, maybe switched to mine bcash. If hashrate goes down, bitcoin difficulty will decreases to adjust.


Title: Re: txfee based on diffculty?
Post by: hatshepsut93 on December 22, 2017, 11:35:34 AM
As you might know, the surge and drop of bitcoin in the latest Days, and the volatility, is mainly because the txfee. Its just not resonable to pay like 20 USD to send a bitcoin transaction just because the value is so high.

txfee is a tool mostly to prevent malicious users from inserting garbage in the blockchain, thus you could have a txfee that stays roughtly constant (in value) over time, regardless of the value of the bitcoin.



Fees are more than just a tool to prevent spam, blockchain space is a very scarce resource, because we simply can't afford to raise it the blocksize every time there's a congestion - this would quickly centralize the network because only users with specialized hardware will be able to run full nodes.


Since the value is loosely pinned to the difficulty (higher difficulty = higher value), what about a txfee that is based on the inverse of difficulty?
Basically, a required txfee that is based on the inverse of the highest difficulty observed the latest 6 blocks, and clients will use a txfee that is calculated based on the inverse of the lowest of these 6 blocks.
This will gurantee that the txfee used in a transaction is always higher than required, and that the txfee follows the value (txfee drops when value become higher).

This also gives a opportunity to mine old blocks when value are rising (as old txfee's are more valueable as they are higher), and mine new blocks when value is dropping (as these have higher txfee)


Fees will always be based on an open market, every other model would be unfair to users, would cause giant backlogs and be very vulnerable to spam attacks.


Title: Re: txfee based on diffculty?
Post by: ranochigo on December 22, 2017, 05:51:48 PM
As you might know, the surge and drop of bitcoin in the latest Days, and the volatility, is mainly because the txfee. Its just not resonable to pay like 20 USD to send a bitcoin transaction just because the value is so high.
Not really, though it is unreasonable. There are more factors affecting the price of Bitcoin than that.
Since the value is loosely pinned to the difficulty (higher difficulty = higher value), what about a txfee that is based on the inverse of difficulty?
Basically, a required txfee that is based on the inverse of the highest difficulty observed the latest 6 blocks, and clients will use a txfee that is calculated based on the inverse of the lowest of these 6 blocks.
This will gurantee that the txfee used in a transaction is always higher than required, and that the txfee follows the value (txfee drops when value become higher).

This also gives a opportunity to mine old blocks when value are rising (as old txfee's are more valueable as they are higher), and mine new blocks when value is dropping (as these have higher txfee)
The target of a block is very heavily dependent on luck. The miners are randomly hashing the block header, with the nonce inside and generate new strings every single time. Every time they generate a block, they could just borderline meet the target or exceed it. Miners would never judge whether to mine or not, based on the past few blocks; they only do so via the difficulty adjustment. What do you mean by new and old blocks?

Txfee isn't defined by the network. The miner chooses the transaction and naturally, also sets a standard for the transaction fee.


Title: Re: txfee based on diffculty?
Post by: posi on December 22, 2017, 06:55:06 PM
Per my search txfee does not based on difficulty because difficulty is the ascertain size of how difficult it is to find a hash below a given time and bitcoin network difficulty often change every 2016 blocks. But, miners decide to choose the transaction with high txfee and the higher your transaction fee the faster you receive your transaction.


Title: Re: txfee based on diffculty?
Post by: sebastian on December 22, 2017, 11:29:07 PM
>>Fees will always be based on an open market.
>>Txfee isn't defined by the network.

What I have understand, is that txfee is something that is defined in bitcoin-core client (1000 satoshi per kB), but clients can choose a lower or higher txfee. But it isn't defined by network.

My idea is thus to change this definition in bitcoin-core to be based on difficulty instead. (new clients may then follow)
Then miners will be forced to accept transactions using these new fee's as theres no other transactions to choose from.

>>The target of a block is very heavily dependent on luck
Yes I know.


>>What do you mean by new and old blocks?
I meant with "old block" I mean mining blocks based on tx's that are from Before a specific difficulty change, and "new block" with mining blocks based on tx's that are after a specific difficulty change.
Since the blocks Before a difficulty rise, will have higher fee's, it will be more favorable for miners to then choose to mine blocks that are based on old transactions, while if theres a difficulty drop, then it will be more favorable to mine "new" transactions (thus becoming a "new block")

I know that im using the "wrong terminology" here but its easier to explain that way.


>>Not really, though it is unreasonable. There are more factors affecting the price of Bitcoin than that.

Are you really sure? Since the txfee is basically pinned to the size of transaction, it means it won't follow the market when value of bitcoin rises (compared to fiat). That causes the market to saturate when the txfee becomes so high so its unfavorable to invest in bitcoin due to the "spread" caused by the txfee. When market is fully saturated, it causes the value to drop because nobody is buying and nobody is selling due to the txfee's.

"Value" of something (Money, goods etc) is just the definition of the relation between demand and supply. If demand is low and supply is high, the thing is worthless, if demand is high and supply is low, the value increases.


>>Fees are more than just a tool to prevent spam, blockchain space is a very scarce resource

I know that block space are a very scarce resource, but still, if the requested txfee (that the client request per default) did follow the market price, I don't Think miners would have anything against it, because they would still get as much Money (in fiat) in transaction fee's.


Title: Re: txfee based on diffculty?
Post by: ranochigo on December 23, 2017, 02:22:08 AM
What I have understand, is that txfee is something that is defined in bitcoin-core client (1000 satoshi per kB), but clients can choose a lower or higher txfee. But it isn't defined by network.

My idea is thus to change this definition in bitcoin-core to be based on difficulty instead. (new clients may then follow)
Then miners will be forced to accept transactions using these new fee's as theres no other transactions to choose from.
The fee that is specified in Bitcoin Core is the minimum relay fee, as to prevent the mempool from getting spammed up with transactions with extremely low fee. The minimum relay fee is specific to each node; they can set it lower if they need to spare more resources. In the end, if miners and users were to hold a standoff, miners would likely win. The current issue isn't with miners aren't accepting them though, its with that theres too many transactions.


>>What do you mean by new and old blocks?
I meant with "old block" I mean mining blocks based on tx's that are from Before a specific difficulty change, and "new block" with mining blocks based on tx's that are after a specific difficulty change.
Since the blocks Before a difficulty rise, will have higher fee's, it will be more favorable for miners to then choose to mine blocks that are based on old transactions, while if theres a difficulty drop, then it will be more favorable to mine "new" transactions (thus becoming a "new block")

I know that im using the "wrong terminology" here but its easier to explain that way.
Ah, I don't think there is a correct terminology for it anyway. The target of a specific block doesn't affect the target of the next block and so, miners would always choose to mine transactions with a higher fee.


>>Not really, though it is unreasonable. There are more factors affecting the price of Bitcoin than that.

Are you really sure? Since the txfee is basically pinned to the size of transaction, it means it won't follow the market when value of bitcoin rises (compared to fiat). That causes the market to saturate when the txfee becomes so high so its unfavorable to invest in bitcoin due to the "spread" caused by the txfee. When market is fully saturated, it causes the value to drop because nobody is buying and nobody is selling due to the txfee's.

"Value" of something (Money, goods etc) is just the definition of the relation between demand and supply. If demand is low and supply is high, the thing is worthless, if demand is high and supply is low, the value increases.
It's not the whole story though. The reason BTC is dropping right now is because of suspension of trading on multiple exchange. The cost of sending an average transaction is still relatively low, for someone with loads of money; if you're a trader, you probably wouldn't have multiple transactions to a single address and it would just stay in the exchange.


>>Fees are more than just a tool to prevent spam, blockchain space is a very scarce resource

I know that block space are a very scarce resource, but still, if the requested txfee (that the client request per default) did follow the market price, I don't Think miners would have anything against it, because they would still get as much Money (in fiat) in transaction fee's.
The current problem isn't with miners. We have to scale Bitcoin first, then think about this, if miners ever get too greedy. The block size are all full so its not the fault of the miner.