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

ADR 011 - Optimistic Blob Size Independent Inclusion Proofs and PFB Fraud Proofs #1040

Merged
merged 8 commits into from
Dec 14, 2022

Conversation

nashqueue
Copy link
Member

@nashqueue nashqueue commented Nov 18, 2022

Overview

This PR Looks at the possibility to use pfd-transactions for message inclusion proofs. It also introduces pfd-fraud-proofs.

rendered

IMPORTANT:
PRs should be left in Draft until the below checklist is completed.
-->

  • New and updated code has appropriate documentation
  • New and updated code has new and/or updated testing
  • Required CI checks are passing
  • Visual proof for any user facing features like CLI or documentation updates
  • Linked issues closed with keywords

Copy link
Collaborator

@rootulp rootulp left a comment

Choose a reason for hiding this comment

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

Sorry for prematurely reviewing a draft PR, I get excited when I see your ADRs

@nashqueue nashqueue changed the title ADR 010 - Optimistic Message Size Independent Inclusion Proofs and PFD Fraud Proofs ADR 011 - Optimistic Blob Size Independent Inclusion Proofs and PFD Fraud Proofs Nov 24, 2022
@nashqueue nashqueue marked this pull request as ready for review November 24, 2022 16:09
@rootulp rootulp changed the title ADR 011 - Optimistic Blob Size Independent Inclusion Proofs and PFD Fraud Proofs ADR 011 - Optimistic Blob Size Independent Inclusion Proofs and PFB Fraud Proofs Nov 24, 2022
@evan-forbes evan-forbes added the ADR item is directly relevant to writing or modifying an ADR label Nov 24, 2022
Copy link
Collaborator

@rootulp rootulp left a comment

Choose a reason for hiding this comment

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

My feedback is mostly questions for me to better understand

@musalbas
Copy link
Member

musalbas commented Nov 30, 2022

Here's my attempt at a tl;dr of this:
Instead of light clients verifying that a commitment was inside the data root, they simply check if there's a PFB with that commitment, and rely on fraud proofs if 2/3 of validators included invalid PFBs. The fraud proof is a Merkle proof of the expected subroot locations in the data root, which you can check don't match the PFB's commitment.

This doesn't require any consensus-critical changes to celestia-core/app though however, right? Also the fraud proof could be done on the rollup/rollmint level.

@nashqueue
Copy link
Member Author

nashqueue commented Dec 14, 2022

@evan-forbes The ADR does not change core because we declined on doing optimization 1 & 2 as it is not that good for a tradeoff for the effort. That's why there is no blocker in merging this imo.

@rootulp rootulp merged commit cc6f68d into celestiaorg:main Dec 14, 2022
@nashqueue nashqueue deleted the pfd-proofs-fraud branch December 15, 2022 00:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ADR item is directly relevant to writing or modifying an ADR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants