You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The reason will be displayed to describe this comment to others. Learn more.
Hi @massimoalbarello, in order to create a signature share, the signature request first needs to be matched with a pre-signature quadruple.
Previously, this matching was done by the block maker; it would find new signature requests in the state, match them with available pre-signatures, and write the result into the block payload. Once the block is finalized we can be sure the matching was done correctly and start creating signature shares.
In the new implementation, we instead deliver these pre-signatures to execution whenever they become available, and match them with incoming signature requests as soon as they arrive. This way, we can simply look at the latest state to find matched signature requests that we can create shares for, instead of having to wait for an additional finalized block on top of that state.
65d3fca
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hello @eichhorl, is there an intuitive reason why retrieving the signature inputs in this way improves latency?
65d3fca
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @massimoalbarello, in order to create a signature share, the signature request first needs to be matched with a pre-signature quadruple.
Previously, this matching was done by the block maker; it would find new signature requests in the state, match them with available pre-signatures, and write the result into the block payload. Once the block is finalized we can be sure the matching was done correctly and start creating signature shares.
In the new implementation, we instead deliver these pre-signatures to execution whenever they become available, and match them with incoming signature requests as soon as they arrive. This way, we can simply look at the latest state to find matched signature requests that we can create shares for, instead of having to wait for an additional finalized block on top of that state.