What is Etherwall?

Etherwall is the first GUI wallet released for ethereum back in September 2015. Etherwall is a completely 3rd party 100% open source project hosted on github

Is Etherwall an ethereum node?

No, Etherwall currently uses geth as the “back-end” node to provide all the ethereum network functionality.

How do I update Etherwall?

Only update Etherwall from this website or the official github link! There are known impostors out there! To update on Windows, unzip the file contents and copy them over the old install. To update on Mac OS X just drag the app over the old one and override. To update on Linux use the package manager.

Can I use my own instance of geth?

Yes. Etherwall detects if geth is running already and uses the running instance if geth is using the default data directory. If you’re running geth using a custom data directory make sure to configure it in the settings panel.

Can I run Etherwall with parity as the node?

Yes. Make sure to run parity with the –geth option. If you notice a missing account it is probably due to this bug in parity.

Where did the gas combobox from transaction tab go to?

Gas is now estimated automatically. You can still specify a different amount manually after specifying all the other transaction fields.

Help! I tried sending and got an error about address checksum mismatch!

If you see this error it either means a bad or no “checksum”. Ethereum doesn’t have a CRC mechanism for addresses so Vitalik created an alternative “check” described here. If the whole address is lowercase it probably just comes from a low quality source. You can use Etherscan to check the address and copy the capitalized version into Etherwall. Be sure to double check all characters in such cases! People have lost substantial amounts due to mispastes or mistyping just one character.

How can I reconnect to geth if the IPC connection is broken?

You can reconnect by clicking the bottom right button in shape of network bars. This will attempt to connect to the IPC again.

Where are accounts stored?

Accounts are stored using geth in both thin client and full node mode. They reside in the datadir folder in the keystore subfolder. Make sure you do not delete this folder unless you made a backup of the wallet first!

Thin client

What does a thin client mean?

Thin client is a mode of operation for Etherwall where the main ethereum blockchain data is not downloaded to your computer. Geth the native ethereum CLI node is still used to handle account creation, storage and transaction signing while all the operations requiring a synced node are sent to a remote server. This is the default mode unless “custom node” is selected in settings.

How are my keys and passwords protected in thin client mode?

All account operations are still performed only on your local Geth node and never go over the network. This means account creation, communicating passwords to unlock accounts or sign a transaction are all kept only in the local computer same as in full node mode. Only signed transactions and all public chaindata information is communicated to the server (e.g. current block number request etc.).

How is my data protected between Etherwall and the remote server?

While all the data passed between Etherwall and the remote server is “public”, Etherwall uses SSL encryption to ensure nobody can snoop up your IP address and associate it to a send transaction request.

Are IP addresses logged on the server?

No and they will never be logged.

What software runs on the Etherwall remote server?

The server is hosted on Linode and hosts a standard Nginx web server with a Geth node set to allow websockets from local connection. Only the “eth” commands are allowed and SSL termination is provided by Nginx. No custom software is used.

Are there any limitation when running in thin client mode?

The only limitations are the inability to use a testnet and events backlog support. Only new contract events are reported as the GetLogs operation is very expensive.

Can I still use Etherwall with a full node?

Of course, just turn off thin-client mode in settings. Note however, that you will need to allow Geth to synchronize to latest block which can take 30GB of space and a substantial amount of time.

Can I run my own remote server?

In theory yes. Right now the remote server address is hardcoded in code, but can be changed easily for a custom build.


How do I use TREZOR ONE with Etherwall?

Etherwall should detect your TREZOR ONE device on start or when inserted. Your device needs to be set up on trezor.io otherwise you will get the not initialized error.

How do I import my accounts from TREZOR ONE?

Etherwall should auto-detect that there’s a new TREZOR ONE device with unimported addresses. If this doesn’t happen you can go to settings/trezor and click the import button there.

Help, my TREZOR T device is not detected?

TREZOR T is currently not supported by Etherwall. TREZOR T changed some of the workflow in the communication protocol and since I don’t have a TREZOR T device at the moment I cannot guarantee it’s going to work.

What is the import offset parameter?

The offset parameter is used to “skip” a given number of addresses. This can be used as an additional security feature. By specifying a specific offset one can have “hidden” addresses. It’s a security through obscurity feature but given that there’s a maximum of 4294967295 possible offsets it can save your ETH should your TREZOR ONE be stolen with the attacker knowing the right PIN and/or password.

