4 ms·
This is incompetence on the part of MtGox. It is not even clear that the malleability problem is solvable. Besides the problem that there is innumerable ways t
by maaku 13y ago
This is incompetence on the part of MtGox.
It is not even clear that the malleability problem is solvable. Besides the problem that there is innumerable ways to transform a transaction to give it a different hash without affecting scriptSig validity, it is simply unknown whether it is possible to algebraically transform an elliptic curve signature without invalidating it. If so, then no matter what you do to cover up the other holes, that gaping one is left open.
Transactions are malleable. Deal with it. If a transaction is observed on the network that has the same input outpoints and the same outputs, it is the same transaction, and mtgox should treat it as such. This is a simple check to do, and trivial to automate.
And instead of reporting only the hash to the user, they should record, report, and track the transaction itself. You should be able to go to your withdraws and see the actual transaction, including which inputs were used, and what the change address is. You can then go to any block chain service and verify for yourself if/when those same outpoints are spent in a modified transaction.
This is MtGox's problem, not bitcoin's.
- nwh 13y agoEh well, it is Bitcoin's problem in that it's not meant to ever happen. Mt Gox's implementation is based on what is meant to happen in the network (transaction IDs can not change) rather than what does happen (signatures with weird padding are accepted). The network as of late version doesn't relay these either, I seem to remember reading, so it's a problem that's being intentionally reduced.
- maaku 13y agoThis is not a recently discovered "problem." This is how bitcoin has always worked. Even before the OpenSSL signature encoding malleability discovery, it was always known that you could add a NOP instruction to a scriptSig, for example, to change the txid without affecting the signature (as the scriptSig is not covered by the signature, for obvious reasons). From the very first day that Bitcoin was released, it was known to anybody who looked at the code that transaction ID's could be changed without affecting signatures.
- nwh 13y agoFrom the references on the forum, it looks like the issue wasn't really discovered or considered until mid 2011. The developers comment on their active involvement in closing this up, so it's probably reasonable to expect that it's not intended or desirable. https://bitcointalk.org/index.php?topic=8392.msg122410#msg122410 https://bitcointalk.org/index.php?topic=8392.msg122410#msg12...
- pmorici 13y agoIt's Feb. 2014 the issue has been known since at least May 2011 In other words people have known about this for about 3 years. My vote is still on Mt.Gox incompetence.
- maaku 13y agoThat is concerning malleability of the DER encoding only. Note that there are other ways to modify a transaction which change the hash without affecting the signature validity, such as inserting NOP instructions into any of the scriptSig's. That is what I was referring to, and something which was quite obvious from the first release of bitcoind.
- hoggle 13y agoIsn't it the case with Bitcoin that the official implementation amounts to its specification? Maybe implementing the protocol themselves was a good idea from a theoretical standpoint but in reality amounts to over-engineering? I certainly don't know enough about this stuff so I could be naive of course.
- coldtea 13y ago>This is incompetence on the part of MtGox. This is surprising. So a guy who calls himself "Magical Tux" and describes himself as "PHP Developer working on some weird stuff, like a mail server (POP3/IMAP4/SMTP) written in PHP" was not able to build a reliable worldwide exchange?
- tinco 13y agoYeah, like that guy that they call "The Zuck" who is a PHP developer working on some weird stuff, like a face book written in PHP, was not able to build a reliable worldwide social network? Get over yourself, MagicalTux is not alone any more, and they're working hard on being a reliable exchange, the most reliable one out there as far as I am aware.
- VMG 13y agoI wouldn't trust The Zuck with my money either
- true_religion 13y agoI was confused about this whole thing. I honestly thought that MagicalTux was the only name he gave, and that'd be troubling for someone running a financial institute. But his name is Mark Karpeles, its plastered all over the website, registration, and even his twitter account.
- coldtea 13y agoWell, there are a few points were your counter-example breaks down. For one, one could use social networking site, even a relatively unknown one, without much to lose. It's not like people wired $1000 dollars to Facebook when it started. So, yes, I could trust a random guy with some bs social site. With my money? Not so much. >Get over yourself, MagicalTux is not alone any more, and they're working hard on being a reliable exchange, the most reliable one out there as far as I am aware. If true, that just speaks very poorly of the state of bitcoin exchanges: """Or let's take that historic hack of Mt. Gox, which temporarily dropped the exchange rate to $0.01 per BTC, and involved a large Bitcoin heist. What they didn't tell you, was that several vulnerabilities in the Mt. Gox website and API were reported a while before the hack, and that the Mt. Gox staff more or less waved them away, completely ignoring their severity. This included MySQL injection vulnerabilities, just to put things into perspective a little. One of these vulnerabilities was almost certainly the attack vector that was used for the heist.""" http://cryto.net/~joepie91/blog/2014/02/10/why-mtgox-is-full-of-shit/ http://cryto.net/~joepie91/blog/2014/02/10/why-mtgox-is-full... (And of course now we have this new fiasco).
- yetfeo 13y agoIs it possible someone has been running a 'malleability bot' deliberately targeting transactions to cause this issue as much as possible?
- maaku 13y agoOr, since MtGox was known to create transactions with encodings that became non-standard in 0.8, maybe someone was charitably rewriting these transactions so they could be relayed by the network. I don't think there's public knowledge yet as to what happened, including whether it was deliberate or malicious.
- laichzeit0 13y ago> Transactions are malleable. Deal with it. Clearly MtGox overlooked this and thought it was the obvious way to track a transaction. Given that they're malleable, what use-case do they have now?
- panarky 13y agoI suspect this is more FUD than incompetence. Mt. Gox could solve the issue without a change to the Bitcoin protocol by tracking the entire transaction and not just the hash. But instead of fixing their own problem they make it sound like Bitcoin itself is broken. Why would they do this? Cui bono? If Mt. Gox has been scammed out of a large amount of Bitcoin, they may not own enough to fill withdrawal requests. If this is true, then a steep decline in the price of Bitcoin could allow them to cover the gap.
- ohyes 13y ago>Why would they do this? Cui bono? This is ass covering. If it's a 'bug in the bitcoin protocol' it isn't their fault.