<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>Dinge, Zeugs und Sachen - Misc</title>
    <link>http://blog.slash-me.net/</link>
    <description>(Un)interessante Kleinigkeiten</description>
    <dc:language>de</dc:language>
    <generator>Serendipity 1.5.1 - http://www.s9y.org/</generator>
    <pubDate>Sun, 01 Feb 2009 02:20:21 GMT</pubDate>

    <image>
        <url>http://blog.slash-me.net/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Dinge, Zeugs und Sachen - Misc - (Un)interessante Kleinigkeiten</title>
        <link>http://blog.slash-me.net/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>Mein Google mag mich nicht mehr</title>
    <link>http://blog.slash-me.net/archives/294-Mein-Google-mag-mich-nicht-mehr.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/294-Mein-Google-mag-mich-nicht-mehr.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=294</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=294</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Hm, mag mein Google mich nicht mehr, weil ich auf meine Privatsphäre achte und seine Cookies blockiere? Oder mag mein Google keine Dateisystemverschlüsselung? Fragen über Fragen...&lt;/p&gt;
&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 734px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:315 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;734&quot; height=&quot;711&quot;  src=&quot;http://blog.slash-me.net/uploads/google-screwup.png&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;Mein Google ist kaputt...&lt;/div&gt;&lt;/div&gt; 
    </content:encoded>

    <pubDate>Sat, 31 Jan 2009 15:45:41 +0100</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/294-guid.html</guid>
    
</item>
<item>
    <title>Transystem i-Blue 747</title>
    <link>http://blog.slash-me.net/archives/270-Transystem-i-Blue-747.html</link>
            <category>Linux</category>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/270-Transystem-i-Blue-747.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=270</wfw:comment>

    <slash:comments>8</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=270</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://www.transystem.com.tw/&quot;&gt;Transystem&lt;/a&gt; hat mit ihrem &lt;a href=&quot;http://www.transystem.com.tw/p-gps-iblue747.htm&quot;&gt;i-Blue 747&lt;/a&gt; eine schnuckelige GPS-Empfänger/Logger-Kombination im Angebot. Nachdem ich bisher für &lt;a href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetMap&lt;/a&gt; immer mit einem &lt;a href=&quot;http://www.mediongopal.de/&quot;&gt;GoPal&lt;/a&gt; getrackt habe, wollte ich mir endlich mal einen richtigen Tracker gönnen. Die Vorteile liegen auf der Hand: kleiner, leichter, weniger fehleranfällig. Mit dem GoPal lässt sich zwar im Auto etc. wunderbar tracken, aber wenn man es in die Jackentasche steckt, dann nervt es ein wenig, dass man den Bildschirm nicht ausschalten kann. Braucht unnötig Strom und macht das Gerät aufgrund der Touchscreenbedienung anfällig gegen Fehlbedienungen durch Berührung. Also für Wandern, Radfahren etc. ein eigener Tracker...&lt;/p&gt;
&lt;p&gt;Ursprünglich hatte ich mich anhand der &lt;a href=&quot;http://wiki.openstreetmap.org/index.php/GPS_Reviews&quot;&gt;Hardwareliste&lt;/a&gt; von OpenStreetMap auf das Wintec WBT-201 eingeschossen, welches anscheinend genau meine Anforderungen erfüllt. Durch den &lt;a href=&quot;http://www.kowoma.de/gps/geraetetests/Datenlogger/iblue_wintec_p1.html&quot;&gt;Test bei kowoma.de&lt;/a&gt; kam ich zusätzlich noch auf den i-Blue als Alternative. Der hat(te) zwar wesentlich weniger Speicher (70k vs. 131k Datenpunkte), war allerdings auch ~30 billiger. Nachdem sich der Kauf nun noch ein paar Wochen hinausgezögert hatte, hat Transtec das Rennen gemacht: sie haben den i-Blue in einer neuen Variante auf den Markt geworfen, die den doppelten Speicher hat und damit ~150k Datenpunkte speichern kann. Mehr als genug für meine Ansprüche und deutlich günstiger als der Wintec. Anfang der Woche bestellt, heute bekommen.&lt;/p&gt;
&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 500px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:267 --&gt;&lt;img width=&quot;500&quot; height=&quot;333&quot;  src=&quot;http://blog.slash-me.net/uploads/i-blue-747.jpg&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;i-Blue 747&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;So sieht das gute Stück aus. Zum Größenvergleich ein 20-¢-Stück daneben. Recht übersichtlich also und mit knapp 70g auch nicht schwer. Die Bedienung ist absolut simpel: entweder man betreibt ihn im Modus NAV, dann ist er ein reiner &lt;a href=&quot;http://de.wikipedia.org/wiki/NMEA_0183&quot;&gt;NMEA-kompatibler&lt;/a&gt; Empfänger und reicht die Daten via USB oder Bluetooth an PC/PDA/etc. raus. Betreibt man ihn hingegen im Modus LOG, dann zeichnet er zusätzlich zum Weiterreichen die Daten auch noch auf seinem internen Speicher auf. Mit einer Software kann man vom PC aus einstellen, was er aufzeichnen soll (Längen- u. Breitengrad, Höhe, Geschwindigkeit etc.pp) und unter welchen Bedingungen (alle x Sekunden von, alle x Meter oder über x km/h). Der Knopf in der Mitte des Geräte dient zum Setzen von Wegpunkten: drückt man ihn, dann speichert das Gerät den aktuellen Datensatz mit einem Vermerk und man kann das später als Wegpunkt auslesen. Sehr praktisch, wenn man beim Tracken was interessantes sieht und sich merken will, wo&#039;s war. Das war&#039;s auch schon am Gerät selbst. Geladen wird via USB, wobei ein Verbindungskabel zum PC, ein Netzteil und ein Stecker für&#039;s Auto beiliegen.&lt;/p&gt;
&lt;p&gt;Ein kleines Problem gibt es (wie üblich) für mich: Software zum Auslesen des Gerätes liefert der Hersteller nur für Windows. Wäre ja auch zu schön... Als NMEA-kompatibler Empfänger stellt er kein Problem dar. Steckt man das Gerät per USB an, hat man plötzlich eine neue serielle Schnittstelle &lt;tt&gt;/dev/ttyUSB0&lt;/tt&gt; (oder äquivalent), die der gpsd mit Freuden abfragt und die entsprechenden Daten generiert. Damit funktionieren sämtliche linux-basierten Navigations- und Trackingprogramme. Das ganze soll auch problemlos via Bluetooth funktionieren, was ich allerdings noch nicht probiert habe.&lt;/p&gt;
&lt;p&gt;An die Logs ranzukommen ist schon schwerer. Das Gerät präsentiert sich leider wie alle anderen auch &lt;em&gt;nicht&lt;/em&gt; als USB-Massenspeicher, sondern will via serieller Schnittstelle dazu gebracht werden, die Daten rauszurücken. Die kanonische Antwort auf dieses Problem lautet: &lt;a href=&quot;http://bt747.wiki.sourceforge.net/Manage+iBlue%2C+Qstarz+BT-Q1000+and+iTrek+Z1+GPS+data+loggers+on+Windows%2C+Palm%2C+WinCE%2C+Linux+and+Mac+(opensource)&quot;&gt;bt747&lt;/a&gt;, ein Java-Programm zum Auslesen und Konfigurieren der Geräte. Dummerweise konnte ich das bisher nicht ans Laufen kriegen, weil mit &lt;tt&gt;javax.comm&lt;/tt&gt; fehlt, von dem mir Sun erzählt, dass es grad nicht zu haben sei. Glücklichweise hat sich jemand hingesetzt und ein Perl-Skript geschrieben, was das gleiche tut: &lt;a href=&quot;http://www.rigacci.org/wiki/doku.php/doc/appunti/hardware/gps_logger_i_blue_747&quot;&gt;mtkbabel&lt;/a&gt;. Funktioniert ebenso, auch wenn es nicht ganz so einfach zu bedienen ist. Wichtigster Aufruf: alle Daten vom Gerät laden: &lt;tt&gt;./mtkbabel -s 115200 -l off -f track -w -t -a&lt;/tt&gt; legt drei Dateien an. Eine binäre, die direkt vom Gerät kommt, eine &lt;tt&gt;track_trk.gpx&lt;/tt&gt;, die den aufgezeichneten Weg enthält und eine &lt;tt&gt;track_wpt.gpx&lt;/tt&gt;, die die per Knopfdruck aufgezeichneten Wegpunkte enthält. In JOSM geladen sieht das dann so aus:&lt;/p&gt;
&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 786px&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;!-- s9ymdb:268 --&gt;&lt;img width=&quot;786&quot; height=&quot;461&quot;  src=&quot;http://blog.slash-me.net/uploads/josm.png&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;Daten im JOSM&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Zu sehen sind hier zwei überlagerte Strecken (Hin- und Rückfahrt) und ein Wegpunkt (das kleine Kreuz mit der Nummer 001). Die Aufzeichnungsqualität ist gut, das Gerät findet seine Satelliten schnell und arbeitet zuverlässig. Nur das Standardaufzeichnungsintervall von 5&amp;#160;Sekunden sollte man evtl. etwas kürzer einstellen (bspw. per mtkbabel). Ich bin im Moment bei zwei Sekunden. Mal noch ein wenig testen, was da brauchbar ist.&lt;/p&gt;
&lt;p&gt;Insgesamt ein sehr schickes Gerät. Mal schauen, was die Zeit bringt und ob es im Dauereinsatz hält, was es bisher versprochen hat. Es gibt ja noch einige Orte hier in der Umgebung die getrackt werden wollen...&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 12 Jul 2008 00:26:15 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/270-guid.html</guid>
    
</item>
<item>
    <title>Wii Whiteboard</title>
    <link>http://blog.slash-me.net/archives/268-Wii-Whiteboard.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/268-Wii-Whiteboard.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=268</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=268</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://www.johnnylee.net/&quot;&gt;Johnny Chung Lee&lt;/a&gt; stellt auf seine Webseite &lt;a href=&quot;http://www.cs.cmu.edu/~johnny/projects/wii/&quot;&gt;einige Projekte mit der Wii Remote&lt;/a&gt; vor, die ziemlich cool sind. Das Wii Whiteboard musste ich mir gleich mal nachbauen. Andere Projekte wie das VR Display sind noch in Planung. Außerdem gibt es da noch so Ideen bzgl. Tracking von Personen und Objekten in der Pipeline...&lt;/p&gt;
&lt;p&gt;Video vom Test des Systems gibt es &lt;a href=&quot;http://blog.slash-me.net/uploads/wiiwhiteboard.mp4&quot;&gt;hier&lt;/a&gt; (das Video steht unter einer &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.0/de/&quot;&gt;Creative Commons Lizenz&lt;/a&gt;).&lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 03 Jun 2008 18:37:49 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/268-guid.html</guid>
    
</item>
<item>
    <title>Traumhafter Appell für IPv6</title>
    <link>http://blog.slash-me.net/archives/243-Traumhafter-Appell-fuer-IPv6.html</link>
            <category>Fundstücke</category>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/243-Traumhafter-Appell-fuer-IPv6.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=243</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=243</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Die &lt;a href=&quot;http://www.ripe.net/&quot;&gt;RIPE&lt;/a&gt; hat durch ihre &lt;a href=&quot;http://www.secret-wg.org/&quot;&gt;Geheime Arbeitsgruppe&lt;/a&gt; einen musikalischen Appell zur allgemeinen Nutzung von IPv6 basteln lassen. Traumhaft :)&lt;/p&gt;
&lt;p style=&quot;text-align: center&quot;&gt;&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/_y36fG2Oba0&amp;rel=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/_y36fG2Oba0&amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;Quelle: &lt;a href=&quot;http://www.heise.de/newsticker/meldung/98142/from/atom10&quot;&gt;heise.de&lt;/a&gt;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 29 Oct 2007 16:48:15 +0100</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/243-guid.html</guid>
    
</item>
<item>
    <title>Skriptfehler in Blogposts auf Serendipity</title>
    <link>http://blog.slash-me.net/archives/163-Skriptfehler-in-Blogposts-auf-Serendipity.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/163-Skriptfehler-in-Blogposts-auf-Serendipity.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=163</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=163</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Letztens hat mich ein aufmerksamer Leser nach einer mittleren Odyssee (jaja, ich werde mal sowas wie ein Impressum einbauen) kontaktiert um mir mitzuteilen, daß einer meiner Blogposts einen Skriptfehler beim Klick auf einen Link liefert. Ich hab mir mal etwas Zeit genommen, das ganze zu analysieren.&lt;/p&gt;
