Skip to content

Commit 6661a38

Browse files
committed
fix: update aggregation API signature
1 parent 78de4a7 commit 6661a38

File tree

4 files changed

+12
-11
lines changed

4 files changed

+12
-11
lines changed

packages/testing/src/consensus_testing/keys.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -333,13 +333,13 @@ def build_attestation_signatures(
333333

334334
# If the caller supplied raw signatures and any are invalid,
335335
# aggregation should fail with exception.
336-
payload = aggregate_signatures(
336+
aggregated_signature = aggregate_signatures(
337337
public_keys=public_keys,
338338
signatures=signatures,
339339
message=message,
340340
epoch=epoch,
341341
)
342-
proof_blobs.append(LeanAggregatedSignature(data=payload))
342+
proof_blobs.append(aggregated_signature)
343343

344344
return AttestationSignatures(data=proof_blobs)
345345

src/lean_spec/subspecs/containers/block/block.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ def verify_signatures(
192192
try:
193193
verify_aggregated_payload(
194194
public_keys=public_keys,
195-
payload=bytes(aggregated_signature),
195+
payload=aggregated_signature,
196196
message=attestation_data_root,
197197
epoch=aggregated_attestation.data.slot,
198198
)

src/lean_spec/subspecs/containers/state/state.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -640,13 +640,13 @@ def _aggregate_signatures_from_gossip(
640640
sigs.append(sig)
641641
pks.append(self.validators[vid].get_pubkey())
642642

643-
payload = aggregate_signatures(
643+
aggregated_signature = aggregate_signatures(
644644
public_keys=pks,
645645
signatures=sigs,
646646
message=data_root,
647647
epoch=epoch,
648648
)
649-
return LeanAggregatedSignature(data=payload)
649+
return aggregated_signature
650650

651651
def _common_block_payload(
652652
self,

src/lean_spec/subspecs/xmss/aggregation.py

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from lean_spec.subspecs.xmss.containers import PublicKey
1717
from lean_spec.subspecs.xmss.containers import Signature as XmssSignature
1818
from lean_spec.types import Uint64
19+
from lean_spec.types.byte_arrays import LeanAggregatedSignature
1920

2021

2122
class LeanMultisigError(RuntimeError):
@@ -33,7 +34,7 @@ def aggregate_signatures(
3334
signatures: Sequence[XmssSignature],
3435
message: bytes,
3536
epoch: Uint64,
36-
) -> bytes:
37+
) -> LeanAggregatedSignature:
3738
"""
3839
Aggregate XMSS signatures using lean-multisig.
3940
@@ -44,7 +45,7 @@ def aggregate_signatures(
4445
epoch: The epoch in which the signatures were created.
4546
4647
Returns:
47-
Raw bytes of the aggregated signature payload.
48+
LeanAggregatedSignature of the aggregated signature payload.
4849
4950
Raises:
5051
LeanMultisigError: If lean-multisig is unavailable or aggregation fails.
@@ -63,7 +64,7 @@ def aggregate_signatures(
6364
epoch,
6465
test_mode=True,
6566
)
66-
return aggregated_bytes
67+
return LeanAggregatedSignature(data=aggregated_bytes)
6768
except Exception as exc:
6869
raise LeanMultisigAggregationError(f"lean-multisig aggregation failed: {exc}") from exc
6970

@@ -72,7 +73,7 @@ def aggregate_signatures(
7273
# which might additionally require hints.
7374
def verify_aggregated_payload(
7475
public_keys: Sequence[PublicKey],
75-
payload: bytes,
76+
payload: LeanAggregatedSignature,
7677
message: bytes,
7778
epoch: Uint64,
7879
) -> None:
@@ -81,7 +82,7 @@ def verify_aggregated_payload(
8182
8283
Args:
8384
public_keys: Public keys of the signers, one per original signature.
84-
payload: Raw bytes of the aggregated signature payload.
85+
payload: LeanAggregatedSignature of the aggregated signature payload.
8586
message: The 32-byte message that was signed.
8687
epoch: The epoch in which the signatures were created.
8788
@@ -97,7 +98,7 @@ def verify_aggregated_payload(
9798
verify_aggregated_signatures_py(
9899
pub_keys_bytes,
99100
message,
100-
payload,
101+
payload.encode_bytes(),
101102
epoch,
102103
test_mode=True,
103104
)

0 commit comments

Comments
 (0)