Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make batch submission permissionless #32

Open
jbearer opened this issue Aug 16, 2023 · 0 comments
Open

Make batch submission permissionless #32

jbearer opened this issue Aug 16, 2023 · 0 comments

Comments

@jbearer
Copy link
Member

jbearer commented Aug 16, 2023

Permissionless batch submission is an important part of our pitch, especially when it comes to escape hatches. The changes to the sequencer for Cortado will make batch submission possible, since the sequencer has no optionality: for every time window, there is a unique valid L2 batch induced by the output of the Espresso Sequencer during that time. However, batch submission will not be permissionless automatically: the calldata source in the derive pipeline still checks that the sender of a channel frame is the trusted batcher.

Naively removing this check may lead to some attacks. An adversary cannot get an invalid batch accepted, since the downstream stages of the derivation pipeline will detect any deviation from the HotShot block stream. But they might get a valid batch rejected by inserting some malicious frames into a channel started by somebody else. We need to, at least, ensure that only the sender that initiated a channel can send frames to that channel, even though there may be multiple channels open at the same time, and whichever one closes first with the unique valid batch will be accepted.

This work may overlap with some of the RFP work, so we should wait for that before pursuing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant