Skip to content
Compare
Choose a tag to compare

Litecoin Core v0.21.2.1 Release

Follow our Twitter for the latest dev news.

We are pleased to release Litecoin Core 0.21.2.1. This is a new minor version release, including a critical bug fix introduced in the previous release. It is recommended for all users to upgrade to this version.

Notable changes

An issue with MWEB key generation for older wallets that were upgraded was solved. Keys are now generated from the appropriate keypools, and coins sent to previously generated stealth addresses are recoverable. Use rescanblockchain after upgrading to recover any missing MWEB coins.

Download Binaries

To download, please visit the download page here. Alternatively, you can view the download folder here.

Please use GPG to verify the integrity of the release binaries. This ensures that the binary you have downloaded has not been tampered with. Linux, MacOS and Win32 cygwin command line GPG instructions are available here. Please also note that we GPG sign the binaries as a convenience to you, the ultimate way to verify the integrity of the builds is to build them yourself using Gitian. Instructions on how to perform these builds, can be found here.

For this release, the binaries have been signed with key identifier 0x3620e9d387e55666 (davidburkett38’s key).

WARNING

Despite this version being heavily tested, this version may still contain bugs. Always backup your wallet.dat file before upgrading. If you encounter any issues, please let us know by posting to the bug reporting section below.
Source code & Build instructions

The master branch contains the latest commits to the next stable releases of Litecoin Core.

Source code & Build instructions

The master branch contains the latest commits to the next stable releases of Litecoin Core.

The master branch contains the latest commits to the next stable releases of Litecoin Core.
https://github.com/litecoin-project/litecoin/commits/master

Build instructions for Linux can be found here.
Build instructions for OSX can be found here.
Builds instructions for Windows can be found here.

Bug Reporting

Submit any issues you encounter here and one of the Litecoin developers will assist you.

https://github.com/litecoin-project/litecoin/issues

Mailing Lists

Sign up for announcements only or development discussion.

https://groups.google.com/forum/#!forum/litecoin-announce
https://groups.google.com/forum/#!forum/litecoin-dev

Hashes for verification

These are the SHA-256 hashes of the released files:

95491d137527fc3c232cc482a223874f23960a70e624092a280c82540326e5a0 litecoin-0.21.2.1-aarch64-linux-gnu.tar.gz
ffa0c82d87624bb29dcaba6ebf55fd916c9981d5fbaa5627a3f1c07b47535270 litecoin-0.21.2.1-arm-linux-gnueabihf.tar.gz
ff6d6248aedda1248b1a33dabf828b06d559e909262199a5e305225f7b5b0f00 litecoin-0.21.2.1-riscv64-linux-gnu.tar.gz
6e545d1ef0842b9c4ecaf2e22b43f17fd3fba73599b0d6cc1db0c9310f1a74ff litecoin-0.21.2.1-x86_64-linux-gnu.tar.gz
3b05591f117d487de0323ad3aca30b64a086125c22992a4c528c789db75b5b81 litecoin-0.21.2.1-osx.dmg
d4462b58811bc35c3160c204cc85e94ebe27e57b816ed5bd607f7e22cf3d4131 litecoin-0.21.2.1-win64-setup.exe

Credits

Thanks to everyone who directly contributed to this release:

Compare
Choose a tag to compare

Litecoin Core v0.21.2 Release

Follow our Twitter for the latest dev news.

We are pleased to release Litecoin Core 0.21.2. This is a new major version release, including new features, various bugfixes and performance improvements, as well as updated translations. This update includes full node, wallet and mining support for MWEB. It is recommended for all users to upgrade to this version.

How to upgrade:

Firstly, thank you for running Litecoin Core and helping secure the network!

As you’re running an older version of Litecoin Core, shut it down. Wait until it’s completely shut down - which might take a few minutes for older versions - then follow these simple steps:
For Windows: simply run the installer
For Mac: copy over to /Applications/Litecoin-Qt
For Linux: copy cover litecoind/litecoin-qt.

NB: upgrading directly from an ‘end of life’ version of Litecoin Core is possible, but it might take a while if the data directory needs to be migrated. Old wallet versions of Litecoin Core are generally supported.

Compatibility:

Litecoin Core is supported and extensively tested on operating systems using the Linux kernel, macOS 10.10+, Windows 7 and newer. It’s not recommended to use Litecoin Core on unsupported systems.

Litecoin Core should also work on most other Unix-like systems, but is not as frequently tested on them.

MWEB fields added to BlockIndex, and block serialization format has changed. Downgrading to older versions is unsafe.

If upgrading to 0.21.2 after MWEB has activated, you must resync to download MWEB blocks.

Notable changes

Consensus changes

P2P and network changes

  • A new service flag, NODE_MWEB (1 << 24), was added to signal to peers that the node supports MWEB.
    When connected peers both advertise this capability, they are expected to provide all MWEB data when
    sharing transactions, blocks, and compact blocks with each other.

  • Nodes now announce compact block version 3 support, informing peers that they can provide MWEB data
    in compact blocks.

Updated RPCs

  • getblockheader now returns an additional mweb_header field containing
    all of the MWEB header data, and an mweb_amount field containing the total
    number of coins pegged-in to the MWEB after applying the block.

  • getblock now returns an additional mweb field containing MWEB header info,
    and all of the inputs, outputs, and kernels in the MWEB block.

  • Added mwebweight, descendantmwebweight, ancestormwebweight, and mweb
    fields to getrawmempool, getmempoolancestors, getmempooldescendants,
    and getmempoolentry.

  • Added new fields to describe MWEB transaction inputs, outputs, and kernels
    for getrawtransaction.

Changes to Wallet or GUI related RPCs can be found in the GUI or Wallet section below.

New settings

  • Added "fMWEBFeatures" option for enabling the new "Advanced MWEB Features"
    control.

Wallet Database

  • Added "mweb_coin" type which stores MWEB coins and their derived keys.

  • Added CHDChain version 4 which includes an MWEB key index counter and
    the stealth address scan key.

  • Added CKeyMetadata version 14 which includes the MWEB key index.

  • Added FEATURE_MWEB = 210000 minimum database version.

Wallet RPC changes

  • Added 'listwallettransactions' which matches the transaction list display values.

GUI changes

  • Added an "Advanced MWEB Features" control for testing. It’s only available
    when the "-debug" argument is supplied, and the option is turned on in the
    settings dialog.

Download Binaries

To download, please visit the download page here. Alternatively, you can view the download folder here.

Please use GPG to verify the integrity of the release binaries. This ensures that the binary you have downloaded has not been tampered with. Linux, MacOS and Win32 cygwin command line GPG instructions are available here. Please also note that we GPG sign the binaries as a convenience to you, the ultimate way to verify the integrity of the builds is to build them yourself using Gitian. Instructions on how to perform these builds, can be found here.

