Files
AutistMask/docs/README.md
T
sneak ef0ff2f75e
check / check (push) Canceled after 0s
e2e / e2e-chrome (push) Canceled after 0s
e2e / e2e-firefox (push) Canceled after 0s
docs: rewrite the user guide sentence by sentence against the prose rules
Every sentence is written for a newcomer to read once, with each technical
word defined where it first appears and every list as bullets. Two false
statements are gone: history rows show the other party's address in full
(the only shortened address is the label of a token with no known symbol),
and the balance list hides a token that claims ETH from the wrong contract.
The guide now also covers the lost-password route, the saved-data recovery
screen, network switch requests, closed approval windows and the Connected
Sites list.

Part of #672.

Model: fable-5-1
2026-11-02 02:03:32 +00:00

717 lines
30 KiB
Markdown

# AutistMask User Guide
AutistMask is an Ethereum wallet. It runs as a browser extension in Chrome and
Firefox. This guide explains how to install it and how to use it.
## What it does
- It keeps your wallets. A wallet comes from a recovery phrase (12 or 24 words),
from a private key, or from an extended private key. An extended private key
is a single key that many addresses are computed from.
- It shows the ETH and ERC-20 token balances of your addresses. ETH is the
currency of Ethereum. A contract is a program that runs on Ethereum. An ERC-20
token is a token issued by a contract under the ERC-20 standard.
- It sends and receives ETH and ERC-20 tokens.
- It connects to web3 sites and signs what you approve. A web3 site is a website
that asks a wallet to sign for it.
It does nothing else. It has:
- no swap screen;
- no portfolio view;
- no NFT gallery (an NFT is a non-fungible token, such as a collectible);
- no advertising;
- no tracking.
## What it sends, and to whom
The wallet runs in your browser. The developer runs no server. Each service
named below sees your IP address, as any website you visit does.
By default the wallet talks to one service: the Ethereum RPC endpoint. The RPC
endpoint is the server that the wallet asks about the blockchain and sends your
transactions through. Usually it is a node, a computer running the Ethereum
software. A new install uses a public one,
`https://ethereum-rpc.publicnode.com`. You can change it in Settings.
The RPC endpoint sees every address that the wallet asks about and every
transaction that the wallet sends. While the wallet is open, it asks for your
balances every 10 seconds. While it is closed, it asks every 60 seconds. If you
want privacy, point the Ethereum RPC setting at a node of your own.
On Ethereum Mainnet, the main Ethereum network, the wallet reads USD prices
through the RPC endpoint, from Chainlink price feed contracts. No price service
is contacted. A token with no Chainlink price feed shows no USD value.
Two more services get your data only after you turn on a setting. Both settings
are off in a new install. The first screen and Settings both offer the two
settings.
- "Use Blockscout". Blockscout is an open-source block explorer, a service that
indexes the blockchain and answers questions about it. With the setting on,
the wallet sends Blockscout your addresses on each refresh, and the hash of
each transaction you open. A hash is the id of a transaction. In return the
wallet shows your transaction history, transaction details and the tokens you
have not added yourself. You can point the setting at a Blockscout server of
your own.
- "Check recipients on Etherscan". Etherscan is a block explorer website. With
the setting on, the wallet fetches the recipient's Etherscan page each time
you review a send. The wallet warns when Etherscan labels the address as
phishing, scam or exploiter. Only the recipient's address is sent. The
Etherscan server cannot be changed.
Each time a site's request opens an approval screen, the wallet checks the site
against a phishing list built into the extension. That check sends nothing
anywhere.
These stay in your browser and never leave it:
- your recovery phrases, private keys and extended private keys, encrypted with
your password;
- your wallet names and your settings;
- which sites you have allowed or denied;
- the list of fraud contracts that the wallet has seen.
The Etherscan links on the screens are ordinary links. They contact nothing
until you click them.
## Installing
AutistMask is built from source. [`../README.md`](../README.md) says how:
`make setup` and then `make build` write the extension into `dist/chrome/` and
`dist/firefox/`.
Chrome:
1. Open `chrome://extensions/`.
2. Turn on "Developer mode".
3. Click "Load unpacked" and pick `dist/chrome/`.
Firefox, version 115 or newer:
1. Open `about:debugging#/runtime/this-firefox`.
2. Click "Load Temporary Add-on" and pick `dist/firefox/manifest.json`.
A temporary add-on is unloaded when Firefox exits. Add it again the same way on
every start. Your wallets survive the restart, because Firefox keeps the
extension's storage between loads. Removing the add-on in `about:addons`
destroys that storage. On Firefox, Remove is final. Your recovery phrase,
private key or extended private key is then the only way back.
AutistMask does not run in Firefox private windows. If Firefox is set to never
remember history, every window is private, and the extension does not run at
all.
## Your password and your backup
Each wallet has its own password. The password encrypts that wallet's secret,
its recovery phrase or key, on this device. The encryption uses Argon2id to turn
the password into a key and XSalsa20-Poly1305 to encrypt with it, through the
libsodium library.
The password is not part of your recovery phrase. Anyone with the phrase can
restore the wallet on any device without the password. The password protects
only the copy stored in this browser.
While a phrase wallet is in this browser, `[recovery phrase]` in Settings shows
its phrase after your password. Once this browser's copy is gone too, the wallet
is lost.
The wallet asks for the password when you:
- send a transaction;
- sign a transaction, message or typed data for a site (typed data is structured
data laid out as named fields);
- show a recovery phrase;
- export a private key;
- delete a wallet with "Confirm Delete".
It never asks for the password to:
- show balances;
- receive funds;
- read the transaction history;
- remove an address.
The password cannot be recovered or reset. If you forget it, you can still
delete the wallet with "I have lost my password". Then add the wallet again from
your backup, with a new password. See Deleting a wallet below.
## Getting started
### Creating a wallet
1. Click the AutistMask icon in the browser toolbar.
2. The first screen offers "Use Blockscout" and "Check recipients on Etherscan".
Both start off. Tick what you want; you can change both later in Settings.
3. Click "Add wallet".
4. On the "From Phrase" tab, click the die button. It writes a new 12-word
recovery phrase into the box.
5. Write the words down and keep them safe. Anyone with them can take your
funds. Without them, this browser's copy is the only copy of your wallet.
6. Choose a password and type it twice. It needs at least 12 characters, unless
"Allow weak passwords" is on in Settings.
7. Click "Import".
Later wallets are added from Settings with "+ Add wallet", or with the "Add
additional wallet..." link at the bottom of the home screen.
### Importing a wallet
The Add Wallet screen has three tabs:
- "From Phrase": paste a 12 or 24 word recovery phrase. AutistMask computes
addresses from the phrase by the rule `m/44'/60'/0'/0`, called the derivation
path. Most wallets use the same rule, so the same phrase gives the same
addresses here and elsewhere.
- "From Key": paste one private key. The wallet gets one address.
- "From xprv": paste an extended private key. It must be the master key, the
root of the key tree, not a key computed from the root. The wallet behaves
like a phrase wallet but has no phrase to show.
All three tabs ask for the same password fields. "Import" finishes the job.
After a phrase or xprv import the wallet looks for addresses that have been
used. The scan counts an address as used when it holds ETH or has sent a
transaction. An address that only received tokens is not found. The scan checks
addresses through the RPC endpoint, five at a time, and stops after five unused
ones in a row. When it finds more than one used address, those addresses replace
the wallet's address list, and a message says how many were found.
The wallet refuses:
- a phrase or key that is already added;
- an invalid phrase or key;
- an extended private key that is not a master key.
### Adding addresses
A wallet made from a phrase or an extended private key can hold many addresses.
On the home screen, click the "+" button next to the wallet's name. The wallet
computes the next address at once. The same phrase always gives the same
sequence of addresses. Each address is labelled "Address N".
### The active address
One address is the active address. The home screen shows it at the top, with its
ETH balance and its USD value. "Send" and "Receive" on the home screen act on
the active address. Connected sites see the active address and no other. Tap any
address row on the home screen to make that address active.
### Removing an address
Each address of a phrase or xprv wallet with more than one address has an `[x]`
button on the home screen. The confirmation screen explains what removing does.
Nothing is destroyed: the address stays yours, and any funds at it stay where
they are. The wallet stops listing the address and forgets the sites allowed or
denied for it.
Getting the address back is not easy. "+" computes an address that this wallet
has never listed, so never the removed one. The way back is to delete the whole
wallet and import its backup again. The scan after the import finds the address
only if it holds ETH or has sent a transaction.
### Deleting a wallet
Open Settings and click `[x]` next to the wallet. Type the wallet's password and
click "Confirm Delete". Deleting erases the copy of the key stored in this
browser and the wallet's site permissions. Nothing on the blockchain changes.
If you have forgotten the password, click "I have lost my password". The next
screen asks you to type the wallet's name instead. "Delete This Wallet Forever"
then deletes the wallet without a password. With a kept copy of the wallet's
backup you can add the wallet again with a new password. Without one, deleting
the wallet loses everything it holds, forever.
## Tokens
### Which tokens are shown
A tracked token is one you added yourself, by its contract address. A tracked
token is listed on every address while "Show tracked tokens with zero balance"
is on, which it is in a new install. With that setting off, a tracked token is
listed only on the addresses that hold it. Tracked tokens are shown whether or
not "Use Blockscout" is on.
Other tokens appear only while "Use Blockscout" is on. Blockscout reports every
token that an address holds. The wallet lists such a token only when it is on
the bundled list of well-known tokens or has at least 1,000 holders. Everything
else is treated as spam and hidden. Turning "Use Blockscout" off removes every
untracked token from the lists at once.
The balance list and the send screen hide a token that uses a well-known symbol
from another contract, `ETH` included. A token you track yourself is still
listed at zero while "Show tracked tokens with zero balance" is on. See Scam
protection.
### Tracking a token
From an address:
1. Click `[info]` on the address.
2. Click "+ Token".
3. Enter the token's contract address, or pick one of the common tokens offered.
The common tokens are offered on Ethereum Mainnet only.
4. Click "Add".
From Settings, under Tracked Tokens, click "+ Add token". That screen offers the
top 10 tokens as buttons, the top 100 in a dropdown, and a contract address
field. The two lists are offered on Ethereum Mainnet only.
A token is tracked on the network that it was added on. Settings lists the
tracked tokens of the active network, each with an `[x]` button that stops
tracking it.
The wallet refuses to track:
- a token that is already tracked;
- an address on its scam list;
- a contract that does not answer as an ERC-20 token.
### The token screen
On an address's screen, click any balance row. The token screen shows:
- the token's balance;
- its contract address;
- its name, symbol and decimals (the number of decimal places its amounts have);
- its holder count, when known;
- its website, when known;
- the token's own transaction history.
## Sending
1. Click "Send" on the home screen, on an address's screen or on a token's
screen.
2. Choose what to send: ETH, or one of the tokens that the address holds.
3. Enter the recipient. This is an address, or an ENS name such as
`vitalik.eth`. An ENS name stands for an address, and the wallet looks it up
through the RPC endpoint.
4. Enter the amount, or click "Max".
5. Click "Review".
"Max" fills in a token's whole balance. For ETH it fills in the balance minus
the network fee that the confirmation screen will reserve, so enter the
recipient first. A message says why when there is nothing to fill in.
An amount must be a number above zero, written as digits with at most one
decimal point. ETH has 18 decimal places. A token has as many as it declares, up
to 18. Digits beyond them must be zeros.
An ENS name is refused when it has no address recorded on Ethereum. A name whose
owner serves its address from a web server instead is refused too. Enter the
address instead.
### The confirmation screen
The screen shows:
- the type: a native ETH transfer or an ERC-20 token transfer;
- the token's contract address, for a token;
- the From and To addresses, each in full, with an identicon (a small pixel
picture made from the address) and an Etherscan link;
- the amount, with its USD value;
- your balance on this network;
- the network fee, the price the network charges to process the transaction. The
screen shows what the transfer is expected to cost, and under it the larger
amount reserved until the transaction confirms. The network refunds the
difference.
It warns when the recipient is:
- on the wallet's list of known scam addresses;
- a burn address, one nobody controls, where funds are destroyed;
- the address you are sending from;
- a contract rather than a person's address;
- an address that has never sent a transaction and holds no ETH;
- labelled as phishing, scam or exploiter on Etherscan, while "Check recipients
on Etherscan" is on. A lookup that fails shows no warning, so no warning does
not prove the address was checked. While the setting is off, a line says the
address was not checked.
It refuses to send, and says why, when:
- the amount is not a valid number;
- the amount is more than you hold;
- the amount plus the fee is more than your ETH;
- your ETH does not cover the fee of a token transfer;
- the fee could not be estimated;
- your balance could not be read.
Enter your password and click "Sign & Send". The wallet signs the transaction
and broadcasts it to the network. Before signing, it refuses when:
- the network was switched since you reviewed the send;
- the wallet shown no longer holds the From address;
- the fee or gas limit that the network quotes is above the wallet's limits,
which allow a total fee of at most 1 ETH. Gas is the unit Ethereum measures
work in, and the gas limit is the most gas the transaction may use;
- the token contract now reports a different number of decimals than the amount
was shown with.
### After sending
A waiting screen shows the transaction hash and a counter. The wallet asks the
network every 10 seconds for the receipt, the network's record that the
transaction was included in a block. The wait resumes if you close and reopen
the wallet. Then:
- a receipt opens the success screen, with the block number, the hash and
Etherscan links;
- no receipt after 60 seconds opens the error screen with a timeout message. A
timeout does not mean the transaction failed. It may still confirm; check the
hash on Etherscan;
- six failed lookups in a row open the error screen with a message saying the
network could not be reached. Check the Ethereum RPC setting.
### Sending a specific token
On a token's screen, "Send" opens the send screen with that token locked in.
What to send cannot be changed there.
## Receiving
1. Click "Receive" on the home screen, on an address's screen or on a token's
screen.
2. Show the QR code, or click "Copy address".
Give the address only to senders on the network you are using. AutistMask works
on Ethereum Mainnet and the Sepolia test network. Tokens sent to your address on
another network do not appear in AutistMask, and it cannot move them. Opened
from a token's screen, the Receive screen warns that this token sent on another
network is lost.
## Transaction history
Transaction history comes from Blockscout, so it needs "Use Blockscout". While
the setting is off, each history list shows one line saying so.
- The home screen lists up to 25 of the most recent transactions across all your
addresses.
- An address's screen lists up to 25 of its most recent transactions.
- A token's screen lists the token's transfers among those 25.
Each row shows:
- the age and the direction, "Sent" or "Received". A row for a call to a
contract shows the name of the call instead, such as "Approve", and a symbol
without an amount;
- the amount;
- the other party's address, in full. A swap row shows your own address here.
The scam filters below hide fake transfers and dust from these lists. Dust is a
tiny amount of ETH.
Tap a row to open the transaction. The transaction screen shows:
- the hash;
- the type: native ETH transfer, ERC-20 token transfer, swap, token approval,
contract call or contract creation;
- the status;
- the From and To addresses, in full;
- the time, as a date and time and as an age;
- the exact amount, and under it the amount in the token's smallest unit;
- the token's contract address, for a token transfer;
- these details from Blockscout:
- the block number;
- the nonce, the sender's sequence number for this transaction;
- the gas price, the gas used and the fee;
- what the transaction did, when the wallet can read it;
- the raw data, the bytes the transaction carried.
Tapping the hash, an address, the amount or a detail copies it. Each address,
hash and block has an Etherscan link.
## Connecting to web3 sites
AutistMask offers every page a standard wallet connection. It takes
`window.ethereum`, the name sites look for, when no other wallet has taken it.
Sites that list wallets can pick AutistMask by name. A site that wants your
wallet opens a connection request.
### Connection requests
The request shows the site's origin: its address up to the first slash, for
example `https://app.example`. The origin includes the scheme (`https`), the
host and the port. The request also shows the address that will be shared, which
is the active address. Click "Allow" or "Deny".
"Remember my choice for this site" starts ticked. The box stays as you last left
it. While it is ticked, the wallet keeps your answer, and the site is not asked
again. The answer applies to that exact origin and to the active address. A
choice remembered for `https://app.example` does not cover `http://app.example`
or another port of the same host. A choice remembered for one address does not
cover another.
Without "Remember", an allowed site stays connected until:
- the browser closes;
- you make another address active;
- you remove the site in Settings;
- you remove the address, or delete its wallet.
### Transaction requests
A connected site can ask you to send a transaction. The request opens in a
window of its own. The wallet first fills in the nonce from the network, and the
fee and gas limit too when the site gave none. If that fails, no window opens
and the site is told.
The window shows:
- the site's origin;
- what the transaction does, when the wallet can read it:
- a token transfer;
- a token approval, which lets a contract move your tokens;
- a swap, an exchange of one token for another, through the Uniswap
Universal Router, step by step;
- the From address and the contract or recipient, in full;
- the value in ETH and its USD value;
- the largest network fee the transaction can cost, with the gas limit and the
price per unit of gas;
- the network and the nonce;
- the raw data.
Enter your password and click "Confirm". The wallet signs exactly the
transaction shown, and checks the signed transaction against every value on the
screen before it broadcasts anything. What you read is what goes out, or nothing
does. "Reject" tells the site you refused.
One transaction request is open at a time, across all sites. While one is open,
the wallet refuses any other, and the site is asked to send it again later.
### Signature requests
A connected site can ask you to sign a message or typed data. The request opens
in a window of its own. The window shows:
- the site's origin;
- whether a message or typed data is to be signed;
- the From address;
- what will be signed.
A plain message is shown as text, left to right in the order it was written, so
right-to-left characters cannot reorder it. An invisible character, such as a
zero-width space, is shown as its code in a small box, for example `U+200B`. The
message is also shown as hex, that is as the hexadecimal digits of its bytes.
Typed data is shown as its fields. Fields that the site added but that are not
signed are listed apart, under "Not part of the signature". A token permission
is a `Permit` or a Permit2 permission. Permit2 is Uniswap's contract for token
allowances, that is for permissions to move tokens. For a token permission, a
red warning names the spender and each token and amount that the spender may
take.
"Sign" is disabled, and the screen says why, when:
- the typed data cannot be signed as shown;
- the typed data names a different network than the active one;
- a message is not hex.
A request made with the older `eth_sign` method shows a warning that names the
method. Enter your password and click "Sign" to sign. "Reject" tells the site
you refused.
### Network switch requests
A connected site can ask to switch the wallet's network. The window shows the
site's origin, the current network and the requested network. Nothing changes
until you click "Switch". Switching changes the network for the whole wallet and
for every site. "Reject", or closing the window, leaves everything as it was.
### Closed windows
If you close a transaction or signature window without answering, the request
stays open; the site is not told you refused. Click the AutistMask icon in the
toolbar to bring the request back. Until you answer, the icon opens the request
instead of the wallet. When several requests wait this way, the oldest comes
first. A closed connection or network switch window counts as a refusal.
### Phishing warnings
When the requesting site is on the built-in phishing list, every one of these
windows shows a red warning at the top before you decide.
### Managing sites
Settings lists the sites under three headings:
- Allowed Sites: allowed with "Remember my choice for this site";
- Connected Sites: allowed without it;
- Denied Sites: denied with it.
`[x]` beside an allowed or connected site disconnects the site. The site is told
it has no address. `[x]` beside a denied site forgets the refusal.
Making another address active disconnects every site allowed without "Remember",
and rejects every request still waiting for an answer. A site remembered for the
old address only is not told the new one.
## Scam protection
Address poisoning is a scam. The scammer gets an address that resembles one you
have dealt with into your history, hoping that you copy it later instead of the
real one. Five defenses against this and related scams are on in a new install.
Fake tokens. Scammers issue tokens from their own contracts under a well-known
symbol, such as `USDT` or `ETH`. The wallet knows which contracts may carry each
symbol on its bundled list. The balance list and the send screen hide a token
that carries one of those symbols from any other contract. `ETH` and the test
network's `SepoliaETH` belong to no contract at all, so every token that claims
them is hidden. In the history, the rule applies while "Hide fake tokens
impersonating a known symbol" is on. A token you track yourself is still listed
at zero while "Show tracked tokens with zero balance" is on.
Tokens with few holders. Real tokens have many holders; tokens made for address
poisoning have almost none. While "Hide tokens with fewer than 1,000 holders" is
on, the history and the send screen hide a token with fewer than 1,000 reported
holders. The balance list has its own rule: an untracked token appears only when
it is on the bundled list or has at least 1,000 reported holders. When
Blockscout reports no holder count for a token, the history and the send screen
still show it. While "Use Blockscout" is off, no holder count is known.
Fraud contracts. When the wallet detects a fake token transfer, it adds the
token's contract to a list that it keeps. While "Hide transactions from detected
fraud contracts" is on, the history hides transfers from the contracts on that
list. The send screen never offers those tokens. Turning "Hide fake tokens
impersonating a known symbol" off also stops new contracts being added to the
list.
Dust transactions. Scammers send tiny amounts of ETH from an address that
resembles one you have dealt with, so that the similar address lands in your
history. While "Hide dust transactions below N gwei" is on, ETH transfers below
the threshold are hidden from the history. A gwei is a billionth of an ETH. The
threshold starts at 100,000 gwei, which is 0.0001 ETH. A threshold of 0 hides
nothing.
Known scam addresses. The wallet ships a list of addresses used for fraud, for
phishing and for wallet drainers, contracts that empty a wallet once given
permission. Sending to one of them raises a warning on the confirmation screen,
and such an address cannot be tracked as a token. The list holds only addresses
involved in fraud; it is not a sanctions list.
Addresses and hashes are shown in full, because address poisoning relies on
shortened ones. The only shortened address is the label of a token with no known
symbol: the first 10 characters of its contract address and "…". That label
appears on the send screen, on the token screen, and on the confirmation and
result screens of a send.
The wallet also warns about phishing sites. The list of phishing domains is
built into the extension and checked in your browser, so nobody learns which
sites you visit. The list is as current as the AutistMask build you run.
## Networks
AutistMask works on Ethereum Mainnet, the real network, and on the Sepolia
Testnet, a network for testing whose ETH has no value. Switch between them under
Network in Settings. A connected site can also ask for a switch, which you
approve or reject.
Switching:
- restores the Ethereum RPC and Blockscout URLs you last used on that network,
or that network's defaults;
- shows the tokens tracked on that network;
- reloads every balance and history for the new network;
- tells every open site about the new network.
On Sepolia, a red `[TESTNET]` banner sits at the top of the wallet, and no USD
values are shown.
## Settings
Click the gear in the title bar.
- Wallets: your wallets. Tap a name to rename it. `[recovery phrase]` shows a
phrase wallet's recovery phrase, after your password. `[x]` deletes a wallet.
"+ Add wallet" adds one.
- Passwords: "Allow weak passwords" lets you choose a password shorter than 12
characters when you add a wallet.
- Tracked Tokens: the tokens tracked on the active network, each with `[x]`, and
"+ Add token".
- Display:
- "Show tracked tokens with zero balance";
- "UTC Timestamps"; otherwise times are shown in your local time;
- the theme: System, Light or Dark.
- Network: Ethereum Mainnet or Sepolia Testnet.
- Ethereum RPC: the RPC endpoint URL. "Save" checks that the URL answers for the
shown network before storing it.
- Blockscout API: the "Use Blockscout" checkbox and the Blockscout URL. "Save"
checks that the URL answers before storing it. That check sends no data of
yours and runs whether or not the checkbox is ticked.
- Etherscan: the "Check recipients on Etherscan" checkbox.
- Token Spam Protection: the four filters described under Scam protection, and
the dust threshold in gwei.
- Allowed Sites, Connected Sites, Denied Sites: see Managing sites.
- About:
- the project link;
- the license and the author;
- the version and the release date;
- the commit the build came from.
- Debug: hidden until you click the version ten times. It holds a checkbox that
turns on a red banner and more detailed logging in the browser console.
The URLs you save are remembered per network.
## If the wallet cannot read its saved data
When AutistMask cannot read what it stored, it shows a screen headed "Saved Data
Cannot Be Read" instead of the wallet. Nothing has been changed or erased, and
nothing can be signed or sent. Sites that ask the wallet for anything are told
that the saved data cannot be read.
Click "Export Saved Data" first. The stored data appears in a box on the screen,
and the browser offers it as a download when it allows one. Keep that copy. It
may hold the encrypted keys of your wallets, and it is the only copy.
"Erase Saved Data" deletes every wallet stored in this browser and starts the
wallet fresh. You must type `ERASE MY WALLET` first. With a kept recovery
phrase, private key or extended private key, you can add a wallet again
afterwards. Without that, or the exported copy, everything the wallet holds is
gone.
## Frequently asked questions
**Can I use AutistMask alongside another wallet?**
Yes. AutistMask computes addresses by the rule `m/44'/60'/0'/0`, so the same
recovery phrase gives the same addresses as any other wallet using that rule.
Two wallet extensions can be installed side by side. Only one of them can hold
`window.ethereum`; sites that list wallets can pick AutistMask by name.
**Can I use a hardware wallet?**
No. AutistMask does not support hardware wallets.
**Which networks are supported?**
Ethereum Mainnet and the Sepolia Testnet. No others.
**Where is my data stored?**
In your browser's extension storage. Recovery phrases and keys are encrypted
with your password. Addresses, balances and settings are stored unencrypted, so
the wallet can show them without a password. Nothing is sent to any server run
by AutistMask.
**What happens if I uninstall the extension?**
The browser deletes the extension's storage. Make sure you have your recovery
phrase, private key or extended private key before uninstalling. With that
backup you can restore the wallet in AutistMask or in any other wallet that uses
the rule `m/44'/60'/0'/0`.
**What happens when a transaction times out?**
After 60 seconds without a receipt the wallet shows the error screen. A timeout
does not mean the transaction failed. It may still confirm; check the hash on
Etherscan. Congestion or a low fee can delay confirmation past 60 seconds.
## License
GPL-3.0. See [`LICENSE`](../LICENSE).
## Author
[@sneak](https://sneak.berlin)