Author

Topic: Minimum transaction fee is the anti-spam mechanism of Bitcoin, not block size (Read 1821 times)

legendary
Activity: 3038
Merit: 1660
lose: unfind ... loose: untight
blocklimit stops more than 4000 people making 1 transaction every 10 minutes, even if that tx only costs a few cents each person

Sort of. Block limit stops more than 4000 people making 1 transaction every 10 minutes, regardless of how much they might choose to bid in the transaction fee.

my point i have emboldened. simply that the blocklimit stops 4000 people sending one spam tx to themselves each any transaction at all

the cost per person was just a side note, purely to say that it wouldnt cost much for each person to send. meaning without the blocklimit 4000-8million people could send transactions without little cost to themselves

And mine I have underlined. The block limit prevents 4000 from sending any transaction within 10 minutes - regardless of spam or house purchase, no matter to whom. I am not disagreeing with you - I am agreeing, yet amplifying further that the restriction is not tx to one's self, nor 'spam' tx. It is rather any transaction whatsoever in number greater than ~4000 in ten minutes.
sr. member
Activity: 346
Merit: 250
blocklimit stops more than 4000 people making 1 transaction every 10 minutes, even if that tx only costs a few cents each person

Sort of. Block limit stops more than 4000 people making 1 transaction every 10 minutes, regardless of how much they might choose to bid in the transaction fee.

my point i have emboldened. simply that the blocklimit stops 4000 people sending one spam tx to themselves each

the cost per person was just a side note, purely to say that it wouldnt cost much for each person to send. meaning without the blocklimit 4000-8million people could send transactions without little cost to themselves

Alea iacta est
legendary
Activity: 4410
Merit: 4766
blocklimit stops more than 4000 people making 1 transaction every 10 minutes, even if that tx only costs a few cents each person

Sort of. Block limit stops more than 4000 people making 1 transaction every 10 minutes, regardless of how much they might choose to bid in the transaction fee.

my point i have emboldened. simply that the blocklimit stops 4000 people sending one spam tx to themselves each

the cost per person was just a side note, purely to say that it wouldnt cost much for each person to send. meaning without the blocklimit 4000-8million people could send transactions without little cost to themselves
legendary
Activity: 3038
Merit: 1660
lose: unfind ... loose: untight
blocklimit stops more than 4000 people making 1 transaction every 10 minutes, even if that tx only costs a few cents each person

Sort of. Block limit stops more than 4000 people making 1 transaction every 10 minutes, regardless of how much they might choose to bid in the transaction fee.
legendary
Activity: 4410
Merit: 4766
actually its both

tx fee's stop 1 person from sending out 4000tx to himself every 10 minutes because it would cost him $160 every 10 minutes to do so.

but..

blocklimit stops more than 4000 people making 1 transaction every 10 minutes, even if that tx only costs a few cents each person
legendary
Activity: 4466
Merit: 3391
The maximum block size prevents a miner from spamming. Transaction fees don't.
legendary
Activity: 3878
Merit: 1193
The biggest challenge is scaling the transaction fee with the moving price, especially if we start breaking higher prices.

Not hard at all. Fees are not required, so they can be adjusted on-the-fly without any sort of forking change required to the network.
legendary
Activity: 3878
Merit: 1193
In my opinion, (minimum) fees should be proportional to the amount sent

How would that work? Most transactions have a change-output, but you can't tell it's change.

Take a 1 BTC input: Are you sending .01 BTC with .99 BTC change, or are you sending .99 BTC with .01 BTC change? There is no way to determine a correct fee.
legendary
Activity: 1946
Merit: 1007
The biggest challenge is scaling the transaction fee with the moving price, especially if we start breaking higher prices.

I do believe that scaling transaction fees is a better solution than limiting block size to prevent spam.
legendary
Activity: 1148
Merit: 1014
In Satoshi I Trust
transactions should not cost more than 3-5 cents within the next 10 years in my view. we need adoption. miners are okay with that too because they want a growing ecosystem, they dont want high fees (atm), they want the block reward which will be much higher in the future (in USD terms).
donator
Activity: 1617
Merit: 1012
In my opinion, (minimum) fees should be proportional to the amount sent, that would be fairer (proportional like in really proportional, not like in taxes where the percentage increases notably for higher amounts).

