For AI agents: Documentation index at /llms.txt

Skip to content

Dogecoin Integration

ICP supports a native Dogecoin integration that works the same way as the Bitcoin integration. Because Dogecoin is a Bitcoin fork, it reuses the same two-component architecture: a dedicated adapter that communicates with the Dogecoin network, and a Dogecoin canister that maintains the current chain state and exposes a query-and-send API to other canisters.

The Dogecoin adapter is a process that runs alongside the ICP replica on each node. It speaks the Dogecoin peer-to-peer protocol, syncs blocks from the Dogecoin network, and relays transactions. The Dogecoin canister (source) is a canister running on a system subnet that consumes blocks from the adapter, maintains the UTXO set, and exposes endpoints for balance queries, UTXO retrieval, fee estimation, and transaction submission.

Canister-controlled Dogecoin addresses are derived from chain-key ECDSA public keys, just as in the Bitcoin integration. Transactions are signed using the management canister’s sign_with_ecdsa API and broadcast to the Dogecoin network through the adapter.

ckDOGE is the chain-key token representing Dogecoin on ICP, backed 1:1 by real DOGE held in a canister-controlled address. The minter-plus-ledger architecture is the same as ckBTC: users deposit DOGE to a minter-controlled address, the minter mints ckDOGE on the ledger, and withdrawals trigger an onchain Dogecoin transaction signed with threshold ECDSA.

PlantUML diagram
PlantUML diagram