Introduction to Cryptography Part 1: The Beauty of Adversarial Design