Skip to main content

Address Types

The Evolution SDK implements all Cardano address formats as defined in the ledger specification. This section documents the serialization and deserialization of each address type.

SDK Architecture

Evolution SDK provides two interfaces for working with addresses:

Core Address Module (Address): A unified API for common address operations.

  • Handles Payment Credential + Optional Staking Credential
  • Automatically serializes as Base Address (with staking) or Enterprise Address (without staking)
  • Simplifies most serialization tasks

Type-Specific Modules: Complete implementations for protocol compliance.

  • BaseAddress, EnterpriseAddress, RewardAddress, PointerAddress, ByronAddress
  • Required for exact CBOR encoding/decoding
  • Used for protocol-level operations and blockchain tooling

Address Format Specifications

Each address type encodes different credential combinations:

  • Payment Credential: Hash of payment verification key or script
  • Staking Credential: Hash of stake verification key or script

Format Comparison

Address TypePaymentStakingOn-Chain SizeBech32 PrefixHeader Bits
BaseYesYes57 bytesaddr/addr_test00000011
EnterpriseYesNo29 bytesaddr/addr_test01100111
RewardNoYes29 bytesstake/stake_test11101111
PointerYesPointerVariableaddr/addr_test01000101

Address Type Documentation

Detailed serialization specifications for each format: