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.