Skip to main content
Welcome. This site supports keyboard navigation and screen readers. Press ? at any time for keyboard shortcuts. Press [ to focus the sidebar, ] to focus the content. High-contrast themes are available via the toolbar.
serard@dev00:~/cv

Voir fautes de l'avocate

Fraude aux financements publics : la preuve par les documents

Conclusion probatoire

Les documents réunis ne constituent pas encore une décision judiciaire déclarant une culpabilité individuelle pour « fraude aux financements publics ». Ils établissent en revanche un faisceau documentaire accablant sur les faits matériels et sur leur importance dans le récit public ayant accompagné l'investissement de 15 M€ de la Caisse des Dépôts en 2017 :

  1. la CDC a publiquement relié son investissement à une technologie d'indexation propre, à une architecture indépendante, à la confidentialité des données et à l'anonymat ;
  2. dans le contexte de l'audit technique de 2016, Stéphane Erard témoigne qu'une réunion d'équipe a été ouverte par la formule « ce qui va être dit ici ne doit pas en sortir » avant une discussion sur Bing, son coût et Bing Ads ; ce verbatim n'est pas indépendamment authentifié. Des courriels conservés sous forme de captures évoquent ensuite la préparation d'une branche séparée, le retrait de l'appel visible à Bing et un appel qualifié de « fake » ;
  3. l'historique Git corrobore cette séquence : dans les versions master étiquetées des 2, 9 et 22 décembre 2016, 100 % des résultats organiques Web non vides servis par le chemin contrôlé ont une origine Bing ; le code prévoit soit l'appel direct, soit la réutilisation par un cache de sept jours de résultats précédemment fournis par Bing, alors que les conditions publiques historiques interdisaient en principe ce stockage hors copie transitoire d'affichage ;
  4. le même dépôt montre que, lorsque les conditions d'affichage publicitaire étaient réunies, search_ads.php envoyait à Microsoft la requête, le User-Agent et une IPv4 tronquée en /24 ;
  5. une transcription attribue à Jean-Baptiste Piacentino une séquence plus précise : un « gros mensonge au début », puis des « gens de la caisse » qui auraient « compris » et pour lesquels l'« histoire technique » n'aurait plus été une surprise en janvier 2018 ; en 2019, après que Stéphane Erard lui a expliqué sur Twitter la dépendance de 2016 et lui a transmis le code, Philippe Englebert relaie officiellement, code joint, l'affirmation selon laquelle Qwant « passe en fait par Bing » avant un nouvel audit ;
  6. la CNIL a confirmé en 2025 que le jeu de données transmis à Microsoft qu'elle avait contrôlé en 2019 était personnel et pseudonymisé, non anonyme, et que l'information alors publiée était inexacte et incomplète.

Ces faits sont déjà déterminants au sens documentaire et matériel : la CDC a elle-même présenté l'indexation propre, l'indépendance et la vie privée comme des motifs de son engagement, tandis que le code de release contrôlé documente une dépendance totale à Bing dans le chemin Web étudié et que les courriels d'audit montrent le retrait de l'appel Bing visible. Il ne s'agit pas d'une divergence marginale.

Les pièces encore manquantes ne portent donc plus sur l'existence de l'écart technique, qui est établie. Elles doivent déterminer ce qui a été montré et déclaré, ce que Cardiweb et la CDC savaient au moment de la décision, quand et comment une compréhension ultérieure a pu être acquise, si l'information a juridiquement causé la remise des fonds et quelles responsabilités individuelles peuvent être retenues.

Une pièce contraire doit en outre être exposée : en 2022, la cour d'appel d'Aix-en-Provence a retenu l'explication d'un test de fonctionnalité et jugé que la dissimulation de Bing pendant l'audit CDC n'était pas justifiée par les éléments qui lui étaient soumis.

Cette page prolonge l'analyse des montants, instruments et motifs publics des financements. Elle porte sur une autre question : les pièces disponibles suffisent-elles à démontrer une tromperie ayant déterminé la remise des fonds ?

Analyse effectuée à partir des archives locales, du dépôt Git API-API-TAG-PACKAGER, du corpus __POINAT_MED et des sources institutionnelles, puis mise à jour avec la transcription Piacentino le 11 août 2026.

1. Ce qu'il faut prouver juridiquement

L'article 313-1 du code pénal (ouvre dans une nouvelle fenêtre) définit l'escroquerie par une tromperie réalisée notamment au moyen de manœuvres frauduleuses, qui détermine une personne à remettre des fonds ou à consentir un acte opérant obligation.

Appliqué à ce dossier, il ne suffit donc pas de prouver que :

  • une communication publique était exagérée ;
  • un logiciel dépendait davantage de Bing que ne le laissait penser le discours de souveraineté ;
  • des données qualifiées d'anonymes étaient en réalité pseudonymes ;
  • une branche de démonstration comportait du code factice ;
  • Qwant avait besoin d'argent.

Il faut relier les éléments suivants :

Élément à démontrer Question documentaire
Une déclaration ou une manœuvre trompeuse Qu'a-t-on précisément montré ou déclaré au financeur ?
Son caractère matériellement faux ou incomplet Quel était le fonctionnement réel à la même date ?
La connaissance et l'intention Les personnes concernées savaient-elles que la présentation induirait l'auditeur en erreur ?
Le caractère déterminant La CDC ou la BEI aurait-elle refusé ou modifié l'opération si elle avait connu la situation complète ?
La remise ou l'obligation Quel versement, décaissement ou engagement a suivi ?
Le préjudice ou l'avantage indu Quel risque, surcoût ou avantage résulte de la tromperie alléguée ?

Le terme « financement public » est ici commode mais juridiquement imparfait : la BEI a accordé un financement remboursable classé en quasi-fonds propres, tandis que la CDC a investi en capital. Il ne s'agit pas de deux subventions. La nature exacte de chaque concours est détaillée dans le chapitre 39.

2. Méthode et hiérarchie des pièces

