Find the perfect coding resourcesLearn more

Learn Cryptography in Go

Boot.devBoot.dev
Recommended
Meet Your Instructor
Lane Wagner avatar

Lane Wagner

Instructor

Lane is a back-end engineer and the lead instructor of Boot.dev. He has taught over one million students worldwide, on Boot.dev, FreeCodeCamp, YouTube and the Backend Banter podcast. Lane worked as a backend engineer writing Go, Python and TypeScript, then moved into engineering management and a couple of years later left to build Boot.dev full-time.

16 hours

Completion

Certificate included

Format

Interactive coding

Freemium

What You'll Learn

Implement symmetric encryption and decryption in Go

Build secure hashing algorithms for password storage

Create and verify digital signatures using RSA

Understand and apply asymmetric encryption techniques in real-world applications

Utilize key derivation functions for secure key management

Overview

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.

Table of Contents
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

Share Your Experience

Sign in to leave a review and help others

No reviews yet. Be the first to review!