Applied crypto project 2