# spesmilo/electrum

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/spesmilo-electrum).**

8,501 stars · 3,447 forks · Python · MIT

## Links

- GitHub: https://github.com/spesmilo/electrum
- Homepage: https://electrum.org
- awesome-repositories: https://awesome-repositories.com/repository/spesmilo-electrum.md

## Topics

`bitcoin` `bitcoin-wallet` `electrum` `lightning` `lightning-network` `python`

## Description

Electrum is an open-source, non-custodial Bitcoin wallet client that manages keys, transactions, and balances using Simplified Payment Verification (SPV) for lightweight transaction verification without downloading the full blockchain. It operates through a persistent background daemon that exposes a JSON-RPC interface for wallet operations and automation, and generates wallet keys from a mnemonic seed phrase using hierarchical deterministic key derivation.

The wallet distinguishes itself through support for cold storage security with offline transaction signing on air-gapped devices, integrated Lightning Network payments with submarine swaps and watchtower setup, multisignature wallets requiring multiple private keys for authorization, and full Tor network routing to hide the user's IP address and transaction metadata. Hardware wallet integration is handled through a plugin system that installs dependencies and configures system rules, while release signatures can be verified against the developer's GPG public key.

Electrum also provides merchant payment processing by generating signed payment requests served via an SSL-secured daemon, supports forked coin splitting to access balances on separate chains, and enables wallet creation and restoration including multisignature and watching-only configurations. The wallet manages sending, receiving, and tracking Bitcoin transactions, creates payment requests with fixed amounts and unique addresses, and allows programmatic control through its command-line interface and daemon for scripting and automation.

## Tags

### Security & Cryptography