For this release, the binaries have been signed with key identifier 0x3620e9d387e55666 (davidburkett38’s key).

WARNING

Despite this version being heavily tested, this version may still contain bugs. Always backup your wallet.dat file before upgrading. If you encounter any issues, please let us know by posting to the bug reporting section below.
Source code & Build instructions

The master branch contains the latest commits to the next stable releases of Litecoin Core.

Source code & Build instructions

The master branch contains the latest commits to the next stable releases of Litecoin Core.
https://github.com/litecoin-project/litecoin/commits/master

Build instructions for Linux can be found here.

Build instructions for OSX can be found here.

Builds instructions for Windows can be found here.

Bug Reporting

Submit any issues you encounter here and one of the Litecoin developers will assist you.

https://github.com/litecoin-project/litecoin/issues

Mailing Lists

Sign up for announcements only or development discussion.

https://groups.google.com/forum/#!forum/litecoin-announce
https://groups.google.com/forum/#!forum/litecoin-dev

Hashes for verification

These are the SHA-256 hashes of the released files:

b5a0b5bdf45c5e1f26c73a0be751ceb90c93fad8679aebe22ed5f64f615aea6b litecoin-0.21.2-aarch64-linux-gnu.tar.gz
e15b4d9db8807706c3492c05287f04c44956e3cdb77ebf4f87e19a296aa3a06b litecoin-0.21.2-arm-linux-gnueabihf.tar.gz
cb2a1504f151646d735d198ce77a1c1e4fea3ff672ed60549d6aa9f1d4a19b09 litecoin-0.21.2-riscv64-linux-gnu.tar.gz
94a10a217d91d29e97e7a0088bc1545f34b188297c3ce5b87b07e775d8d00b12 litecoin-0.21.2-x86_64-linux-gnu.tar.gz
39d0df6aecace19e91c9849d09aaeb60c0bb73b34a97c7b8ccae402da634cfa2 litecoin-0.21.2-osx.dmg
b0ab5fc95d8b7cfe990cc6d90d0af6f6f2d447b6a0bca162a72d12c3df1676a7 litecoin-0.21.2-win64-setup.exe

Credits

Thanks to everyone who directly contributed to this release:

3665dad
Compare
Choose a tag to compare

v0.21.1rc1

Pre-release
Pre-release
v0.18.1
81c4f2d
Compare
Choose a tag to compare

Litecoin Core v0.18.1 Release

Follow our Twitter for the latest dev news.

We are pleased to release Litecoin Core 0.18.1. This is a new major version release, including new features, various bugfixes and performance improvements, as well as updated translations. It is recommended for all users to upgrade to this version.

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer (on Windows) or just copy over /Applications/Litecoin-Qt (on Mac) or litecoind/litecoin-qt (on Linux).

The first time you run version 0.15.0 or newer, your chainstate database will be converted to a new format, which will take anywhere from a few minutes to half an hour, depending on the speed of your machine.

Note that the block database format also changed in version 0.8.0 and there is no automatic upgrade code from before version 0.8 to version 0.15.0 or later. Upgrading directly from 0.7.x and earlier without redownloading the blockchain is not supported. However, as usual, old wallet versions are still supported.

Compatibility

Litecoin Core is supported and extensively tested on operating systems using the Linux kernel, macOS 10.10+, and Windows 7 and newer. It is not recommended to use Litecoin Core on unsupported systems.

Litecoin Core should also work on most other Unix-like systems but is not as frequently tested on them.

From 0.17.0 onwards, macOS <10.10 is no longer supported. 0.17.0 is built using Qt 5.9.x, which doesn't support versions of macOS older than 10.10. Additionally, Litecoin Core does not yet change appearance when macOS "dark mode" is activated.

In addition to previously-supported CPU platforms, this release's pre-compiled distribution also provides binaries for the RISC-V platform.

Known issues

Wallet GUI

For advanced users who have both (1) enabled coin control features, and (2) are using multiple wallets loaded at the same time: The coin control input selection dialog can erroneously retain wrong-wallet state when switching wallets using the dropdown menu. For now, it is recommended not to use coin control features with multiple wallets loaded.

Notable changes

Mining

  • Calls to getblocktemplate will fail if the segwit rule is not specified. Calling getblocktemplate without segwit specified is almost certainly a misconfiguration since doing so results in lower rewards for the miner. Failed calls will produce an error message describing how to enable the segwit rule.

