Announcing our first Lightning mainnet release, lnd 0.4-beta!

Today, we at Lightning Labs are announcing the release of lnd 0.4-beta! This release marks the 4th major release of lnd and the first Lightning mainnet beta, an important milestone. With this release, lnd has gained a considerable feature set, deeper cross-implementation compatibility, a new specialized wallet seed, comprehensive fault-tolerance logic, a multitude of bug fixes, and much more! This release is also the first release of lnd that has the option to run on Bitcoin’s mainnet, with the safety, security, and reliability features necessary for real-world, real money usage.

Note that this release is intended for developers of future Lightning applications (Lapps) along with technical users and prospective routing node operators. In this early phase of Lightning, we’re focused on providing the software infrastructure (such as lnd!) necessary to bootstrap the network and serve as a platform for future applications, services, and businesses. As this is the first mainnet release of lnd, we recommend that users experiment with only small amounts (#craefulgang #craefulgang #craefulgang)!

If you’re interested in installing and testing lnd 0.4-beta, please visit our release page.

The maintainers of lnd would like to thank all the dedicated testers and 60+ contributors who helped make this release possible! We believe that lnd 0.4-beta is a big step in the development of the Lightning Network and will help make Bitcoin and other cryptocurrencies simpler, faster, safer, and more ubiquitous.

A few of the highlights (more detail can be found in the release notes):

  • bitcoind support - previous versions of lnd required the use of btcd. Now, users who prefer to run lnd with bitcoind can do so using the instructions here.

  • New seed format, deterministic keys - a new and improved key creation and recovery system makes it much easier to backup lnd nodes and also makes recovery from data loss or corruption simpler and more reliable. These improvements are also necessary for remote backup services, which will provide additional safety for Lightning users.

  • Vastly improved fault-tolerance - safety and security of user funds is of the utmost importance, and a great deal of effort has gone into making lnd secure and stable in the event of power failures, network failures, hardware failures, or other unexpected or adversarial conditions. Ensuring that necessary recovery information is stored at all times and can be correctly reloaded upon restart and reconnection to the Lightning Network has been a major undertaking for 0.4-beta.

  • Smarter Path-Finding - lnd 0.4-beta introduces improved management for constructing payment routes. This system, dubbed Mission Control, incorporates feedback from previous payment attempts to update a node’s view of the network in response to temporary bottlenecks or failures.

  • Automated Contract Resolution - sweeping funds back into a user’s wallet is now handled by a concert of subsystems that together decide how and when to spend all output types generated by an operating channel. Making this process automated, fault-tolerant, and intelligent has demanded an immense amount of effort, but is critical to the safety of funds managed by lnd. As an aside, you’ll be happy to know that lnd batches transactions wherever possible ;)

  • Segwit only - lnd has removed support for now-obsolete P2PKH addresses, favoring both native Segwit and P2SH. As a result, all transactions, even regular on-chain transactions, will benefit from lower fees and will be healthier for the network.

  • Routing node metrics - lnd now provides tools to track fees and payments at high volume, which is of particular interest to those operating transaction routing nodes. Tools such as these can be used to optimize revenue, throughput and reliability. Let the gamification begin!

NOTE: This release of lnd contains several breaking changes. In other words, any previous lnd mainnet installations are not compatible with the beta. As a result, users will need to upgrade using a completely fresh installation or remove their existing channel.db database file before upgrading. As a courtesy, we recommend that users close out any existing channels (cooperatively if the peer is online, or force close otherwise) before upgrading. A new utility command in the command-line interface, lncli closeallchannels has been added to streamline this process.

Beyond Beta

lnd-0.4 beta is a huge accomplishment by many engineers, testers, and users around the world, but it’s the very beginning for the Lightning Network. As users begin to experiment with Lightning and as the network begins to grow, we’ll be working on a number of key infrastructure components that will contribute to the instant, user-friendly experience Lightning can bring to Bitcoin and other cryptocurrencies.

  • Watchtowers and backups - to provide maximum safety for the funds of Lightning users, “watchtowers” will monitor the blockchain for invalid channel transactions. Typically, Lightning nodes need to be online in order to protect against these events, but watchtowers provide this protection for nodes that have intermittent connectivity, e.g. mobile phones. Even for connected nodes, watchtowers can serve as a secondary line of defense in the face of unplanned service outages.

  • Atomic Multipath Payments (AMP) - allow large Lightning transactions to be divided into a series of smaller transactions as they’re sent over the Lightning Network, but in such a way that they’re automatically joined back together. The user sees only the total amount of the transaction, without needing to be aware that AMP is being used behind the scenes. AMPs also ease the mental burden of using channels, allowing a user to interpret their balance readily as the sum of balances in channels. This is made possible by the ability to send and receive an AMP-like payment over multiple channels, at both source or sink.

  • Desktop and mobile apps - lnd-0.4 beta is targeted at technical users, but we believe Lightning Apps that are simple and intuitive for non-technical users will be essential to the growth of the network. To that end, we’ll be updating our alpha Lightning App to be compatible with lnd-0.4 beta over the coming weeks, and will follow with mobile versions as well.

  • Routing node tools and guides - more advanced Lightning users may want to support the network while earning fees with their bitcoin by running routing nodes. New tools and additions to lnd will help routing node operators optimize revenue, maximize uptime, and manage capital. A robust routing network is essential to the speed and privacy of Lightning, and we’ll be working with the community to facilitate the growth of the network..

  • Next-generation Autopilot and Mission Control - currently, lnd uses relatively simple heuristics for Autopilot (peer finding) and Mission Control (routing). These will be further optimized to provide a more reliable, faster user experience.

  • Cross-chain atomic swaps - cross-chain swaps enable instant, trustless exchange of assets residing on separate blockchains such as Bitcoin and Litecoin, without the systemic risk introduced by custodial exchanges. Lightning will enable more liquid exchanges, and cross-chain swaps will be a key component for decentralized exchange infrastructures.