Consensys/gpact

Multi-signature messaging layer encoding update to be compatible with EEA draft specification

drinkcoffee opened this issue · 2 comments

The EEA draft messaging layer specification is here:
https://entethalliance.github.io/crosschain-interoperability/draft_crosschain_techspec_messaging.html

The encoding of multiple signatures has been updated to add a type field and a meta field. This codebase should be updated to be compatible with the draft specification.

pragma solidity >=0.8;
struct Signature {
uint256 by;
uint256 sigR;
uint256 sigS;
uint8 sigV;
bytes meta;
}
struct Signatures {
uint16 typ;
uint16 numberOfSignatures;
Signature[] signatures;
}

The EEA spec will be updated to have the typ field as a uint256 and remove the numberOfSignatures field.

Resolved by #145