Deterministic Linux Kernel Builds

As an experiment I wanted to see if I could deterministically build the Linux kernel twice in a row. My goal was to have two kernels where the bzImage result hashes to the same sha256 hash. I saw that a patchset had been merged a while back[1], but the script provided didn’t work out of the box for me. (And why should it!? It was written in 2011!) It got me going in the right direction, which is all I needed to get it to work.

Cloudflare Crypto Meetup

I attended the second cryptography meetup at Cloudflare last Wednesday and was once again impressed by the turnout. It was only the second talk and they’ve already had prominent members of the crypto community speaking including Adam Langley from Google, Trevor Perrin who worked on TextSecure and Brian Warner from Mozilla. The talks were all fantastic but Trevor’s talk about application level encryption and the challenges of group encryption the most interesting.

`netstat -p` on busybox

netstat is one of my favorite linux utilities and is always one of the first tools I use when starting to debug any network related issues. One of my favorite options that netstat provides is the -p flag. This flag is used to see which programs are talking on which sockets. On to the real problem. I was investigating an issue with a OpenWrt router I was having which was that it was listening on a port which I wasn’t expecting.


I spent a good amount of time cleaning up git-fat this weekend. I finally got around to finishing the backend interface to enable multiple backend implementations. Now it’s much nicer to add another transport medium than it was when I first added HTTP as a backend. Additionally, having an interface made testing quite a bit nicer since I can now use the copy local backend instead of configuring rsync on the host I’m testing on. can be a directory

I found an interesting python quirk the other day. Not too serious, but could have some interesting consequences