What does it mean to remove an account?

Removing an account does not delete it’s private key from storage. It just removes it from Etherwall’s “cache” memory. The account stays stored in the TREZOR ONE device and can be reimported in the settings tab.

Wallet backups

How do I backup my wallet?

Wallet backups are supported since version 1.4.0. To create a backup open the main menu (Wallet) and select export. Choose a filename and submit. NOTE: the file save dialog is limited on some operatring systems and does not automatically create the .etherwall extension. Use .etherwall in the filename to avoid confusion on restores (see below)

How do I restore my wallet?

To restore your wallet from a backup open the main (wallet) menu and select import. Find the backup file and submit. If you don’t see the file in the list, choose “All files” from the file filter and try that way.

Help! My wallet backup file disappeared

The wallet import file dialog searches for files with the .etherwall extension by default. The export dialog is limited on some operating systems however and can cause an extensionless file to be created. Just select the “All files” filter in your file dialog when importing and select the right file.

What’s an account export? Is it the same as a wallet export/backup?

An account export is accessed from the context menu in the accounts tab. It only exports a single account as-is from the geth keystore folder to the destination of your choosing. Wallet export is a full wallet backup with all the accounts in it.


What are contracts?

Contracts are like small programs on the ethereum network. Contracts are very similar to “classes” from programming languages. They contain methods that can be invoked and events that notify the outside world.

Does Etherwall support contracts?

Yes, since version 1.3.0 etherwall supports contract invoking, watching and since 1.4.0 deployment (bytecode only)

Why is deploying contracts not supported from source?

Deploying contracts requires compiling the source code into bytecode first. There are various languages that can be used to define a contract and supporting just one would not be correct. Etherwall is a wallet and not a development platform. If you need to compile solidity contracts, use browser-solidity

How do I add an existing contract for use?

To add an existing contract go to the contracts tab and click add contract. You will need to know the contract JSON interface definition and it’s address. Fill in all the data and click save.

How do I deploy a new contract?

To deploy a new contract go to the contracts tab and click deploy contract. You will need to know the contract JSON interface definition and the bytecode of the compiled contract. Fill in all the data and proceed to transaction tab. Specify any transaction details and submit. NOTE: a block must be mined for a contract to be deployed. Etherwall will notify you of completion and add the contract to the list once it gets mined.

How do I watch a contract for events?

To watch a contract for events first add the contract if not done yet. Then go to the contracts/watches tab and add a new watch. Select your contract and specify if the watch is to be active and any topics you might need. Click save.

How do I view the events for a given contract?

To see the incoming events you need to have an active watch set up for the given contract. Once that is done, you should see the incoming events in the contracts/events tab as well as a notification pop up for each new event. You can inspect the event details, including the parameter values by right clicking the event and opening details.


What are tokens? What is ERC20?

Tokens are a special type of contract on the Ethereum network that provides the ability to “mint” your own token coins on top of Ethereum and transfer them between accounts. ERC20 is the standard for token contracts.

Does Etherwall support Tokens/ERC20?

Yes since version 2.1.0 Etherwall has full support for Tokens.

How do I add a token to Etherwall?

You need to know the token’s address. You add a token just like any other existing contract in the contracts/add existing contract section. If the contract address points to a token which is verified by Etherscan.io you will get everything else pre-filled. If not you need to also know the interface JSON and the ABI hex code of the token’s contract.

DAO/ETC hard fork?

What is your take on the DAO hack?

The DAO hack was a result of poor programming combined with bad oversight. Considering how much money was being pooled into the DAO and who the auditors of the code were (I’m looking at you Vitalik) a bug like this shouldn’t have happened. It is important to note however that the DAO’s vulnerability has no implication for the security of Ethereum itself.

Did you agree with the hard fork?

Not on principle, however I agreed to go with what the majority consensus on the network (not just miners) would be.

Do you support Ethereum Classic (ETC)?

No, not personally. Etherwall worked with ETC geth as long as they did not change any fundamentals of the client, but I do not invest time into it at this time. While I was opposed to the hard fork I disagree with how the ETC development is handled and do not support it.

Did you review the DAO code before investing?

I did, but only on the surface. I was looking for functionality that was not in the “marketing” so to speak, things like hidden centralized control functions. I wasn’t looking for a hack route and so found none.


Ethereum Wallet