Applied Cryptography, Second Edition (1996)

by B Schneier