FireFox: Facebook’s Like Button elegant blockieren

NoScript’s mächtiger Application Boundaries Enforcer (ABE)

Es gibt einen unkomfortablen und einen eleganten Weg, den Like Button von Facebook auf anderen Seiten mit Hilfe von NoScript zu blockieren.

Warum sollte man den Like Button blockieren?

Weil Facebook über den Like Button für deinen Account aufzeichnet, auf welchen Webseiten du dich bewegst, selbst wenn du den Like Button gar nicht anklickst.

Der unkomfortable Weg (nicht empfohlen)

Der unkomfortable Weg sieht so aus, dass man einfach die Facebook domains (facebook.com, fbcdn.net und facebook.net) NICHT zur Positivliste (whitelist) von NoScript hinzufügt. D.h. Scripte von diesen Domains werden generell nicht erlaubt.

Möchte man aber Facebook benutzen, muss man dann diese Domains immer per Hand temporär zulassen. Surft man dann nebenbei noch auf anderen Seiten, greift der Schutz nicht.

Der elegante Weg

Der elegante Weg benötigt einmalig ca. 20 Sekunden Konfiguration vom Benutzer.
Man öffnet in den Einstellungen den Reiter ABE und fügt folgende Regel hinzu:

Site .facebook.com .fbcdn.net .facebook.net
Accept from SELF
Accept from .facebook.com .fbcdn.net .facebook.net
Deny INCLUSION

Auf diese Weise werden Objekte wie der Like Button nur auf den offiziellen Seiten von Facebook zugelassen. Auf allen anderen Domains werden keine Scripte/Widgets von Facebook geladen, sie werden vom ABE rausgefiltert.

Facebook kann dich nun nicht mehr außerhalb seiner eigenen Mauern ausspionieren!

 

Weitere Tipps:

Das gleiche funktioniert natürlich auch für andere Domains, wie z.B. die von Twitter und Google. Mit dem mächtigen ABE kann man alle möglichen Regeln erstellen, die Spezifikation dazu gibt es hier.

Veröffentlicht unter Digital Life, German, IT | Verschlagwortet mit , , , , , , , , , , , , , , , , , , , , | 1 Kommentar

FRITZ!Box 7390 Überspannungsschutz

Blitzschutz für das Telefonkabel an der FritzBox

Aus aktuellem Anlass kann ich nur jedem raten, einen Überspannungsschutz zwischen Telefonbuchse (TAE-Dose) und Fritz Box zu installieren. Ein Überspannungsschutz an der Steckdose und am Fernsehkabel reicht einfach nicht aus, denn auch durch die Telefonleitung kann bei Gewitter viel zu hohe Spannung an der FRITZ!Box anliegen und diese schnell ins Nirvana befördern. Wenn man großes Pech hat auch den PC oder was noch so an der FritzBox angeschlossen ist.

Empfehlen kann ich daher nur den APC PF8VNT3-GR Surge Protector / Überspannungsschutz Performance (inkl. Netzwerk- / Telefon- / TV / Videoschutz), der auch in einigen Tests sehr gut abgeschnitten hat.

Das einzige was mir nicht sofort klar war, ob das 2-adrige DSL Kabel der FritzBox…

…einfach so in die RJ45 Buchse des Überspannungsschutzes gesteckt werden kann und ob man dann am Ausgang des Überspannungsschutzes einfach ein stinknormales Netzwerkkabel mit RJ45 Steckern reinstöpseln kann, welches dann mit der Fritz!Box verbunden wird.

Die Antwort ist JA! Man kann einfach ein normales Ethernet/LAN Kabel mit RJ-45 Stecker verwenden, auch wenn dort mehr pins belegt sind als bei dem mitgelieferten FRITZ!Box DSL/TEL Kabel.

Das helle graue Kabel ist das original DSL/TEL Kabel (Telefonkabel) von AVM, welches von der Telefonbuchse direkt in den Überspannungsschutz führt. Das gelbe Kabel ist ein normales LAN Kabel, welches vom Überspannungsschutz zur FritzBox führt und dort in die DSL/TEL Buchse gesteckt wird.

Übrigens: Der kleine Umweg über den Überspannungsschutz hat bei mir zu KEINEN Qualitätseinbußen beim DSL Sync (Stichwort Leitungsdämpfung) oder bei der Latenz geführt! Mein VDSL Sync lag nach wie vor bei 51384 kbit/s down und 10048 kbit/s up! Das sind exzellente Werte.

