Bruce Schneier's classic book on cryptography, first published 1994
"the book the NSA wanted never to be published…"
—Wired magazine.
I'm reading this book not because I'm about to become a cryptographer, but because I'm curious about how things work, and i wanted an excuse to play with some programming concepts, and this book is packed with examples written in C (a language i want to learn more about!). from that standpoint it's a bloody good and valuable book, giving enough history of the subject and a sufficient explanation of the mathematics (number theory and information theory) to satisfy my simple curiosity.
Cryptography is a fascinating topic, one hat should be of at least passing interest to everyone; after all we rely on it daily to carry out secure and anonymous communication. Internet commerce (and even your ATM) would be impossible without it, and i for one want to know how it works.
Schneier discusses crypto in general terms, slowly elaborating on some simple, historical algorithms whilst gradually introducing some of the maths concepts and illustrating them with C code that is simple enough that even I understand it. From the straightforward Caesar cipher to modern asymmetric cryptography, he covers almost all the bases (pun unintended)
It's a book that has long been recommended as a good introduction to the field, and although these days it's a little behind modern developments (no mention of post-quantum cryptography for example) it's nonetheless a good primer to this fascinating topic. It's hardly a thrilling read (for that, you need something by Steven Levy or Simon Singh; I'm hoping to read Levy's Crypto and Singh's The Code Book again soon (as soon as I can afford them both!)).
What the book does well is outline the difference between protocols and encryption algorithms; the concepts are made clear to the reader; that 9for example) when the media talks about three-letter glowie agencies wanting to put backdoors into communications, they are aften talking about weakening the methods used to apply encryption rather than weakening the encryption itself.
I suspect I have the same edition as Schemer because that quotation from Wired appears on the cover of mine too. Second Edition, 100,000 sold.
$ xclip -o | wc -w
305