- [Bitcoin Wallet Management](https://awesome-repositories.com/f/security-cryptography/cryptocurrency-wallets/wallet-management-interfaces/bitcoin-wallet-management.md) — Manages Bitcoin wallets including creation, restoration, seed generation, and key management for secure fund control.
- [Wallet Balance Management](https://awesome-repositories.com/f/security-cryptography/cryptocurrency-wallets/wallet-management-interfaces/wallet-balance-management.md) — Displays Bitcoin wallet balances and transaction history for fund tracking. ([source](https://docs.electrum.org/_sources/index.rst.txt))
- [SPV Transaction Verification](https://awesome-repositories.com/f/security-cryptography/cryptographic-transaction-verifications/spv-transaction-verification.md) — Verifies Bitcoin transactions using SPV with block headers and Merkle proofs. ([source](https://docs.electrum.org/spv.html))
- [Deterministic Wallet Derivers](https://awesome-repositories.com/f/security-cryptography/deterministic-wallet-derivers.md) — Generates wallet keys from a mnemonic seed phrase using hierarchical deterministic key derivation.
- [Mnemonic Seed Generation](https://awesome-repositories.com/f/security-cryptography/mnemonic-seed-encoders/mnemonic-seed-generation.md) — Generates mnemonic seed phrases for Bitcoin wallet creation and recovery. ([source](https://docs.electrum.org/seedphrase.html))
- [Seed-Based Wallet Security](https://awesome-repositories.com/f/security-cryptography/mnemonic-seed-encoders/mnemonic-seed-generation/seed-based-wallet-security.md) — Secures wallet access and recovery using encrypted mnemonic seed phrases. ([source](https://docs.electrum.org/))
- [Bitcoin Payment Reception](https://awesome-repositories.com/f/security-cryptography/payment-address-generation/bitcoin-payment-reception.md) — Generates Bitcoin payment requests with addresses and amounts for receiving transfers. ([source](https://docs.electrum.org/_sources/index.rst.txt))
- [Cold Storage Wallet Creation](https://awesome-repositories.com/f/security-cryptography/private-wallet-management/cold-storage-monitoring/cold-storage-wallet-creation.md) — Creates offline wallets that keep private keys air-gapped and secure from remote theft. ([source](https://docs.electrum.org/coldstorage.html))
- [Cold Storage Wallets](https://awesome-repositories.com/f/security-cryptography/private-wallet-management/cold-storage-monitoring/cold-storage-wallets.md) — Creates and uses offline wallets with air-gapped transaction signing to protect private keys from network exposure.
- [Bitcoin Wallet Clients](https://awesome-repositories.com/f/security-cryptography/private-wallet-management/cryptocurrency-wallets/bitcoin-wallet-clients.md) — An open-source, non-custodial Bitcoin wallet that manages keys, transactions, and balances with SPV verification and hardware wallet support.
- [Wallet Creation and Restoration](https://awesome-repositories.com/f/security-cryptography/private-wallet-management/cryptocurrency-wallets/wallet-creation-and-restoration.md) — Provides wallet creation and restoration from seed phrases, including multisignature and watching-only configurations. ([source](https://docs.electrum.org/))
- [Offline Signing](https://awesome-repositories.com/f/security-cryptography/transaction-signing/offline-signing.md) — Signs transactions on air-gapped devices to protect private keys from network exposure. ([source](https://docs.electrum.org/coldstorage.html))
- [Transaction Signing and Broadcasting](https://awesome-repositories.com/f/security-cryptography/transaction-signing/transaction-signing-and-broadcasting.md) — Creates, signs, and broadcasts Bitcoin transactions with offline signing support. ([source](https://docs.electrum.org/))
- [Key Management](https://awesome-repositories.com/f/security-cryptography/wallet-integrations/key-management.md) — Manages private keys and seed phrases for Bitcoin wallet access and control. ([source](https://docs.electrum.org/cmdline.html))
- [Submarine Swaps](https://awesome-repositories.com/f/security-cryptography/atomic-swap-protocols/submarine-swaps.md) — Exchanges on-chain Bitcoin for Lightning Network funds through an atomic swap protocol that moves value between layers.
- [Wallet Task Automations](https://awesome-repositories.com/f/security-cryptography/cryptocurrency-wallets/wallet-management-interfaces/prepaid-wallet-administrations/wallet-task-automations.md) — Controls wallet operations programmatically through a daemon and command-line interface for scripting and automation. ([source](https://docs.electrum.org/))
- [Tor Routing](https://awesome-repositories.com/f/security-cryptography/network-infrastructure-security/web-network-security/network-security/network-routing-access-control/tor-gateways/tor-routing.md) — Forces all wallet network traffic through the Tor anonymity network to hide the user's IP address and metadata.
- [Tor-Anonymized Wallets](https://awesome-repositories.com/f/security-cryptography/network-infrastructure-security/web-network-security/network-security/network-routing-access-control/tor-gateways/tor-routing/tor-anonymized-wallets.md) — A Bitcoin wallet that routes all network traffic through Tor to hide the user's IP address and transaction metadata.
- [Multisig Wallets](https://awesome-repositories.com/f/security-cryptography/private-wallet-management/cryptocurrency-wallets/multisig-wallets.md) — A Bitcoin wallet that requires multiple private keys to authorize a transaction, supporting configurable signing thresholds.
- [Multisignature Wallet Creation](https://awesome-repositories.com/f/security-cryptography/transaction-authorization/multisignature-transaction-workflows/multisignature-wallet-creation.md) — Creates multisignature wallets requiring multiple keys to authorize transactions. ([source](https://docs.electrum.org/multisig.html))
- [Hardware](https://awesome-repositories.com/f/security-cryptography/wallet-integrations/hardware.md) — Loads hardware wallet support through a plugin system that installs dependencies and configures system rules.

### Data & Databases

- [Bitcoin Transaction Sending](https://awesome-repositories.com/f/data-databases/consensus-engines/bitcoin/transaction-broadcasting-tools/bitcoin-transaction-sending.md) — Transfers Bitcoin by constructing and broadcasting signed transactions from the wallet. ([source](https://docs.electrum.org/_sources/index.rst.txt))
- [Lightning Wallets](https://awesome-repositories.com/f/data-databases/data-pipeline-orchestration/data-engineering-pipelines/batched-data-loading/lightning-datamodule-loaders/lightning-wallets.md) — An integrated Lightning wallet that handles payment channels, watchtowers, and submarine swaps for off-chain Bitcoin transactions.
- [Objective Light Client Syncing](https://awesome-repositories.com/f/data-databases/light-client-synchronization/light-client-data-exchange/objective-light-client-syncing.md) — Verifies transactions by checking block headers and Merkle proofs without downloading the full blockchain.
- [Simplified Payment Verification](https://awesome-repositories.com/f/data-databases/transaction-verification-services/simplified-payment-verification.md) — Verifies Bitcoin transactions using Simplified Payment Verification with block headers and Merkle proofs without full blockchain download.

### Development Tools & Productivity

- [Bitcoin](https://awesome-repositories.com/f/development-tools-productivity/transaction-management/bitcoin.md) — Manages sending, receiving, and tracking Bitcoin transactions through a lightweight wallet. ([source](https://docs.electrum.org/))

### Networking & Communication

- [Lightning Network Wallets](https://awesome-repositories.com/f/networking-communication/payment-channel-networks/lightning-network-servers/lightning-network-wallets.md) — Handles Lightning Network transactions including watchtower setup, submarine swaps, and channel management.
- [Lightning Payment Management](https://awesome-repositories.com/f/networking-communication/payment-channel-networks/lightning-network-servers/lightning-payment-management.md) — Manages Lightning Network payments with watchtower and submarine swap support. ([source](https://docs.electrum.org/))
- [Anonymity Network Routing](https://awesome-repositories.com/f/networking-communication/traffic-routing/anonymity-network-routing.md) — Routes all wallet traffic through the Tor anonymity network to hide user identity. ([source](https://docs.electrum.org/tor.html))
- [Bitcoin Payment Processing](https://awesome-repositories.com/f/networking-communication/global-peer-to-peer-payments/cryptocurrency-payment-processing/bitcoin-payment-processing.md) — Generates signed payment requests and serves them via SSL-secured daemon for accepting Bitcoin payments on websites.
- [Website Payment Acceptance](https://awesome-repositories.com/f/networking-communication/global-peer-to-peer-payments/cryptocurrency-payment-processing/website-payment-acceptance.md) — Generates signed Bitcoin payment requests served via an SSL-secured daemon for merchants. ([source](https://docs.electrum.org/))
- [Submarine Swaps](https://awesome-repositories.com/f/networking-communication/lightning-network-apis/submarine-swaps.md) — Provides submarine swap functionality to move Bitcoin between on-chain and Lightning layers. ([source](https://docs.electrum.org/swapserver.html))

### Software Engineering & Architecture

- [JSON-RPC Wallet Daemons](https://awesome-repositories.com/f/software-engineering-architecture/daemonized-process-persistence/json-rpc-wallet-daemons.md) — Runs a persistent background daemon with a JSON-RPC interface for wallet operations and automation.

### Part of an Awesome List

- [Payment Request Creation](https://awesome-repositories.com/f/awesome-lists/data/payment-infrastructure/payment-invoices/payment-request-creation.md) — Creates Bitcoin invoices with fixed amounts and unique addresses for payment verification. ([source](https://docs.electrum.org/merchant.html))

### DevOps & Infrastructure

- [Watchtower Setup](https://awesome-repositories.com/f/devops-infrastructure/blockchain-node-operation/bitcoin-node-setup-scripts/watchtower-setup.md) — Configures watchtowers to monitor Lightning channels and respond to malicious closures. ([source](https://docs.electrum.org/watchtower.html))
