Hacker News new | past | comments | ask | show | jobs | submit login

I always wondered about that and perhaps someone here can explain. After bitcoin reaches its "full" volume, mining rewards will go away and the only way miner income can stay the same is if transaction fees rise to match. Since the competition of miners basically converges to "block reward is equal to electricity cost equivalent", this would mean transaction costs increase to an insanely huge amount. Not paying the larger transaction costs would lead to the less efficient miners being squeezed out of the pool of miners, leading to less hashing power overall and thus an increased vulnerability to attack.

How does the system intend to keep up miner income after all bitcoins have been mined?




It's an unsolved problem, and all solutions would require a majority of the mining pool to get on board.

You could periodically increase the block size, splitting the transaction fee among more transactions. Although larger blocks make it more difficult to produce hashes, so more power would be consumed, thus increasing the transaction fees further.

You could change the block reward such that there's a larger block reward or even some kind of sustained rate of inflation. The cap of 21 million bitcoin isn't a fundamental unit, it can be changed if a majority of the mining pool decides to.

You could switch to Proof of Work, which doesn't use nearly as much electricity. Given how long this has taken Ethereum, this would probably be a multi year effort.

If the Lightning network were to take off, it might also help with this for day to day users. I'm not super confident about that though. I don't think a Layman is going to deal with the Lightning network, personally. Especially with the current narrative of bitcoin being a "store of value" rather than a currency. Bitcoin proponents don't seem to be advocating using it as a day to day payment tool.

Of course, there could also just never be any consensus on the direction to take, the network could be attacked, people could bail on bitcoin for other cryptocurrencies or just abandon cryptocurrencies all together and it could become a relic of history.


> You could periodically increase the block size

It's unclear if that would solve the problem. If BTC becomes a global store of value (which it seems to be in the process of), the avg. transaction value goes up and with it the fees that can potentially be paid. The block size cap ensures that there is a fee market if there's enough demand for transactions, so that not everyone simply pays the minimum fee. If you increase the cap this market might disappear and leave miners with _less_ income.

> The cap of 21 million bitcoin isn't a fundamental unit, it can be changed if a majority of the mining pool decides to.

No.

1. It is one of _the_ fundamental selling points of BTC. 2. A miner majority isn't sufficient to force such changes, the mined blocks would simply be invalid for any validating client. So you need to get users on board too.

I think the solution will be L2/L3 transactions for payments and L1 transactions for settlement and large transfers, so that each L1 (=on the blockchain) transaction has enough economic value to afford high fees.


If the miners decided to change, it would change. They control enough of the chain that it wouldn’t matter. Not many people run full nodes.


It seems likely to me that the cap will just be expanded at some point, but that is likely tens of years away and its expansion will likely be equal to or less than the replacement value of lost coins.


Bitcoin? Sure, you can make any number of additional forks of btc with a different cap -- hell, dogecoin is a fork of bitcoin with no cap at all.

But it won't be bitcoin.


> You could switch to Proof of Work

Wait, you mean "move away from" ?


Presumably meant to say “Proof of Stake”


periodically increase the block size, splitting the transaction fee among more transactions. Although larger blocks make it more difficult to produce hashes

Couldn’t they simply lower the baseline difficulty along with a block size?

Edit: and wouldn’t difficulty drop automatically in this case?


Bitcoin is best understood as a timestamping service that signs up to 1MB of information every 10 minutes. Recording monetary transactions is only one of its applications.

The 10 minute interval is an important part of the consensus mechanism as it has been proven secure both theoretically and practically. With shorter block interval and odds of orphan blocks and small chain reorgs would become more likely and this could break some aspects of security model such as zero-conf transactions.

By the way larger blocks don't take longer to hash - only the fixed size header is used for PoW. However larger or more blocks do require more bandwidth and storage to process.


By the way larger blocks don't take longer to hash - only the fixed size header is used for PoW.

Yeah, I forgot about merkle trees or something like that. So, do I get it right, there is no problem in increasing a block size? Just start to sign up to 50MB every 10 minutes in 2022 and that’s it?

However larger or more blocks do require more bandwidth and storage to process.

