## ## bitcoin.conf configuration file. ## Generated by contrib/devtools/gen-bitcoin-conf.sh. ## ## Lines beginning with # are comments. ## All possible configuration options are provided. To use, copy this file ## to your data directory (default or specified by -datadir), uncomment ## options you would like to change, and save the file. ## ### Options # Execute command when an alert is raised (%s in cmd is replaced by # message) #alertnotify= # For backwards compatibility, treat an unused bitcoin.conf file in the # datadir as a warning, not an error. #allowignoredconf=1 # If this block is in the chain assume that it and its ancestors are valid # and potentially skip their script verification (0 to verify all, # default: # 000000000000000000035c3f0d31e71a5ee24c5aaf3354689f65bd7b07dee632, # testnet: # 0000000000000021bc50a89cde4870d4a81ffe0153b3c8de77b435a2fd3f6761, # signet: # 0000004429ef154f7e00b4f6b46bfbe2d2678ecd351d95bbfca437ab9a5b84ec) #assumevalid= # Maintain an index of compact filters by block (default: 0, values: # basic). If is not supplied or if = 1, indexes for # all known types are enabled. #blockfilterindex= # Execute command when the best block changes (%s in cmd is replaced by # block hash) #blocknotify= # Extra transactions to keep in memory for compact block reconstructions # (default: 100) #blockreconstructionextratxn= # Specify directory to hold blocks subdirectory for *.dat files (default: # ) #blocksdir= # Whether to reject transactions from network peers. Automatic broadcast # and rebroadcast of any transactions from inbound peers is # disabled, unless the peer has the 'forcerelay' permission. RPC # transactions are not affected. (default: 0) #blocksonly=1 # Maintain coinstats index used by the gettxoutsetinfo RPC (default: 0) #coinstatsindex=1 # Specify path to read-only configuration file. Relative paths will be # prefixed by datadir location (only useable from command line, not # configuration file) (default: bitcoin.conf) #conf= # Run in the background as a daemon and accept commands (default: 0) #daemon=1 # Wait for initialization to be finished before exiting. This implies # -daemon (default: 0) #daemonwait=1 # Specify data directory #datadir= # Maximum database cache size MiB (4 to 16384, default: 450). In # addition, unused mempool memory is shared for this cache (see # -maxmempool). #dbcache= # Specify location of debug log file (default: debug.log). Relative paths # will be prefixed by a net-specific datadir location. Pass # -nodebuglogfile to disable writing the log to a file. #debuglogfile= # Specify additional configuration file, relative to the -datadir path # (only useable from configuration file, not command line) #includeconf= # Imports blocks from external file on startup #loadblock= # Keep the transaction memory pool below megabytes (default: 300) #maxmempool= # Keep at most unconnectable transactions in memory (default: 100) #maxorphantx= # Do not keep transactions in the mempool longer than hours (default: # 336) #mempoolexpiry= # Set the number of script verification threads (-4 to 15, 0 = auto, <0 = # leave that many cores free, default: 0) #par= # Whether to save the mempool on shutdown and load on restart (default: 1) #persistmempool=1 # Specify pid file. Relative paths will be prefixed by a net-specific # datadir location. (default: bitcoind.pid) #pid= # Reduce storage requirements by enabling pruning (deleting) of old # blocks. This allows the pruneblockchain RPC to be called to # delete specific blocks and enables automatic pruning of old # blocks if a target size in MiB is provided. This mode is # incompatible with -txindex. Warning: Reverting this setting # requires re-downloading the entire blockchain. (default: 0 = # disable pruning blocks, 1 = allow manual pruning via RPC, >=550 = # automatically prune block files to stay under the specified # target size in MiB) #prune= # Rebuild chain state and block index from the blk*.dat files on disk. # This will also rebuild active optional indexes. #reindex=1 # Rebuild chain state from the currently indexed blocks. When in pruning # mode or if blocks on disk might be corrupted, use full -reindex # instead. #reindex-chainstate=1 # Specify path to dynamic settings data file. Can be disabled with # -nosettings. File is written at runtime and not meant to be # edited by users (use bitcoin.conf instead for custom settings). # Relative paths will be prefixed by datadir location. (default: # settings.json) #settings= # Execute command immediately before beginning shutdown. The need for # shutdown may be urgent, so be careful not to delay it long (if # the command doesn't require interaction with the server, consider # having it fork into the background). #shutdownnotify= # Execute command on startup. #startupnotify= # Maintain a full transaction index, used by the getrawtransaction rpc # call (default: 0) #txindex=1 # Print version and exit #version=1 ### Connection options # Add a node to connect to and attempt to keep the connection open (see # the addnode RPC help for more info). This option can be specified # multiple times to add multiple nodes; connections are limited to # 8 at a time and are counted separately from the -maxconnections # limit. #addnode= # Specify asn mapping used for bucketing of the peers (default: # ip_asn.map). Relative paths will be prefixed by the net-specific # datadir location. #asmap= # Default duration (in seconds) of manually configured bans (default: # 86400) #bantime= # Bind to given address and always listen on it (default: 0.0.0.0). Use # [host]:port notation for IPv6. Append =onion to tag any incoming # connections to that address and port as incoming Tor connections # (default: 127.0.0.1:8334=onion, testnet: 127.0.0.1:18334=onion, # signet: 127.0.0.1:38334=onion, regtest: 127.0.0.1:18445=onion) #bind=[:][=onion] # If set, then this host is configured for CJDNS (connecting to fc00::/8 # addresses would lead us to the CJDNS network, see doc/cjdns.md) # (default: 0) #cjdnsreachable=1 # Connect only to the specified node; -noconnect disables automatic # connections (the rules for this peer are the same as for # -addnode). This option can be specified multiple times to connect # to multiple nodes. #connect= # Discover own IP addresses (default: 1 when listening and no -externalip # or -proxy) #discover=1 # Allow DNS lookups for -addnode, -seednode and -connect (default: 1) #dns=1 # Query for peer addresses via DNS lookup, if low on addresses (default: 1 # unless -connect used or -maxconnections=0) #dnsseed=1 # Specify your own public address #externalip= # Allow fixed seeds if DNS seeds don't provide peers (default: 1) #fixedseeds=1 # Always query for peer addresses via DNS lookup (default: 0) #forcednsseed=1 # Whether to accept inbound I2P connections (default: 1). Ignored if # -i2psam is not set. Listening for inbound I2P connections is done # through the SAM proxy, not by binding to a local address and # port. #i2pacceptincoming=1 # I2P SAM proxy to reach I2P peers and accept I2P connections (default: # none) #i2psam= # Accept connections from outside (default: 1 if no -proxy, -connect or # -maxconnections=0) #listen=1 # Automatically create Tor onion service (default: 1) #listenonion=1 # Maintain at most connections to peers (default: 125). This limit # does not apply to connections manually added via -addnode or the # addnode RPC, which have a separate limit of 8. #maxconnections= # Maximum per-connection receive buffer, *1000 bytes (default: 5000) #maxreceivebuffer= # Maximum per-connection send buffer, *1000 bytes (default: 1000) #maxsendbuffer= # Maximum allowed median peer time offset adjustment. Local perspective of # time may be influenced by outbound peers forward or backward by # this amount (default: 4200 seconds). #maxtimeadjustment=1 # Tries to keep outbound traffic under the given target per 24h. Limit # does not apply to peers with 'download' permission or blocks # created within past week. 0 = no limit (default: 0M). Optional # suffix units [k|K|m|M|g|G|t|T] (default: M). Lowercase is 1000 # base while uppercase is 1024 base #maxuploadtarget= # Enable all P2P network activity (default: 1). Can be changed by the # setnetworkactive RPC command #networkactive=1 # Use separate SOCKS5 proxy to reach peers via Tor onion services, set # -noonion to disable (default: -proxy) #onion= # Make automatic outbound connections only to network (ipv4, ipv6, # onion, i2p, cjdns). Inbound and manual connections are not # affected by this option. It can be specified multiple times to # allow multiple networks. #onlynet= # Serve compact block filters to peers per BIP 157 (default: 0) #peerblockfilters=1 # Support filtering of blocks and transaction with bloom filters (default: # 0) #peerbloomfilters=1 # Listen for connections on . Nodes not using the default ports # (default: 8333, testnet: 18333, signet: 38333, regtest: 18444) # are unlikely to get incoming connections. Not relevant for I2P # (see doc/i2p.md). #port= # Connect through SOCKS5 proxy, set -noproxy to disable (default: # disabled) #proxy= # Randomize credentials for every proxy connection. This enables Tor # stream isolation (default: 1) #proxyrandomize=1 # Connect to a node to retrieve peer addresses, and disconnect. This # option can be specified multiple times to connect to multiple # nodes. #seednode= # Specify socket connection timeout in milliseconds. If an initial attempt # to connect is unsuccessful after this amount of time, drop it # (minimum: 1, default: 5000) #timeout= # Tor control port to use if onion listening enabled (default: # 127.0.0.1:9051) #torcontrol=: # Tor control port password (default: empty) #torpassword= # Bind to the given address and add permission flags to the peers # connecting to it. Use [host]:port notation for IPv6. Allowed # permissions: bloomfilter (allow requesting BIP37 filtered blocks # and transactions), noban (do not ban for misbehavior; implies # download), forcerelay (relay transactions that are already in the # mempool; implies relay), relay (relay even in -blocksonly mode, # and unlimited transaction announcements), mempool (allow # requesting BIP35 mempool contents), download (allow getheaders # during IBD, no disconnect after maxuploadtarget limit), addr # (responses to GETADDR avoid hitting the cache and contain random # records with the most up-to-date info). Specify multiple # permissions separated by commas (default: # download,noban,mempool,relay). Can be specified multiple times. #whitebind=<[permissions@]addr> # Add permission flags to the peers connecting from the given IP address # (e.g. 1.2.3.4) or CIDR-notated network (e.g. 1.2.3.0/24). Uses # the same permissions as -whitebind. Can be specified multiple # times. #whitelist=<[permissions@]IP address or network> ### Debugging/Testing options # Output debug and trace logging (default: -nodebug, supplying # is optional). If is not supplied or if = 1, # output all debug and trace logging. can be: addrman, # bench, blockstorage, cmpctblock, coindb, estimatefee, http, i2p, # ipc, leveldb, libevent, mempool, mempoolrej, net, proxy, prune, # qt, rand, reindex, rpc, scan, selectcoins, tor, txreconciliation, # util, validation, walletdb, zmq. This option can be specified # multiple times to output multiple categories. #debug= # Exclude debug and trace logging for a category. Can be used in # conjunction with -debug=1 to output debug and trace logging for # all categories except the specified category. This option can be # specified multiple times to exclude multiple categories. #debugexclude= # Print help message with debugging options and exit #help-debug=1 # Include IP addresses in debug output (default: 0) #logips=1 # Prepend debug output with name of the originating source location # (source file, line number and function name) (default: 0) #logsourcelocations=1 # Prepend debug output with name of the originating thread (only available # on platforms supporting thread_local) (default: 0) #logthreadnames=1 # Prepend debug output with timestamp (default: 1) #logtimestamps=1 # Send trace/debug info to console (default: 1 when no -daemon. To disable # logging to file, set -nodebuglogfile) #printtoconsole=1 # Shrink debug.log file on client startup (default: 1 when no -debug) #shrinkdebugfile=1 # Append comment to the user agent string #uacomment= ### Chain selection options # Use the chain (default: main). Allowed values: main, test, # signet, regtest #chain= # Use the signet chain. Equivalent to -chain=signet. Note that the network # is defined by the -signetchallenge parameter #signet=1 # Blocks must satisfy the given script to be considered valid (only for # signet networks; defaults to the global default signet test # network challenge) #signetchallenge=1 # Specify a seed node for the signet network, in the hostname[:port] # format, e.g. sig.net:1234 (may be used multiple times to specify # multiple seed nodes; defaults to the global default signet test # network seed node(s)) #signetseednode=1 # Use the test chain. Equivalent to -chain=test. #testnet=1 ### Node relay options # Equivalent bytes per sigop in transactions for relay and mining # (default: 20) #bytespersigop=1 # Relay and mine data carrier transactions (default: 1) #datacarrier=1 # Maximum size of data in data carrier transactions we relay and mine # (default: 83) #datacarriersize=1 # Accept transaction replace-by-fee without requiring replaceability # signaling (default: 0) #mempoolfullrbf=1 # Fees (in BTC/kvB) smaller than this are considered zero fee for # relaying, mining and transaction creation (default: 0.00001) #minrelaytxfee= # Relay non-P2SH multisig (default: 1) #permitbaremultisig=1 # Add 'forcerelay' permission to whitelisted inbound peers with default # permissions. This will relay transactions even if the # transactions were already in the mempool. (default: 0) #whitelistforcerelay=1 # Add 'relay' permission to whitelisted inbound peers with default # permissions. This will accept relayed transactions even when not # relaying transactions (default: 1) #whitelistrelay=1 ### Block creation options # Set maximum BIP141 block weight (default: 3996000) #blockmaxweight= # Set lowest fee rate (in BTC/kvB) for transactions to be included in # block creation. (default: 0.00001) #blockmintxfee= ### RPC server options # Accept public REST requests (default: 0) #rest=1 # Allow JSON-RPC connections from specified source. Valid for are a # single IP (e.g. 1.2.3.4), a network/netmask (e.g. # 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This # option can be specified multiple times #rpcallowip= # Username and HMAC-SHA-256 hashed password for JSON-RPC connections. The # field comes in the format: :$. A # canonical python script is included in share/rpcauth. The client # then connects normally using the # rpcuser=/rpcpassword= pair of arguments. This # option can be specified multiple times #rpcauth= # Bind to given address to listen for JSON-RPC connections. Do not expose # the RPC server to untrusted networks such as the public internet! # This option is ignored unless -rpcallowip is also passed. Port is # optional and overrides -rpcport. Use [host]:port notation for # IPv6. This option can be specified multiple times (default: # 127.0.0.1 and ::1 i.e., localhost) #rpcbind=[:port] # Location of the auth cookie. Relative paths will be prefixed by a # net-specific datadir location. (default: data dir) #rpccookiefile= # Password for JSON-RPC connections #rpcpassword= # Listen for JSON-RPC connections on (default: 8332, testnet: # 18332, signet: 38332, regtest: 18443) #rpcport= # Sets the serialization of raw transaction or block hex returned in # non-verbose mode, non-segwit(0) or segwit(1) (default: 1) #rpcserialversion=1 # Set the number of threads to service RPC calls (default: 4) #rpcthreads= # Username for JSON-RPC connections #rpcuser= # Set a whitelist to filter incoming RPC calls for a specific user. The # field comes in the format: :,,...,. If multiple whitelists are set for a given user, # they are set-intersected. See -rpcwhitelistdefault documentation # for information on default whitelist behavior. #rpcwhitelist= # Sets default behavior for rpc whitelisting. Unless rpcwhitelistdefault # is set to 0, if any -rpcwhitelist is set, the rpc server acts as # if all rpc users are subject to empty-unless-otherwise-specified # whitelists. If rpcwhitelistdefault is set to 1 and no # -rpcwhitelist is set, rpc server acts as if all rpc users are # subject to empty whitelists. #rpcwhitelistdefault=1 # Accept command line and JSON-RPC commands #server=1 # [Sections] # Most options will apply to all networks. To confine an option to a specific # network, add it under the relevant section below. # # Note: If not specified under a network section, the options addnode, connect, # port, bind, rpcport, rpcbind, and wallet will only apply to mainnet. # Options for mainnet [main] # Options for testnet [test] # Options for signet [signet] # Options for regtest [regtest]