Cinq catégories de documents sont confrontées :

  1. Sources institutionnelles : communiqués BEI et CDC, conclusion publique de la CNIL, avis CADA et arrêt de la cour d'appel.
  2. Objets Git : commits, tags et blobs du dépôt source. Ils établissent le contenu versionné et sa chronologie interne ; ils ne prouvent pas à eux seuls le déploiement en production.
  3. Correspondances conservées par captures : les courriels techniques de juin 2016 et celui de Philippe Englebert de juin 2019 doivent être décrits comme tels tant que les messages natifs, leurs en-têtes et leurs pièces jointes n'ont pas été acquis.
  4. Transcription attribuée à un entretien avec Jean-Baptiste Piacentino : ce PDF sélectif de trois pages attribue des propos à un entretien, mais ne contient ni signature, ni identité du transcripteur, ni enregistrement source permettant d'en authentifier le verbatim.
  5. Témoignages et analyses : ils orientent l'enquête, mais ne remplacent ni le rapport d'audit ni les fichiers natifs.

Un hash garantit qu'un fichier n'a pas changé depuis son calcul. Il ne garantit ni l'identité de son auteur, ni l'exhaustivité du corpus, ni l'authenticité initiale de la pièce. De même, l'identité déclarée dans un commit Git n'est pas une signature électronique.

3.1. Ce que la CDC dit avoir financé

Le communiqué conjoint CDC/Qwant du 2 février 2017 annonce 15 M€ en fonds propres apportés par la Caisse des Dépôts.

Le texte ne se contente pas d'annoncer un montant. Il associe l'opération à :

  • une « propre technologie d'indexation » ;
  • une « architecture technique indépendante » ;
  • la confidentialité des données personnelles ;
  • l'absence de cookie et de dispositif de traçage ;
  • la sécurité et l'anonymat des utilisateurs ;
  • l'authenticité du référencement naturel.

La formulation causale est explicite : la CDC se dit convaincue de la nécessité d'un moteur garantissant la sécurité et l'anonymat et indique avoir souhaité s'engager dans ce projet au titre de sa responsabilité sociétale.

Première page du communiqué CDC/Qwant du 2 février 2017

Cette pièce établit que l'indépendance, l'indexation propre et la vie privée ont été publiquement présentées comme des motifs de l'opération. Leur importance n'est donc pas une reconstruction tardive : le communiqué de la CDC fournit une présomption documentaire forte de leur caractère matériel et déterminant dans la justification publique de l'investissement. Le dossier interne du comité, les questions posées à Cardiweb, le rapport final et le pacte d'actionnaires restent nécessaires pour établir le rôle causal exact de ces caractéristiques dans la décision juridique et contractuelle.

Le communiqué ne constitue pas une formulation isolée. Le corpus chronologique des communications de Qwant sur l'anonymat établit qu'avant l'investissement de la CDC :

  • en juillet 2015, une publication de Qwant affirmait : « Qwant does not collect your data » ;
  • en juin 2016, au moment de l'audit technique, Éric Léandri déclarait que le traitement appliqué à l'adresse IP empêchait de reconstituer le numéro originel ;
  • en août 2016, il associait explicitement les recherches, l'anonymisation et le droit à la vie privée aux raisons d'être de Qwant.

Le même corpus documente ensuite la persistance du vocabulaire de l'anonymisation jusqu'en 2020, puis son remplacement public par celui de la pseudonymisation. Il renforce donc la preuve d'un positionnement public répété et contemporain de la due diligence, au-delà du seul communiqué du 2 février 2017. Il ne révèle toutefois ni ce que Cardiweb et la CDC ont effectivement reçu ou compris, ni le poids causal de ces affirmations dans la décision d'investir : le contexte public est établi, le caractère juridiquement déterminant reste à prouver.

3.2. Les courriels de préparation de l'audit

Stéphane Erard apporte d'abord un témoignage direct sur le contexte humain de la séquence. Il déclare qu'au début du mois de juin 2016, pendant une réunion hebdomadaire de l'équipe et alors que Qwant se trouvait dans la période de l'audit technique CDC/Cardiweb, Jean-Charles Chemin a ouvert la séance par la formule :

« ce qui va être dit ici ne doit pas en sortir »

Il indique que la réunion a ensuite porté sur l'ampleur du recours à Bing, son coût pour Qwant et le flux Bing Ads comprenant la requête, le User-Agent et l'adresse IP tronquée en /24. Il dit avoir compris la phrase comme une consigne de garder ces informations à l'intérieur de la réunion.

La note de provenance de ce témoignage en fixe exactement la portée. La formule n'est pas enregistrée ni reproduite dans un compte rendu contemporain actuellement disponible. Un échange Skype du 19 décembre 2016 mentionnant les « propos de jc en réunion » apporte une corroboration limitée de l'existence et du thème de la réunion, pas du verbatim ni d'une intention frauduleuse. Agendas, messageries et auditions des participants restent nécessaires.

Une capture d'un courriel du 17 juin 2016 attribué au responsable technique transmet la liste des projets que Cardiweb souhaite examiner, dont mozart, web-brain et API qwant_v2. Il demande ce qu'ils contiennent de « sensible » et souhaite anticiper les problèmes.

Voir la capture du courriel ouvrant la séquence d'audit.

Le 20 juin 2016 à 9 h 25, une réponse attribuée au responsable de l'API demande comment montrer le code source et s'il faut « préparer l'API avant » sur « une branche à part ».

Voir la capture de la proposition de branche séparée.

À 9 h 53, une autre réponse attribuée à un développeur indique :

  • avoir créé une branche demo ;
  • avoir « retiré le code d'appel à Bing » ;
  • l'avoir remplacé par un appel au brain de l'équipe Data ;
  • « Comme demandé ce code est juste un fake. »

Voir la capture de la réponse relative à la branche demo.

La note de confrontation des courriels et du dépôt réunit la chronologie complète.

Ces écrits établissent une préparation spécifique et le retrait de l'appel direct visible à Bing. Pris isolément, le mot fake pourrait désigner un bouchon technique ou un composant de démonstration. Pris avec la branche séparée, la demande d'anticiper les éléments « sensibles », le témoignage sur la consigne de confidentialité — conservé comme témoignage et non comme pièce écrite — et le chemin de release ensuite entièrement alimenté par Bing, il forme une séquence matériellement accablante. La question restante n'est pas l'existence des courriels et des objets Git, mais la manière dont la branche a été présentée à l'auditeur, ce que celui-ci a compris et les conséquences tirées dans la décision d'investissement.

3.3. La preuve directe par Git

Le dépôt API-API-TAG-PACKAGER contient une séquence cohérente avec les courriels :

