DES / 3DES Verschlüsselungsbibliothek für Arduino
Für ein kleines Projekt auf dem Arduino Leonardo habe ich vor kurzem eine Crypto-Bibliothek gesucht, mit der ich DES und 3DES Nachrichten verschlüsseln und entschlüsseln kann. Leider bin ich nicht fündig geworden, bzw. zumindest nicht als Bibliothek für die Entwicklungsumgebung des Arduinos. Bei “Das Labor” gibt es aber eine hervorragende Crypto-Bibliothek für Atmel AVR Mikrocontroller – nichts anderes ist ja auch ein Arduino – also habe ich mir den DES / 3DES Teil geschnappt und ihn auf den Arduino portiert. Das Ergebnis habe ich, ganz der GPL folgend, auf GitHub verfügbar gemacht. Solltet ihr also in einem Sketch bei euch auch DES / 3DES Verschlüsselung benötigen, dann könnt ihr die Bibliothek verwenden. Wenn ihr Änderungen habt, dann nichts wie her damit (entweder als Patch oder als Pull-Request per GitHub).
ProjectEuler.NET – was zum Knobeln für Zwischendurch
Eigentlich wollte ich schon lange mal wieder etwas bloggen, genug Material hatte ich ja schon dafür, aber irgendwie hatte ich bisher noch keine Lust. Trotzdem will ich jetzt ein Projekt vorstellen, mit dem ich momentan viel Spaß habe: Project Euler. Project Euler lässt sich relativ einfach beschreiben: Es werden mathematische Aufgaben gestellt, die mit Hilfe einer frei wählbaren Programmiersprache (oder halt auch nur mit einem Zettel, wenn man das kann) gelöst werden sollen. Momentan werden 300 Probleme auf der Webseite bereitgestellt, die immer gleich abgearbeitet werden. Man bekommt eine Problembeschreibung und ein Beispiel. Anschließend kann man das Problem selbst Lösung und das gefundene Ergebnis auf der Webseite eintragen. Stimmt das Ergebnis wird ein PDF Dokument freigeschaltet, in dem die Lösung nochmal genau beschrieben wird. Hier kann man dann auch durchaus noch Verbesserungen für den eigenen gefundenen Algorithmus finden und seine Lösung entsprechend optimieren.
Die ersten paar Probleme habe ich bereits gelöst und mir ein für mich ausreichendes Framework in C# geschrieben, mit dem ich meine Lösungen recht einfach und komfortabel einbauen kann. Zusätzlich lege ich noch Wert auf Geschwindigkeit, weshalb ich die Geschwindigkeit meiner Lösungen messe und versuche sie zu optimieren.
Solltet ihr auch ein wenig Spaß an ein paar mathematischen Knobeleien haben, dann schaut einfach mal bei Project Euler vorbei. Es lohnt sich.
COfundOS – Die OpenSource Börse
Ihr habt Lust ein neues OpenSource Projekt zu starten, wisst aber nicht was? Tja, bisher gab's da nur eine Möglichkeit: Mal bei Bekannten umhören, was denen noch so an Software fehlt, sich mal in Foren umhören oder ganz einfach irgendwas starten, was möglicherweise die Welt nicht braucht
.
Jetzt gibt es aber COfundOS (=Community Innovation & Funding), damit wird das ganze dann doch etwas leichter. Bei dieser OpenSource Börse kann jeder eine Projektidee beisteuern und jeder der dort Mitglied ist, kann, wenn er möchte, einen Geldbetrag, den er einem Projekt bei Umsetzung zu gute kommen lassen würde, für ein Projekt vergeben. So kann sich also der Programmierer mal umschauen, was so alles an interessanten Projekten für ihn dabei ist und evtl. sogar nach Umsetzung eines solchen Projektes den ein oder anderen finanziellen Obelix verdienen
. Ist doch nicht schlecht, oder?
Wenn ihr also ein Projekt habt, dass eurer Meinung nach umsetzenswert ist oder ihr seid Programmierer und wollt ein neues Projekt starten, dann schaut euch doch mal bei COfundOS um, vielleicht ist ja was für euch dabei...
Spaß mit dem Oszilloskop – YouScope
Ok, ok, was könnte man sich denn bei so einem Titel denken... Bestimmt nicht das, was gemeint ist. Dieses Jahr auf der Assembly 07 hat in der Shortfilm Competition ein Demo den dritten Platz belegt, was ein etwas ungewöhnliches Ausgabegerät verwendet, um die Demoeffekte darzustellen - nämlich ein Oszilloskop
. Das Oszilloskop wird einfach an die normale Soundkarte angeschlossen und läuft im X/Y-Modus. Wenn ihr zu Hause ein Oszilloskop rumstehen habt, dann könnt ihr euch die Sounddatei (mit FLAC komprimiert) zur Ausgabe der Demo hier laden. Alle anderen können sich das Demo direkt hier anschauen:
EA wünscht sich einheitliche Konsolen
Wie WiiKanal.de und auch Heise.de berichten, wünscht sich EAs Senior Executive Gerhard Florin eine einheitliche Konsolenplattform, die von allen Konsolenherstellern gemeinsam entwickelt wird. Dies wäre für die Softwareentwicklung von Vorteil, da man eine einheitliche Hardware hätte und so die Portierung auf die unterschiedlichen Plattformen nicht mehr notwendig sei. Zur Zeit entwickle EA für mehr als 14 unterschiedliche Plattformen, was entsprechende Kosten verursachen würde.
Tja, das ist soweit ja alles richtig, aber man sieht im OpenSource Umfeld eigentlich bereits die Lösung für dieses Problem: plattformunabhängige Entwicklungsbibliotheken. Was spricht eigentlich dagegen, eine Bibliothek wie bspw. SDL zu verwenden und bei der Weiterentwicklung von SDL für die unterschiedlichen Hardwareplattformen mitzuhelfen? Die Hardware würde so abstrahiert, die Spiele könnten auf eine stabile Bibliothek aufbauen und damit wäre eine Portierung viel schneller möglich - und selbst die Linux Benutzer würden sich über neue Spiele freuen, die dann auch endlich mal auf ihrer Plattform veröffentlicht werden
.
Eine weitere Idee wäre auch Java - ok, ok, jetzt kommen wieder die ganzen Leute, die behaupten Java sei langsam, aber wenn man die Hardware der Konsole bspw. mit einem Prozessor ausstatten würde, der den Java Bytecode direkt ausführt anstatt ihn zu interpretieren, könnte man sicherlich noch jede Menge Geschwindigkeit rausholen. Plattformunabhängig wäre das Ganze dann sowieso. Warum also nicht?
Eins ist aber klar: Der Markt sollte auch in Zukunft aus mehreren Konsolenherstellern bestehen, denn - wie wir alle wissen - Konkurrenz belebt das Geschäft und es wäre doch langweilig, wenn wir in Zukunft statt Innovationen einfach nur lieblos zusammengeschusterte Konsolen zu Hause stehen hätten, oder?