#NOTE: This configuration file is for testing with regtest only #For mainnet usage, running a JoinMarket script will create the default file [DAEMON] no_daemon = 1 daemon_port = 27183 daemon_host = localhost use_ssl = false [BLOCKCHAIN] blockchain_source = regtest rpc_host = localhost rpc_port = 18443 rpc_user = bitcoinrpc rpc_password = 123456abcdef network = testnet rpc_wallet_file = jm-test-wallet [MESSAGING:server1] type = irc host = localhost hostid = localhost1 channel = joinmarket-pit port = 16667 usessl = false socks5 = false socks5_host = localhost socks5_port = 9150 [MESSAGING:server2] type = irc host = localhost hostid = localhost2 channel = joinmarket-pit port = 16668 usessl = false socks5 = false socks5_host = localhost socks5_port = 9150 [MESSAGING:onion] # onion based message channels must have the exact type 'onion' # (while the section name above can be MESSAGING:whatever), and there must # be only ONE such message channel configured (note the directory servers # can be multiple, below): type = onion socks5_host = localhost socks5_port = 9050 # the tor control configuration: tor_control_host = localhost # or, to use a UNIX socket # control_host = unix:/var/run/tor/control tor_control_port = 9051 # the host/port actually serving the hidden service # (note the *virtual port*, that the client uses, # is hardcoded to 80): onion_serving_host = 127.0.0.1 onion_serving_port = 8080 # This is mandatory for directory nodes (who must also set their # own .onion:port as the only directory in directory_nodes, below), # but NOT TO BE USED by non-directory nodes (which is you, unless # you know otherwise!), as it will greatly degrade your privacy. # # Special handling on regtest, so just ignore and let the code handle it: hidden_service_dir = "" # This is a comma separated list (comma can be omitted if only one item). # Each item has format host:port # On regtest we are going to increment the port numbers served from, with # the value used here as the starting value: directory_nodes = localhost:8081 # this is not present in default real config # and is specifically used to flag tests: # means we use indices 1,2,3,4,5: regtest_count=1,5 [TIMEOUT] maker_timeout_sec = 10 [LOGGING] console_log_level = DEBUG [POLICY] # for dust sweeping, try merge_algorithm = gradual # for more rapid dust sweeping, try merge_algorithm = greedy # for most rapid dust sweeping, try merge_algorithm = greediest # but don't forget to bump your miner fees! merge_algorithm = default # the fee estimate is based on a projection of how many satoshis # per kB are needed to get in one of the next N blocks, N set here # as the value of 'tx_fees'. This estimate can be extremely high # if you set N=1, so we choose N=3 for a more reasonable figure, # as our default. Note that for clients not using a local blockchain # instance, we retrieve an estimate from the API at cointape.com, currently. tx_fees = 3 taker_utxo_retries = 3 taker_utxo_age = 1 taker_utxo_amtpercent = 20 accept_commitment_broadcasts = 1 #some settings useful for testing scenarios #laxity for repeated tests; tests on actual #commitments/maker limit/utxo sourcing logic should obviously reset taker_utxo_retries = 3 minimum_makers = 1 listunspent_args = [0] max_sats_freeze_reuse = -1 # ONLY for testing! max_cj_fee_abs = 200000 max_cj_fee_rel = 0.2 [PAYJOIN] # for the majority of situations, the defaults # need not be altered - they will ensure you don't pay # a significantly higher fee. # MODIFICATION OF THESE SETTINGS IS DISADVISED. # Payjoin protocol version; currently only '1' is supported. payjoin_version = 1 # servers can change their destination address by default (0). # if '1', they cannot. Note that servers can explicitly request # that this is activated, in which case we respect that choice. disable_output_substitution = 0 # "default" here indicates that we will allow the receiver to # increase the fee we pay by: # 1.2 * (our_fee_rate_per_vbyte * vsize_of_our_input_type) # (see https://github.com/bitcoin/bips/blob/master/bip-0078.mediawiki#span_idfeeoutputspanFee_output) # (and 1.2 to give breathing room) # which indicates we are allowing roughly one extra input's fee. # If it is instead set to an integer, then that many satoshis are allowed. # Additionally, note that we will also set the parameter additionafeeoutputindex # to that of our change output, unless there is none in which case this is disabled. max_additional_fee_contribution = default # this is the minimum satoshis per vbyte we allow in the payjoin # transaction; note it is decimal, not integer. min_fee_rate = 1.1 # for payjoins to hidden service endpoints, the socks5 configuration: onion_socks5_host = localhost onion_socks5_port = 9050 # in some exceptional case the HS may be SSL configured, # this feature is not yet implemented in code, but here for the # future: hidden_service_ssl = false