&lt;p&gt;Konkret geht es um folgende Fehlermeldung (nur der interessante Teil):&lt;/p&gt;
&lt;pre&gt;ERROR: duplicate key violates unique constraint &quot;serendipity_exits_pkey&quot;&lt;/pre&gt;
&lt;p&gt;Der Fehler zeigt die Verletzung der Eindeutigkeitsbedingung &lt;em&gt;&quot;serendipity_exits_pkey&quot;&lt;/em&gt; an. Eine Eindeutigkeitsbedingung ist ein Konstrukt in einer Datenbank, welches verhindert, daß ein bestimmter Schlüssel in einer Tabelle doppelt vorkommt. Der spezielle Name dieser Bedingung hier zeigt, daß der Primary Key der Tabelle &lt;em&gt;serendipity_exits&lt;/em&gt; gemeint ist. Um das zu verstehen muss man sich ein wenig tiefer mit dem Aufbau der Software beschäftigen: Externe Links in einem Blogpost zeigen nicht direkt auf das Ziel, sondern rufen die Datei &lt;em&gt;exit.php&lt;/em&gt; auf, welche dann zum passenden Ziel weiterleitet. Ziel der Aktion ist es, nochmal eine Statistik erfassen zu können, welche Links im Blog besonders häufig angefasst werden. Dazu wird der Klick auf einen Link in einer Datenbank gezählt (eben in der Tabelle &lt;em&gt;serendipity_exits&lt;/em&gt;). Nun hat diese einen Primary Key, also eine Sammlung von Spalten, die zusammen jeweils den eindeutigen Schlüssel eines Eintrags ergeben. Für diese Datei ist das bisher das Tupel (day, host, entry_id). Eindeutig identifiziert ist ein Link also dann, wenn man Tag, Zielrechner und Quelleintrag im Blog des Links kennt. Der geneigte Leser wird hier evtl. schon einen Fehler finden: was passiert eigentlich, wenn zwei verschiedene externe Links in einem Artikel auf einem Host liegen und am selben Tag geklickt werden? Richtig, Serendipity versucht, beide einzutragen, da sich der &lt;em&gt;path&lt;/em&gt; (also der Teil nach dem Host) unterscheidet und fällt damit natürlich prompt auf die Nase, weil der Primärschlüssel nicht zweimal vergeben werden kann. &lt;/p&gt;
&lt;p&gt;Ursache des Fehlers ist hier eine unterschiedliche Auffassung der Datei exits.php und der Datenbank über den Begriff der Eindeutigkeit eines Eintrags. Die Auffassung der Datenbank ist fehlerhaft, denn zu einem Link gehört nicht nur der Host, sondern auch der Pfad (erst dann hat man ja das konkrete Dokument). Ergo gilt es, der Datenbank das passende Verfahren beizubringen.&lt;/p&gt;
&lt;p&gt;Dazu verwirft man ersteinmal den bisherigen Primary Key, da man den nicht ändern und auch keine zwei definieren kann. Man verbindet sich zu seiner Serendipity-Datenbank und gibt folgendes ein:&lt;/p&gt;
&lt;pre&gt;ALTER TABLE serendipity_exits DROP CONSTRAINT &quot;serendipity_exits_pkey&quot;;&lt;/pre&gt;
&lt;p&gt;Danach funktioniert das ganze zwar theoretisch wieder, läßt aber zuviel Raum für fehlerhafte Doppeleintragungen. Ergo schränkt man das ganze wieder ein, indem man einen neuen Primärschlüssel anlegt:&lt;/p&gt;
&lt;pre&gt;ALTER TABLE serendipity_exits ADD PRIMARY KEY (entry_id,day,host,path);&lt;/pre&gt;
&lt;p&gt;Das ganze kann im laufenden System passieren und zerstört keine Daten. Es ist natürlich immer besser, man hat ein Backup rumliegen (sollte man ja aber sowieso). Nach dem Fix können in einem Artikel wieder ohne Probleme Links verwendet werden, die auf denselben Host zeigen, ohne daß die Nutzer dadurch immer nur auf einen klicken können und alle anderen Fehler liefern.&lt;/p&gt;
&lt;p&gt;Den Fehler einschließlich Fix habe ich gestern bei den Serendipity-Entwicklern eingeliefert und bereits eine Antwort von Garvin Hicking. Die nächste Version der Software wird diesen Fehler korrigieren. Bis dahin kann man den vorgeschlagenen Fix von Hand einspielen.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 26 May 2006 20:04:30 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/163-guid.html</guid>
    
</item>
<item>
    <title>R.I.P. SGI</title>
    <link>http://blog.slash-me.net/archives/159-R.I.P.-SGI.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/159-R.I.P.-SGI.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=159</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=159</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://www.sgi.com&quot;&gt;Silicon Graphics, Inc.&lt;/a&gt; beantragt Gläubigerschutz nach Chapter 11 des US-Handelsrechts. Auch wenn sie&#039;s als geplanten Schritt zur Schuldenreduzierung darstellen, dürfte es wohl wirklich langsam Zeit für den Nachruf sein. Schade eigentlich, ihr habt nette Maschinchen gebaut. Da fällt mir ein: ich könnte ja mal wieder einen Blick nach meiner &lt;a href=&quot;https://blog.slash-me.net/index.php?/archives/9-Eine-SGI-Octane-von-innen.html&quot;&gt;Octane&lt;/a&gt; werfen.&lt;/p&gt;
&lt;p&gt;Quelle: &lt;a href=&quot;http://www.golem.de/0605/45181.html&quot;&gt;Golem.de&lt;/a&gt;&lt;br/&gt;
Quelle: &lt;a href=&quot;http://www.sgi.com/company_info/newsroom/press_releases/2006/may/sgi_reorg.html&quot;&gt;SGI&lt;/a&gt;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 08 May 2006 18:34:07 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/159-guid.html</guid>
    
</item>
<item>
    <title>&quot;Reflections on Trusting Trust&quot; revisited</title>
    <link>http://blog.slash-me.net/archives/139-Reflections-on-Trusting-Trust-revisited.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/139-Reflections-on-Trusting-Trust-revisited.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=139</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=139</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Vor vielen, vielen Jahren (1984 um genau zu sein) veröffentlichte Ken Thompson eine &lt;a href=&quot;http://www.acm.org/classics/sep95/&quot;&gt;Dankesrede&lt;/a&gt; für den Turing Award. Dieses Paper mit dem Titel &quot;Reflections on Trusting Trust&quot; sollte als eins der grundlegenden Paper in die Geschichte der Computersicherheit eingehen (genau genommen beschreibt das Paper lediglich die Arbeit von  Paul Karger und Roger Schell, die die vorgestellte Attacke bereits 1974 formuliert hatten). Thompson beschreibt darin ein Dilemma, dem die Analyse eine sicheren Systems unterliegt: Mensch und Maschine verstehen unterschiedliche Sprachen. Der Quelltext eines Programms, welcher vom Menschen zu lesen ist, wird von der Maschine nicht verstanden. Diese versteht lediglich einen Binärcode, den wiederum der Mensch nicht (bzw. nahezu nicht) lesen kann. Die Übertragung von Quell- in Maschinencode geschieht durch Compiler.&lt;/p&gt;
&lt;p&gt;Thompsons Idee basiert nun auf dem Problem des Bootstrappings: irgendwann muss der Prozess des kompilierens mal gestartet werden. Es muss also mal ein erster Compiler existieren, der diesen ersten Vorgang vornimmt. Dieser muss wiederum in Maschinencode vorliegen, denn sonst könnte ihn die Maschine nicht ausführen. An dieser Stelle setzt Thompson an und formuliert die Idee eine &quot;bösen&quot; Compilers, welcher bei der Übertragung vom Quell- in den Maschinencode die entstehende Software infiziert (mit einer Hintertür oder was auch immer). Diese ist so ausgelegt, daß sie, wenn der Compiler sich selbst übersetzen muss, dazu führt, daß die Routine zur Erzeugung der Hintertür wieder in den Compiler eingebaut wird (für genauere Ausführungen schaue man einfach in das Paper). An dieser Stelle hat man bei der Analyse eines sicheren Systems nun ein Problem: entweder man vertraut diesem ersten Compiler und kann dann (theoretisch) allen weiteren Quellcode analysieren um so sicherzustellen, daß das System keine Hintertüren hat oder man kann ihn nicht verwenden (der paranoide Ansatz lautet dann hier: man kann keinen verwenden, denn es könnte ja jeder eine Lücke haben). Sicherheit, die auf Analyse basieren will, hat mit Vertrauen so ihre Schwierigkeiten. Das Problem des &quot;bösen&quot; Compilers blieb lange ungelöst. Bis jetzt...&lt;/p&gt;
&lt;p&gt;Im Dezember 2005 veröffentlichte David A. Wheeler &lt;a href=&quot;http://www.acsa-admin.org/2005/papers/47.pdf&quot;&gt;&quot;Countering Trusting Trust through Diverse Double-Compiling&quot;&lt;/a&gt;, ein Paper, welches die Lösung des beschriebenen Problems darstellt. Schaut man sich an, wie trivial diese Lösung ist, so kann man nur den Kopf schütteln, das man nicht früher drauf gekommen ist. Die Idee ist folgende:&lt;p&gt;
&lt;p&gt;Nehmen wir an, wir haben zwei Compiler (als Binaries) &lt;tt&gt;A&lt;/tt&gt; und &lt;tt&gt;B&lt;/tt&gt; und den Quellcode &lt;tt&gt;Sa&lt;/tt&gt; von &lt;tt&gt;A&lt;/tt&gt;. Wir kompilieren nun &lt;tt&gt;Sa&lt;/tt&gt; sowohl mit &lt;tt&gt;A&lt;/tt&gt;, als auch mit &lt;tt&gt;B&lt;/tt&gt; und erhalten &lt;tt&gt;Ca&lt;/tt&gt; und &lt;tt&gt;Cb&lt;/tt&gt;. Diese beiden Binaries dürften unterschiedlich sein, da sie mit verschiedenen Compilern erzeugt wurden. Durch unterschiedliche Optimierungsstrategien etc. können sie sich auf Byteebene unterscheiden. Sie sind allerdings funktional äquivalent, will heißen: sie tun exakt dasselbe (zumindest sollten sie das). Nun kompilieren wir &lt;tt&gt;Sa&lt;/tt&gt; nochmal mit &lt;tt&gt;Ca&lt;/tt&gt; und mit &lt;tt&gt;Cb&lt;/tt&gt;. Hieraus resultieren dann die Binaries &lt;tt&gt;Ea&lt;/tt&gt; und &lt;tt&gt;Eb&lt;/tt&gt;. Da &lt;tt&gt;Ca&lt;/tt&gt; und &lt;tt&gt;Cb&lt;/tt&gt; funktional absolut identisch sein sollten, sollten auch &lt;tt&gt;Ea&lt;/tt&gt; und &lt;tt&gt;Eb&lt;/tt&gt; bitgenau gleich sein. Sind sie es nicht, so ist entweder &lt;tt&gt;A&lt;/tt&gt; oder &lt;tt&gt;B&lt;/tt&gt; nicht vertrauenswürdig und muss verworfen werden. Ersetzt man &lt;tt&gt;B&lt;/tt&gt; nun durch einen vertrauenswürdigen Compiler &lt;tt&gt;T&lt;/tt&gt;, so kann man prüfen, ob &lt;tt&gt;A&lt;/tt&gt; vertrauenswürdig ist. Der vertrauenswürdige Compiler wird in diesem Modell lediglich verwendet, um &lt;tt&gt;Sa&lt;/tt&gt; zu übersetzen. Es ist vollkommen egal, wie langsam der ist und ob der irgendwelche Optimierungen etc. beherrscht. Er kann also so einfach, wie möglich gebaut werden, im Extremfall direkt in Maschinensprache. Man hat auf diese Art und Weise das Problem aus dem Ursprungspaper gelöst: es besteht wieder ein direkter Zusammenhang zwischen dem vom Quellcode beschriebenen Verhalten und dem ausgeführten Code auf dem Prozessor. Für einen Menschen ist die Analyse des Quellcodes unendlich viel einfacher, als die des Maschinencodes. Über 30 Jahre nach der Formulierung des ursprünglichen Problems gibt es nun eine Lösung und diese ist auch noch so einfach und leicht nachvollziehbar. Meinen Respekt, Mr. Wheeler...&lt;/p&gt;
&lt;p&gt;Quellen:&lt;/p&gt;
&lt;ul&gt;
 &lt;li&gt;http://www.acm.org/classics/sep95/&lt;/li&gt;
 &lt;li&gt;http://www.acsa-admin.org/2005/papers/47.pdf&lt;/li&gt;
 &lt;li&gt;http://www.schneier.com/blog/archives/2006/01/countering_trus.html&lt;/li&gt;
