Aller au contenu principal
Cryptographie

Blind oracle

Un blind oracle ne sait pas quels contrats utilisent ses signatures, ce qui préserve la confidentialité. Concept clé des DLCs.

Le problème de l'oracle

Pour qu'un contrat Bitcoin dépende d'un événement extérieur (prix BTC/USD, résultat d'un match, météo), il faut qu'une source externe — un oracle — signe la donnée et que les parties utilisent cette signature dans leur contrat. Le problème : un oracle classique sait qui l'utilise, combien est en jeu, et peut être corrompu ou contraint. C'est une faille majeure pour la confidentialité et la résistance à la censure.

Définition du blind oracle

Un blind oracle est un oracle qui publie des attestations (signatures Schnorr sur un événement) sans jamais connaître l'identité des contrats qui s'en servent. Il ne voit ni les participants, ni les montants, ni même l'existence d'un contrat particulier : il se contente d'annoncer publiquement « le prix BTC/USD est X au temps T », signé. Charge aux utilisateurs de combiner cette attestation à leur propre setup off-chain.

Lien avec les DLCs

Les Discreet Log Contracts, proposés par Tadge Dryja en 2017, sont les principaux consommateurs de blind oracles. Le mécanisme :

  1. Avant l'événement, l'oracle publie une nonce R et un point R+G·outcome possible
  2. Les parties construisent off-chain des transactions adaptées à chaque outcome
  3. Quand l'oracle révèle s = nonce + sk·outcome (l'attestation), seul le « bon » outcome débloque la signature qui permet de dépenser

Du point de vue on-chain, un contrat DLC réglé ressemble à une banale transaction P2TR.

Avantages cryptographiques

| Critère | Oracle classique | Blind oracle | |---------|------------------|--------------| | Voit les paris | Oui | Non | | Censure ciblée possible | Oui | Non | | Coût d'une attestation | Linéaire en clients | Constant | | Confidentialité on-chain | Variable | Forte (P2TR) |

Limites

Un blind oracle reste un point de confiance pour l'exactitude de la donnée : si Coinbase signe un faux prix, tous les DLC concernés se règlent au mauvais résultat. La mitigation consiste à multiplier les oracles indépendants et à n'autoriser le règlement qu'avec un quorum. La cryptographie ne protège que la confidentialité, pas la véracité.

À retenir

Un blind oracle est une brique élégante qui sépare ce qu'un oracle doit savoir (la donnée à signer) de ce qu'il n'a pas besoin de connaître (qui mise quoi). C'est le fondement cryptographique des DLCs et un modèle d'oracle compatible avec la philosophie privacy de Bitcoin.

Termes lies

← Retour au glossaire complet

Glossaire inspire du dictionnaire de Loic Morel sur Pandul.fr.