Date Objet Git Contenu utile
22 juin 2016 commit 62b2fbd02962b082e76d61e44e1eb7959975e581 Ajoute webBrainLocales = ['fr', 'de'] et un routage WebBrain/Bing
29 juin 2016 commit ea4ef3edfa6355ed16b528957d08bd863eabcada Sous le message « reformat code », remplace ['fr', 'de'] par []
29 juin 2016 merge f5e6e5fbe15d378fd07a2c2b7f9eb14d4130d619 Merge branch 'demo' into 'develop'
30 juin 2016 tag v1.19.0, commit 1882310751c2a2750ec62df8f06a0a221e1fba4a Merge branch 'prelive' into 'master' ; le merge demo est dans son ascendance
22 décembre 2016 tag v1.32.1, commit 22aa5650889b1a77e1ef9008ea55fef30cc8916f Dernier tag disponible avant le communiqué CDC du 2 février 2017

Le changement du 29 juin est matériellement lisible dans le diff :

- private $webBrainLocales = ['fr', 'de'];
+ private $webBrainLocales = [];

Dans v1.32.1, les deux locales restent seulement en commentaire (ce qui correspond à []):

private $webBrainLocales = [/*'fr', 'de'*/];

if (in_array($locale[0], $this->webBrainLocales)) {
    $searchUrl = $this->getWebBrainUrl(...);
} else {
    $searchUrl = /* Bing V5 ou Bing Azure */;
}

Un tableau ne contenant que des commentaires est vide à l'exécution. La condition in_array(...) ne peut donc être vraie pour aucune locale. Dans cette version et dans ce chemin :

  • aucune requête exécutée par Search_web::search() n'emprunte WebBrain ;
  • le code choisit entre Bing V5 et Bing Azure ;
  • les résultats Web non vides produits par cette méthode ont une origine Bing.

Le chapitre consacré à l'usage des résultats Bing établit que le cache partagé est consulté avant le routage et que search_web.php lui fixe une durée de sept jours. Les conditions publiques de la Bing Search API datées du 12 juin 2015 interdisaient en principe de copier, stocker ou mettre en cache les résultats, sauf copie intermédiaire limitée et temporaire nécessaire à leur affichage.

L'interdiction contractuelle de principe ne démontre pas que le mécanisme versionné n'existait pas : le code du cache existe, enregistre les résultats et les ressert. Elle conduit à une alternative plus accablante :

  • si ce mécanisme n'était pas exécuté en production, les résultats provenaient directement de Bing ;
  • s'il était exécuté, les résultats restaient d'origine Bing et leur stockage puis leur réutilisation pendant sept jours étaient interdits par les conditions publiques historiques, sauf à établir que Qwant bénéficiait d'un contrat négocié dérogatoire ; ce contrat Microsoft–Qwant n'est pas produit.

Dans aucune de ces hypothèses le cache ne constitue un index autonome de Qwant ni ne diminue la proportion de résultats d'origine Bing.

La conclusion certaine tirée du code n'est ainsi pas seulement que les appels externes vont vers Bing :

Dans les versions master étiquetées des 2, 9 et 22 décembre 2016, 100 % des résultats organiques Web non vides servis par le chemin contrôlé sont d'origine Bing : appel direct ou, si le mécanisme versionné était exécuté, stockage puis réutilisation pendant sept jours interdits par les conditions publiques historiques. Aucun tag master contrôlé ne porte WebBrain actif. Seule l'existence éventuelle d'un contrat négocié dérogatoire propre à Qwant demeure à établir.

Cette preuve porte sur le chemin Web de l'API principale contenu dans le dépôt. Elle ne décrit pas un éventuel service étranger à ce chemin, mais l'existence abstraite d'autres travaux ou prototypes ne change pas le résultat servi par celui qui est effectivement versionné ici. Les points encore à corroborer sont :

  • le déploiement exact de chaque tag sur chaque serveur ;
  • la part du trafic global passant par ce chemin ;
  • les journaux d'exécution et volumes réels.

La répétition du même état dans plusieurs tags master, jusqu'au dernier tag disponible avant le communiqué CDC, exclut l'hypothèse d'un simple fichier de travail fugitif. Ces réserves opérationnelles permettent de quantifier l'usage ; elles ne rendent pas incertaine l'origine Bing des résultats produits par le chemin de release contrôlé.

Le courriel de Philippe Englebert du 12 juin 2019

Après la discussion engagée sur Twitter avec Philippe Englebert, alors conseiller entreprises et écosystèmes au cabinet du secrétaire d'État chargé du numérique, la dernière page de la pièce 15 reproduit un courriel de mise en relation daté du 12 juin 2019 à 16 h 38. Il présente Stéphane Erard comme un ancien salarié de Qwant et indique :

« Il affirme que Qwant (en tous cas en 2016) passe en fait par Bing. Il m'a joint le code en PJ. Il serait utile que vous puissiez discuter avant l'audit de Qwant. »

« Il est important que Qwant ne soit pas au courant de ces échanges. »

Courriel de Philippe Englebert du 12 juin 2019 relayant l'alerte sur l'usage de Bing en 2016

La capture ci-dessus est l'image source de la dernière page, extraite du PDF et remise à l'endroit sans recomposition. Le courriel ne présente pas la dépendance à Bing comme une découverte antérieure de Philippe Englebert : la formule « Il affirme » restitue explicitement ce que Stéphane Erard vient de lui apprendre pendant leur discussion Twitter, avec le code de 2016 à l'appui. Sa valeur probatoire est précise :

  • l'alerte technique et financière a été reçue par un conseiller du cabinet chargé du numérique ;
  • le code historique a été reçu puis joint à une transmission interne ;
  • l'affirmation a été relayée avant un audit annoncé ;
  • son contenu technique concorde avec l'historique Git contrôlé indépendamment.

Le fil Twitter montre également que l'accès au code historique n'était pas matériellement impossible. Philippe Englebert écrit d'abord :

« on ne peut pas récupérer le code de 2016 illégalement puis l'utiliser ».

À la question de Stéphane Erard — « Et vous ne pouvez pas le leur demander ? » — il répond :

« Ok on va voir pour leur demander ».

Échange Twitter sur la demande licite du code Qwant de 2016