&lt;ul&gt; 
    </content:encoded>

    <pubDate>Sat, 28 Jan 2006 00:35:12 +0100</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/139-guid.html</guid>
    
</item>
<item>
    <title>Zu viele Tastaturen und Mäuse?</title>
    <link>http://blog.slash-me.net/archives/62-Zu-viele-Tastaturen-und-Maeuse.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/62-Zu-viele-Tastaturen-und-Maeuse.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=62</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=62</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Nachdem btk heute über ein nettes Tool namens &lt;a href=&quot;http://www.stardock.com/products/multiplicity/&quot;&gt;Multiplicity&lt;/a&gt; einen &lt;a href=&quot;http://www.schrankmonster.de/PermaLink,guid,69ecd404-e5c5-42e1-84d0-cb3a7feed1d2.aspx&quot;&gt;Artikel&lt;/a&gt;
geschrieben hat und darin &lt;a href=&quot;http://synergy2.sourceforge.net/index.html&quot;&gt;Synergy&lt;/a&gt; erwähnt hat, wurde bei mir mal wieder der Spieltrieb geweckt.&lt;/p&gt;
&lt;p&gt;Erstmal vornweg zur Erklärung: Sowohl Synergy, als auch Multiplicity sind Tools um mehrere Maschinen zu einer Art virtuellen Monitor zu verbinden. Dabei werden mehrere grafische Oberflächen mit einer Maus und einer Tastatur gesteuert. Verläßt man den Bildschirm der einen Maschine mit dem Mauszeiger, so taucht er auf der anderen Maschine wieder auf und man kann dort tippen. Das ganze funktioniert ohne merkbare Verzögerung. Zusätzlich werden auch noch die Zwischenablagen der einzelnen Maschinen synchronisiert.&lt;/p&gt;
&lt;p&gt;Da Multiplicity ein Tool für Windows und MacOS ist, kam ein Test für mich leider nicht in Frage. Ich nenne nunmal nur eine einzige Windowsmaschine mein eigen und die ist auch noch emuliert. Also habe ich mir Synergy mal etwas näher angeschaut. Laut Webseite läuft das Tool unter Windows, Unix und MacOS X.&lt;/p&gt;
&lt;p&gt;Mein Testsetup:
 &lt;ul&gt;
  &lt;li&gt;namenlos-mobil (mein Laptop) als Server&lt;/li&gt;
  &lt;li&gt;namenlos (mein Serverchen) als Client&lt;/li&gt;
 &lt;/ul&gt;
