Skip to main content

Module certificate

Module certificate 

Source
Expand description

The private wire adapter for Tempo’s Simplex finalization certificates.

The pinned format is UInt(epoch) || UInt(view) || UInt(parent) || digest || vote || seed, with two compressed 48-byte MinSig signatures. The vote signs the whole proposal, while the seed signs only its epoch and view. Integers use Commonware’s unsigned varints, not fixed-width Ethereum quantities. Keep this adapter aligned with the pinned upstream definitions:

Re-exports§

use alloy_primitives::B256; 🔒
use alloy_primitives::Bytes; 🔒
use commonware_codec::FixedSize; 🔒
use commonware_codec::Write; 🔒
use commonware_codec::varint::MAX_U64_VARINT_SIZE; 🔒
use commonware_codec::varint::UInt; 🔒
use commonware_cryptography::bls12381::dkg::feldman_desmedt::Output; 🔒
use commonware_cryptography::bls12381::primitives::group::G1; 🔒
use commonware_cryptography::bls12381::primitives::group::Share; 🔒
use commonware_cryptography::bls12381::primitives::ops::threshold; 🔒
use commonware_cryptography::bls12381::primitives::variant::MinSig; 🔒
use commonware_cryptography::ed25519::PublicKey; 🔒
use commonware_parallel::Sequential; 🔒

Constants§

MAX_CERTIFICATE_BYTES 🔒

Functions§

encode 🔒
Signs a proposal with the local 1-of-1 committee and encodes its finalization certificate.