OK, guys, this is important, please don’t skip over.This is in relation to
https://bitcointalk.org/index.php?topic=345619.msg4278460#msg4278460 (14699 NXT were sent to an erroneous account number).
1. After a lot of thinking and recalling, I am now 99.9% sure this wasn't my mistake:
a) I am a programmer with OCD, most of you here know what I mean: we obsess about tiniest details and double, triple check everything, especially something as important as sending a big chunk of money.
b) I have a 2-monitor machine, so backend form was on one screen and NXT client on the other. I moved my eyes at least 3-4 times between these two forms to make sure everything is correct. And the address is the most important part.
c) The address is long and starts with 1 (easily noticeable digit), erroneous account is shorter and starts with 4. I would have definitely noticed it by comparing 2 forms side-by-side.
d) I couldn't find any source from where this erroneous number could have gotten into my clipboard. All my passwords and passphrases are alphanumeric. There are no transactions in my history with this hash.
e) Other people apparently reported similar behavior.
This brings me to my second point:
2. This was most probably the software error. Come to think of it, it was silly to start using the system for real money this early in development! We should have all been on a testnet!
Now, this wouldn't be such a problem if I were one of the original stakeholders. Then I would have plenty of these monopoly money to cover any glitches.
But I missed out on that by like a week. So now these monopoly money turns into very real $1200 for me, which I simply cannot afford to pay, at least not right now. And not for something I am not responsible for. I am already paying for everything out of my own pocket: server, withdrawal fees, etc.
If this person thought it was Ok to send $1200 worth of money to an exchange 2 days old, built on top of a beta system, which haven’t even released the source code yet – then they must have prepared to take any possible losses. That’s what I do, except in my case the amounts are approximately two orders of magnitude smaller!
I thought about closing the exchange, but it’s a nice project and people seem to like it.
So the exchange stays operational. From now on I will save a screenshot right before I click “send” to make absolutely sure this wasn't my mistake if this ever happens again.
Also, if you deposit any money, you are on your own, no guarantees. This is a “best effort” service, because it’s built on top of such an unstable technology.
That said, if my exchange ever starts to bring serious money, here is my public promise to repay this erroneous transaction.
And this brings me to my final point:
3. This has to stop. There must be CRC added into addresses ASAP! Imagine the amount of grief this would cause, when the system hits the wild and people start losing money due to glitches or typos!
Allowing to send money to an arbitrary number is ridiculous! What if some guy buys a car and his money are now forever locked, due to a simple typo or a glitch?
Or there should be an easy mechanism to return these unclaimed funds back into account.CRC will also protect against bugs, because other nodes will reject an erroneous address, even if one node thinks it is Ok.