Software-update: Bitcoin Core 25.0
Blockchains en cryptovaluta zijn inmiddels niet meer weg te denken uit het nieuws in welke vorm dan ook. De grondlegger van de techniek en tegelijk bekendste is de bitcoin. Het bitcoinnetwerk bestaat uit verschillende nodes. En om een node te draaien kun je gebruikmaken van Bitcoin Core, dat in de volksmond ook wel de Satoshi-client wordt genoemd. Het Core-ontwikkelteam heeft Bitcoin Core 25.0 uitgebracht. De releasenotes zien er als volgt uit:
P2P and network changesTransactions of non-witness size 65 bytes and above are now allowed by mempool and relay policy. This is to better reflect the actual afforded protections against CVE-2017-12842 and open up additional use-cases of smaller transaction sizes. (#26265)
Transactions of non-witness size 65 bytes and above are now allowed by mempool and relay policy. This is to better reflect the actual afforded protections against CVE-2017-12842 and open up additional use-cases of smaller transaction sizes. (#26265)New RPCsThe scanblocks RPC returns the relevant blockhashes from a set of descriptors by scanning all blockfilters in the given range. It can be used in combination with the getblockheader and rescanblockchain RPCs to achieve fast wallet rescans. Note that this functionality can only be used if a compact block filter index (-blockfilterindex=1) has been constructed by the node. (#23549)
The scanblocks RPC returns the relevant blockhashes from a set of descriptors by scanning all blockfilters in the given range. It can be used in combination with the getblockheader and rescanblockchain RPCs to achieve fast wallet rescans. Note that this functionality can only be used if a compact block filter index (-blockfilterindex=1) has been constructed by the node. (#23549)Updated RPCsAll JSON-RPC methods accept a new named parameter called args that can contain positional parameter values. This is a convenience to allow some parameter values to be passed by name without having to name every value. The python test framework and bitcoin-cli tool both take advantage of this, so for example:bitcoin-cli -named createwallet wallet_name=mywallet load_on_startup=1Can now be shortened to:bitcoin-cli -named createwallet mywallet load_on_startup=1The verifychain RPC will now return false if the checks didn't fail, but couldn't be completed at the desired depth and level. This could be due to missing data while pruning, due to an insufficient dbcache or due to the node being shutdown before the call could finish. (#25574)sendrawtransaction has a new, optional argument, maxburnamount with a default value of 0. Any transaction containing an unspendable output with a value greater than maxburnamount will not be submitted. At present, the outputs deemed unspendable are those with scripts that begin with an OP_RETURN code (known as 'datacarriers'), scripts that exceed the maximum script size, and scripts that contain invalid opcodes.The testmempoolaccept RPC now returns 2 additional results within the "fees" result: "effective-feerate" is the feerate including fees and sizes of transactions validated together if package validation was used, and also includes any modified fees from prioritisetransaction. The "effective-includes" result lists the wtxids of transactions whose modified fees and sizes were used in the effective-feerate (#26646).decodescript may now infer a Miniscript descriptor under P2WSH context if it is not lacking information. (#27037)finalizepsbt is now able to finalize a transaction with inputs spending Miniscript-compatible P2WSH scripts. (#24149)Changes to wallet related RPCs can be found in the Wallet section below.
All JSON-RPC methods accept a new named parameter called args that can contain positional parameter values. This is a convenience to allow some parameter values to be passed by name without having to name every value. The python test framework and bitcoin-cli tool both take advantage of this, so for example:bitcoin-cli -named createwallet wallet_name=mywallet load_on_startup=1Can now be shortened to:bitcoin-cli -named createwallet mywallet load_on_startup=1The verifychain RPC will now return false if the checks didn't fail, but couldn't be completed at the desired depth and level. This could be due to missing data while pruning, due to an insufficient dbcache or due to the node being shutdown before the call could finish. (#25574)sendrawtransaction has a new, optional argument, maxburnamount with a default value of 0. Any transaction containing an unspendable output with a value greater than maxburnamount will not be submitted. At present, the outputs deemed unspendable are those with scripts that begin with an OP_RETURN code (known as 'datacarriers'), scripts that exceed the maximum script size, and scripts that contain invalid opcodes.The testmempoolaccept RPC now returns 2 additional results within the "fees" result: "effective-feerate" is the feerate including fees and sizes of transactions validated together if package validation was used, and also includes any modified fees from prioritisetransaction. The "effective-includes" result lists the wtxids of transactions whose modified fees and sizes were used in the effective-feerate (#26646).decodescript may now infer a Miniscript descriptor under P2WSH context if it is not lacking information. (#27037)finalizepsbt is now able to finalize a transaction with inputs spending Miniscript-compatible P2WSH scripts. (#24149)Changes to wallet related RPCs can be found in the Wallet section below.Build SystemThe --enable-upnp-default and --enable-natpmp-default options have been removed. If you want to use port mapping, you can configure it using a .conf file, or by passing the relevant options at runtime. (#26896)
The --enable-upnp-default and --enable-natpmp-default options have been removed. If you want to use port mapping, you can configure it using a .conf file, or by passing the relevant options at runtime. (#26896)Updated settingsIf the -checkblocks or -checklevel options are explicitly provided by the user, but the verification checks cannot be completed due to an insufficient dbcache, Bitcoin Core will now return an error at startup. (#25574)Ports specified in -port and -rpcport options are now validated at startup. Values that previously worked and were considered valid can now result in errors. (#22087)Setting -blocksonly will now reduce the maximum mempool memory to 5MB (users may still use -maxmempool to override). Previously, the default 300MB would be used, leading to unexpected memory usage for users running with -blocksonly expecting it to eliminate mempool memory usage.As unused mempool memory is shared with dbcache, this also reduces the dbcache size for users running with -blocksonly, potentially impacting performance.Setting -maxconnections=0 will now disable -dnsseed and -listen (users may still set them to override).Changes to GUI or wallet related settings can be found in the GUI or Wallet section below.
If the -checkblocks or -checklevel options are explicitly provided by the user, but the verification checks cannot be completed due to an insufficient dbcache, Bitcoin Core will now return an error at startup. (#25574)Ports specified in -port and -rpcport options are now validated at startup. Values that previously worked and were considered valid can now result in errors. (#22087)Setting -blocksonly will now reduce the maximum mempool memory to 5MB (users may still use -maxmempool to override). Previously, the default 300MB would be used, leading to unexpected memory usage for users running with -blocksonly expecting it to eliminate mempool memory usage.As unused mempool memory is shared with dbcache, this also reduces the dbcache size for users running with -blocksonly, potentially impacting performance.Setting -maxconnections=0 will now disable -dnsseed and -listen (users may still set them to override).Changes to GUI or wallet related settings can be found in the GUI or Wallet section below.New settingsThe shutdownnotify option is used to specify a command to execute synchronously before Bitcoin Core has begun its shutdown sequence. (#23395)
The shutdownnotify option is used to specify a command to execute synchronously before Bitcoin Core has begun its shutdown sequence. (#23395)WalletThe minconf option, which allows a user to specify the minimum number of confirmations a UTXO being spent has, and the maxconf option, which allows specifying the maximum number of confirmations, have been added to the following RPCs in #25375:fundrawtransactionsendwalletcreatefundedpsbtsendallAdded a new next_index field in the response in listdescriptors to have the same format as importdescriptors (#26194)RPC listunspent now has a new argument include_immature_coinbase to include coinbase UTXOs that don't meet the minimum spendability depth requirement (which before were silently skipped). (#25730)Rescans for descriptor wallets are now significantly faster if compact block filters (BIP158) are available. Since those are not constructed by default, the configuration option "-blockfilterindex=1" has to be provided to take advantage of the optimization. This improves the performance of the RPC calls rescanblockchain, importdescriptors and restorewallet. (#25957)RPC unloadwallet now fails if a rescan is in progress. (#26618)Wallet passphrases may now contain null characters. Prior to this change, only characters up to the first null character were recognized and accepted. (#27068)Address Purposes strings are now restricted to the currently known values of "send", "receive", and "refund". Wallets that
Source: Tweakers.net