This article is intended to showcase the process of an Ethereum wallet set up. You can read this article for more information regarding the general conception of users security in crypto.
This article focuses on Ethereum ecosystem but the showcased MyEtherWallet can be configured to work with any other EVM-compatible chain like Avalanche, Optimism or Binance Smart Chain.
The purpose of this article is to guide a user through the process of configuring a wallet best suitable for storing funds. We explicitly assume that the primary goal is long-term storage of significant amounts of crypto assets. Therefore, security and manual control take precedence over the ease of use here. Ultimately, the best wallet is the one that won't lead to the loss of your funds, not the one that's easy to use.
Your longterm storage wallet must be:
- Open source
- Executable locally
- Independent from external services and node providers
- Your funds are not stored in a wallet. Your funds are stored on the blockchain.
- Keys give access to your wallets stored on the blockchain. Wallets only act as interfaces between you and blockchain. Therefore it is possible to export keys from one wallet and import them onto another if you have the keys.
- There is another intermediary between you, a wallet and a blockchain - it's an RPC node.

MEW v5.1.5 suffices all the above mentioned requirements.
- It is open-source
- It can be executed locally in your browser
- It does allow a user to configure the RPC node manually
It can be downloaded from here: https://github.com/MyEtherWallet/MyEtherWallet/releases/tag/v5.1.5

You must download MyEtherWallet-v5.1.5.zip and unarchive it.

Just open the archive and extract ALL FILES in a new folder. This folder will be your wallet.
Now your folder should look like this:

There should be an index.html file in the folder now. Open this file with a browser and it will launch the wallet in your browser. It will be a page that executes locally in your browsers memory.
This is how it will look like:

The best way to store your keys is to store them in an encrypted JSON Keystore file.
Most of the modern wallets prompt a user to use mnemonic phrase instead of storing encrypted keys. I would not recommend doing this ever. Anyone who can steal your mnemonic phrase would be able to access your funds. If someone would steal your encrypted keystore file - then it would be required to decrypt it first and if your encryption password was good enough it would take years.
Click on "Create New Wallet" button:

Select "By Keystore file":

It shows a "Not recommended" warning that says that this method must only be used in offline setting - and this is exactly what we are doing (by executing this wallet locally in the browser).

Click "Next". Download the file.

It will look like a text file with a name starting with "UTC--". This is your key. It grants you access to your address on the blockchain. In any wallet.
Go back to the starting page (or reopen the index.html file of your wallet folder again) and select "Access My Wallet"

Select "Software" option.
It might be labelled as "not recommended". Its not because it is bad but because the developers of MyEtherWallet are affiliated with the hardware wallet development companies and they want you to spend money on hardware wallets. Don't buy into that marketing stuff.

Select "Keystore file".
Here they warn us again that this option is for experienced users. This article is explaining exactly how to become that 'experienced user'.

When you click "Continue" the popup will prompt you to select the keystore file. You need to pick the one you are willing to access

Then you will need to input the password you used to create this Keystore file. Its always the same password and there is no way to change it so make sure you used a good one. You can also create a new Keystore file at any time if needed.
After you will input your keystore's password and click "Access Wallet" the file will be decrypted and the dashboard will open.
The version of the wallet we are using is quite old. As I've said at the beginning, the wallet does not send transactions by itself, instead it is asking an RPC node to do so. MetaMask for example has its own RPC nodes to work with. Its good for as long as MetaMask remains a living project however if we will come back in 5 years to sell our crypto and we would recognize that MetaMask shuts down their nodes - we would struggle to make it send out any transactions. Here the ability to configure RPC nodes in a wallet comes in handy.

When you will first access your wallet it will most likely throw a ton of red errors at you. Don't worry, thats just because the old nodes don't function. We are going to update this.
First of all, you will need to find a working RPC node. Googling "Ethereum RPC nodes" would work. Also you can just get one here: https://chainlist.org/chain/1

You only need to copy the "RPC server address". I took https://ethereum-rpc.publicnode.com
as an example.
Now we need to go back to our wallet and select "Change" under Networks tab.

Enable the "Add Custom Network/Node" switch.

Give it a name you like, copy & paste the chosen address from the RPC nodes list to the URL input box, delete any numbers from port and click "Save".

Select Change under Networks tab again and scroll the list to the very bottom. You will find your newly created node there. Select it.

If the node works then it would display your balance (which could be zero on a fresh wallet however) and it should catch up on Lates Block # under the Networks tab.

Sending tokens is done from the Send tab just below the Dashbord on the left panel.

This will work with ETH (or any other native currency like BNB on Binance Chain). You might need to import a token manually however.
In order to import a token you will need to click on "+ Custom Tokens" on the right panel.

Then you will be prompted to input (1) Contract address, (2) Symbol and (3) Decimals. The most important one here is the contract address. Every token must have its contract address listed on CoinMarketCap. For example here is the USDT https://coinmarketcap.com/currencies/tether/

You can input any symbol you want - it will just display that as the name of your token in your wallet. Decimals is a tricky one, you might need to google it. Then you will need to check if the token balance on your wallet and in a blockchain explorer match each other. If they don't (for example the explorer shows you 10 USDT while your wallet shows 100 USDT) then the blockchain explorer is always right and its likely a problem with your decimals. You might need to delete the token and import it again.

As a rule of thumb:
- USDT has 6 decimals
- Everything else has 18 decimals

Make a folder to put your keystore files there.
Make a folder for MyEtherWallet (you already have one if you followed this guide).
Archive these and keep them together. This is now your crypto package.
Make a backup. Always have a backup. Also, use multiple addresses (and therefore multiple Keystore files) - don't store all your funds in just one.
Yes.
For example you can import it in MetaMask in the following way:
- Open accounts management menu. Select "Add account or wallet"

- Select "Private key" option

- Select "JSON file" option in the dropdown

Then you will need to input your decryption password that your keys will get imported to MetaMask.