Cryptography is the study of techniques used to provide secrecy and integrity to our data, and both authentication and anonymity to our communications through encrypting and decrypting data.