La preuve
Tous les sites d'outils du web écrivent qu'ils respectent votre vie privée. Nous préférons vous montrer comment le vérifier. Il y a trois façons de le faire, de la plus rapide à la plus complète, et aucune ne demande de savoir programmer.
La méthode rapide : l'inspecteur réseau
Le navigateur affiche lui-même la liste complète de ce qui entre et de ce qui sort. C'est la preuve la plus directe, et elle prend dix secondes.
- Ouvrez un outil de ce site
Par exemple la visionneuse de métadonnées. Attendez que la page soit chargée. - Ouvrez l'inspecteur
Touche F12 sur Windows et Linux. Sur Mac, Cmd + Option + I. On peut aussi passer par le menu du navigateur, à l'entrée « Outils de développement » ou « Inspecter ». - Allez sur l'onglet « Réseau »
Il s'appelle « Network » si votre navigateur est en anglais. Cliquez ensuite sur l'icône d'interdiction ou sur « Effacer » pour vider la liste : elle doit être vide avant l'essai. - Déposez un fichier et lancez le traitement
C'est le moment qui compte. Regardez la liste pendant que l'outil travaille et pendant que vous téléchargez le résultat. - Constatez
La liste reste vide. Aucune ligne n'apparaît, ni pendant la lecture du fichier, ni pendant le traitement, ni au téléchargement, parce que le téléchargement est fabriqué par votre propre navigateur à partir de la mémoire de l'onglet.
Une nuance honnête : au tout premier chargement de la page, l'inspecteur montre bien des lignes. Ce sont les fichiers du site lui-même, la page, la feuille de style, les polices, les scripts, tous servis depuis ce même domaine. C'est ce qu'il faut regarder APRÈS ce chargement, pendant le traitement : c'est là que les autres sites téléversent, et c'est là que la liste doit rester vide.
La méthode sans appel : coupez la connexion
Un site qui a besoin d'un serveur pour travailler ne peut pas travailler sans réseau. Celui-ci, si.
- Visitez l'outil une première fois, avec la connexion
Le site s'installe alors dans la mémoire de votre navigateur, exactement comme une application. - Coupez le réseau
Mode avion, ou débranchez le câble, ou dans l'inspecteur passez l'onglet Réseau en mode « Hors ligne ». - Rechargez la page et utilisez l'outil
Tout fonctionne : la page s'affiche, le fichier se dépose, le traitement se fait, le résultat se télécharge. Un site qui téléverse ne peut pas faire ça.
La méthode complète : lisez le code
C'est la plus lente et la plus solide. Elle ne demande aucun compte et aucun outil particulier.
- Affichez le code source de la page
Ctrl + U, ou clic droit puis « Afficher le code source ». Le code du site n'est ni compressé ni brouillé, et c'est un choix : un code illisible ne se vérifie pas. Une seule exception, la bibliothèque PDF embarquée : elle est servie minifiée, telle que son auteur la publie, et la page méthode donne son poids, sa licence et le fait qu'elle n'appelle aucun réseau. - Ouvrez le fichier de l'outil
Le code de chaque outil tient dans UN seul fichier JavaScript, nommé d'après lui, chargé depuis ce domaine. Vous y trouverez la lecture du fichier, le traitement, et la fabrication du résultat. La page, elle, charge en plus le socle commun du site, et dans le coin PDF la bibliothèque embarquée : ces fichiers-là sont les mêmes partout. - Cherchez ce qui pourrait envoyer quelque chose
Dans un navigateur, il n'y a qu'une petite famille de façons d'envoyer des données : les mots à chercher sont fetch, XMLHttpRequest, sendBeacon, WebSocket, EventSource, et les balises d'image ou de script fabriquées à la volée. Vous allez en trouver, et c'est voulu. Ils apparaissent dans des commentaires, qui expliquent justement que ces fonctions ne sont jamais appelées ; ailleurs, le mot fetch est simplement l'un des mots de la liste EFF qui sert au générateur de phrases de passe. Les outils d'image, eux, fabriquent bien une balise d'image : son adresse est toujours celle du fichier que vous venez de déposer, une adresse blob: qui ne sort pas de votre navigateur. Ce qu'il faut chercher, ce n'est donc pas le mot, c'est un appel réel vers une adresse distante. Il n'y en a aucun.
Et une preuve que nous vous devons, celle de la machine
Les trois méthodes ci-dessus vous appartiennent : elles vous permettent de vérifier sans nous. La quatrième nous engage, nous.
Avant chaque publication du site, un programme lance un vrai navigateur, ouvre chaque page outil, y dépose un vrai fichier de test, lance le traitement, et surveille le réseau au niveau du navigateur lui-même, pas au niveau du code de la page. S'il voit partir une seule requête vers un autre serveur pendant le traitement, la publication est refusée. Pas signalée : refusée.
C'est le seul verrou du projet qui ne se contourne pas en changeant un texte. Il vit dans le dossier du projet sous le nom de « validate-localite », et il tourne à chaque fois.