Veröffentlicht unter Hardware, IT | Verschlagwortet mit , , , , , , , , , , , , , , , , , , , , , , , , , | 30 Kommentare

FireFox 4 – Nur ein offener Tab -> Schließen nicht möglich?

Ist nur ein Tab in FireFox offen, kann dieser nicht geschlossen werden. Zumindest mit den Standardeinstellungen. Es fehlt der kleine x-Knopf (Schließen-Button) und auch über einen Rechtsklick auf den Tab kann dieser nicht mit „Tab schließen“ geschlossen werden.

Die schnellste, einfachste und sauberste Lösung ist folgende:

  1. about:config in der Adresszeile eintippen und mit Enter bestätigen
  2. mit dem filter nach browser.tabs.closeWindowWithLastTab suchen
  3. den Wert für browser.tabs.closeWindowWithLastTab auf false setzen
  4. FireFox neustarten, fertig!
Veröffentlicht unter German, IT | Verschlagwortet mit , , , , , , , , , | 4 Kommentare

GLSL normal mapping (Dot3 bump mapping)

Die TBN Matrix

Ich hoffe die folgende Zusammenfassung ist für die Leute hilfreich, die etwas verwirrt sind, in welche Richtung ein Vektor mit Hilfe der TBN Matrix nun transformiert wird.

Im Netz geistern nämlich unzählige Artikel rum, in denen die TBN Matrix mal in den object space transformiert, mal in den world space und mal in den tangent space.

Die folgenden Punkte nacheinander abgearbeitet, führen zu einem funktionierenden Shader mit schickem normal mapping und sollten die Zusammenhänge verdeutlichen:

1. TBN Matrix für jeden Vertex erstellen. Die TBN Matrix besteht aus drei Vektoren (tangent, binormal, normal). Sie transformiert einen Punkt V vom tangent space in den object space und ist wie folgt aufgebaut:

(Tx, Bx, Nx)
(Ty, By, Ny) * V
(Tz, Bz, Nz)

Von den drei Vektoren tangent, binormal und normal muss aber nur tangent und normal als Attribut an den Shader übergeben werden. Die face normal ist identisch mit der TBN normal und kann daher auch für die TBN Matrix verwendet werden. Die binormal wird per Kreuzprodukt im Shader errechnet.

2. Tangent und face normal können durch Addition mit den tangent und normal Vektoren der benachbarten faces und abschließender Normalisierung „gesmoothed“ werden. Z.B. mit Hilfe von smoothing groups.

3. Tanget und face normal mit der Matrix multiplizieren, die vom object in den world space transformiert (also mit der Matrix, die für die Objektrotation zuständig ist). Das ergibt eine TBN Matrix (bzw dessen tangent und normal), welche einen Punkt V vom tangent space in den world space transformiert.

4. Im Shader wird diese face normal sowie tangent noch mit der NormalMatrix (ähnlich der ModelViewMatrix) multipliziert. Die binormal wird jetzt durch das Kreuzprodukt berechnet. Nun hat man eine TBN Matrix, welche vom tangent space in den camera/eye space transformiert.

5. Die Inverse davon transformiert einen Punkt P vom camera/eye space in den tangent space. Das ist also die entgültige TBN Matrix, die alle für die Lichtberechnung nötigen Vektoren in den tangent space transformiert. Sie entspricht der transponierten TBN Matrix, da deren Basisvektoren orthogonal sind:

(Tx, Ty, Tz)
(Bx, By, Bz) * P
(Nx, Ny, Nz)

Diese Multiplikation mit der inversen TBN Matrix (bzw. der transponierten TBN Matrix) kann man dann im Shader auch so schreiben:

(T dot P)
(B dot P)
(N dot P)

Darum heißt das ganze IMHO auch Dot3 bump mapping. Nachdem alle benötigten Vektoren mit diesen drei dot products in den tangent space transformiert wurden, kann man endlich mit den normals aus der normal map rechnen, welche ja bereits im tangent space liegen und diesen ganzen Zirkus erst nötig gemacht haben.

Happy coding!

Veröffentlicht unter German, IT | Verschlagwortet mit , , , , , , , , , , , , , | Hinterlasse einen Kommentar