Sling Academy
Home/Golang/Cryptography and Security in Go

Cryptography and Security in Go

This series of tutorials is about cryptography and security in Go.

1 Introduction to Cryptography in Go

2 Hashing Passwords Securely with `bcrypt` in Go

3 Understanding Symmetric Encryption with AES in Go

4 Implementing RSA Encryption for Secure Communication in Go

5 Using the `crypto/hmac` Package for Message Authentication in Go

6 How to Generate Secure Random Numbers in Go

7 Working with MD5: When and Why Not to Use It in Go

8 Using SHA-256 for Hashing in Go: A Practical Guide

9 Creating and Verifying Digital Signatures in Go

10 Encrypting Data with ChaCha20-Poly1305 in Go

11 Key Management Best Practices in Go Applications

12 Building a Secure Password Vault with Go

13 Using `crypto/cipher` for Advanced Encryption Techniques in Go

14 What Is Elliptic Curve Cryptography (ECC) and How to Use It in Go

15 TLS in Go: Setting Up Secure Client-Server Communication

16 Creating Self-Signed Certificates in Go

17 Understanding and Using the `crypto/rsa` Package for Encryption in Go

18 How to Implement Secure File Encryption in Go

19 PBKDF2 in Go: Strengthening Password Security

20 How to Hash Files in Go with SHA-1, SHA-256, and SHA-512

21 Working with JSON Web Tokens (JWT) in Go for Authentication

22 Implementing OAuth2 Authentication Flows in Go

23 Using the `crypto/ed25519` Package for Fast and Secure Signing in Go

24 How to Verify SSL/TLS Certificates in Go

25 Protecting Sensitive Data with GCM Mode Encryption in Go

26 Introduction to Zero-Knowledge Proofs in Go

27 Building a Secure Hash Table with HMAC in Go

28 Securely Storing Secrets with Environment Variables in Go

29 Encrypting Streams with `io.Reader` and `io.Writer` in Go

30 Understanding Diffie-Hellman Key Exchange in Go

31 Building End-to-End Encrypted Messaging Systems in Go

32 How to Use Argon2 for Password Hashing in Go

33 Setting Up a Secure HTTPS Server in Go with `crypto/tls`

34 Avoiding Timing Attacks with Constant-Time Comparisons in Go

35 Creating Secure Random UUIDs in Go

36 Encrypting Large Files with Chunk-Based AES Encryption in Go

37 Understanding and Preventing Padding Oracle Attacks in Go

38 How to Implement Perfect Forward Secrecy (PFS) in Go Applications