Serious Cryptography, 2nd Edition

Serious Cryptography, 2nd edition, is a practical guide to the past, present, and future of cryptographic systems and algorithms.