Fairer based on what? Currently the minimum fees are based on resources used (the number of bytes on the blockchain) and not the value of the transaction. If fees are based on the value of the transaction then you could argue that it is unfair because the larger transactions are subsidizing the smaller transactions for the network and storage used.

If you look at messaging system that the banks use to transact between themselves, e.g. SWIFT, the banks are billed based on the number of transactions/messages that they send/receive over the network. They are NOT billed by the value of the transactions. Similarly if you send an international wire transfer you pay a flat fee ($35 for my bank) and not a percentage of what you wired.

To me the Bitcoin network is a raw messaging network that allows you to send bitcoins from one address to another. There is no value added on top of that. For example, unlike VISA or MasterCard, the miners do not take on additional risk for confirming higher valued transactions vs. lower valued transactions. The network treats your 1,000 BTC transaction with the same irreverance as the 0.01 BTC sig campaign payout if they both have the same byte size, fees, input age, etc. Therefore it is fairest to charge based on resource load.



legendary
Activity: 1260
Merit: 1000
Even if it is required to pay certain transaction fee, it is the miner who collect the fee, so if mallicious miner fills blocks with own transactions, these will be basically zero fee transactions, so minimum transaction fee of 0.0001 is not solution to this attack vector anyway.

It does solve it because it falls under the same game theory motives for which Bitcoin is based.  A gigantic miner with the ability to collect his own transaction fees would be better off mining for profit rather than attempting to attack the network.
legendary
Activity: 1610
Merit: 1183
As long as Coinbase keeps covering the fees for the smallest transactions, I am fine with what you suggest Tongue.

Now talking seriously, I do not know if really low fees has never been among the priorities of Bitcoin, but it has at least attracted plenty of users (including myself). If that is not true, at least start by fixing Wikipedia's article on Bitcoin:

Quote from: Wikipedia
Bitcoin as a form of payment for products and services has grown, and merchants have an incentive to accept it because fees are lower than the 2–3% typically imposed by credit card processors. Unlike credit cards, any fees are paid by the purchaser, not the vendor

Why not better limit the number of (micro) transactions per day/week/whatever from a given wallet?, would that be centralization?
In my opinion, (minimum) fees should be proportional to the amount sent, that would be fairer (proportional like in really proportional, not like in taxes where the percentage increases notably for higher amounts).

The blockchain shouldn't be filled with spam thats why I like the Lightning Network idea. I wish we could scale to VISA levels all transactions on-blockchains but that's unrealistic. Fees will have to go up eventually. Of course fees will always need to be the cheapest of all money transfer systems otherwise a big incentive to use BTC is lost.
sr. member
Activity: 423
Merit: 250
For the last of my opinion, if I was the dictator of Bitcoin, for a conservative solution, I would currently be forking to 4MB blocks and probably a minimum transaction fee of 0.0001.  Zero fee transactions only serves as an attack vector and never should have existed in the first place.


Miners can choose what minimum transaction fee should be and whether to accept no fee high priority transactions, but to prevent chaos it has to be coordinated with wallet developers, otherwise many people may be affected with not confirming transactions if their wallets use small fee.

Even if it is required to pay certain transaction fee, it is the miner who collect the fee, so if mallicious miner fills blocks with own transactions, these will be basically zero fee transactions, so minimum transaction fee of 0.0001 is not solution to this attack vector anyway.
hero member
Activity: 770
Merit: 509
It's funny that some people are delusional enough to think that we can scale Bitcoin to worldwide levels with microscopic fees.
The fees will always be tiny compared to the banking industry, but we must not put microscopic fees above decentralized nodes in the priority list.
legendary
Activity: 1526
Merit: 1179
I do agree that a minimum tx fee is better as solution than simply increasing the block size. I only don't think it's a good idea to for example force Bitcoin wallet clients to force people to pay a certain fee.

The great benefit/selling point of Bitcoin is that you can send money without even 1 Satoshi as fee. It's not a selling point anymore since a lot no fee transactions won't even confirm within a 2-3 day timeframe.