La première phrase porte donc sur une récupération illégale, non sur l'impossibilité d'obtenir légalement le code auprès de Qwant. L'échange identifie immédiatement cette voie licite et Philippe Englebert accepte de l'envisager. Or aucune demande effective à Qwant, aucune réponse contenant le code historique et aucun examen des commits ou tags de 2016 ne sont documentés dans l'audit publié. Après une alerte aussi précise et la remise directe du code par Stéphane Erard, cette absence documentaire est un fait matériel, pas une réfutation de l'alerte.

La date de 2019 ne prouve pas rétroactivement ce que la CDC savait en 2017. Elle prouve en revanche qu'une administration a reçu les éléments permettant de contrôler l'allégation historique et qu'elle les a relayés avant un nouvel audit.

La transcription attribuée à un entretien avec Jean-Baptiste Piacentino

Le PDF de trois pages se présente comme une sélection de quatre extraits d'un entretien du 19 janvier 2018 à 18 heures, au bar de l'hôtel Crowne Plaza Paris République, entre une salariée de la comptabilité de Qwant désignée « Mme X » et Jean-Baptiste Piacentino, présenté comme ancien directeur général adjoint de Qwant. Son troisième extrait, horodaté 0:27:20, lui attribue les phrases :

« Y'a eu un gros mensonge au début… mais que tout le monde reconnaît maintenant… les gens de la caisse ont compris, c'est pas une surprise pour eux » ;

« l'histoire technique ils le savaient ils étaient au courant ils ont rien dit ».

La première phrase apporte la nuance chronologique décisive. Elle ne décrit pas nécessairement une connaissance constante depuis l'origine : elle oppose un « mensonge au début » à ce que les « gens de la caisse » auraient compris ensuite et qui ne serait plus une surprise pour eux au moment de l'entretien. La lecture la plus fidèle est donc celle d'une possible tromperie initiale suivie d'une compréhension ultérieure alléguée. Le document ne dit toutefois pas expressément que la CDC ignorait les faits lors de l'audit de juin 2016 ou lors de l'investissement annoncé en février 2017 ; il ne date pas non plus le moment de la compréhension.

Le passage attribue en outre à Piacentino l'appréciation selon laquelle les financeurs auraient « fermé les yeux » sur certaines choses tant qu'elles ne mettaient pas en jeu la réputation de l'investisseur. Cette formulation ne désigne ni les faits tolérés ni les personnes concernées. Elle est suivie d'une distinction : la situation serait autre si les financeurs avaient eu connaissance de malversations et avaient continué à financer.

Le mot « malversations » intervient ainsi dans une hypothèse formulée au conditionnel. Mme X nie avoir remis des « pièces comptables » à la Caisse et la réponse attribuée à M. Piacentino est : « je sais bien ». Il serait donc inexact d'écrire qu'elle aurait transmis des factures Bing : la transcription ne contient ni le mot « factures » ni le mot « Bing ».

Le rapprochement soutenable est plus limité : lu avec le code de 2016 et le courriel Englebert de 2019, le syntagme « l'histoire technique » justifie de rechercher s'il concernait la dépendance à Bing, qui l'aurait apprise à la Caisse, à quelle date et par quel canal. La note de lecture probatoire détaille cette séquence et les limites d'authentification du PDF.

Pièce Ce qu'elle établit ou attribue Limite décisive
Courriel et fil Englebert, juin 2019 Après l'explication fournie par Stéphane Erard sur Twitter, l'affirmation « Qwant […] passe en fait par Bing » en 2016 est relayée avec le code joint avant un audit ; la possibilité de demander le code à Qwant est explicitement envisagée L'examen historique promis ou envisagé n'est pas documenté ; cette pièce ne date pas la connaissance de la CDC
Objets Git de 2016 Dans les tags master contrôlés des 2, 9 et 22 décembre, 100 % des résultats organiques Web non vides du chemin sont d'origine Bing : appel direct ou réutilisation par le cache versionné Déploiement exact et part du trafic global restent à quantifier ; si le cache de sept jours était exécuté, son usage était interdit par les conditions publiques historiques, sauf contrat dérogatoire applicable à Qwant
Transcription attribuée à un entretien avec Piacentino Attribue un « gros mensonge au début », puis une compréhension ultérieure par les « gens de la caisse » d'une « histoire technique » qui ne serait plus une surprise en janvier 2018 Verbatim non authentifié ; ni Bing, ni personnes précises, ni date ou canal d'acquisition de cette connaissance ne sont identifiés

Sur la réalité technique du chemin contrôlé, la question n'est plus ouverte : Git répond Bing. L'instruction doit désormais établir quelle version de cette réalité a été exposée à la Caisse et quand. La transcription Piacentino montre que les deux situations ne sont pas exclusives : la Caisse a pu être trompée lors de la décision initiale, puis certains interlocuteurs comprendre ultérieurement l'écart et le tolérer. Elle ouvre cette séquence d'enquête sans prouver l'état de connaissance initial, la date du changement ni l'identité des personnes visées.

3.5. search_ads.php : les données envoyées à Microsoft

Les deux fichiers ont des fonctions probatoires complémentaires : search_web.php établit l'origine Bing des résultats organiques du chemin contrôlé ; search_ads.php établit l'intégration publicitaire et les données envoyées à Microsoft. Ce second fichier n'est pas nécessaire pour démontrer l'origine des résultats, mais il montre que la dépendance à Microsoft était également économique et liée au traitement des requêtes.

Le même tag v1.32.1 active Bing Ads dans la configuration production pour les applications Search et Lite. La méthode shouldAdsBeRequested() limite l'appel : première page, pays autorisé, absence d'Adblock détecté, type de recherche et terminal pris en charge, entre autres conditions.

Lorsque ces conditions sont réunies, le code :

  1. reçoit l'adresse IP complète côté Qwant ;
  2. remplace son dernier octet par 0 ;
  3. place cette IPv4 /24 dans l'en-tête X-Search-ClientIP ;
  4. transmet le User-Agent ;
  5. place les mots recherchés dans le paramètre q de l'URL Bing Ads ;
  6. transmet également un en-tête Referer, dont le contenu dépend de la requête entrante ou de la configuration du frontal.

Extrait réduit au flux utile :

$ipAddress           = $this->input->ip_address();
$ipAddressAnonymized = $this->anonymizeIp($ipAddress);
$userAgent           = $this->input->user_agent();

