CS50x Cryptography Assignment