Diese Version von privacy badger wird nicht mehr gepflegt. Der gesamte Quellcode für Privacy Badger für Firefox, Chrome und Opera befindet sich jetzt in einem Repository unter: https://github.com/EFForg/privacybadger
Fragen, die in diesem Repository geöffnet werden, werden nicht geprüft.
Privacy Badger Firefox
Privacy Badger ist ein Firefox-Add-on, das spionierende Werbung und unsichtbare Tracker beim Surfen blockiert. Mehr Infos hier.
Anleitung für Entwickler
Einstieg
- Installieren Sie das
jpm
-Paket mit npm.npm install -g jpm
- Wenn das SDK aktiviert ist, führen Sie
jpm -b <path/to/firefox> run
aus, um ein sauberes Firefox-Profil mit installiertem Privacy Badger zu starten. Führen Siejpm -b <path/to/firefox> test
aus, um Tests durchzuführen.jpm xpi
erzeugt ein Paket (.xpi-Datei), das Sie durch Laden in Firefox installieren können.
Wichtige Verzeichnisse und Dateien
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.
Beitragen
Bevor Sie einen Pull-Request einreichen, lesen Sie bitte die CONTRIBUTING.md Datei.
Wie heuristisches Blockieren funktioniert
Dies ist eine grobe Zusammenfassung von Privacy Badgers interner Logik zum Blockieren von Trackern. Im Moment ist „Tracker“ == „Drittanbieter-Cookie von einer Website, die Sie auf mehreren Erstanbieter-Ursprüngen verfolgt.“ Ich bin dabei, Unterstützung für andere Tracker-Typen, die keine Cookies sind, hinzuzufügen (lokale Speicherung, Etags, Cache-Treffer, etc.).
Privacy Badger verwendet einen (relativ einfachen) heuristischen Algorithmus, um zu entscheiden, ob ein Dritter Sie verfolgt. Wenn Privacy Badger eine Anfrage eines Drittanbieters auf einer Website sieht, prüft er:
- Liest der Drittanbieter ein Cookie? Wenn nicht, wird es bei der Blockierungsheuristik nicht berücksichtigt. Andernfalls:
- Ist das Cookie ausreichend hochentropisch? Wenn nicht, zählen Sie es nicht. (Derzeit ist die Entropieberechnung sehr grob! Siehe lib/heuristicBlocker.js.) Andernfalls:
- Erhöhen Sie den Zähler des heuristischen Blockers um +1 für diese Domain. Hat die Basisdomain (eTLD+1) des Drittanbieters Cookies auf mindestens 3 Erstanbieter-Basisdomains gelesen? Wenn nicht, blockieren Sie sie (vorerst) nicht. Ansonsten:
- Hat der Drittanbieter eine akzeptable DNT-Richtlinie veröffentlicht? (Wir überprüfen dies mit einer XML-HTTP-Anfrage an einen bekannten Pfad, auf dem wir Websites bitten, Erklärungen zur Einhaltung von DNT zu posten.) Wenn ja, blockieren Sie es nicht. Andernfalls:
- Ist der Drittanbieter oder eine seiner übergeordneten Domains auf einer vorinstallierten Whitelist von Sites, die nicht blockiert werden sollen, weil sie wahrscheinlich zu einem Ausfall der Erstanbieter-Site führen würden? Wenn ja, blockieren Sie das Lesen von Cookies im Drittanbieterkontext. Andernfalls:
- Blockieren Sie Anfragen von Drittanbietern vollständig.
Zusätzlich blockiert Privacy Badger Cookies von Drittanbietern von einer Domain, wenn eine ihrer übergeordneten Domains blockiert oder Cookie-blockiert wurde.
Beachten Sie, dass Benutzer Domains manuell als nicht blockiert (grün), Cookie-blockiert (gelb) oder rot (blockiert) festlegen können. Diese Auswahl überschreibt immer den heuristischen Blocker.
Standardmäßig sendet Privacy Badger den Do Not Track-Header bei allen Anfragen. Es löscht auch den Referer für alle Anfragen, die von Cookies blockiert werden.
Kontakt
Die aktuellen Betreuer dieses Projekts sind Cooper Quintin (cjq at eff dot org) und Noah Swartz (noah at eff dot org). Es gibt auch eine Mailingliste, um die Entwicklung von Privacy Badger für Firefox und Chrome zu diskutieren.