We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Learn Cryptography in Go

Learn how encryption, password security, and ciphers work at a lower level than most developers are used to.

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 signatues, 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

Why settle for mediocrity?

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

dopamine-driven development

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

Join over 300,000 students learning modern backend skills

Connect directly with them and others in our flourishing online community

8.8M

lessons completed

52K

courses completed

2.2B

xp earned

I earned my CS degree several years ago, but was unable to land a coding job. I've completed most of the learning path and I'm ecstatic to report I've started my first full-time software engineering role!

David Kennard profile image

David Kennard

Boston Technologies

Tennessee, USA

The knowledgable developers in the Boot.dev Discord helped me land my first job in just a month!

Megan Astraus profile image

Megan Astraus

Strongmind

Arizona, USA

As a Head of Data Science at a consulting company, I'm always looking to improve my skills. After completing almost all Boot.dev has to offer, I can say it's the ideal choice for backend training.

Isaac Flath profile image

Isaac Flath

Centriam

Washington D.C. USA

I've been working as a postdoc, and ever since getting my feet wet with code I have been interested in transitioning into tech. I recently completed the back-end path on Boot.dev and just landed my first professional development job!

Theo profile image

Theo

Freie Universität Berlin

Connecticut, USA

As a senior dev, the Boot.dev courses have helped me land my first Go job at Ardan Labs!

Daniel Gerep profile image

Daniel Gerep

Ardan Labs

Cássia Brazil

or view more reviews

Frequently asked Questions

Got questions? We've got answers

It's completely up to you. The time it will take you to be "job ready" will depend on how much you already know, how often you study, and how long you study for. That said, the backend career path takes many people about 12 months.

Absolutely! If you built it, use it. You'll build several personal projects while completing our curriculum, and our final course about finding jobs will show you how to construct a job-ready portfolio.

We're not a $10,000 bootcamp.

We're not a $50,000 university degree.

We are a self-paced, gamified online learning platform for back-end web development. You can learn with us for the price of a gym membership.

You can demo the first few chapters of each course with full interactivity, but after that you'll be in "guest mode" or "read only" mode. In guest mode you won't be able to complete lessons, take quizzes, or do the interactive parts of the courses.

As a paid member you get access to everything.

You can read all about our methodology here. In a nutshell, we're laser focused on teaching backend-development, which is somewhat of a rarity in online learning. We're also focused on solving what we believe is the hardest problem with online learning: boredom.

If you prefer coding rather than watching, and your struggle with online learning is staying motivated and engaged, we think you'll like learning with us.

We absolutely hate dark patterns, so we've made it easy to cancel your subscription any time. You can cancel your membership any time from your settings and you won't be billed again.

If for any reason you feel you aren't getting enough value out of the platform, we don't want your money. We have a simple return policy. Just contact us within 30 days of your purchase you're entitled to a full refund.

Yes! We believe in being as fair as possible to learners around the world, and that means pricing that reflects respective earning power.

If you're seeing pricing in anything other than USD, then you're already seeing discounted pricing for your country. If you're not seeing discounted pricing, but you are from a country with lower purchasing power, please let us know and we'll get you a discount.

Absolutely! We have team plans that let your manager pay for your membership and those of your team, while managing billing all in one place. To get started just check out the teams page. You'll need to be logged in.

For sure, just check out the gifts page. You'll be able to purchase a redeemable code that you can give to a friend.

Enter your code on the redemption page to activate your membership.

This is almost always because your bank is rejecting international transactions (we are based in the United States and use Stripe for payments). You should be able to contact the customer service department of your credit card company or your Bank and get the transactions approved or your card unlocked.