$extraOptions[CURLOPT_USERAGENT]  = $userAgent;
$extraOptions[CURLOPT_HTTPHEADER] = [
    'X-Search-ClientIP: ' . $ipAddressAnonymized
];

$apiCall = 'https://www.bingapis.com/api/v5/ads/search?...'
         . '&q=' . urlencode($keywords);

La fonction appelée « anonymisation » ne fait que ceci pour une IPv4 :

return substr($ip, 0, strrpos($ip, '.')) . '.0';

Le code prouve donc la construction du flux requête + User-Agent + IPv4/24 vers Microsoft lorsque l'appel publicitaire est déclenché. Il ne prouve pas, à lui seul, la fréquence réelle des appels, la conservation chez Microsoft, les possibilités concrètes de réidentification ni la configuration effectivement déployée à chaque date.

3.6. La CNIL tranche la qualification des données, mais pas la fraude au financement

La CNIL indique le 11 février 2025 (ouvre dans une nouvelle fenêtre) que ses contrôles de 2019 ont établi une transmission à Microsoft de données essentiellement techniques pour :

  • afficher des publicités contextuelles ;
  • compter les affichages publicitaires ;
  • fournir des résultats Microsoft lorsque ceux de Qwant étaient insuffisants.

Elle conclut que le jeu transmis n'était pas anonyme mais pseudonymisé et relevait des données personnelles. Elle juge également que l'information donnée en 2019 sur ce traitement était inexacte et incomplète. L'analyse du dossier de contrôle expose les pièces et la chronologie.

Cette source officielle corrobore deux éléments essentiels :

  • le flux Qwant-Microsoft n'est pas seulement une possibilité abstraite contenue dans un ancien dépôt : un flux effectif de données personnelles a été constaté en 2019 ;
  • la qualification publique d'« anonymes » était juridiquement incorrecte pour le jeu contrôlé.

Elle ne permet pas de reporter automatiquement le constat de 2019 à chaque configuration de 2016 ou 2017. La continuité doit être prouvée par les artefacts de déploiement, les contrats et les journaux.

Elle ne prouve pas davantage que Qwant aurait réalisé en 2016 une analyse documentée appliquant au flux requête + User-Agent + IPv4 /24 les trois critères d'individualisation, de corrélation et d'inférence de l'avis WP216. Aucun rapport de ce type n'est retrouvé ou produit dans le corpus inspecté. Les contrôles CNIL documentés portent sur 2019 et ne constituent pas un audit forensique des tags Git ou du code déployé en 2016.

La CNIL apporte en outre des limites qui doivent être conservées :

  • la publicité était contextuelle, non comportementale ;
  • elle n'a pas constaté de suivi de l'utilisateur dans le temps ni d'alimentation d'un profil publicitaire ;
  • Qwant avait pris de fortes précautions pour réduire la réidentification ;
  • la mesure prononcée est un rappel aux obligations légales, sans caractère de sanction ;
  • dans sa notice publique de 2025, l'autorité qualifie rétrospectivement l'origine des manquements d'« erreur d'analyse initiale », affirme l'absence d'intention de se soustraire au RGPD et dit avoir pris en compte la bonne foi ainsi qu'une coopération « tout au long de la procédure ».

Cette présentation générale masque une rupture documentée. Le 15 novembre 2019, Qwant soutenait encore que l'AUID n'était pas une donnée personnelle et la CNIL qualifiait les positions respectives de « plutôt tranchées ». Le 6 février 2020, Qwant invoque sa « nouvelle gouvernance » ; le 16 octobre 2020, son nouveau président rattache la réévaluation intégrale de la politique et la pleine prise en compte des conclusions de la CNIL au profond renouvellement de cette gouvernance. La « coopération » peut donc décrire des réponses procédurales, mais pas une acceptation substantielle continue depuis 2019.

La formule « erreur d'analyse initiale » n'est pas accompagnée, dans la notice publique, d'une analyse Qwant contemporaine permettant d'en vérifier la méthode, les données et les résultats. Elle doit donc être traitée comme l'appréciation administrative de la CNIL ayant contribué au choix d'un rappel, non comme la preuve technique qu'une étude WP216 aurait été conduite de bonne foi en 2016.

L'absence d'intention affirmée sur le terrain du RGPD est donc contestable au regard de cette chronologie et ne tranche pas, en tout état de cause, l'intention distincte qui a pu exister lors de la due diligence financière de 2016. La partie adverse pourra invoquer cette appréciation, mais elle ne neutralise ni la consigne de silence rapportée pendant l'audit, ni la branche séparée, ni le retrait explicite de Bing, ni le call fake préparé pour la présentation.

3.7. La confrontation, proposition par proposition

Proposition du communiqué CDC/Qwant Pièces techniques Conclusion exacte
Qwant dispose d'une technologie d'indexation propre Aucun tag master contrôlé ne porte WebBrain actif ; le mécanisme de cache versionné ne fait que resservir des résultats Bing Les versions de release contrôlées ne servent aucun résultat WebBrain dans ce chemin ; l'existence d'autres travaux ou prototypes ne change pas cette origine
L'architecture est indépendante Dans les tags des 2, 9 et 22 décembre, 100 % des résultats organiques Web non vides du chemin sont d'origine Bing Dépendance totale à Bing pour les résultats servis par ce chemin de release ; déploiement exact et part du trafic à quantifier
Les données personnelles sont confidentielles et les utilisateurs anonymes search_ads construit le flux IP/24 + User-Agent + requête ; la CNIL qualifie le jeu contrôlé en 2019 de personnel et pseudonyme Contradiction matérielle avec une présentation absolue de l'anonymat ; continuité exacte 2016-2019 à documenter
Aucun dispositif de traçage publicitaire La CNIL constate une publicité contextuelle sans suivi dans le temps ni profil Cette proposition n'est pas réfutée par le seul flux Bing Ads tel que la CNIL l'a décrit
L'architecture a été auditée par la CNIL Le communiqué ne publie ni rapport, ni périmètre, ni conclusion Existence et portée de cet audit restent à établir ; ne pas le confondre avec les contrôles de 2019

4. La pièce judiciaire contraire : l'arrêt du 10 mars 2022

L'arrêt de la cour d'appel d'Aix-en-Provence du 10 mars 2022 doit être intégré au dossier à charge et à décharge.

