jaseg.de on Home http://jaseg.de/ Recent content in jaseg.de on Home Hugo -- gohugo.io en-us Jan Sebastian Götte Tue, 26 Dec 2023 15:26:00 +0100 8seg http://jaseg.de/blog/8seg/ Tue, 26 Dec 2023 15:26:00 +0100 http://jaseg.de/blog/8seg/ 8seg Technical Overview Prologue German hacker culture has this intense love for things that light up in colorful ways. Like for many others in this community, I have always been fascinated by LEDs. One of the first things on my pile of unfinished projects was to build my own LED matrix and use it to display text. When I started that project, I was still new to electronics. Back then, commercial LED matrices were limited to red or green color only, and were very expensive, so there was an incentive to build your own. KiMesh http://jaseg.de/projects/kimesh/ Wed, 04 Oct 2023 23:42:00 +0200 http://jaseg.de/projects/kimesh/ <div class="document"> <p>KiMesh is a KiCad plugin that automatically creates security meshes with two or traces covering an arbitrarily-shaped outline on the board.</p> </div> Ubiquiti EdgeRouter on Deutsche Telekom GPON Fiber http://jaseg.de/blog/telekom-gpon-sfp/ Mon, 21 Feb 2022 20:00:00 +0100 http://jaseg.de/blog/telekom-gpon-sfp/ Disclaimer I provide this guide as a reference for other knowledgeable users without any warranty. Please feel free to use this as a resource but do not hold me responsible if this does not work for you. There is a significant chance that due to an error on my side or due to Telekom changing their setup this guide will not work for you, and you may end up having to pay for an unsuccessful Telekom technician visit. New Paper on Inertial Hardware Security Modules http://jaseg.de/blog/ihsm-worlds-first-diy-hsm/ Tue, 23 Nov 2021 23:42:20 +0100 http://jaseg.de/blog/ihsm-worlds-first-diy-hsm/ World's First DIY HSM Last week, Prof. Dr. Björn Scheuermann and I have published our first joint paper on Hardware Security Modules. In our paper, we introduce Inertial Hardware Security Modules (IHSMs), a new way of building high-security HSMs from basic components. I think the technology we demonstrate in our paper might allow some neat applications where some civil organization deploys a service that no one, not even they themselves, can snoop on. Kicad Mesh Plugin http://jaseg.de/blog/kicad-mesh-plugin/ Tue, 18 Aug 2020 13:15:39 +0200 http://jaseg.de/blog/kicad-mesh-plugin/ Tamper Detection Meshes Cryptography is at the foundation of our modern, networked world. From email to card payment infrastructure in brick and mortar stores, cryptographic keys secure almost every part of our digital lives againts cybercriminals or curious surveillance capitalists. Without cryptography, many of the things we routinely do in our lives such as paying for groceries with a credit card, messaging a friend on Signal or unlocking a car with its keyfob would not be possible. Private Contact Discovery http://jaseg.de/blog/private-contact-discovery/ Sat, 22 Jun 2019 10:30:00 +0800 http://jaseg.de/blog/private-contact-discovery/ Private Contact Discovery Private Contact Discovery (PCD) is the formal name for the problem modern smartphone messenger applications have on installation: Given a user's address book, find out which of their contacts also use the same messenger without the messenger's servers learning anything about the user's address book. The widespread non-private way to do this is to simply upload the user's address book to the app's operator's servers and do an SQL JOIN keyed on the phone number field against the database of registered users. Hardware Security Module Basics http://jaseg.de/blog/hsm-basics/ Fri, 17 May 2019 15:29:20 +0800 http://jaseg.de/blog/hsm-basics/ Hardware Security Modules and Security Research and Cryptography On May 17 2019 I gave a short presentation on the fundamentals of hardware security modules at the weekly seminar of Prof. Mori's security research working group at Waseda University. The motivation for this was that outside of low-level hardware security people and people working in the financial industry HSMs are not thought about that often. In particular most network or systems security people would not consider them an option. How to talk to your microcontroller over serial http://jaseg.de/blog/serial-protocols/ Sat, 19 May 2018 08:09:46 +0200 http://jaseg.de/blog/serial-protocols/ Scroll to the end for the TL;DR. In this article I will give an overview on the protocols spoken on serial ports, highlighting common pitfalls. I will summarize some points on how to design a serial protocol that is simple to implement and works reliably even under error conditions. If you have done low-level microcontroller firmware you will regularly have had to stuff some data up a serial port to another microcontroller or to a computer. Thor's Hammer http://jaseg.de/blog/thors-hammer/ Thu, 03 May 2018 11:59:37 +0200 http://jaseg.de/blog/thors-hammer/ In case you were having an inferiority complex because your friends' IBM Model M keyboards are so much louder than the shitty rubber dome freebie you got with your pc... Here's the solution: Thor's Hammer, a simple typing cadence enhancer for PS/2 keyboards. Your browser does not support the HTML5 video tag. A demonstration of the completed project. h264 download / webm download The connects to the keyboard's PS/2 clock line and briefly actuates a large solenoid on each key press. 32-Channel LED tape driver http://jaseg.de/blog/multichannel-led-driver/ Wed, 02 May 2018 11:31:14 +0200 http://jaseg.de/blog/multichannel-led-driver/ Theoretical basics Together, a friend and I outfitted the small staircase at Berlin's Chaos Computer Club with nice, shiny RGB-WW LED tape for ambient lighting. This tape is like regular RGB tape but with an additional warm white channel, which makes for much more natural pastels and whites. There are several variants of RGBW tape. Cheap ones have separate RGB and white LEDs, which is fine for indirect lighting but does not work for direct lighting. Wifi Led Driver http://jaseg.de/blog/wifi-led-driver/ Wed, 02 May 2018 11:31:03 +0200 http://jaseg.de/blog/wifi-led-driver/ Project motivation The completed driver board installed in the 3D-printed case. This device can now be connected to 12V and two segments of LED tape that can then be controlled trough Wifi. The ESP8266 module goes on the pin header on the left and was removed for this picture. After the multichannel LED driver was completed, I was just getting used to controlling LEDs at 14-bit resolution. I liked the board we designed in this project, but at 32 channels it was a bit large for most use cases. LED Characterization http://jaseg.de/blog/led-characterization/ Wed, 02 May 2018 11:18:38 +0200 http://jaseg.de/blog/led-characterization/ Preface Recently, I have been working on a small driver for ambient lighting using 12V LED strips like you can get inexpensively from China. I wanted to be able to just throw one of these somewhere, stick down some LED tape, hook it up to a small transformer and be able to control it through Wifi. When I was writing the firmware, I noticed that when fading between different colors, the colors look all wrong! 8seg http://jaseg.de/projects/8seg/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/8seg/ <div class="document"> <p>8seg is an experimental textual display. It is made from a 45m by 1.5m large lacework banner that can be put up in a variety of spaces, conforming to the space's size and shape through bending and folding.</p> </div> About jaseg http://jaseg.de/about/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/about/ About Hej, I'm Jan, or jaseg. At the moment I'm doing a PhD (Dr.-Ing.) at TU Darmstadt in Computer Science, specializing on Hardware Security. This is my personal website where I publish things that I find interesting. I self-host my code at git.jaseg.de, but I am also on github and on gitlab. I use github for issue tracking for some of my projects such as gerbolyze and python-mpv. I maintain the python-mpv and gerbolyze python packages on PyPI. Gerbolyze http://jaseg.de/projects/gerbolyze/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/gerbolyze/ <div class="document"> <p>Gerbolyze is a tool that allows the modification of Gerber PCB artwork with a vector graphics editor like Inkscape. Gerbolyze directly converts between SVG and Gerber, and accurately reproduces details that other tools can not.</p> </div> Gerbonara http://jaseg.de/projects/gerbonara/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/gerbonara/ <div class="document"> <p>Gerbonara is a user-friendly, powerful tool for reading, writing, modification and rendering of Gerber PCB artwork from the command line or from Python code. Gerbonara supports the Gerber dialects of all industry-standard EDA tools.</p> </div> Impressum http://jaseg.de/imprint/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/imprint/ Impressum Sebastian Götte c/o Praxis Dr. Götte Krankenhausstr. 1a 54634 Bitburg imprint@jaseg.net Inhaltlich Verantwortlicher gem. § 55 II RStV: Sebastian Götte (Anschrift s.o.) Lizenz dieser Seite Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz (CC-BY-NC-SA) . Haftungsbeschränkung für Inhalte der Website Gemäß § 7 Abs. 1 TMG ist der Verantwortliche der Website i. S. v. § 5 TMG für eigene Informationen, die er zur Nutzung bereithält, nach den allgemeinen Gesetzen verantwortlich. lolcat-c http://jaseg.de/projects/lolcat-c/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/lolcat-c/ <div class="document"> <p>lolcat-c is a small, high-performance re-implementation of the <a class="reference external" href="https://github.com/busyloop/lolcat">lolcat</a> rainbow cat utility. lolcat-c is meant as a lolcat that you can actually use in production. It is fast, not slowing down whatever you pipe through it, and it robustly handles real-world terminal output including escape sequences.</p> </div> python-mpv http://jaseg.de/projects/python-mpv/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/python-mpv/ <div class="document"> <p>python-mpv is a small, ctypes-based Python library wrapping the libmpv media player library. Despite its small size and simple API, python-mpv allows advanced control over libmpv and beyond simple remote control of mpv can be used to embed mpv in OpenGL, Qt, and GTK-based Python applications.</p> </div> svg-flatten http://jaseg.de/projects/svg-flatten/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/svg-flatten/ <div class="document"> <p>svg-flatten is a command-line utility that performs vector occlusion and clipping on SVG files, producing a flattened SVG file without overlapping elements, without changing what the file looks like. svg-flatten is used as a part of gerbolyze.</p> </div> wsdiff http://jaseg.de/projects/wsdiff/ Mon, 01 Jan 0001 00:00:00 +0000 http://jaseg.de/projects/wsdiff/ <div class="document"> <p>wsdiff is a command-line utility that produces self-contained, syntax-highlighted, HTML-formatted diffs that support both unified and side-by-side diffs from a single source file using nothing but CSS magic.</p> </div>