I like the idea of cryptocurrency, but I have some doubts about the longevity of Bitcoin. As Bitcoin grows, there is a greater need for mining. However, as Bitcoin grows, the returns for mining diminish.
That would be the idea, but the value of 1 bitcoin is still subject to heavy day-day fluctuation, so I'm unsure if deflation/inflation are relevant wrt. Bitcoin today (or in the next few years).
Simply news that transactions are taking hours to confirm is probably enough to influence the price a significant amount.
I realize there is a lot of politics etc involved - but would it be technically feasible to just drastically improve the performance? Could bitcoin be changed into a system that could e.g. handle the scale and throughput of some of the non-cryptocurrency money transfer systems (e.g. 10million transactions/day)?
If not - is there something fundamental about cryptocurrencies that limits their throughput or could another system be scaling much better than Bitcoin? E.g. does a cryptocurrency always need proof-of-work and does that always need to be time consmuing?
Uh, I definitely don't mean to be offensive at all but your question is very naive.
The short answer is that a lot of engineering effort has gone into improving performance and today's Bitcoin is already enjoying those benefits.
The long answer is an entire field of research. There are fundamental things about cryptocurrency that means global throughput is very low and also high latency.
The hard part is the decentralization. If you can delegate trust to a small handful of entities, it's much easier to get scaling.
My question was really e.g. are there newer "generations" of cryptocurrencies that have worked around some of the problems Bitcoin has with eg. scaling?
mostly interesting wrt. whether Bitcoin will survive or be superceded by something else.
There are newer currencies that claim to have solved the problem. But the vast majority of them do not understand the problems that Bitcoin is trying to solve, and make security tradeoffs that would be considered unacceptable in the Bitcoin ecosystem.
Those that show promise are yet-incomplete. Most don't provide practical scaling benefits greater than 5x, not a strong number considering the amount of scaling we'd like to see is closer to 10,000x.
Bitcoin favoured the early adopters (who are very rich now) there really is no incentive for normal people like me to buy bitcoins especially with such a crazy fluctuating rate.
Would it be possible for someone to deliver the 'death blow' to Bitcoin right now, by DDOS-ing the network or flooding it with even more transactions, including invalid ones ?
Only confirmed transactions cost money. So in theory you could send each miner a different double-spend, which they'd have to hang on to until either they confirmed it or received a contradictory confirmed transaction.
You can't really send a different double-spend to each miner. In my experience, the transaction will be propagated in 1-3 seconds. Each miner will pick the one it prefers (some prefer first seen, some prefer highest fee)
Perhaps block chain should accept only hashes of a set of transactions without restricting the set size, and store the actual transaction data elsewhere. This can increase the bandwidth, but will it become less secure, I don't know..
The blockchain need to see the actual transaction and store it. Otherwise people wouldn't know their balances. Storing the data elsewhere would require a trusted third party.
Bitcoin requires no trusted third party to operate.
By "quite a spike" you mean a change from 8 min to 10 min in a value with a relatively high variance? That's a slight increase at best, and nothing here suggest anything else than the null hypothesis.
Well, if you query the state, you are bound to get quite a few unconfirmed number at any given time. But they EVENTUALLY do confirm, whether its 10, 15 or 30 minutes at most.
I've had transactions waiting for 8 hours now for a confimation. And some more new ones this morning for 3 hours now without a single confirmation.
All of these contains the default fees added by the clients and which were sufficient last month.
I was trying to demonstrate bitcoin to some friends last night. They made wallets and I tried to transfer some coin to them. After an hour they were saying it would have been quicker to drive to the ATM and get cash. I doubt they'll look at bitcoin again now.
This needs fixing and this needs fixing quickly. Waiting half an hour for a few confirmations used to be a problem that needed fixing. Waiting hours will quickly kill bitcoin.
Yeah sure.
But it's not a good solution really. First of all I don't really want to pay any more.
Secondly, if everyone has to do this in order to get their transactions processed in a reasonable time, then nobody is any better off..
That's why it works. Some people are willing to pay a lot more for some of their transactions, and some transactions just can't justify a high fee.
The block size is a security parameter. You increase it, you decrease security. And it's also more of an engineering limitation than most people realize at first appraisal.
We use fees because we don't have better ways to allow more transactions. And it's an active field of study, but most of the gains so far have been very small.
...because every user knows the satoshis/byte ratio of their transaction, right?
And even if they did, we'd even up with a backlog of the same transactions, all paying higher fees. Bitcoin is barely managing 2 transactions/second at the moment, higher fees won't speed this up.
That's what a mining pool is. There is no other type of mining pool.
The purpose of mining is to find valid blocks to add to the blockchain. A transaction is "confirmed" when it is part of a block in a blockchain that has some number of blocks after it. The number of blocks after it is the number of confirmations the transaction is considered to have.
Don't mining pools concentrate on mining new blocks, as it's more profitable? Can't we have a mining pool with old ASIC/GPU miner that would do ONLY confirmations, and would do all confirmations, even those with minimal fee?
No that wouldn't actually fix it. There is a limit to how many transactions can be processed regardless of how many miners are running. Adding more miners doesn't actually increase capacity just the difficulty.
The way to fix this is increasing the size of the blocks, which is trivial from a technical standpoint, but it has some implications that the current majority of miners are not willing to accept.
As others have said "mining" is really not a good name for what is happening. What the miners are really doing is the work that is necessary to confirm and secure the transactions.
When they do that, if they are the first miner to come up with the values required to confirm the transaction they are allowed to add a transaction of their own which "transfers" some bitcoins from "nowhere" to them, thus getting rewarded for their work. it is this that incentivizes people to "mine" but it's not the purpose.