HORIZON HASKELLDocslts/ghc-9.14.xd82dee82026-10-12Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · d82dee8 · 2026-10-12

Modulekes-agent-1.3.0.0Haskell2010

Cardano.KESAgent.Processes.Agent.CommonActions

Common operations used inside the KES agent process.

  • 1 type
  • 18 values
  • Packagekes-agent-1.3.0.0
  • Exports19
  • LanguageHaskell2010
  • LicenceApache-2.0
  • SourceCommonActions.hs
valuealterBundle
  1. :: (MonadSTM m, MonadThrow m)
  2. => Agent c m fd addr
  3. -> String
  4. -> Maybe (TaggedBundle m c) -> m (Maybe (TaggedBundle m c), a)
  5. -> m a
#

Modify the bundle stored in a KES agent in a thread-safe manner. The key modification function takes and returns a Maybe, where Nothing means that there is no key; returning Nothing will erase the stored key. Broadcasting the key update (if appropriate), evolving the key to the current evolution, and securely erasing any old keys, is the responsibility of the caller. See Agent for explanations of how keys are stored in a KES agent.

valuevalidateBundle
  1. :: AgentContext m c
  2. => Agent c m fd add
  3. -> Bundle m c
  4. -> m (Either String ())
#

Validate a key bundle. This will validate the operational certificate in the bundle against the cold key configured for the agent, and a verification key derived from the signing key in the bundle.

valuepushKey
  1. :: AgentContext m c
  2. => Agent c m fd addr
  3. -> TaggedBundle m c
  4. -> m (PushKeyResult c)
#

Handle an incoming TaggedBundle. This will perform the following steps: - Validate the tagged bundle against the currently installed bundle, if any. If validation fails, abort. - Update the agent's active key store to hold the new bundle. - Enqueue the key update for broadcasting to connected clients.