Modèle de l'oracle aléatoire

De testwiki
Version datée du 7 novembre 2022 à 04:50 par imported>OrlodrimBot (Remplacement de {{Lien}} par un lien interne, suite à la création de l'article correspondant)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

En cryptologie, le modèle de l'oracle aléatoire[Note 1] est un cadre théorique idéalisé dans lequel on peut prouver la sécurité de certains algorithmes cryptographiques, en particulier les signatures numériques. Il postule l'existence d'un oracle, c'est-à-dire d'une boîte noire, qu'un adversaire peut interroger et qui fournit une réponse « aléatoire », dans un sens précisé plus bas. Ce modèle essaie de capturer le comportement idéal d'une fonction de hachage cryptographique.

Le modèle de l'oracle aléatoire a été introduit en 1993 par les cryptologues Mihir Bellare et Phillip Rogaway[1].

Un des intérêts du modèle de l'oracle aléatoire est qu'il permet de construire des preuves de sécurité pour les algorithmes utilisant des fonctions de hachage, sans avoir besoin de rentrer dans les détails d'implémentation de ces dernières. Toutefois, on sait qu'il existe des algorithmes prouvés sûrs dans le modèle de l'oracle aléatoire, qui sont complètement cassés si on remplace l'oracle par n'importe quelle fonction de hachage réelle[2], ce qui a initialement causé des doutes quant à la pertinence des preuves dans ce modèle[3]Modèle:,[4]Modèle:,[5]Modèle:,[6]Modèle:,[7]Modèle:,[8]. Pire, il n'est possible de prouver la sécurité de certains algorithmes, tel que FDH, que dans le modèle de l'oracle aléatoire[9].

Si les preuves dans le modèle standard restent préférables, les réticences face au modèle de l'oracle aléatoire sont aujourd'hui modérées[3]Modèle:,[10]. Qui plus est, des modèles a priori différents tels que le modèle du chiffre idéal se sont en fait avérés équivalents au modèle de l'oracle aléatoire[11]. Pour ces raisons une preuve dans le modèle de l'oracle aléatoire a surtout une valeur heuristique[3]Modèle:,[Note 2].

Exemples importants

Définition

Dans le modèle de l'oracle aléatoire, les participants ont accès à un oracle 𝒪 qui répond à un nombre polynomial de requêtes de la manière suivante :

  • Pour une requête q jamais formulée auparavant, l'oracle répond une chaîne de bits sq{0,1}n choisie uniformément au hasard.
  • Pour une requête q déjà reçue, l'oracle renvoie sq.

Comme souvent en informatique théorique, la notion de choix aléatoire peut se formaliser au moyen d'une « bande aléatoire[Note 3] » ω. La capacité pour le cryptologue de rembobiner cette bande est au cœur de nombreuses preuves de sécurité dans ce modèle, au moyen du forking lemma[12].

Dans la mesure où sq est choisi de manière qui ne peut être distinguée d'un véritable choix uniforme, il est possible de le générer d'une manière inconnue de l'adversaire. Ce modèle, dit « de l'oracle aléatoire programmable » permet de contraindre l'adversaire dans une preuve par réduction à casser une hypothèse calculatoire.

Voir aussi

Notes et références

Notes

  1. Souvent abrégé ROM pour l'anglais random oracle model.
  2. (Koblitz et Menezes 2005) notent toutefois qu'aucun système « réel » prouvé sûr dans le modèle de l'oracle aléatoire n'a été attaqué avec succès ; que les limitations mentionnées s'appliquent à des exemples artificiels et que l'absence d'exemples convaincants est en soi un argument en faveur du modèle.
  3. Au sens d'une bande d'une machine de Turing, utilisée par l'algorithme comme source d'entropie.

Références

Modèle:Références

Modèle:Palette

Modèle:Portail