Electrum is a lightweight Bitcoin client, based on a client-server protocol.
- Encrypted wallet
- Deterministic key generation. If you lose your wallet, you can recover it from its passphrase.
- No blockchain download; the client requests that information from a server
- Private keys are not shared with the server.
- Firewall friendly: The client does not need to open a port, it simply polls the server for updates.
- No single point of failure: The server code is open source, anyone can run a server.
- Python. Very compact code, easy to contribute.