cardano/certificate

Types

An on-chain certificate attesting of some operation. Publishing certificates triggers different kind of rules; most of the time, they require signatures from specific keys.

Constructors

  • RegisterCredential { credential: Credential, deposit: Never }

    Register a stake credential with an optional deposit amount. The deposit is always present when using the new registration certificate format available since the Conway era.

    .deposit

    The deposit ought to be an Option<Lovelace>, but due to unfortunate circumstances it will always be instantiated to None even when set in the host transaction. This is what the Never type captures here.


  • UnregisterCredential { credential: Credential, refund: Never }

    Un-Register a stake credential with an optional refund amount The deposit is always present when using the new de-registration certificate format available since the Conway era.

    .refund

    The refund ought to be an Option<Lovelace>, but due to unfortunate circumstances it will always be instantiated to None even when set in the host transaction. This is what the Never type captures here.


  • DelegateCredential { credential: Credential, delegate: Delegate }

    Delegate stake to a Delegate.

  • RegisterAndDelegateCredential {
      credential: Credential,
      delegate: Delegate,
      deposit: Lovelace,
    }

    Register and delegate staking credential to a Delegatee in one certificate.

  • RegisterDelegateRepresentative {
      delegate_representative: Credential,
      deposit: Lovelace,
    }

    Register a delegate representative (a.k.a DRep). The deposit is explicit and is refunded when the delegate steps down (unregister).

  • UpdateDelegateRepresentative { delegate_representative: Credential }

    Update a delegate representative (a.k.a DRep). The certificate also contains metadata which aren’t visible on-chain.

  • UnregisterDelegateRepresentative {
      delegate_representative: Credential,
      refund: Lovelace,
    }

    UnRegister a delegate representative, and refund back its past deposit.

  • RegisterStakePool { stake_pool: StakePoolId, vrf: VerificationKeyHash }

    Register a new stake pool

    .stake_pool

    The hash digest of the stake pool’s cold (public) key


    .vrf

    The hash digest of the stake pool’s VRF (public) key


  • RetireStakePool { stake_pool: StakePoolId, at_epoch: Int }

    Retire a stake pool. ‘at_epoch’ indicates in which the retirement will take place

  • AuthorizeConstitutionalCommitteeProxy {
      constitutional_committee_member: Credential,
      proxy: Credential,
    }

    Authorize a Hot credential for a specific Committee member’s cold credential

  • RetireFromConstitutionalCommittee {
      constitutional_committee_member: Credential,
    }

    Step down from the constitutional committee as a member.

A type of stake delegation that can be either block-production, vote or both. Note that delegation types aren’t cancelling one another, so it is possible to delegate block production in one transaction, and delegate vote in another. This second delegation does NOT invalidate the first one.

Constructors

  • DelegateBlockProduction { stake_pool: StakePoolId }
  • DelegateVote { delegate_representative: DelegateRepresentative }
  • DelegateBoth {
      stake_pool: StakePoolId,
      delegate_representative: DelegateRepresentative,
    }

Constructors

  • Registered(Credential)
  • AlwaysAbstain
  • AlwaysNoConfidence

Alias

StakePoolId = Hash<Blake2b_224, VerificationKey>
Search Document