Are there any discussions, examples or documentation exploring layer two solutions using offline transaction updates? Generally speaking, these would be payment channels as implemented in the Lightning Network (PDF) or specified in the Eltoo white paper (PDF). I’m keen to discuss with others designing similar solutions on Algorand using ACS, multisig accounts, atomic transfers, etc.
Ryan, Given the TPS speed, finality and low transaction fee for on-chain transaction I don’t see any point in using layer 2 solutions. Will be good to know if you find any use case for which layer 2 will be useful. We are exploring solutions specific to ASC and atomic transfer but all takes place directly on-chain. Definitely interested in discussing and collaborating.
For me, the importance of L2 solutions is largely focused on processing transaction updates offline at a much higher rate than a L1 blockchain can perform its settlement function. My favorite example is the Interledger Protocol (ILP) which allows for trust minimized streaming payments routed through disperate ledger systems at speeds independent of the underlying L1 protocol and settlement transaction finality.
The Interledger network implements protocol as a routed network of Connectors, each maintaining L2 payment channels to their peers. A sender may entrust a single upstream Connector with a tiny amount of money to route toward the intended recipient. If the recipient receives this payment a receipt is send back to the sender as proof and a now larger amount may be trusted to send. Repeat this process until the full amount has been streamed, all offline in L2 payment channels. Timelocks prevent stealing routed payments. When any party desires to close their payment channel with a peer, they post the most recent L2 update transaction to the L1 and receive their money.
I’m keen to hear how others envision L2 on Algorand.
Interesting idea. But how can features like the Bitcoin Lightning Network be created in the Algorand Network? I mean, e.g. with the 1000 block window, with the lack of network messages?
Anyway, if (and when) Algo gets successful, and will have millions of txn/hour, these L2 constructs will be essential.
Why should I post hundreds of microtranssactions (e.g. for being consumer of a video library) instead of using Lightning Network possibilities?
I’m investigating the use of a multisig escrow account (MEA) holding X + Y + Fees, a close contract TEAL program (CC) to trigger a closeout and a series of negotiated state TEAL programs (NS) which update the payouts to A & B. All of the TEAL programs are created cooperatively by A & B and retained offline to form an L2 solution. Only at funding, closeout (allowing dispute) or timeout will online transactions be presented. I’m still early in my design, so I’ll share more details in the near future. I’m still looking for any L2 examples on Algorand to vet my concept against.
@Maugli I like your example of the video library. Let’s consider the video content owner desires (and has the rights) to sell access to their inventory for per second viewing rather than per title or per month. I’m not aware of a globally distributed blockchain capable of providing settlement to allow this scenario, but an L2 solution should be able to accomplish this by allowing the viewer to update a payment channel offline and the content provider to stream until updates cease, then settle on chain for payment of delivered content.