Cette version de privacy badger n’est plus maintenue. Tout le code source de privacy badger pour Firefox, Chrome et Opera vit maintenant dans un dépôt à : https://github.com/EFForg/privacybadger
Les questions ouvertes sur ce dépôt ne seront pas vérifiées.
Privacy Badger Firefox
Privacy Badger est un module complémentaire Firefox qui bloque les publicités espionnes et les trackers invisibles pendant que vous naviguez. Plus d’infos ici.
Guide du développeur
Mise en route
- Installer le paquet
jpm
en utilisant npm.npm install -g jpm
- Une fois le SDK activé, exécutez
jpm -b <path/to/firefox> run
pour lancer un profil Firefox propre avec Privacy Badger installé. Exécutezjpm -b <path/to/firefox> test
pour lancer des tests.jpm xpi
crée un paquet (fichier .xpi) que vous pouvez installer en le chargeant dans Firefox.
Répertoires et fichiers importants
hooks/ Git hooks. You can use them by copying into `.git/hooks`. The pre-push hook runs tests and cancels the push if they fail.release-utils/ | Files for making a self-hosted release of Privacy Badger and updates that are signed with an offline private key.Makefile | You probably don't need to worry about these unless you're a project maintainer.package.json |data/ |lib/ | Most of the code that runs in the add-on. See SDK documentation for more info on the directory structure.test/ |defaults/ |doc/ Changelog, style guide, how to make a signed release, other documentation TBD.
Contribuer
Avant de soumettre une pull request, veuillez consulter le fichier CONTRIBUTING.md.
Comment fonctionne le blocage heuristique
Voici un résumé approximatif de la logique interne de Privacy Badger pour le blocage des trackers. Pour le moment, « tracker » == « cookie tiers d’un site qui vous suit sur plusieurs origines de première partie. » Je suis en train d’ajouter le support pour d’autres types de trackers non-cookie (stockage local, etags, cache hits, etc.).
Privacy Badger utilise un algorithme heuristique (relativement simple) pour décider si un tiers vous suit. Lorsque Privacy Badger voit une requête d’un tiers sur un site Web, il vérifie :
- Le tiers lit-il un cookie ? Si non, ne le compte pas dans l’heuristique de blocage. Sinon :
- Le cookie est-il d’une entropie suffisamment élevée ? Si non, ne le comptez pas. (Actuellement, le calcul de l’entropie est très grossier ! Voir lib/heuristicBlocker.js). Sinon :
- Incrémentez le compteur du bloqueur heuristique de +1 pour ce domaine. Le domaine de base (eTLD+1) de la tierce partie a-t-il lu des cookies sur au moins 3 domaines de base de la première partie ? Si non, ne le bloquez pas (pour le moment). Sinon :
- Le tiers a-t-il affiché une politique DNT acceptable ? (Nous vérifions cela en utilisant une requête HTTP XML vers un chemin bien connu où nous demandons aux sites d’afficher des déclarations de conformité à la DNT). Si c’est le cas, ne le bloquez pas. Sinon :
- Le tiers ou l’un de ses domaines parents figure-t-il sur une liste blanche préchargée de sites à ne pas bloquer parce qu’il provoquerait probablement la rupture du site de la première partie ? Si c’est le cas, bloquez-le pour qu’il puisse lire les cookies dans un contexte tiers. Sinon :
- Bloquer entièrement les demandes du tiers.
En outre, Privacy Badger bloquera les cookies tiers d’un domaine si l’un de ses domaines parents a été bloqué ou bloqué par les cookies.
Notez que les utilisateurs peuvent définir manuellement les domaines pour qu’ils soient débloqués (vert), bloqués par les cookies (jaune) ou rouges (bloqués). Ces choix remplacent toujours le bloqueur heuristique.
Par défaut, Privacy Badger envoie l’en-tête Do Not Track sur toutes les requêtes. Il efface également le referer pour toutes les requêtes qui sont bloquées par les cookies.
Contact
Les mainteneurs actuels de ce projet sont Cooper Quintin (cjq at eff dot org) et Noah Swartz (noah at eff dot org). Il existe également une liste de diffusion pour discuter du développement de Privacy Badger à la fois pour Firefox et Chrome.