The Lightning Network is by far the most popular second layer scaling solution for bitcoin. Not without good reason, it offers users the ability to move small amounts of satoshis around for next to no cost with instant settlement making daily purchases practical, as well as options like streaming funds. The Lightning Network unlocks a programmable second layer that provides developers with far more freedom, and we’re seeing so much innovation in this growing ecosystem, such as lapps.
Lightning has provided a host of additional features for bitcoin users, but it is not without its limitations. Creating channels and managing channels is still a pretty complex process for most of us and adds extra cost to using Lightning.
Ideas to make the transition between the Lightning Network and the base chain are in motion to make it faster and more efficient by reducing the number of times the Lightning Network payment channel must interact with the bitcoin blockchain.
One of these proposed upgrades is known as Eltoo.
The LN-penalty protocol
The Lightning Network is made up of a mesh of payment channels that allow users to transact with one another without bogging down Bitcoin’s blockchain.
What is not well known about the network is that it that every feature of the Lightning Network—payment channels, penalty transactions, watchtowers, etc.—is a stack of individual and interchangeable protocols.
As the Lightning network evolves over time, improvements will be made to individual protocols rather than in bulk, and there will be different protocol implementations, all with their pros and cons.
The current version of Lightning Network runs on the oldest form of payment channel protocol, known as the LN-Penalty protocol. In this version, transactions may look something like this:
- Alice and Bob deposit funds into a channel and begin transacting with one another off-chain.
- When one or both of them are ready to close the channel, they broadcast the most recent channel balance to the Bitcoin blockchain.
- A final on-chain transaction occurs, marking the channel closed, and funds are distributed according to the channel balance broadcast.
LN-penalty protocol in practice
But what if Bob gets brave and doesn’t broadcast the most recent channel balance, and instead attempts to broadcast an older, more favourable state?
As long as Alice notices Bob’s intent and then broadcasts the correct state (AKA the “Justice Transaction”), the LN-Penalty protocol will penalise Bob, causing him to forfeit his portion of the channel funds to Alice.
This penalty is often a sufficient deterrent to malicious actors, but there are two major issues:
- The Lightning Network is still a relatively new technology, so human error and software bugs aren’t uncommon occurrences. Either of these may result in a premature channel closure with no malicious intent, enforcing a harsh penalty when uncalled for.
- The LN-Penalty protocol can make for an overly technical user experience when it comes to manual channel implementation and node maintenance. If we want to see mainstream adoption of Bitcoin and Lightning, friendlier user experiences are a must.
What is Eltoo?
Eltoo is a play on the term layer two and is pronounced as “L2″— and is a proposed upgrade to Bitcoin network specifically to the LN-penalty protocol with the goal of improving the Lightning Network.
Eltoo would implement these upgrades by introducing a new sighash flag called SIGHASH_NOINPUT to the Bitcoin protocol. The new sighash flag would allow a Bitcoin signature to commit to a transaction without specifying the txid of the input.
Leaving the txid unspecified enables greater flexibility for transactions. It means descendant transactions can be signed before their ancestors are published to the blockchain.
Eltoo in practice
For example, if Alice and Bob open a Lightning channel, they first sign a funding transaction, which sends bitcoin to a 2-of-2 multi-sig address. Once the channel is open, Alice and Bob make a series of update transactions, which spend the funds in the 2-of-2 multi-sig address. When Alice and Bob wish to close the channel, they must sign a settlement transaction to do so.
Without eltoo, each transaction in this process can only be signed once the previous one has been created. With eltoo, the settlement transaction can be signed at the same time as the funding transaction. This eliminates the need for the Lightning Network penalty, significantly simplifying the Lightning Network’s double-spend protection.
What are the benefits of Eltoo payment channels?
There are several benefits of Eltoo in the Lightning Network, and there are benefits beyond Lightning too:
- Eltoo payment channels are easier to implement than Poon-Drjya channels, which are difficult to implement and require extra data for implementation in the lightning nodes.
- For the end-user, Eltoo channels will make the setup, implementation, and maintenance of lightning nodes easier.
- Eltoo channels are more flexible channels where you need not have a penalty mechanism.
- Beyond Lightning, Eltoo will make multiparty off-chain contracts possible for any number of participants, which is currently only possible for up to seven participants.
- It provides positive outcomes for good actors, whereas there is no incentive for bad actors even if they misbehave.
Eltoo won’t be avialable for some time.
If you think this upgrade is around the corner, I am sorry to disappoint you, but it’s been put on the back burner. Eltoo is yet far from implementation, but the building blocks have been laid for it. Previous upgrades like Schnorr signatures, MAST, & Taproot, all add additional scripting changes, which will make Eltoo channels a reality on the Lightning Network.
You can read more about Eltoo in the whitepaper