Politique de confidentialité
Écrite pour être vraie plutôt que rassurante. Lorsque quelque chose est inconfortable, c'est indiqué ici plutôt que passé sous silence.
Dernière mise à jour le 11 October 2026
Cette traduction est fournie à titre pratique. Si elle diffère de la version anglaise, la version anglaise fait foi.
- Notre engagement
- Ce que nous n'avons jamais
- Sur votre appareil
- Comptes et abonnements
- Payer par carte ou en crypto-monnaie
- La connexion
- Achemine votre connexion via un CDN
- Serveurs de sortie
- Partager un appareil ou une sortie
- Analytique
- Qui d'autre la traite
- Conservation
- Suppression et vos droits
- Ce que cela ne protège pas
- Modifications et contact
Cette politique n'a pas été revue par un juriste. C'est une description précise du système, écrite par les personnes qui l'ont conçu, publiée pour être vérifiable. Elle sera revue avant d'être invoquée comme un instrument juridique, et cet avis sera retiré une fois que ce sera fait.
Digital Services LLC exploite ForestVPN. Cette politique couvre les applications ForestVPN pour iPhone, iPad, Mac et Apple TV, pour les téléphones et tablettes Android, ainsi que pour Android TV, les applications de bureau pour Windows et Linux, le client en ligne de commande Linux et l'application routeur, les serveurs qui acheminent votre trafic, et ce site web.
Notre engagement
ForestVPN ne vend, n'utilise ni ne divulgue à un tiers quelconque les données décrites dans cette politique, quel qu'en soit le motif, sauf dans la stricte mesure nécessaire au fonctionnement du service — c'est-à-dire Apple ou Google pour le paiement, et les prestataires d'infrastructure listés ci-dessous, chacun agissant uniquement en tant que sous-traitant, sur nos instructions et dans le cadre d'un contrat. Nous ne diffusons aucune publicité, nous ne vous profilons pas, et nous ne partageons rien avec des courtiers en données, des fournisseurs d'analytique ou des réseaux d'attribution. Il n'y en a aucun dans l'application. Une exception n'agit pas comme notre sous-traitant : lorsque le DNS de votre réseau échoue ou que nos serveurs sont injoignables aux adresses qu'il a données, l'application peut interroger un résolveur DNS public (Cloudflare, Google ou Quad9) pour obtenir l'adresse de nos propres serveurs, et ce résolveur voit votre adresse IP selon sa propre politique de confidentialité. Voir Ce qui se passe quand vous vous connectez.
L'application ne contient aucun SDK d'analytique, aucun SDK d'attribution et aucun identifiant publicitaire, sur aucune plateforme. Sur les plateformes Apple, cela est déclaré dans le manifeste de confidentialité de l'application, qui ne déclare aucun suivi ni aucun domaine de suivi. Il déclare dix types de données. Neuf sont marqués comme liés à votre identité : un identifiant utilisateur, un identifiant d'appareil (un pseudonyme joint à votre compte dès que vous en associez un), l'historique des achats, la localisation approximative, le contenu d'assistance client, d'autres contenus d'utilisateur, des données de diagnostic, des données de performance et d'autres données d'utilisation. Un seul, l'interaction avec le produit, n'est pas lié : l'assistant d'aide compte depuis quel écran il a été ouvert, si vous avez choisi de partager des diagnostics et si sa réponse a réglé le problème, sans aucune étiquette d'appareil ni de compte. Le formulaire d'Apple n'accepte qu'une réponse par type de données ; les données de diagnostic et la localisation approximative sont donc marquées comme liées parce que le rapport que vous choisissez d'envoyer et les compteurs d'émission d'identifiants le sont, même si les rapports de route ne le sont pas. Neuf types servent au fonctionnement de l'application, et huit servent aussi à nos propres compteurs opérationnels décrits dans la section analytique. Sur Android, l'application ne demande jamais l'identifiant publicitaire et n'ajoute aucun SDK d'analytique, d'attribution ou de rapport de plantage qui lui soit propre. La seule bibliothèque tierce qui communique avec Google est la Google Play Billing Library, exigée par Google pour les achats intégrés, et qui fonctionne selon la propre politique de confidentialité de Google.
Ce que nous n'avons jamais
- Votre navigation. Il n'existe nulle part dans nos systèmes de champ pour les sites que vous visitez, les noms que vous recherchez, ou les adresses auxquelles vous vous connectez. Pas une courte durée de conservation — une telle colonne n'existe tout simplement pas.
- Votre identité. Il n'y a ni adresse e-mail, ni mot de passe, ni numéro de téléphone, ni nom. Un compte, si vous en créez un, est un nombre aléatoire de 128 bits. La table des comptes ne comporte aucun champ de contact, d'aucune sorte.
- Votre carte. Le paiement s'effectue chez Apple ou Google, ou — si vous achetez sur le web — chez le prestataire que vous choisissez : Stripe, CloudPayments ou NOWPayments. Apple nous transmet un reçu signé et un jeton dérivé de l'appareil ; pour un achat Google Play, nous vérifions le jeton d'achat que l'application nous transmet — accompagné d'un jeton dérivé de l'appareil rattaché à l'achat — directement auprès des serveurs de Google, sans jamais nous fier uniquement à la parole de l'application. Un achat sur le web nous donne un numéro de référence à usage unique que nous générons nous-mêmes, jamais votre carte. Dans tous les cas, nous ne voyons jamais de numéro de carte, et pour un paiement en crypto-monnaie, le prestataire est la seule partie à voir quoi que ce soit. Voir payer par carte ou en crypto-monnaie.
- Autorisations supplémentaires sur Android. L'application ne demande que deux choses au moment de l'exécution : la boîte de dialogue de consentement VPN propre au système, et, sur Android 13 et versions ultérieures, l'autorisation d'afficher des notifications — demandée une seule fois, à la première connexion, jamais au lancement à froid — couvrant l'état de connexion en cours, les avertissements lorsque votre quota de données devient faible ou se termine, et les problèmes de connexion. Elle ne demande ni votre position, ni vos contacts. Deux autres autorisations qu'elle déclare restent entièrement sur l'appareil et ne nous sont jamais envoyées : la lecture de la liste des applications installées, pour l'écran de tunnel scindé qui exclut du tunnel les applications choisies, et l'invite d'empreinte digitale, de reconnaissance faciale ou de verrouillage d'écran du système, pour restreindre l'affichage à l'écran de votre propre numéro de compte.
Ce qui vit sur votre appareil
Une clé de machine
Au premier lancement, l'application génère une paire de clés qui reste sur l'appareil : dans le trousseau système sur les plateformes Apple ; sur Android, dans le stockage privé de l'application, chiffrée avec une clé conservée dans l'Android Keystore. Elle est marquée pour ne jamais quitter cet appareil — ni vers vos autres appareils, ni vers iCloud, et sur Android, ni vers une sauvegarde ni vers une copie de transfert d'appareil. Ce n'est pas un identifiant publicitaire et elle n'est partagée avec personne. Nous stockons un hachage de sa moitié publique, ce qui permet de reconnaître un appareil d'un lancement à l'autre.
Sur les plateformes Apple, elle est permanente. Elle n'est jamais renouvelée, et elle survit à la suppression de l'application. Réinstaller l'application là-bas ne vous donne pas une nouvelle identité — l'application réinstallée présente la même clé et est reconnue comme le même appareil. Ceci est délibéré : c'est ce qui empêche un même appareil de réclamer un nombre illimité de quotas gratuits, et cela signifie que désinstaller n'y équivaut pas à une réinitialisation, ce que vous devriez savoir avant d'installer. Sur Android, la clé ne survit pas à la désinstallation de l'application ni à l'effacement de son stockage. Une réinstallation génère une nouvelle clé et est enregistrée comme un nouvel appareil, et l'ancienne fiche d'appareil reste de notre côté, orpheline, selon la conservation définie dans le tableau ci-dessous. L'application remplace également sa clé une fois, sur place, si nos serveurs signalent un jour que l'ancienne est inconnue.
Une clé de session
Chaque ticket porte sa propre clé de session, générée sur l'appareil au moment où le ticket est émis, avant toute tentative de connexion. Elle est conservée, chiffrée, dans le stockage local propre à la plateforme — le trousseau système sur les plateformes Apple, le stockage privé de l'application sur Android — jusqu'à ce que le ticket soit utilisé ou expire, et un ticket de secours créé pour la même connexion peut partager la clé de celui qu'il sauvegarde. Elle ne quitte jamais l'appareil, sauf sous sa moitié publique.
Comptes, abonnements et quotas
Un service émet les identifiants de connexion et conserve les registres nécessaires à un abonnement. Il détient :
| Registre | Ce qu'il contient | Conservation |
|---|---|---|
| Appareil | Un hachage de la clé publique de votre appareil, sa plateforme, la date à laquelle il a été vu pour la première fois et le dernier jour où il a été vu, ainsi que le compte auquel il est associé, si vous en avez associé un. | indéfiniment |
| Compte | Un nombre aléatoire de 128 bits et les dates de sa création ou de sa suspension. Aucun e-mail, aucun mot de passe, aucun nom. | indéfiniment |
| Abonnement | L'identifiant d'abonnement du magasin — celui d'Apple ou de Google — le forfait, la date jusqu'à laquelle il est payé, et l'état de l'essai. | indéfiniment |
| Événements de facturation | Un résumé de chaque événement de facturation, provenant des notifications signées d'Apple ou de la fiche d'achat renvoyée par les serveurs de Google : le type d'événement, l'identifiant d'abonnement du magasin — pour Google, c'est le jeton d'achat — le produit, la date jusqu'à laquelle il est payé, toute révocation, et le jeton d'achat dérivé de l'appareil décrit dans la section payer par carte ou en crypto-monnaie. Conservé afin qu'un litige de paiement puisse être réglé. | indéfiniment |
| Utilisation quotidienne | Les octets et le nombre de connexions par appareil et par jour, pour appliquer les limites du forfait gratuit. | 31 jours |
| Utilisation mensuelle | Le total des octets et des connexions par appareil et par mois. | indéfiniment |
| Registre des décisions | Un registre à ajout seul des décisions de quota — quel appareil a demandé, ce qui a été décidé et pourquoi — afin qu'un refus contesté puisse être expliqué des mois plus tard. | indéfiniment |
| Code d'assistance | Un code court que vous générez dans l'application, lié à votre appareil, afin qu'un e-mail de votre part puisse être rapproché d'une fiche d'appareil. | 72 heures |
| Rapport de diagnostic | Uniquement si vous appuyez sur Envoyer : version de l'application et du système, modèle de l'appareil, codes d'état de la connexion et journal des événements, état de la mémoire, du disque et de l'alimentation, pays de la langue, décalage de fuseau horaire, et toute note que vous rédigez. Il est transmis sans identité d'appareil, à un moment aléatoire dans l'heure qui suit, jamais via la connexion qu'il décrit, et stocké séparément des fiches d'appareil, uniquement sous le code d'assistance. | 72 heures |
| Rapports de route | Envoyés automatiquement par les applications sur iOS, tvOS, Android, Windows, Linux et les routeurs (pas encore macOS), au plus quelques fois par jour et jamais par le tunnel VPN. Pour le réseau où se trouve l'appareil : le type de chemin qu'a emprunté chacune de nos propres connexions (direct, front, relais ou relais CDN), si ECH a été accepté, le résultat (fonctionne, bloqué, bloqué en cours de route, réinitialisé, délai dépassé ou lent), une tranche d'octets et le jour UTC. Jamais l'appareil, le compte, la session, le serveur de sortie, l'emplacement choisi, l'adresse IP ni une heure plus fine que le jour. Un jeton aveugle qui ne peut pas être relié au compte qui l'a obtenu donne son poids à un rapport. Le service récepteur voit l'adresse de connexion comme tout serveur, ne s'en sert que pour en déduire le pays et l'opérateur réseau (ASN), et ne conserve ni l'adresse ni aucune copie d'un rapport ; il conserve des compteurs quotidiens par pays et par réseau. Nos tableaux de bord ne reçoivent que les jours comptant au moins 10 appareils, sans étiquette d'appareil. Utilisés pour choisir de meilleures routes pour tous sur ce réseau et pour voir où nous sommes bloqués ; non partagés, non utilisés pour le suivi ni la publicité. | Compteurs quotidiens 14 jours ; agrégats quotidiens publiés 3 mois |
| Association du ticket | Un hachage de la clé de votre appareil à côté d'un hachage de l'identifiant de session que le service de connexion utilisera, le forfait, et le nombre d'octets du ticket déjà utilisés. C'est la seule ligne de cette base de données qui comporte un appareil d'un côté et une session de l'autre. | règlement + 1 heure, ou jusqu'à environ 17 jours si le ticket n'est jamais utilisé |
La ligne d'association du ticket ci-dessus est l'unique exception, et elle est mentionnée ici plutôt que passée sous silence dans le tableau : tant qu'elle existe, elle nomme à la fois votre appareil et la session à laquelle il appartient, ce qui permet de facturer une session réglée sur votre quota et de couper un appareil révoqué en cours de session. Elle est supprimée automatiquement, pas sur demande — une heure après le règlement de la session qu'elle nomme, ou lorsque le ticket lui-même expire sans avoir été utilisé, selon la première échéance. Aucun de ces registres, y compris celui-ci, ne contient de serveur de sortie, l'adresse depuis laquelle vous vous êtes connecté, ni où que ce soit où vous êtes allé : le service d'émission n'apprend jamais rien de tout cela. Ils n'existent que sur le service distinct décrit dans [ce qui se passe quand vous vous connectez](#session), qui n'a aucun moyen de savoir qui vous êtes. La ligne du rapport de diagnostic ci-dessus est elle aussi conservée sur un troisième service distinct — un envoi non signé que le service d'émission ne voit jamais et ne peut pas rapprocher d'un appareil.
L'identifiant lui-même
Pour se connecter, votre appareil demande un ticket à ce service. Le ticket est signé à l'aveugle : la signature est produite sur une valeur que nous ne voyons jamais, si bien que le ticket que vous présentez au moment de la connexion ne peut pas être reconnu comme celui qui vous a été émis. Il porte exactement deux informations — quel forfait l'a signé et la clé de quelle quinzaine a été utilisée — et rien d'autre. Le service d'émission n'apprend jamais un emplacement, une sortie, une session, ni même si un tunnel a un jour été établi.
Payer par carte ou en crypto-monnaie
Apple ou Google facture chaque abonnement acheté dans l'application, et nous ne voyons jamais de numéro de carte. Sur les plateformes Apple, Apple nous transmet un reçu signé et un jeton dérivé de l'appareil. Sur Android, avant le paiement, nos serveurs fournissent à l'application un jeton dérivé de la clé de l'appareil ; l'application l'associe à l'achat en tant qu'identifiant de compte obscurci de Google Play, et Google nous le renvoie chaque fois que nous vérifions l'achat, ce qui permet de rapprocher l'abonnement de l'appareil qui l'a acheté — il ne porte ni nom, ni e-mail, ni carte. L'application transmet aussi le jeton d'achat et l'identifiant de produit que Google Play lui remet à nos serveurs, qui vérifient l'achat directement auprès de l'API de Google plutôt que de se fier à l'application ; Google nous envoie par ailleurs une Real-Time Developer Notification lorsqu'un abonnement change, que nous traitons comme une invitation à revérifier auprès de Google, jamais comme une preuve en soi. Un abonnement peut aussi être acheté sur le web, via un prestataire de paiement par carte — Stripe ou CloudPayments — ou un prestataire de paiement en crypto-monnaie, NOWPayments, et ce parcours est suffisamment différent pour être décrit séparément.
Lorsque vous payez sur le web, nous créons nous-mêmes un numéro de référence à usage unique et le transmettons au prestataire — jamais votre numéro de compte. Au sens de cette politique, le numéro de compte est un identifiant secret ; le placer dans le tableau de bord d'un prestataire de paiement, dans des charges utiles de webhook ou dans des outils d'assistance reviendrait à publier un mot de passe. La référence expire dans l'heure et, prise isolément, n'ouvre rien.
Ce que nous conservons d'un achat sur le web : quel prestataire l'a facturé, l'identifiant d'abonnement propre à ce prestataire, le forfait, la date jusqu'à laquelle il est payé, et s'il a été résilié ou révoqué. Ce que nous ne recevons ni ne stockons jamais : votre nom, votre e-mail, votre adresse de facturation, l'empreinte de votre carte, ou — pour un paiement en crypto-monnaie — quoi que ce soit vous concernant. Le code qui écrit une ligne de paiement ne comporte aucun champ pouvant contenir l'un de ces éléments ; en ajouter un serait une modification visible et revue d'un fichier que quiconque construit un rail de paiement doit forcément toucher, pas quelque chose qu'un bug pourrait faire discrètement.
Pour le dire aussi clairement que possible : une réquisition de registres qui nous est signifiée produit un forfait et une date de fin de paiement. La même réquisition signifiée au prestataire de paiement produit une personne et une carte. C'est délibéré. C'est la contrepartie de payer sur le web plutôt que via Apple ou Google, et c'est aussi pourquoi nous préférons que ces données résident chez une entreprise conçue pour les détenir plutôt que chez nous également.
Résilier un abonnement acheté sur un magasin d'applications se fait dans les réglages propres au magasin : Réglages → Apple ID → Abonnements sur les plateformes Apple, ou l'écran Abonnements de l'application Google Play Store sur Android. Un abonnement par carte se résilie via le portail client propre au prestataire, qui vous authentifie par l'e-mail qu'il détient — pas par nous, puisque nous n'en détenons aucun. Un paiement en crypto-monnaie porte sur une durée fixe et expire simplement ; il n'y a rien à résilier.
Si vous perdez votre numéro de compte après un achat sur le web, l'assistance peut demander au prestataire de vous rembourser, mais ne peut pas restaurer l'accès — il n'existe de notre côté ni e-mail ni mot de passe pour prouver que l'achat était le vôtre. Un paiement en crypto-monnaie ne peut absolument pas être remboursé. Nous préférons que vous lisiez ces deux phrases avant de payer plutôt qu'après.
Ce qui se passe quand vous vous connectez
Un service distinct accepte le ticket et ouvre la session. Il voit l'adresse depuis laquelle vous vous connectez, l'emplacement que vous avez choisi et votre clé de session à usage unique, et il conserve un registre de session contenant le forfait, l'époque, cette clé de session, la sortie, vos adresses de tunnel, une expiration et un budget d'octets. Le registre se supprime de lui-même à l'expiration de la session. Votre adresse source n'y est jamais écrite.
Ce service n'a strictement aucune liaison à une base de données. Il n'a aucune prise permettant d'atteindre un compte ou un appareil, si bien qu'un bug sur le chemin de connexion ne peut pas écrire votre identité dans un registre de session — il n'y a rien avec quoi l'écrire. Une tâche de build nommée the privacy seam holds fait échouer la compilation si une telle liaison est un jour ajoutée. C'est la seule propriété de confidentialité ici qui ne dépend pas de notre bonne conduite.
Avant de se connecter, l'application a besoin des adresses de nos propres serveurs. Elle les demande d'abord au DNS de votre réseau. Lorsque celui-ci échoue, tarde à répondre ou renvoie une mauvaise réponse, l'a déjà fait auparavant sur le même réseau, ou lorsque nos serveurs sont injoignables aux adresses qu'il a données, elle peut aussi interroger, en parallèle et non à sa place, Cloudflare (1.1.1.1), Google (8.8.8.8) ou Quad9 (9.9.9.9) via DNS chiffré, uniquement pour les adresses de nos propres serveurs, jamais pour un site que vous visitez. Chacun de ces opérateurs possède d'autres adresses publiques que l'application peut utiliser. Sur un réseau dont le DNS répond rapidement et correctement et où nos serveurs sont joignables à ces adresses, aucun d'eux n'est interrogé. Chacun de ceux qu'elle interroge apprend l'adresse IP d'où vient la question, l'heure et que cet appareil a cherché l'un de nos noms de serveur — rien d'autre : ni numéro de compte, ni identifiant de session, rien de ce que vous consultez. Nous ne leur envoyons rien d'autre que la requête, et chacun applique sa propre politique de confidentialité à ce qu'il reçoit. Si nous laissons un jour l'application interroger un autre fournisseur DNS, nous le nommerons ici avant qu'elle ne le fasse.
Achemine votre connexion via un CDN
Sur certains réseaux, nos propres serveurs sont bloqués ou ralentis, par adresse ou par nom. Lorsque cela se produit, l'application peut utiliser automatiquement un réseau de diffusion de contenu (CDN) plutôt que de se connecter directement à nous. Il y a deux routes de ce type : sur les forfaits Pro et Premium, elle peut relayer votre tunnel chiffré via le CDN plutôt que de se connecter directement à notre serveur ; et pour ses propres requêtes vers nos services de contrôle, comme la liste signée des serveurs et les tickets de session, elle peut aussi utiliser le CDN. Aujourd'hui, Bunny.net peut acheminer les deux routes, tandis que Gcore ne peut acheminer que les requêtes propres de l'application vers nos services de contrôle, pas le tunnel ; Fastly est câblé de la même façon et pourrait acheminer ce trafic à l'avenir. Ceci est automatique et n'est utilisé que lorsque votre connexion en a besoin. Cela ne change jamais ce que nous collectons à votre sujet : le CDN ne fait que relayer des octets, de la même façon qu'il relaie le trafic de n'importe quel site web ordinaire, et il ne peut lire ni votre numéro de compte ni votre identifiant de session.
Un CDN qui relaie votre connexion est configuré pour atteindre un serveur précis de chez nous — un serveur de sortie pour le tunnel, un serveur relais pour les requêtes vers nos services de contrôle — et tant que votre connexion le traverse, il voit effectivement l'adresse IP depuis laquelle vous vous connectez, le nom d'hôte de notre point de relais, l'heure et le rythme de votre trafic, et une lecture grossière de la connexion — votre emplacement approximatif et une empreinte de la façon dont votre appareil établit une connexion TLS, le type de signal que n'importe quel relais HTTPS peut calculer — de la même façon qu'il le ferait en relayant n'importe quel autre site web chiffré. Il ne voit pas ce qui se trouve à l'intérieur : WireGuard chiffre le tunnel de bout en bout entre votre appareil et notre serveur de sortie, les requêtes vers nos services de contrôle sont chiffrées entre l'application et notre serveur relais, et le CDN achemine les deux sans jamais les ouvrir, de sorte qu'il ne sait jamais à quel service de chez nous une requête est destinée. Nos propres serveurs rejettent cette lecture grossière dès leur arrivée et ne la stockent jamais ; ce qui diffère selon le prestataire, ci-dessous, c'est si le CDN lui-même conserve un registre reliant votre adresse IP au serveur vers lequel il vous a relayé.
- Bunny.net achemine ce trafic aujourd'hui. Nous désactivons la journalisation des requêtes sur nos zones, de sorte que Bunny ne conserve aucun registre reliant votre adresse IP au serveur que vous avez atteint.
- Gcore ne peut acheminer que les requêtes propres de l'application vers nos services de contrôle, pas le tunnel, et n'acheminera pas le tunnel sans que nous l'ayons d'abord dit ici. Contrairement à Bunny, la journalisation de Gcore ne peut pas être désactivée sur notre compte : elle conserve pendant 3 jours l'adresse IP depuis laquelle vous vous connectez, le nom d'hôte auquel la requête était adressée et l'heure, et peut être lue par quiconque détient un jeton sur ce compte. Gcore transmet aussi votre adresse IP à notre serveur dans un en-tête de requête ; notre serveur la rejette dès son arrivée et ne la stocke jamais. Nous le divulguons plutôt que de le cacher, et nous cesserons de recourir à Gcore pour cela, ou le désactiverons, le jour où Gcore nous le permettra.
- Fastly n'achemine encore aucun de nos trafics. Si cela commence, nous décrirons ici ce qu'il peut voir, de la même façon que pour les deux autres, avant qu'il n'achemine quoi que ce soit.
Aucun de ces trois prestataires ne peut lire votre numéro de compte ni un identifiant de connexion, et aucun ne dispose d'un moyen de relier la connexion qu'il relaie à qui vous êtes de notre côté. Pour décider si un réseau a besoin du CDN, l'application conserve sur votre appareil une petite note pour chaque réseau depuis lequel elle s'est connectée, classée sous un nom haché de ce réseau : si le CDN y était nécessaire, la date à laquelle elle l'a appris pour la dernière fois, et les noms d'emplacements publics qui ont fonctionné. Elle ne conserve jamais en clair une adresse, un serveur ou un nom de réseau, et cela est exclu de tout rapport de diagnostic que vous nous envoyez. L'application ne contacte le CDN que sur un réseau où la connexion directe à notre serveur a échoué, maintenant ou au cours du dernier jour. Pour que la route Premium reste abordable, nous comptons par appareil et par mois civil combien d'octets y ont transité. Nous n'enregistrons jamais quel serveur, quand, ni depuis où.
Serveurs de sortie
Les serveurs de sortie démarrent depuis la mémoire. Il n'y a aucun disque sur lequel écrire, l'état est effacé à chaque redémarrage, et il n'existe aucun chemin de code de journalisation dans le logiciel qui les fait fonctionner.
Pendant qu'une session est active, une sortie traite nécessairement l'adresse depuis laquelle vous vous connectez — c'est elle qui termine le tunnel — ainsi qu'une clé de session qu'elle ne reverra jamais et le trafic lui-même. Elle n'en enregistre rien. Ce qu'elle rapporte est agrégé, différé et arrondi : des octets par pair et par période, jamais par connexion ni par destination.
Pour rester hébergée, une sortie peut limiter le débit ou refuser localement des schémas de trafic abusifs, en n'utilisant que ce qui se trouve en mémoire sur ce serveur et en se basant sur le réseau d'où provient le trafic, jamais sur un abonné. Il n'existe aucun registre d'abus qui survit à une session, car en conserver un signifierait relier une session à une personne.
Partager un appareil ou une sortie
Si vous invitez quelqu'un à utiliser l'une de vos sorties, cette personne se connecte à internet via votre connexion, comme le ferait n'importe quel invité sur votre réseau : les sites web, les jeux et votre fournisseur d'accès verront son trafic comme provenant de votre connexion, et vous apparaîtrez comme la personne qui l'utilise. Si vous invitez quelqu'un à atteindre un seul appareil, cette personne peut atteindre cet appareil et rien d'autre sur votre réseau.
Le trafic entre vos appareils, ainsi que le trafic d'un invité via un partage, est chiffré de bout en bout. Lorsqu'une connexion directe n'est pas possible, il passe par un relais ForestVPN qui ne peut pas le lire et ne conserve aucune trace des appareils qui communiquent entre eux. Sur les réseaux qui nous bloquent, il peut aussi passer par un réseau de diffusion de contenu, qui voit seulement que des données chiffrées circulent, comme pour le reste du trafic ForestVPN (voir ci-dessus « Acheminer votre connexion via un CDN »).
Il n'existe aucune trace de qui a fait quoi. ForestVPN ne conserve aucun journal de ce qu'un invité fait via un partage, de sorte que ni l'hôte ni nous ne pouvons montrer qui a fait quelque chose.
Un partage est stocké sous la forme de deux identifiants mesh aléatoires et d'un petit état — pour qui il est destiné, ce qu'il permet et quand il se termine — jamais un journal d'utilisation. La fin d'un partage entraîne sa suppression après 30 jours. Notre hébergeur, Cloudflare, peut encore le récupérer jusqu'à 30 jours supplémentaires après cela, à ses propres fins de reprise après sinistre.
Analytique
Nous conservons des compteurs opérationnels : le nombre d'identifiants émis et refusés, les résultats et les durées des connexions, les totaux d'octets, et des agrégats par serveur, des comptages quotidiens des nouveaux appareils, des nouveaux comptes, des clients payants et des changements d'abonnement, et des compteurs de l'assistant d'aide (sujet, point d'entrée, partage ou non des diagnostics, utilité de la réponse), dont aucun ne porte d'appareil, de compte ni de texte. Ils sont écrits dans un entrepôt analytique que rien sur le chemin des requêtes ne relit.
Deux choses à ce sujet doivent être dites clairement.
- Les lignes concernant l'émission et le règlement des identifiants portent une étiquette pseudonyme par appareil — un hachage à clé du hachage de la clé de votre appareil, pas le hachage lui-même — accompagnée d'un code pays et d'un numéro d'opérateur réseau. Il s'agit de données personnelles au sens du RGPD, pas de données anonymisées.
- La conservation est de 90 jours et ne peut pas être modifiée, et il n'existe aucune API de suppression. Nous ne pouvons pas supprimer les lignes analytiques d'une personne sur demande ; nous pouvons seulement attendre leur expiration. Faire tourner la clé qui produit l'étiquette rend les lignes futures orphelines par rapport aux lignes passées ; cela ne supprime pas les lignes passées, et cela ne rétracte pas une corrélation établie pendant que l'ancienne clé était en usage.
Aucune ligne ne porte à la fois un sujet et un serveur de sortie. Les jeux de données qui portent une étiquette d'appareil ne portent pas de serveur, et ceux qui portent un serveur ne portent pas de sujet. Les rapports de route sont des agrégats sans étiquette d'appareil, publiés sur nos tableaux de bord uniquement pour les jours comptant au moins 10 appareils.
Ce site web n'exécute aucune analytique. Il dépose un seul cookie fonctionnel (fvpn_locale) qui mémorise votre langue pendant un an et ne sert à rien d'autre. Il ne charge aucun script tiers, n'intègre rien, et héberge lui-même ses polices.
Qui d'autre la traite
Chacun d'eux agit sur nos instructions, dans le cadre d'un contrat, et est tenu de protéger les données au moins selon la norme définie ici. Les résolveurs DNS publics font exception : ils agissent selon leur propre politique de confidentialité, pas la nôtre.
- Cloudflare
- Héberge les services de contrôle, leurs bases de données et ce site web, termine le TLS pour nos domaines, et stocke le rapport de diagnostic que vous pouvez choisir de nous envoyer, dans un compartiment indexé uniquement par votre code d'assistance et distinct de toute fiche d'appareil. Le TLS se terminant chez lui, Cloudflare est en mesure de voir les métadonnées des requêtes vers nos noms d'hôte, indépendamment de ce que notre propre code enregistre. C'est une limite réelle, et nous préférons l'énoncer plutôt que de la minimiser.
- Nebius
- Exécute le modèle de langage derrière l'assistant d'assistance, dans l'UE, dans le cadre d'un contrat à conservation nulle des données — il ne conserve pas votre conversation après y avoir répondu et ne s'entraîne pas dessus. Il ne reçoit jamais votre numéro de compte, votre adresse IP, ni les serveurs auxquels vous vous connectez. Voir assistant d'assistance.
- Apple
- Vend et facture chaque abonnement acheté dans l'application, et nous indique qu'un abonnement existe. Apple a sa propre politique de confidentialité et sa propre relation avec vous. Nous recevons un reçu signé et un jeton dérivé de l'appareil, jamais un numéro de carte, un nom ou un e-mail.
- Vend et facture chaque abonnement acheté dans l'application Android, et nous indique qu'un abonnement existe. Google a sa propre politique de confidentialité et sa propre relation avec vous. L'application nous transmet un jeton d'achat et un identifiant de produit, accompagnés d'un jeton dérivé de l'appareil rattaché à l'achat en tant qu'identifiant de compte obscurci de Google Play ; nous vérifions le tout directement auprès des propres serveurs de Google, et Google nous envoie par ailleurs une Real-Time Developer Notification lorsqu'un abonnement change — jamais un numéro de carte, un nom ou un e-mail.
- Stripe
- Traite les paiements par carte pour les abonnements achetés sur le web, et exploite le portail client où un abonnement par carte est géré et résilié. Stripe détient le nom, l'e-mail, l'adresse de facturation et les détails de carte de l'acheteur — rien de tout cela ne nous parvient.
- CloudPayments
- Un prestataire de paiement par carte alternatif pour les achats sur le web, proposé là où il sert mieux les acheteurs que Stripe. Même frontière : il détient l'identité de paiement, nous détenons une ligne d'abonnement sans nom associé.
- NOWPayments
- Traite les paiements en crypto-monnaie pour les achats sur le web. C'est le moyen de paiement où même le prestataire détient le moins d'informations sur vous — ni carte, ni compte bancaire — et, contrairement aux autres, un paiement en crypto-monnaie ne peut pas être remboursé. Voir payer par carte ou en crypto-monnaie.
- Fournisseurs d'hébergement
- Les entreprises qui hébergent nos serveurs de sortie. Elles peuvent voir le volume de trafic à la lisière de leur propre réseau, comme n'importe quel hébergeur. Elles n'ont aucun accès à la mémoire des serveurs ni à votre trafic.
- Bunny.net
- Relaie le tunnel chiffré d'une connexion Pro ou Premium, ainsi que les requêtes chiffrées de l'application vers nos services de contrôle, lorsqu'un réseau bloque nos propres serveurs, et uniquement dans ce cas. Pendant qu'il relaie, il voit l'adresse IP depuis laquelle vous vous connectez, le nom d'hôte de notre point de relais et l'heure du trafic, jamais ce qui se trouve à l'intérieur, lequel de nos services est atteint, votre compte ni la clé de votre appareil. Sa journalisation des requêtes est désactivée sur nos zones. Voir acheminer votre connexion via un CDN.
- Gcore
- Peut relayer uniquement les requêtes chiffrées propres de l'application vers nos services de contrôle, pas le tunnel, lorsqu'un réseau bloque nos propres serveurs, et uniquement dans ce cas. Pendant qu'il relaie, il voit l'adresse IP depuis laquelle vous vous connectez, le nom d'hôte de notre point de relais et l'heure du trafic, jamais ce qui se trouve à l'intérieur, lequel de nos services est atteint, votre compte ni la clé de votre appareil. Contrairement à Bunny.net, sa journalisation ne peut pas être désactivée sur notre compte : il conserve l'adresse IP depuis laquelle vous vous connectez, le nom d'hôte auquel la requête était adressée et l'heure pendant 3 jours. Voir acheminer votre connexion via un CDN.
- AWS
- Met en miroir la liste signée des serveurs, afin qu'un appareil qui ne peut pas atteindre notre propre domaine puisse tout de même en récupérer une. Lorsqu'un appareil bascule sur ce miroir, AWS voit l'adresse IP depuis laquelle il se connecte et l'heure de cette récupération — jamais votre compte, la clé de votre appareil, ni le serveur que vous utiliserez ensuite.
- Résolveurs DNS publics
- Cloudflare, Google et Quad9 exploitent des résolveurs DNS publics que l'application peut interroger, via DNS chiffré, pour obtenir les adresses de nos propres serveurs lorsque le DNS de votre réseau échoue, tarde, renvoie une mauvaise réponse ou que nos serveurs sont injoignables aux adresses qu'il a données. Ils ne sont pas nos sous-traitants : chacun agit selon sa propre politique de confidentialité, pas la nôtre, et apprend votre adresse IP, l'heure et le nom de serveur recherché, jamais votre compte ni ce que vous consultez. Voir Ce qui se passe quand vous vous connectez.
Conservation
La conservation est indiquée par registre dans le tableau ci-dessus. En résumé : les registres de session ne durent que le temps de la session ; les associations de ticket — le seul registre qui comporte un appareil et une session sur la même ligne — sont supprimées une heure après le règlement ou à l'expiration propre du ticket, jamais plus d'environ 17 jours ; les codes d'assistance et les rapports de diagnostic durent 72 heures ; l'utilisation quotidienne s'efface après 31 jours ; l'analytique expire à 90 jours et ne peut pas être supprimée plus tôt ; les lignes d'appareil, les lignes de compte, les registres d'abonnement et de facturation, les totaux mensuels d'octets et le registre des décisions sont conservés indéfiniment, car un litige d'abonnement ou un quota refusé doit pouvoir être expliqué plus tard. Il s'agit ici de la conservation pour ce que nous détenons — le reçu d'un achat sur le web, la correspondance de litige et la fiche de carte résident chez le prestataire et suivent sa propre politique de conservation, pas celle-ci.
Suppression, et ce qu'une demande peut réellement atteindre
Écrivez à support@fvpn.net avec un code d'assistance provenant de l'application — Account → Get help sur les plateformes Apple ; sur Android, appuyez sur l'état de la connexion en haut de l'application, puis Health → Report a problem → Get a support code sur un téléphone ou une tablette, ou Connection details → Report a problem → Get a support code sur Android TV. Le code est le seul moyen pour nous de savoir quelle fiche d'appareil est la vôtre : nous n'avons ni adresse e-mail, ni nom d'utilisateur, ni nom de compte pour vous authentifier. Sans lui, nous ne pouvons agir sur aucune demande concernant un appareil précis.
Pour être précis sur ce que cette demande atteint aujourd'hui :
- Les lignes d'utilisation quotidienne peuvent être supprimées, et expirent de toute façon après 31 jours.
- Un appareil peut être dissocié sans supprimer le compte. Un appareil peut se déconnecter lui-même depuis la page Compte de l'application, et tout autre appareil du compte peut le retirer, dans l'application ou dans la console sur fvpn.net ; l'appareil continue de fonctionner avec l'offre Free. Un compte accepte jusqu'à dix appareils, un appareil arrivé depuis moins de 7 jours ne peut pas retirer les plus anciens, et un routeur peut se déconnecter lui-même mais ne peut pas retirer d'autres appareils. La suppression du compte entier est distincte, ci-dessous.
- La suppression de compte dans l'application est possible : Account → Delete account. C'est définitif — cela supprime le compte, ramène chaque appareil qui y était associé à un état anonymisé (chacun conserve ce qu'il a acheté séparément), et ne peut pas résilier les abonnements détenus par le compte, que le magasin — Apple ou Google — continue de facturer jusqu'à ce que vous les résiliiez vous-même dans ses propres réglages d'abonnement. Elle demande le numéro complet du compte plutôt que de se fier au fait que vous êtes connecté sur un appareil, car chaque appareil d'un compte partage cette autorité à égalité, et aucun d'eux ne devrait pouvoir le détruire au nom des autres. Elle ne supprime qu'un compte : un appareil sans compte associé n'a ici rien à supprimer.
- Les lignes analytiques ne peuvent absolument pas être supprimées et expirent à 90 jours.
- Les totaux mensuels d'octets, les registres de facturation et le registre des décisions sont conservés. Le registre est volontairement à ajout seul : un registre qui peut être modifié discrètement ne peut pas régler un litige.
Vous pouvez arrêter toute collecte à tout moment en supprimant l'application et en ne vous connectant plus. Notez que cela ne supprime pas les registres ci-dessus, et que la clé de machine survit à la suppression sur les plateformes Apple — voir ce qui vit sur votre appareil.
Si vous êtes dans l'UE, au Royaume-Uni ou en Californie, vous disposez de droits d'accès, de rectification, de suppression et de portabilité sur les données personnelles que nous détenons à votre sujet. Un hachage de clé d'appareil est une donnée personnelle pseudonyme, pas une donnée anonymisée, et nous le traitons comme tel. Lorsque nous ne pouvons pas satisfaire une demande — les cas ci-dessus — nous indiquerons lequel s'applique et pourquoi, plutôt que de prétendre ne pas pouvoir vous identifier.
Ce que cela ne protège pas
Un registre relie votre appareil à une session, et par son intermédiaire, à votre compte si vous en avez associé un. Il s'agit de l'association de ticket décrite dans comptes et abonnements : elle existe pour que le quota puisse être mesuré et qu'un appareil révoqué puisse être coupé en cours de session, et elle est supprimée une heure après le règlement de cette session. Rien nulle part ne relie l'un ou l'autre à une sortie. Nous le disons ainsi plutôt que de revendiquer une séparation que nous n'avons pas — et voici les autres limites, pour la même raison :
- Le service qui émet les identifiants et la sortie qui achemine votre trafic voient chacun votre clé de session à des moments différents. Des parties contraintes conjointement, ou qui se seraient concertées, pourraient l'utiliser pour reconstituer une session de bout en bout. Nous ne conservons aucun registre qui permettrait cela, et aucune d'elles ne peut le faire seule.
- Si vous utilisez la page des appareils pour envoyer un routeur vers une autre sortie, l'emplacement que vous avez choisi est enregistré au regard de cet appareil — et donc, si l'appareil est associé à un compte, au regard de votre compte — jusqu'à ce que vous en choisissiez un autre. C'est ce que vous avez demandé, jamais ce que nous avons observé : l'accusé de réception de l'appareil est un numéro renvoyé en écho, pas un lieu.
- Le TLS de nos domaines se termine chez Cloudflare, si bien que les métadonnées des requêtes vers nos noms d'hôte y existent indépendamment de notre propre code.
- Le hachage de la clé de votre appareil est stable, et les lignes analytiques pseudonymes qui y sont indexées vivent 90 jours.
- L'ensemble des personnes dont vous êtes indiscernable est celui de tous ceux qui détiennent un ticket signé par la même clé de forfait pendant la même quinzaine — pas « tous nos utilisateurs ». Au lancement, cet ensemble est restreint. Nous préférons le dire plutôt que de décrire un anonymat que nous n'avons pas encore.
Un VPN déplace qui peut voir votre trafic. Cela ne vous anonymise pas, et celui-ci ne le prétend pas.
Enfants, modifications et contact
Le service ne s'adresse pas aux enfants de moins de 13 ans, et nous ne collectons pas sciemment de données les concernant. Nous n'avons aucun moyen de connaître l'âge d'un utilisateur, car nous ne collectons rien qui nous le dirait.
Si cette politique change de manière substantielle, nous mettrons à jour la date en haut de la page, décrirons ici ce qui a changé, et afficherons un avis dans les applications qui le permettent. Comme aucune adresse e-mail n'est enregistrée, nous ne pouvons pas vous prévenir par courrier.
11 October 2026 : Nous avons ajouté une section sur le partage d'un appareil ou d'une sortie avec une autre personne : comment apparaît le trafic d'un invité, ce que nos relais peuvent voir ou non, et ce qui est conservé d'un partage. Voir partager un appareil ou une sortie.
4 octobre 2026 : lorsque le DNS de votre réseau échoue, tarde à répondre, renvoie une mauvaise réponse ou que nos serveurs sont injoignables aux adresses qu'il a données, l'application peut aussi interroger Cloudflare, Google ou Quad9 via DNS chiffré pour obtenir les adresses de nos propres serveurs ; chacun de ceux qu'elle interroge apprend votre adresse IP, l'heure et que l'appareil a cherché l'un de nos noms de serveur, et rien d'autre. Voir Ce qui se passe quand vous vous connectez.
4 octobre 2026 : Gcore (gcore.com) rejoint Bunny.net (bunny.net) comme CDN, et un CDN peut désormais aussi relayer les requêtes de l'application vers nos services de contrôle, pas seulement le tunnel ; Gcore ne peut relayer que ces requêtes, pas le tunnel. Un CDN, sur l'une ou l'autre route, peut voir votre adresse IP, le nom d'hôte de notre point de relais et l'heure, jamais le contenu ni lequel de nos services est atteint. Gcore conserve votre adresse IP, le nom d'hôte auquel la requête était adressée et l'heure 3 jours ; la journalisation de Bunny est désactivée sur nos zones. Voir acheminer votre connexion via un CDN.
10 octobre 2026 : Les applications peuvent désormais envoyer des rapports de route — des diagnostics réseau anonymes et agrégés, non liés à votre identité ni à votre compte. Nous les avons ajoutés à ce que conservent nos services de contrôle et corrigé notre description du manifeste de confidentialité d'Apple.
Questions, demandes ou réclamations : support@fvpn.net. Le responsable du traitement est Digital Services LLC.