Cardano Improvement Proposals

CIP 1855 - Forging policy keys for HD Wallets



This document describes how to derive forging policy keys used for minting/burning tokens.


Term Definition
HD Hierarchical Deterministic, refers to wallets as described in BIP-0032.



Forging tokens is derived from a script policy. The script policy includes hashes of keys needed to forge new tokens and must be witnessed by these keys in such a way as the script stipulates. This CIP defines the derivation path at wich parties are expected to derive such keys.


HD Derivation

We consider the following HD derivation paths similarly to CIP-1852:

m / purpose' / coin_type' / policy_ix'

To associate policy keys to a wallet, we reserve however purpose=1855' for policy keys for forging tokens. The coin type remains coin_type=1815' to identify Ada as registered in SLIP-0044. We use a hardened index for each policy key as derivation is not needed.

We can summarize the various paths and their respective domain in the following table:

purpose coin_type policy_ix
1855' 1815' [2^31 .. 2^32-1]

CIP-0005 prefixes

To distinguish such keys & derived material in the human readable prefix of the bech32 representation, we introduce the following prefixes for insertion into CIP-0005:


Prefix Meaning Contents
policy_sk CIP-1855's policy private key Ed25519 private key
policy_vk CIP-1855's policy public key Ed25519 public key


Prefix Meaning Contents
policy_vkh CIP-1855's Policy verification key hash blake2b_224 digest of a policy verification key



Backwards Compatibility

N/A (no preceding implementation or design).

Reference Implementation

None yet.

Related Work

Description Link
BIP-0032 - HD Wallets
CIP-5 - Common Bech32 Prefixes
CIP-1852 - Cardano HD Wallets
A Formal Specification of the Cardano Ledger