Dakons blog

Erstellt: 3. 10. 2014, 14:55
Geändert: 3. 10. 2014, 15:01

Marvelous Marble

Tags:

OSMhyd showing hydrants in Wennigsen (Deister) I'm one of those persons that always prefers a native application over some web stuff. Usually this comes from some things I want to have, may it be speed, offline capabilities or just hacking possibility. So as a long-time user and contributor of OpenStreetMap as well as an active firefighter I of course know about OpenFireMap. And of course I want a local version of it.

Well, the way to go is obvious for a KDE hacker, no? Right, using Marble, or better: using libmarble as explained in the KDE Techbase. So, what did I end up with? A small pure-Qt application that uses libmarble to display OpenStreetMap tiles, showing some custom placemarks. Those placemarks are collected directly from the OpenStreetMap (online) database using the Overpass API. Then a bit of brute-force XML parsing using QXmlStreamReader and then: pure awesomeness.

This currently is based on Qt4, therefore I use XML and parse it brute-force. Eventually I'll switch to a Qt5-based libmarble, and will use the builtin JSON-support of Qt5. And maybe one day I'll finally find an example on how to draw different graphics for different types of placemarks.

Of course, this is not entirely local. But the information about the extra placemarks can easily be saved locally and restored from there (in fact, that is what the first versions did before I starte using QNetworkAccessManager), and Marble caches the tiles so it will sort-of work even offline. And of course the source code is available for everyone to hack around with it: OSMhyd version 1.

Erstellt: 27. 9. 2014, 14:09

mtan enttarnt

Tags:

Warum gibt es eigentlich für Online-Überweisungen das mtan-Verfahren? Vorgeblich deshalb, damit die Banken jetzt Leuten, die fälschlicherweise Geld überweisen, die Schuld zuschieben können. Inzwischen ist ja die Unsicherheit des Verfahrens hinreiched bekannt. Ich glaube, der Grund ist ein anderer. Die NSA kennt alle internationalen Überweisungen. Und da sie ja auch unsere Telefonnetze abhören kennen sie damit auch die meisten nationalen.

Erstellt: 20. 9. 2014, 21:57

Gleichschaltung

Tags:

Damals, vor gefühlt unendlich langer Zeit, als ich noch richtig viel Zeit hatte, da hing ich auch ständig im Usenet rum. In der Newsgroup de.alt.fan.fruehstyxradio hatte jemand eine Signatur, die mit den Worten Gleichschaltung des deutschen Rundfunks - Formatradio endete.

Vor zwei Wochen war es dann wieder so weit, auf der Rückfahrt vom Dienstabend der Feuerwehr konnte ich auf 4 der 6 in meinem Autoradio eingespeicherten Sender die Übertragung des deutschen Radiopreises hören. Völlig uninteressant, absolut unnötig sowas überhaupt zu senden. Das einzig interessante daran ist, dass ffn, Antenne Niedersachsen, NDR 2 und Radio 21 untereinander jeweils um mehrere Sekunden versetzt gesendet haben. Herzlichen Dank übrigens an die Stimme bzw. Musik des Widerstandes, N-Joy.

Erstellt: 20. 8. 2014, 13:36

Railroad Tycoon

Tags:

Was tut man wenn einem langweilig ist oder man sich zu nichts sinnvollem motivieren kann? Man spielt ein bisschen. Heute spiele ich mal Railroad Tycoon.

