An understanding of the building blocks for cryptography is important for every software developer, especially as the quantity and value of data stored and sent over networks continues to grow. In this talk I will introduce you to the fundamentals of cryptography, demonstrating concepts such as symmetric and asymmetric encryption, hashing functions, message authentication codes, and more, using code examples. By the end of this talk, you will have a basic understanding of the different components used to ensure primary functions of cryptography, as well as a set of resources for further exploration into modern cryptography.