CS Diploma: Check!

Implementation and Evaluation of Efficient Cryptographic Algorithms using CUDA and OpenCLCareful readers should have noticed that I talked about having finished my Computer Science studies recently. Now, there are several steps to the process. First you simply hand in your diploma thesis, meaning that you’re done working on it. At some point, if you need it, you can get a slip which confirms that you at least passed the thesis, albeit with the lowest possible grade. Then, you will give your final talk to pass the time until your reviewers have finished grading the thesis. Finally, the grade is officially and irreversibly entered into the university’s computer system, which, in my case, happened yesterday.</p>

Thesis: Implementation and Evaluation of Efficient Cryptographic Algorithms using CUDA and OpenCL
The (rather lengthy) topic of my thesis contains this: Cryptography on GPUs. GPUs have become much more powerful than CPUs in terms of FLOPs/s (floating point operations per second), but using these computational resources requires a new programming model and a problem which can in fact be translated to run on a GPU. I simply transformed a few block ciphers (symmetric encryption systems) to run on the GPU, and analyzed common design paradigms and problems along the way. This has been done before by other teams, but what sets my work apart (in my opinion) is the fact that I analyzed multiple ciphers in one work, used two different systems to test my implementations and provided a detailed description of the test setup, something missing from most of the previous work.

Additionally, I think my thesis makes a comfortable read for anyone interested in GPU programming and cryptography on GPUs. You don’t need a lot of previous knowledge to understand it, and most of the previous work in GPU cryptography (not just for block ciphers) has been cited in the first chapter.

Thesis: Implementation
engine-cudaTo implement the ciphers examined in my thesis, I needed some kind of foundation. First of all, encryption and decryption has to be invoked in some standard way, and different kinds of benchmarks have to be supported as well. After some search, I settled with using engine-cuda, an engine for the OpenSSL crypto library which uses CUDA to execute the block ciphers. To implement the block ciphers, I used the versions included with OpenSSL to start. Implementing a block cipher using just the original paper which describes it is a really bad idea unless you have extensive experience. I’ve seen other teams implement text-book versions of AES and fail miserably in the process.

My changes to engine-cuda will be released at some point in the near future, right now I am still working on it. Rest assured, when it is released you will hear about it here ;)

Thesis: Acknowledgments
IT Security RWTH AachenMy thesis was written at the Chair for IT Security at RWTH Aachen University, which is a young and really small chair. As a result, the communication with my supervisor and the professor was excellent, and I’d like to thank them both for supporting my topic. While cryptography certainly fits well into a chair for security, GPU-programming is a topic more often attributed to HPC research groups. As usual, Flo proved to be really helpful pointing out spelling mistakes and other errors in my thesis. Last but not least, Paolo Margara, author and maintainer of the engine-cuda project helped me get started with the code and discussed implementation decisions with me during development.

If you have questions or suggestions about the content of my work, feel free to contact me!

Lüttich – Worth a visit

Sonntag in LüttichYesterday, Katrin and me visited Lüttich (Liège) in Belgium. With 200.000 habitants, it is one of the closest big cities to Aachen, a little more than half an hour drive from us. Lüttich’s history is rooted in coal mining and a large steel industry, something which still shows today, underlined by the fact that the city is home to one of the largest inland ports in continental Europe. The city center of Lüttich is a mixture of many small, old and cute brick houses, sometimes even timber framed. In between, huge and incredibly ugly apartment buildings have been constructed in the recent past, some of which posses a certain soviet flair. In general, a lot of the city center is convoluted, dark and downright filthy, but you can clearly see the efforts undertaken to improve the appearance of the inner city by incrementally removing some of the most appalling sights.

In conclusion, while I wouldn’t book a hotel room in Lüttich, it is well worth a visit. There are many interesting streets and squares, and just the view over the city itself is breathtaking. If you go on Sunday, you can also experience the large (flea) market along the river Maas and grab something fried to eat.

Sonntag in Lüttich

I also tried geotagging my photos for the first time yesterday. The process is really simple. Just activate your GPS tracking device, later transfer the GPX track to your PC and use software like “gpscorrelate” to match your photos to your track. A certain offset between the cameras clock and the GPS time can’t be avoided. To most easily discover this offset simply take a photo of the exact time on your GPS using your camera, and compare the content of the photo with the EXIF time tag before you start.

Summer 2011 – Road Race

