Skip to content

Simplex QuorumCertificate and BLS aggregator #4091

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

Open
wants to merge 7 commits into
base: master
Choose a base branch
from
Open

Conversation

samliok
Copy link
Contributor

@samliok samliok commented Jul 16, 2025

Why this should be merged

Implements the simplex QuorumCertificate, QCDeserializer and SignatureAggregator interfaces. This allows simplex to parse, aggregate and verify quorum certificates(ex. finalizations and notarizations) during execution.

How this works

  • Builds on top of the BLSVerifier to handle BLS signatures and public keys.
  • The bytes of a QC are serialized with asn1

How this was tested

Added unit tests to bls_test.go.

Need to be documented in RELEASES.md?

no

@Copilot Copilot AI review requested due to automatic review settings July 16, 2025 13:52
@samliok samliok requested a review from StephenButtolph as a code owner July 16, 2025 13:52
Copilot

This comment was marked as outdated.


bytes, err := Codec.Marshal(CodecVersion, serializedQC)
if err != nil {
panic(fmt.Errorf("failed to marshal QC: %w", err))
Copy link
Contributor Author

Choose a reason for hiding this comment

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

todo: don't panic, update the simplex interface to allow an error return value

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

Successfully merging this pull request may close these issues.

2 participants