Halim Paracki

Diverse Projekte

Spiel / 3D-Physics-Engine

Video mit Kommentaren

–––
Dieses Projekt habe ich vor meinem Informatikstudium durchgeführt. Verwendet wurden ausschließlich C++ und das GL-utility-toolkit zum Zeichnen der 3D-Objekte.
Das Projekt wurde ohne Zuhilfenahme vorgefertigter Engines oder sonstiger 'Baukästen' vom Grobentwurf bis zu den Details 'from scratch' selbst entwickelt.
Zum damaligen Zeitpunkt hatte ich nur rudimentäres Java-Wissen.
Die drei Links unten führen alle zum selben Video.

iPhone - Multiplayer Spiel / Appstore / Swift

kurze Videos ohne Kommentare

–––
Dies war ein Teamprojekt mit 9 Personen im Rahmen der 'Software Projekt 2'-Vorlesung.
Ich war verantwortlich für die Multiplayer- und Netzwerkkommunikation, GameCenter-Anbindung, strukturelle Logik, Synchronität des Spiels auf beiden Geräten und die Konsistenz der Spielzustände während dem Laden und Speichern.
Da praktisch jede Handlung oder Klick Auswirkungen auf beide Spielpartner hat, übernahm ich auch den Entwurf der Spieleengine und koordinierte zwischen den Teams.
Mein Anteil bestand auf 3.500 geschriebenen und 5.000 gelöschten Zeilen Code, welche durch die Fehlerkorrekturen zustande kamen.
Da ich kein eigenes MacBook besitze und keine neuen Videos anfertigen kann, sind nur noch zwei ältere Mitschnitte von Spielpartien verfügbar.

Bootloader-Brenn-Platine für Atmega328P

Bild

–––
Normalerweise sollte ein Arduino dafür verwendet werden, Programme auf Microcontroller zu schreiben und zu testen, bevor diese später in einer verlöteten Platine ihren eigentlichen Zweck erfüllen. Dazu wird der fertig programmierte Microcontroller aus dem Arduino entfernt und ein neuer muss her. Leider werden fabrikfrische Microcontroller in der Regel ohne Bootloader ausgeliefert, weshalb es nötig ist, diese erst mit einem Bootloader auszustatten, bevor von diesen irgendwelche Programme verwendet werden können.
Da die Hardware hierfür in meinen Augen zu teuer war, habe ich einen Atmega328P mit einem Brennprogramm ausgestattet, welches über die selbstgebastelte Platine einem zweiten Atmega328P einen Bootloader aufbrennt.
Dazu muss lediglich der neue Controller in den zweiten Sockel gesetzt und die Platine über wahlweise ein USB-C-Kabel oder 9V-Anschluss für 10 Sekunden mit Strom versorgt werden. Danach trennt man einfach den Strom und der neue Microcontroller ist einsatzbereit.

Internet-Infrastruktur

Video mit Kommentaren

–––
Da beim Ausbau des eigenen Heimnetzwerkes immer mehr Geräte eine öffentlich erreichbare IP-Adresse benötigen, habe ich mich intensiv mit IPv6 und Netzwerktechnologien beschäftigt. Betrieben werden nun zwei eigene DNS-Server, teils virtuelle Ubuntu-Server, Clouds, Webseiten und Services.
Anfragen an eigene Teamspeak-Server, Mailserver, SIP und andere Services werden über das DNS automatisch und lastverteilend an entsprechende URIs weiter geleitet.
Für die Sicherheit eigener Daten und Domains ist der Einsatz von TLS und anderen Sicherheitskonzepten selbstverständlich.

SIP-Server

Kommentar mit Test-URI

–––
Hier ging es darum, daß gängige Router wie z. B. AVM FritzBoxen keine Anrufe zulassen, welche nicht vom Server des Telefonieproviders kommen. Besonders die Telekom verlangt teils horrende Gebühren für Auslandstelefonate, obwohl sie nicht nennenswert mehr tut, als die URI des Gesprächspartners nachzuschlagen.
Bei diesem Projekt habe ich meine DNS-Server manipuliert, Mechanismen der Fritzbox umgangen und einen eigenen SIP-Server eingerichtet, welcher einfach über die Domain erreicht werden kann. Auch ausgehende Anrufe sind möglich - allerdings nur zu SIP-URIs.
Im folgenden ein Link, falls jemand Lust hat die SIP-Nummer zu testen (Vielleicht bin ich ja daheim und geh ran ;-).
Parameter werden über SRV-Records automatisch ermittelt. Falls das SIP-Telefon das nicht unterstützt, kann auch der zweite Link verwendet werden.

RFID Sicherheitsanalyse

Kommentar

–––
Während dem Studium war einer meiner Schwerpunkte die IT-Sicherheit.
Da das Thema gerade recht aktuell ist und Banken ihre EC-Karten standardmäßig mit RFID-Bezahlfunktion ausstatten, habe ich mich über mehrere Monate hinweg mit der Funktionsweise und den Sicherheitsaspekten von RFID-Chips befasst.
Viele Unternehmen modernisieren regelmäßig ihre Zugangskontrollsysteme, ziehen die 'veralteten' Zugangskarten ihrer Mitarbeiter nicht ein. Die Zugangskontrollsysteme werden daher oft in einem rückwärtskompatiblen Arbeitsmodus belassen, welcher die Sicherheit unnötig kompromittiert.
Mittels leicht zugänglicher Hardware wurden gängige RFID-Sicherheitsysteme nach Genehmigung der Betreiber angegriffen und einige dieser erfolgreich ausgehebelt.
Über die Ergebnisse kann ich hier leider nicht berichten, kann jedoch sagen, dass RFID grundsätzlich nur eine Zugangserschwernis darstellt und auf zusätzliche Sicherheitsmechanismen angewiesen ist.