pub struct UtreexoNodeConfig {Show 13 fields
pub network: Network,
pub pow_fraud_proofs: bool,
pub compact_filters: bool,
pub fixed_peer: Option<String>,
pub max_banscore: u32,
pub datadir: String,
pub proxy: Option<SocketAddr>,
pub assume_utreexo: Option<AssumeUtreexoValue>,
pub backfill: bool,
pub filter_start_height: Option<i32>,
pub user_agent: String,
pub allow_v1_fallback: bool,
pub disable_dns_seeds: bool,
}Expand description
Configuration for the Utreexo node.
Fields§
§network: NetworkThe blockchain we are in, defaults to Bitcoin. Possible values are Bitcoin, Testnet, Regtest and Signet.
pow_fraud_proofs: boolWhether to use PoW fraud proofs. Defaults to false.
PoW fraud proof is a mechanism to skip the verification of the whole blockchain,
but while also giving a better security than simple SPV. Check out the documentation
in pow_fraud_proofs.md under the docs folder.
compact_filters: boolWhether to use compact filters. Defaults to false.
Compact filters are useful to rescan the blockchain for a specific address, without needing to download the whole chain. It will download ~1GB of filters, and then download the blocks that match the filters.
fixed_peer: Option<String>Fixed peers to connect to. Defaults to None.
If you want to connect to a specific peer, you can set this to a string with the
format ip:port. For example, localhost:8333.
max_banscore: u32Maximum ban score. Defaults to 100.
If a peer misbehaves, we increase its ban score. If the ban score reaches this value, we disconnect from the peer.
datadir: StringData directory for the node. Defaults to .floresta-node.
proxy: Option<SocketAddr>A SOCKS5 proxy to use. Defaults to None.
assume_utreexo: Option<AssumeUtreexoValue>If enabled, the node will assume that the provided Utreexo state is valid, and will start running from there
backfill: boolIf we assumeutreexo or pow_fraud_proof, we can skip the IBD and make our node usable faster, with the tradeoff of security. If this is enabled, we will still download the blocks in the background, and verify the final Utreexo state. So, the worse case scenario is that we are vulnerable to a fraud proof attack for a few hours, but we can spot it and react in a couple of hours at most, so the attack window is very small.
filter_start_height: Option<i32>If we are using network-provided block filters, we may not need to download the whole chain of filters, as our wallets may not have been created at the beginning of the chain. With this option, we can make a rough estimate of the block height we need to start and only download the filters from that height.
If the value is negative, it’s relative to the current tip. For example, if the current tip is at height 1000, and we set this value to -100, we will start downloading filters from height 900.
user_agent: StringThe user agent that we will advertise to our peers. Defaults to floresta:<version>.
allow_v1_fallback: boolWhether to allow fallback to v1 transport if v2 connection fails. Defaults to true.
disable_dns_seeds: boolWhether to disable DNS seeds. Defaults to false.
Trait Implementations§
Source§impl Clone for UtreexoNodeConfig
impl Clone for UtreexoNodeConfig
Source§fn clone(&self) -> UtreexoNodeConfig
fn clone(&self) -> UtreexoNodeConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more