Saltar al contenido principal
fr/blog/chat-control/criptografia-homorfica/

Cryptographie homomorphe — Promesses, limites et fiction dans la détection des CSAM

Par Xscriptor — Óscar Preciado7 min de lecture
TechnologieCryptographieVie privéeRechercheFHEchiffrement homomorphecryptographievie privéeanalyseCSAMChat ControlXscriptorÓscar Preciado
Cryptographie homomorphe — Promesses, limites et fiction dans la détection des CSAM

Si tu peux calculer sur des données chiffrées sans les déchiffrer, tu as de la cryptographie homomorphe. Si tu peux le faire à l'échelle de WhatsApp, tu as un miracle. Et les miracles ne sont pas une base solide pour la législation.



Dans le débat sur Chat Control, la cryptographie entièrement homomorphe (FHE, pour ses sigles en anglais) apparaît fréquemment comme la solution technique qui permettrait de concilier analyse et vie privée. L'idée est séduisante : un serveur pourrait exécuter un classificateur de CSAM sur des messages chiffrés sans les déchiffrer, obtenant seulement un résultat binaire —"suspect" ou "non suspect"— sans accéder au contenu.

La promesse est réelle. La viabilité pratique, cependant, est une autre histoire.

Qu'est-ce que la cryptographie homomorphe ?

Un schéma de chiffrement homomorphe permet d'effectuer des opérations arithmétiques sur des données chiffrées. Formellement :

Étant donné un chiffré E(m1)=c1E(m_1) = c_1 et E(m2)=c2E(m_2) = c_2, il existe une opération \oplus telle que :

c1c2=E(m1m2)c_1 \oplus c_2 = E(m_1 \circ m_2)

\circ est une opération arithmétique (addition ou multiplication) sur les textes clairs.

Types

Type Opérations Exemple Performance
PHE (Partiel) Addition ou multiplication seulement RSA (multiplicatif), Paillier (additif) ~1-10× plus lent
SHE (Somewhat homomorphe) Addition et multiplication avec limites BGV, BFV ~10³-10⁶× plus lent
FHE (Entièrement homomorphe) Addition et multiplication illimitées CKKS, Gentry, TFHE ~10⁶-10⁹× plus lent

La différence cruciale entre SHE et FHE est le bootstrapping : une technique qui "rafraîchit" le bruit accumulé dans le chiffrement après chaque opération, permettant des calculs arbitrairement profonds. Sans bootstrapping, le bruit croît avec chaque opération jusqu'à ce que le message devienne indéchiffrable.

Chiffrement FHE :     m → E(m) → [bruit initial = ε]
Addition :            E(m₁) ⊕ E(m₂) → E(m₁+m₂) → [bruit ≈ 2ε]
Multiplication :      E(m₁) ⊗ E(m₂) → E(m₁·m₂) → [bruit ≈ ε²]
Bootstrapping :       E(m) → E(E(m)) → déchiffrement homomorphe → E(m) propre

Le problème de performance

L'obstacle fondamental du FHE est la performance. Les opérations sur données chiffrées sont entre 6 et 9 ordres de grandeur plus lentes que sur texte clair. Pour donner une idée :

Opération Texte clair FHE (estimation 2026) Facteur
Addition de 2 entiers 32 bits ~0,3 ns ~10 μs 30 000×
Multiplication de 2 entiers ~0,5 ns ~1 ms 2 000 000×
Comparaison (> / <) ~0,3 ns ~10 ms 30 000 000×
Classificateur CNN (une image) ~1 ms ~10⁶-10⁹ s Impossible
Réseau neuronal complet (inférence) ~10 ms ~10⁷-10¹⁰ s Impossible

WhatsApp traite environ 100 milliards de messages par jour (~1,16 million par seconde). Un classificateur FHE pour une seule image nécessiterait, au mieux, des heures de calcul. Pour l'échelle de la messagerie mondiale, le FHE est de plusieurs ordres de grandeur trop lent.

Et si le classificateur est simple ?

Un argument parfois entendu est qu'un classificateur de CSAM n'a pas besoin d'être un réseau neuronal complexe. Il pourrait s'agir d'une simple comparaison avec une base de données de hashs perceptuels. Ce serait calculable avec FHE... en théorie.

Le problème est que la détection de CSAM n'est pas une comparaison de hashs. Le contenu CSAM n'est pas étiqueté avec un hash connu tant qu'il n'a pas été identifié et signalé. La majorité du matériel que les systèmes actuels détectent est du nouveau matériel non classifié auparavant, ce qui nécessite des classificateurs basés sur le contenu (réseaux neuronaux) qui analysent l'image ou la vidéo pour déterminer si elle contient du matériel suspect.