Configuration option changes

  • A warning is printed if an unrecognized section name is used in the configuration file. Recognized sections are [test][main], and [regtest].
  • Four new options are available for configuring the maximum number of messages that ZMQ will queue in memory (the "high water mark") before dropping additional messages. The default value is 1,000, the same as was used for previous releases. See the ZMQ documentation for details.
  • The rpcallowip option can no longer be used to automatically listen on all network interfaces. Instead, the rpcbind parameter must be used to specify the IP addresses to listen on. Listening for RPC commands over a public network connection is insecure and should be disabled, so a warning is now printed if a user selects such a configuration. If you need to expose RPC in order to use a tool like Docker, ensure you only bind RPC to your localhost, e.g. docker run [...] -p 127.0.0.1:9332:9332 (this is an extra :9332 over the normal Docker port specification).
  • The rpcpassword option now causes a startup error if the password set in the configuration file contains a hash character (#), as it's ambiguous whether the hash character is meant for the password or as a comment.
  • The whitelistforcerelay option is used to relay transactions from whitelisted peers even when not accepted to the mempool. This option now defaults to being off, so that changes in policy and disconnect/ban behavior will not cause a node that is whitelisting another to be dropped by peers. Users can still explicitly enable this behavior with the command line option (and may want to consider contacting the Litecoin Core project to let us know about their use-case, as this feature could be deprecated in the future).

Wallet changes

When creating a transaction with a fee above -maxtxfee (default 0.1 LTC), the RPC commands walletcreatefundedpsbt and fundrawtransaction will now fail instead of rounding down the fee. Beware that the feeRate argument is specified in LTC per kilobyte, not litoshi per byte.

Documentation

  • A new short document about the JSON-RPC interface describes cases where the results of an RPC might contain inconsistencies between data sourced from different subsystems, such as wallet state and mempool state. A note is added to the REST interface documentation indicating that the same rules apply.
  • Further information is added to the JSON-RPC documentation about how to secure this interface.
  • A new document about the litecoin.conf file describes how to use it to configure Litecoin Core.
  • A new document introduces Litecoin Core's BIP174 Partially-Signed Litecoin Transactions (PSBT) interface, which is used to allow multiple programs to collaboratively work to create, sign, and broadcast new transactions. This is useful for offline (cold storage) wallets, multisig wallets, coinjoin implementations, and many other cases where two or more programs need to interact to generate a complete transaction.
  • The output script descriptor documentation has been updated with information about new features in this still-developing language for describing the output scripts that a wallet or other program wants to receive notifications for, such as which addresses it wants to know received payments. The language is currently used in multiple new and updated RPCs described in these release notes and is expected to be adapted to other RPCs and to the underlying wallet structure.

Build system changes

  • A new --disable-bip70 option may be passed to ./configure to prevent Litecoin-Qt from being built with support for the BIP70 payment protocol or from linking libssl. As the payment protocol has exposed Litecoin Core to libssl vulnerabilities in the past, builders who don't need BIP70 support are encouraged to use this option to reduce their exposure to future vulnerabilities.
  • The minimum required version of Qt (when building the GUI) has been increased from 5.2 to 5.5.1 (the depends system provides 5.9.7)

New RPCs

  • getnodeaddresses returns peer addresses known to this node. It may be used to find nodes to connect to without using a DNS seeder.
  • listwalletdir returns a list of wallets in the wallet directory (either the default wallet directory or the directory configured by the -walletdir parameter).
  • getrpcinfo returns runtime details of the RPC server. At the moment, it returns an array of the currently active commands and how long they've been running.
  • deriveaddresses returns one or more addresses corresponding to an output descriptor.
  • getdescriptorinfo accepts a descriptor and returns information about it, including its computed checksum.
  • joinpsbts merges multiple distinct PSBTs into a single PSBT. The multiple PSBTs must have different inputs. The resulting PSBT will contain every input and output from all of the PSBTs. Any signatures provided in any of the PSBTs will be dropped.
  • analyzepsbt examines a PSBT and provides information about what the PSBT contains and the next steps that need to be taken in order to complete the transaction. For each input of a PSBT, analyzepsbt provides information about what information is missing for that input, including whether a UTXO needs to be provided, what pubkeys still need to be provided, which scripts need to be provided, and what signatures are still needed. Every input will also list which role is needed to complete that input, and analyzepsbt will also list the next role in general needed to complete the PSBT. analyzepsbt will also provide the estimated fee rate and estimated virtual size of the completed transaction if it has enough information to do so.
  • utxoupdatepsbt searches the set of Unspent Transaction Outputs (UTXOs) to find the outputs being spent by the partial transaction. PSBTs need to have the UTXOs being spent to be provided because the signing algorithm requires information from the UTXO being spent. For segwit inputs, only the UTXO itself is necessary. For non-segwit outputs, the entire previous transaction is needed so that signers can be sure that they are signing the correct thing. Unfortunately, because the UTXO set only contains UTXOs and not full transactions, utxoupdatepsbt will only add the UTXO for segwit inputs.

Updated RPCs

Note: some low-level RPC changes mainly useful for testing are described in the Low-level Changes section below.

  • getpeerinfo now returns an additional minfeefilter field set to the peer's BIP133 fee filter. You can use this to detect that you have peers that are willing to accept transactions below the default minimum relay fee.
  • The mempool RPCs, such as getrawmempool with verbose=true, now return an additional "bip125-replaceable" value indicating whether the transaction (or its unconfirmed ancestors) opts-in to asking nodes and miners to replace it with a higher-feerate transaction spending any of the same inputs.
  • settxfee previously silently ignored attempts to set the fee below the allowed minimums. It now prints a warning. The special value of "0" may still be used to request the minimum value.
  • getaddressinfo now provides an ischange field indicating whether the wallet used the address in a change output.
  • importmulti has been updated to support P2WSH, P2WPKH, P2SH-P2WPKH, and P2SH-P2WSH. Requests for P2WSH and P2SH-P2WSH accept an additional witnessscript parameter.
  • importmulti now returns an additional warnings field for each request with an array of strings explaining when fields are being ignored or are inconsistent, if there are any.
  • getaddressinfo now returns an additional solvable boolean field when Litecoin Core knows enough about the address's scriptPubKey, optional redeemScript, and optional witnessScript in order for the wallet to be able to generate an unsigned input spending funds sent to that address.
  • The getaddressinfolistunspent, and scantxoutset RPCs now return an additional desc field that contains an output descriptor containing all key paths and signing information for the address (except for the private key). The desc field is only returned for getaddressinfo and listunspent when the address is solvable.
  • importprivkey will preserve previously-set labels for addresses or public keys corresponding to the private key being imported. For example, if you imported a watch-only address with the label "cold wallet" in earlier releases of Litecoin Core, subsequently importing the private key would default to resetting the address's label to the default empty-string label (""). In this release, the previous label of "cold wallet" will be retained. If you optionally specify any label besides the default when calling importprivkey, the new label will be applied to the address.
  • See the Mining section for changes to getblocktemplate.
  • getmininginfo now omits currentblockweight and currentblocktx when a block was never assembled via RPC on this node.
  • The getrawtransaction RPC & REST endpoints no longer check the unspent UTXO set for a transaction. The remaining behaviors are as follows: 1. If a blockhash is provided, check the corresponding block. 2. If no blockhash is provided, check the mempool. 3. If no blockhash is provided but txindex is enabled, also check txindex.
  • unloadwallet is now synchronous, meaning it will not return until the wallet is fully unloaded.
  • importmulti now supports importing of addresses from descriptors. A "desc" parameter can be provided instead of the "scriptPubKey" in a request, as well as an optional range for ranged descriptors to specify the start and end of the range to import. Descriptors with key origin information imported through importmulti will have their key origin information stored in the wallet for use with creating PSBTs. More information about descriptors can be found here.
  • listunspent has been modified so that it also returns witnessScript, the witness script in the case of a P2WSH or P2SH-P2WSH output.
  • createwallet now has an optional blank argument that can be used to create a blank wallet. Blank wallets do not have any keys or HD seed. They cannot be opened in software older than 0.18. Once a blank wallet has a HD seed set (by using sethdseed) or private keys, scripts, addresses, and other watch only things have been imported, the wallet is no longer blank and can be opened in 0.17.x. Encrypting a blank wallet will also set a HD seed for it.

Deprecated or removed RPCs

  • signrawtransaction is removed after being deprecated and hidden behind a special configuration option in version 0.17.0.
  • The 'account' API is removed after being deprecated in v0.17. The 'label' API was introduced in v0.17 as a replacement for accounts. See the release notes from v0.17 for a full description of the changes from the 'account' API to the 'label' API.
  • addwitnessaddress is removed after being deprecated in version 0.16.0.
  • generate is deprecated and will be fully removed in a subsequent major version. This RPC is only used for testing, but its implementation reached across multiple subsystems (wallet and mining), so it is being deprecated to simplify the wallet-node interface. Projects that are using generate for testing purposes should transition to using the generatetoaddress RPC, which does not require or use the wallet component. Calling generatetoaddress with an address returned by the getnewaddress RPC gives the same functionality as the old generate RPC. To continue using generate in this version, restart litecoind with the -deprecatedrpc=generate configuration option.
  • Be reminded that parts of the validateaddress command have been deprecated and moved to getaddressinfo. The following deprecated fields have moved to getaddressinfoismineiswatchonlyscripthexpubkeyssigsrequiredpubkeyembeddediscompressedlabeltimestamphdkeypathhdmasterkeyid.
  • The addresses field has been removed from the validateaddress and getaddressinfo RPC methods. This field was confusing since it referred to public keys using their P2PKH address. Clients should use the embedded.address field for P2SH or P2WSH wrapped addresses, and pubkeys for inspecting multisig participants.

REST changes

  • A new /rest/blockhashbyheight/ endpoint is added for fetching the hash of the block in the current best blockchain based on its height (how many blocks it is after the Genesis Block).

Graphical User Interface (GUI)

  • A new Window menu is added alongside the existing File, Settings, and Help menus. Several items from the other menus that opened new windows have been moved to this new Window menu.
  • In the Send tab, the checkbox for "pay only the required fee" has been removed. Instead, the user can simply decrease the value in the Custom Feerate field all the way down to the node's configured minimum relay fee.
  • In the Overview tab, the watch-only balance will be the only balance shown if the wallet was created using the createwallet RPC and the disable_private_keys parameter was set to true.
  • The launch-on-startup option is no longer available on macOS if compiled with macosx min version greater than 10.11 (use CXXFLAGS="-mmacosx-version-min=10.11" CFLAGS="-mmacosx-version-min=10.11" for setting the deployment sdk version)

Tools

  • A new litecoin-wallet tool is now distributed alongside Litecoin Core's other executables. Without needing to use any RPCs, this tool can currently create a new wallet file or display some basic information about an existing wallet, such as whether the wallet is encrypted, whether it uses an HD seed, how many transactions it contains, and how many address book entries it has.

Planned changes

This section describes planned changes to Litecoin Core that may affect other Litecoin software and services.

  • Since version 0.16.0, Litecoin Core's built-in wallet has defaulted to generating P2SH-wrapped segwit addresses when users want to receive payments. These addresses are backwards compatible with all widely-used software. Starting with Litecoin Core 0.20, Litecoin Core will default to native segwit addresses (bech32) that provide additional fee savings and other benefits. Currently, many wallets and services already support sending to bech32 addresses, and if the Litecoin Core project sees enough additional adoption, it will instead default to bech32 receiving addresses in Litecoin Core 0.20. P2SH-wrapped segwit addresses will continue to be provided if the user requests them in the GUI or by RPC, and anyone who doesn't want the update will be able to configure their default address type. (Similarly, pioneering users who want to change their default now may set the addresstype=bech32 configuration option in any Litecoin Core release from 0.16.0 up.)

Deprecated P2P messages

  • BIP 61 reject messages are now deprecated. Reject messages have no use case on the P2P network and are only logged for debugging by most network nodes. Furthermore, they increase bandwidth and can be harmful for privacy and security. It has been possible to disable BIP 61 messages since v0.17 with the -enablebip61=0 option. BIP 61 messages will be disabled by default in a future version, before being removed entirely.

Low-level changes

This section describes RPC changes mainly useful for testing, mostly not relevant in production. The changes are mentioned for completeness.

RPC

  • The submitblock RPC previously returned the reason a rejected block was invalid the first time it processed that block, but returned a generic "duplicate" rejection message on subsequent occasions it processed the same block. It now always returns the fundamental reason for rejecting an invalid block and only returns "duplicate" for valid blocks it has already accepted.
  • A new submitheader RPC allows submitting block headers independently from their block. This is likely only useful for testing.
  • The signrawtransactionwithkey and signrawtransactionwithwallet RPCs have been modified so that they also optionally accept a witnessScript, the witness script in the case of a P2WSH or P2SH-P2WSH output. This is compatible with the change to listunspent.
  • For the walletprocesspsbt and walletcreatefundedpsbt RPCs, if the bip32derivs parameter is set to true but the key metadata for a public key has not been updated yet, then that key will have a derivation path as if it were just an independent key (i.e. no derivation path and its master fingerprint is itself).

Configuration

  • The -usehd configuration option was removed in version 0.16. From that version onwards, all new wallets created are hierarchical deterministic wallets. This release makes specifying -usehd an invalid configuration option.

Network

  • This release allows peers that your node automatically disconnected for misbehavior (e.g. sending invalid data) to reconnect to your node if you have unused incoming connection slots. If your slots fill up, a misbehaving node will be disconnected to make room for nodes without a history of problems (unless the misbehaving node helps your node in some other way, such as by connecting to a part of the Internet from which you don't have many other peers). Previously, Litecoin Core banned the IP addresses of misbehaving peers for a period of time (default of 1 day); this was easily circumvented by attackers with multiple IP addresses. If you manually ban a peer, such as by using the setban RPC, all connections from that peer will still be rejected.

Wallet

  • The key metadata will need to be upgraded the first time that the HD seed is available. For unencrypted wallets this will occur on wallet loading. For encrypted wallets this will occur the first time the wallet is unlocked.
  • Newly encrypted wallets will no longer require restarting the software. Instead such wallets will be completely unloaded and reloaded to achieve the same effect.
  • A sub-project of Litecoin Core now provides Hardware Wallet Interaction (HWI) scripts that allow command-line users to use several popular hardware key management devices with Litecoin Core. See their project page for details.

Security

  • This release changes the Random Number Generator (RNG) used from OpenSSL to Litecoin Core's own implementation, although entropy gathered by Litecoin Core is fed out to OpenSSL and then read back in when the program needs strong randomness. This moves Litecoin Core a little closer to no longer needing to depend on OpenSSL, a dependency that has caused security issues in the past. The new implementation gathers entropy from multiple sources, including from hardware supporting the rdseed CPU instruction.

Changes for particular platforms

  • On macOS, Litecoin Core now opts out of application CPU throttling ("app nap") during initial blockchain download, when catching up from over 100 blocks behind the current chain tip, or when reindexing chain data. This helps prevent these operations from taking an excessively long time because the operating system is attempting to conserve power.

Download Binaries

To download, please visit the download page here. Alternatively, you can view the download folder here.

Please use GPG to verify the integrity of the release binaries. This ensures that the binary you have downloaded has not been tampered with. Linux, MacOS and Win32 cygwin command line GPG instructions are available here. Please also note that we GPG sign the binaries as a convenience to you, the ultimate way to verify the integrity of the builds is to build them yourself using Gitian. Instructions on how to perform these builds, can be found here.

For this release, the binaries have been signed with key identifier FE3348877809386C (thrasher's key).

WARNING

Despite this version being heavily tested, this version may still contain bugs. Always backup your wallet.dat file before upgrading. If you encounter any issues, please let us know by posting to the bug reporting section below.

Source code & Build instructions

The master branch contains the latest commits to the next stable releases of Litecoin Core.

https://github.com/litecoin-project/litecoin/commits/master

Build instructions for Linux can be found here.

Build instructions for OSX can be found here.

Builds instructions for Windows can be found here.

Bug Reporting

Submit any issues you encounter here and one of the Litecoin developers will assist you.

https://github.com/litecoin-project/litecoin/issues

Mailing Lists

Sign up for announcements only or development discussion.

https://groups.google.com/forum/#!forum/litecoin-announce
https://groups.google.com/forum/#!forum/litecoin-dev

Hashes for verification

These are the SHA-256 hashes of the released files:

e0bdd4aa81502551a0c5abcfaae52c8bbaf4a980548aa6c91053643d81924b51 litecoin-0.18.1-aarch64-linux-gnu.tar.gz59b73bc8f034208295634da56a175d74668b07613cf6484653cb467deafb1d52 litecoin-0.18.1-arm-linux-gnueabihf.tar.gz0a2788d58bd22c3754927e216bf18c64145b9fdc0d709f3f49ba3040b876a066 litecoin-0.18.1-i686-pc-linux-gnu.tar.gz4ce590ecbaecaced7253473bc574a2b70527c9aeb3a3ab33a843ea1c9caf0c86 litecoin-0.18.1-osx64.tar.gzb81d9101c6ecb38b7699cf3d05ab57df7922f40f23c8a3377750c335d7102266 litecoin-0.18.1-osx.dmge5585eaff887b9d3de9f14230db0375b858e5cccc571bdb909dfc337d5bd357c litecoin-0.18.1-riscv64-linux-gnu.tar.gz6dfa71ccf059463f0a304f85ff1ca8b88039d63e93269d6f056ab24915be936d litecoin-0.18.1.tar.gz778eac92953d82a3b2e0cdc925e7da9103edd0d9a9ffa151c3c7cc79b9814091 litecoin-0.18.1-win32-setup.exe39d02e463893c970f92ed5ffcb603a1a7b2e2dacdaea306e8526414af841d247 litecoin-0.18.1-win32.zipbd38a1d5d4ac1ca4246f9534032a369b0f3cd38fb2aa82c66010642fa72e65f7 litecoin-0.18.1-win64-setup.exe9ff1f552f8ed3f058a56332defa7c61cfb345848428d7b419182096eca2ac99a litecoin-0.18.1-win64.zipca50936299e2c5a66b954c266dcaaeef9e91b2f5307069b9894048acf3eb5751 litecoin-0.18.1-x86_64-linux-gnu.tar.gz

Credits

Thanks to everyone who directly contributed to this release:

  • The Bitcoin Core Developers
  • Adrian Gallagher
  • aunyks
  • coblee
  • cryptonexii
  • EP1JUNE
  • gabrieldov
  • jmutkawoa
  • Loshan
  • Martin Smith
  • NeMO84
  • OlegKozhemiakin
  • ppm0
  • romanornr
  • shaolinfry
  • spl0i7
  • stedwms
  • ultragtx
  • VKoskiv
  • voidmain
  • wbsmolen
  • xinxi
v0.17.1
1b6c480
Compare
Choose a tag to compare

Litecoin Core v0.17.1 Release

Follow the Twitter for the latest dev news.

We are pleased to release Litecoin Core 0.17.1. This is a new major version
release, including new features, various bugfixes and performance improvements,
as well as updated translations. It is recommended for all users to upgrade to
this version.

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely
shut down (which might take a few minutes for older versions), then run the
installer (on Windows) or just copy over /Applications/Litecoin-Qt (on Mac) or
litecoind/litecoin-qt (on Linux).

If your node has a txindex, the txindex db will be migrated the first time you
run 0.17.1 or newer, which may take up to a few hours. Your node will not be
functional until this migration completes.

The first time you run version 0.15.0 or newer, your chainstate database will be
converted to a new format. This will take anywhere from a few minutes to half an
hour depending on the speed of your machine.

Note that the block database format also changed in version 0.8.0 and there is
no automatic upgrade code from before version 0.8 to version 0.15.0. Upgrading
directly from 0.7.x and earlier without redownloading the blockchain is not
supported. However, as usual, old wallet versions are still supported.

Downgrading warning

The chainstate database for this release is not compatible with previous
releases, so if you run 0.15 and then decide to switch back to any older
version, you will need to run the old release with the
-reindex-chainstateoption to rebuild the chainstate data structures in the old
format.

If your node has pruning enabled, this will entail re-downloading and processing
the entire blockchain.

Compatibility

Litecoin Core is extensively tested on multiple operating systems using the
Linux kernel, macOS 10.10+, and Windows 7 and newer (Windows XP is not
supported).

Litecoin Core should also work on most other Unix-like systems but is not
frequently tested on them.

From 0.17.1 onwards macOS <10.10 is no longer supported. 0.17.1 is built using
Qt 5.9.x, which doesn’t support versions of macOS older than 10.10.

Known issues

  • Upgrading from 0.13.2 or older currently results in memory blow-up during the
    roll-back of blocks to the SegWit activation point. In these cases, a full
    -reindex is necessary.
  • The GUI suffers from visual glitches in the new MacOS dark mode. This has to do
    with our Qt theme handling impacting older versions of Litecoin Core, but is
    expected to be resolved in 0.17.1.

listtransactions label support

The listtransactions RPC account parameter has been renamed to label.

When litecoin is configured with the -deprecatedrpc=accounts setting,
specifying a label/account/dummy argument will return both outgoing and incoming
transactions. Without the -deprecatedrpc=accounts setting, it will only return
incoming transactions (because it used to be possible to create transactions
spending from specific accounts, but this is no longer possiblewith labels).

When -deprecatedrpc=accounts is set, it's possible to pass the empty string ""
to list transactions that don't have any label. Without
-deprecatedrpc=accounts, passing the empty string is an error because
returning only non-labeled transactions is not generally useful behavior and can
cause confusion.

Changed configuration options

  • -includeconf=<file> can be used to include additional configuration files.
    Only works inside the litecoin.conf file, not inside included files or from
    command-line. Multiple files may be included. Can be disabled from command- line
    via -noincludeconf. Note that multi-argument commands like -includeconf will
    override preceding -noincludeconf, i.e.

    noincludeconf=1
    includeconf=relative.conf

as litecoin.conf will still include relative.conf.

GUI changes

  • Block storage can be limited under Preferences, in the Main tab. Undoing this
    setting requires downloading the full blockchain again. This mode is
    incompatible with -txindex and -rescan.

External wallet files

The -wallet=<path> option now accepts full paths instead of requiring wallets
to be located in the -walletdir directory.

Newly created wallet format

If -wallet=<path> is specified with a path that does not exist, it will now
create a wallet directory at the specified location (containing a wallet.dat
data file, a db.log file, and database/log.?????????? files) instead of just
creating a data file at the path and storing log files in the parent directory.
This should make backing up wallets more straightforward than before because the
specified wallet path can just be directly archived without having to look in
the parent directory for transaction log files.

For backwards compatibility, wallet paths that are names of existing data files
in the -walletdir directory will continue to be accepted and interpreted the
same as before.

Dynamic loading and creation of wallets

Previously, wallets could only be loaded or created at startup, by specifying
-wallet parameters on the command line or in the litecoin.conf file. It is now
possible to load, create and unload wallets dynamically at runtime:

  • Existing wallets can be loaded by calling the loadwallet RPC. The wallet can
    be specified as file/directory basename (which must be located in the
    walletdir directory), or as an absolute path to a file/directory.
  • New wallets can be created (and loaded) by calling the createwallet RPC. The
    provided name must not match a wallet file in the walletdirdirectory or the
    name of a wallet that is currently loaded.
  • Loaded wallets can be unloaded by calling the unloadwallet RPC.

This feature is currently only available through the RPC interface.

Coin selection

Partial spend avoidance

When an address is paid multiple times the coins from those separate payments
can be spent separately which hurts privacy due to linking otherwise separate
addresses. A new -avoidpartialspends flag has been added (default=false). If
enabled, the wallet will always spend existing UTXO to the same address together
even if it results in higher fees. If someone were to send coins to an address
after it was used, those coins will still be included in future coin selections.

Fee policy changes

The default minimum transaction fee -mintxfee has been lowered to 0.0001
LTC/kB after relaxing the minimum relay and dust relay fee rates in prior
releases.

Configuration sections for testnet and regtest

It is now possible for a single configuration file to set different options for
different networks. This is done by using sections or by prefixing the option
with the network, such as:

If the following options are not in a section, they will only apply to mainnet:
addnode=, connect=, port=, bind=, rpcport=, rpcbind= and wallet=.
The options to choose a network (regtest= and testnet=) must be specified
outside of sections.

‘label’ and ‘account’ APIs for wallet

A new ‘label’ API has been introduced for the wallet. This is intended as a
replacement for the deprecated ‘account’ API. The ‘account’ can continue to be
used in V0.17 by starting litecoind with the ‘-deprecatedrpc=accounts’ argument,
and will be fully removed in V0.18.

The label RPC methods mirror the account functionality, with the following
functional differences:

  • Labels can be set on any address, not just receiving addresses. This
    functionality was previously only available through the GUI.
  • Labels can be deleted by reassigning all addresses using the setlabel RPC
    method.
  • There isn’t support for sending transactions from a label, or for determining
    which label a transaction was sent from.
  • Labels do not have a balance.

Here are the changes to RPC methods:

BIP 174 Partially Signed Litecoin Transactions support

BIP 174 PSBT
is an interchange format for Litecoin transactions that are not fully signed
yet, together with relevant metadata to help entities work towards signing it.
It is intended to simplify workflows where multiple parties need to cooperate to
produce a transaction. Examples include hardware wallets, multisig setups, and
CoinJoin transactions.

For backend RPC convenience, the Litecoin devs have supported to keep the
acronym PSBT instead of PSLT to make crosschain application support easier.

Overall workflow

Overall, the construction of a fully signed Litecoin transaction goes through
the following steps:

  • A Creator proposes a particular transaction to be created. He constructs a PSBT
    that contains certain inputs and outputs, but no additional metadata.
  • For each input, an Updater adds information about the UTXOs being spent by the
    transaction to the PSBT.
  • A potentially other Updater adds information about the scripts and public keys
    involved in each of the inputs (and possibly outputs) of the PSBT.
  • Signers inspect the transaction and its metadata to decide whether they agree
    with the transaction. They can use amount information from the UTXOs to assess
    the values and fees involved. If they agree, they produce a partial signature
    for the inputs for which they have relevant key(s).
  • A Finalizer is run for each input to convert the partial signatures and possibly
    script information into a final scriptSig and/or scriptWitness.
  • An Extractor produces a valid Litecoin transaction (in network format) from a
    PSBT for which all inputs are finalized.

Generally, each of the above (excluding Creator and Extractor) will simply add
more and more data to a particular PSBT. In a naive workflow, they all have to
operate sequentially, passing the PSBT from one to the next, until the Extractor
can convert it to a real transaction. In order to permit parallel operation,
Combiners can be employed which merge metadata from different PSBTs for the same
unsigned transaction.

The names above in bold are the names of the roles defined in BIP174. They’re
useful in understanding the underlying steps, but in practice, software and
hardware implementations will typically implement multiple roles simultaneously.

RPCs

  • converttopsbt (Creator) is a utility RPC that converts an unsigned raw
    transaction to PSBT format. It ignores existing signatures.
  • createpsbt (Creator) is a utility RPC that takes a list of inputs and outputs
    and converts them to a PSBT with no additional information. It is equivalent to
    calling createrawtransaction followed by converttopsbt.
  • walletcreatefundedpsbt (Creator, Updater) is a wallet RPC that creates a PSBT
    with the specified inputs and outputs, adds additional inputs and change to it
    to balance it out, and adds relevant metadata. In particular, for inputs that
    the wallet knows about (counting towards its normal or watch-only balance), UTXO
    information will be added. For outputs and inputs with UTXO information present,
    key and script information will be added which the wallet knows about. It is
    equivalent to running createrawtransaction, followed by fundrawtransaction,
    and converttopsbt.
  • walletprocesspsbt (Updater, Signer, Finalizer) is a wallet RPC that takes as
    input a PSBT, adds UTXO, key, and script data to inputs and outputs that miss
    it, and optionally signs inputs. Where possible it also finalizes the partial
    signatures.
  • finalizepsbt (Finalizer, Extractor) is a utility RPC that finalizes any
    partial signatures, and if all inputs are finalized, converts the result to a
    fully signed transaction which can be broadcast with sendrawtransaction.
  • combinepsbt (Combiner) is a utility RPC that implements a Combiner. It can be
    used at any point in the workflow to merge information added to different
    versions of the same PSBT. In particular it is useful to combine the output of
    multiple Updaters or Signers.
  • decodepsbt is a diagnostic utility RPC which will show all information in a
    PSBT in human-readable form, as well as compute its eventual fee if known.

Upgrading non-HD wallets to HD wallets

Since Litecoin Core 0.13.2, creating new BIP 32 Hierarchical Deterministic
wallets has been supported by Litecoin Core but old non-HD wallets could not be
upgraded to HD. Now non-HD wallets can be upgraded to HD using the
-upgradewallet command line option. This upgrade will result in the all keys
in the keypool being marked as used and a new keypool generated. A new backup
must be made when this upgrade is performed.

Additionally, -upgradewallet can be used to upgraded from a non-split HD chain
(all keys generated with m/0'/0'/i') to a split HD chain (receiving keys
generated with 'm/0'/0'/i' and change keys generated with m'/0'/1'/i'). When
this upgrade occurs, all keys already in the keypool will remain in the keypool
to be used until all keys from before the upgrade are exhausted. This is to
avoid issues with backups and downgrades when some keys may come from the change
key keypool. Users can begin using the new split HD chain keypools by using the
newkeypool RPC to mark all keys in the keypool as used and begin using a new
keypool generated from the split HD chain.

HD Master key rotation

A new RPC, sethdseed, has been introduced which allows users to set a new HD
seed or set their own HD seed. This allows for a new HD seed to be used. A new
backup must be made when a new HD seed is set.

Low-level RPC changes

  • The new RPC scantxoutset can be used to scan the UTXO set for entries that
    match certain output descriptors. Refer to the output descriptors reference
    documentation

    for more details. This call is similar to listunspent but does not use a
    wallet, meaning that the wallet can be disabled at compile or run time. This
    call is experimental, as such, is subject to changes or removal in future
    releases.
  • The createrawtransaction RPC will now accept an array or dictionary (kept for
    compatibility) for the outputs parameter. This means the order of transaction
    outputs can be specified by the client.
  • The fundrawtransaction RPC will reject the previously deprecated
    reserveChangeKey option.
  • sendmany now shuffles outputs to improve privacy, so any previously expected
    behavior with regards to output ordering can no longer be relied upon.
  • The new RPC testmempoolaccept can be used to test acceptance of a transaction
    to the mempool without adding it.
  • JSON transaction decomposition now includes a weight field which provides the
    transaction's exact weight. This is included in REST /rest/tx/ and /rest/block/
    endpoints when in json mode. This is also included in getblock (with
    verbosity=2), listsinceblock, listtransactions, and getrawtransaction RPC
    commands.
  • New fees field introduced in getrawmempool, getmempoolancestors,
    getmempooldescendants and getmempoolentry when verbosity is set to true
    with sub-fields ancestor, base, modified and descendantdenominated in
    LTC. This new field deprecates previous fee fields, such as fee,
    modifiedfee, ancestorfee and descendantfee.
  • The new RPC getzmqnotifications returns information about active ZMQ
    notifications.
  • When litecoin is not started with any -wallet=<path> options, the name of the
    default wallet returned by getwalletinfo and listwallets RPCs is now the
    empty string "" instead of "wallet.dat". If litecoin is started with any
    -wallet=<path> options, there is no change in behavior, and the name of any
    wallet is just its <path> string.
  • Passing an empty string ("") as the address_type parameter to
    getnewaddress, getrawchangeaddress, addmultisigaddress,
    fundrawtransaction RPCs is now an error. Previously, this would fall back to
    using the default address type. It is still possible to pass null or leave the
    parameter unset to use the default address type.
  • Bare multisig outputs to our keys are no longer automatically treated as
    incoming payments. As this feature was only available for multisig outputs for
    which you had all private keys in your wallet, there was generally no use for
    them compared to single-key schemes. Furthermore, no address format for such
    outputs is defined, and wallet software can’t easily send to it. These outputs
    will no longer show up in listtransactions, listunspent, or contribute to
    your balance, unless they are explicitly watched (using importaddress or
    importmulti with hex script argument). signrawtransaction* also still works
    for them.
  • The getwalletinfo RPC method now returns an hdseedid value, which is always
    the same as the incorrectly-named hdmasterkeyid value. hdmasterkeyid will be
    removed in V0.18.
  • The getaddressinfo RPC method now returns an hdseedid value, which is always
    the same as the incorrectly-named hdmasterkeyid value. hdmasterkeyid will be
    removed in V0.18.
  • Parts of the validateaddress RPC method have been deprecated and moved to
    getaddressinfo. Clients must transition to using getaddressinfo to access
    this information before upgrading to v0.18. The following deprecated fields have
    moved to getaddressinfo and will only be shown with
    -deprecatedrpc=validateaddress: ismine, iswatchonly, script, hex,
    pubkeys, sigsrequired, pubkey, addresses, embedded, iscompressed,
    account, timestamp, hdkeypath, hdmasterkeyid.
  • signrawtransaction is deprecated and will be fully removed in v0.18. To use
    signrawtransaction in v0.17, restart litecoind with
    -deprecatedrpc=signrawtransaction. Projects should transition to using
    signrawtransactionwithkey and signrawtransactionwithwallet before upgrading
    to v0.18.

Other API changes

  • The inactivehdmaster property in the dumpwallet output has been corrected to
    inactivehdseed

Logging

  • The log timestamp format is now ISO 8601 (e.g. “2018–02–28T12:34:56Z”).
  • When running litecoind with -debug but without -daemon, logging to stdout is
    now the default behavior. Setting -printtoconsole=1 no longer implicitly
    disables logging to debug.log. Instead, logging to file can be explicitly
    disabled by setting -debuglogfile=0.

Transaction index changes

The transaction index is now built separately from the main node procedure,
meaning the -txindex flag can be toggled without a full reindex. If litecoind
is run with -txindex on a node that is already partially or fully synced
without one, the transaction index will be built in the background and become
available once caught up. When switching from running -txindex to running
without the flag, the transaction index database will not be deleted
automatically, meaning it could be turned back on at a later time without a full
resync.

Miner block size removed

The -blockmaxsize option for miners to limit their blocks' sizes was
deprecated in V0.15.1, and has now been removed. Miners should use the
-blockmaxweight option if they want to limit the weight of their blocks.

Python Support

Support for Python 2 has been discontinued for all test files and tools.

Download Binaries

To download, please visit the download page here.
Alternatively, you can view the download folder
here.

Please use GPG to verify the integrity of the release binaries. This ensures
that the binary you have downloaded has not been tampered with. Linux, MacOS and
Win32 cygwin command line GPG instructions are available
here.
Please also note that we GPG sign the binaries as a convenience to you, the
ultimate way to verify the integrity of the builds is to build them yourself
using Gitian. Instructions on how to perform these builds, can be found
here.

For this release, the binaries have been signed with key identifier FE3348877809386C(thrasher’s key).

WARNING

Despite this version being heavily tested, this version may still contain bugs.
Always backup your wallet.dat file before upgrading. If you encounter any
issues, please let us know by posting to the bug reporting section below.

Source code & Build instructions

The master branch contains the latest commits to the next stable releases of
Litecoin Core.

Build instructions for Linux can be found here.

Build instructions for OSX can be found here.

Builds instructions for Windows can be found here.

Bug Reporting

Submit any issues you encounter here and one of the Litecoin developers will
assist you.

Mailing Lists

Sign up for announcements only or development discussion.

Hashes for verification

These are the SHA-256 hashes of the released files:

aa772dd38242065f9902fc529239aeca05c34851f99113f5f29d6e591e1d8aa5  litecoin-0.17.1-aarch64-linux-gnu.tar.gz
7e6f5a1f0b190de01aa20ecf5c5a2cc5a64eb7ede0806bcba983bcd803324d8a  litecoin-0.17.1-arm-linux-gnueabihf.tar.gz
575f5e6614868f148b3ca3064ff7f494db84cde49669cd18be2d8275da88ebce  litecoin-0.17.1-i686-pc-linux-gnu.tar.gz
b93fa415c84bea1676d0b0ea819dd6e8e4f7b136167d89b18b63240b50757d4f  litecoin-0.17.1-osx64.tar.gz
7f8ec34706701482970baae4d4bc0fdb19016a6ab5260f983bf478428f0da518  litecoin-0.17.1-osx.dmg
6db52aa5a67387aff937afbfb3da8321ada653c9c8f01b0e0d4dd617939639c4  litecoin-0.17.1.tar.gz
7263605a80e93da6fe56d8ef46a73eadd973673098982943f51e2d56d36f8a2f  litecoin-0.17.1-win32-setup.exe
2970c94c5401008c1120313838e8e88ff437c588b5b574a1e74b190d970a54e7  litecoin-0.17.1-win32.zip
fa8e0f5be6e65125fdea9e4d83bd3ea3ab2e8b185e3f94b767d77233cbbd520a  litecoin-0.17.1-win64-setup.exe
8060e9bface9bbdc22c74a2687b211c8b4e32fe03c0e6c537c12de0ff6f0813b  litecoin-0.17.1-win64.zip
9cab11ba75ea4fb64474d4fea5c5b6851f9a25fe9b1d4f7fc9c12b9f190fed07  litecoin-0.17.1-x86_64-linux-gnu.tar.gz

Credits

Thanks to everyone who directly contributed to this release:

  • The Bitcoin Core Developers
  • Adrian Gallagher
  • aunyks
  • coblee
  • cryptonexii
  • EP1JUNE
  • gabrieldov
  • iamkubi
  • jmutkawoa
  • Martin Smith
  • NeMO84
  • OlegKozhemiakin
  • ppm0
  • romanornr
  • shaolinfry
  • spl0i7
  • stedwms
  • ultragtx
  • VKoskiv
  • voidmain
  • wbsmolen
  • xinxi

And to those that reported security issues:

  • awemany (for CVE-2018–17144, previously credited as “anonymous reporter”)
v0.16.3
69fce74
Compare
Choose a tag to compare

Litecoin Core version 0.16.3 is now available from:

https://download.litecoin.org/litecoin-0.16.3/

This is a new minor version release, with various bugfixes
as well as updated translations.

Please report bugs using the issue tracker at GitHub:

https://github.com/litecoin-project/litecoin/issues

To receive security and update notifications, please subscribe to:

https://groups.google.com/forum/#!forum/litecoin-dev

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely
shut down (which might take a few minutes for older versions), then run the
installer (on Windows) or just copy over /Applications/Litecoin-Qt (on Mac)
or litecoind/litecoin-qt (on Linux).

The first time you run version 0.15.0 or newer, your chainstate database will be converted to a
new format, which will take anywhere from a few minutes to half an hour,
depending on the speed of your machine.

Note that the block database format also changed in version 0.8.0 and there is no
automatic upgrade code from before version 0.8 to version 0.15.0 or higher. Upgrading
directly from 0.7.x and earlier without re-downloading the blockchain is not supported.
However, as usual, old wallet versions are still supported.

Downgrading warning

Wallets created in 0.16 and later are not compatible with versions prior to 0.16
and will not work if you try to use newly created wallets in older versions. Existing
wallets that were created with older versions are not affected by this.

Compatibility

Litecoin Core is extensively tested on multiple operating systems using
the Linux kernel, macOS 10.8+, and Windows Vista and later. Windows XP is not supported.

Litecoin Core should also work on most other Unix-like systems but is not
frequently tested on them.

Notable changes

Denial-of-Service vulnerability

A denial-of-service vulnerability exploitable by miners has been discovered in
Litecoin Core versions 0.14.0 up to 0.16.2. It is recommended to upgrade any of
the vulnerable versions to 0.16.3 as soon as possible.

0.16.3 change log

Consensus

  • bitcoin#14249 696b936 Fix crash bug with duplicate inputs within a transaction (TheBlueMatt, sdaftuar)

Credits

Thanks to everyone who directly contributed to this release:

  • The Bitcoin Core Developers
  • Adrian Gallagher
  • aunyks
  • coblee
  • cryptonexii
  • gabrieldov
  • jmutkawoa
  • Martin Smith
  • NeMO84
  • ppm0
  • romanornr
  • shaolinfry
  • spl0i7
  • stedwms
  • ultragtx
  • VKoskiv
  • voidmain
  • wbsmolen
  • xinxi

And to those that reported security issues:

  • beardnboobies
v0.16.0rc1
3567eff
Compare
Choose a tag to compare

v0.16.0rc1

Pre-release
Pre-release
v0.16.0rc1
v0.15.1
0b47699
Compare
Choose a tag to compare
v0.15.1rc1
Compare
Choose a tag to compare

v0.15.1rc1

Pre-release
Pre-release
v0.15.1rc1
v0.15.0.1rc1
303b13b
Compare
Choose a tag to compare

v0.15.0.1rc1

Pre-release
Pre-release