Python code for Udacity course CS387 - Applied Cryptography