AddressesAddress Types
Address Types
Comprehensive guide to all Cardano address types and formats
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 (Core.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.
Core.BaseAddress,Core.EnterpriseAddress,Core.RewardAddress,Core.PointerAddress,Core.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 Type | Payment | Staking | On-Chain Size | Bech32 Prefix | Header Bits |
|---|---|---|---|---|---|
| Base | ✓ | ✓ | 57 bytes | addr/addr_test | 0000xxxx |
| Enterprise | ✓ | ✗ | 29 bytes | addr/addr_test | 0110xxxx |
| Reward | ✗ | ✓ | 29 bytes | stake/stake_test | 1110xxxx |
| Pointer | ✓ | Pointer | Variable | addr/addr_test | 0100xxxx |
Address Type Documentation
Detailed serialization specifications for each format:
- Base Addresses - Payment and staking credential encoding
- Enterprise Addresses - Payment credential only encoding
- Reward Addresses - Staking credential only encoding
- Pointer Addresses - On-chain stake registration reference encoding
Related
- Conversion - Format transformations (Bech32, hex, bytes)
- Validation - Parsing and validation