ceremonyclient/node/crypto/inclusion_prover.go
2025-01-21 16:15:35 -06:00

40 lines
717 B
Go

package crypto
import "source.quilibrium.com/quilibrium/monorepo/node/protobufs"
type InclusionCommitment struct {
TypeUrl string
Data []byte
Commitment []byte
}
type InclusionAggregateProof struct {
InclusionCommitments []*InclusionCommitment
AggregateCommitment []byte
Proof []byte
}
type InclusionProver interface {
Commit(
data []byte,
polySize uint64,
) ([]byte, error)
VerifyFrame(frame *protobufs.ClockFrame) error
CommitRaw(
data []byte,
polySize uint64,
) ([]byte, error)
ProveRaw(
data []byte,
index int,
polySize uint64,
) ([]byte, error)
VerifyRaw(
data []byte,
commit []byte,
index int,
proof []byte,
polySize uint64,
) (bool, error)
}