Merge pull request #45 from nahuhh/relative

build: fix relative links build errors
This commit is contained in:
nahuhh 2024-09-20 20:22:36 +00:00 committed by GitHub
commit e785977728
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 67 additions and 67 deletions

View file

@ -12,4 +12,4 @@ This is for businesses that want to accept Monero in an automated way, including
We prepared a comparison of available venues to accept Monero, as of 2019-01-28:
[<img src="/images/sheets-icon.png" width="20px" height="20px" style="margin-bottom: -4px;" /> Accepting Monero as a Business - Comparison Matrix](/r/accepting-monero-comparison-matrix)
[<img src="/images/sheets-icon.png" width="20px" height="20px" style="margin-bottom: -4px;" /> Accepting Monero as a Business - Comparison Matrix](../../r/accepting-monero-comparison-matrix.md)

View file

@ -35,7 +35,7 @@ The `P` comes from this:
P = xG
Where `G` is the [edwards25519](/cryptography/asymmetric/edwards25519) base point.
Where `G` is the [edwards25519](../../cryptography/asymmetric/edwards25519.md) base point.
Substitute `P` with `xG` and we get:

View file

@ -6,7 +6,7 @@ title: Private Keys in Monero
!!! note
Author is nowhere close to being a cryptographer. Be sceptical on accuracy.
In Monero, the root private key is generated [randomly](/cryptography/prng). Other private keys are derived deterministically from the root private key.
In Monero, the root private key is generated [randomly](../../cryptography/prng.md). Other private keys are derived deterministically from the root private key.
Private key must be kept secret.
@ -31,7 +31,7 @@ See this [this guide](https://blog.cloudflare.com/a-relatively-easy-to-understan
### Key strength
Before deriving the public key, private key is subject to modulo `l`,
where `l` is the maximum scalar allowed by the [edwards25519 curve](/cryptography/asymmetric/edwards25519).
where `l` is the maximum scalar allowed by the [edwards25519 curve](../../cryptography/asymmetric/edwards25519.md).
The `l` is on the order of 2^252, so the effective key strength is technically 252 bits, not 256 bits.
This is standard for EC cryptography and is more of a cosmetic nuance than any concern.

View file

@ -6,7 +6,7 @@ title: Public Keys in Monero
!!! note
Author is nowhere close to being a cryptographer. Be sceptical on accuracy.
Public key is deterministically derived from private key based on [edwards25519 curve](/cryptography/asymmetric/edwards25519) with a little Monero-specific twist.
Public key is deterministically derived from private key based on [edwards25519 curve](../../cryptography/asymmetric/edwards25519.md) with a little Monero-specific twist.
Public key is meant to be shared. Assuming correct implementation, it is not practically possible to recover private key from public key.
@ -23,7 +23,7 @@ Say:
* P is a public key
* x is a private key
* G is a "base point"; this is simply a constant specific to [edwards25519](/cryptography/asymmetric/edwards25519); this point lies on the elliptic curve
* G is a "base point"; this is simply a constant specific to [edwards25519](../../cryptography/asymmetric/edwards25519.md); this point lies on the elliptic curve
Then:
@ -39,5 +39,5 @@ For example, G + G is another point on the curve.
## Use cases
[Monero address](/public-address/standard-address) is composed of public spend key and public view key.
[Monero address](../../public-address/standard-address.md) is composed of public spend key and public view key.
These keys are used to build stealth addresses to receive payments.

View file

@ -16,7 +16,7 @@ CLI is a commandline desktop wallet.
If you need more guidance check [download Monero](https://getmonero.org/downloads) section on Monero website.
It is critical to [verify the signature](/interacting/verify-monero-binaries) of downloaded archive.
It is critical to [verify the signature](../interacting/verify-monero-binaries.md) of downloaded archive.
## Which version to download?

View file

@ -42,9 +42,9 @@ Go to directory where you unpacked Monero.
| Option | Description
|---------------------|--------------------------------------------------------------------------------------------------------------------------------------
| (missing) | By default `monero-blockchain-export` assumes [mainnet](/infrastructure/networks#mainnet).
| `--stagenet` | Export [stagenet](/infrastructure/networks#stagenet) blockchain.
| `--testnet` | Export [testnet](/infrastructure/networks#testnet) blockchain.
| (missing) | By default `monero-blockchain-export` assumes [mainnet](../infrastructure/networks.md#mainnet).
| `--stagenet` | Export [stagenet](../infrastructure/networks.md#stagenet) blockchain.
| `--testnet` | Export [testnet](../infrastructure/networks.md#testnet) blockchain.
### Logging
@ -58,7 +58,7 @@ Specifying the log file path is not supported.
| Option | Description
|----------------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](/interacting/overview/#data-directory).
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](../interacting/overview.md#data-directory).
| `--database`, `--db-type` | The default and only valid value is `lmdb`.
### Output

View file

@ -13,7 +13,7 @@ The tool imports bootstrap file `blockchain.raw` to your full node.
This could be useful if you want to decouple download from verification for any reason (like testing performance in isolation).
In this case, you may download the `blockchain.raw` file from [https://downloads.getmonero.org/blockchain.raw](https://downloads.getmonero.org/blockchain.raw).
Ideally though, you should use your own trusted `blockchain.raw` file that you [exported](/interacting/monero-blockchain-export-reference) earlier.
Ideally though, you should use your own trusted `blockchain.raw` file that you [exported](../interacting/monero-blockchain-export-reference.md) earlier.
Please note that importing `blockchain.raw` will **not** speed up the process over syncing up from p2p network.
This is because usual bottlenecks are disk IO and verification, not the download.
@ -47,9 +47,9 @@ Go to directory where you unpacked Monero.
| Option | Description
|---------------------|--------------------------------------------------------------------------------------------------------------------------------------
| (missing) | By default `monero-blockchain-import` assumes the [mainnet](/infrastructure/networks#mainnet) blockchain.
| `--stagenet` | Import [stagenet](/infrastructure/networks#stagenet) blockchain.
| `--testnet` | Import [testnet](/infrastructure/networks#testnet) blockchain.
| (missing) | By default `monero-blockchain-import` assumes the [mainnet](../infrastructure/networks.md#mainnet) blockchain.
| `--stagenet` | Import [stagenet](../infrastructure/networks.md#stagenet) blockchain.
| `--testnet` | Import [testnet](../infrastructure/networks.md#testnet) blockchain.
### Logging
@ -71,7 +71,7 @@ Specifying the log file path is not supported.
| Option | Description
|---------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](/interacting/overview/#data-directory).
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](../interacting/overview.md#data-directory).
| `--count-blocks` | Count blocks in the bootstrap file and exit.
| `--drop-hard-fork` | Whether to drop hard fork data. Off by default (`0`).
| `--database` | The only valid value seems to be `lmdb` (the default).

View file

@ -5,7 +5,7 @@ title: Monero Configuration File
## Applicability
By default Monero looks for `bitmonero.conf` in Monero [data directory](/interacting/overview/#data-directory).
By default Monero looks for `bitmonero.conf` in Monero [data directory](../interacting/overview.md#data-directory).
To use a specific config file add `--config-file` option:
@ -29,9 +29,9 @@ The `--config-file` option is available for:
All configuration options are the same as command line options for the binary.
* [monerod reference](/interacting/monerod-reference)
* [monero-wallet-cli reference](/interacting/monero-wallet-cli-reference)
* [monero-wallet-rpc reference](/interacting/monero-wallet-rpc-reference)
* [monerod reference](../interacting/monerod-reference.md)
* [monero-wallet-cli reference](../interacting/monero-wallet-cli-reference.md)
* [monero-wallet-rpc reference](../interacting/monero-wallet-rpc-reference.md)
Skip the `--` from `--option-name`.
@ -51,41 +51,41 @@ translates to:
This config is tailored for production server usage.
# /etc/monero/monerod.conf
# Data directory (blockchain db and indices)
data-dir=/home/monero/.monero # Remember to create the monero user first
# Log file
log-file=/var/log/monero/monerod.log
max-log-file-size=0 # Prevent monerod from managing the log files; we want logrotate to take care of that
# P2P full node
p2p-bind-ip=0.0.0.0 # Bind to all interfaces (the default)
p2p-bind-port=18080 # Bind to default port
# RPC open node
rpc-bind-ip=0.0.0.0 # Bind to all interfaces
rpc-bind-port=18081 # Bind on default port
confirm-external-bind=1 # Open node (confirm)
restricted-rpc=1 # Prevent unsafe RPC calls
no-igd=1 # Disable UPnP port mapping
# Slow but reliable db writes
db-sync-mode=safe
# Emergency checkpoints set by MoneroPulse operators will be enforced to workaround potential consensus bugs
# Check https://monerodocs.org/infrastructure/monero-pulse/ for explanation and trade-offs
enforce-dns-checkpointing=1
out-peers=64 # This will enable much faster sync and tx awareness; the default 8 is suboptimal nowadays
in-peers=1024 # 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
### `monero-wallet-cli.conf`
This config is tailored for desktop usage on [stagenet](/infrastructure/networks).
This config is tailored for desktop usage on [stagenet](../infrastructure/networks.md#stagenet).
# $HOME/.bitmonero/stagenet/monero-wallet-cli.conf
@ -98,5 +98,5 @@ This config is tailored for desktop usage on [stagenet](/infrastructure/networks
# Log file
log-file=/tmp/monero-wallet-cli.log
# wallet-file=/home/YOUR-USER/.bitmonero/stagenet/wallets/MoneroExampleStagenetWallet

View file

@ -6,7 +6,7 @@ title: monero-wallet-cli - Reference
!!! note
Get yourself comfortable with a friendly Monero CLI wallet.
It is the most reliable and most complete wallet for Monero.
Use [stagenet](/infrastructure/networks) for learning.
Use [stagenet](../infrastructure/networks.md#stagenet) for learning.
## Overview
@ -23,7 +23,7 @@ The CLI wallet is the most reliable and most feature complete wallet for Monero.
### Depends on the full node
Wallet connects to a [full node](/interacting/monerod-reference) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
Wallet connects to a [full node](../interacting/monerod-reference.md) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
The full node can be either local (same computer) or remote.
@ -69,9 +69,9 @@ In a separate terminal window, run the wallet:
| Option | Description
|------------------|------------------------------------------------------------------------------------------------
| (missing) | By default wallet assumes [mainnet](/infrastructure/networks).
| `--stagenet` | Run on [stagenet](/infrastructure/networks). Remember to run your daemon with `--stagenet` as well.
| `--testnet` | Run on [testnet](/infrastructure/networks). Remember to run your daemon with `--testnet` as well.
| (missing) | By default wallet assumes [mainnet](../infrastructure/networks.md).
| `--stagenet` | Run on [stagenet](../infrastructure/networks.md). Remember to run your daemon with `--stagenet` as well.
| `--testnet` | Run on [testnet](../infrastructure/networks.md). Remember to run your daemon with `--testnet` as well.
#### Logging
@ -84,7 +84,7 @@ In a separate terminal window, run the wallet:
#### Full node connection
Wallet depends on a full node for all non-local operations. The following options define how to connect to [`monerod`](/interacting/monerod-reference):
Wallet depends on a full node for all non-local operations. The following options define how to connect to [`monerod`](../interacting/monerod-reference.md):
| Option | Description
|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------
@ -133,7 +133,7 @@ Wallet depends on a full node for all non-local operations. The following option
| Option | Description
|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--config-file <arg>` | Full path to the [configuration file](/interacting/monero-config-file). Note this should be a separate config than `monerod` uses because these tools accept different set of options.
| `--config-file <arg>` | Full path to the [configuration file](../interacting/monero-config-file.md). Note this should be a separate config than `monerod` uses because these tools accept different set of options.
#### Performance

View file

@ -16,7 +16,7 @@ However, wallet does not store the blockchain and does not directly participate
### Depends on the full node
Wallet connects to a [full node](/interacting/monerod-reference) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
Wallet connects to a [full node](../interacting/monerod-reference.md) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
The full node can be either local (same computer) or remote.

View file

@ -8,7 +8,7 @@ title: monero-wallet-rpc - Reference
This is only relevant for programmers. Everyday users won't need `monero-wallet-rpc`.
!!! note
Use [stagenet](/infrastructure/networks) for learning and development on top of `monero-wallet-rpc`.
Use [stagenet](../infrastructure/networks.md) for learning and development on top of `monero-wallet-rpc`.
## RPC Command library
@ -31,11 +31,11 @@ However, wallet does not store the blockchain and does not directly participate
### Depends on the full node
Wallet connects to a [full node](/interacting/monerod-reference) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
Wallet connects to a [full node](../interacting/monerod-reference.md) to scan the blockchain for your transaction outputs and to send your transactions out to the network.
The full node can be either local (same computer) or remote.
You can play with [CLI wallet](/interacting/monero-wallet-cli-reference) and [GUI wallet](/interacting/monero-wallet-gui-reference) first to understand the relationship between the full node, the wallet and the user.
You can play with [CLI wallet](../interacting/monero-wallet-cli-reference.md) and [GUI wallet](../interacting/monero-wallet-gui-reference.md) first to understand the relationship between the full node, the wallet and the user.
## Syntax

View file

@ -36,7 +36,7 @@ Their names follow the `command_name` pattern.
Go to directory where you unpacked Monero.
The [stagenet](/infrastructure/networks) is what you should be using for learning and experimentation.
The [stagenet](../infrastructure/networks.md#stagenet) is what you should be using for learning and experimentation.
```
./monerod --stagenet --detach # run as a daemon in background
@ -44,7 +44,7 @@ tail -f ~/.bitmonero/stagenet/bitmonero.log # watch the logs
./monerod --stagenet exit # ask daemon to exit gracefully
```
The [mainnet](/infrastructure/networks) is when you want to deal with the real XMR.
The [mainnet](../infrastructure/networks.md#mainnet) is when you want to deal with the real XMR.
```
./monerod --detach # run as a daemon in background
@ -71,9 +71,9 @@ The following groups are only to make reference easier to follow. The daemon its
| Option | Description
|------------------|------------------------------------------------------------------------------------------------
| (missing) | By default monerod assumes [mainnet](/infrastructure/networks).
| `--stagenet` | Run on [stagenet](/infrastructure/networks). Remember to run your wallet with `--stagenet` as well.
| `--testnet` | Run on [testnet](/infrastructure/networks). Remember to run your wallet with `--testnet` as well.
| (missing) | By default monerod assumes [mainnet](../infrastructure/networks.md#mainnet).
| `--stagenet` | Run on [stagenet](../infrastructure/networks.md#stagenet). Remember to run your wallet with `--stagenet` as well.
| `--testnet` | Run on [testnet](../infrastructure/networks.md#testnet). Remember to run your wallet with `--testnet` as well.
#### Logging
@ -92,16 +92,16 @@ The following options will be helpful if you intend to have an always running no
| Option | Description
|---------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--config-file` | Full path to the [configuration file](/interacting/monero-config-file). By default `monerod` looks for `bitmonero.conf` in Monero [data directory](/interacting/overview/#data-directory).
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](/interacting/overview/#data-directory).
| `--config-file` | Full path to the [configuration file](../interacting/monero-config-file.md). By default `monerod` looks for `bitmonero.conf` in Monero [data directory](../interacting/overview.md#data-directory).
| `--data-dir` | Full path to data directory. This is where the blockchain, log files, and p2p network memory are stored. For defaults and details see [data directory](../interacting/overview.md#data-directory).
| `--pidfile` | Full path to the PID file. Works only with `--detach`. Example: <br>`./monerod --detach --pidfile=/run/monero/monerod.pid`
| `--detach` | Go to background (decouple from the terminal). This is useful for long-running / server scenarios. Typically, you will also want to manage `monerod` daemon with systemd or similar. By default `monerod` runs in a foreground.
| `--non-interactive` | Do not require tty in a foreground mode. Helpful when running in a container. By default `monerod` runs in a foreground and opens stdin for reading. This breaks containerization because no tty gets assigned and `monerod` process crashes. You can make it run in a background with `--detach` but this is inconvenient in a containerized environment because the canonical usage is that the container waits on the main process to exist (forking makes things more complicated).
| `--no-zmq` | Disable ZMQ RPC server. You **should** use this option to limit attack surface and number of unnecessarily open ports (the ZMQ server is unfinished thing and you are unlikely to ever use it).
| `--no-igd` | Disable UPnP port mapping on the router ("Internet Gateway Device"). Add this option to improve security if you are **not** behind a NAT (you can bind directly to public IP or you run through Tor).
| `--max-txpool-weight` | Set maximum transactions pool size in bytes. By default 648000000 (~618MB). These are transactions pending for confirmations (not included in any block).
| `--enforce-dns-checkpointing` | The emergency checkpoints set by [MoneroPulse](/infrastructure/monero-pulse) operators will be enforced. It is probably a good idea to set enforcing for unattended nodes. <br><br>If encountered block hash does not match corresponding checkpoint, the local blockchain will be rolled back a few blocks, effectively blocking following what MoneroPulse operators consider invalid fork. The log entry will be produced: `ERROR` `Local blockchain failed to pass a checkpoint, rolling back!` Eventually, the alternative ("fixed") fork will get heavier and the node will follow it, leaving the "invalid" fork behind.<br><br>By default checkpointing only notifies about discrepancy by producing the following log entry: `ERROR` `WARNING: local blockchain failed to pass a MoneroPulse checkpoint, and you could be on a fork. You should either sync up from scratch, OR download a fresh blockchain bootstrap, OR enable checkpoint enforcing with the --enforce-dns-checkpointing command-line option`.<br><br>Reference: [source code](https://github.com/monero-project/monero/blob/22a6591a70151840381e327f1b41dc27cbdb2ee6/src/cryptonote_core/blockchain.cpp#L3614).
| `--disable-dns-checkpoints` | The [MoneroPulse](/infrastructure/monero-pulse) checkpoints set by core developers will be discarded. The checkpoints are apparently still fetched though.
| `--enforce-dns-checkpointing` | The emergency checkpoints set by [MoneroPulse](../infrastructure/monero-pulse.md) operators will be enforced. It is probably a good idea to set enforcing for unattended nodes. <br><br>If encountered block hash does not match corresponding checkpoint, the local blockchain will be rolled back a few blocks, effectively blocking following what MoneroPulse operators consider invalid fork. The log entry will be produced: `ERROR` `Local blockchain failed to pass a checkpoint, rolling back!` Eventually, the alternative ("fixed") fork will get heavier and the node will follow it, leaving the "invalid" fork behind.<br><br>By default checkpointing only notifies about discrepancy by producing the following log entry: `ERROR` `WARNING: local blockchain failed to pass a MoneroPulse checkpoint, and you could be on a fork. You should either sync up from scratch, OR download a fresh blockchain bootstrap, OR enable checkpoint enforcing with the --enforce-dns-checkpointing command-line option`.<br><br>Reference: [source code](https://github.com/monero-project/monero/blob/22a6591a70151840381e327f1b41dc27cbdb2ee6/src/cryptonote_core/blockchain.cpp#L3614).
| `--disable-dns-checkpoints` | The [MoneroPulse](../infrastructure/monero-pulse.md) checkpoints set by core developers will be discarded. The checkpoints are apparently still fetched though.
#### P2P network
@ -141,7 +141,7 @@ This is experimental. It may be best to start with this [guide](https://github.c
| Option | Description
|------------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--tx-proxy` | Send out your local transactions through SOCKS5 proxy (Tor or I2P). Format:<br>`<network-type>,<socks-ip:port>[,max_connections][,disable_noise]` <br><br>Example:<br>`./monerod --tx-proxy "tx-proxy=tor,127.0.0.1:9050,16"`<br><br>This was introduced to make publishing transactions over Tor easier (no need for torsocks) while allowing clearnet for blocks at the same time (while torsocks affected everything).<br><br>Adding `,disable_noise`: If the user disables "noise" (i.e. `--tx-proxy=tor,127.0.0.1:9050,disable_noise`), then the tx is "fluffed" to outbound Onion and I2P peers, and the receiving hidden service will immediately fluff the transaction to ipv4/6 peers. This will speed up tx broadcast. [more info](https://github.com/monero-project/monero/pull/6354#pullrequestreview-399554356)<br><br>Note that forwarded transactions (those not originating from the connected wallet(s)) will still be relayed over clearnet.<br>See this [guide](https://github.com/monero-project/monero/blob/master/docs/ANONYMITY_NETWORKS.md#p2p-commands) and [commit](https://github.com/monero-project/monero/pull/6021).
| `--anonymous-inbound` | Allow anonymous incoming connections to your onionized P2P interface. Format: <br>`<hidden-service-address>,<[bind-ip:]port>[,max_connections]`<br><br>Example:<br>`./monerod --anonymous-inbound "rveahdfho7wo4b2m.onion:18083,127.0.0.1:18083,100"`.<br><br>Obviously, You first need to setup the hidden service in your Tor config. See the [guide](https://github.com/monero-project/monero/blob/master/ANONYMITY_NETWORKS.md#p2p-commands).
| `--anonymous-inbound` | Allow anonymous incoming connections to your onionized P2P interface. Format: <br>`<hidden-service-address>,<[bind-ip:]port>[,max_connections]`<br><br>Example:<br>`./monerod --anonymous-inbound "rveahdfho7wo4b2m.onion:18083,127.0.0.1:18083,100"`.<br><br>Obviously, you first need to setup the hidden service in your Tor config. See the [guide](https://github.com/monero-project/monero/blob/master/ANONYMITY_NETWORKS.md#p2p-commands).
| `--pad-transactions` | Pad relayed transactions to next 1024 bytes to help defend against traffic volume analysis. This only makes sense if you are behind Tor or I2P. See [commit](https://github.com/monero-project/monero/pull/4787).
| `--proxy` | Network communication through proxy. Works with any service that supports SOCKS4, including Tor, i2p, and commercial VPN/proxy services. SOCKS5 support is anticipated in the future. Enabling this setting sends all traffic through this proxy. Can be used in conjunction with `--tx-proxy`, in which case transaction broadcasts originating from the connected wallet(s) will be sent through Tor or i2p as specified in `--tx-proxy`, and all other traffic will be sent through the SOCKS proxy. Format:<br>`<socks-ip:port>`
@ -218,7 +218,7 @@ These are advanced options that allow you to optimize performance of your `moner
The following options configure **solo mining** using **CPU** with the standard software stack `monerod`. This is mostly useful for:
* generating your [stagenet](/infrastructure/networks#stagenet) or [testnet](/infrastructure/networks#testnet) coins
* generating your [stagenet](../infrastructure/networks.md#stagenet) or [testnet](../infrastructure/networks.md#testnet) coins
* experimentation and learning
* if you have access to vast CPU resources
@ -226,7 +226,7 @@ Be advised though that real mining happens **in pools** like p2pool, and with de
| Option | Description
|------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------
| `--start-mining` | Specify wallet address to mining for. **This must be a [standard address](/public-address/standard-address)!** It can be neither a subaddres nor integrated address.
| `--start-mining` | Specify wallet address to mining for. **This must be a [standard address](../public-address/standard-address.md)!** It can be neither a subaddres nor integrated address.
| `--mining-threads` | Specify mining threads count. By default ony one thread will be used. For best results, set it to number of your physical cores.
| `--extra-messages-file` | Specify file for extra messages to include into coinbase transactions.
| `--bg-mining-enable` | Enable unobtrusive mining. In this mode mining will use a small percentage of your system resources to never noticeably slow down your computer. This is intended to encourage people to mine to improve decentralization. That being said chances of finding a block are diminishingly small with solo CPU mining, and even lesser with its unobtrusive version. You can tweak the unobtrusivness / power trade-offs with the further `--bg-*` options below.
@ -328,7 +328,7 @@ You can also type commands directly in the console of the running `monerod` (if
| `print_bc <begin_height> [<end_height>]` | Show blocks in range `<begin_height>`..`<end_height>`. The information will include block id, height, timestamp, version, size, weight, number of non-coinbase transactions, difficulty, nonce, and reward.
| `print_block <block_hash> | <block_height>` | Show detailed data of specified block.
| `hard_fork_info` | Show current consensus version and future hard fork block height, if any.
| `is_key_image_spent <key_image>` | Check if specified [key image](/cryptography/asymmetric/key-image/) is spent. Key image is a hash.
| `is_key_image_spent <key_image>` | Check if specified [key image](../cryptography/asymmetric/key-image.md) is spent. Key image is a hash.
#### Manage daemon

View file

@ -52,13 +52,13 @@ extras/monero-blockchain-depth
| Executable | Description
| -------------------------- |:-----------------------------------------------------------------------------------------------------------------------------------
| `monerod` | The full node daemon. Does not require a wallet. <br />[Documentation](/interacting/monerod-reference/).
| `monerod` | The full node daemon. Does not require a wallet. <br />[Documentation](../interacting/monerod-reference.md).
| `monero-wallet-gui` | Wallet logic and __graphical__ user interface. <br />Requires `monerod` running.
| `monero-wallet-cli` | Wallet logic and __commandline__ user interface. <br />Requires `monerod` running.
| `monero-wallet-rpc` | Wallet logic and __HTTP API__ (JSON-RPC protocol). <br />Requires `monerod` running.
| `monero-blockchain-prune` | Prune existing local blockchain. This saves 2/3 of disk space (down to 31GB as of Jan 2021). This is preferable over `monerod --prune-blockchain` which only logically releases space inside the file while the file remains large. The `monero-blockchain-prune` creates a shrinked copy of the blockchain file. See [tutorial1](https://monero.stackexchange.com/questions/11454/how-do-i-utilize-blockchain-pruning-in-the-gui-monero-wallet-gui), [tutorial2](https://www.publish0x.com/solareclipse/howto-prune-shrink-the-database-of-the-monero-blockchain-on-xpgwjx).
| `monero-gen-ssl-cert` | Generate 4096 bit RSA private key and self signed TLS certificate for use with `monerod` RPC interface. Note, Monero daemon automatically generates TLS certificate on each restart. Manual generation with this tool is only useful if you want to pin TLS certificate fingerprint in your monero wallet. See the [pull request](https://github.com/monero-project/monero/pull/5495).
| `monero-gen-trusted-multisig` | Tool to generate a set of multisig wallets. <br />See chapter on [multisignatures](/multisignature).
| `monero-gen-trusted-multisig` | Tool to generate a set of multisig wallets. <br />See chapter on [multisignatures](../multisignature.md).
| `monero-blockchain-export` | Tool to export blockchain to `blockchain.raw` file.
| `monero-blockchain-import` | Tool to import [blockchain.raw](https://downloads.getmonero.org/blockchain.raw) - ideally your own trusted copy.

View file

@ -48,7 +48,7 @@ By this step we checked that published hashes were not tampered with.
The last step is to compare published hash with downloaded archive SHA-256 hash.
[Download Monero](/interacting/download-monero-binaries) if you didn't already (but do not unpack).
[Download Monero](../interacting/download-monero-binaries.md) if you didn't already (but do not unpack).
Replace the example file name with actual one:

View file

@ -21,7 +21,7 @@ Efficient CryptoNight ASIC was developed in 2017 by Bitmain.
Monero inherited CryptoNight as its proof of work in 2014.
Since then Monero slightly evolved the algorithm to intentionally break compatibility with released ASIC-s. Three used variants existed: Cryptonightv1, Cryptonightv2 and [Cryptonight-R](https://github.com/SChernykh/CryptonightR).
**Monero no longer uses CryptoNight or any variant. Monero changed its mining algorithm to [RandomX](/proof-of-work/random-x) in November 2019.**
**Monero no longer uses CryptoNight or any variant. Monero changed its mining algorithm to [RandomX](../proof-of-work/random-x.md) in November 2019.**
## The goal is to find small-enough hash
@ -143,7 +143,7 @@ See the [rationale](https://github.com/monero-project/monero/pull/5126) and the
## Critique
* CryptoNight hash is relatively expensive to verify. This poses a risk of DoS-ing nodes with incorrect proofs to process. See [strong asymmetry](/proof-of-work/what-is-pow/#strong-asymmetry) requirement.
* CryptoNight hash is relatively expensive to verify. This poses a risk of DoS-ing nodes with incorrect proofs to process. See [strong asymmetry](../proof-of-work/what-is-pow.md#strong-asymmetry) requirement.
* The hash function was designed from scratch with limited peer review. While CryptoNight is composed of proven and peer-reviewed primitives, combining secure primitives doesn't necessarily result in a secure cryptosystem.
* CryptoNight ultimately failed to prevent ASIC-s.
* Complexity of CryptoNight kills competition in ASIC manufacturing.

View file

@ -25,7 +25,7 @@ Index | Size in bytes | Description
65 | 8 | compact payment ID - 8 bytes randomly generated by the recipient; note that it does not need encryption in the address itself but it is hidden in a transaction paying to integrated address to prevent linking payment with the address by external observers
73 | 4 | checksum ([Keccak-f[1600] hash](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L261) of the previous 73 bytes, trimmed to first [4](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L53) bytes)
It totals to 77 bytes. The bytes are then encoded ([src](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L240)) in [Monero specific Base58](/cryptography/base58) format, resulting in a 106 chars long string. Example integrated address:
It totals to 77 bytes. The bytes are then encoded ([src](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L240)) in [Monero specific Base58](../cryptography/base58.md) format, resulting in a 106 chars long string. Example integrated address:
`4LL9oSLmtpccfufTMvppY6JwXNouMBzSkbLYfpAV5Usx3skxNgYeYTRj5UzqtReoS44qo9mtmXCqY45DJ852K5Jv2bYXZKKQePHES9khPK`
@ -33,7 +33,7 @@ It totals to 77 bytes. The bytes are then encoded ([src](https://github.com/mone
Both types allow you to learn for what you are being paid.
**Individuals** should prefer **subaddresses** to receive payments. This is to improve privacy in certain scenarios. See article on [subaddresses](/public-address/subaddress) for details.
**Individuals** should prefer **subaddresses** to receive payments. This is to improve privacy in certain scenarios. See article on [subaddresses](../public-address/subaddress.md) for details.
**Businesses** accepting payments in an automated way should prefer **integrated addresses**. The rationale is as follows:

View file

@ -45,7 +45,7 @@ Index | Size in bytes | Description
33 | 32 | public view key
65 | 4 | checksum ([Keccak-f[1600] hash](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L261) of the previous 65 bytes, trimmed to first [4](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L53) bytes)
It totals to 69 bytes. The bytes are then encoded ([src](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L240)) in [Monero specific Base58](/cryptography/base58) format, resulting in a 95 chars long string. Example standard address:
It totals to 69 bytes. The bytes are then encoded ([src](https://github.com/monero-project/monero/blob/8f1f43163a221153403a46902d026e3b72f1b3e3/src/common/base58.cpp#L240)) in [Monero specific Base58](../cryptography/base58.md) format, resulting in a 95 chars long string. Example standard address:
`4AdUndXHHZ6cfufTMvppY6JwXNouMBzSkbLYfpAV5Usx3skxNgYeYTRj5UzqtReoS44qo9mtmXCqY45DJ852K5Jv2684Rge`

View file

@ -53,7 +53,7 @@ Index | Size in bytes | Description
------------|------------------|-------------------------------------------------------------
0 | 1 | identifies the network and address type; [42](https://github.com/monero-project/monero/blob/31bdf7bd113c2576fe579ef3a25a2d8fef419ffc/src/cryptonote_config.h#L171) - mainnet; [36](https://github.com/monero-project/monero/blob/31bdf7bd113c2576fe579ef3a25a2d8fef419ffc/src/cryptonote_config.h#L200) - stagenet; [63](https://github.com/monero-project/monero/blob/31bdf7bd113c2576fe579ef3a25a2d8fef419ffc/src/cryptonote_config.h#L185) - testnet
Otherwise the data structure is the same as for the [standard address](/public-address/standard-address/#data-structure).
Otherwise the data structure is the same as for the [standard address](../public-address/standard-address.md#data-structure).
## Generating
@ -94,7 +94,7 @@ Where:
* `B` is standard address public spend key
* `m` is a per-subaddress scalar that is derived from the private spend key
* `G` is the "base point"; this is simply a constant specific to [edwards25519](/cryptography/asymmetric/edwards25519)
* `G` is the "base point"; this is simply a constant specific to [edwards25519](../cryptography/asymmetric/edwards25519.md)
### Public view key
@ -109,12 +109,12 @@ Where:
### Special case for (0, 0)
The subaddress #0 on the account #0 is the [standard address](/public-address/standard-address).
The subaddress #0 on the account #0 is the [standard address](../public-address/standard-address.md).
As standard address has different generation rules, this is simply implemented via an `if` statement.
### Building the address string
The procedure is the same as for the [standard address](/public-address/standard-address).
The procedure is the same as for the [standard address](../public-address/standard-address.md).
## Caveats