Dans le litige prud'homal, Qwant soutenait que le fake call était un test destiné à montrer les capacités autonomes de son moteur en excluant les résultats Bing. La cour a retenu cette explication et a jugé que les courriels du 20 juin justifiaient le retrait de l'appel Bing « aux fins de tester la fonctionnalité » du logiciel. Elle a conclu que le salarié ne prouvait ni la dissimulation de Bing pendant l'audit CDC, ni les pressions alléguées pour y parvenir.

Cet arrêt :

  • est une appréciation judiciaire contradictoire défavorable à la thèse de la dissimulation ;
  • porte sur un litige du travail et sur les éléments alors soumis à la cour ;
  • ne constitue ni une enquête pénale sur l'obtention des 15 M€, ni une décision déclarant qu'aucune escroquerie n'a pu exister ;
  • ne détaille pas l'analyse des objets Git et des tags reproduite dans cette page, sans que cela permette d'affirmer que la cour n'en avait pas connaissance.

Il interdit en tout cas de présenter la branche demo comme une preuve déjà consacrée par la justice. Pour dépasser cette appréciation, il faudrait produire des éléments nouveaux et décisifs : rapport Cardiweb, archive du code examiné, instructions de démonstration, déclarations des auditeurs et documents du comité d'investissement.

Rappel applicable à toute mention de l'issue prud'homale dans cette page. J'impute aussi ce résultat à des actes et omissions précisément documentés que je qualifie de fautes professionnelles manifestes, graves et inexcusables commises par Me Camille Poinat. Le grief central est que des fichiers ont été matériellement annexés mais laissés probatoirement inertes faute d'articulation dans les conclusions, tandis qu'aucune demande ciblée de production n'a été adressée à Qwant. Cette qualification, son lien causal et la perte de chance restent à faire juger contradictoirement ; l'arrêt du 10 mars 2022 demeure applicable. Voir l'analyse détaillée du chapitre 31.

5. La BEI : un faisceau plus faible

Le communiqué BEI du 28 octobre 2015 (ouvre dans une nouvelle fenêtre) annonce 25 M€ sous Horizon 2020/InnovFin. Il présente la vie privée, l'anonymisation des requêtes et la neutralité comme des valeurs essentielles de Qwant et affirme que ses valeurs et technologies sont validées par la France, l'Allemagne et l'Europe.

Le dernier commit de master présent dans le dépôt au soir du 28 octobre 2015 est :

0a5217c2e6947b18dbeb25035cdd7b94a8c2c426
2015-10-28 10:17:26 +01:00
Merge branch 'prelive' into 'master'

Dans le blob search_web.php associé, la méthode appelle par défaut Yahoo BOSS et se replie sur Bing en cas d'erreur :

return $this->getApiResults('yboss', ...);

Cette photographie établit que le chemin Web de ce dépôt utilisait alors un fournisseur externe, et non un index Qwant, pour ses résultats ordinaires. Elle ne suffit pas à établir une tromperie de la BEI :

  • le communiqué BEI n'affirme pas expressément que 100 % des résultats proviennent d'un index propre ;
  • le dépôt ne décrit pas toute l'architecture de Qwant ;
  • aucune pièce ne montre le code remis à la BEI ou une déclaration contractuelle dissimulant Yahoo ou Bing ;
  • le flux search_ads.php analysé ci-dessus n'apparaît qu'en juin 2016 et ne peut prouver rétroactivement l'état d'octobre 2015 ;
  • le contrat, les déclarations et garanties, les rapports de suivi et les conditions de décaissement restent indisponibles.

La preuve BEI s'arrête donc à ceci : les qualités relatives à la vie privée et à la technologie ont accompagné le financement ; le dépôt soulève des questions sur l'autonomie du chemin Web ; la tromperie déterminante du financeur n'est pas démontrée.

6. Bpifrance : aucune chaîne probatoire disponible

Le versement de 450 000 € en 2014 attribué à Bpifrance repose, dans le corpus actuel, sur une source journalistique. Aucune notification, convention, preuve de versement, liste de livrables ou décision de clôture n'a été retrouvée.

Sans preuve primaire de l'aide et de ses conditions, il est impossible de construire la chaîne :

déclaration exigée → déclaration fausse → décision d'attribution → versement → préjudice

Il ne faut donc pas inclure Bpifrance dans une affirmation de fraude établie.

7. Matrice finale de preuve

