---
website: https://www.getmonero.org
repo: https://github.com/monero-project/monero
obj: concept
---

# Monero
Monero is a privacy-focused cryptocurrency that prioritizes anonymity and security in transactions. Launched in April 2014, Monero (XMR) has gained popularity for its commitment to providing private and untraceable transactions on a blockchain.

## Features
### 1. **Privacy and Fungibility**
Monero employs advanced cryptographic techniques, including ring signatures and stealth addresses, to ensure that transactions are private and unlinkable. This focus on privacy enhances fungibility, as all units of Monero are considered equal and indistinguishable.
### 2. **Ring Signatures**
Monero uses ring signatures to mix a user's transaction with others, making it difficult to determine the actual sender. This ensures that the true origin of funds remains confidential.
### 3. **Stealth Addresses**
Stealth addresses generate a one-time address for each transaction, making it virtually impossible to trace funds back to the recipient. This feature enhances the privacy of the receiver.
### 4. **Ring Confidential Transactions (RingCT)**
RingCT further improves privacy by concealing transaction amounts. This is achieved by allowing users to prove the validity of their transaction without revealing the exact amount involved.
### 5. **Dynamic Block Size and Fees**
Monero dynamically adjusts block size and fees based on network demand, ensuring scalability and preventing congestion.

## Daemon
`monerod` connects to the Monero Network and acts as a node.

### Configuration
By default Monero looks for `bitmonero.conf` in Monero data directory.

To use a specific config file add `--config-file` option: `./monerod --config-file=/etc/monerod.conf`

```
# ~/.bitmonero/bitmonero.conf
#
# Configuration file for monerod. For all available options see the MoneroDocs:
# https://docs.getmonero.org/interacting/monerod-reference/

# Data directory (blockchain db and indices)
data-dir=~/.bitmonero   # Blockchain storage location

# Optional pruning
#prune-blockchain=1           # Pruning saves 2/3 of disk space w/o degrading functionality but contributes less to the network
#sync-pruned-blocks=1         # Allow downloading pruned blocks instead of prunning them yourself

# Centralized services
check-updates=disabled         # Do not check DNS TXT records for a new version
enable-dns-blocklist=1         # Block known malicious nodes

# Banlist
#ban-list=/path/to/ban.txt      # Local list of peers to ban

# Log file
log-file=~/.bitmonero
log-level=0                    # Minimal logs, WILL NOT log peers or wallets connecting


# P2P full node
#p2p-bind-ip=0.0.0.0            # Bind to all interfaces (the default)
#p2p-bind-port=18080            # Bind to default port
#no-igd=1                       # Disable UPnP port mapping

# RPC open node
#public-node=1                  # Advertise to other users they can use this node for connecting their wallets
rpc-restricted-bind-ip=0.0.0.0 # Bind to all interfaces (the Open Node)
rpc-restricted-bind-port=18089 # Bind to a new RESTRICTED port (the Open Node)

# RPC TLS
rpc-ssl=autodetect             # Use TLS if client wallet supports it; [enabled|disabled|(default)autodetect]

# ZMQ
#zmq-rpc-bind-ip=127.0.0.1      # Default 127.0.0.1
#zmq-rpc-bind-port=18082        # Default 18082
zmq-pub=tcp://127.0.0.1:18083  # ZMQ pub
#no-zmq=1                       # Disable ZMQ RPC server

# Mempool size
max-txpool-weight=2684354560   # Maximum unconfirmed transactions pool size in bytes (here ~2.5GB, default ~618MB)

# Database sync mode
#db-sync-mode=safe:sync        # Slow but reliable db writes

# Network limits
out-peers=12              # Default 12
in-peers=48               # The default is unlimited; we prefer to put a cap on this

limit-rate-up=1048576     # 1048576 kB/s == 1GB/s; a raise from default 2048 kB/s; contribute more to p2p network
limit-rate-down=1048576   # 1048576 kB/s == 1GB/s; a raise from default 8192 kB/s; allow for faster initial sync

# Tor/I2P: broadcast transactions originating from connected wallets over Tor/I2P (does not concern relayed transactions)
#tx-proxy=i2p,127.0.0.1:4447,12,disable_noise  # I2P
#tx-proxy=tor,127.0.0.1:9050,12,disable_noise  # Tor

# Tor/I2P: tell monerod your onion address so it can be advertised on P2P network
#anonymous-inbound=PASTE_YOUR_I2P_HOSTNAME,127.0.0.1:18085,24         # I2P
#anonymous-inbound=PASTE_YOUR_ONION_HOSTNAME:18084,127.0.0.1:18084,24 # Tor

# Tor: be forgiving to connecting wallets
disable-rpc-ban=1
```

### i2p
Monero should be used via [i2p](../internet/I2P.md) in order to combat networking attacks.

First setup two b32 addresses:

```ini
[monero-node]
type = server
host = 127.0.0.1
# Anonymous inbound port
port = 18085
inport = 0
keys = monero-mainnet.dat

[monero-rpc]
type = server
host = 127.0.0.1
# Restricted RPC port
port = 18089
keys = monero-mainnet.dat
```

Then set these in the config:

```
anonymous-inbound=yourlongb32i2paddress.b32.i2p,127.0.0.1:18085
tx-proxy=i2p,127.0.0.1:4447,disable_noise
```

## monero-cli-wallet
`monero-wallet-cli` is the wallet software shipped in the Monero archives. It is a console program, and manages an account.

Generate new wallet:
```shell
monero-wallet-cli --generate-new-wallet <file>
```

Use existing wallet:
```shell
monero-wallet-cli --wallet-file <file> --password-file <passwd>
```

### Commands
| Command                                       | Description                                                  |
| --------------------------------------------- | ------------------------------------------------------------ |
| `wallet_info`                                 | Show wallet main address and other info                      |
| `balance`                                     | Show balance                                                 |
| `address all`                                 | Show all addresses                                           |
| `address new [<label>]`                       | Create new subaddress                                        |
| `transfer <address> <amount>`                 | Send XMR to an address                                       |
| `show_transfers [in/out/pending/failed/pool]` | Show transactions                                            |
| `sweep_all <address>`                         | Send whole balance to another wallet                         |
| `seed`                                        | Show secret 25 words that can be used to recover this wallet |
| `refresh`                                     | Synchronize wallet with the Monero network                   |
| `status`                                      | Check current status of wallet                               |

## Applications
- [Monero GUI](../applications/finance/Monero%20GUI.md) - Official Monero GUI
- [Feather Wallet](../applications/finance/Feather%20Wallet.md) - Open source wallet

## Sites accepting Monero
[List of supported sites](https://monerica.com/)

| Site                                  | Description |
| ------------------------------------- | ----------- |
| [Mullvad VPN](https://mullvad.net/de) | VPN         | 
