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

MD-6: Suzuka Block Validation #6

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

l-monninger
Copy link
Contributor

MD/md-6/README.md Show resolved Hide resolved

**Justification**: <Why this is a significant or required desideratum>

**Recommendations**: <Any specific guidance or suggestions (optional)>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

recommendations makes it somewhat unclear what to put here. i would call this Guidance and suggestions:

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to be changed throughout. Do you want to put in a PR?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes can take care of this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added it to the template to make this a consideration for future MDs and MIPs.
See #10

- Causality

### D2: Accept Only Blocks Signed by Staked Validators
**User Journey**: A staked Suzuka Validator is the only entity that can submit blocks to the network which will later be processed by the Aptos executor.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So the sequencer is a validator? what are the tasks of the validator?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, the sequencer is staked, so that it can penalized, the simplest route for which is to just make it also required to be a validator

**Justification**: This will prevent DOS attacks on the network by requiring a stake to submit blocks.

**Recommendations**:
- Be sure to consider what is lost in this approach. For example, currently, a developer could bypass a Suzuka Full Node an submit directly to the DA--allowing them to avoid any potential censorship. This would be lost in a naive implementation of this approach, as they would be required to either (a) submit via a full-node or (b) stake themselves.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

developer --> user?
the meaning of "lost" here is rather confusing. Do you mean that the approach fails to cover this case? Are a) and b) covered by this approach and are of no concern anymore?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, "user" is better.

How about...

Requiring stake makes the DA permissioned. That is--while anyone would be able stake in MCR for the next epoch--within in an epoch, only stakers would be able to actually submit blocks to the DA. This potentially positions stakers to censor transactions.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes this sounds clear

@l-monninger
Copy link
Contributor Author

This probably also needs a careful solution that can be included here: movementlabsxyz/movement#416

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

Successfully merging this pull request may close these issues.

2 participants