But isn’t amount of data depend on tx count? No matter how big chunks you split them into, it’s the same bytes per minute in the end. Why hard limit at all?


The original security model of bitcoins also assumes that:

1. Every network node participates in mining. So everybody is incentivized to keep, validate and forward the blocks they receive as quickly as possible.

2. Anybody should be able to bootstrap a network node and verify the entire blockchain from the genesis block without explicitly trusting any other node. Thus when a new block arrives one can independently verify it.

#1 has not been the case for a few years since the advent of mining pools, whereas #2 might as well be a lost cause. The entire bitcoin blockchain sits at 330GB and counting, and the live UTXO database is rarely below 3GB.

Hence people have argued against making the blocks larger as it could bloat the blockchain to the point that only people with very powerful computers could afford to validate the chain on their own. However with the status quo we are already seeing the number of network nodes stagnate around 10k since 2017 as running one is largely an altruistic effort.

>But isn’t amount of data depend on tx count? No matter how big chunks you split them into, it’s the same bytes per minute in the end. Why hard limit at all?

That is correct. You could also see the limit as putting a minimum cost for putting information on the chain and this could benefit the miners too.


Your speculation doesn't square well with the original whitepaper that preempts your concerns by pointing out how you don't have to run a full node. It introduces SPV and points out you just need to store 80byte block headers (total of 50MB in 2021). (Satoshi was a big believer in SPV)


I was more or less quoting the point of view of the current crop of developer who are very keen to keep the status quo. Not that I necessarily agree with all of their arguments, however they make good counter points to the other extreme viewpoint of "let's have 4GB blocks tomorrow and everything will be A-OK"


Well that’s the question and the reason for the block war and the BTC/BCH split.

I’m not sure myself. Attempt to drive people towards LN or other “second layer” solutions for payments? Or deliberate attempt to create a high fee market for miners? Or attempt to keep bandwidth and storage costs down to lower barrier to entry for mining, to keep it more decentralised?

Certainly the decision to keep the cap has caused the move from “digital currency” to “digital gold” / store of wealth.


There aren't that many freebies, and the decision is more arbitrary than it seems.

But it has downsides like changing the fee market and making it more expensive for miners to race broadcasts.


Yea, difficulty would drop. You'd end up producing a block more often than every 10 minutes. There's probably some lower bound on difficulty (and block frequency) that also maintains network consensus.


I meant drop xN by less baseline but increase xN by more difficult blocks, thus still 10min per block. But your sibling commenter now noted that the block size doesn’t affect difficulty. That’s confusing.


Block rewards are designed finite but also designed to end outside most peoples lives. So in short no one needs a solution. Block reward of 0 theoretically would be reached in 2140. Of course earlier halving will already have a similar effect BUT ONLY if the price does not at lest double every halving (4 year). Essentially this means bitcoin will allays run on inflation. The finite supply is a "lie" that just doesn't work the same way if the price per unite can simply multiply. You constantly add a smaller fraction of the total but suck out more and more value anyway. mining has never become cheaper if price/hash drops it just raises the hashing required to mine. The people who hold BTC but dont use it pay (via inflation) for thous who use it so they have cheaper (still laughably expensive) transactions. They just dont care about that as long as price gains far outperform the inflation loses.

At some point it has to crash and wont recover because double-spends happened and the network can no longer be trusted which renders it useless. If the price (real world purchase power not the price in USD) doesn't multiply for more than 4 years... the end is near. Likely the end would come before the 4 years are over. historically hash rate drops the most 1-1.5 years before halving in sync with the price. it basically boils down to how good large miners are at managing risk. they need to have the money to keep mining while its not profitable. if a large player goes bankrupt it could create a chain reaction crashing the whole thing.

BTW, next generation blockchains like the XRPL have solved all of theses problems a long long time ago. The lead dev (ex btc dev) saw these problems ~10 years ago and it took them 1-2 years to come up with something better.


