Skip to main content
The key of a pair is derived from its name, so there is nothing to look up or register: it is the Poseidon2 hash (Miden Hasher::hash) of the pair name in upper case, BASE/QUOTE, as UTF-8 bytes. These are the pairs published at launch. The keys are fixed and never change; a new pair gets its key the same way. decimals is what the publishers use for the pair (min(base decimals, quote decimals)). Read it from the oracle’s answer rather than hard-coding it.

Derive a key

The same function is available as pair_key in the pm-publisher wheel (Python) and in the pm-accounts crate (Rust). In MASM, push the key as a hex literal: push.0xd189b4e9...d0eb. Never derive a key by hand: a typo gives a valid key nobody ever published, and the oracle answers “no price” for it.