2021-08-04 01:55:18 +08:00
# Test format: BLS fast aggregate verify
2020-05-15 00:45:26 +08:00
Verify the signature against the given pubkeys and one message.
## Test case format
The test data is declared in a `data.yaml` file:
```yaml
input:
2021-08-06 16:39:35 +08:00
pubkeys: List[BLS Pubkey] -- list of input BLS pubkeys
2020-05-15 00:45:26 +08:00
message: bytes32 -- the message
2021-08-06 16:39:35 +08:00
signature: BLS Signature -- the signature to verify against pubkeys and message
output: bool -- true (VALID) or false (INVALID)
2020-05-15 00:45:26 +08:00
```
2021-08-06 16:39:35 +08:00
- `BLS Pubkey` here is encoded as a string: hexadecimal encoding of 48 bytes (96 nibbles), prefixed with `0x` .
- `BLS Signature` here is encoded as a string: hexadecimal encoding of 96 bytes (192 nibbles), prefixed with `0x` .
2020-05-15 00:45:26 +08:00
All byte(s) fields are encoded as strings, hexadecimal encoding, prefixed with `0x` .
2021-08-06 16:39:35 +08:00
## Condition
The `fast_aggregate_verify` handler should verify the signature with pubkeys and message in the `input` , and the result should match the expected `output` .