This is discussed in this bitcointalk thread [1]. By constraining the block size, bitcoin is developing a fee market where transactions have to bid up the fee in order to be included in the next few blocks. Without such a constraint, transactions would only pay around 1 cent to be included (just to cover network broadcast costs), and it's next to impossible to make up for that tiny fee with a huge tx volume. In the next 3 or 4 halvings, as the block subsidy drops by an order of magnitude, fees will start to dominate the bitcoin block reward. The exponentially diminishing block subsidy is a bigger problem for less popular PoW coins that fail to develop a fee market, such as Bitcoin Cash.

[1] https://bitcointalk.org/index.php?topic=5306354.0


Bitcoin talk is basically propaganda for the lightning network since everything that goes against increasing throughput is deleted.

Right now the average transaction costs $25 and the throughput is about 1.5 KB/s (900KB block every 10 minutes on average). The entire blockchain over 11 years takes up about $6 of hard drive space. It is technically trivial for the few people who need to sync with the actual chain of any cryptocurrency to do it. There is no universe where people use bitcoin for normal transactions now or in the future.

There is also no reason to use a complicated second layer that still has to go through the bitcoin chain when other cryptocurrencies can be used more easily, more directly and much more securely.

People are not going to pay $25 fees for anything other than speculation, there is no utility for normal transaction and plenty of competition.

Right now that only makes up 14% of the total mining reward. A year ago fees only made up 0.3% of the mining reward.

For mining fees to ever take over, there needs to be a lot more transactions.

Then there is the volatility of combining both the price and transaction fees. When the price goes down, the transaction fees dip even lower. Three months ago the average transaction was 1/20th the price.

If the mining reward goes down rapidly to 1/20th of what it was before the block time can adjust, mining should go down to match. Then blocks will be created more slowly and the time to the block reward will be pushed into the future. This might make the average fee price go up since the transaction throughput will go down. I'm not sure what effect this will have on the network since it might mean miners monitor transactions and wait until there are enough out there to make their chance at finding a block worth turning their mining on.


The cost of diskspace is not as limiting as the time needed to do an Initial Block Download, which would become too burdensome with huge blocks. Transacting on 2nd layer makes a lot of sense as txs are instant, more private, and don't need the whole world to download and verify them (except for an open and close). It improves scalability by orders of magnitude


> The cost of diskspace is not as limiting as the time needed to do an Initial Block Download, which would become too burdensome with huge blocks.

The current throughput is 1.5KB/s. Regular users don't even need to sync with the blockchain. Anyone can rent a server for $10 a month that will download the entire chain of the last 11 years in a single hour. What math are you doing where you think the -current- max block size makes sense?

> Transacting on 2nd layer makes a lot of sense as txs are instant

No they aren't, they still have to make it to the main chain.

> more private

Anyone could make a new address and use VPN for each transaction if that's what they want. At least they could if they weren't in danger of transaction fees becoming larger than what is in their address, which essentially disables it until transaction fees go down. Other cryptocurrencies are already much more private if that is what people want.

> don't need the whole world to download and verify them

Very few people actually need to sync with the whole chain unless they want to. Exchanges, payment processors and of course miners. Most people never sync with the whole chain and few of those that do are doing it out of a neccesity. Even so, syncing with the blockchain was never a technical limitation.

There is nothing that a second layer offers that simply using a non-crippled cryptocurrency doesn't already solve. Ethereum and bitcoin cash have already exceeded bitcoin's transaction volume over the last week. Ethereum has had far more transaction volume for a long time now.

https://bitinfocharts.com/comparison/transactions-btc-eth-bc...


There is no strict technical limit on the number of transactions per block. Due to the rising price, each block is currently worth something like $350k.

The Bitcoin network rules restrict it to a couple thousand transactions per block. Even with that, each on-chain transaction would "only" need to cost $100 or so to replace the block reward. Infeasible for micropayments, perfectly fine for large scale settlements.

Another possible solution would be increasing the block size limit - the mining effort is a per-block cost, the cost of additional transactions is minimal. So small fees + massive transaction volume could work. With a million transactions each block, $0.35 per on-chain transaction is enough to pay for the current security level. More transactions allow for even lower fees. The Bitcoin Cash fork aims for this.

