Cryptography by Brennan Novak