diff --git a/docs/private-networks/concepts/node-sync-private.md b/docs/private-networks/concepts/node-sync-private.md index 169456484a1..6ea0ef330dd 100644 --- a/docs/private-networks/concepts/node-sync-private.md +++ b/docs/private-networks/concepts/node-sync-private.md @@ -24,9 +24,9 @@ Select the sync mode based on your network's requirements and node purposes. | Sync mode | Description | Requirements | Limitations | |--------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------|-------------| -| [Snap](../../public-networks/concepts/node-sync.md#snap-synchronization) | Recommended for fastest sync and lowest storage requirements on Mainnet. Downloads as many leaves of the trie as possible and reconstructs the trie locally. Faster than fast sync. | Available as an _early access feature_ in Besu version 24.7.1 or later | Cannot switch from fast sync to snap sync mid-process. | +| [Snap](../../public-networks/concepts/node-sync.md#snap-synchronization) | Recommended for fastest sync and lowest storage requirements on Mainnet. Downloads as many leaves of the trie as possible and reconstructs the trie locally. Faster than fast sync. | Besu version 24.3.0 or later | Cannot switch from fast sync to snap sync mid-process. | | [Checkpoint](../../public-networks/concepts/node-sync.md#checkpoint-synchronization) | Syncs from a specific checkpoint block configured in the genesis file. Fastest sync mode with lowest storage requirements. | Besu version 22.4.3 or later | Not supported for QBFT or IBFT 2.0 networks without a checkpoint configuration. | -| [Fast](../../public-networks/concepts/node-sync.md#fast-synchronization) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Not supported with private transactions. | +| [Fast](../../public-networks/concepts/node-sync.md#fast-synchronization-deprecated) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Deprecated. Not supported with private transactions. | | [Full](../../public-networks/concepts/node-sync.md#full-synchronization) | Default for all private networks. Downloads and verifies the entire blockchain and state from genesis block, building an archive node with full state history. | None | Slowest sync mode, requires the most disk space. | :::warning Early access feature diff --git a/docs/private-networks/concepts/permissioning/onchain.md b/docs/private-networks/concepts/permissioning/onchain.md index 9c67dcc9cee..129d56d2c42 100644 --- a/docs/private-networks/concepts/permissioning/onchain.md +++ b/docs/private-networks/concepts/permissioning/onchain.md @@ -48,7 +48,7 @@ Permissioning implements three allowlists: Account permissioning is incompatible with [random key signing](../../how-to/use-privacy/sign-pmts.md) for [privacy marker transactions](../privacy/private-transactions/processing.md). -If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) command line option and the corresponding public key included in the accounts allowlist. +If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) command line option and the corresponding public key included in the accounts allowlist. ::: diff --git a/docs/private-networks/concepts/privacy/private-transactions/index.md b/docs/private-networks/concepts/privacy/private-transactions/index.md index e817e3920f7..e01dc7fdaee 100644 --- a/docs/private-networks/concepts/privacy/private-transactions/index.md +++ b/docs/private-networks/concepts/privacy/private-transactions/index.md @@ -72,7 +72,7 @@ The following private transaction flow illustrates when nonce validation occurs: 1. Submit a private transaction with a [nonce value](#private-transaction-nonce). 1. The private transaction is distributed to all participants in the privacy group. -1. The PMT is created and submitted to the transaction pool with a nonce of `0` if using one-time accounts. If using a specific account with [`--privacy-marker-transaction-signing-key-file`](../../../reference/cli/options.md#privacy-marker-transaction-signing-key-file), the public nonce for that account is obtained and used for the PMT. +1. The PMT is created and submitted to the transaction pool with a nonce of `0` if using one-time accounts. If using a specific account with [`--privacy-marker-transaction-signing-key-file`](../../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated), the public nonce for that account is obtained and used for the PMT. 1. The PMT is mined and included in the block. 1. After the block containing the PMT is imported, and the PMT is processed, the private transaction is retrieved from the private transaction manager and executed. diff --git a/docs/private-networks/get-started/start-node.md b/docs/private-networks/get-started/start-node.md index 48ee42032a2..83da5cfce70 100644 --- a/docs/private-networks/get-started/start-node.md +++ b/docs/private-networks/get-started/start-node.md @@ -107,7 +107,7 @@ You might need to set [`--tx-pool-limit-by-account-percentage`](../../public-net :::note Sync nodes for BFT -If you're running a node on a [QBFT](../how-to/configure/consensus/qbft.md) or [IBFT 2.0](../how-to/configure/consensus/ibft.md) network, your node must use [fast sync](../../public-networks/concepts/node-sync.md#fast-synchronization) or [full sync](../../public-networks/concepts/node-sync.md#full-synchronization). +If you're running a node on a [QBFT](../how-to/configure/consensus/qbft.md) or [IBFT 2.0](../how-to/configure/consensus/ibft.md) network, your node must use [fast sync](../../public-networks/concepts/node-sync.md#fast-synchronization-deprecated) or [full sync](../../public-networks/concepts/node-sync.md#full-synchronization). Full sync is set by default. diff --git a/docs/private-networks/how-to/configure/tls/client-and-server.md b/docs/private-networks/how-to/configure/tls/client-and-server.md index a6cee37b354..055e22b5ff0 100644 --- a/docs/private-networks/how-to/configure/tls/client-and-server.md +++ b/docs/private-networks/how-to/configure/tls/client-and-server.md @@ -120,10 +120,10 @@ besu --privacy-tls-enabled --privacy-tls-keystore-file=/Users/me/my_node/keystor The command line: -- Enables TLS with the server using the [`--privacy-tls-enabled`](../../../reference/cli/options.md#privacy-tls-enabled) option. -- Specifies the keystore using the [`--privacy-tls-keystore-file`](../../../reference/cli/options.md#privacy-tls-keystore-file) option. -- Specifies the file that contains the password to decrypt the keystore using the [`--privacy-tls-keystore-password-file`](../../../reference/cli/options.md#privacy-tls-keystore-password-file) option. -- Specifies the trusted servers using the [`--privacy-tls-known-enclave-file`](../../../reference/cli/options.md#privacy-tls-known-enclave-file) option. +- Enables TLS with the server using the [`--privacy-tls-enabled`](../../../reference/cli/options.md#privacy-tls-enabled-deprecated) option. +- Specifies the keystore using the [`--privacy-tls-keystore-file`](../../../reference/cli/options.md#privacy-tls-keystore-file-deprecated) option. +- Specifies the file that contains the password to decrypt the keystore using the [`--privacy-tls-keystore-password-file`](../../../reference/cli/options.md#privacy-tls-keystore-password-file-deprecated) option. +- Specifies the trusted servers using the [`--privacy-tls-known-enclave-file`](../../../reference/cli/options.md#privacy-tls-known-enclave-file-deprecated) option. diff --git a/docs/private-networks/how-to/use-permissioning/local.md b/docs/private-networks/how-to/use-permissioning/local.md index 53544af8770..2ae41d67873 100644 --- a/docs/private-networks/how-to/use-permissioning/local.md +++ b/docs/private-networks/how-to/use-permissioning/local.md @@ -100,7 +100,7 @@ Account allowlisting is at the node level. That is, each node in the network has Account permissioning is incompatible with [random key signing](../use-privacy/sign-pmts.md) for [privacy marker transactions](../../concepts/privacy/private-transactions/processing.md). -If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) command line option and the corresponding public key included in the accounts allowlist. +If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) command line option and the corresponding public key included in the accounts allowlist. ::: diff --git a/docs/private-networks/how-to/use-permissioning/onchain.md b/docs/private-networks/how-to/use-permissioning/onchain.md index 054062f9043..83421e21982 100644 --- a/docs/private-networks/how-to/use-permissioning/onchain.md +++ b/docs/private-networks/how-to/use-permissioning/onchain.md @@ -50,7 +50,7 @@ If you change your network configuration, you may need to update the node allowl ## Specify the permissioning contract interface version -Use the [`--permissions-nodes-contract-version`](../../reference/cli/options.md#permissions-nodes-contract-version) command line option to specify the version of the [permissioning contract interface](../../concepts/permissioning/onchain.md#permissioning-contracts). The default is 1. +Use the [`--permissions-nodes-contract-version`](../../reference/cli/options.md#permissions-nodes-contract-version-deprecated) command line option to specify the version of the [permissioning contract interface](../../concepts/permissioning/onchain.md#permissioning-contracts). The default is 1. Specify the contract interface version that maps to the version of the [Enterprise Ethereum Alliance Client Specification](https://entethalliance.org/technical-specifications/) the contract interface implements. diff --git a/docs/private-networks/how-to/use-privacy/flexible.md b/docs/private-networks/how-to/use-privacy/flexible.md index c787822e9da..f645327db5e 100644 --- a/docs/private-networks/how-to/use-privacy/flexible.md +++ b/docs/private-networks/how-to/use-privacy/flexible.md @@ -34,7 +34,7 @@ We don't recommend creating flexible privacy groups in a chain with existing [of ## Enable flexible privacy groups -Use the [`--privacy-flexible-groups-enabled`](../../reference/cli/options.md#privacy-flexible-groups-enabled) command line option to enable [flexible privacy groups](../../concepts/privacy/flexible-privacy.md). When flexible privacy groups are enabled, the [`priv_createPrivacyGroup`](../../reference/api/index.md#priv_createprivacygroup), [`priv_deletePrivacyGroup`](../../reference/api/index.md#priv_deleteprivacygroup), and [`priv_findPrivacyGroup`](../../reference/api/index.md#priv_findprivacygroup) methods for [offchain privacy groups](../../concepts/privacy/privacy-groups.md) are disabled. +Use the [`--privacy-flexible-groups-enabled`](../../reference/cli/options.md#privacy-flexible-groups-enabled-deprecated) command line option to enable [flexible privacy groups](../../concepts/privacy/flexible-privacy.md). When flexible privacy groups are enabled, the [`priv_createPrivacyGroup`](../../reference/api/index.md#priv_createprivacygroup), [`priv_deletePrivacyGroup`](../../reference/api/index.md#priv_deleteprivacygroup), and [`priv_findPrivacyGroup`](../../reference/api/index.md#priv_findprivacygroup) methods for [offchain privacy groups](../../concepts/privacy/privacy-groups.md) are disabled. ## Simple flexible privacy group example diff --git a/docs/private-networks/how-to/use-privacy/performance-best-practices.md b/docs/private-networks/how-to/use-privacy/performance-best-practices.md index 55e7df8377f..f59d0a6c401 100644 --- a/docs/private-networks/how-to/use-privacy/performance-best-practices.md +++ b/docs/private-networks/how-to/use-privacy/performance-best-practices.md @@ -50,7 +50,7 @@ For performance and reliability it is advantageous to manage nonces in a statefu ### Use random senders for privacy marker transactions -To avoid public nonce management, privacy marker transactions can be sent using a [random account per transaction](../../../private-networks/reference/cli/options.md#privacy-marker-transaction-signing-key-file). This option is only available for zero gas networks. +To avoid public nonce management, privacy marker transactions can be sent using a [random account per transaction](../../../private-networks/reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated). This option is only available for zero gas networks. ### Avoid queuing transactions in Tessera diff --git a/docs/private-networks/how-to/use-privacy/sign-pmts.md b/docs/private-networks/how-to/use-privacy/sign-pmts.md index 9dbe134446c..9b77418cd64 100644 --- a/docs/private-networks/how-to/use-privacy/sign-pmts.md +++ b/docs/private-networks/how-to/use-privacy/sign-pmts.md @@ -14,7 +14,7 @@ Tessera-based privacy is deprecated in Besu version 24.11.0 and later. Please re ::: -You can sign privacy marker transactions (PMTs) with either a random key or a specified key. To sign privacy marker transactions with a specified private key, use [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) when starting Besu. +You can sign privacy marker transactions (PMTs) with either a random key or a specified key. To sign privacy marker transactions with a specified private key, use [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) when starting Besu. :::note @@ -24,13 +24,13 @@ The private key file can be the same file used by [`--node-private-key-file`](#n In networks where you pay gas, you must specify a key and the associated account must contain adequate funds. -In [free gas networks](../configure/free-gas.md), to provide further anonymity by signing each privacy marker transaction with a different random key, exclude the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) command line option when starting Besu. +In [free gas networks](../configure/free-gas.md), to provide further anonymity by signing each privacy marker transaction with a different random key, exclude the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) command line option when starting Besu. :::caution "Using account permissioning and privacy" You can't use [account permissioning] with random key signing. -If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) command line option and the corresponding public key included in the accounts allowlist. +If using account permissioning and privacy, a signing key must be specified using the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) command line option and the corresponding public key included in the accounts allowlist. ::: diff --git a/docs/private-networks/reference/api/index.md b/docs/private-networks/reference/api/index.md index 7fcfe81d988..acfcd3d98c5 100644 --- a/docs/private-networks/reference/api/index.md +++ b/docs/private-networks/reference/api/index.md @@ -1809,7 +1809,7 @@ curl -X POST --data '{"jsonrpc": "2.0","method": "priv_getLogs","params":["vGy/T ### `priv_getPrivacyPrecompileAddress` -Returns the address of the [privacy precompiled contract](../../concepts/privacy/private-transactions/processing.md). The address is derived and based on the value of the [`privacy-flexible-groups-enabled`](../cli/options.md#privacy-flexible-groups-enabled) option. +Returns the address of the [privacy precompiled contract](../../concepts/privacy/private-transactions/processing.md). The address is derived and based on the value of the [`privacy-flexible-groups-enabled`](../cli/options.md#privacy-flexible-groups-enabled-deprecated) option. #### Parameters diff --git a/docs/private-networks/reference/cli/options.md b/docs/private-networks/reference/cli/options.md index f04a9b77f9f..12b178328cb 100644 --- a/docs/private-networks/reference/cli/options.md +++ b/docs/private-networks/reference/cli/options.md @@ -141,7 +141,7 @@ permissions-accounts-config-file-enabled=true Enables or disables file-based account level permissions. The default is `false`. -### `permissions-accounts-contract-address` +### `permissions-accounts-contract-address` (Deprecated) @@ -181,7 +181,7 @@ permissions-accounts-contract-address="xyz" The contract address for [onchain account permissioning](../../concepts/permissioning/onchain.md). -### `permissions-accounts-contract-enabled` +### `permissions-accounts-contract-enabled` (Deprecated) @@ -221,6 +221,12 @@ permissions-accounts-contract-enabled=true Enables or disables contract-based [onchain account permissioning](../../concepts/permissioning/onchain.md). The default is `false`. +:::caution + +Onchain permissioning is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options. + +::: + ### `permissions-nodes-config-file` @@ -307,7 +313,7 @@ permissions-nodes-config-file-enabled=true Enables or disables file-based node level permissions. The default is `false`. -### `permissions-nodes-contract-address` +### `permissions-nodes-contract-address` (Deprecated) @@ -347,7 +353,7 @@ permissions-nodes-contract-address="xyz" The contract address for [onchain node permissioning](../../concepts/permissioning/onchain.md). -### `permissions-nodes-contract-enabled` +### `permissions-nodes-contract-enabled` (Deprecated) @@ -387,7 +393,13 @@ permissions-nodes-contract-enabled=true Enables or disables contract-based [onchain node permissioning](../../concepts/permissioning/onchain.md). The default is `false`. -### `permissions-nodes-contract-version` +:::caution + +Onchain permissioning is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options. + +::: + +### `permissions-nodes-contract-version` (Deprecated) @@ -475,7 +487,7 @@ For proof-of-stake and proof-of-work networks, see [`--block-txs-selection-max-time`](../../../public-networks/reference/cli/options.md#block-txs-selection-max-time). ::: -### `privacy-enabled` +### `privacy-enabled` (Deprecated) @@ -515,13 +527,19 @@ privacy-enabled=false Enables or disables [private transactions](../../concepts/privacy/index.md). The default is `false`. +:::caution + +Tessera-based privacy is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options. + +::: + :::important Using private transactions with [pruning](../../../public-networks/concepts/data-storage-formats.md) or [fast sync](../../../public-networks/reference/cli/options.md#sync-mode) is not supported. ::: -### `privacy-marker-transaction-signing-key-file` +### `privacy-marker-transaction-signing-key-file` (Deprecated) @@ -574,7 +592,7 @@ You must specify this option if you're using: If you do not specify this option (for example, in a free gas network), Besu signs each transaction with a different randomly generated key. -### `privacy-multi-tenancy-enabled` +### `privacy-multi-tenancy-enabled` (Deprecated) @@ -614,7 +632,7 @@ privacy-multi-tenancy-enabled=false Enables or disables [multi-tenancy](../../concepts/privacy/multi-tenancy.md) for private transactions. The default is `false`. -### `privacy-flexible-groups-enabled` +### `privacy-flexible-groups-enabled` (Deprecated) @@ -656,7 +674,7 @@ Enables or disables [flexible privacy groups](../../concepts/privacy/flexible-pr Deprecated syntax for this option is `--privacy-onchain-groups-enabled`. -### `privacy-public-key-file` +### `privacy-public-key-file` (Deprecated) @@ -698,11 +716,11 @@ The [public key of the Tessera node](https://docs.tessera.consensys.net/). :::important -You cannot specify `privacy-public-key-file` when [`--privacy-multi-tenancy-enabled`](#privacy-multi-tenancy-enabled) is `true` +You cannot specify `privacy-public-key-file` when [`--privacy-multi-tenancy-enabled`](#privacy-multi-tenancy-enabled-deprecated) is `true` ::: -### `privacy-tls-enabled` +### `privacy-tls-enabled` (Deprecated) @@ -742,7 +760,7 @@ privacy-tls-enabled=false Enables or disables [TLS on communication with the private transaction manager]. The default is false. -### `privacy-tls-keystore-file` +### `privacy-tls-keystore-file` (Deprecated) @@ -782,9 +800,9 @@ privacy-tls-keystore-file="/home/me/me_node/key" The keystore file (in PKCS #12 format) containing the private key and the certificate presented during authentication. -You must specify `privacy-tls-keystore-file` if [`--privacy-tls-enabled`](#privacy-tls-enabled) is `true`. +You must specify `privacy-tls-keystore-file` if [`--privacy-tls-enabled`](#privacy-tls-enabled-deprecated) is `true`. -### `privacy-tls-keystore-password-file` +### `privacy-tls-keystore-password-file` (Deprecated) @@ -824,7 +842,7 @@ privacy-tls-keystore-password-file="/home/me/me_node/password" The path to the file containing the password to decrypt the keystore. -### `privacy-tls-known-enclave-file` +### `privacy-tls-known-enclave-file` (Deprecated) @@ -864,7 +882,7 @@ privacy-tls-known-enclave-file="/home/me/me_node/knownEnclave" The path to the file containing the hostnames, ports, and SHA256 certificate fingerprints of the [authorized privacy enclave](../../how-to/configure/tls/client-and-server.md#create-the-known-servers-file). -### `privacy-url` +### `privacy-url` (Deprecated) diff --git a/docs/private-networks/tutorials/privacy/index.md b/docs/private-networks/tutorials/privacy/index.md index 2977d778415..871011924ca 100644 --- a/docs/private-networks/tutorials/privacy/index.md +++ b/docs/private-networks/tutorials/privacy/index.md @@ -363,14 +363,14 @@ besu --data-path=data --genesis-file=..\genesis.json --rpc-http-enabled --rpc-ht The command line specifies privacy options: -- [`--privacy-enabled`](../../reference/cli/options.md#privacy-enabled) enables privacy. -- [`--privacy-url`](../../reference/cli/options.md#privacy-url) specifies the Q2T server address of the Tessera node (`Q2T` in `tessera.conf`). -- [`--privacy-public-key-file`](../../reference/cli/options.md#privacy-public-key-file) specifies the file containing Tessera node public key (created in [3. Generate Tessera Keys](#2-generate-tessera-keys)). +- [`--privacy-enabled`](../../reference/cli/options.md#privacy-enabled-deprecated) enables privacy. +- [`--privacy-url`](../../reference/cli/options.md#privacy-url-deprecated) specifies the Q2T server address of the Tessera node (`Q2T` in `tessera.conf`). +- [`--privacy-public-key-file`](../../reference/cli/options.md#privacy-public-key-file-deprecated) specifies the file containing Tessera node public key (created in [3. Generate Tessera Keys](#2-generate-tessera-keys)). - [`--rpc-http-api`](../../../public-networks/reference/cli/options.md#rpc-http-api) includes `EEA` and `PRIV` in the list of JSON-RPC APIs to enable privacy JSON-RPC API methods. :::note -Use the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file) command line option to sign [privacy marker transactions](../../concepts/privacy/private-transactions/processing.md) using a supplied key. The command line option is mandatory in privacy-enabled paid gas networks. +Use the [`--privacy-marker-transaction-signing-key-file`](../../reference/cli/options.md#privacy-marker-transaction-signing-key-file-deprecated) command line option to sign [privacy marker transactions](../../concepts/privacy/private-transactions/processing.md) using a supplied key. The command line option is mandatory in privacy-enabled paid gas networks. ::: diff --git a/docs/private-networks/tutorials/privacy/multi-tenancy.md b/docs/private-networks/tutorials/privacy/multi-tenancy.md index 4afb36dccf0..200c93eaca1 100644 --- a/docs/private-networks/tutorials/privacy/multi-tenancy.md +++ b/docs/private-networks/tutorials/privacy/multi-tenancy.md @@ -156,9 +156,9 @@ The command line specifies privacy options: - [`--rpc-http-authentication-enabled`](../../../public-networks/reference/cli/options.md#rpc-http-authentication-enabled) enables authentication for JSON-RPC APIs. - [`--rpc-http-authentication-jwt-public-key-file`](../../../public-networks/reference/cli/options.md#rpc-http-authentication-jwt-public-key-file) specifies the Operator's [public key file](#1-generate-a-private-and-public-key-pair). Used to authenticate the [tenant JWTs](#6-generate-the-tenant-jwts). -- [`--privacy-enabled`](../../reference/cli/options.md#privacy-enabled) enables privacy. -- [`--privacy-url`](../../reference/cli/options.md#privacy-url) specifies the [Quorum to Tessera (Q2T)] server address of the Tessera node (`Q2T` in `tessera.conf`). -- [`--privacy-multi-tenancy-enabled`](../../reference/cli/options.md#privacy-multi-tenancy-enabled) enables multi-tenancy. +- [`--privacy-enabled`](../../reference/cli/options.md#privacy-enabled-deprecated) enables privacy. +- [`--privacy-url`](../../reference/cli/options.md#privacy-url-deprecated) specifies the [Quorum to Tessera (Q2T)] server address of the Tessera node (`Q2T` in `tessera.conf`). +- [`--privacy-multi-tenancy-enabled`](../../reference/cli/options.md#privacy-multi-tenancy-enabled-deprecated) enables multi-tenancy. :::note diff --git a/docs/public-networks/concepts/data-storage-formats.md b/docs/public-networks/concepts/data-storage-formats.md index a45b0759100..1f3e88fd12d 100644 --- a/docs/public-networks/concepts/data-storage-formats.md +++ b/docs/public-networks/concepts/data-storage-formats.md @@ -80,7 +80,7 @@ Using `--bonsai-historical-block-limit` doesn't affect the size of the database ### Syncing nodes -The following table shows the ways you can sync a [full node](node-sync.md#full-nodes) with the different data storage formats using [fast](node-sync.md#fast-synchronization) and [snap](node-sync.md#snap-synchronization) sync. +The following table shows the ways you can sync a [full node](node-sync.md#full-nodes) with the different data storage formats using [fast](node-sync.md#fast-synchronization-deprecated) and [snap](node-sync.md#snap-synchronization) sync. | Data storage format | Sync mode | Storage estimate | Can other nodes sync to your node? | | --- | --- | --- | --- | diff --git a/docs/public-networks/concepts/node-sync.md b/docs/public-networks/concepts/node-sync.md index 8a532b4f375..3fcedd826eb 100644 --- a/docs/public-networks/concepts/node-sync.md +++ b/docs/public-networks/concepts/node-sync.md @@ -27,7 +27,7 @@ block). You can run a full node using [snap synchronization](#snap-synchronization), [checkpoint synchronization](#checkpoint-synchronization), or -[fast synchronization](#fast-synchronization). +[fast synchronization](#fast-synchronization-deprecated). ### Archive nodes @@ -53,7 +53,7 @@ The following is an overview of the public network sync modes: |-------------------------------------------|-------------|--------------|-------------| | [Snap](#snap-synchronization) | Efficient sync from genesis block, downloading as many trie leaves as possible and reconstructing locally. Faster than fast sync. | Besu version 22.4.0 or later | Cannot switch from fast sync to snap sync mid-process. | | [Checkpoint](#checkpoint-synchronization) | Syncs from a specific checkpoint block configured in the genesis file. Fastest sync mode with lowest storage requirements. | Besu version 22.4.3 or later | | -| [Fast](#fast-synchronization) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Might become impossible to fast sync Ethereum Mainnet in the future. | +| [Fast](#fast-synchronization-deprecated) | Downloads block headers and transaction receipts, verifies chain from genesis block. | None | Deprecated in Besu version 24.11.0 and later. | | [Full](#full-synchronization) | Downloads and verifies the entire blockchain and state from genesis block, building an archive node with full state history. | None | Slowest sync mode, requires the most disk space. | :::info Private network syncing @@ -136,12 +136,13 @@ You can restart Besu during a checkpoint sync in case of hardware or software pr resumes from the last valid world state and continues to download blocks starting from the last downloaded block. -### Fast synchronization +### Fast synchronization (Deprecated) :::caution -It might become impossible to sync Ethereum Mainnet using fast sync in the future. If you sync for -the first time or ever need to re-sync, update Besu to a version that supports newer sync methods. +Fast sync is deprecated in Besu version 24.11.0 and later. Please read this [blog post](https://www.lfdecentralizedtrust.org/blog/sunsetting-tessera-and-simplifying-hyperledger-besu) for more context on the rationale behind this decision as well as alternative options. + +If you sync for the first time or need to re-sync, update Besu to a version that supports newer sync methods. ::: diff --git a/docs/public-networks/get-started/start-node.md b/docs/public-networks/get-started/start-node.md index ab3f01a7180..9898fb253a5 100644 --- a/docs/public-networks/get-started/start-node.md +++ b/docs/public-networks/get-started/start-node.md @@ -40,14 +40,14 @@ To define a genesis configuration, create a genesis file (for example, `genesis. ## Syncing and storage -By default, Besu syncs to the current state of the blockchain using [fast sync](../concepts/node-sync.md#fast-synchronization) in: +By default, Besu syncs to the current state of the blockchain using [snap sync](../concepts/node-sync.md#snap-synchronization) in: - Networks specified using [`--network`](../reference/cli/options.md#network) except for the `dev` development network. - Ethereum Mainnet. We recommend using [snap sync](../concepts/node-sync.md#snap-synchronization) for a faster sync, by starting Besu with [`--sync-mode=SNAP`](../reference/cli/options.md#sync-mode). -By default, Besu stores data in the [Forest of Tries](../concepts/data-storage-formats.md#forest-of-tries) format. We recommend using [Bonsai Tries](../concepts/data-storage-formats.md#bonsai-tries) for lower storage requirements, by starting Besu with [`--data-storage-format=BONSAI`](../reference/cli/options.md#data-storage-format). +By default, Besu stores data in the [Bonsai Tries format](../concepts/data-storage-formats.md#bonsai-tries). ## Run a node for testing diff --git a/docs/public-networks/reference/cli/options.md b/docs/public-networks/reference/cli/options.md index 2f22326ab0a..e3fc246cbdf 100644 --- a/docs/public-networks/reference/cli/options.md +++ b/docs/public-networks/reference/cli/options.md @@ -5574,7 +5574,7 @@ sync-mode="SNAP" -The synchronization mode. Use `SNAP` for [snap sync](../../concepts/node-sync.md#snap-synchronization), `CHECKPOINT` for [checkpoint sync](../../concepts/node-sync.md#checkpoint-synchronization), `FAST` for [fast sync](../../concepts/node-sync.md#fast-synchronization), and `FULL` for [full sync](../../concepts/node-sync.md#full-synchronization). +The synchronization mode. Use `SNAP` for [snap sync](../../concepts/node-sync.md#snap-synchronization), `CHECKPOINT` for [checkpoint sync](../../concepts/node-sync.md#checkpoint-synchronization), `FAST` for [fast sync](../../concepts/node-sync.md#fast-synchronization-deprecated), and `FULL` for [full sync](../../concepts/node-sync.md#full-synchronization). - The default is `FULL` when connecting to a private network by not using the [`--network`](#network) option and specifying the [`--genesis-file`](#genesis-file) option. - The default is `SNAP` when using the [`--network`](#network) option with named networks, except for the `dev` development network. `SNAP` is also the default if running Besu on the default network (Ethereum Mainnet) by specifying neither [network](#network) nor [genesis file](#genesis-file). @@ -5582,7 +5582,7 @@ The synchronization mode. Use `SNAP` for [snap sync](../../concepts/node-sync.md :::note Notes - We recommend using snap sync over fast sync because snap sync can be faster by several days. -- It might become impossible to sync Mainnet using fast sync in the future, as clients drop support for fast sync. +- Fast sync is deprecated in Besu version 24.11.0 and later. We recommend updating Besu to a version that supports other sync methods. - When using a mode other than `FULL`, most historical world state data is unavailable. Any methods attempting to access unavailable world state data return `null`.