Cloudflare prépare un Privacy Pass post-quantique avec VOLE et MOLE

Illustration d’un jeton anonyme protégé par une cryptographie post-quantique

Cloudflare Research a publié la façon dont elle souhaite faire entrer Privacy Pass, le protocole qui permet de prouver que l’on n’est pas un bot sans CAPTCHA ni compte et sans pouvoir être suivi, dans l’ère des ordinateurs quantiques. La proposition combine des preuves à divulgation nulle de connaissance VOLE-in-the-Head avec des signatures post-quantiques multivariées, et s’inscrit dans MOLE, la prochaine génération de Privacy Pass que Cloudflare développe avec d’autres acteurs. L’expliquent Christopher Patton, Tianyu Zhang et Bas Westerbaan sur le blog de l’entreprise, qui précisent qu’il s’agit encore de recherche et que rien n’est déployé.

Les points clés du Privacy Pass post-quantique de Cloudflare en 30 secondes

  • Privacy Pass utilise aujourd’hui RSA et les courbes elliptiques, qu’un ordinateur quantique pourrait casser pour falsifier des jetons.
  • Cloudflare propose des preuves VOLE-in-the-Head et des signatures UOV, avec des jetons de 4 à 12 Ko.
  • La vie privée de l’utilisateur ne serait pas en danger ; ce qui est vulnérable, c’est la falsification de jetons.
  • Il manque des preuves formelles et davantage de cryptanalyse : ce n’est pas une technologie déployée.

Privacy Pass fonctionne depuis une dizaine d’années dans des produits comme iCloud Private Relay d’Apple et Privacy Gateway. L’idée est qu’un émetteur de confiance remette à l’utilisateur des jetons anonymes qu’il échange ensuite auprès d’un site web pour prouver sa légitimité, sans que personne puisse relier l’émission à l’usage. Il repose aujourd’hui sur des signatures aveugles RSA et sur la cryptographie à courbes elliptiques. Selon les auteurs, un attaquant disposant d’un ordinateur quantique pourrait falsifier des jetons à volonté, mais la vie privée resterait intacte, car l’impossibilité de relier émission et usage ne dépend pas de ces mathématiques.

Le problème de la taille

Passer à la cryptographie post-quantique n’est pas gratuit. Une signature ML-DSA-44, le standard post-quantique du NIST, occupe 2 420 octets, contre 64 pour ECDSA-P256. Et des identifiants anonymes exigent plus qu’une signature : il faut prouver que l’on détient une signature valide sans la montrer. C’est là qu’intervient VOLE-in-the-Head, un système de preuves à divulgation nulle de connaissance présenté en 2023, qui s’appuie ici sur la fonction de hachage Keccak/TurboSHAKE et sur des signatures UOV, issues de la cryptographie multivariée, avec des signatures de seulement 135 octets mais des clés publiques de 46,6 Ko. Cette transition touche déjà les produits réseau, comme les tunnels post-quantiques du SD-WAN de Fortinet.

Les chiffres donnés par les auteurs montrent le coût. Le schéma PoMFRIT avec UOV produit des signatures aveugles d’environ 4,3 Ko à l’échange et de moins de 1 Ko à l’émission. Les deux candidats que Cloudflare développe pour MOLE, VOLE-IHAT et VOLE-ACT, occupent 5,6 et 5,4 Ko à l’émission et 6,5 et 12 Ko à la présentation. Chaque opération prend quelques millisecondes dans l’implémentation de recherche. Selon Cloudflare, remplacer les signatures aveugles RSA par PoMFRIT a un coût comparable à celui du passage d’ECDSA à ML-DSA, bien qu’il faille probablement répartir chaque échange sur plusieurs requêtes.

Ce qu’est MOLE et ce qui manque

MOLE (Moderation Of unLinkable Endorsements) est le projet pour la nouvelle génération de Privacy Pass. Il introduit des émetteurs, des avals, des modérateurs qui les échangent et des justificatifs de modération, et sa propriété clé est de masquer quel émetteur a délivré le jeton, ce qui réduit encore l’information qui fuit de l’utilisateur.

Les auteurs signalent eux-mêmes les risques. L’une des optimisations repose sur une hypothèse de sécurité moins éprouvée, la cryptanalyse de la cryptographie multivariée est encore immature et les paramètres pourraient changer et renchérir les schémas. Ils rappellent aussi que des chercheurs de l’UCSD et de l’INRIA sont parvenus à falsifier une signature RSA de 1 024 bits en utilisant un émetteur Privacy Pass comme oracle, bien que le protocole utilise du RSA de 2 048 bits. Le code de la recherche est publié sur GitHub, dans le dépôt cloudflareresearch/vole-mole.

Questions fréquentes

Qu’est-ce que Privacy Pass ?

Un protocole qui permet de prouver que l’on n’est pas un bot au moyen de jetons anonymes, sans CAPTCHA ni compte et sans que l’utilisateur puisse être suivi.

Pourquoi doit-il devenir post-quantique ?

Parce qu’il utilise RSA et les courbes elliptiques, qu’un ordinateur quantique pourrait casser pour falsifier des jetons, mais pas pour briser la vie privée de l’utilisateur.

Est-il déjà disponible ?

Non. C’est une recherche de Cloudflare avec code publié, mais il manque des preuves formelles de sécurité et davantage de cryptanalyse avant tout déploiement.

Sources :

le dernier