It's a more than difficult subject without an easy solution. There are a lot people with different views on how to reduce the amount of spam transactions. But so far non of them came with the best possible solution where the majority of people are happy with.
legendary
Activity: 1260
Merit: 1000
I had to post this because I feel like it's either a misunderstanding or lie when I see people constantly claiming block size is the anti-spam tool of Bitcoin.  It's minimum transaction fee, not block size, that is the spam prevention measure.  Some would argue that to avoid having any trace of a central banker in Bitcoin, it is miners who should theoretically determine the lowest price for which they can pass on transactions and keep themselves afloat to determine this minimum transaction fee.  This creates a free market competition between miners.

The other side of this story is, the act of placing a block size limit at all, even if for supposed technical scalability reasons, already places you into this role of central banker in the first place.  You're directly affecting the fee market with this action by constricting available throughput.  For Bitcoin to have no central bankers, it would require no minimum transaction fee and no maximum block size.  The creator of the network, Satoshi, seemed to believe this isn't possible due to an infinite block size being an attack vector to destroy functionality of the network.  Due to this, somebody in the chain of command of the network will be playing roles of central banker - either miners, developers, or both.

The only question is, who are the rightful owners of these two central banking powers of Bitcoin - minimum transaction fee and maximum block size?  The precedent we currently have is that both miners and developers have authority to do so, but miners have veto power over whatever the developers decide since they're the ones putting down the resources as collateral. When you see people claim Bitcoin has no governance structure, this is another misunderstanding or lie.  In the real world, force or violence is the deciding, ultimate consensus mechanism above all us.  The only reason Bitcoin works at all is because it's a direct simulation of this power structure.  

PoW is the governance mechanism that replaces the physical act of war with a digital one.  You could make the claim that it's a war game simulation, but it's in fact more real than simulation - it's a constant state of actual war with real money and resources on the line.  It is therefore within any developer's right to throw whatever they want at the dart board and see what sticks.  You don't have to be a Bitcoin core dev to join a real war, you can just run right up and start killing people.  Anyone who isn't a miner isn't an actual participant in this war.  Unless they own enormous mining farms that I don't know about, people like Mike Hearn, Gmaxwell, Gavin, etc, are basically politicians, diplomats, or emissaries.

Back to the previous topic of minimum transaction fee and maximum block size.  Bitcoin is not designed to facilitate micro-transactions.  The design of Bitcoin is most coherently designed to be used as a checkbook and/or savings account for higher value transactions in current form.  From a miner's perspective, it's in their best interests to vote for the highest minimum transaction fee that the network will bear.  From a developer's engineering viewpoint, it's in their interest to set it to set it to a level to prevent spam or attacks from constantly filling up blocks to create a backlog.  They both have authority to do so, and both of these interests clearly point to a minimum transaction fee higher than zero, so a Bitcoin dev that isn't advocating a minimum transaction fee isn't fulfilling his role well.

Most or all of what I've talked about above I consider to be facts or objective reality from my senses.  To close, I will talk about what my estimations point me to as best solutions.  As already mentioned, Bitcoin isn't designed for micro transactions, so let's take a look at things that don't fall under that category.  With 1MB block size you can probably do around 500,000 transactions a day.  There are 14,000 houses and 43,000 cars sold per day in the US, so with 1MB blocks, you're probably dangerously close to filling up every block if you processed all the world's house and car transactions.  To maximize the network effect of Bitcoin and prevent a glass ceiling, it generally needs to be something that people can use for large, checkbook type transactions, on-chain.  Not just just once per year for a house or car, but for other large purchases as well.

The bad news is, I think it would have to scale to a minimum of 8-10MB blocks to really get rid of most of the glass ceiling on price, then something like the Lightning Network or other solution to facilitate micro transactions.  The good news is, I think this scalability goal is easily achievable over time, and it's very strange we live in a time where both this software invention and scalability seem to be converging soon.  For the last of my opinion, if I was the dictator of Bitcoin, for a conservative solution, I would currently be forking to 4MB blocks and probably a minimum transaction fee of 0.0001.  Zero fee transactions only serves as an attack vector and never should have existed in the first place.
Jump to: