Filosofo’s Tinfoil-Hat Plugin

WordPress 2.3 introduced a new feature that checks whether or not your plugins and WordPress version are out-dated. Unfortunately, it takes the unnecessary step of sending a list of all your plugins—active and inactive—along with your URL to the WordPress servers. This stirred up a whirlwind of emails among WordPress developers, and it even made Slashdot.

Obviously there’s nothing wrong with someone knowing one’s URL alone. And I believe those at WordPress.org who are interested in this data do not have malicious intentions. However, I don’t necessarily want to be forced into sending a list of all the plugins associated with me just to know when new versions are available.

Unfortunately, that rules out the two plugins that simply disable the update check altogether.

So I’ve written this plugin—my Tinfoil-hat plugin—to check for plugin and WordPress updates without sending a list of plugins associated with my domain name. Here’s how it works: instead of sending in the URL, it sends in a wp_hash of the URL and plugin name for each plugin. It is unique so that WordPress.org’s statistics will be accurate, yet it’s very difficult to associate with a particular blog. Furthermore—in case you didn’t think my tinfoil hat was on tight enough—my plugin checks for each plugin individually at randomly-spaced times, using WP’s cron. And for each plugin, the only data it sends is the plugin’s file name. Unfortunately, due to the WordPress.org API, the plugin does have to phone in the WordPress version number. However, the URL associated with that version has been wp_hash-ed.

But that’s not all. I’ve actually expanded the update-check functionality. The built-in update-check requires the use of fsockopen, which some hosts disable. My plugin will still check for updates when fsockopen isn’t available, by using WordPress’s own Snoopy class instead. [Update: Quandary pointed out that Snoopy uses fsockopen as well, so in version 1.0.1 I've dropped Snoopy and used cURL or stream_context_create instead. ] And, I’ve added a nifty little feature that lets you tell the little plugin-update reminder to go away for a week.

Download version 1.0.2

Installation

Extract filosofo-tinfoil-hat.php, upload it to your /wp-content/plugins/ directory, and activate it. That’s it.

Internationalization

I’ve included a .po file with the downloads for those who want to translate the plugin into their own language. If you do, please send me a copy of the localized .po and .mo files, and I’ll post them here.

WP Code Language PO Text File MO Translation File Plugin Version
de_DE German - Deutsch filosofo-tinfoil-hat.po filosofo-tinfoil-hat.mo 1.0.1

Please note: the update notices will not appear immediately, as the plugin schedules them to check every 12 hours, starting some time in the next 12 hours from activation.

I have suggestions or I need help. What can I do?

Please leave a comment in my support forum for this plugin or send me an email at if.website (located at) gmail (dot) com . Or you can leave a comment below.

See some of the other WordPress plugins I’ve created.
Like this plugin? Is it worth a latte?

My Amazon.com Wish List

This month I have received $37.00 for my plugin coding work, which is about $0.01 per download.

20 Trackbacks/Pingbacks

  1. [...] Updates, bitte auf jeden Fall die Nachträge lesen. Ganz wichtiger Hinweis schon hier oben, es gibt Abhilfe gegen das Problem mit einem Plugin. (Dank an meinen Leser [...]

  2. [...] Filosofo’s Tinfoil-Hat Plugin [...]

  3. [...] ihrem Server aufgespielt, andere haben vorerst davon abgesehen und hoffentlich haben auch einige angemessene Maßnahmen gegen die sinnlose Lust am Selbstzweck des Datensammelns getroffen. Ich selbst fühle mich ungefähr so leergeschrieben wie ein Einwegkugelschreiber [...]

  4. [...] fuer den wordpress-kern unterbinden bzw die aktualisierungspruefung fuer die plugins ausschalten. wer auf die komplette funktionalitaet nicht verzichten mag, sondern einfach die datenmenge auf das n…. nebenbei fuehrt dieses plugin sinnvolle erweiterungen ein: manche hoster haben die von wp 2.3 [...]

  5. [...] called “Tinfoil Hat” (pending acceptance of the name at WordPress, with apologies to Filosofo), and its goal is to give you fine-grained control over how your WordPress installation contacts [...]

  6. [...] nicht vollständig und auch ein wenig gezügelt.Zum Einen ist ab heut Il Filosofos Plugin “Tinfoil Hat” im Einsatz, um ein paar Querelen zu verhindern, die sich Wordpress neuerdings selbst gönnt, [...]

  7. [...] nicht im Original-WP-Code rummurksen will, der kann das Ganze auch von Il Filosofo als Plugin haben. Updateprüfung: Ja, Übermittlung der URL: [...]

  8. [...] Filosofo’s Tinfoil Hat Plugin: Damit wird der neue Update-Service von Wordpress 2.3 anonymisiert. [...]

  9. [...] kann man die Funktion auch ganz mit Hilfe eines Plugins abschalten. Sinnvoller ist das Plugin “Tinfoil-Hat” von Il Filosofo, die Details dazu kann man auf seiner Seite nachlesen. Für mich das perfekte Plugin. Man [...]

  10. [...] Lösungsvorschlag unter Verwendung der veralteten my-hacks.php, wobei die Update-Funktion erhalten bleibt. Weiteres dazu und Download bei Schnurpsel oder etwas anders bei Il Filosofo. [...]

  11. [...] der Anonymisierung des WP-Updateservice gibt es mittlerweile Plugins (selbst noch nicht getestet da leider wenig Zeit, vielleicht kann mir da jemand etwas empfehlen), [...]

  12. [...] Filosofo’s Tinfoil-Hat Plugin ist ein Ersatz für die offizielle Wordpress-Update-Funktion (verschlüsselt u.a. die Blog-URL). Für Akismet gibt es wohl leider keinen Ersatz… 02.10.2007 um 17:18Tags: aktuell, datenschutz, internet, wordpressTblueNoch keine Kommentare. Kommentar schreibenRSS-Feed für Kommentare [...]

  13. [...] und gegen die geschickt zur ablenkung eingebaute schnüffelfunktion gibt es einen hübschen hut aus alufolie. Ich wünsche den ganzen nachtwächtern und anderen schergen der anderen weiterhin viel [...]

  14. [...] Nachtwächter bloggt jetzt auch mit WordPress 2.3, aber nicht, ohne sich einen Hut aus Alufolie [...]

  15. [...] den Server gesendeten Daten gibt es inzwischen schon eine Reihe von Plugins. Ich hab mich für Tinfoil-Hat [...]

  16. [...] Es gibt aber bereits ein Plugin, das dies verhindert, Download und Erklärung hier. Hochladen, installieren und [...]

  17. [...] Der Wordpress-Aluminiumhut [...]

  18. [...] Kontakt zum Mutterhaus auf. WordPress, als Open-Source-App, kann dabei noch am einfachsten per PlugIn oder Codeänderung wieder auf den Pfad der Tugend gebracht [...]

  19. [...] Filosofo´s Tinfoil-Hat Plugin: Anonymisiert die Daten, die während des Updatechecks für die Plugins an den zentralen Wordpress-Server gesendet werden. [...]

  20. [...] stört, dass diese Daten übermittelt werden, wird jetzt geholfen: Austin Matzko hat ein Plugin geschrieben, dass die Updatenachrichten beschafft ohne dabei Daten wordpress.org zu senden. Das Plugin ist auch [...]

8 Comments

  1. johnbillion commented on September 27, 2007 at 4:26 am | Permalink
    johnbillion

    Filosofo, this plugin seems to prevent any update notifications from being displayed. When using your plugin, if I roll back my Akismet version and then check for updates, no notification shows up, but they do once I disable your plugin. It looks like the updates are being checked for, but the notifications aren’t being displayed.

  2. filosofo commented on September 27, 2007 at 4:29 am | Permalink
    filosofo

    You have to give it some time, as it schedules to check them some time during the next 12 hours via wp-cron.

  3. derdude commented on September 27, 2007 at 4:34 pm | Permalink
    derdude

    correct me if im wrong, but theres a bit of a problem with this plugin isnt there?
    if you got to activate it in the plugins menue your data package will be send to api.worpress.com once.
    any work around thinkable?

  4. filosofo commented on September 27, 2007 at 7:59 pm | Permalink
    filosofo


    correct me if im wrong, but theres a bit of a problem with this plugin isnt there?
    if you got to activate it in the plugins menue your data package will be send to api.worpress.com once.
    any work around thinkable?

    Yes, before you can activate the plugin, it will send a list of your plugins to WordPress.org. You could temporarily move your plugins out of the plugins directory, activate this plugin, then move them back in.

  5. Quandary commented on September 27, 2007 at 10:56 pm | Permalink
    Quandary

    Hey Filosofo,

    Snoopy requires fsockopen in order to operate (see wp-includes/class-snoopy.php:1144), so I don’t see how falling back to Snoopy helps at all. :/

  6. filosofo commented on September 28, 2007 at 7:06 am | Permalink
    filosofo


    Snoopy requires fsockopen in order to operate (see wp-includes/class-snoopy.php:1144), so I don’t see how falling back to Snoopy helps at all. :/

    Whoops! For some reason I thought Snoopy tried other methods including cURL, but apparently that’s just for https requests. Thanks for pointing that out.

    I’ve updated the plugin to use stream_context_create or cURL if fsockopen isn’t available.

  7. Tblue commented on September 28, 2007 at 2:17 pm | Permalink
    Tblue

    Thank you for this plugin.
    Maybe I will switch to MovableType, but I’m not sure. Wordpress still is a very good script (except the new update function, of course).

    I’ve translated the .po file into German. Where I have to put the .mo file? Simply in the plugin folder?

    However, here are the files: http://files.tblue.de/wp/filosofo-tinfoil-hat-de.zip

  8. ElliottB commented on February 27, 2008 at 11:57 am | Permalink
    ElliottB

    I absolutely love this plugin, however the plugin seems to be causing hell for me.

    When I activate the plugin, my wordpress site begins to lag and often will have a time out on retrieving post data from the database. Upon deactivation it instantly reacts like it’s old self. I don’t get what’s going on.

See some of the other WordPress plugins I’ve created.
Like this plugin? Is it worth a latte?

My Amazon.com Wish List

This month I have received $37.00 for my plugin coding work, which is about $0.01 per download.

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*

Subscribe without commenting.