Auf beiden Maschinen läuft ein Debian unstable, verbunden sind sie mit 100 MBit/s Ethernet. Glücklicherweise ist Synergy als Paket im Debian-Tree vorhanden, so daß sich eine Installation auf &lt;tt&gt;apt-get install synergy&lt;/tt&gt; beschränkt. Die Konfiguration des Systems findet auf dem Server statt. Dazu legt man dort eine Datei an, in der man beschreibt, wie die Bildschirme zueinander angeordnet sind. Das ist immer in beide Richtungen notwendig. Wenn man also beschrieben hat, daß Bildschirm1 links von Bildschirm2 ist, dann muss man auch noch beschreiben, daß Bildschirm2 rechts von Bildschirm1 ist. Tut man das nicht (was durchaus Absicht sein könnte), dann kann der Mauszeiger zwar von Bildschirm1 zu Bildschirm2 wandern, aber nicht zurück. Bei mir sieht die Konfigurationsdatei wie folgt aus:
&lt;pre style=&quot;border-width: 1px; border-style: solid; border-color: #000000; padding: 1em&quot;&gt;
section: screens
         namenlos:
         namenlos-mobil:
end
section: links
         namenlos:
         right = namenlos-mobil 
         namenlos-mobil:
         left = namenlos 
end
&lt;/pre&gt;
Im Grunde genommen nahezu selbsterklärend. Es existieren zwei Bildschirme: &lt;tt&gt;namenlos&lt;/tt&gt; und &lt;tt&gt;namenlos-mobil&lt;/tt&gt;. Diese sind so angeordnet, daß sich namenlos links von namenlos-mobil befinded (so, wie das tatsächlich auf meinem Schreibtisch ist). Wie bereits erklärt muss auch die Gegenrichtung angegeben werden. Damit ist dann aber der Konfigurationsaufwand schon beendet. Man startet den Server nun mit &lt;tt&gt;synergys -f --config syn.conf&lt;/tt&gt;. Dieser lauscht nun auf Port 24800 auf die Anfragen von irgendwelchen Clients. (Hinweis: der Server muss unter X gestartet werden, damit er sich an den X-Server anhängen kann. Logisch, wo sollte sonst die Maus etc. herkommen?)
&lt;/p&gt;
&lt;p&gt;Synergy selbst bringt keinerlei Sicherheitsfunktionen wie Nutzerauthentisierung oder Verschlüsselung mit. Damit nun nicht jeder meine Tastendrücke und ähnliches im Netz mitlesen kann (namenlos und namenlos-mobil sind über ein öffentliches Netz verbunden) muss da also noch getunnelt werden. Glücklicherweise benutzt Synergy nur eine einzige TCP-Verbindung. Das perfekte &quot;Opfer&quot; für einen SSH-Tunnel also. Von namenlos aus habe ich mittles &lt;tt&gt;ssh -L  24800:localhost:24800 namenlos@namenlos-mobil&lt;/tt&gt; den entsprechenden Tunnel aufgesetzt. Nun werden alle Verbindungen, die auf namenlos an Port 24800 gehen auf denselben Port auf namenlos-mobil weitergeleitet. Auf dem Client wird nun (unter X) das Clientprogramm gestartet und mit dem Server verbunden. Da der Tunnel auf &lt;tt&gt;localhost:24800&lt;/tt&gt; endet, ist das auch der Server. Der Befehl lautet also &lt;tt&gt;synergyc -f localhost&lt;/tt&gt;. Sowohl Server als auch Client werden nun ein paar Ausgaben machen und dann melden, daß alles erfolgreich geklappt hat. Wenn ich jetzt den Mauszeige auf namenlos-mobil über den linken Bildschirmrand hinaus bewege, dann taucht er auf namenlos wieder auf und ich kann auch dort Tasteneingaben machen. Beispielsweise schreibe ich diesen Text gerade auf der Tastatur von namenlos-mobil in ein Fenster auf namenlos. Ziemlich brauchbar, das ganze.
&lt;/p&gt;
&lt;p&gt;Leider ist da, wo Licht ist auch etwas Schatten. Der Versuch, ein Bild von einer Gimp-Session auf namenlos in eine Session auf namenlos-mobil zu kopieren scheitert leider. Hier macht sich das fehlen einer standardisierten Schnittstelle für Bilddaten unter X11 bemerkbar. Texte lassen sich wunderbar zwischen den einzelnen Maschinen hin- und herkopieren. Bspw. habe ich die gesamte URLs in dem Text aus dem auf namenlos-mobil laufenden Browser kopiert und in den auf namenlos laufenden eingefügt. Wenn das mit Bildern jetzt auch noch so ginge....
&lt;/p&gt;
&lt;p&gt;Fazit: einfach geil. Ich frage mich jetzt schon, wieso ich hier eigentlich immer so eine klobige Tastatur stehen hatte. Zumindest solange mein Schreibtisch derart begrenzt Platz bietet ist Synergy eine perfekte Lösung, die ich schon viel früher hätte entdecken sollen.
&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Fri, 15 Apr 2005 17:11:12 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/62-guid.html</guid>
    