However, all of this is very long term. The halvings happen a bit faster than every 4 years. Let's assume 3.5 years - that means 20 halvings in 70 years. The block reward not drop to 0 until 34 halvings, so this is not a problem we have to deal with in our lifetime. So for the forseeable future, one possible solution is for the Bitcoin price to keep going up, paying for the same or an increasing security level despite the halvings.


A million transactions per block would increase the block size to a Gigabyte or so. That means the blockchain grows at 52TB a year, significantly increasing the cost of maintaining a full node.

But even that is really not fully taking into account how expensive transactions would be.

The current Bitcoin block size and block rate and transaction size limit the network to 7 transactions per second. There are over 7 billion people. Which means that if everyone used Bitcoin, they could get at most 1 transaction every billion seconds. A billion seconds is over 31 years. Bitcoin as it is now is not for the rubes. Layer 1 transactions will, long-term, only be for larger entities. There’d effectively be a hierarchy of who can actually afford to submit transactions on the blockchain, which very much goes against the ethos of the original Satoshi paper.

And even with your million transactions per block, you’re still talking about only one transaction per month or two per person in the world, which is far from microtransactions. The transaction fee would necessarily be a lot more than 35¢, as otherwise more people would use it directly.

So it’s just not feasible to be both scalable and accessible without a huge hierarchy (ie only big players get to do transactions) and high transaction costs. At least not with the current architecture.


> That means the blockchain grows at 52TB a year, significantly increasing the cost of maintaining a full node.

Indeed, bigger blocks increase the cost of running a full node, but anyone who has a need to run a full node is likely processing many transactions each day, i.e. the increased cost of running a node is nothing compared to the transaction costs.

That's what I don't understand about the "oh, but full nodes will be more expensive" argument. Apparently, you can still run a node on a Raspberry Pi with a SSD attached to it, for a hardware cost of ~$200. That's less than the cost of 20 transactions (bitcoinfees.co, 6 blocks fee ~$12 right now). To me, that seems like the tradeoff between cost-to-run-a-node and cost-to-transact-on-chain has been chosen very poorly.


If there were a million transactions per block (every 10 mins,) there would be a lot more than 7 per second.


Yes, about 1700 per second. Which is about the average number of Visa transactions when averaged over a whole year but still very small compared to what VisaNet is capable of (about 65,000 transactions per second)

I can’t find examples of number of cash transactions per second globally, but the Eurozone averages 1.2 cash transactions per person per day (and 0.3 card txs/person/day). Give that there are 7.8 billion people in the world, if each makes on average 1.2 cash transactions per day and 0.3 card transactions per day, that’s about 100,000 cash transactions per second and 25,000 card transactions per second.

Cash, of course, is trivially scalable. At current usage rates, VisaNet could handle all card transactions if everyone used cards as much as Europe. Total payments of about 125,000 per second is about 2 orders of magnitude greater than what a Bitcoin with 1000 fold increase in block size could do.

None of these systems is setup for micropayments. And increasing the Blocksize doesn’t change that. Visa or cash still seem far better for the small, casual payments Satoshi imagined Bitcoin would enable.


BCH addresses this by increasing the number of transactions per block. This decreases the fee per transaction.


No, that doesn't address the question at all.


Transactions will move to lightning, and since this allows multiple transactions to be aggregated into a single on-chain transaction, fees will be higher per transaction on chain.


There are a couple answers to this question, but the truth is we have ~100 years to figure this out, and the world will be a very different place then.


> basically converges to "block reward is equal to electricity cost equivalent"

the electricity cost falls significantly with the difficulty, see: https://en.bitcoin.it/wiki/Difficulty

..and: https://breakermag.com/difficulty-adjustment-is-why-bitcoin-...


It's interesting as well. If block rewards+transactions fees over confirmation period is lower than value of transaction it will lead to 51% attack being actually profitable. And actually even the transaction fees don't matter. As you can still collect them in 51% attack.


I don't think it's a problem at all: There have already been blocks in the past where the transaction fee portion of the miner reward was higher than the block reward.


Transaction fee will go up or value of Bitcoin will rise enormously to keep mining profitable with small Bitcoin reward. I believe it’ll be latter.


Bitcoin holders will probably migrate their funds to wBTC and live on Ethereum.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: