Create a channel-top-up
protocol
#1647
Labels
🏗️ Productionization
Things that need to be tackled for nitro to run in a production environment
✨ enhancement
New feature or request
on-chain-protocol
There is currently no way for running ledger channels to be topped up. Topups are desirable because they are generally cheaper than finalizing a channel, disbursing its assets, and opening a new channel via a L1 deposit.
Protocol at a glance:
L(X, Y)
between participants X and Y.X
as the topper-upper (ie, the person who executes the L1 deposit to add funds)t
X: t
as the final outcome item{ X: x, Y: y, [someGuarantees]..., X: t}
Deposited(L(X,Y).channelID, t)
eventX: t
outcome item back into the previously existingX
outcome item{ X: x+t, Y: y, [someGuarantees}... }
Implementation Details
An ideal implementation of this protocol would leave the ledger channel usable for regular operations while the top-up is being run. Waiting on an on-chain event necessarily makes this a slow operation, but ledger channels are depended on for the faster, off-chain virtual fund and defund operations.
the
consensus_channel
implementation of ledger channels has customized representation of ledger outcomes:and conversions to and from canonical Exit-Format representation:
The text was updated successfully, but these errors were encountered: