Starlight: Payment channels on Stellar

Interstellar is pleased to announce a preview release of Starlight, an implementation of bidirectional payment channels on Stellar. Payment channels allow parties to transact privately, instantly, and securely, while paying zero fees.

Normally, making a payment on a network like Stellar involves publishing details of the payment to all observers, paying a small fee, and waiting for the network to reach consensus and confirm the payment.

A payment channel, on the other hand, uses the network to “lock up” some funds for use by the channel’s participants. They may then pay each other these funds without further involving the network. Such payments are thus private, instant, and free.

The security of the channel is ensured by special information exchanged between the participants with each payment. This information includes signed Stellar transactions that are not published to the network until one party chooses to close the channel. When the channel is closed, these “settlement transactions” send to each party’s Stellar account their respective share of the balance, taking into account the channel’s history of payments back and forth.

Only the final settlement balances are revealed to the network when the channel closes. All other activity in the channel remains private and known only to its participants.

Starlight payment channels are analogous to the Bitcoin payment channels used in the Lightning Network. As we extend the Starlight project to support not only payment channels but also multi-hop payments across those channels, we plan to build in compatibility with other payment-channel networks, such as Lightning and Interledger.

A demonstration of the Starlight wallet

This preview release supports bilateral channels (channels with exactly two participants). It includes the Starlight payment channel software as well as a built-in wallet application. It allows transacting in lumens only (the native asset of the Stellar network). Future versions will support any asset issued on the Stellar network.

This is an early demo release, and you should expect bugs as well as frequent incompatible upgrades. Until we work out the kinks, Starlight connects only to the Stellar testnet, not the mainnet, to eliminate the risk of losing real funds to a software bug. Please do not attempt to use this application with the Stellar mainnet.

You can download the Starlight application, read the source code, and try the demo here. You can learn more about the Starlight payment channel protocol by reading the specification.

Thank you to Jeremy Rubin, Jed McCaleb, Nicolas Barry, David Mazières, Akash Khosla, and others for inventing and developing the designs for payment channels on the Stellar protocol.