Cryptography is about constructing and analyzing protocols that prevent third parties or the public from reading private messages; Various aspects in information security such as data confidentiality, data integrity, authentication, and non-repudiation are central to modern cryptography.