Oracle
Un oracle est un service qui signe des événements externes (cours, météo, élection). Indispensable aux DLCs et smart contracts. Le risque : trust dans l'oracle.
Définition
Un oracle est un service qui attesterait, via une signature cryptographique, de la réalité d'un événement extérieur à la blockchain : prix du Bitcoin à 17h00, résultat d'une élection, météo, score sportif... Bitcoin ne sait pas, par lui-même, ce qui se passe hors du registre. L'oracle comble cette lacune.
Pourquoi en a-t-on besoin ?
Pour exécuter un contrat conditionnel — par exemple « Alice gagne 0,1 BTC si l'équipe X bat l'équipe Y » — il faut une source faisant autorité sur le résultat. Sans oracle, on doit se reposer sur un arbitre humain. Avec un oracle cryptographique, le contrat se résout automatiquement à partir d'une signature.
Comment ça fonctionne avec les DLCs
Les DLCs (Discreet Log Contracts) de Tadge Dryja exploitent ingénieusement les oracles :
- Avant l'événement, l'oracle publie une clé d'engagement (R-point).
- Pour chaque résultat possible, l'oracle pré-définit une signature attestant ce résultat.
- Alice et Bob construisent un contrat dont les transactions de règlement utilisent ces signatures comme adaptators.
- Au moment de l'événement, l'oracle ne publie qu'une seule signature (celle du résultat réel).
- Le gagnant utilise cette signature pour débloquer ses fonds.
L'élégance : l'oracle ne sait pas qu'il sert à un contrat précis. Il publie juste un résultat signé, comme un flux RSS cryptographique. C'est le principe du blind oracle.
Modèles de confiance
| Modèle | Sécurité | Coût | |--------|----------|------| | Oracle unique | Trust simple | Faible | | Multi-oracles (m-of-n) | Tolérance aux pannes | Moyen | | Oracle décentralisé | Très robuste | Élevé |
Le compromis classique : plus on multiplie les oracles, plus le système est sûr, mais plus la coordination on-chain devient complexe.
Risques
- Collusion de l'oracle avec une partie au contrat.
- Censure : refus de publier la signature.
- Bug ou erreur de source de données.
Un oracle reste un point de confiance hors-protocole. Il ne peut pas être abolit, seulement minimisé.
Cas d'usage
- DLCs de paris sportifs (BitcoinHedge, Suredbits).
- Couverture de prix (stablesats sur Lightning).
- Contrats d'assurance sur événements météo (PoC).
- Marchés de prédiction non KYC.
À retenir
L'oracle est le pont indispensable entre Bitcoin et le monde extérieur. Le défi cryptographique consiste à minimiser la confiance qu'on lui accorde, sans jamais l'éliminer totalement.
Termes lies
- DLC (Discreet Log Contract)Un DLC est un contrat conditionnel utilisant un oracle, sans révéler l'événement on-chain. Permet paris, derivative, assurance peer-to-peer. Activable sur Bitcoin via signatures aveugles.
- Blind oracleUn blind oracle ne sait pas quels contrats utilisent ses signatures, ce qui préserve la confidentialité. Concept clé des DLCs.
Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.