cardano-sl-0.4.3: Cardano SL main implementation

Safe HaskellNone




Constants used by algorithm. See paper for more details. Some constants are parsed at compile-time (see Type). Others are derived from those.



Constants mentioned in paper

networkDiameter :: Microsecond Source #

Estimated time needed to broadcast message from one node to all other nodes. Also see ccNetworkDiameter.

SSC constants

sharedSeedLength :: Integral a => a Source #

Length of shared seed.

mpcSendInterval :: Microsecond Source #

Length of interval during which node should send her MPC message. Relevant only for one SSC implementation. Also see ccMpcSendInterval.

Genesis constants

Other constants

maxLocalTxs :: Integral i => i Source #

Maximum amount of transactions we have in storage (i.e. we can accept without putting them in block). There're next kind of storages in our implementation:

  • temporary storage of transactions
  • utxo map that corresponds to it
  • utxo of blocks in history

This constant is size of first set. Also see ccMaxLocalTxs.

sysTimeBroadcastSlots :: Integral i => i Source #

Time-lord node announces system start time by broadcast. She does it during first ccSysTimeBroadcastSlots slots.

vssMaxTTL :: Integral i => i Source #

Max VSS certificate TTL (Ssc.GodTossing part)

vssMinTTL :: Integral i => i Source #

Min VSS certificate TTL (Ssc.GodTossing part)

recoveryHeadersMessage :: Integral a => a Source #

Maximum amount of headers node can put into headers message while in "after offline" or "recovery" mode. Should be more than blkSecurityParam.

messageCacheTimeout :: Integral a => a Source #

Timeout for caching system. Components that use caching on messages can use this timeout to invalidate caches.


lightDlgConfirmationTimeout :: Integral a => a Source #

Amount of time we hold confirmations for light PSKs.

Malicious activity detection constants

mdNoBlocksSlotThreshold :: Integral i => i Source #

Number of slots used by malicious actions detection to check if we are not receiving generated blocks.

mdNoCommitmentsEpochThreshold :: Integral i => i Source #

Number of epochs used by malicious actions detection to check if our commitments are not included in blockchain.

Update system constants