Proposition Statut Motif
La BEI a accordé 25 M€ et la CDC a investi 15 M€ Établi Sources institutionnelles
Les communiqués associent ces opérations à la vie privée, à l'anonymat et/ou à l'indépendance Établi Communiqués BEI et CDC
Stéphane Erard rapporte la formule « ce qui va être dit ici ne doit pas en sortir » au début d'une réunion consacrée notamment à Bing et Bing Ads pendant la période d'audit Établi comme témoignage direct, non comme verbatim authentifié Note de provenance ; agendas, messages et auditions des participants à obtenir
Une branche demo a retiré l'appel direct à Bing et a été qualifiée de fake dans un courriel Établi par captures, corroboré par Git Messages natifs encore à acquérir
Le merge demo est entré dans develop, puis dans le tag v1.19.0 Établi dans le dépôt Ascendance Git vérifiée
Dans les tags master contrôlés des 2, 9 et 22 décembre 2016, 100 % des résultats organiques Web non vides du chemin étudié sont d'origine Bing Établi par le code versionné Appel direct ou réutilisation par le cache versionné ; cette réutilisation était interdite par les conditions publiques historiques, sauf contrat dérogatoire applicable à Qwant, et n'a jamais constitué une source autonome
Le déploiement exact de chaque tag et la part du trafic global passant par ce chemin À quantifier Artefacts CI/CD, inventaires et journaux manquants ; cette réserve ne porte pas sur la logique ni sur l'origine des résultats du chemin
L'existence éventuelle d'autres prototypes rendrait le chemin contrôlé autonome Contredit pour ce chemin Aucun tag master contrôlé ne porte WebBrain actif
Le 12 juin 2019, Philippe Englebert a relayé avant un audit l'affirmation apprise de Stéphane Erard selon laquelle Qwant passait par Bing en 2016, avec le code joint Établi par la pièce 15 Le message natif et la suite administrative complète restent à acquérir
Une voie licite pour obtenir le code de 2016 auprès de Qwant a été identifiée dans le fil Twitter Établi Englebert répond : « Ok on va voir pour leur demander » ; aucune demande ni analyse historique n'est documentée dans l'audit publié
La transcription Piacentino oppose un « gros mensonge au début » à des « gens de la caisse » qui auraient ensuite « compris » une « histoire technique » Établi comme contenu d'une transcription, non comme verbatim authentifié Elle soutient une chronologie de connaissance acquise, mais n'identifie ni l'état de connaissance en 2016-2017, ni les personnes, ni la date ou le canal de l'information
La transcription Piacentino mentionne Bing ou des factures Bing détenues par l'ancienne salariée Non établi ; ces termes sont absents Le texte évoque seulement, au conditionnel, des « pièces comptables » que la réponse qui lui est attribuée dit ne pas avoir remises
search_ads.php construit un envoi IP/24 + User-Agent + requête vers Microsoft Établi pour les appels éligibles dans le code URL et en-têtes explicites
Qwant transmettait en 2019 des données personnelles pseudonymisées à Microsoft Établi par la CNIL Conclusion officielle
Le même jeu et la même configuration ont fonctionné sans changement de 2016 à 2019 Non établi Continuité de production à reconstituer
La branche demo a été montrée à Cardiweb comme si elle décrivait la production Hypothèse sérieuse, non établie Rapport, archive et témoignage de l'auditeur manquants
Le récit public d'indexation propre et d'indépendance contredit le chemin technique de release contrôlé Établi Communiqué CDC/Qwant confronté au dépôt Git
La CDC a présenté ces caractéristiques comme importantes pour son engagement Établi publiquement Présomption forte de matérialité ; causalité juridique exacte à documenter par le dossier du comité
Cardiweb et la CDC ont été trompés, ou certains interlocuteurs ont ensuite connu et toléré l'écart Alternative non départagée Rapport d'audit, déclarations remises, chronologie de la connaissance et décision du comité manquants
Une volonté de dissimulation pendant l'audit est étayée Faisceau convergent très sérieux Consigne de silence rapportée, branche dédiée, retrait explicite de Bing, call fake, « comme demandé », préparation antérieure à la visite et retour du chemin de release vers Bing ; l'attribution individuelle et la qualification pénale définitive exigent encore le dossier Cardiweb/CDC, le code effectivement montré et les auditions
Une fraude aux financements publics a été commise Faisceau accablant ; qualification et responsabilités à instruire Les faits techniques et leur matérialité publique sont établis ; connaissance, intention et causalité pénale individuelles restent à déterminer

8.1. Documents

Pièce Empreinte SHA-256
Communiqué CDC/Qwant du 2 février 2017 460C76FB9A3ECB462FFA4D775A3CB0CA897DEE9842DA8DA50D5BDFEDE6A7AA35
Fac-similé du communiqué BEI du 28 octobre 2015 EE73632A19CD2F829292DDDDC8E8CF451ACFE8742B4DCF3C5C56AF202F647CC1
Capture du courriel Cardiweb du 17 juin 2016 FEB560E444E60200488A4462D6AFFF2A339FF8F9A53FF9E60D23374689BD3640
Capture du courriel du 20 juin 2016 à 9 h 25 1424F2EC9C137514E7DF00FC829CEC7CAAAC8FA202AEAB6053D7ECCE312507CE
Capture du courriel du 20 juin 2016 à 9 h 53 AC04FEF2DB33301381C133D19E6662A34B4817CD3873F070437BF6B97F3530CA
Pièce 15 — discussion et courriel Philippe Englebert 7EE06B3E625710168CA3B8BC6C95BF93A3E8AF7F441AFBA934853D17303FB9E2
Capture source redressée du courriel Englebert 5B253551CAE3FAB477D5733606811CA92EA4944658F88CBA1C6A06207A8C6E9D
Transcription PDF attribuée à l'entretien Piacentino du 19 janvier 2018 41B92D7A28A74CC75078D384C36355290A2920397BFD43E98C76FA38BCABF302

L'index des archives de financement donne la provenance et les empreintes de toutes les pièces institutionnelles.

La pièce 15 Englebert et la transcription attribuée à un entretien avec Piacentino ne sont pas des documents institutionnels. Leur empreinte fixe les fichiers examinés ; elle n'authentifie ni l'exhaustivité des échanges, ni l'auteur de la transcription, ni l'exactitude des propos attribués.

8.2. Objets Git du tag v1.32.1

Fichier Blob Git
www/application/models/search/search_web.php d36ca4c6440552df106a722c73e86822c86bc9a1
www/application/models/search/search_ads.php 6081e444d17b26cfbc60cfc2f444c8910f842818
www/application/config/production/config.php 21753cd45b1ebb2b822b6e707068e4bfde31cb49

Le blob search_web.php du commit master contemporain du communiqué BEI est eae95d587bebc3429f20a9e607f6d2d72b2c20f7.

Ces identifiants permettent de reproduire les constats dans le dépôt. Pour une procédure, une acquisition forensique complète devrait aussi documenter la provenance du clone, les remotes, le graphe de références, l'horodatage de l'acquisition et une empreinte de l'archive complète.

Pour l'audit Cardiweb et la CDC

  • lettre de mission, cahier des charges et questions posées ;
  • rapport provisoire et rapport final Cardiweb ;
  • dépôt, branche, archive ou export effectivement remis à l'auditeur ;
  • liste des personnes entendues et comptes rendus des démonstrations ;
  • réponses écrites de Qwant sur Bing, WebBrain, Mozart, l'indexation et Bing Ads ;
  • dossier et procès-verbal du comité d'investissement CDC ;
  • note indiquant les caractéristiques déterminantes et les réserves de l'auditeur ;
  • pacte d'actionnaires, déclarations et garanties, avenants et sanctions prévues ;
  • messages natifs de juin 2016 avec en-têtes complets et pièces jointes.

Pour les pièces postérieures d'alerte

  • courriel natif de Philippe Englebert du 12 juin 2019, avec en-têtes complets, destinataires, code joint et éventuelles réponses ;
  • archive exacte et empreinte du code de 2016 remis par Stéphane Erard ;
  • toute demande adressée à Qwant après la réponse « Ok on va voir pour leur demander », ainsi que la réponse et le code éventuellement fournis ;
  • mandat, périmètre, travaux et conclusions de l'audit annoncé dans ce courriel ;
  • enregistrement natif complet de l'entretien attribué à Piacentino, identité et attestation du transcripteur, méthode de restitution et passages non sélectionnés ;
  • confirmation de M. Piacentino sur le sens de « l'histoire technique », les personnes de la Caisse visées et la date de leur information.

