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

Support proving share commitments #312

Open
rach-id opened this issue Jun 3, 2024 · 0 comments
Open

Support proving share commitments #312

rach-id opened this issue Jun 3, 2024 · 0 comments

Comments

@rach-id
Copy link
Member

rach-id commented Jun 3, 2024

Currently, the blobstream contracts implementations only support proving a set of shares' inclusion to a data root tuple root. This allows building rollups that leverage the sequence of spans design.

However, proving share commitments is still no supported. This means that rollups that use a blob share commitment to reference their data won't be able to prove its inclusion.

Furthermore, as outlined in the blobstream rollups documentation, using the sequence of spans approach is more beneficial. So, the share commitment approach will not be used and there is no need to support it. However, if there are new ways to build products that make use of the share commitment, it would be nice to discuss them in this issue and decide based on that.

In case we decided to do the implementation, the following will need to be done:

  1. The verification part of https://github.com/celestiaorg/nmt/pull/260/files, which include the implementation of ComputeSubtreeRoot(), VerifySubtreeRootInclusion(), ToLeafRanges() needs to be ported in solidity.
  2. The CommitmentProof along with its verification will also need to be ported from https://github.com/celestiaorg/blobstream-node-api/pull/1/files to solidity
  3. We will need to implement the ability to generate the share commitment from the subtree roots to be able to authenticate the proofs
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

No branches or pull requests

1 participant