This page covers the release-specific and operational details that sit beyond
basic setup. Start with Setup CDR Client first.
DKG Query Modes
The SDK supports two backends for reading DKG state:| Mode | What it does | When to use it |
|---|---|---|
evm-events | Scans DKG contract events via standard EVM RPC | Default, works anywhere |
cosmos-abci | Queries the x/dkg keeper via CometBFT abci_query | Faster when you have access to a Comet RPC |
In
cosmos-abci mode, the SDK does not re-verify partial decryption
signatures locally. The x/dkg keeper verifies them before storage, so the
trust model is equivalent to reading that state through RPC.Validation RPCs
If you want to defend against a single compromised RPC returning an incorrect DKG public key, configure additional validation RPCs. When set,observer.getGlobalPubKey() cross-checks them and throws if the nodes disagree.
Contract Addresses
The current Aeneid release uses the following core system addresses:| Contract | Address |
|---|---|
| DKG | 0xCcCcCC0000000000000000000000000000000004 |
| CDR | 0xCcCcCC0000000000000000000000000000000005 |
Current Release Notes
- The SDK is installable from source, not npm.
- Story license-gated vaults still require manual condition encoding.
- The CDR SDK does not auto-wrap IP to WIP or auto-approve WIP for license minting.
accessCDR()can auto-generate the ephemeral keypair and querythresholdwhen those params are omitted.createVault/readVault/createFileVault/readFileVaultare available as high-level aliases.getRegisteredValidators()can return an empty list incosmos-abcimode for finalized rounds on the current Aeneid deployment.timeoutMs: 120_000is a good starting point foraccessCDR()anddownloadFile().