Carsten schrieb das der morgentliche Güterzug nach Barsinghausen jetzt über Haste zurück fahren muss, da die S-Bahn-Sprinterzüge die Strecke blockieren. Ich nehme an das liegt daran, dass sie S21 in Barsinghausen auf den Gegenzug wartet und der Güterzug dort nicht mehr vernünftig wenden kann. Dann spielen wir doch mal wie ich das Problem normalerweise lösen würde ;)

  1. Gleis 3 in Barsinghausen wird wieder geöffnet, zumindest der östliche Teil bis zur Rampe, die man über das Gleis gebaut hat. Gerne auch erst mal ohne Elektrifizierung, der Güterzug fährt sowieso mit einer Diesellok. Damit sollte das unmittelbare Problem schon fast gelöst sein.
  2. Bei erstbester Gelegenheit wird die Eisenbahnbrücke über die Hannoversche Straße auf 2 Gleise verbreitert. Das Nachbarhaus kann man ja im Zweifelsfall einfach kaufen.
  3. Die Baumreihe und der Grünstreifen nördlich der Ausfädelung des Industriestammgleises werden durch eine neue Ausfädelung ersetzt. Die Hauptstrecke wird 2-gleisig bis kurz vor Kirchdorf geführt. Damit sollte auch genug Luft in den An- und Abfahrtszeiten für einen zusätzlichen Halt der S21 in Egestorf sein.

  4. Wenn es jetzt Gedränge auf der Strecke ab Weetzen gibt: kein Problem. Vom Bahnhof Weetzen aus kann die Strecke bis kurz vor die Ronnenberger Straße in Empelde 3-gleisig ausgebaut werden. In Ronnenberg ist da genug Platz, die alten Gleisanlagen des Kalischachtes sind nicht überbaut worden.
  5. Direkt östlich des Körtingsdorfer Weges in Hannover (zwischen Bornum und Linden/Fischerhof) endet ein Gleis. Weiche dran, fertig. Oder bei der Tycoon-Lösung: den westlichen Bahnsteig Bornum nach außen verlegen und das Gleis gleich bis zur Einfädelung der Empelder Kurve von der Güterumgehungsbahn verlängern. Das mittlere Gleis hat dann keinen Bahnsteig mehr und kann flexibel genutzt werden.
  6. Die Abfahrt der Güterumgehungsbahn zum Güterbahnhof Linden ab Bornumer Holz wird von 7 auf 2 Gleise immer enger. Da könnte man dann auch gleich Hand anlegen. Kostet alles nur ein paar Kleingärten.
  7. Zur Cebit und so fährt die S21 dann mit einem Wagen mehr. In Linden/Fischerhof wird der Zug getrennt, der erste Teil fährt wie gewohnt weiter, der letzte Wagen fährt direkt nach Hannover Messe/Laatzen.
  8. Wenn Barsinghausen West gebaut wird kann man den 2-gleisigen Abschnitt gleich bis kurz vor Winninghausen verlängern, dann hat man da auch genug Freiraum für Zugbegegnungen bei Verspätungen.
  9. Ach ja, irgendwann sollte man Gleis 3 in Barsinghausen dann auch wieder durchgängig und elektrisch befahrbar machen.

So, genug phantasiert. Ich spiele jetzt noch eine Runde OpenTTD.

Erstellt: 6. 7. 2014, 21:14
Geändert: 15. 7. 2014, 11:25

Generating DANE DNS records for servers using CAcert.org certificates with tinydns

Tags:

For those that do not have the money or nationality to be included into the bullshit made in Germany network, or that simply say that this is, well, bullshit, there is the way to use DANE records. They have one disadvantage: they need DNSSEC to be really secure, and sadly my hoster Hetzner currently doesn't support that. But I thought that having them in place anyway can't hurt.

There are several ways to match a certificate by those records, e. g. you can assert that a specific certificate is used, or the root of your trust chain is a specific certificate. You can also publish the complete certificate or just a hash. Since I am a lazy folk I decided that I would publish the root of the certificate chain, i. e. the CAcert root certificate. This is slightly less secure as any certificate signed by CAcert.org for my domain name would be accepted, but the way CAcert works I would have to do that signing. On the other side this is one of the advantages, as I can change the keys and certs any time, as long as it is signed by CAcert the DANE records don't need to change. The other advantage is that the same record for every host and service I use, as all of them use CAcert.

Most howtos will end in "IN TLSA" records, which are for BIND nameservers. I run tinydns from the djbdns package, which uses a different format. So, how did I proceed?

Two more tips, slightly related: if you are on an openSUSE system the CAcert certificates are not installed by default. But you don't have to do any magic by hand:

zypper in ca-certificates-cacert

