ETH Withdrawals back up
Since Dec 8, 2019, ETH withdrawals on Nuo had stopped working. This has been resolved now by our smart contract developers who have worked 24x7 (one of them even cut short a personal time out) since then.
Here’s what you need to do to enable withdrawal of ETH tokens from your Nuo trading account into any other wallet:
- Login to your Nuo account
- Go to Account->Settings
- Click on “Upgrade Nuo Account”
- Sign the transaction and boom — ETH withdrawal restored!
What was the issue?
This was due to the Istanbul fork of Ethereum which occurred at 00:25 UTC on Dec 8, 2019 had brought about certain changes in the internal workings of Ethereum due to which the ETH withdrawals on Nuo had been affected.
For the nerds?
Nuo’s trading account contract stores ETH tokens as WETH and when user withdraws this amount, WETH is converted to ETH and then transferred to the desired destination address. This is possible due to the default fallback function that is implemented in the trading accounts. The Istanbul hard fork introduced a bunch of new EIPs — one of which (EIP 1884) has caused certain opcodes to consume more gas than before. Since the fallback function has a gas limit of 2300, this led to the failing of the ETH withdrawal function.
How did we fix it?
The implemented solution relies on hardcoding the address of the deployed WETH9 contract inside of the default fallback method, as opposed to reading from the smart contract storage using SLOAD(a high gas consuming opcode) keeping the existing flow so that execution remain within the restricted gas limit of 2300. Users will have to provide approval to upgrade to the implementation of this newly deployed Account contract and restore the ETH withdrawal functionality.