Un classificateur de ce type nécessite :

  • Plusieurs couches convolutionnelles
  • Des fonctions d'activation non linéaires (ReLU, sigmoïde)
  • Des couches de pooling
  • Des couches entièrement connectées
  • Une comparaison avec des embeddings

Chacune de ces opérations est des ordres de grandeur plus coûteuse en FHE. Les fonctions non linéaires sont particulièrement problématiques car FHE ne supporte que des opérations arithmétiques linéaires (addition, multiplication), et les non-linéarités doivent être approximées par des polynômes, ce qui ajoute encore plus de profondeur de calcul et nécessite plus de bootstrapping.

Le paradoxe du classificateur

Même si la performance était résolue (disons, par du matériel spécialisé ou des avancées cryptographiques significatives), il resterait un problème conceptuel plus profond :


Pour classifier un contenu chiffré comme CSAM, le classificateur doit savoir ce qu'est un CSAM. Mais pour définir CSAM, le classificateur doit voir des exemples de CSAM.


Cela signifie que le classificateur — et donc l'entité qui l'entraîne, le met à jour et le déploie — contient la connaissance de ce qu'il cherche. Cette connaissance peut être :

  • Une base de données de hashs : qui peut être élargie pour inclure d'autres contenus
  • Un modèle de réseau neuronal : qui peut être affiné pour détecter d'autres catégories
  • Un ensemble de règles : qui peut être étendu par mandat légal

La porte n'est pas dérobée. Elle est structurelle. Le mécanisme qui permet de détecter les CSAM permet, avec la même architecture, de détecter toute autre chose que l'autorité décide d'inclure.

FHE (idéal) :     E(m) → [classificateur FHE] → oui/non
                  Personne ne voit m. Seul le verdict.

FHE (réel) :      E(m) → [classificateur FHE] → oui/non + confiance
                  La confiance révèle des informations sur m.
                  Si le classificateur est mis à jour, le VERDICT CHANGE.
                  L'autorité peut itérer les classificateurs sur les données passées.

Ce dernier point est critique et peu discuté. Si les messages sont stockés chiffrés (et que la plateforme les conserve), une ordonnance future mettant à jour le classificateur permettrait de ré-analyser rétrospectivement tout l'historique des communications. Le FHE n'empêche pas cela : le classificateur s'exécute sur les données chiffrées stockées, et l'autorité obtient de nouveaux verdicts sans avoir jamais vu le contenu original.

L'état de l'art

En juillet 2026, le FHE a réalisé des avancées notables en laboratoire :

  • Petits réseaux neuronaux (~10 couches, ~1000 neurones) : inférence en minutes par échantillon
  • Comparaison de hashs : réalisable pour de petites bases (~10⁶ entrées)
  • Bootstrapping optimisé : TFHE peut exécuter une porte logique en ~10 ms

Mais l'écart entre ce qui est réalisable en laboratoire et ce que nécessite la messagerie de masse reste de plusieurs ordres de grandeur :

Exigence FHE 2026 Nécessaire pour CSAR Écart
Classifier 1 image ~10³-10⁶ secondes < 0,1 seconde 10⁴-10⁷×
1 milliard d'images/jour Impossible ~10⁵ images/seconde Infranchissable
Classifier une vidéo Des années par minute Temps réel Infranchissable
Vie privée du classificateur Possible Ce n'est pas le problème

Conclusion technique

La cryptographie homomorphe n'est pas la solution que la Commission européenne cherche, pour trois raisons :


  1. Performance : le FHE ne peut pas traiter l'échelle de la messagerie mondiale avec des classificateurs sophistiqués, et rien n'indique qu'il le pourra dans la prochaine décennie. Les avancées en matériel accéléré (FPGA, ASIC) pourraient réduire l'écart, mais pas le combler.



  2. Classification rétrospective : le FHE n'empêche pas la ré-analyse historique des communications stockées, ce qui crée un risque de surveillance différée que la proposition n'aborde pas.



  3. Extensibilité du classificateur : le mécanisme qui permet de détecter les CSAM permet, avec la même conception, de détecter tout contenu classifiable. Le FHE ne résout pas le problème de la pente glissante ; il le transfère simplement au plan algorithmique.


Le FHE est une technologie prometteuse pour des applications où la quantité de données est modérée et le calcul simple (requêtes sur bases de données chiffrées, calcul multiparti, vie privée dans les modèles de ML). Mais comme base pour un système de surveillance de masse obligatoire, c'est une solution qui cherche un problème qu'elle ne peut pas résoudre.


Documents connexes :