</item>
<item>
    <title>Schwarzweissbilder einfärben</title>
    <link>http://blog.slash-me.net/archives/56-Schwarzweissbilder-einfaerben.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/56-Schwarzweissbilder-einfaerben.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=56</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=56</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;Ich muss sagen, von dem Algorithmus, der &lt;a href=&quot;http://www.cs.huji.ac.il/~yweiss/Colorization/&quot;&gt;hier&lt;/a&gt; präsentiert wird bin ich ernsthaft begeistert. Das Paper nennt sich &quot;Colorization Using Optimization&quot; und der präsentierte Algorithmus schafft es, mit minimaler Unterstützung durch den Nutzer Schwarzweissbilder (oder sogar ganze Filmsequenzen) realistisch einzufärben. Auch das Umfärben bestimmter Objekte in einem Bild stellt kein Problem dar. Die Beispielbilder auf der Webseite sind absolut beeindruckend. Leider gibt es bisher nur eine Demoimplementierung in Matlab, die ich nicht verstehe. Sehr schade, ich würde das gern mal benutzen.&lt;/p&gt;
&lt;p&gt;Ein Beispiel:

&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 319px; float: left&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;img width=&#039;319&#039; height=&#039;267&#039;  src=&quot;http://blog.slash-me.net/uploads/cats_low_m.png&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;Das S/W-Bild mit eingezeichneten Farbbeispielen&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;serendipity_imageComment_center&quot; style=&quot;width: 319px; float: left&quot;&gt;&lt;div class=&quot;serendipity_imageComment_img&quot;&gt;&lt;img width=&#039;319&#039; height=&#039;267&#039;  src=&quot;http://blog.slash-me.net/uploads/cats_res.png&quot; alt=&quot;&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;serendipity_imageComment_txt&quot;&gt;Das eingefärbte Bild&lt;/div&gt;&lt;/div&gt; 
    </content:encoded>

    <pubDate>Tue, 29 Mar 2005 22:25:42 +0200</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/56-guid.html</guid>
    
</item>
<item>
    <title>dasBlog Autotrack Patch</title>
    <link>http://blog.slash-me.net/archives/51-dasBlog-Autotrack-Patch.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/51-dasBlog-Autotrack-Patch.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=51</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=51</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://www.dasblog.net&quot;&gt;dasBlog&lt;/a&gt; ist eine in C# geschriebene Blog-Software, die Kollege &lt;a href=&quot;http://www.schrankmonster.de&quot;&gt;btk&lt;/a&gt; verwendet. Leider hat diese einen etwas nervigen Bug in der Trackback Autodiscovery Funktion. Leider setzt die immer einen Trackback, wenn sie eine entsprechende URI in einer verlinkten Seite finden, auch wenn (entgegen der &lt;a href=&quot;http://www.sixapart.com/movabletype/docs/mttrackback&quot;&gt;Spezifikation&lt;/a&gt;) dessen &lt;tt&gt;dc:identifier&lt;/tt&gt; gar nicht zur Ziel-URL passt. Da btk mich hin und wieder verlinkt und ich dann immer die Trackbacks löschen muss, hab ich mal nen Fix geschrieben. Glücklicherweise findet man sich im Quellcode von dasBlog einigermaßen gut zurecht.&lt;/p&gt;
&lt;p&gt;Den Fix gibt&#039;s hier: &lt;a href=&quot;http://blog.slash-me.net/uploads/BlogDataService.diff&quot;&gt;BlogDataService.diff&lt;/a&gt;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 18 Mar 2005 01:55:46 +0100</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/51-guid.html</guid>
    
</item>
<item>
    <title>Interessante Einblicke in die Geschichte von Windows</title>
    <link>http://blog.slash-me.net/archives/48-Interessante-Einblicke-in-die-Geschichte-von-Windows.html</link>
            <category>Misc</category>
    
    <comments>http://blog.slash-me.net/archives/48-Interessante-Einblicke-in-die-Geschichte-von-Windows.html#comments</comments>
    <wfw:comment>http://blog.slash-me.net/wfwcomment.php?cid=48</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.slash-me.net/rss.php?version=2.0&amp;type=comments&amp;cid=48</wfw:commentRss>
    

    <author>nospam@example.com (namenlos)</author>
    <content:encoded>
    Raymond Chen, einer der Entwickler aus dem Windowsteam bei MS hat ein &lt;a href=&quot;http://blogs.msdn.com/oldnewthing/&quot;&gt;Blog&lt;/a&gt; mit teilweise recht interessanten Einblicken in die Geschichte der Windowsentwicklung und die Hintergründe hinter bestimmten Designentscheidungen. Recht lesenswert. 
    </content:encoded>

    <pubDate>Sun, 13 Mar 2005 00:49:30 +0100</pubDate>
    <guid isPermaLink="false">http://blog.slash-me.net/archives/48-guid.html</guid>
    
</item>

</channel>
</rss>