Master the primitives behind the cryptography APIs most developers only copy and paste.
![]()
![]()
![]()
Join 4,380 students from companies like
Earn a certificate
of completion
What will you learn?
Ever wondered how your data stays safe online? This deep-dive in the Go programming language will teach you all about encryption, password security, ciphers, and more. After you master the fundamentals, you'll learn how each cryptographic primitive is used in real-world applications.
Chapter List
1
Symmetric Encryption
Learn the basics of cryptography: encrypting and decrypting a secret message with a key
2
Encoding
To be able to work with encrypted data, you need to understand how information is encoded in different formats
3
Brute Force
Learn about the most primitive, but most important kind of crypto attack
4
Caesar Cipher
Learn about the fundamentals of ciphers, starting with Julius Caesar's famous cipher
5
XOR
Study the importance of the XOR operation in cryptography and how it can be used to create the perfect cipher
6
Stream Ciphers
Stream ciphers can be used to encrypt data as it flows through a system
7
Block Ciphers
Block ciphers are commonly used to encrypt large amounts of data at rest, like entire hard drives
8
DES
DES is an older block cipher that's important to understand to appreciate modern block ciphers
9
AES
AES is a secure, modern block cipher that's used in many production applications
10
Asymmetric Encryption
Asymmetric encryption is used in HTTPS, digital signatures, and really anywhere two parties need to securely communicate
11
RSA
RSA is one of the most popular asymmetric encryption algorithms
12
Hash Functions
Hashing has many applications in cryptography, including password security and message integrity
13
Digital Signatures
Digital signatures are a way to prove that a message was sent by a particular party
14
KDFs
Key derivation functions are how we derive keys from passwords or from other keys securely
Join 4,380 students in the Learn Cryptography in Go course
Read reviews of their learning experiences
My first exposure to cryptography. Learned a lot of basics. As a bonus, the fact that a byte is 8 bits or 2 hex that converts to 0-255 finally clicked. Also learned a lot of new parts of the go standard library.
A collection of high-level hand-wavy concept stuff you can get just as well from Wikipedia. Followed by an in-depth test on all the coding stuff that they skipped. HeRe'S sOmE dOcUmEnTaTiOn!
Most interesting course to me so far. Basics of cryptography with practical examples. My recommendation and thx to authors!
Mediocrity doesn't cut it anymore
The only way to become a great developer is to write a lot of code
Avoid tutorial hell
by writing a ton of code
Stay motivated with
a game-like curriculum
Build portfolio projects
to prove your skills
Delve deeper
into foundational concepts
Learn flexibly online
without interrupting your life
For 1% the price of college
to minimize your financial risk
