Open Grant Proposal for Optimized Nitro State Channel Protocol #253
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A couple of months ago, during the EthGlobal hackathon, we got clued into the Filecoin Retrieval Market roadmap. Coincidentally, we were exploring some optimizations to the Nitro state channel protocol that seem well-suited to the strict latency requirements of the Retrieval Market. We'd therefore like to present one means of accelerating the pace of the payments-related milestones in the Filecoin retrieval roadmap — after optimizing Nitro protocol, it can be incorporated in the retrieval market through a few different strategies. Thus, we'd like to optimize and formally verify Nitro protocol, and update our existing EVM implementation.
We have also been investigating a more practical approach towards scaling Filecoin payments, through an FIP to add a new type of "Express Lane":
This approach may be less risky in the short-term, and we aim to spend some time evaluating this option in more detail. However, we are not yet familiar enough with Filecoin payment channels to understand how much work this project would take, so we are currently unprepared to submit a proposal to do this project.
Furthermore, each strategy comes with its own natural tradeoffs:
Using a wrapped FIL token in an EVM state channel implementation increases the complexity of the retrieval market architecture, by depending on more than one blockchain.
But, a wrapped FIL token allows the flexibility to
The current payment channel implementation on Filecoin appears to have a few drawbacks:
There is (apparently?) a limit on the number of lanes that can be opened.[e. apparently the limit has since been removed]Addressing these issues may require a significant rewrite of payment channels. If this is the case, it may be preferable to implement an optimized and formally verified generalized state channel protocol. It is then possible to implement lanes in a Nitro app, taking advantage of the optimized Nitro protocol.
An application-agnostic intermediary can enable more flexible payment structures between Alice & Bob, providing flexibility for novel incentives, at the consequence of some protocol complexity. This unlocks the ability to:
Therefore, we are currently promoting a more generalized approach, towards integration strategies such as:
We look forward to discussions on these ideas from the Filecoin team!