To commemorate the end of my studies (Computer Science) I got myself a new toy. This time I opted for something substantial instead of many small and sometimes pointless gadgets which will only accumulate dust after their initial use. So, after careful consideration and a long period of reflection, I got myself a racing bike. This is what it looks like:Vortrieb 2011 Road RaceAlthough there are many large bike stores here in Aachen with a large selection of bikes, I chose a small store in downtown Aachen called Vortrieb which has a large online presence for bike parts and a small store selling preconfigured bikes. Since you don’t just need a bike I went ahead and added stuff like cycling shoes, pedals, clear glasses, a helmet, a shirt, a bottle and cushioned shorts. Using shoes with a click system requires some training (I’m using SPD-SL Shimano cleats) but I was able to get up to speed without toppling over once.

As I said I was pretty sure that a racing bike would be good investment beforehand, judging from the amount of cycling I did with my old mountainbike. Aachen and its surroundings are perfect for cycling: Lots of cute small villages connected by many small farm roads, an interesting landscape and three countries to explore. Driving east the landscape gets flat very soon, but to the west and south of the city, a mixture of farmland, forest and villages is distributed on gently sloping hills and in small valleys. After having familiarized myself with the bike in the last two weeks I decided to put it (and myself) to the test on some unknown terrain.
You can view my route below, click for Google Maps, downloadable GPX. Distance was about 47km, combined elevation about 850m, it took me two and a half hours. I visited villages like Lemiers, Holset, Mechelen, Epen, Sippenaeken, Plombieres, Moresnet and Vaals.
Route 2011-06-02Me cycling without a tachometer means that I have a new use for my Garmin etrex H GPS. I had to build a connector cable though since I didn’t want to buy the totally overpriced serial cable from Garmin.
ElevationI hope to do more posts like this in the future, the amount of work transferring the GPX is negligible and I have a feeling that a lot of people are interested in GPS routes.

Shots of early 2011

My last post was about the photographic year 2010 and this is barely any different. I hope to blog about something substantial very soon, seeing as I’m done with my Diploma Thesis now, but in the meantime enjoy the photos and the comments.

Maiwanderung 2011

I completed my first long hike this year in February. It was part of our the vacation program of our fraternity to bridge the gap between the lecture periods of the winter- and summersemester. You can read about it here (in German) and also view the whole gallery on my photosite. Interesting hiking trails in and around Aachen can be found with the Grenzrouten, printable PDFs included.

Wanderung Grenzrouten (Preuswald)Wanderung Grenzrouten (Preuswald)

It’s probably safe to say that most of the time the shutter on my trusty EOS 400D was released, something delicious was right in front of it. Yes, this year has been ripe with a lot of delicious meals and the accompanying recipes, thanks to Katrin. She recently introduced her recipes in the PDF format on her foodblog, so there is no excuse not to try any of them. Head on over to her foodblog and leave comments, if you haven’t already subscribed to it via RSS. As far as photography goes, most of the shots for her blog are pretty much the same setup: TTL-flash, on camera, towards ceiling, dialed up to correct for the white plate, 1/200s exposure, 50mm 1.4 @ 4.0 or something like that. Most of the time the timeframe to take the shot is limited to about 60 seconds, a bloggers gotta eat too. I did try some new tricks though: Used my second flash and part of the Hama mini photostudio to light the food from behind and front. Center image below. An even simpler trick I recently started using when trying to add some depth to the shot is to point the camera straight downward and the flash towards a (white) wall at a right angle. This should give more defined shadows than using the ceiling, as can be seen in the other two shots.

How to make a bagel... My contribution to dinner Eier-Gurken-Sandwiches mit Senfcreme

Then there were the usual amount of parties and social events, only a fraction of those made it into my flickr account. One noteworthy day was the first of May, were we traditionally hike to our tree behind the Aachen golf club. The weather on that event was stunning, and the photos reflect that fact. Katrins headshot was an attempt to produce a photo suitable for a job application. I know that the green background might be distracting, but I think it’s pretty nevertheless. Interestingly enough, this photo was shot inside our living room, in front of the open balcony door, using both my flashes to correctly balance subject and background. I think it came out great, but then again, I tend to favor overly colorful and bright shots ;)

BrunchRecent Parties
Maiwanderung 2011Indoor - Outdoor PortraitMaiwanderung 2011
Maiwanderung 2011Maiwanderung 2011

Yesterday Katrin and I spent some time in nearby Maastricht, NL to enjoy the city, the weather and some positively coronary-inducing pancakes. Yummy! All the shots (with Polfilter the whole time) can be found on my photosite.

Saturday in MaastrichtSaturday in Maastricht

subscribe via RSS