Bitcoin is looking increasingly less practical. The size of the block chain is becoming massive. Recently I tried downloading the official client, and after 2.8GB of downloading with the progress bar only about half way through I gave up. If Bitcoin becomes more popular in future the block chain really isn't going to scale well, and that's going to result in a more centralized system in which there are fewer block chain "banks".
Efficiency in syncing the blockchain appears to be the number one priority of the bitcoin client developers right now. The next release, 0.8.0, will have major improvements in this area.
"new features are being added to the protocol to support alternative implementations– next major release of bitcoind/Bitcoin-Qt (version 0.8) should support for “bloom filters” to get just the transactions relevant to your wallet"
"...optimize transaction storage so validating transactions requires much less disk access and memory..."
Several gigs may be prohibitive for an end user, but not for anyone who wants to set up a server. How many people run their own email servers any more? Spam control and all the security and other BS is a giant PITA. That doesn't mean, however, that there isn't still Hotmail, Gmail and Yahoo. Email is not centralized.
Though, I see that this is a bit different. If I had 1000 bitcoins I wouldn't want to put it on any server but my own. But, then again, I'd be pretty rich and downloading a few gigs of data wouldn't be the end of the world. ;)
exactly, if you are dealing with under 100 BTC then a webwallet will work sufficiently well for keeping your money in, however those with larger balances are more likely to not mind needing to download the entrie blockchain.
I will say that I recently wiped by HDD and re-installed everything incuding the bitcoin-qt client and it probably took me around 24 hours to download the entire blockchain, probably just shy of 210000 blocks. The first 50-70% of data took very little time at all, the last 50-30% took the lions share of the 24 hours.
Hard drive and network cost per gigabyte is always falling, and much faster than the blockchain is increasing, so it's not expected this will be a huge problem. But what you say is true that it will "centralise" more in a sense - but the barriers to entry will still be much smaller than any other financial institution so there will likely be many groups still involved with processing the block chain.
It uses a remote blockchain so that you don't have to sync with the network. But you control the wallet (the private keys that let you spend the coins) so it doesn't suffer from the problems of the online hosted wallets where you are not in control of your coins.
However, using Electrum entails putting significant trust in the third party that hosts the blockchain for you (and it's not clearly identified on the Electrum website who that is). See past discussion: https://news.ycombinator.com/item?id=4836269
If I were going to trust a third party to begin with, I'd just go with a hosted wallet like Coinbase. They seem more reputable to me than whoever's behind the Electrum project.
“All thin clients listed below currently connect to a single server, and are vulnerable to an attack similar to a double-spend. The attack can be run by that single server - the server can just lie to them that they received a Bitcoin transaction, and they, assuming the server does not lie, perform some service, transfer funds or send goods without actually receiving any Bitcoin in exchange.”
Scenario: Bob hacks the server (or colludes with the people operating it). He buys 100 BTC of goods from you, you see the funds in your Electrum client and ship the goods. Surprise! the transaction was fake. You're out 100 BTC.
I'd have more faith in this system if the Electrum website disclosed, very clearly, that this kind of attack is possible and also spelled out exactly who is running the server and why I should trust them. Instead, they appear to be trying to sweep the whole issue under the rug. I therefore see little reason to trust Electrum.
This is a pretty unlikely scenario for a typical use case. The attacker would have to own the electrum server that the victim is connecting to, and orchestrate a fake transaction. Even then, if the person double checks the transaction via a third party like blockchain.info, they would see it's fake.
I think you are over-exaggerating the impact of this vulnerability given the safeguards available to mitigate the attack, such as running your own electrum server or cross checking transactions with a third party.
I guess it depends on the technical savvy of the user and whether “running your own electrum server or cross checking transactions with a third party” is really going to happen.
The project website doesn't advise taking these measures, nor disclose the possibility of this scenario. That's what bugs me the most here.
If their intended user is a knowledgeable Bitcoin hobbyist, who knows how the currency works inside and out, maybe it isn't a big deal, but just speaking personally as a Bitcoin newbie, the lack of disclosure/accountability suggested I stay away.
That's sounds like a very prudent decision to me. I fully agree that this issue should be clarified on the site. I will add it to my community service todo list to email the developer to try and help resolve the issue.
The project is still in its early stages of development, but is already very useful to bitcoin-tech savvy users. The ability to install it on my Android phone and other devices while running my own transaction server is a big plus for me currently.
You don't need to store the entire block chain in every client, even in a model where you don't want to trust a third party server. Most of the block chain is "dead," in that the coins in those transactions have changed hands since then. You can drop those transactions as they can't affect anything. Further, since the block chain contains a Merkle tree, each client only needs to have log(n) blocks on hand to validate the entire tree (i.e., provided by someone else or federated across the network).
There's a lot of compression possible that the client hasn't bothered with yet. The community expects this to eventually be a solved problem.
There's already a couple of ways around this. One is the 'online wallet' set up, where someone already has the complete block chain online, the other is the bootstrap approach, whereby although you still download the entire chain, you can do it a lot more quickly via Bittorrent or the like.
But generally, I imagine most people would go with the online wallet approach if they're not comfortable with the drive space requirements.
I also believe that it is possible (theoretically, at least) to essentially just start somewhere further in the chain, in a way. Having said that, that would probably remove you from the option to mine at the same time. Maybe?
I think that the sustainability issue can be managed with bloom filters etc, but you are correct. Under the current model where the entire block chain must be in the possession of every client, Bitcoin is not remotely close to sustainable. Imagine if, in order to process credit cards, you had to download transaction data for every credit card transaction in the history of credit cards.
What surprises me is that the original creators, who were obviously very intelligent, didn't anticipate this becoming a problem and create the system from the ground up to address it.
So, what I don't get is why can't I, as a user, just pick how far back I want to go? Why can't some trusted party, like bitcoin.org post a their best guess for the block chain state 10 days ago. Isn't that sufficient to determine with a high level of certainty that I am on the correct branch and that there has been no funny business in the history?
I guess I long ago decided that Bitcoin was interesting enough with just the possibility of not having to rely on a central authority/entity.
More to the point, however, is that this isn't really an issue of an authority, but rather an issue of trust. If I for whatever reason decided not to trust Bitcoin.org, someone else could take their place. For instance, I could get my recent state of the block-chain from a pal that I trust to do the actual task of verifying the full chain. I could even pay that person some fee periodically for providing that service. You could probably come up with a distributed, fraud resistant, method of providing recent block chain states where many sources would have to be simultaneously compromised for any attack.
You should read my new blog post and buy it as an ebook (DRM free!) titled "Seven Effective Secrets You Didn't Know About To Not Let Things Disrupt Your Zen Flow For Your Super Productive Day (And Five You'd Forgotten!)". It's even got a forward by someone who had read a Wikipedia article about Alan Kay!
It's available on my website (shameless plug) at www.bltzrg-app.me
You will be getting a letter from our lawyers shortly. Our stealth startup has been quietly developing a product for the personal productivity blog post space for the last 2 years. Some of the guys who invested in Facebook invested in us at a $999,999 valuation. We've yet to make a profit, but I'm sure we will one day! Did I mention it's also a responsive desktop/mobile hybrid app built using Meteor, Haskell and the Go programming language?
You are out of luck. Now if you'll excuse me I've got some Ruby on Rails code to write and a blog post hating on PHP and applauding Node.JS and NoSQL.
Transaction fees are a 'gift' from the person doing the transaction to the person that's processing the transaction. Processing transactions is done in blocks, and the process is called 'mining' because for every processed block, the person who processes the block gets 25 BTC (before today that was 50 BTC) plus the transaction fees. Obviously 25 BTC is a lot, which is why it's so hard to mine blocks. Mining is often done in groups, and the person who mines a block has to share the profits with the rest of that group.
IIRC the entire Bitcoin community mines 6 blocks per hour, and it's the mining process that keeps Bitcoin going, because without miners there couldn't be any transactions.
This is why transaction fees will increasingly be important as BTC matures, after all 21 Million are gone the only reward for "mining" will be the award of all transaction fees paid for transactions in that block, so much like the old west, mining is gradually replaced with banking/processing :-)
It will continue to halve, exactly one more time to 12.5, and then the next time after that, it will stop. Once the 12.5 reward is gone, the network will be supported entirely by transaction fees, and no new bitcoins will be created.
So, yes, asymptote, but the rest of your comment seems misleading. It will halve once more, that's not exactly "continue to halve."
And, actually, it may continue well beyond 2140. The only reason it would stop there is because the smallest value bitcoin can currently represent is 0.00000001 BTC (1e-8). Many people believe that the rising value of bitcoin will bring about a need to increase the number of decimal places that bitcoin supports. If this change is made to the protocol before 2140, the the mining reward will probably keep on halving to values even less than 1e-8 BTC.
Some people also wanted to make sure that their particular transaction was included in this block for posterity. Paying a fee increases the priority (https://en.bitcoin.it/wiki/Vocabulary) of the transaction to make it more likely to be included.
I'd say give it another month or two. Many are still able to mine profitably if they have 4x cards per rig (dividing the "fixed (power) costs" of motherboard, psu, etc). Once ASIC mining hardware comes online, GPUs will be completely worthless for Bitcoin mining.
But if you see a deal, by all means grab it.
* Disclosure, I am the community manager for a GPU-centric Bitcoin mining pool
Why would it? Those who have invested in dedicated mining hardware aren't going to switch it off just because the reward has halved. At least not until mining fails to pay for the electricity that goes into it (but I don't expect that will ever happen.)
This is what I don't understand about bitcoin. With my extremely small amount of knowledge about it, I thought the idea was to make it so that the rewards for mining were aligned closely with the price of electricity.
But is this the price of electricity in the USA? What about hiring people to do mining in countries with cheaper electricity?
What about if some miners had a solar panel on the roof? Although, as I write this, it occurs to me that at some point, it would be more economical to sell the solar generated electricity back to the grid, rather than use it for mining hardware...
... GPU mining is still fairly profitable with the half reward for ~most people (those who don't have electricity over $.15/kwh or so). My expectation is that the difficulty is currently lower than its proper equilibrium because people have opted to not purchase more GPUs while anticipating the introduction of ASIC devices.
Where do you get the $0.15/kWh figure from? I am curious, since this seems to make it sound like there is a stable formula for converting kWh's to BTC's. That will of course depend on the exchange rate, but I'd like to see the figures.
Why do you put a hardware cost of 0? If you put the true cost, let's assume $1000, it'll take you 273 years to make your money back. I assume the value of the currency will increase, but still... am I missing something as it seems a pretty flawed way to make money.
I put no hardware cost because I'm looking at the instantaneous profit function (or close using a 24 hour window) for hardware owned prior to the reward reduction. The comment was referencing whether or not it is still profitable to mine given a certain electric rate. Also understand that some people will continue to mine even at a slight loss during the winter for free heat, while others will sell their hardware and put the money to better use.
So, if you want to amortize the loss of hardware value over 24 hours be my guest. If you want to purchase hardware to (profitably) bitcoin mine, then (as you clearly recognize) you need to get the new specialty hardware not an off the shelf video card.
Anticipation could have affected exchange rates earlier. Also affected: prior investment in rigs given expected-payback and risk levels.
But the decision "with my current fixed plant, do I mine this hour, or not?" is unaffected by anticipation. Either the expected-reward is enough to pay incremental costs, or not.
The expected reward for the same hashing power is now half what it was. Surely, some marginal miners who were only slightly profitable before are now non-profitable. It may take them a while to notice, but when they do, they're likely to drop out. But this is far from half of the mining capacity, and other rigs that are still profitable at the new reward rate are still coming online.
I expect difficulty to trend down a bit in the very short term... but not by half, and not for long as lower-power rigs continue to come online.
>But the decision "with my current fixed plant, do I mine this hour, or not?" is unaffected by anticipation. Either the expected-reward is enough to pay incremental costs, or not.
Some people use mining as a way to privately purchase Bitcoins, and/or are speculating that the value will rise long term. Some would rather pay $105 of power and not have a banking paper trail connecting them to their coin purchases (usually because they are kind of paranoid or doing something legally questionable) than pay $100 to purchase the coins on an exchange.
Also, if you've never mined, there is something kind of geek-magical about creating money with your computer.
Yes, sure. I've mined, and even mined for a bit at an occasional loss after hitting punitive over-baseline electric rates).
But it's farfetched to predict that everyone who was willing to do something when the bitcoin reward was X will still be willing to do it, in the exact same amount, when the reward is reduced to X/2. (Even if the goal is 'anonymous bitcoins' at above-market rates, they've still become twice as costly.) Demand curves slope down, supply curves slope up, exceptions are rare and not in evidence here.
What might this do to the acceptance of bitcoin? In an article yesterday, someone mentioned in the comments that it was no longer financially viable to make money from mining, I would assume that this would make it doubly so. If that is the case, will there be required transaction fees for processing transactions, and how will that effect the price of BTC?
This person is misinformed. Mining is still quite profitable to many of us. Eg. each one of my Cairnsmore1 FPGA boards makes about $43/month, after the halving. Before the halving, they made $86/month. I paid $640 for each one. Electrical cost for one of them (40W) is $2.90/month at the worldwide average rate of $0.10/kWh.
You can make your money back in 3 months. Because after 3 months you would have mined $129, and the resale value of the board is at least $500 on eBay. So, in essence, anything mined after 3 months is pure profits.
However I don't recommend anyone to buy FPGAs right now, as ASICs are coming in December/January, and they will change the game.
Transactions fees only increase my revenues by ~1%.
What do you think the resale value of that board will be after everyone switches to the next great tech? The long-term trend for BTC mining is always going to be that it is not profitable for people who pay average or above-average for electricity. If you invest capital at the right point in a tech-surge then I'm sure you can see some profits but this business has almost no barrier to entry so you should not expect it to be something you can rely on for profits.
From what I know about BTC, it's engineered so that the currency is constantly operating and "peak mining" - if mining begins to fall off, within a certain number of cycles mining will become easier, thus making mining more profitable again.
The point of that is to keep the rate of block solutions relatively constant, regardless of how many people are mining. After the last big price crash, it was instantly extremely unprofitable to do any mining, and the number of miners crashed overnight. eBay was flooded with 3d video cards. So the difficulty came down again until blocks were being solved regularly, but no one was making any money unless they weren't seeing their electric bill (or had really low local rates).
I was thinking more along the lines of, based on mrb's figures, buying 11 FPGA boards and letting them pay my rent. That's substantial enough profit that if I didn't file properly, I'd be worried about a knock on the door from the IRS.
Bitcoins seem like capital items to me and I fully expect governments to treat them as such. If bitcoins become widely used enough people who haven't been careful will be facing investigation by the IRS or equivalent in their own country. It would not surprise me at all to hear of some large confiscations of computer equipment and bitcoin wallets by the IRS at some point in the future.
Transaction fees will be one factor, and are already built in. Pay a transaction fee and your transaction gets processed faster.
But also, miners who can't be profitable anymore will drop out. As they do, the mining difficulty will decrease until mining becomes viable again. On the other hand, the first special purpose mining ASICs are starting to be offered, and people with those will be able to mine more efficiently.
I'm not expecting the bitcoin price to change significantly, since I figure it's determined more by the demand for bitcoins than by production costs. Looking forward to seeing whether that's correct.
what makes you think it's a problem? the fewer bitcoins in circulation, the more they will be worth. And being (theoretically) infinitely divisible means that the tiniest fraction of a single bitcoin would still be enough to go around if all other bitcoin was somehow lost.
So instead of spending Bitcoins, I should just save them and spend dollars, because if I have a whole Bitcoin token when people are trading in millionths of a token, I am a millionaire. Sounds like a currency that has a pretty dim future...
No because you'll eventually have something come up that makes you want to spend those bitcoins, even though you know they'll be worth more in the future. and when you do so, you'll be getting a significant effective discount on your purchase. For example, if you bought bitcoins now at $12, sat on them like a good little hoarder, knowing they'll be worth $1000 in 5 years and all of the sudden you need a new car and the bitcoins are only worth $24, you're getting a 50% discount on your car purchase by spending those bitcoins.
Bitcoin works by having "blocks" of data, containing transaction history (every Bitcoin transfer someone has made - it is only actually made when incorporated into a block), "mined" by a network. These blocks are mined by incrementing a value in the block of data computing a hash of it, until it falls within a certain range. The fact the hash must be in this range results in Bitcoin miners having to do millions of hash computations until they find the correct one, creating a significant level of difficulty in producing a block. This difficulty means that it is difficult to spend Bitcoins twice, since you would theoretically need to control 50% of the computing power working away at it. Each miner is competing with every other to mine the next block first. Whoever does so can add a "reward" of Bitcoins to the block of transactions, and this is how new Bitcoins are made. Over time, the Bitcoin network increases the difficulty by making the range of valid hashes narrower, so that even as more miners join the network, it will still take roughly 10 minutes until the next block is mined. What's happened in this case is that now the reward, previously 50 BTC, has been halved to 25 BTC. I should note that miners can also deduct transaction fees... anyone who makes a transaction can add a small fee. This adds an additional incentive for miners to mine a block beyond the other reward. It also means, of course, that they prioritise whoever pays the highest fee.
I've long wondered about this, how long does it take to process a transaction if you add no fee? The fee is pretty significant (especially for microtransactions), and I'm not in a hurry, so I can wait a few minutes/hour.
Bitcoin are "mined" by miners across the globe who run special software on their machines/mining rigs. Each time a block was mined before block #210 000 miner earned 50 bitcoins (+transaction fees). Now, it will got only 25 bitcoins. It's part of Bitcoin specification. More reading: https://en.bitcoin.it/wiki/Mining#Reward