
Master cryptography basics, compare TLS 1.3 and 1.2, and review fixes from 1.2 to 1.3; explore packet capture, Let's Encrypt automation, and certificate formats including wild card and send certificates.
Introduce data and cryptography concepts, including confidentiality, encryption, integrity, digital signing, authenticity via digital certificates, and non-repudiation.
Explore data forms—motion, at rest, and in use—and learn how cryptography protects data in motion with confidentiality, integrity, authenticity, and non-repudiation, noting availability lies outside cryptography.
Reveal how confidentiality protects data in motion through encryption. Compare symmetric and asymmetric encryption, keys, and key sizes to enable secure communication and signing.
Explore digital signing for integrity in motion by hashing data into a message digest and encrypting it with a private key in asymmetric scheme, then verify with the public key.
Digital certificates prove authenticity for data in motion by ensuring senders and receivers are who they claim to be, signed by a recognized certificate authority like Digicert or Entrust.
Learn how asymmetric key infrastructure powers PKI, from server public/private key pairs and CSR to trusted certificate authorities, and how root certificates exist on all systems.
Generate a server key pair and CSR, have a trusted CA verify admin identity by email with a token, then obtain a digitally signed certificate to install.
Observe certificate authentication in action as the client retrieves Bank.com's server certificate, decrypts the signature with the root CA public key, and validates the message digest.
Demonstrates how Windows and macOS store trusted root CA certificates in their system stores, showcasing Digicert high assurance ev root CA via Windows trusted root store and macOS Keychain Access.
Demonstrate the certificate trust chain for Facebook.com by inspecting it in a browser and in a Wireshark capture, highlighting server, intermediate, and root certificates.
Demonstrates server certificate fields, including issuer, common name, public key, certificate signature and algorithms, validity and serial number, via a browser and Wireshark to show CA vs non-CA status.
Generate static RSA keys with OpenSSL by creating a 2048-bit private key encrypted with AES-256 and a password, then generate a certificate signing request containing the corresponding public key.
Demonstrate generating a static RSA key pair and a certificate signing request (CSR) using OpenSSL, encrypting the private key with a password, and preparing CSR fields for a certificate authority.
Examine the static ECDSA public key for google.com in the server certificate, decompressed with 256-bit X and Y coordinates (32 bytes each) totaling 64 bytes, with a leading 0x04 indicator.
Bring together confidentiality, encryption, integrity, and non-repudiation by using symmetric encryption for data in motion, hashing and signing with asymmetric keys, and TLS certificate-based server authentication during the handshake.
Explore TLS 1.3 session stages and discuss the importance of additional data in an ad.
Explore TLS 1.3 session setup, exchanging cipher suites and ephemeral key generation, and explain cipher suites, labels, and session key generation using OECD.
Explain how TLS 1.3 negotiates versions and cipher suites via client hello and server hello, including change cipher spec and encrypted extensions, then server certificate and finished messages.
Explain how client and server negotiate cipher suites during the hello exchange, comparing chaCha20-poly1305 sha256 and aes-256-gcm-sha384, and show how nginx settings ssl_prepare_server_ciphers and ssl_prefer_server_ciphers decide who chooses.
Explore how TLS 1.3 generates ephemeral elliptic-curve key pairs for sessions. Learn how curves like secp256k1 or x25519 and the static ecdsa key secure the handshake.
Explore ephemeral key exchange in TLS 1.3 by examining a packet capture of client and server hello messages, key share extensions, and certificate verify message, including secp256k1 and x25519 keys.
Explore TLS 1.3 session key generation with ephemeral elliptic-curve Diffie-Hellman, deriving pre-master and master secrets via hkdf, and producing session and handshake keys for secure data flow.
Explore TLS 1.3 cipher suites, compare 256-bit and 128-bit keys, and decode labels such as ChaCha20, Poly1305, and AES-256-GCM, noting the roles of Hmac and Sha256 in session key generation.
Explore TLS 1.3 encrypted data flow stage, covering EDI and dataflow encryption H-mack, cipher modes such as xor, cha cha 2013 zero five, and GCM.
Describe how stream ciphers and block ciphers encrypt data, using ChaCha20 and GCM, with 512-bit keystream blocks, 128-bit plaintext blocks, and xor operations that produce ciphertext.
Discover how the xor operation uses a keystream to convert plaintext into ciphertext and recover plaintext by applying the same keystream, illustrating bitwise encryption principles.
Explore ChaCha20-Poly1305 encryption with a 96-bit initialization vector and counter, a 256-bit key, and XOR-based keystream. Learn how the one-time key and Poly1305 tag verify integrity.
Demonstrate client-side AES-256 GCM encryption, generating keystream blocks, using ghash for authentication, and discuss the session-specific one-time key as a potential weakness.
Compare chacha20 poly1305 and gcm to guide cipher selection. Set your server to support both, with chacha20 poly1305 as first preference due to its message-specific one-time key.
Explain how additional data in AEAD ciphers prevents replay attacks by seeding the mac with a unique combination of TLS session ID, TCP sequence number, and TCP source port.
Explore TLS version 1.2 concepts, including the session stages, the session setup stage, and the encrypted data flow stage.
Demonstrates TLS version negotiation (1.2 and 1.3) and cipher suite selection via client hello and server hello in a packet capture, illustrating supported versions, RSA-based signatures, and session identifiers.
Explore ephemeral key generation and signing of the server's public ephemeral key in tls 1.2, using elliptic curve cryptography, ecdsa with secp256k1, for client verification via the server certificate.
Demonstrates TLS 1.2 ephemeral key exchange using ECDHE, including certificate verification, pre-master and master secret derivation via PRF with sha-384, and generation of session keys, handshake encryption key, and IV.
Explore TLS 1.2 encrypted data flow, detailing how GCM uses explicit eight-byte IVs with implicit four-byte IVs to form a 12-byte IV, and compare TLS 1.3’s implicit IVs.
Explore TLS 1.3 fixes, including perfect forward secrecy and discontinuation of RSA, RSA key generation, the TLS 1.2 logjam attack and its prevention by TLS 1.3, and quantum secure readiness.
Explore how the logjam attack downgrades TLS 1.2 to weak Diffie-Hellman cipher suites via a man-in-the-middle, enabling decryption of handshake and data, and how TLS 1.3 mitigates this risk.
TLS 1.3 is quantum secure ready, with plug-in protection mechanisms against quantum cryptoanalysis that can be integrated; Microsoft tests illustrate progress, while TLS 1.2 remains not quantum secure.
Learn to take a decrypted TLS packet capture on macOS by following a nine-step process in Wireshark, including setting the log file path and updating the username.
Demonstrate taking a decrypted packet capture on macOS by configuring a log folder, launching Wireshark, and decrypting the TLS session for cloudflare.com using the server name indication extension.
Demonstrate a decrypted packet capture on Windows using an SSL key log file in Chrome and Wireshark. View TLS session data and SNI for cloudflare.com.
Learn automatic PKI management with Let's Encrypt and the Certbot ACME client on nginx, generating private keys and CSRs, renewing certificates, and configuring TLS 1.2 and 1.3.
Discover automatic certificate renewal with nginx and letsencrypt via certbot, including expiry checks, CSR and key generation, DNS and HTTP challenges, and updating live certificates while archiving old ones.
Discover server certificate revocation, including CRL and OCSP mechanisms, and how clients or servers verify revocation using CRL distribution point and OCSP responder URLs.
Learn how server checks certificates via ocsp responder, sending a serial-number request and returning good or revoked statuses, with stapled status in tls 1.2 and status extension in tls 1.3.
Explore OCSP stapling with Nginx by detailing how the client and Nginx verify certificates via the OCSP responder in TLS 1.2 and TLS 1.3, including configuration and packet-capture demos.
Demonstrates configuring ocsp stapling in nginx for tls 1.3 and tls 1.2, editing ssl options, reloading nginx, and validating with packet captures and certificate status responses.
Renew a TLS certificate with Certbot ACME client on nginx, then revoke the old certificate to prevent outages, while Let's Encrypt intermediate CA signs the CSR and updates OCSP.
Renew the current certificate with certbot using the nginx plugin, select the domain, revoke the old certificate, and verify the new certificate is in use.
Explore subject alternative name certificates that cover a domain and its subdomains, and learn the risks of private key compromise across multiple servers, with an Nginx demo.
Demonstrate generating a SAN certificate on nginx using certbot with Let's Encrypt to cover two domains, test bitcoin.com and marketing podcast.com.
Explore commands to convert certificates across Dar, Pem, PGM, and Pkcs12 formats, including exporting private keys and combining certificates into single files.
Immerse yourself in a comprehensive exploration of data security in motion through our meticulously crafted animated course, focusing on the implementation of TLS 1.3 and TLS 1.2.
The course begins with a foundational understanding of cybersecurity's cornerstones: Confidentiality, Integrity, Authenticity, and Non-Repudiation. It then meticulously examines essential concepts such as Hashing, Signing, Symmetric and Asymmetric encryption, and the intricate domain of Public Key Infrastructure (PKI).
A deep dive into TLS version 1.3 follows, elucidating its mechanisms for key generation and exchange, and the sophisticated AEAD protocols CHACH20-POLY1305 and AES256-GCM.
Moving forward, we scrutinise TLS version 1.2, carefully contrasting its features with TLS 1.3, highlighting the latter's distinct advantages.
Practical application takes centre stage as you learn to configure your NGINX web server seamlessly with TLS 1.2 and TLS 1.3. Additionally, the course covers the intricate process of certificate revocation and its implementation on NGINX.
The exploration concludes with a detailed examination of certificate types and formats. The predominantly animated course format ensures an engaging yet thorough learning experience, integrating theoretical content with practical demonstrations and packet captures for an in-depth comprehension.
Join us on this educational journey, where each module is meticulously crafted to provide a profound understanding of secure data transmission. I look forward to guiding you through this learning experience. Enroll today to fortify your expertise in cybersecurity.