Latest Posts
Padding Oracle Attacks Explained via Combinatorics of Rubik’s Cube

In this thought experiment, you'ĺl learn about cryptographic primatives, combinitorical group theory, and along the way, gain a deeper appreciation for the 1999 film, *The Matrix*.

make version

Here is how I went about implementing a simple versioning system for my Go project using Conventional Commmits, awk, and make.

Conventional Commit Caveats

The Conventional Commmits spec aims to bring structure to commit messages so that we write succint yet meaningful commits. That sounds great, but let’s examine some potential drawbacks.

Mixed Output Streams with Log4perl Screen Appender

Log4perl provides a powerful logging framework, but how can we dynamically and meaninfully use stdout and stderr?

Tracing Signals in Linux

Signals, or software interrupts, are used to communicate with a process. They could be used to kill a process, restart, or signal a segmentation fault, but how can we know where that signal came from?