Closed
Description
Why
We want to use a new beacon based on a chain point instead of an immutable file number when signing Cardano transactions.
What
Migrate the CardanoTransactions
signed entity type to use a ChainPoint
instead of ImmutableFileNumber
. A new associated open message is created at every n
blocks (value of n
needs to be a configuration parameter to be defined) with a fixed offset k'
(value of k'
needs to be a configuration parameter to be defined which represents the unofficial security parameter).
How
- Update the
CardanoTransactions
signed entity type to use aChainPoint
internally - Update the
TimePoint
to have aChainPoint
orBlockNumber
entry that represents the tip in the state machine of the aggregator - Compute the signed entity type with
block_number = ((tip.block_number - k') / n) * n
- Make
k'
andn
parameters configurable in the aggregator with default values:k'=3000
andn=100
(values can be adjusted) - Make
BlockScanner
of immutable files compute the upper bound on its own (try to get the latest immutable file number?) - Clean existing conversion between
ImmutableFileNumber
andBlockNumber
in the database repository - Adapt signature of
CardanoTransactions
to the new beacon - Adapt the
CardanoTransactionSnapshot
artifact to support the new beacon - Clean the artifacts for the Cardano transactions in the aggregator database with a new migration