myself in the Swiss alps

This is my personal page. I'm a part-time assistant professor of system and software security and a post-doctoral researcher at Ghent University, ELIS, Computer Systems Lab (Faculty of Engineering and Architecture). I also have a research-related page.

A picture of a cloud-covered mountain in Grindelwald, Switzerland, in 2015

I like taking photos whenever I go on holidays. This means I have some photo albums whose content ranges from simple holiday pictures to (at least to my tastes) somewhat aesthetically or artistically pleasing pictures. I like landscape photography in particular. Recent pictures are taken with an EOS 5D Mark III, the rest is taken with my EOS 350D (a few very old ones are scans from back when I used an Asahi Pentax ES II). Most of these are not edited; I tend to keep the editing for those that I actually might want to print.


These are some of my pet projects that are currently available online, and that are large or interesting enough to have a short description. Some other projects can be found in my list of interests, and even more I just never put online.

A picture comparing the Steingletscher in 1998 with the Steingletscher in 2019
I've been going on holidays to Grindelwald, Switzerland for the past 30 years. I decided to create a blog post to illustrate how far the glaciers in Grindelwald and the surrounding area have receded in my lifetime. I did so by comparing pictures from when I was young with recent pictures. As an example of such a comparison on this page, I compare my picture from 1998 of the Steingletscher with a picture from 2019 taken from the same vantage point. In the blog itself, I overlaid these pictures (along with pictures of different glaciers) so you can compare them by moving a slider around. Since that first version of that blog post, I've extended the comparisons with older pictures taken by my father.
lll :: [[Rational]] -> Basis
A very basic Haskell implementation of the LLL (Lenstra-Lenstra-Lovász) lattice reduction algorithm and Babai's method for the Closest Vector Problem. It's also available on Hackage, through cabal install Lattices. Originally written to teach myself a bit more about lattice-based attacks in crypto, but it might also be useful for other areas.
sPutPacket :: ClientPacket -> SshConnection ()
*Main> :main localhost
Password for bartcopp@localhost:
I wanted to write a non-trivial piece of code in Haskell, and settled on an SSH client. Currently it's in a very unfinished state, and I doubt I'd ever be able to recommend trusting it with your private data, but it's still fun to toy with. Requires that diffie-hellman-group1-sha1 is in the list of sshd's KexAlgorithms, and currently only works decently when run from a REPL.
a picture of a Raspberry Pi B+ and an Adafruit WS2812 LED ring
Small project to make a Linux kernel driver for the Broadcom's PWM peripheral, so that my Raspberry Pi B+ can drive WS2812 LED strips.
A picture of the PCB for the ADL5536
For my weather satellite experiments amplifier, I experimented with using an ADL5536 as a pre-amp. The resulting PCB is pretty simple, but as it the first time I ever made a PCB I'm still pretty pleased with it.
Example NEC antenna gains plot
An improved Python wrapper around Tim Molteno's nec2++ antenna simulation program. Contains examples to optimize antennas for multiple frequency ranges at the same time, to plot the optimization path in the parameter space, etc.
  • Photography: recent pictures are taken with an EOS 5D Mark III, the rest is taken with my EOS 350D (a few very old ones are scans from back when I used an Asahi Pentax ES II).
  • A sporadically updated blog (Last update: 2019-11-07)
  • Music that I like.
  • Books that I read.
  • Some of my code I put on GitHub, and some of my code I put on Bitbucket.
  • Krita: a graphical tool for KDE.
  • Aikido, a martial art (which I practice at the Driebeken dojo in Ghent).
  • Some radio amateur-related things. Currently limited to receiving the NOAA / Meteor weather satellites at 137MHz. I'll probably add some more details here in the future. The ADL5536 PCB is part of that.

Some of the presentations I've given. Warning: I typically like to have lots of (animated) diagrams without much additional text, and then explain everything verbally using those diagrams. So in isolation the slides might be a bit useless, but they can be useful for others trying to explain the same topics with diagrams.

Part of a slide on buffer-based exploits
Starts from the basics: what's a buffer overflow (with x86-64 assembly examples), and how can this be exploited in the absence of any exploit mitigation. Then I show some of the existing mitigations, and how they can be circumvented.

My personal email address is kde @ bartcoppens.be.

My university email address is Bart.Coppens @ UGent.be.

My PGP key fingerprint is 1540 BAC4 779C EACB 5212 A959 6516 95B0 5F29 CF10 (also available on keybase.io).

Or, being social, Mastodon or Facebook.

My LinkedIn profile.

Some projects/organizations I like/support

Created: 2002-11-23 — Last Updated: 2024-05-03 — Bart Coppens

Valid XHTML 1.1