I understand the deterministic nature of blockchains thus the need for oracles to feed outputs of non deterministic algorithms or API-calls to smart contracts. Using a single node oracle would defeat the purpose of using a blockchain, A DON (decentralized Oracle Network) is used instead.

I understand that a consensus mechanism is used to agree on a given blockchain state at a given timestamp. In an Oracle Problem scenario though a DON output would serve as an input in determining the updated blockchain state. How is consensus reached in a DON in the first place?

1 Answer 1


Answered by Joose#0001 on Chainlink official discord

Chainlink consensus is an interesting topic.

TLDR: Chainlink nodes coordinate and talk to each other using a Byzantine Fault Tolerant "sleepy" consensus mechanism.

If you want details, read the 3 articles I link below (from the CL website), in order.

If you want more details, read the 2 Chainlink white papers!

1) "Minority Corruption Resilience in Byzantine Generals With Unknown and Fluctuating Participation"

2) "The Latest View on View Synchronization"

3) "Optimal Latency and Communication SMR View-Synchronization"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.