Context
I am working on a possible bridge from an existing KRC-20 token to a native KCC-20 asset on Kaspa, represented through SilverScript covenants.
The core issue is that a regular KRC-20 transfer transaction contains the payload with token, amount, and recipient, but it does not directly prove on Kaspa L1 that the Kasplex indexer actually processed the transfer as valid. KRC-20 validity depends on prior indexer state, including token existence, the sender’s balance, and possible blacklist rules.
A covenant could hash the KRC-20 payload and a later API response, binding both sets of data to the same swap. That protects against later changes and replay attacks, but it does not prove that the API response genuinely came from Kasplex. A relayer signature would solve that, but it introduces trust assumptions and an availability risk.
Questions
Is there already a publicly usable, on-chain verifiable proof of KRC-20 state, such as state roots, checkpoints with Merkle proofs, or ZK proofs?
If so, can a SilverScript covenant verify such a proof in order to move a KRC-20 transfer into KCC-20 without a trusted relayer?
If not, is there another trust-minimized approach besides multiple relayers using threshold signatures?
Are the checkpoint commitments mentioned in the RTD Rollup documentation already specified and available in a form that can be used for this purpose?
Goal
My goal is a design where anyone can submit a proof, the covenant verifies validity on its own, and no individual API server or relayer controls the bridge.