Pour le fonctionnement technique

  • artefacts déployés, manifestes et journaux CI/CD de juin 2016 à février 2017 ;
  • configurations de production et historique de web_brain_endpoint ;
  • dépôt et paquets de WebBrain et Mozart ;
  • journaux permettant d'établir si le cache versionné était exécuté, son taux d'utilisation et les appels Bing réellement effectués ;
  • contrat Microsoft/Bing, spécifications des en-têtes et règles de conservation ;
  • versions datées des politiques de confidentialité et registres de traitement.

Pour la BEI

  • contrat de financement et annexes techniques ;
  • dossier d'instruction et due diligence ;
  • déclarations et garanties signées ;
  • conditions préalables à chaque décaissement ;
  • objectifs, jalons, rapports de suivi, avenants et éventuelles renonciations.

La CADA, dans l'avis n° 20226534 (ouvre dans une nouvelle fenêtre), a considéré que les documents relatifs à l'activité d'investisseur de la CDC décrite dans cette demande n'étaient pas des documents administratifs communicables. Le rapprochement de cet avis anonymisé avec Qwant est une inférence très forte tirée du moteur de recherche, de l'audit de juin 2016 et de l'investissement de 2017, mais le nom de la société demeure occulté.

10. Conclusion

Les documents ne laissent pas seulement apparaître une divergence abstraite de communication. Ils forment une séquence datée :

demande d'audit du code
        ↓
témoignage sur une réunion Bing/Bing Ads ouverte par « ce qui va être dit ici
ne doit pas en sortir » — verbatim à corroborer
        ↓
question sur les éléments sensibles et la préparation d'une branche séparée
        ↓
branche demo retirant l'appel Bing visible et appel qualifié de fake
        ↓
commits WebBrain/Bing, vidage de webBrainLocales, merge et tags de release
        ↓
chemin search_web entièrement dirigé vers Bing
        ↓
investissement CDC présenté comme soutenant index propre, indépendance et anonymat
        ↓
transcription de 2018 attribuant à Piacentino un « gros mensonge au début », puis
une compréhension acquise mais non datée de l'« histoire technique » par les « gens de la caisse »
        ↓
courriel Englebert de 2019 relayant l'affirmation Bing 2016, code joint,
avant un nouvel audit
        ↓
constat CNIL ultérieur d'un flux Microsoft personnel et pseudonymisé

Cette chronologie constitue une preuve documentaire accablante de l'écart technique, de sa matérialité dans le récit public de l'investissement et de la circulation ultérieure de l'alerte. Les faits publiquement visibles sont déjà déterminants :

  1. la CDC a présenté l'indexation propre, l'indépendance et la vie privée comme des raisons de son engagement ;
  2. les tags de release contrôlés établissent que 100 % des résultats organiques Web non vides du chemin étudié avaient une origine Bing, par appel direct ou par une réutilisation de résultats Bing dont les conditions publiques historiques interdisaient en principe le stockage pendant sept jours ;
  3. dans ce contexte, je témoigne d'une réunion consacrée notamment à Bing et Bing Ads ouverte par « ce qui va être dit ici ne doit pas en sortir » ; ce verbatim doit être corroboré, tandis que les courriels établissent séparément que la préparation de l'audit a donné lieu au retrait de l'appel Bing visible et à un appel qualifié de fake ;
  4. en 2019, Stéphane Erard a remis le code historique au cabinet chargé du numérique, qui a relayé l'affirmation avant un audit sans qu'aucun examen publié de ce code soit documenté.

Il n'est donc plus soutenable de réduire le dossier à une accusation non corroborée ou à une simple divergence de communication. Les documents manquants doivent établir la chronologie entre deux états qui peuvent se succéder — CDC éventuellement trompée lors de la décision, puis écart éventuellement compris et toléré par certains interlocuteurs — ainsi que la connaissance, l'intention, la causalité pénale et les responsabilités personnelles. Ils ne conditionnent plus la reconnaissance de l'écart technique lui-même.

Au stade documentaire, l'enchaînement de la consigne de silence, de l'identification des éléments « sensibles », de la branche dédiée et du remplacement explicite de Bing par un appel qualifié de fake constitue un faisceau convergent très sérieux de dissimulation délibérée pendant l'audit. Il permet de soutenir une intention frauduleuse à l'égard de l'auditeur et du financeur. Le rapport Cardiweb, le code effectivement présenté et les auditions restent nécessaires pour attribuer cette intention à chaque personne et arrêter sa qualification pénale.

Le chapitre consacré aux déclarations de Guillaume Champeau documente quatre contradictions particulièrement nettes : IP tronquée présentée comme non identifiante, dénégation de l'envoi d'une IP dérivée à Bing Ads, dénégation de toute donnée personnelle transmise aux régies et affirmation de l'absence de Bing Ads en 2016. Il montre aussi qu'en janvier 2022, Champeau maintient l'existence d'un « débat » puis refuse de répondre au point technique précis, alors que Qwant avait publiquement adopté dès octobre 2020 la qualification de pseudonymisation sans modification du code. Ces contradictions renseignent la continuité de la communication postérieure ; elles ne permettent pas de lui attribuer une participation personnelle à l'audit de juin 2016.

La formulation probatoirement soutenable est :

Les pièces publiques et versionnées établissent des faits matériels accablants : un récit d'indexation propre et d'indépendance présenté comme motif de l'investissement, un chemin Web de release dont 100 % des résultats contrôlés sont d'origine Bing, et une préparation d'audit retirant l'appel Bing visible au profit d'un appel qualifié de fake. Une transcription ultérieure attribue en outre à Piacentino le passage d'un « gros mensonge au début » à une compréhension de l'« histoire technique » par des interlocuteurs de la Caisse. Ce corpus impose une enquête sur les conditions d'obtention des 15 M€, puis sur la date et les suites de cette connaissance alléguée. Il ne remplace pas le jugement à intervenir ni l'identification contradictoire des responsabilités individuelles.

Pour la BEI, la chaîne est plus incomplète encore. Pour Bpifrance, elle ne peut pas être construite avec le corpus actuel.

⬇ Download