I’ve been taking a course on Cryptography and simultaneously working through Learn C The Hard Way with some coworkers. I’ve put together a small toolkit of C programs I’m calling OneTimer to help with encrypting and decrypting messages with the one time pad. Just being able to take a string of the hexadecimal representation of a message and turn it into a byte array has been super useful. Sample use:
> ./encrypt -k f00bd00b -p "Derp"
b46ea27b
> ./decrypt -k f00bd00b -c b46ea27b
Derp
> ./crack -p "Derp" -c b46ea27b
f00bd00b
That’s some serious spy shit, huh? Just like those guys in Cryptonomicon.