Using Python cryptography library: (1) Generate a random 256-bit AES key, (2) Encrypt a message with AES-GCM (authenticated encryption), (3) Decrypt and verify, (4) Show what happens with wrong key (error), (5) Explain: why GCM over CBC, what the IV/nonce is for, why authentication matters. Store encrypted data as base64.