Disclaimer: ChatGPT generated document.
Everything from cryptographic primitives β protocols β system design β modern security architecture
Here is the full, long-form, structured, end-to-end course on all major security concepts, from cryptography to TLS/IPsec/QUIC/WireGuard, to authentication, E2EE, hardware security, network design, protocols, threat modeling, and attacker mindset. This is a full multi-module curriculum, written at a graduate / security engineer level, but without assuming prior crypto expertise. It is intentionally long, dense, and complete.
Cryptography provides the primitives used everywhere else (TLS, IPsec, SSH, WireGuard, E2EE, Kerberos, OAuth, etc). We divide primitives into:
Used for encrypted storage, VPNs, TLS.
- AES (128/192/256-bit) β global standard
- 3DES β deprecated
- IDEA β old
- Camellia β some Asia deployments
- GCM β AEAD (encryption + integrity), modern
- CBC β old, padding oracles
- CTR β stream mode
- OCB β efficient but license issues historically
- XTS-AES β disks / filesystems
- ChaCha20 β extremely fast, mobile-friendly
- Salsa20
- RC4 β insecure
Integrity-only:
- HMAC-SHA256
- Poly1305 (used in ChaCha20-Poly1305)
- DiffieβHellman (DH)
- Elliptic Curve DiffieβHellman (ECDH)
- X25519 (modern)
- P-256, P-384
- Ed25519 β fastest modern signature
- ECDSA β what TLS uses traditionally
- RSA-PSS β secure RSA signature scheme
- SHA-2 (SHA-256, SHA-512)
- SHA-3 (Keccak)
- BLAKE2, BLAKE3
- SipHash (DoS-resistant hashing for hash maps)
Purposes:
- Key derivation
- Password hashing
- Signature schemes
- Data integrity
- Argon2id
- PBKDF2
- scrypt
- bcrypt
Secure RNG sources:
/dev/urandom- CSPRNG provided by OS
- RDRAND/RDSEED (with reservation)
Relevant for TLS, VPNs, messaging.
- Kyber β key exchange
- Dilithium β signatures
- Falcon
- SPHINCS+ (hash-based)
- Knowledge (passwords)
- Possession (token, phone)
- Inherence (biometrics)
- Location (network segment)
- SMS (weak)
- TOTP (Google Authenticator)
- Push apps
- WebAuthn/FIDO2 (strong)
Used in Wi-Fi, some VPNs.
- X.509
- RSA/ECDSA keys
- Certificate Authorities
- Certificate chains
- Revocation (CRL, OCSP)
- OAuth 2.0
- OpenID Connect (OIDC)
- JWT tokens
- SAML (enterprise SSO)
- FIDO2/WebAuthn (passwordless)
- Kerberos
- LDAP
- RADIUS / TACACS+
- Active Directory
This is where TLS, IPsec, WireGuard, SSH, QUIC live.
TLS provides:
- Confidentiality
- Integrity
- Authentication
- Mandatory forward secrecy
- AEAD ciphers only (AES-GCM, ChaCha20-Poly1305)
- 1-RTT handshake
- 0-RTT early data
- Session tickets
- ECDHE-only key exchange
- ClientHello (supported algorithms)
- ServerHello (chosen algorithms)
- Certificate (server identity)
- ECDHE key exchange
- Finished messages
- Encrypted Application Data
- HTTPS
- HTTP/2 & HTTP/3
- SMTP submission
- API traffic
- MQTT
- Mobile apps
Security at the network layer.
- Tunnel mode (site-to-site VPN)
- Transport mode (host-to-host)
- ESP (encrypt+integrity)
- AH (integrity only)
Negotiates:
- crypto parameters
- DH groups
- IP addressing
- child SA keys
- Corporate VPNs
- Datacenter-to-datacenter
- IPv6 security
A modern, simple Layer-3 VPN:
- ~4,000 LOC
- Uses NoiseIK pattern
- Curve25519, ChaCha20, Poly1305
- Extremely fast
- Easy config
Replaces a lot of IPsec usage.
Secure shell protocol:
- Authentication (password, public key)
- Integrity
- Confidentiality
SSH is also used for:
- Tunnels
- Git transport
- Remote command execution
Authentication model: TOFU (Trust On First Use).
A transport protocol that replaces TCP+TLS:
- User-space, no kernel TCP modification
- Multiplexed streams
- Congestion control
- Mandatory TLS 1.3
- Resistant to ossification
QUIC is the modern internet transport.
Datagram TLS β TLS over UDP.
Used in:
- VoIP/SIP
- WebRTC
- Real-time gaming
Layer-2 Ethernet frame protection:
- Extremely low latency
- Used in datacenters
- DNSSEC
- DANE (TLS certs via DNSSEC)
- RPKI (BGP route validation)
App-layer encryption where servers cannot decrypt user data.
- Signal Double Ratchet
- WhatsApp encryption (Signal-based)
- iMessage (custom)
- Matrix Olm/Megolm
- MLS (IETF Messaging Layer Security) β next-gen group E2EE
- PGP/OpenPGP β E2EE email
- S/MIME β X.509-based
- DKIM, SPF, DMARC β not E2EE, domain-level auth only
- LUKS (Linux full-disk encryption)
- BitLocker
- FileVault
- Cryptomator
- VeraCrypt
Used for:
- Secure boot
- Key storage
- Measured boot
- BitLocker
- Yubikey
- Nitrokey
- Feitian keys Used with:
- SSH
- WebAuthn
- GPG
- Intel SGX
- AMD SEV
- ARM TrustZone
- Apple Secure Enclave
Categories:
- Timing attacks
- Power analysis (DPA)
- Electromagnetic leaks
- Cache attacks (Spectre/Meltdown)
- Rowhammer
- Fault injection
- Stateless (ACL-based)
- Stateful
- Application-layer firewalls
- WAF (Web Application Firewall)
Principles:
- No trusted internal network
- Every request authenticated
- Device posture verification
- Mutual TLS everywhere
Implementations:
- Google BeyondCorp
- Cloudflare Zero Trust
- Istio mTLS
- Snort
- Suricata
- Zeek
- Wazuh
Signatures, anomaly detection, heuristics.
- Network zones
- VLANs
- Kubernetes network policies
Techniques:
- Rate limiting
- SYN cookies
- Cloudflare/Akamai scrubbing
- Anycast networks
- BBR congestion control
- Input validation
- Avoid raw pointers (C++)
- Avoid buffer overflows
- Use
span& safe containers - Avoid undefined behavior
- Constant-time crypto operations
- ASLR
- Stack canaries
- DEP / NX bit
- Safe languages (Rust)
- SBOM (Software Bill of Materials)
- Code signing
- Reproducible builds
- Package auditing
- Secrets management (Vault, KMS)
- Least privilege
- Rotate keys
- CI/CD signing
- Docker image hardening
- STRIDE
- DREAD
- PASTA
- MITRE ATT&CK
- Script kiddies
- Hacktivists
- Criminals
- Insiders
- Nation-states
- MITM
- Replay attacks
- Downgrade attacks
- Credential stuffing
- SQL injection
- XSS
- CSRF
- SSRF
- RCE
- Supply chain compromise
- Application API
- Web UI
- Network infrastructure
- Cryptographic keys
- Cloud IAM
- Containers/kubernetes
- PQC in TLS
- Hybrid ECDH + Kyber
- PQ VPNs
Allows computation on encrypted data.
Collaborative private computing.
Used by Google, Apple, Census data.
Federated learning, encrypted gradients.
If you want to learn everything properly, this is the order:
- Symmetric crypto (AES, ChaCha20)
- Hashing & MACs
- Public-key crypto
- ECC (X25519, Ed25519)
- Randomness
- Post-quantum basics
- TLS 1.3 handshake
- Certificates
- HTTP security (HSTS, CSP, HPKP)
- mTLS
- IPsec
- WireGuard
- OpenVPN
- MACsec
- Signal protocol
- MLS
- PGP
- S/MIME
- OAuth2
- JWT/OIDC
- FIDO2
- Kerberos
- Memory safety
- Input validation
- Cryptographic key handling
- CI/CD secret storage
- TPM
- Secure enclaves
- Side channels
- STRIDE
- MITRE ATT&CK
- Practical attacker thinking
I can generate:
Tell me which direction you want to go next and how deep you want it.
