As of now, multi-sigs are created on every Request. But if there are no Requests in a pool, then the state and multi-signatures may become outdated.
So, a Primary needs to initiate re-signing of the same state periodically to have up-to-date state (for the latest pool ledger).
It will help to solve two problems:
- Have up-to-date multi-signature (with the latest timestamp)
- Have multi-signature for the latest pool ledger (the client can use the latest pool ledger in most of the cases)
All states (for all ledgers) need to be re-signed periodically.
- Implement periodic BLS re-signing of all states (for all ledgers). It can be done via existing PrePrepare msg, or via a new message (decide when creating a PoA).
- Re-sign period needs to be configurable (config file for now). Default is 1 min.
- It should be possible to disable/enable the feature in config.
- An INFO level log message is issued which states "Freshness was updated through consensus."