Assignment 2 Cryptography Solution