LeanVM multisig vs Lighthouse BLS

Current performance of the LeanVM-backed multisignature implementation beside the BLS implementation used by Lighthouse. Each successful run replaces its suite’s previous result.

Fast operations

Raw signature operations without aggregation.

Loading…

Loading current fast results…

Key creation and aggregate proofs

Long-lived key generation plus full LeanVM proof generation and verification beside Lighthouse BLS.

Loading…

Loading current slow results…

What the benchmark names mean

For same-claim rows, size is the number of signers. For distinct-claim rows, it is the number of signer-and-message pairs. Mixed-claim rows state both the total signature count and the number of claims.

Same-claim aggregation
Many independent signers sign the same claim: the identical message and slot. LeanVM checks those signatures in the zkVM and produces a proof; Lighthouse combines the BLS signatures into one signature.
Same-claim verification
Checks the LeanVM proof or aggregate BLS signature against that one message and the complete set of signers.
Recursive same-claim aggregation
Combines 2, 4, 8, or 16 pre-built LeanVM proofs into one new proof. Every child represents 512 different signers of the same claim—the identical message and slot—and signer sets are disjoint between children. Timing excludes creation of the child proofs but includes validating them and producing the new recursive proof.
Distinct-claim aggregation
Combines signatures when each signer signed a different message.
Distinct-claim verification
Checks the aggregate against every signer-and-message pair. The “conceptual” Lighthouse row uses its non-production aggregate-verify path.
Mixed-claim aggregation
Combines 512 signatures covering either 8 claims (64 signers per claim) or 16 claims (32 signers per claim). LeanVM automatically groups equal claims, proves each group, and merges the results into one proof.
Mixed-claim verification
Checks one LeanVM proof against every claim and its signer set. For BLS, the benchmark groups the same public keys per claim and verifies one aggregate signature against either 8 or 16 message-and-key groups.
Independent signature verification
Checks a set of separate signer-and-message tuples. LeanVM verifies each raw XMSS signature; Lighthouse verifies the equivalent BLS tuples together with its production batch-verification API.
Proof size and signature size
The LeanVM proof size is the serialized zkVM proof produced by aggregation. The Lighthouse value is the serialized aggregate BLS signature.
Serialized artifact sizes
Storage or wire-encoding sizes, not in-memory object sizes. The key-generation row uses a LeanVM secret key covering 220 signing slots.
Key creation
Generates a new LeanVM XMSS key covering 1,048,576 signing slots, or a new Lighthouse BLS secret key. BLS keys do not precompute a slot-lifetime Merkle tree.
Suite peak RSS
The maximum physical memory used by the complete slow-suite process. It is not measured separately for each row.