Attestation
The attestation subsystem of the Creditcoin Oracle acheives consensus about the confirmed state of a foreign chain. It then records that consensus on Creditcoin.
Attesting is the process by which the Creditcoin Decentralized Oracle keeps track of the confirmed state of foreign source chains. State transitions of each source chain are tracked by a set of attestors. Each attestor submits attestations, which are reports indicating their view of new blocks in the source chain. We require consensus among a group of independent attestors on the state of the source chain they are observing, as we don't trust any one attestor to always be truthful.
Attestation Process
The attestation process is roughly outlined below:
Attestors constantly listen to a source chain for new confirmed blocks. Attestors wait until these blocks are mature (sufficiently unlikely to be reverted) before proceeding. This maturity delay is 10 blocks or 2.5 minutes in length by default for
Ethereum
.Attestors then check the Creditcoin chain to see if they are eligible to attest at a given block height, using the mechanism as Polkadot AURA.
If an attestor is eligible, then it summarizes the progress of the source chain in an attestation and submits a vote for that attestation to Creditcoin.
Finally, Creditcoin validators check the vote signatures of each attestors in a block. As soon as a threshold number of votes is met for one attestation, then that attestation is confirmed and added to the on-chain storage.
Attestation Diagram

Last updated