And for those that want DNSSEC with tinydns: tinydnssec could be the way to go (haven't tested that yet).

Erstellt: 27. 5. 2014, 19:17
Geändert: 27. 5. 2014, 19:18

Ich will das richtig

Tags:

Ich will GPS im Auto. Und USB. Und überhaupt. Aber bitte richtig.

Also der Plan ist folgender: die meisten Autos haben heutzutage bereits ein Ortungssystem eingebaut, in absehbarer Zeit werden das alle sein. Jetzt hätte ich gerne an jedem Sitzplatz im Auto einen USB-Anschluss. Dieser sollte folgende Eigenschaften haben:

Irgendwer würde an dieser Stelle bestimmt Bluetooth ins Spiel bringen. Das klappt für die Datenübertragung vielleicht, für das Laden eher nicht. Außerdem gehöre ich zu der Fraktion von Leuten, die kabelgebundene Übertragung bevorzugt wenn möglich, da diese meiner Meinung nach prinzipiell störfester und schwerer abhörbar ist.

Erstellt: 20. 5. 2014, 22:02

Random platform fixes #3

Tags:

Every once in a while I get bored and pick a random downstream platform and look on their CMake patches. The first time it was obviously Gentoo, because my toy machines run Gentoo. For reasons I don't remember anymore the next was Haiku. A bit strange, I never before (and basically never again) touched that OS. And at the moment it is OpenBSD.

I must say the findings are different. Gentoo still ships a lot of obscure old patches, that do e.g. platform fixes for things Gentoo doesn't really have anything to do with like AIX. I think most of them should be either send upstream or dropped, better sooner than later. Then they have a set of Python related patches because of the heavy Python usage in Gentoo. And of course the usual set of backports that are absolutely fine, especially as CMake 3.0 takes way longer than expected. I fought a long battle against some of the Python stuff because that actually broke stuff just to get it compliant with their thinking of how it should be, and finally gave them a clean version that does what they want (i.e. respect the global Python default version of the system) without breaking applications requesting a specific version. Meanwhile I get added to CMake bugs to give comments if patches are fine, so I file that as success.

Haiku had a bunch of platform fixups for their own stuff, because their API changed or whatever. I cleaned them up, submitted upstream what was sensible, and from what I know they should not need a single downstream patch once CMake 3.0 is released. One of the Haiku developers now comes into the CMake IRC channel every now and then to ask for comments or simply sends patches. Success, definitely.

OpenBSD is another beast. It is a bit like a mix of Gentoo and Haiku, having all sorts of arcane and obsolete stuff in it (i.e. things that are not needed at all because the code would work the same without their patches), as well as their platform stuff. One example is that Linux systems have their man pages in */share/man, while OpenBSD uses */man. Those stuff is currently sitting in the next branch, probably going to master soon if nothing unexpected shows up. Then there is the obsolete stuff, that can only be cleaned up by the OpenBSD folks themselves. I had the impression that the stuff that Gentoo shipped at least did make a change in behavior, some of the OpenBSD stuff can simply be discarded without anyone noticing. And then there is their platform specific stuff. OpenBSD does not want sonames in libraries, which is one feature that makes work on an ELF based platform much more comfortable. This will probably not go upstream anytime soon. But hopefully their huge patchset will shrink soon.

Erstellt: 20. 5. 2014, 21:38
Geändert: 20. 5. 2014, 21:41

Politikerkompetenz, die Siebte

Tags:

Schon etwas länger her, und zeitlich definitiv vor der letzten Ausgabe: mein wirklich allerherzlichster Dank an Thomas Oppermann. Er hat etwas geschafft, das längst überfällig war. Nachdem Urteile des Bundesverfassungsgerichts bezüglich Grundrechten keine Wirkung zeigten, hat er den Law-and-Order-Schnösel Friedrich in der einzig ihm angemessenen Weise abgeräumt: strafrechtlich. Jetzt müsste er nur noch eingesperrt werden und seine Versorgungsansprüche verlieren.

Erstellt: 18. 4. 2014, 23:05

Politikerkompetenz, die Sechste

Tags:

Streng genommen ist das gar keine plötzliche Kompetenz, denn der Uhl hat schon klar gemacht, das alles ist wie immer. Aber weil es so völlig unerwartet kam, dass er BKA-Chefkaspar Ziercke kritisiert, weil er Informationen nur scheibchenweise rausgibt. Ich meine, für die meisten von uns ist es vermutlich nicht überraschend, dass die Sicherheitsbehörden mauern und nichts konkretes zur Aufklärung eines eigenen Fehlverhaltens beitragen, aber jetzt hat es plötzlich auch mal bei Herrn Uhl geklingelt.

Erstellt: 18. 4. 2014, 16:06

SSL-Peergroup (2)

Tags:

Nach dem der Heartbleed-Bug bekannt geworden ist habe ich das getan was jeder gute Programmierer an dieser Stelle tun würde: den Code angucken. Hätte ich den Fehler auch gefunden? Weiß ich nicht. Was mir jedoch aufgefallen ist, ist ein anderes Detail, das ich zunächst nur als sehr schlechten Stil betrachtet habe: wenn OpenSSL selbst einen Heartbeat-Request rausschickt legt es dort 20 Byte Payload bei. 4 Byte sind dabei ein einfacher Zähler, und nur diese 4 Byte werden auch hinterher geprüft. Warum schicke ich 20 Byte raus wenn ich die nicht alle prüfe? Ich sehe sowas als Pfusch an.

Als ich die Tage bei einem Kollegen im Büro stand scrollte da das IRC-Log der OpenBSD-Leute vorbei. Und die fanden das noch aus einem ganz anderen Grund bedenklich: die anderen 16 Byte sind nämlich Zufallszahlen, das heißt das das Senden von Heartbeat-Requests dem Gegenüber direkt 16 Byte aus dem eigenen Entropie-Pool zur Verfügung stellt. Bei Systemen mit schlechten Generatoren ermöglich das natürlich wunderbare Attacken, da der interne Zustand des Generators jetzt weiter eingegrenzt werden kann.

Anbieterkennzeichnung