4 ms·
By using floating point values for a user's balances (per-currency) in the DB, they effectively did make themselves a fractional reserve bank, even if the sprea
by daeken 15y ago
By using floating point values for a user's balances (per-currency) in the DB, they effectively did make themselves a fractional reserve bank, even if the spread was likely small. Most every transaction would've added a tiny bit of an error value -- given enough time, this would've added up pretty considerably.
- wiredfool 15y agoWell, that and the 500k. And whatever anyone else was able to sql inject.
- w1nk 15y agoWhere did you see they used floats? I missed it.
- batterseapower 15y agoDue to how round-off is specified, cumulative errors in floating point calculations should average to 0 for typical workloads.
- maaku 15y agoNo. If you were to repeat an experiment a million times, the standard deviation should (quickly) limit to zero. That does not mean that the value compued is correct, however. Due to how round-off is specified, the estimated error will increase with every floating point operation.
- bnr 15y agoIIRC that was Bitcoin7, another exchange, called out for using floats to store balances.
- daeken 15y agoBitcoin7 was called out for floats, but they actually weren't. MtGox was, but isn't anymore. It was reported in full disclosure, then confirmed on IRC later, although I don't have logs handy.