Bitcoin withdrawal processing suspended(bitstamp.net)
bitstamp.net
Bitcoin withdrawal processing suspended
https://www.bitstamp.net/article/bitcoin-withdraws-suspended/
235 comments
I have a feeling that people in the Bitcoin community are going to start learning the results of a truly free market, lack of regulations, and the dangers of dealing with a bank that you can't trust.
They already are, and it works tremendously.
There are multiple exchanges all around the world that compete for the business of customers and innovating in a break-neck speed, none of which would even exist if there was government regulation. Bugs are fixed and problems are addressed faster than the average legislator can spell "malleability".
It would work even better if there was less regulation and investors could fund exchanges in the US without having to buy a bank, so that development could actually happen everywhere and not only in Japan and Slovenia.
There are multiple exchanges all around the world that compete for the business of customers and innovating in a break-neck speed, none of which would even exist if there was government regulation. Bugs are fixed and problems are addressed faster than the average legislator can spell "malleability".
It would work even better if there was less regulation and investors could fund exchanges in the US without having to buy a bank, so that development could actually happen everywhere and not only in Japan and Slovenia.
Bitcoin "Banks" (read exchanges) exist only through their reputation. They can die within a few days as shown from MtGox. This is the way traditional banks should operate instead of being propped by tax payers so that they are allowed privatize gains and socialize losses.
I think most people are happy with deposit insurance in case their banks fail or are run by crooks.
But that goes hand In hand with allowing crooks to run banks, if regulation works so well there should not be any bad banks so no need for deposit insurance.
"if regulation works so well there should not be any bad banks"
Straw man alert; no one claims bank regulation is perfect or will stop all bank failures.
Straw man alert; no one claims bank regulation is perfect or will stop all bank failures.
It was more to point out that with or without regulation there is still risk. Regulation is not the panacea that some people think it is and regulating bitcoin will not make it better, it will just make it more difficult for people to work with it in those areas it is regulated. Plus regulation would barely be worth the paper it was written on as avoiding it would be a simple case of not operating directly within its jurisdiction. If people from that jurisdiction use your service that is their option but the regulations will not protect them so they should make their own plans.
Regulation can work, however it should not absolve users of responsibility for vetting their investments or financial service providers.
Regulation can work, however it should not absolve users of responsibility for vetting their investments or financial service providers.
Implies that insurance props up crooks, rather than just helping people after the inevitable crooks are discovered.
Banks fail for other reasons than being run by crooks.
Spoken like someone who has never been on the receiving end of someone dishonest. Lucky to be you.
The time between a bad actor starting to fleece people and the market or regulation wiping them out can still be fairly lucrative for the bad actor and fairly damaging for the public.
The time between a bad actor starting to fleece people and the market or regulation wiping them out can still be fairly lucrative for the bad actor and fairly damaging for the public.
I'd be even happier if I didn't need a bank at all. Banks suck.
Regulation would have provided that they would have gotten their funds back/in a timely manner.
Lack of regulation means that others learn from their misfortune.
Lack of regulation means that others learn from their misfortune.
Regulation would have suffocated Bitcoin already in its early days. Regulation comes at a cost. As it eliminates risks, it also eliminates chances.
Even a "perfect" regulatory system can't preempt all potential issues, so one could also say that regulation only comes about due to the misfortune of others. For example, surely a bunch of people died from bad drugs before the FDA existed.
The exchanges we are talking about are not based in the US because it is impossible to create an exchange thanks to regulation.
I thunk that is scaremongering nonsense. This is nothing to do with a free market, this is a software bug that has been well known but until yesterday it didnt affect many people. Someone is now trying to use it to obtain some sort of advantage but it doesnt actually allow them to steal any bitcoins.
Quite how you manage to link it to be a result of a "truly free market" is beyond me.
Quite how you manage to link it to be a result of a "truly free market" is beyond me.
When it's a bank, the bug and liability is on them
So what? This is an exchange not a bank. There are no missing bitcoins so there is no liability issue. All that has happened is that there has been an introduction of a delay in withdrawing. Because that delay is 72 hours it seems like a long time in bitcoin because of usually instant transactions. Compared to traditional banking it is relatively normal length of time to access funds.
The lines are blurred here between an exchange and a bank. Exchanges normally don't hold your personal assets. Bank of America holds my equities. I trust them to execute the trades on my behalf on the NASDAQ exchange. If something goes wrong with the exchange, I trust Bank of America to have my back (or at least trust that I have legal ramifications if they don't).
With Bitcoin the entity holding your assets and operating the trading mechanisms are generally the same company. This leaves a customer in a weaker position and could allow the exchange/brokerage/bank to get away with shadier practices. They can do things like delay the execution of a transaction until it better benefits them. Or they can unillaterally suspend the ability to withdraw funds with no advance notice, just as what is happening here.
With Bitcoin the entity holding your assets and operating the trading mechanisms are generally the same company. This leaves a customer in a weaker position and could allow the exchange/brokerage/bank to get away with shadier practices. They can do things like delay the execution of a transaction until it better benefits them. Or they can unillaterally suspend the ability to withdraw funds with no advance notice, just as what is happening here.
I think you are being disingenuous if you think your bank don't do similar things. Ever had to bank a cheque? When you deposit it into your account they immediately debit the account of the person that wrote the cheque, does it appear in your account for spending immediately? No you wait 3-5 working days, what happens in the interim? The bank hold it and accumulate interest on it and then you are allowed access to it.
And if the person who had their account debited would drop to a negative balance at the end of that 3-5 days the check will bounce and they will be credited back the amount of the check.
Edit: You of course do not get the funds in the case they are credited back to the original person at the end of the 3-5 days, you do probably get a fee for trying to deposit a bad check though!
Edit: You of course do not get the funds in the case they are credited back to the original person at the end of the 3-5 days, you do probably get a fee for trying to deposit a bad check though!
Precisely because it's an exchange and not a bank that any delays in transactions are problematic. I don't think the comparison is fair.
FYI: It takes 3 days to get USD out of TD Ameritrade too.
5+ days for Fidelity
[deleted]
My banks regularly have bugs in their software, and regularly make mistakes. The mistakes are "on them". So what?
At the end of the day I don't have access to my money, or I have to call their "customer support" and spend hours explaining the problem that they created.
If the bank goes down completely (as in: goes bankrupt), my deposits are only guaranteed by the state up to a certain limit, which isn't that high.
Regulation and "liability" buy me very little in real terms.
At the end of the day I don't have access to my money, or I have to call their "customer support" and spend hours explaining the problem that they created.
If the bank goes down completely (as in: goes bankrupt), my deposits are only guaranteed by the state up to a certain limit, which isn't that high.
Regulation and "liability" buy me very little in real terms.
Not sure why this is being down-voted as it is essentially true.
Large banks do have bugs, and sometimes even admit it. [0][1]
The fractional reserve system basically means if there is a problem, you need to be the first at the counter. If you are not, you will only get a certain amount of money back.
[0] http://www.telegraph.co.uk/finance/2737388/Bug-crunches-Hali...
[1] http://www.independent.co.uk/news/uk/home-news/lloyds-bankin...
Edit to add: (But not quite the same as the one above)
http://www.dailymail.co.uk/news/article-2426519/Gang-arreste...
http://article.wn.com/view/2012/06/26/Lloyds_TSB_computer_gl...
Large banks do have bugs, and sometimes even admit it. [0][1]
The fractional reserve system basically means if there is a problem, you need to be the first at the counter. If you are not, you will only get a certain amount of money back.
[0] http://www.telegraph.co.uk/finance/2737388/Bug-crunches-Hali...
[1] http://www.independent.co.uk/news/uk/home-news/lloyds-bankin...
Edit to add: (But not quite the same as the one above)
http://www.dailymail.co.uk/news/article-2426519/Gang-arreste...
http://article.wn.com/view/2012/06/26/Lloyds_TSB_computer_gl...
>The fractional reserve system basically means if there is a problem, you need to be the first at the counter. If you are not, you will only get a certain amount of money back.
In any system with deposit or investor insurance, e.g. the United States, you will get back the full insured amount (up to $250 000 for bank deposits, $500 000 for investor funds). Beyond that you will be treated as the senior creditor that, as a depositor or investor, you are. If you want more certainty as to the return of your capital, buy Treasuries.
In any system with deposit or investor insurance, e.g. the United States, you will get back the full insured amount (up to $250 000 for bank deposits, $500 000 for investor funds). Beyond that you will be treated as the senior creditor that, as a depositor or investor, you are. If you want more certainty as to the return of your capital, buy Treasuries.
Thanks for that info JumpCrissCross.
I probably should have mentioned I am in the UK. You get back up to £170k here ($280k) but I guess my point still stands :-)
Edit: (Oh, that's for a married couple by the way. £85k if you're single.)
I probably should have mentioned I am in the UK. You get back up to £170k here ($280k) but I guess my point still stands :-)
Edit: (Oh, that's for a married couple by the way. £85k if you're single.)
What sort of bugs have you seen in your bank? My money, at BoA (was several different banks before they got merged into that monstrosity) and later USAA has always been accessible to me. No debits against my account that didn't belong.
Unless that "bug" is a propensity to offer predatory loans. In that case, the liability is on the taxpayers.
When it's a bank, the ... liability is on them
Stop, you're killing me here.
Stop, you're killing me here.
Do you care to offer any sort of evidence instead of just a snide remark? Any FDIC insured bank has your back up to $250,000.
I think the events of the last few years have provided adequate evidence regarding the nature of "liability" as it applies to banks.
When it's the banks, and the bug is big and systemic -- the liability is on all of us.
[deleted]
No. People in the Bitcoin community would not in a million years want governments be involved in Bitcoin, regulating things. Exchanges need independent audit and insurance, but not greedy government bureaucrats waiting to be bribed. We want information and independent audit, not regulation.
Does using Bitcoin require one to join the libertarian hivemind?
Dogecoin has a much lighter outlook on the whole cryptocurrency.
I suggest playing with Dogecoins. It is beginning to become serious, and their community prefers to stay out of this political nonsense.
Dogecoins took some practical things and made them better. No ASICs exist yet for Dogecoin, so its still possible to mine them on normal computers. 1-minute block times means they're much faster than Bitcoins, and its refreshingly silly that people are sending each other thousands of DOGE at a time. (current exchange: $10 == 5,680 DOGE)
So it is ridiculously easy to get yourself thousands of DOGEs to play with.
I suggest playing with Dogecoins. It is beginning to become serious, and their community prefers to stay out of this political nonsense.
Dogecoins took some practical things and made them better. No ASICs exist yet for Dogecoin, so its still possible to mine them on normal computers. 1-minute block times means they're much faster than Bitcoins, and its refreshingly silly that people are sending each other thousands of DOGE at a time. (current exchange: $10 == 5,680 DOGE)
So it is ridiculously easy to get yourself thousands of DOGEs to play with.
No asic exist for any crypto currency other than bitcoin that is because it is not economically viable to develop them for currency with so little Value. quick transactions are no substitute for secured transactions so that you get 1 minute box is not really relevant
Q
Q
ASICs for the SCRYPT algorithm are much harder to make, and when they come out, they will be slower than BTC's SHA algorithm.
Remember, SHA256 was designed for speed... and easily made into a hardware implementation. SCRYPT however, was designed to be slow and explicitly designed to be difficult to implement on ASICs (its possible of course, just harder).
-------------
As for the 1 minute box, if you want security, just wait for 10 confirmations in DOGE. If you want speed, you can wait for 1 confirmation. Faster confirmations are strictly more flexible than slower confirmations.
Remember, SHA256 was designed for speed... and easily made into a hardware implementation. SCRYPT however, was designed to be slow and explicitly designed to be difficult to implement on ASICs (its possible of course, just harder).
-------------
As for the 1 minute box, if you want security, just wait for 10 confirmations in DOGE. If you want speed, you can wait for 1 confirmation. Faster confirmations are strictly more flexible than slower confirmations.
The speed of an SCRYPT ASIC versus a SHA ASIC isn't really relevant. What's relevant is the speed increase that ASICs enjoy over CPU/GPU mining. Surely the relatively few people able to produce/afford ASICs for Dogecoin would be able to comprise a large portion of the Dogecoin network, just like Bitcoin ASIC miners comprise a large portion of the Bitcoin network.
Compare current Scrypt ASICs. The best you can get today is 1350 GBP for a 5MH/s Litecoin ASIC that uses 70 Watts.
https://alpha-t.net/product/scrypt-asic-miner/
In comparison, your typical R9 290X is hitting 0.8 Litecoin MH/s in 300 Watts.
Your typical Litecoin ASIC Miner is ~26x more power efficient than a GPU.
The 290x hits ~850 MH/s with Bitcoin at 300 Watts. But ASICs will soon hit 600,000 MH/s at 300 Watts. http://www.butterflylabs.com/monarch/
Basically, BTC ASICs are 700x more efficient than GPUs. LTC (and other SCrypt ASICs) are expected to only be ~20x more efficient.
By making ASICs less efficient, it keeps more of the control of network in the hands of the individuals. SCrypt is the better hashing algorithm for ANY self-proclaimed libertarian, who wishes to remove power from the ASICs that have taken over the BTC network.
https://alpha-t.net/product/scrypt-asic-miner/
In comparison, your typical R9 290X is hitting 0.8 Litecoin MH/s in 300 Watts.
Your typical Litecoin ASIC Miner is ~26x more power efficient than a GPU.
The 290x hits ~850 MH/s with Bitcoin at 300 Watts. But ASICs will soon hit 600,000 MH/s at 300 Watts. http://www.butterflylabs.com/monarch/
Basically, BTC ASICs are 700x more efficient than GPUs. LTC (and other SCrypt ASICs) are expected to only be ~20x more efficient.
By making ASICs less efficient, it keeps more of the control of network in the hands of the individuals. SCrypt is the better hashing algorithm for ANY self-proclaimed libertarian, who wishes to remove power from the ASICs that have taken over the BTC network.
10 confirmations that take 10 minutes is no more secure than one confirmation that takes 10 minutes.
False, but I'll give it to you because I don't feel like arguing.
So we've got a system that allows for greater ease by having the potential for a 1-minute confirmation, vs a system that FORCES you to always wait 10-minutes.
The system with 1-minute confirmations can always wait for multiple confirmations to increase security. But the system with 10-minute confirmations is forced. Instead, you have tons of sites that wait for 0-confirmations!!
One system is more flexible than the other and solves a pressing need in the core system. Whether you like it or not, DOGE has learned from BTC's mistakes and is improving upon the status quo.
I don't think DOGE is perfect quite yet though, maybe a few more "fun" currencies will come and go before we stick with a winner. But it is clear to me that BTC has too many core issues at hand for it to be the cryptocoin of the future.
So we've got a system that allows for greater ease by having the potential for a 1-minute confirmation, vs a system that FORCES you to always wait 10-minutes.
The system with 1-minute confirmations can always wait for multiple confirmations to increase security. But the system with 10-minute confirmations is forced. Instead, you have tons of sites that wait for 0-confirmations!!
One system is more flexible than the other and solves a pressing need in the core system. Whether you like it or not, DOGE has learned from BTC's mistakes and is improving upon the status quo.
I don't think DOGE is perfect quite yet though, maybe a few more "fun" currencies will come and go before we stick with a winner. But it is clear to me that BTC has too many core issues at hand for it to be the cryptocoin of the future.
[deleted]
Not at all. The person you replied to should have said many or early adopters.
The thing with bitcoin is that it is a software protocol, you don't have to apply politics to it. That is like saying TCP/I has a leftwing bias.
The thing with bitcoin is that it is a software protocol, you don't have to apply politics to it. That is like saying TCP/I has a leftwing bias.
BTC is designed to cap off at 21 Million BTC, a concept that revolves around deflation... and other concepts that are libertarian leaning.
Anyone who has studied ethics understands that technology can have political leanings. Robert Moses's Bridges for example, were designed so that African American's would be unlikely to enter certain parts of New York City.
A Bridge in of itself is not pro-segregation or anti-segregation. But when Robert Moses used bridges to block bus traffic to certain areas of New York City, they were being used as pro-segregationist tools.
Technology is NOT politically agnostic. Only the naive or uneducated can believe that.
-------------
DOGECOIN's politics have been explicitly stated. It wants to be a fun and easy coin for people to get into. It is unlikely to last very long (the 100 Billion DOGE soft-cap will be hit rather quickly), but they hope to learn a lot about coins in the meantime.
Bitcoin's politics have been decided as well. Libertarians are beginning to wield BTC as a way to push their values.
I'm simply stating that one of these communities is much funner to work with. Keeping coins "fun" and "easy" resonates with me a lot more than the typical libertarian I hear about BTC.
Anyone who has studied ethics understands that technology can have political leanings. Robert Moses's Bridges for example, were designed so that African American's would be unlikely to enter certain parts of New York City.
A Bridge in of itself is not pro-segregation or anti-segregation. But when Robert Moses used bridges to block bus traffic to certain areas of New York City, they were being used as pro-segregationist tools.
Technology is NOT politically agnostic. Only the naive or uneducated can believe that.
-------------
DOGECOIN's politics have been explicitly stated. It wants to be a fun and easy coin for people to get into. It is unlikely to last very long (the 100 Billion DOGE soft-cap will be hit rather quickly), but they hope to learn a lot about coins in the meantime.
Bitcoin's politics have been decided as well. Libertarians are beginning to wield BTC as a way to push their values.
I'm simply stating that one of these communities is much funner to work with. Keeping coins "fun" and "easy" resonates with me a lot more than the typical libertarian I hear about BTC.
That is like saying TCP/I has a leftwing bias.
I agree that would certainly be nonsense.
But any technology project most definitely can implement the ideological beliefs of its creators, if it's designed to do so and succeeds in achieving that design objective.
For example, the World Wide Web was developed to facilitate sharing, exchange and collaboration.[1]. You might say Tim Berners-Lee did have certain belief system and that he did implement those in his design.
[1]: https://en.wikipedia.org/wiki/History_of_the_World_Wide_Web#...
I agree that would certainly be nonsense.
But any technology project most definitely can implement the ideological beliefs of its creators, if it's designed to do so and succeeds in achieving that design objective.
For example, the World Wide Web was developed to facilitate sharing, exchange and collaboration.[1]. You might say Tim Berners-Lee did have certain belief system and that he did implement those in his design.
[1]: https://en.wikipedia.org/wiki/History_of_the_World_Wide_Web#...
Here's a whole book about how politics (ideology) is written into code: http://www.amazon.com/dp/0262572338?tag=morgasuthe-20. See also actor-network theory: http://en.wikipedia.org/wiki/Actor%E2%80%93network_theory
Here's the nonlibetarian pitch for bitcoin: Fuck bankers.
Who would disdain to subscribe under this flowing banner?
Who would disdain to subscribe under this flowing banner?
No, but you have to be kidding yourself if you believe that Bitcoin will not make governments weaker and libertarian-minded people stronger. Satoshi, who one can argue, is a libertarian/crypto-anarchist allegedly holds 10% of all Bitcoins. You think if Bitcoin takes off that's going to mean nothing? If not, you better start fighting Bitcoin now.
[deleted]
> not greedy government bureaucrats waiting to be bribed
Instead of greedy speculators who are willing to pump and dump or crash the economy to make money off of the ignorant?
Instead of greedy speculators who are willing to pump and dump or crash the economy to make money off of the ignorant?
That only works so long. Eventually the actors in the economy figure out how to route around the damage being done.
http://en.wikipedia.org/wiki/Market_failure
Sometimes, the market does not figure it out... especially with a populace that is imperfectly educated (and not "perfectly logical, perfectly rational" beings in most theoretical economics)
But even with perfectly logical and perfectly rational beings however, there still are market failures. And it is up to the population to create Governments to deal with these market failures. (Usually through deregulation or regulation)
Case in point: LEXG, a 2010 stock that is widely considered "pump and dump". Despite all the regulations, and centuries of knowledge of pump and dump... it still happened.
BTC itself has a growing volume of trade... but a lot of smaller cryptocurrenies are simply pump-and-dump schemes.
Sometimes, the market does not figure it out... especially with a populace that is imperfectly educated (and not "perfectly logical, perfectly rational" beings in most theoretical economics)
But even with perfectly logical and perfectly rational beings however, there still are market failures. And it is up to the population to create Governments to deal with these market failures. (Usually through deregulation or regulation)
Case in point: LEXG, a 2010 stock that is widely considered "pump and dump". Despite all the regulations, and centuries of knowledge of pump and dump... it still happened.
BTC itself has a growing volume of trade... but a lot of smaller cryptocurrenies are simply pump-and-dump schemes.
It's a good thing we're really good at electing people that do a good job of watching out for our well-being!
Do you think we'll always have an "imperfectly educated" populace? Do you consider yourself part of that sector of society?
Do you think we'll always have an "imperfectly educated" populace? Do you consider yourself part of that sector of society?
Imperfect education is a fact of life.
Its well known that economic models of "free markets" fail instantly on the first assumption. We are not perfectly rational beings with perfect knowledge.
And yet, a number of "free market" arguments are based upon this fact.
Its well known that economic models of "free markets" fail instantly on the first assumption. We are not perfectly rational beings with perfect knowledge.
And yet, a number of "free market" arguments are based upon this fact.
If people are imperfectly educated, why let them elect representatives, which are themselves flawed in probably even worse ways that the average person?
> If people are imperfectly educated
That's not really an if, it's a simple fact that has and probably will always be true.
> why let them elect representatives
Because millions of idiots turns out to be better than kings and dictators for the average quality of life.
That's not really an if, it's a simple fact that has and probably will always be true.
> why let them elect representatives
Because millions of idiots turns out to be better than kings and dictators for the average quality of life.
Can we not think of a way to refine the system of "idiots voting" without being accused of the false dichotomy of wanting to go back to a monarchy?
Good luck with that conversation.
Any form of "removing idiots" from the voting pool will give comparisons to the Literacy Test, and you will be literally compared to a slave-driver. http://en.wikipedia.org/wiki/Literacy_test
False dichotomies are the bread and butter of politics. Perhaps if you knew the history of this country, you'd know that you aren't gonna get very far on this subject.
I welcome you to try, but from a political / historical point of view, there is too much bad blood in this discussion for people to discuss it sanely.
Any form of "removing idiots" from the voting pool will give comparisons to the Literacy Test, and you will be literally compared to a slave-driver. http://en.wikipedia.org/wiki/Literacy_test
False dichotomies are the bread and butter of politics. Perhaps if you knew the history of this country, you'd know that you aren't gonna get very far on this subject.
I welcome you to try, but from a political / historical point of view, there is too much bad blood in this discussion for people to discuss it sanely.
You're talking to someone whose political ideals already get me called "racist" and "slave driver". Oddly enough, I do not support racism nor slavery (quite the opposite). And I know the history — why do you think I brought the point up? (Come on, now.)
But the point we're trying to make here is philosophical, not practical: If people are too uneducated to participate in a free market economy, why do we allow them to vote?
But the point we're trying to make here is philosophical, not practical: If people are too uneducated to participate in a free market economy, why do we allow them to vote?
It just seems that the people that are rational are marginalized in any other system. One might go as far to say that's just as unfair.
And selfishness and greed are not sins in a free market. Instead, they serve as the mechanism under which everyone works together. A selfless man who strives for compromise will be abused by selfish actors in a pure free market setting.
All philosophies have their pros and cons. Learning to pick which philosophy is an art. Personally speaking, I keep Capitalist AND Communist arguments in my brain. I'm ready to use either philosophy to prove whatever point whenever I want.
For example, if you were a Communist, I'd deride the "free market" by talking about Bourgeois and the working classes. (But that wouldn't work on you, because you'd instantly think that I'd be creating a "class war").
All of these philosophies are theoretical anyway. The real purpose of them is to give us the ability to understand what other people are talking about. Furthermore, it has been proven that ALL pure systems are imperfect.
Free Markets have their market failures (Monopolies). Communists fail to allocate resources effectively.
The solution therefore, is to pick and choose the philosophy that works in the right situation. Be a more educated man, and open to different ways of thought.
All philosophies have their pros and cons. Learning to pick which philosophy is an art. Personally speaking, I keep Capitalist AND Communist arguments in my brain. I'm ready to use either philosophy to prove whatever point whenever I want.
For example, if you were a Communist, I'd deride the "free market" by talking about Bourgeois and the working classes. (But that wouldn't work on you, because you'd instantly think that I'd be creating a "class war").
All of these philosophies are theoretical anyway. The real purpose of them is to give us the ability to understand what other people are talking about. Furthermore, it has been proven that ALL pure systems are imperfect.
Free Markets have their market failures (Monopolies). Communists fail to allocate resources effectively.
The solution therefore, is to pick and choose the philosophy that works in the right situation. Be a more educated man, and open to different ways of thought.
"Furthermore, it has been proven that ALL pure systems are imperfect."
I'm really curious where and when this 100% free market system existed that was proven unworkable. Because from my understanding of history, we've only ever had government.
ZERO monopolies have become what they are/were without help from the government.
I'm really curious where and when this 100% free market system existed that was proven unworkable. Because from my understanding of history, we've only ever had government.
ZERO monopolies have become what they are/were without help from the government.
Proven by thought experiment. If you don't like thought experiments, then pay me no mind.
Perfectly theoretical free markets, with perfectly educated populations with 100% perfectly rational beings will be unable to solve the externality problem. http://en.wikipedia.org/wiki/Externality
It is known and proven. Do not give me a "Well, we'll figure it out later" bull... tell me how a free market is supposed to resolve an externality (which by its very definition is unresolvable by free markets).
Perfectly rational and greedy actors will always offload their costs onto unwilling parties. It is the job of the government to ensure that costs align up with the actors who create those costs.
If that is too theoretical for you, imagine two cities. "City Upstream" and "City Downstream" both are on the same river. City Upstream begins flushing their sewage into the river, and so City Downstream is no longer able to drink the water.
Solve this issue using only rational actors in the free market. The "Government" solution, is to have the Federal Government create Water Treatment plants, and then force "City Upstream" to use them. Afterwards, you tax both cities to pay for the treatment plants.
Your turn. Come up with a free market solution without the use of a central government or centralized 3rd party. Assume both cities are perfectly rational and perfectly selfish, as is common in these economic problems.
Good luck coming up with a solution. But if you're like any other libertarian who I've issued this challenge to, you'll probably run away.
Perfectly theoretical free markets, with perfectly educated populations with 100% perfectly rational beings will be unable to solve the externality problem. http://en.wikipedia.org/wiki/Externality
It is known and proven. Do not give me a "Well, we'll figure it out later" bull... tell me how a free market is supposed to resolve an externality (which by its very definition is unresolvable by free markets).
Perfectly rational and greedy actors will always offload their costs onto unwilling parties. It is the job of the government to ensure that costs align up with the actors who create those costs.
If that is too theoretical for you, imagine two cities. "City Upstream" and "City Downstream" both are on the same river. City Upstream begins flushing their sewage into the river, and so City Downstream is no longer able to drink the water.
Solve this issue using only rational actors in the free market. The "Government" solution, is to have the Federal Government create Water Treatment plants, and then force "City Upstream" to use them. Afterwards, you tax both cities to pay for the treatment plants.
Your turn. Come up with a free market solution without the use of a central government or centralized 3rd party. Assume both cities are perfectly rational and perfectly selfish, as is common in these economic problems.
Good luck coming up with a solution. But if you're like any other libertarian who I've issued this challenge to, you'll probably run away.
Great question. So, in this example, City Downstream is the one interested in clean water and City Upstream couldn't care less.
What happens without a government? City Downstream chips in for a bunch of guys to go up there and beat the shit out of the owners of that factory. Let's assume a scenario in which all citizens of City Upstream work for that factory, so they all want to keep their jobs and so they all chip in for a bunch of guys to protect them (or a company hires those guys on their behalf). Now, those guys meet up. Are they going to fight? Highly unlikely, because it is in their personal self interest to resolve this conflict peacefully AND collect the money from the people who hired them. What are they gonna do? They're gonna compare the balance of power. If it's equal then they're gonna settle for the solution that satisfies both equally. If City Downstream, which obviously is concerned with its health more than City Upstream workers are concerned with keeping their job, hires more tough guys, the balance of power would be in its favor and thus you can expect more drastic measures to be agreed upon. Then remember, we talked about an edge case, when all citizens of City Upstream work at a factory. However, that is very unlikely. Thus it may turn out to be that one factory would be up against the whole city.
Of course in reality, no one would actually hire tough guys, but rather such conflicts would be resolved through more civilized private protection agencies and courts. The central question is who outbids whom and to what degree. And the answer is that if the majority of people want something enough to pay for it, it will always outbid the minority, however rich this minority is.
You don't need no government to solve externality problems. All you need is to stop thinking that some magical entity, simply because you can vote for it, is able to resolve issues that are truly complicated.
What happens without a government? City Downstream chips in for a bunch of guys to go up there and beat the shit out of the owners of that factory. Let's assume a scenario in which all citizens of City Upstream work for that factory, so they all want to keep their jobs and so they all chip in for a bunch of guys to protect them (or a company hires those guys on their behalf). Now, those guys meet up. Are they going to fight? Highly unlikely, because it is in their personal self interest to resolve this conflict peacefully AND collect the money from the people who hired them. What are they gonna do? They're gonna compare the balance of power. If it's equal then they're gonna settle for the solution that satisfies both equally. If City Downstream, which obviously is concerned with its health more than City Upstream workers are concerned with keeping their job, hires more tough guys, the balance of power would be in its favor and thus you can expect more drastic measures to be agreed upon. Then remember, we talked about an edge case, when all citizens of City Upstream work at a factory. However, that is very unlikely. Thus it may turn out to be that one factory would be up against the whole city.
Of course in reality, no one would actually hire tough guys, but rather such conflicts would be resolved through more civilized private protection agencies and courts. The central question is who outbids whom and to what degree. And the answer is that if the majority of people want something enough to pay for it, it will always outbid the minority, however rich this minority is.
You don't need no government to solve externality problems. All you need is to stop thinking that some magical entity, simply because you can vote for it, is able to resolve issues that are truly complicated.
The completely anarcho-capitalist solution is that someone owns the river. If you want to dump into that river, then you have to deal with the owner; if you want to take from the river, then you have to deal with the owner. The owner would have a vested interest in keeping the water clean for people buying the water coming out of the river.
I'm not saying there aren't externalities to free markets, I think there are. I just don't think government is any better at dealing with them than markets. Friedman always says it better:
http://www.youtube.com/watch?v=VHFIbfUi5rw
I'm not saying there aren't externalities to free markets, I think there are. I just don't think government is any better at dealing with them than markets. Friedman always says it better:
http://www.youtube.com/watch?v=VHFIbfUi5rw
Everyone involved already knows things like this can happen.
I think a lot of it has to do with the mentality of considering exchanges to be banks.
I agree. People will soon start seeing more and more responsibility over time as more bugs and bad practices get exposed, and more competitors start getting involved to solve existing issues. You can be sure this problem won't happen anymore, and we certainly won't need any regulations and other regulatory obstacles to overcome.
I have a feeling they won't, and will just solve the problem technically. It's how security is done.
Government regulated banks are no more trustworthy. This appears to be a software bug revealed by an organized attack. Government software, and software regulated by governments, is also vulnerable to software bugs and organized attacks.
You are guaranteed $100,000 in free insurance when you deposit your money at an FDIC-insured bank.
No matter what bugs, attacks, malware or whatever happens, the US Government will pay you back your deposited money, to the fullest extent that it can.
If you don't see why this is useful, maybe you need a sanity check.
No matter what bugs, attacks, malware or whatever happens, the US Government will pay you back your deposited money, to the fullest extent that it can.
If you don't see why this is useful, maybe you need a sanity check.
It's $250,000 now (since 2008). Also it's not technically free. Insured banks pay premiums to the FDIC to cover the costs of deposit insurance.
But I agree 100% that the idea that a cash account at a random bitcoin exchange is somehow as reliable as an FDIC insured bank is a completely batshit crazy notion.
But I agree 100% that the idea that a cash account at a random bitcoin exchange is somehow as reliable as an FDIC insured bank is a completely batshit crazy notion.
I think it's up to $250K these days.
Literally hundreds of banks have failed in the last several years.
Literally hundreds of banks have failed in the last several years.
$250k per institution actually.
And per ownership category [1]. If you're married and set things up right you can have a lot of money insured at a single institution.
[1] http://www.fdic.gov/deposit/deposits/dis/
[1] http://www.fdic.gov/deposit/deposits/dis/
> to the fullest extent that it can.
That's the key.
That's the key.
Please, in the hundred year history of the FDIC, give me an example where it has failed to pay back the deposit of a failed bank.
The only way it won't pay you back the full 100,000 is if the US goes bankrupt. Which considering the US dollar is the world's reserve currency, is not going to happen.
Can you give me an example of a truly free market from history? By that, I mean absolutely no government involvement and regulation? I want to know what you mean by free market.
A "truly free market" is like a unicorn, it only exists in fairy tales. In reality, Somalia is probably the closest you'll come.
Somalia is anything but a free market. Free market supposes that there is rule of law, that is to say individuals are free to pursue their own lives so long as they respect the equal rights of others. If you think this is the case in Somalia, you should go on a trip there and have fun. It's not an example of limited pro-freedom governments either as it is ruled by war lords, and what are war lords if not despotic numerous governments?
[deleted](1)
Yes. In a regulated, unfree market, the banks you can't trust can send armed government stormtroopers to your home.
I may be misremembering, but when MtGox was getting it in the neck for having this bug in their ridiculous terrible custom wallet implementation, someone asked "are there any reliable exchanges" and someone else answered "bitstamp".
Just goes to show, there's no use looking at a website (when that site is effectively a black-box) and judging its competency from a general vibe.
Just goes to show, there's no use looking at a website (when that site is effectively a black-box) and judging its competency from a general vibe.
The difference between Gox and BitStamp is pretty easy to see take Gox they have had constant problems the most recent of which has been this which has been going on for multiple weeks now and their reaction was we are just going to suspend all withdrawals indefinitely.
On the other hand Bitstamp identified a problem within 24 hours of it starting to happen says they know how to fix it and will have everything back to normal shortly.
Personally I'd rather have my money with the latter.
On the other hand Bitstamp identified a problem within 24 hours of it starting to happen says they know how to fix it and will have everything back to normal shortly.
Personally I'd rather have my money with the latter.
Probably thinking of this comment: https://news.ycombinator.com/item?id=7212862
I stand by that comment. I'm disappointed that Bitstamp didn't take this issue into account when designing their exchange, but unlike Gox, their communication about the issue has been very good, and my confidence in Bitstamp remains unshaken.
Also, it appears that the Bitcoin network is under global attack by some large entity, so blame for the current exchange issues lie ultimately at the hands of some attacker who doesn't like Bitcoin, or wishes to plunge the price.
Also, it appears that the Bitcoin network is under global attack by some large entity, so blame for the current exchange issues lie ultimately at the hands of some attacker who doesn't like Bitcoin, or wishes to plunge the price.
Can someone give me a ELI5 breakdown of what's happening in the bitcoin world right now? First MtGox and now Bitstamp.
Any reading material on the subject (for a newbie) would be greatly appreciated.
Any reading material on the subject (for a newbie) would be greatly appreciated.
Both of these exchanges apparently implemented the Bitcoin protocol incorrectly. Their code that verifies a transaction has completed is incorrect, so they can be tricked into thinking a withdrawal did not happen when it actually did (or that a lesser amount was withdrawn). They need to fix their code, as there is a proper way to verify a transaction occurred or not.
Some reading:
http://qz.com/175565/why-nobody-can-withdraw-bitcoins-from-o...
Some reading:
http://qz.com/175565/why-nobody-can-withdraw-bitcoins-from-o...
The Bitcoin protocol is the Satoshi client; the Satoshi client is the Bitcoin protocol. No Bitcoin protocol exists outside of the single source of truth, which is "how does the Satoshi client actually operate?"
Both exchanges use the JSON/RPC interface to the Satoshi bitcoin client. That is the One True Way to use Bitcoin to develop Bitcoin-consuming applications. To do otherwise is madness. (I've seen explanations that Mt. Gox was using a custom client, but I believe they mean "Mt. Gox was using a custom system which took care of bookkeeping for itself, because the Satoshi client cannot operate thousand of wallets in any sane fashion, but used the Satoshi client for interacting with the Bitcoin network.")
The Bitcoin RPC interface exposes many methods. I don't have intimate knowledge of which one these exchanges were using, but since they all have similar issues, let's assume they used sendtoaddress.
The message signature of sendtoaddress is (pseudo-code):
But it isn't. Transaction ID means absolutely nothing. It can be changed by any party, worldwide, for up to one hour after the invocation of sendtoaddress. If you use gettransaction(transaction_id) and it returns nil, that does not prove that the transaction you previously created did not succeed correctly. You should not attempt to retry the transaction until first verifying that you have all the coins you started with and that the recipient does not have some of your coins. You can conveniently do this with an O(n) scan over all Bitcoin transactions ever. (Someone pointed out to me on twitter that it isn't O(n) if you have your database indices set properly. Well, yeah, true.)
You'll need to know what addresses you actually sent from, which is obscured by the sentoaddress API described above, for that scan to succeed, so essentially you're going to reimpliment much of the Satoshi Bitcoin client, particularly around the area of wallet management. Don't reimpliment everything, though -- down that path lies madness. Also, try not to make any bugs anywhere, particularly not the kind which only show up when someone tries to steal from you.
Good luck!
Both exchanges use the JSON/RPC interface to the Satoshi bitcoin client. That is the One True Way to use Bitcoin to develop Bitcoin-consuming applications. To do otherwise is madness. (I've seen explanations that Mt. Gox was using a custom client, but I believe they mean "Mt. Gox was using a custom system which took care of bookkeeping for itself, because the Satoshi client cannot operate thousand of wallets in any sane fashion, but used the Satoshi client for interacting with the Bitcoin network.")
The Bitcoin RPC interface exposes many methods. I don't have intimate knowledge of which one these exchanges were using, but since they all have similar issues, let's assume they used sendtoaddress.
The message signature of sendtoaddress is (pseudo-code):
#returns transaction_id
sendtoaddress(from_account, to_bitcoin_address, amount, optional_message)
The mistake which both exchanges made is they assumed transaction_id is the same transaction_id used for gettransaction(transaction_id). It is. If you send a transaction, wait an hour, and then get it by ID, that will work.But it isn't. Transaction ID means absolutely nothing. It can be changed by any party, worldwide, for up to one hour after the invocation of sendtoaddress. If you use gettransaction(transaction_id) and it returns nil, that does not prove that the transaction you previously created did not succeed correctly. You should not attempt to retry the transaction until first verifying that you have all the coins you started with and that the recipient does not have some of your coins. You can conveniently do this with an O(n) scan over all Bitcoin transactions ever. (Someone pointed out to me on twitter that it isn't O(n) if you have your database indices set properly. Well, yeah, true.)
You'll need to know what addresses you actually sent from, which is obscured by the sentoaddress API described above, for that scan to succeed, so essentially you're going to reimpliment much of the Satoshi Bitcoin client, particularly around the area of wallet management. Don't reimpliment everything, though -- down that path lies madness. Also, try not to make any bugs anywhere, particularly not the kind which only show up when someone tries to steal from you.
Good luck!
FWIW it's an error in the BTC reference implementation so it's an easy error to make
Please stop spreading FUD.
>In the meantime, users of the reference implementation do not need to be concerned. Transactions are always tracked properly by the Bitcoin-Qt/bitcoind software.
https://bitcoinfoundation.org/blog/?p=418
>In the meantime, users of the reference implementation do not need to be concerned. Transactions are always tracked properly by the Bitcoin-Qt/bitcoind software.
https://bitcoinfoundation.org/blog/?p=418
Interesting. This thread on reddit states that it IS an issue in the reference implementation and includes a patch
http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
Edit: The concern with the Bitstamp appears to be confusion due to transaction malleability and NOT actual double spend or cancellation issues. However the BTC reference client is not perfect at handling malleability and only gets it right eventually.
http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
Edit: The concern with the Bitstamp appears to be confusion due to transaction malleability and NOT actual double spend or cancellation issues. However the BTC reference client is not perfect at handling malleability and only gets it right eventually.
While it's not an issue if you're using the GUI, the official client makes it hard for API consumers to track what's going on. As far as they're concerned, the transaction they requested never succeeds and a new one with a completely different ID that they never sent appears. It's entirely up to API consumers to reliably match the new, different transaction up with what they originally requested - and the API doesn't actually expose the information they need to do this cleanly.
This is NOT the case. To quote gmaxwell on the bitcoin-development mailing list:
"Not that Bitcoin-QT handles Malleability fantastically— but because it tracks inputs it will still detect the mutant transactions."
http://sourceforge.net/mailarchive/message.php?msg_id=319565...
"Not that Bitcoin-QT handles Malleability fantastically— but because it tracks inputs it will still detect the mutant transactions."
http://sourceforge.net/mailarchive/message.php?msg_id=319565...
Right... so I believe what's happening is that the client handles them correctly.... eventually. But from what people are saying it's causing confusion in the accounting with the effected exchanges, not necessarily cancellation or double spend issues.
I'll explain it to the best of my understanding, at least in a narrow scope.
A user on an exchange requests to withdraw btc. MtGox creates a transaction with a tx hash of abc1234cdf... and sends it to the blockchain, polling for the status of tx hash "abc1234cdf...".
Due to tx malleability, the tx hash can change by changing some of the tx data (in insignificant ways), which doesn't invalidate the tx signatures.
A malicious user could wait for MtGox to create a tx, flip a bit and resubmit the tx and try to get it confirmed under a different hash, invalidating Gox's tx as a double spend.
Which leaves Gox polling for the status of tx hash "abc1234cdf...", which will never confirm.
A user then submits a support request and says their tx is "Stuck". MtGox then creates a new tx, Which doesn't respend the same coins, and thus, the user is paid 2x.
A user on an exchange requests to withdraw btc. MtGox creates a transaction with a tx hash of abc1234cdf... and sends it to the blockchain, polling for the status of tx hash "abc1234cdf...".
Due to tx malleability, the tx hash can change by changing some of the tx data (in insignificant ways), which doesn't invalidate the tx signatures.
A malicious user could wait for MtGox to create a tx, flip a bit and resubmit the tx and try to get it confirmed under a different hash, invalidating Gox's tx as a double spend.
Which leaves Gox polling for the status of tx hash "abc1234cdf...", which will never confirm.
A user then submits a support request and says their tx is "Stuck". MtGox then creates a new tx, Which doesn't respend the same coins, and thus, the user is paid 2x.
This is not true. It does not handle malleability in one case. See http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
This is why many sites are having issues. It is in fact a problem with the reference client.
This is why many sites are having issues. It is in fact a problem with the reference client.
I wouldn't call it an error, exactly. But it is a design flaw that other implementations are expected to work around.
This is what you're referring to, right? https://en.bitcoin.it/wiki/Original_Bitcoin_client
I imagine that the more recent versions of the satoshi client don't have this bug, it may have a few years ago when bitstamp and mtgox may have been looking to draw inspiration from it.
I imagine that the more recent versions of the satoshi client don't have this bug, it may have a few years ago when bitstamp and mtgox may have been looking to draw inspiration from it.
I was referring to this thread: http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
Is that true? If so then significant blame goes to that in addition to the exchanges.
>(or that a lesser amount was withdrawn)
As I understand it, this is not correct, the new tx must be functionally identical to the old one (same inputs and outputs), just with a different txid.
Someone correct me if I'm wrong
As I understand it, this is not correct, the new tx must be functionally identical to the old one (same inputs and outputs), just with a different txid.
Someone correct me if I'm wrong
It looks a lot like a bank run to me:
http://en.wikipedia.org/wiki/Bank_run
EDIT: See this for a more thorough description of what I mean: http://www.dailytech.com/Mt+Gox+Bitcoin+Bank+Run+Intensifies...
http://en.wikipedia.org/wiki/Bank_run
EDIT: See this for a more thorough description of what I mean: http://www.dailytech.com/Mt+Gox+Bitcoin+Bank+Run+Intensifies...
it is nothing like a bank run.
A bank run is where the bank does not hold enough money to cover everyones deposits. Bitstamp have enough BTC to cover everyones deposits they just are delaying withdrawals for 72 hours. Think of it like you rbank telling you you need to wait 3 days for a transaction to go through, not that unlikely and in fact quite common in traditional banking. It seems longer in bitcoin though because of the usually quick transactions.
A bank run is where the bank does not hold enough money to cover everyones deposits. Bitstamp have enough BTC to cover everyones deposits they just are delaying withdrawals for 72 hours. Think of it like you rbank telling you you need to wait 3 days for a transaction to go through, not that unlikely and in fact quite common in traditional banking. It seems longer in bitcoin though because of the usually quick transactions.
> Think of it like you rbank telling you you need to wait 3 days for a transaction to go through
Moreover, with banks you have this every weekend.
Moreover, with banks you have this every weekend.
ATMs and credit cards work 24/7 so no, banks do not close every weekend
You must not have ever tried to deposit a check for a moderate or significant amount on a Friday afternoon. Unless you've already set up a process with your bank, you'll only have access to part of the funds for 24 to 72 hours.
Except when there's a technical screw-up, in which case you can find that no, you can't use ATMs or your cards for several days whilst it's fixed. This happens with some UK bank or the other every year or so at the moment, as I recall.
Same here in the Netherlands.
Also iDeal, a very popular online dutch payment system that integrates with almost all banks, has only like 95% uptime.
Also iDeal, a very popular online dutch payment system that integrates with almost all banks, has only like 95% uptime.
There's a large attack being directed at Bitcoin exchanges that is trying to exploit what seems to be a common misunderstanding about the Bitcoin protocol. It's the same misunderstanding that forced Mt. Gox to go down.
http://www.coindesk.com/massive-concerted-attack-launched-bi...
http://www.coindesk.com/massive-concerted-attack-launched-bi...
So, did bitstamp also implement incorrectly despite warnings?
It appears that Bitstamp did indeed use the creation transaction API in bitcoind which returns a transaction ID and they made the incorrect decision that the transaction ID returned had properties many programmers associate with IDs, like "meaning anything at all."
What they should have done was waited an hour then done an O(n) scan of all transactions globally in history to find the transaction by inspecting for parameters which exactly matched the ones they provided. That is, the Bitcoin developers now say, the correct use of the create transaction API.
Let me use an example programmers may be familiar with. Twilio lets you do SMS messages with three parameters: from_number, to_number, message. You are given back an SMS ID, which you can query to see the results of the SMS message (like, say, was it delivered successfully or did it fail with an error like "that telephone number did not exist").
Here's a discussion with Twilio in the bizarro world where it's like Bitcoin.
Me: "Hey Twilio I created an SMS message but when I try to query it for the results it 404s."
Them: "Are you sure you created the message?"
Me: "Yep pretty sure."
Them: "Are you sure you are looking for the right message ID in /messages/:id?"
Me: "Yep, I'm using the one that I got back when I created it."
Them: "Maybe it changed."
Me: "... What?"
Them: "Message IDs can change."
Me: "They don't usually change."
Them: "Of course, they don't usually change. Why have an ID if they usually changed? They only change some of the time."
Me: "What determines if a message ID changes?"
Them: "Oh, anyone globally can change your message IDs."
Me: "That sounds a bit insecure for a system which is, by its nature, deployed in a hostile environment."
Them: "Don't worry, they can't change after about an hour. Well, probably. It would be pretty expensive for an attacker to change them after an hour. Don't worry though, you'll never need an ID."
Me: "I find IDs useful for querying things. Like, say, messages. Which I have to do. To see whether the message was successful or not."
Them: "Well you're already downloading every message ever. Just scan through for one which matches the same from number, to number, and message contents."
Me: "... You're serious."
Them: "Don't worry though: they can't touch the from number, to number, or the message contents."
Me: "... Does this sound a little problematic to anyone else?"
Them: "It's on our wiki, noob!"
[Edit: Maybe somebody thinks I'm joking. Let me point you to one of the dangerous functions.
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls...
Name: sendtoaddress
Parameters: <bitcoinaddress> <amount> [comment] [comment-to]
Comments: <amount> is a real and is rounded to 8 decimal places. Returns the transaction ID <txid> if successful.
You should naturally, upon reading this documentation, figure "I should immediately discard that transaction ID, because it could be changed instantaneously after this message call. If I instead rely on that transaction ID, I will allow malicious users to break the software I am building."]
What they should have done was waited an hour then done an O(n) scan of all transactions globally in history to find the transaction by inspecting for parameters which exactly matched the ones they provided. That is, the Bitcoin developers now say, the correct use of the create transaction API.
Let me use an example programmers may be familiar with. Twilio lets you do SMS messages with three parameters: from_number, to_number, message. You are given back an SMS ID, which you can query to see the results of the SMS message (like, say, was it delivered successfully or did it fail with an error like "that telephone number did not exist").
Here's a discussion with Twilio in the bizarro world where it's like Bitcoin.
Me: "Hey Twilio I created an SMS message but when I try to query it for the results it 404s."
Them: "Are you sure you created the message?"
Me: "Yep pretty sure."
Them: "Are you sure you are looking for the right message ID in /messages/:id?"
Me: "Yep, I'm using the one that I got back when I created it."
Them: "Maybe it changed."
Me: "... What?"
Them: "Message IDs can change."
Me: "They don't usually change."
Them: "Of course, they don't usually change. Why have an ID if they usually changed? They only change some of the time."
Me: "What determines if a message ID changes?"
Them: "Oh, anyone globally can change your message IDs."
Me: "That sounds a bit insecure for a system which is, by its nature, deployed in a hostile environment."
Them: "Don't worry, they can't change after about an hour. Well, probably. It would be pretty expensive for an attacker to change them after an hour. Don't worry though, you'll never need an ID."
Me: "I find IDs useful for querying things. Like, say, messages. Which I have to do. To see whether the message was successful or not."
Them: "Well you're already downloading every message ever. Just scan through for one which matches the same from number, to number, and message contents."
Me: "... You're serious."
Them: "Don't worry though: they can't touch the from number, to number, or the message contents."
Me: "... Does this sound a little problematic to anyone else?"
Them: "It's on our wiki, noob!"
[Edit: Maybe somebody thinks I'm joking. Let me point you to one of the dangerous functions.
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls...
Name: sendtoaddress
Parameters: <bitcoinaddress> <amount> [comment] [comment-to]
Comments: <amount> is a real and is rounded to 8 decimal places. Returns the transaction ID <txid> if successful.
You should naturally, upon reading this documentation, figure "I should immediately discard that transaction ID, because it could be changed instantaneously after this message call. If I instead rely on that transaction ID, I will allow malicious users to break the software I am building."]
I feel I need to clarify some of your points, as they're a little misleading.
> Don't worry, they can't change after about an hour. Well, probably. It would be pretty expensive for an attacker to change them after an hour.
You use the term "pretty expensive" here without qualifying it. Changing a transaction encoded in the blockchain would require outpacing the current hashrate of the bitcoin network. That would require a significant hardware investment, on the order of tens of millions of dollars.
> Well you're already downloading every message ever. Just scan through for one which matches the same from number, to number, and message contents.
You make it sound as if you wouldn't have to do this if you had the transaction hash. You still need to iterate through the transactions regardless. It's just a question of whether you use the transaction hash, or derive your own from the parts of the transaction that are immutable.
Let's make your example a touch more realistic:
Me: "Hey Twilio I created an SMS message but when I try to query it for the results it 404s."
Them: "Has the message been delivered?"
Me: "I don't think so. I'm querying it shortly after I create it."
Them: "How are you querying it?"
Me: "With the message hash."
Them: "Ah, that explains it, then. A pending message may be changed before its delivered, altering the hash. This makes the hash unsuitable for identifying pending messages."
Me: "So how do I identify messages?"
Them: "Ideally you wait until they're delivered, but if you really need to check for pending messages, you can search through them looking for a message that matches on to, from and content."
Me: "That kinda sucks."
Them: "We know, but it's a difficult issue to fix. It's documented in our wiki."
Me: "What if I don't read your wiki, or follow your mailing list?"
Them: "Then should you really be running an exchange handling millions of dollars of transactions?"
Me: "... Good point."
> Don't worry, they can't change after about an hour. Well, probably. It would be pretty expensive for an attacker to change them after an hour.
You use the term "pretty expensive" here without qualifying it. Changing a transaction encoded in the blockchain would require outpacing the current hashrate of the bitcoin network. That would require a significant hardware investment, on the order of tens of millions of dollars.
> Well you're already downloading every message ever. Just scan through for one which matches the same from number, to number, and message contents.
You make it sound as if you wouldn't have to do this if you had the transaction hash. You still need to iterate through the transactions regardless. It's just a question of whether you use the transaction hash, or derive your own from the parts of the transaction that are immutable.
Let's make your example a touch more realistic:
Me: "Hey Twilio I created an SMS message but when I try to query it for the results it 404s."
Them: "Has the message been delivered?"
Me: "I don't think so. I'm querying it shortly after I create it."
Them: "How are you querying it?"
Me: "With the message hash."
Them: "Ah, that explains it, then. A pending message may be changed before its delivered, altering the hash. This makes the hash unsuitable for identifying pending messages."
Me: "So how do I identify messages?"
Them: "Ideally you wait until they're delivered, but if you really need to check for pending messages, you can search through them looking for a message that matches on to, from and content."
Me: "That kinda sucks."
Them: "We know, but it's a difficult issue to fix. It's documented in our wiki."
Me: "What if I don't read your wiki, or follow your mailing list?"
Them: "Then should you really be running an exchange handling millions of dollars of transactions?"
Me: "... Good point."
There's one problem with this, at least if you're using the official client: the Bitcoin APIs telling you what transactions you've sent and received don't tell you where the transactions came from, which is what you need to know in order to match them. Indeed, the only way it provides to uniquely identify the transaction is the transaction ID, which can change unexpectedly.
MtGox should absolutely have known about this issue. Everyone building anything related to BTC should know not to make assumptions about the protocol, and to treat every input as hostile.
You'd think they'd have at least one guy dedicated to nothing but breaking their software. They make my salary every day with transaction fees (well, maybe until recently) so you can't say they're unable to afford it.
Edit: Rereading this, it sounds more accusatory than I intended. I think your clarification was perfect, but at the same time that MtGox is at fault.
You'd think they'd have at least one guy dedicated to nothing but breaking their software. They make my salary every day with transaction fees (well, maybe until recently) so you can't say they're unable to afford it.
Edit: Rereading this, it sounds more accusatory than I intended. I think your clarification was perfect, but at the same time that MtGox is at fault.
Sorry to ask that but if to, from and content can't be changed, why not make the transaction id a hash of these three element using any deterministic algorithm such as sha1 etc?
That is the obvious implementation workaround, and with such a 'canonical ID' software can do its own malleability-resistant transaction-tracking.
However, the hash over the malleable part is still protocol-significant: which exact incarnation of the isomorphic transaction is being passed around or cemented into blocks. So this new stable ID would be in addition to the older one, and might not even be necessarily expressed inside the protocol: it might just be a convention, and could vary across independent implementations.
The MTGox statement was a plea for the community to converge on such an consensus identifier before MtGox commits to a local fix. But that's not strictly technically necessary, so their stance looks like a strategy for blame-shifting and further delay. The Bitcoin core people don't like to rush into things.
However, the hash over the malleable part is still protocol-significant: which exact incarnation of the isomorphic transaction is being passed around or cemented into blocks. So this new stable ID would be in addition to the older one, and might not even be necessarily expressed inside the protocol: it might just be a convention, and could vary across independent implementations.
The MTGox statement was a plea for the community to converge on such an consensus identifier before MtGox commits to a local fix. But that's not strictly technically necessary, so their stance looks like a strategy for blame-shifting and further delay. The Bitcoin core people don't like to rush into things.
As I understand it, this is essentially the fix the exchanges need to implement. The exchange can generate a hash on the address, outputs and amount, and use that to confirm whether or not the money has been sent.
However they still need the full transaction hash to reference any outputs from it, as these are identified by the (txhash, index) tuple.
> "Then should you really be running an exchange handling millions of dollars of transactions?"
So what happens to people who aren't running an exchange handling millions of dollars of transactions? It doesn't matter if they get screwed by this flaw?
I read much of the wiki and never encountered any reference to transactional malleability.
So what happens to people who aren't running an exchange handling millions of dollars of transactions? It doesn't matter if they get screwed by this flaw?
I read much of the wiki and never encountered any reference to transactional malleability.
Presumably those people aren't writing their own custom Bitcoin client libraries.
So if you want to set up your own shop you are stuck doing transactions by hand or you have to use a 3rd party like bitpay?
Lol.
The point of bitcoin is being able to do it yourself and not rely on centralized institutions.
Lol.
The point of bitcoin is being able to do it yourself and not rely on centralized institutions.
Well don't forget, there's a standard client that works fine. These exchanges were writing their own custom clients, but that's probably not something a one man shop would have to do. And if you have to modify the client, you should definitely be reading the wiki. And test it extensively when you're running million dollar exchanges.
Not quite fine:
http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
The bitcoin reference client seems to get confused by this. It seems to allow additional spending of the unconfirmed change addresses and forms a chain of double spent transactions. The bitcoin balance as reported by 'getbalance' also becomes unreliable as it computes the balance incorrectly. Eventually the wallet stops working.
The bitcoin reference client seems to get confused by this. It seems to allow additional spending of the unconfirmed change addresses and forms a chain of double spent transactions. The bitcoin balance as reported by 'getbalance' also becomes unreliable as it computes the balance incorrectly. Eventually the wallet stops working.
Funnily enough, I've had a similar situation to that in my line of work.
It wasn't twilio, but it turned out that when we submitted a SMS message of over 160 characters, the provider split it into 160 chunks and sent out as multiple SMS.
So far, so normal. But what happened when the first chunk sent successfully and the second chunk failed?
We got back a notification to say "MessageID: 4ACB-etc Result: OK" but the customer never got the message, and scanning the report on the provider's site showed the customer number, time and message as having failed.
But then the representative agreed it was a problem and set out to fix it rather than blaming our dependence on the ID!
It wasn't twilio, but it turned out that when we submitted a SMS message of over 160 characters, the provider split it into 160 chunks and sent out as multiple SMS.
So far, so normal. But what happened when the first chunk sent successfully and the second chunk failed?
We got back a notification to say "MessageID: 4ACB-etc Result: OK" but the customer never got the message, and scanning the report on the provider's site showed the customer number, time and message as having failed.
But then the representative agreed it was a problem and set out to fix it rather than blaming our dependence on the ID!
This sums up my view on these recent turn of events.
I find it quite ridiculous that people are trying to lay the blame on not reading an obscure wiki page. I remember reading much of the bitcoin wiki myself and never seeing ANYTHING about not relying on transaction IDs. The API list doesn't even warn you about it.
Why bother returning a transaction ID if it is spoofable? That is simply misleading.
I guess it shows you how how biased all the bitcoin backers are.
I find it quite ridiculous that people are trying to lay the blame on not reading an obscure wiki page. I remember reading much of the bitcoin wiki myself and never seeing ANYTHING about not relying on transaction IDs. The API list doesn't even warn you about it.
Why bother returning a transaction ID if it is spoofable? That is simply misleading.
I guess it shows you how how biased all the bitcoin backers are.
For those who seek to understand, rather than just mock with exaggerations:
You don't have to scan all transactions: only those from a firm reference-point of available-funds state, essentially the same point that was used to compose the outbound transaction.
Robust software already has to examine all incoming confirmed-in-block transactions for whether those transactions have consumed prior funds. If they have, even if the local software had as its design goal exclusive control of those funds, the local software must adapt to the new information. (Given the possibility of backups/virtualization-clones/private-key-exports, software must always be open to the possibility another node elsewhere has spent pending funds first.)
So safety against this particular mischief is possible with the same practice that's necessary for other reasons: it's not involved extra work.
Also, it's not "an hour" that lets a node know when it can rely on transaction-state, but block-confirmations, a precise and observable transition. One block is almost always enough, but each additional block adds more certainty. Still, all Bitcoin software already needs to handle occasional orphaned blocks and short forks, so being sensitive to periods of uncertainty is a essential part of all implementations, not extra work because of this one gotcha.
A better analogy than Twilio would be commercial payment systems: there you need to systems that are checking for weeks or months for chargebacks or reversals.
But an even better analogy than proprietary pay-per-use payment systems is SMTP or BitTorrent. The system is an emergent mess anyone can plug into. There are a lot of sharp edges, and even with great care, you're going to hit some painful and costly bugs. Those building billion-dollar businesses on such systems need to be experts, and will still take some arrows, but each incident that doesn't kill the software/business stacks only leaves them stronger.
You don't have to scan all transactions: only those from a firm reference-point of available-funds state, essentially the same point that was used to compose the outbound transaction.
Robust software already has to examine all incoming confirmed-in-block transactions for whether those transactions have consumed prior funds. If they have, even if the local software had as its design goal exclusive control of those funds, the local software must adapt to the new information. (Given the possibility of backups/virtualization-clones/private-key-exports, software must always be open to the possibility another node elsewhere has spent pending funds first.)
So safety against this particular mischief is possible with the same practice that's necessary for other reasons: it's not involved extra work.
Also, it's not "an hour" that lets a node know when it can rely on transaction-state, but block-confirmations, a precise and observable transition. One block is almost always enough, but each additional block adds more certainty. Still, all Bitcoin software already needs to handle occasional orphaned blocks and short forks, so being sensitive to periods of uncertainty is a essential part of all implementations, not extra work because of this one gotcha.
A better analogy than Twilio would be commercial payment systems: there you need to systems that are checking for weeks or months for chargebacks or reversals.
But an even better analogy than proprietary pay-per-use payment systems is SMTP or BitTorrent. The system is an emergent mess anyone can plug into. There are a lot of sharp edges, and even with great care, you're going to hit some painful and costly bugs. Those building billion-dollar businesses on such systems need to be experts, and will still take some arrows, but each incident that doesn't kill the software/business stacks only leaves them stronger.
> What they should have done was waited an hour then done an O(n) scan of all transactions globally in history to find the transaction by inspecting for parameters which exactly matched the ones they provided.
Oh, you mean the scanning they have to do already, to verify "all transactions globally in history"? Inspecting all parameters on all transactions since the genesis, like you'd already have to do to verify they are not stealing or creating money from nothing? The inspection you have to do just to locate even the same transaction you submitted to the network yourself, to verify it was accepted? And you have to spend like 10 whole seconds of CPU time doing this, per ~10 minutes that a new block comes out, verifying the transactions from the last 10 minutes? Golly, that is sooooo much more onerous than just running the blockchain securely! /sarcasm
I'll agree that it's embarrassing, misleading, not documented well, and not gracefully handled by the community now that everyone points their fingers at each other. But you are deliberately making it sound worse by re-describing standard parts of the bitcoin protocol, as if they are new requirements in order to get a sane ID. Anyone writing financial software should be more than capable of quickly adding a few function hooks into the existing process to get a deterministic normalized ID, and the amount of extra computing resources is negligible compared to what you already have to do, just to use bitcoin safely.
Oh, you mean the scanning they have to do already, to verify "all transactions globally in history"? Inspecting all parameters on all transactions since the genesis, like you'd already have to do to verify they are not stealing or creating money from nothing? The inspection you have to do just to locate even the same transaction you submitted to the network yourself, to verify it was accepted? And you have to spend like 10 whole seconds of CPU time doing this, per ~10 minutes that a new block comes out, verifying the transactions from the last 10 minutes? Golly, that is sooooo much more onerous than just running the blockchain securely! /sarcasm
I'll agree that it's embarrassing, misleading, not documented well, and not gracefully handled by the community now that everyone points their fingers at each other. But you are deliberately making it sound worse by re-describing standard parts of the bitcoin protocol, as if they are new requirements in order to get a sane ID. Anyone writing financial software should be more than capable of quickly adding a few function hooks into the existing process to get a deterministic normalized ID, and the amount of extra computing resources is negligible compared to what you already have to do, just to use bitcoin safely.
I keep asking this over and either I'm missing something or no one knows the answer: The bitcoin devs keep saying that the malleability is a known "feature" since 2011 and that it's MtGox/Bitstamp's problem for searching for transactions based on tx ids. But what the fuck is the point of a tx id, practically speaking, how is it useful at all given that it's malleable?
It's not malleable once it's been included in the block-chain at a certain depth, before that it is malleable. It appears this was known at least by some people since 2011, but it doesn't seem like the information was widely publicized in a way that would help people to understand the possible consequences. From what I gather, even the reference implementation doesn't handle these consequences particularly well.
Now THAT is the ELI5 explanation I was looking for. This analogy is so much clearer than all the articles!
btw, why is the transaction ammount a real number in there? Wouldn't it be clearer to use an integer multiple of whatever the lowest denomination of bitcoins would be?
I was looking into that, but got sidetracked and found this comment from the ref client's lead dev...
sendtoaddress didn't always return a transaction id. It was changed to do that to facilitate bookkeeping. Sort of ironic.
https://bitcointalk.org/index.php?topic=807.0
sendtoaddress didn't always return a transaction id. It was changed to do that to facilitate bookkeeping. Sort of ironic.
https://bitcointalk.org/index.php?topic=807.0
To be fair, he made that addition before anyone, including probably Satoshi Nakamoto, knew that the Bitcoin "protocol" allowed transaction IDs to change at will for up to ~1 hour after them being sent.
This is exactly how the transaction balance is encoded, as integer multiples of satoshi's (the basic unit of bitcoin, 0.00000001 BTC. All known cryptocurrencies do this to prevent float/double rounding errors.
Comment of the year award. Seriously.
I normally enjoy reading your posts here but this one I have to say I find a bit gleefully FUD-tastic. Given that you describe BitCoin as "magic Internet money" [0] I can't help but feel you simply rejoice in BitCoin failures as vindication of your belief that crytocurrency will never work.
There seem to be two prevailing extremes of opinion which appear a lot on Hacker News and many other places, as extremes are wont to do while those in the middle don't feel strongly enough to contribute. Those are 1) BitCoin will replace government control of money and fix freedom, dude! and 2) What fucking morons, can't wait until you crash and burn.
I love this whole thing. It's fascinating, it's an interesting solution to a problem, and watching DogeCoin take off is fun to watch. In my opinion, BitCoin is kind of like when a naïve programmer decides to rewrite an existing library themselves, and comes up against the brutal reality that led the original developers to the compromises and apparently necessary hacks to get the thing working. The analogy here being regulation, insurance, all that jazz. It's educational, and I haven't been this interested in a technology for a while.
I'm picking on your reply here because it is one of many that exemplifies a "haha told you so" rather than really digging into the interesting technical and sociological aspects.
* Message IDs from one API do not equate to IDs from the other, so your example is a bit flawed; there's no way to check with Twilio except the ID.
* Is "ID" even the term used? I don't know for sure, but "Tx Hash" seems to be more widely spread. [Edit: patio11 edited his comment while I was typing mine; I withdraw this point!]
* "It's on our wiki noob" - someone running the 3rd largest exchange should hardly be a "noob"
* "O(n) scan of all transactions globally" - that's not particularly hard, nor is it necessary (why scan all transactions from all time?), nor is it unexpected (the entire thing requires everyone to have the complete ledger, so you have the data anyway)
There are valid points to be made that the BitCoin protocol needs improvements, and these are even acknowledged by the core devs. This whole situation is a bit ludicrous. But I wish we were talking about "what have we learned", not "told you so".
When it comes to BitCoin, the conversation seems to be full of radicals and optimists when success happens, and gloaters when it doesn't. I don't feel either add to the conversation, we could be talking about how to improve this as a currency or (as I believe the long term actual application to be) how this can influence distributed trust, especially important in the current climate.
[0] https://twitter.com/patio11/status/431347845031940096
There seem to be two prevailing extremes of opinion which appear a lot on Hacker News and many other places, as extremes are wont to do while those in the middle don't feel strongly enough to contribute. Those are 1) BitCoin will replace government control of money and fix freedom, dude! and 2) What fucking morons, can't wait until you crash and burn.
I love this whole thing. It's fascinating, it's an interesting solution to a problem, and watching DogeCoin take off is fun to watch. In my opinion, BitCoin is kind of like when a naïve programmer decides to rewrite an existing library themselves, and comes up against the brutal reality that led the original developers to the compromises and apparently necessary hacks to get the thing working. The analogy here being regulation, insurance, all that jazz. It's educational, and I haven't been this interested in a technology for a while.
I'm picking on your reply here because it is one of many that exemplifies a "haha told you so" rather than really digging into the interesting technical and sociological aspects.
* Message IDs from one API do not equate to IDs from the other, so your example is a bit flawed; there's no way to check with Twilio except the ID.
* Is "ID" even the term used? I don't know for sure, but "Tx Hash" seems to be more widely spread. [Edit: patio11 edited his comment while I was typing mine; I withdraw this point!]
* "It's on our wiki noob" - someone running the 3rd largest exchange should hardly be a "noob"
* "O(n) scan of all transactions globally" - that's not particularly hard, nor is it necessary (why scan all transactions from all time?), nor is it unexpected (the entire thing requires everyone to have the complete ledger, so you have the data anyway)
There are valid points to be made that the BitCoin protocol needs improvements, and these are even acknowledged by the core devs. This whole situation is a bit ludicrous. But I wish we were talking about "what have we learned", not "told you so".
When it comes to BitCoin, the conversation seems to be full of radicals and optimists when success happens, and gloaters when it doesn't. I don't feel either add to the conversation, we could be talking about how to improve this as a currency or (as I believe the long term actual application to be) how this can influence distributed trust, especially important in the current climate.
[0] https://twitter.com/patio11/status/431347845031940096
The Bitcoin community routinely uses the phrase "magic Internet money" to describe Bitcoin. You can verify this trivially via Google. There it is often used with the millenial I'm-joking-but-not-really sensibility. You might reasonably guess that that is not the type of humor I was going for with the reference to the community's in-joke, but that in-joke was not born of ignorance on my part.
People often deploy the word FUD to describe arguments about technology which have no basis in technical fact. Can you identify statements which I've made about Bitcoin which have no basis in technical fact?
People often deploy the word FUD to describe arguments about technology which have no basis in technical fact. Can you identify statements which I've made about Bitcoin which have no basis in technical fact?
I had never heard "magical internet money" before, so I apologise there.
As for the second, FUD was then incorrect. You points were factual. I believe they ignored certain other facts for the convenience of argument (like, most exchanges seemed to know about it). But FUD was the incorrect term.
I'm a bit sad to see my main argument derailed by semantic failures. I guess I need to learn a lot about debating on the internet.
As for the second, FUD was then incorrect. You points were factual. I believe they ignored certain other facts for the convenience of argument (like, most exchanges seemed to know about it). But FUD was the incorrect term.
I'm a bit sad to see my main argument derailed by semantic failures. I guess I need to learn a lot about debating on the internet.
It depends. There's a small issue with the reference client that is also causing chains of double spent transactions in merchant wallets: http://www.reddit.com/r/Bitcoin/comments/1xm49o/due_to_activ...
I would be more inclined to believe that the majority of sites use the reference client and this is why issues are appearing.
I would be more inclined to believe that the majority of sites use the reference client and this is why issues are appearing.
This is terrible news for Bitcoin. The currency will die without the exchanges.
Heh, you summed up the stupidity of the current cryptocurrency rush in one sentence. Shouldn't they be self-contained and their success not be affected by exchanges?
I wouldn't call it stupidity. It's like saying that the internet wouldn't last very long without ISPs.
Without many real places to deal with USD <-> BTC, then of course it will be hard to deal with the cryptocurrency (the passage is needed to allow for a transition period in currencies).
Without many real places to deal with USD <-> BTC, then of course it will be hard to deal with the cryptocurrency (the passage is needed to allow for a transition period in currencies).
It is more like saying houses would not last without doors if you want another analogy out of this world.
How do you self-contain anythng in this world of interconnectivity?
If you understood cryptocurrency you would understamd that their success is not measured in the price point. That is the most marketable aspect so that is what you know, the utility and use of the protocol is as good if not a better measure of their success. the relative speed with which issues are identified and resolved speaks to the success of the protocol not the daily/weekly highs and lows.
If you understood cryptocurrency you would understamd that their success is not measured in the price point. That is the most marketable aspect so that is what you know, the utility and use of the protocol is as good if not a better measure of their success. the relative speed with which issues are identified and resolved speaks to the success of the protocol not the daily/weekly highs and lows.
That doesn't make any sense. How do you obtain a new currency without an exchange?
You could use p2p transactions, get paid in it as a service, get it as a handout, sell something for it, or, in the case of Bitcoin, mine it.
By getting paid with that currency.
Why should they be self-contained and not affected by exchanges? An exchange is just a market where you trade one good for another, where both the goods happen to be currencies (fiat or crypto). It's like saying that a market where you trade Bitcoins for domain names or Bitcoins for food is stupid.
If you are payed in the currency that you spend, you don't need currency exchanges.
True, just like if you are paid in food, you don't need markets to exchange food for money.
Did you read my comment carefully?
If you are payed in the currency that you spend...
If you are payed in the currency that you spend...
I read it carefully, and I understand. I simply disagree. Why, for example, do you think there are exchanges for essentially every pair of government currencies?
Maybe we're talking about different things. My general point (which maybe you don't care about) is along these lines: A regular currency operates usually exclusively in one area, and in that area can be used for all spending. Strictly speaking, it could still run if currency exchanges suddenly vanished (and before informal replacements took over). A currency is after all not simply a commodity, it is the legally acceptable form of payment for all debts in that area (and must be accepted). Bitcoin, on the other hand, is not required to be accepted anywhere. In addition, most people value Bitcoin because it's worth a lot of US dollars. So its value seems more connected to the existence of exchanges than normal currencies, which at least can operate inside their own countries without any currency exchanges. (It's not quite as neat as that but the point is in the comparison to Bitcoin.) The further sensitivity to exchanges is because, since you are payed in other currencies, you are constantly evaluating Bitcoin's worth in terms of those currencies. (And being payed is a way to get currency without a currency exchange.)
For global exchange of value which is what I thought Bitcoin was supposed to do all by itself.
[deleted]
Because of an easily fixed bug in the software of some exchanges?
Because of the massive (and justified) collapse of confidence in everyone building web servies for this space.
It shouldn't surprise anyone that after months (years!) of BTC services absconding with millions of dollars worth of users money and now the exchanges starting to collapse in a similar fashion (users can't get money out) that the wider user base of bitcoin would begin to default toward not trusting services that purport to store coins 'securely'.
This is bad in the short term as the remaining exchanges prices show, but likely a positive progression in the safe use of crypto currencies going forward--
It shouldn't surprise anyone that after months (years!) of BTC services absconding with millions of dollars worth of users money and now the exchanges starting to collapse in a similar fashion (users can't get money out) that the wider user base of bitcoin would begin to default toward not trusting services that purport to store coins 'securely'.
This is bad in the short term as the remaining exchanges prices show, but likely a positive progression in the safe use of crypto currencies going forward--
I generally agree that this is bad in the short term, but likely a net positive in the long run. Bitcoin's delivering some very harsh lessons in crypto-currency security.
Speaking from personal experience; I was driven to learn a lot about crypto and information security in general because of bitcoin.
As a developer I think the correct mindset towards security is important to have day in and day out; Perhaps that's the real social engineering of the NSA leaks. Nothing could be better for the distributed security of our country than each and every individual developer being more acutely aware of security concerns at every keystroke.
As a developer I think the correct mindset towards security is important to have day in and day out; Perhaps that's the real social engineering of the NSA leaks. Nothing could be better for the distributed security of our country than each and every individual developer being more acutely aware of security concerns at every keystroke.
Yes, confidence in a currency is very important to its survival. The crazy volatility, the inability to withdraw sometimes, the competitors, the uncertainty everywhere. Bitcoin is not helping itself.
It seems unlikely to me that, after surviving all the things you mention, Bitcoin's downfall would be the result of some temporary downtime from a couple of exchanges. I guess you could argue it's the proverbial final straw on the camel's back, though.
Being a Mt. Gox client which had some money on their server as they paused BTC withdrawals, this gives me hope that the flaw on their side was indeed purely technical and that they're not nearing bankrupcy just yet.
oh god you have no idea other than reading headlines and extrapolating nonsense.
This is not going to kill any exchange (except perhaps mtgox, but that is due to an accumulation of poor performance rather than this minor issue).
This is not going to kill any exchange (except perhaps mtgox, but that is due to an accumulation of poor performance rather than this minor issue).
I think this will be fixed in next-gen protocols like Ethereum:
http://www.ethereum.org/
We need exchanges that are also P2P like Bitcoin.
http://www.ethereum.org/
We need exchanges that are also P2P like Bitcoin.
Not too bad. It will encourage people to maintain control of their bitcoin
If you maintain control of both bitcoin and dollar, how could the exchange function? It requires storage of both.
Gambling exchanges have worked well for years, I wonder if the first serious competitor in the btc exchange space will be from one of those exchanges. (Unlike established financial exchanges they might be willing to risk a reputation hit for getting established in the space.)
Gambling exchanges have worked well for years, I wonder if the first serious competitor in the btc exchange space will be from one of those exchanges. (Unlike established financial exchanges they might be willing to risk a reputation hit for getting established in the space.)
If only there was some regulation. Then maybe I would consider trusting these exchanges.
Ahh, yes, regulation. Like when big exchanges lobby the government, then monopolize the market and do whatever the hell they want while charging high fees? Great idea.
What you want is an independent audit, not regulation.
What you want is an independent audit, not regulation.
Hey, at least when there's a bank run I (well not me, since I have no money in US banks) will see my federally insured $20k or whatever, even in the case of collapse.
The problem here is that regulation is not voluntary. So, for example, if I don't trust this exchange - fine, maybe I will only go to government approved exchanges. But then another fella may feel he trusts this unapproved exchange. It's his choice, why should I care? Why should I be forcing my concerns upon him through government, in the form of regulation? Because, of course, if regulation exists for exchanges, this other exchange wouldn't be operating and this other fella wouldn't actually have a choice.
So it's important to remember - insurance and audit are great things. But combine them with government policing and force and you have a regulation, which only leads to restricting the choices consumers have.
So it's important to remember - insurance and audit are great things. But combine them with government policing and force and you have a regulation, which only leads to restricting the choices consumers have.
Because in the real world there's a huge amount of information asymmetry. Because most consumers are not informed (not because they don't put the effort but sinmply because they can't just look at the bank's books and decide whether they're well off), this asymmetry greatly affects a consumers decision to choose "correctly": it's not really a free market.
Obviously it depends on the regulations, but a lot of regulations are about making sure that there's at least a minimum bound in the "quality" of products offered, because of the asymmetry at play here. If there is none, we can end up with "bad" products(that don't seem bad because we're uninformed) crowding out "good" ones, and having the entire market be worse off.
The 2007 crisis was a perfect example of asymmetry causing markets to crash: obviously there's the whole aspect of consumers being mislead on their mortgages, but there's the even greater aspects of banks misleading each other! Because of the opacity of the market of derivatives (nobody knew just how invested everyone was in on certain obligations) no bank could make informed decisions on what to do with their positions.
If we don't restrict some choices in the short term, then we can end up with no choices in the long term. In areas of extremely high uncertainty, regulation (notably concerning transparency) is necessary to make the market freer (in the actual definition, not from the common usage of free=no regulation).
Obviously it depends on the regulations, but a lot of regulations are about making sure that there's at least a minimum bound in the "quality" of products offered, because of the asymmetry at play here. If there is none, we can end up with "bad" products(that don't seem bad because we're uninformed) crowding out "good" ones, and having the entire market be worse off.
The 2007 crisis was a perfect example of asymmetry causing markets to crash: obviously there's the whole aspect of consumers being mislead on their mortgages, but there's the even greater aspects of banks misleading each other! Because of the opacity of the market of derivatives (nobody knew just how invested everyone was in on certain obligations) no bank could make informed decisions on what to do with their positions.
If we don't restrict some choices in the short term, then we can end up with no choices in the long term. In areas of extremely high uncertainty, regulation (notably concerning transparency) is necessary to make the market freer (in the actual definition, not from the common usage of free=no regulation).
> If we don't restrict some choices in the short term, then we can end up with no choices in the long term
Is it a chant or something? We can end up with no choices. Or maybe we will end up with more choices. Can you prove it logically without manipulating data and suggesting it to be evidence? Because the 2007 crash you mentioned can be explained from a different point of view, completely different from yours.
I can also say "everyone being able to own guns actually increases overall safety and if you don't allow people to own guns, we may end up with less safety". Do you realize this sounds exactly like your argument?
Is it a chant or something? We can end up with no choices. Or maybe we will end up with more choices. Can you prove it logically without manipulating data and suggesting it to be evidence? Because the 2007 crash you mentioned can be explained from a different point of view, completely different from yours.
I can also say "everyone being able to own guns actually increases overall safety and if you don't allow people to own guns, we may end up with less safety". Do you realize this sounds exactly like your argument?
I am not going to be the guy who figures out how to unify the world's economists.
I'm not saying that every instance of markets should be regulated, I'm saying that some markets in their unregulated form are not free, and can end up imploding on itself. You might argue that a market in that form isn't worth saving, but if a small bit of regulation can push the market in the right direction you can end up with a healthy market.
You're going to have to explain your last statement, because I don't get it.
Every economic argument will reach the point of some guy saying "A" and another guy saying "not A" anyways though, so might as well just stop here.
I'm not saying that every instance of markets should be regulated, I'm saying that some markets in their unregulated form are not free, and can end up imploding on itself. You might argue that a market in that form isn't worth saving, but if a small bit of regulation can push the market in the right direction you can end up with a healthy market.
You're going to have to explain your last statement, because I don't get it.
Every economic argument will reach the point of some guy saying "A" and another guy saying "not A" anyways though, so might as well just stop here.
> Because in the real world there's a huge amount of information asymmetry.
True. And the "solution" of government financial regulation is to allow the people with more information to create compulsory regulations that benefit themselves.
True. And the "solution" of government financial regulation is to allow the people with more information to create compulsory regulations that benefit themselves.
FDIC insures up to $250k per account type.
https://en.wikipedia.org/wiki/Federal_Deposit_Insurance_Corp...
https://en.wikipedia.org/wiki/Federal_Deposit_Insurance_Corp...
Not if the government have problems or in the case where multiple banks fall down. History lesson here.
Unless of course there was actually a big problem, like widespread bank runs. Even if the FDIC is able to magically create money (in cooperation with the Federal Reserve and/or US Treasury), the FDIC can't magically create wealth.
Politics is often about finding bad solutions to worse problems.
No. This should never be an excuse for finding a better solution because people would not want to look for it and because it is extremely difficult to undo a regulation put in place. You're saying regulation would work better than an independent audit? How so? Show me the mechanism.
Who's going to pay for an independent audit without regulation requiring it? They're clearly not doing it on their own currently.
I personally would be very much willing to pay for an audit of an exchange before I make the choice of which exchange to use. As many other Bitcoin traders. Who else do you think?
If I may ask, which exchange are you currently using, and what did your audit show?
There were no companies offering Bitcoin exchanges audit because the industry is very young. Expect those companies to appear (unless regulators start messing up with exchanges). If they don't appear, it means there's not enough demand. If there's no demand for audit and government is still trying to regulate the industry, it means they're wasting taxpayers money on something taxpayers don't want.
The only problem politics ever addresses is "how may I steal more from other people?"
So the tragedy of the commons, obscure forms of financial fraud, bank runs, and the marketing of addictive substances are examples of non-problems?
Politics is often about making bad problems worse.
If you have much trust in independent audits, I guess you've never taken part in one!
Auditors generally have no incentive to rock the boat, and might have a disincentive in the form of losing future business. And even if they're really thorough, most auditors are only in for a few days or weeks and don't have time to go through things anything like as thoroughly as people who work on them full time. And even if they're really thorough and have the time to go through everything with a fine-toothed comb, insider threats can be undetectable, like if the guy preparing the cold storage wallet to put in the safety deposit box makes himself a copy.
The only audit of an exchange worth a damn is the audit undertaken by reputable insurers who will guarantee my entire deposit.
Auditors generally have no incentive to rock the boat, and might have a disincentive in the form of losing future business. And even if they're really thorough, most auditors are only in for a few days or weeks and don't have time to go through things anything like as thoroughly as people who work on them full time. And even if they're really thorough and have the time to go through everything with a fine-toothed comb, insider threats can be undetectable, like if the guy preparing the cold storage wallet to put in the safety deposit box makes himself a copy.
The only audit of an exchange worth a damn is the audit undertaken by reputable insurers who will guarantee my entire deposit.
Regulation gets me neat little things like, say, the FDIC.
> What you want is an independent audit, not regulation.
Maybe even some regulation requiring such a thing?
Maybe even some regulation requiring such a thing?
Wasn't that what led to the mortgage crisis? Banks got to choose the "independent" auditors they used, so the market of auditors selected for those who overvalued the assets. When it became clear that the "independent" valuations were unreliable, the system collapsed at massive cost to the global economy.
Competition isn't a magic bullet. It amplifies perverse incentives just as easily as it amplifies legitimate incentives.
Competition isn't a magic bullet. It amplifies perverse incentives just as easily as it amplifies legitimate incentives.
Maybe consumer demand requiring such a thing. Would you rather do "Bitcoin banking" with an institution that submits to third-party audits, or one that doesn't?
[deleted]
yeah like those people in Cyprus trusted their regulated banks, didnt save their depsoits did it, or in Argentina where capital controls exist and the inflation rate means your money is worht less every day, they are all regulated.
What mechanism would cause the regulatory agencies to be any more competent than the people running the exchanges?
Does this relate to why coinedup suspended bitcoin withdraws and deposits for around 14 hours yesterday?
http://www.reddit.com/r/CoinedUp/comments/1xkft8/why_are_bit...
http://www.reddit.com/r/CoinedUp/comments/1xkft8/why_are_bit...
[deleted]
I am lucky that about two months ago I moved over to Coinbase from both Mt Gox and BitStamp. I wonder now if Coinbase is going to start having issues.
> I am lucky that about two months ago I moved over to Coinbase from both Mt Gox and BitStamp. I wonder now if Coinbase is going to start having issues.
You mean something like this? http://www.reddit.com/r/Bitcoin/comments/1wtbiu/how_i_stole_...'Someone' didn't ensure their trading engine did atomic writes to a database (by the way, that database doesn't do write isolation on multiple documents by default.. guess which database is that? Hint: it starts with the letter 'M'), which resulted in a potential race condition that could be exploited.
Coinbase uses that database, and apparently did not know that you need to ensure atomic write operations.
edit nwh links to Coinbase CEO's comment that it was not them. Ok, good to know. However, I still can't see how anyone would use said database in critical/production infrastructure, sorry. Maybe in a few+ years time it will be mature enough.
The Coinbase CEO mentioned that this wasn't them being discussed there, which begs the question who else it could have been.
https://news.ycombinator.com/item?id=7214973
https://news.ycombinator.com/item?id=7214973
You should consider moving your coins out right now, since there's no benefit to keeping them in Coinbase unless you're trading. (This is always true regardless of the current problems.)
>unless you're trading
Not even, since Coinbase is a webwallet not an exchange... People generally keep them there because its an easy way to manage/spend them (esp on a phone)
Not even, since Coinbase is a webwallet not an exchange... People generally keep them there because its an easy way to manage/spend them (esp on a phone)
Well, it does let you trade. It also seems to have some merchanting abilities.
It lets you buy. That's not the same as trading, you can only execute market orders so its trading functionality is extremely limited.
Ah, you are right. For the type of trading I do now (buy when shit hits the fan, sell when things calm down), it's good enough.
Meanwhile I still wonder why people bother with online wallets at all. They are less secure than traditional banks and centralised. I only hold very small amounts of coins in online wallets for trading and use bitcoin-qt for the rest. Can't say I ever noticed any downtime.
Coinbase has stated they're not affected by this issue
> This is a denial-of-service attack made possible by some misunderstandings in Bitcoin wallet implementations
So... they didn't handle transaction processing correctly either. Are there any exchanges that are handling this properly?
So... they didn't handle transaction processing correctly either. Are there any exchanges that are handling this properly?
> Are there any exchanges that are handling this properly?
I very much doubt it ;)
I very much doubt it ;)
So another exchange which ignored the known 'bug' in bitcoin and which as a result made them open to exploitation. Why can't bitstamp just admit they have a software issue and are fixing it?
[deleted]
So it wasn't just mtgox being incompetent, then?
[deleted]
This has to stop!
Probably due to the code they reused from back when they were a site to trade Magic cards.
Wrong exchange.
I know. I'm mocking the ridiculous thread yesterday that was so insistent that was a factor in the Gox problems.