Crypto Coins News - Ratings - Reviews
This morning, this post made it to the Ethereum subreddit frontpage: "If your exchange is related to 0x027BEEFcBaD782faF69FAD12DeE97Ed894c68549, withdraw immediately, they screwed up a few days ago and lost 60,000 ether"
Quadriga has confirmed the loss of Ether although the amount is undisclosed here: https://np.reddit.com/r/ethereum/comments/6ettq5/statement_on_quadrigacx_ether_contract_error/
I can confirm the CEO of Quadriga has personally confirmed to me that the above statement is the official statement.
The bug is described by Quadriga as:
Earlier this week, we noticed an irregularity with regards to the sweeping process of incoming Ether to the exchange. The usual process involved sweeping the ether into a ETH/ETC splitter contract, before forwarding the ether to our hot wallet. Due to an issue when we upgraded from Geth 1.5.3 to 1.5.9, this contract failed to execute the hot wallet transfer for a few days in May. As a result, a significant sum of Ether has effectively been trapped in the splitter contract. The issue that caused this situation has since been resolved.
In order to call a function in an Ethereum contract, we need to work out its signature. For that we take the HEX form of the function name and feed it to Web3 SHA3. The Web3 SHA3 implementation requires the Hex value to be prefixed with 0x – optional until Geth 1.5.6.
Our code didn't prefix the Hex string with 0x and when we upgraded Geth from 1.5.3 to 1.5.9 on the 24th of May, the SHA3 function call failed and our sweeper process then called the contract with an invalid data payload resulting in the ETH becoming trapped.
As far as recoverability is concerned, EIP 156 (https://github.com/ethereum/EIPs/issues/156) could be amended to cover the situation where a contract holds funds and has no ability to move them
The amount of Ether lost has not yet been confirmed by Quadriga
Quadriga claims they are still solvant and that operations are running as normal.