CS338 Computer Security Wednesday, 24 September 2025 + base64 - a mechanism for representing arbitrary sequences of bytes using printable ASCII characters - it makes the data longer - why? some software messes with binary data some situations (including TLS/HTTPS) require byte copying to be exact + Basic Auth assignment + Words - cryptography - disguising your message "encryption" - cryptanalysis - figuring out the disguised message "decryption" - cryptology - the combo of both cryptography and cryptanalysis - most people (including JO) say "cryptography" when they mean "cryptology" + Symmetric cryptography recap - Caesar cipher - "dog" + 3 = "grj"; "grj" - 3 = "dog" "dog" = plaintext "grj" = ciphertext 3 = key - RC4 - Vigenere cipher - ... - Idea of a key - the algorithm is publicly known - the sender and receiver both know the same secret number K (key) - without the key, an eavesdropper can't decrypt the encrypted message - Big Problem: how did the sender and receiver end up with K? "key distribution problem", "key sharing", etc. - Block cipher - break plaintext into fixed-sized chunks ("blocks") and encrypt each block - Stream cipher (e.g., RC4) - encrypt one byte at a time - Block cipher mode of operation - ECB - CBC + Lab