
Applied Cryptography
by Bruce Schneier · first published 1994
40% recommend51% neutral9% critical
Why HN recommends it
A broad, approachable tour of cryptographic protocols and algorithms that explains how they work under the hood without heavy math. Good for newcomers, and a base for seeing why not to roll your own crypto.
Common criticism: Some warn it is dated and leads readers to roll their own flawed crypto
Summarised by Claude from recommending comments
". . .the best introduction to cryptography I've ever seen. . . .The book the National Security Agency wanted never to be published. . . ." -Wired Magazine ". . .monumental . . . fascinating . . . comprehensive . . . the definitive work on cryptography for computer programmers . . ." -Dr. Dobb's Journal ". . .easily ranks as one of the most authoritative in its field." -PC Magazine ". . .the bible of code hackers." -The Millennium Whole Earth Catalog This new edition of the cryptography classic provides you with a comprehensive survey of modern cryptography. The book details how pr
Affiliate links. As an Amazon Associate I earn from qualifying purchases.






> It’s absolutely worth it to roll your own crypto if you want to learn from it No. If you want to "learn from it", the first thing you should do is buy a copy of Bruce Schneier's Applied Cryptography. Just reading (and fully understanding !) that book will alone put you in a position where you already know more about cryptography than 90% of other people. If after that you still want to play around…
on “Rolling your own crypto: Everything you need to build AES from scratch” ↗…Programming in the Unix Environment by Stevens - Operating Systems: Design and Implementation by Tanenbaum - The Art of Unix Programming by ESR - Parsing Techniques by Grune and Jacobs - Applied Cryptography by Schneier
on “Ask HN: What language-agnostic programming books should I read?” ↗Come on, the man's a legend! Schneier designed Blowfish and was involved in the design of Twofish and Skein. When I was starting out, his book "Applied Cryptography" was both inspirational and informative, and I wouldn't be surprised if it was one of the most successful cryptography books ever written. Schneier has also beeing blogging about security in general…
on “RSA is a fragile cryptosystem” ↗> And yet MD5 is still recommended in Applied Cryptography. I'm guessing this is the usual HN dig at Schneier's book ? Fact is that Schneier was already warning against MD5 as far back as 1996. And if you look on more recent blog posts, he is not exactly silent…
on “Hash collisions and exploitations – Instant MD5 collision” ↗…also recommend cryptography stuff. David Kahn's The Codebreakers is not really a math book, but it is awesome and it stars mathematicians, as does Simon Singh's The Code Book. You could read Schneier's Applied Cryptography. This is HN, so I would be remiss if I didn't point out that you can learn a lot of fun and useful math by reading SICP, Knuth, or any good algorithms book. If anybody out there knows a good, spirited…
on “Ask HN: Good books on mathematics for somebody who's only taken high school math?” ↗…(mind-blowing; he now works on the D language) 3. Internet Core Protocols: The Definitive Guide - Hall (not a work of any particular genius, but this is stuff everyone should know, in my opinion) 4. Applied Cryptography - Schneier 5. Think Bayes - Downey 6. Interconnections: Bridges, Routers, Switches and Internetworking Protocols - Perlman
on “Code Interview Reading List” ↗Schneier's "Applied Cryptography" by itself justifies the $15 bundle, IMHO. This is a great deal.
on “Cybersecurity Humble Book Bundle” ↗Nice list! One I’d add: one of my all-time favorite cryptography-related quotes is from Bruce Schneier‘s Applied Cryptography, talking about key length: > These numbers have nothing to do with the technology of the devices; they are the maximums that thermodynamics will allow. And they strongly imply that brute-force attacks…
on “Cryptography Quotes” ↗You might want to check out Applied Cryptography by Bruce Schneier. It explains how to dice as well as cards over a network without being able to cheat. It also goes into many other areas in great detail.
on “Self-Enforcing Protocols” ↗A great place to start is "Applied Cryptography" by Bruce Schneier. http://www.schneier.com/book-applied.html Edit: Note, this really barely scratches the surface for building secure software. AC says how to apply cryptographic primitives correctly.…
on “500k Bitcoins traded in 1h, Mt.Gox market hacked + crash” ↗Not that it will avoid errors on the part of the implementor, but if you do a thorough reading of the classic "Applied Cryptography" by Schneier, he pretty much covers all these problems. He covers all the issues such as ECB vs CBC, IVs, HMACs, etc. It's the definitive book on the topic and anyone who is interested in cryptography…
on “All the crypto code you've ever written is probably broken” ↗Schneier's Applied Cryptography is a very readable introduction. If you want to get into the actual mathematics of it, then it is considerably more difficult. Luckily for me I took courses in pure math, RSA and some hashing functions…
on “Why 256 bit keys are large enough” ↗I would start by reading Bruce Schneier's superb book Applied Cryptography, to see if you're already on a well-trodden path. Computer security and encryption as a technical matter is a very deeply analyzed problem with lots of real world experience. So basically, don't assume…
on “Ask HN - I have an idea but no means of creation; where should I present it?” ↗…Handy Book: What to Do and How to Do It, Centennial Edition Daniel Carter Beard Skunk Works: A Personal Memoir of My Years at Lockheed Rich, Ben R. and finally, which is hard to stomach sometimes. Applied Cryptography: Protocols, Algorithms, and Source Code by Bruce Schneier
on “What Would You Recommend to a Bright 14 Year Old?” ↗…http://security.stackexchange.com/questions/89813/managing-k... Anyways, if you decide you want to learn more about secure hash functions and cryptography in general, you can't go wrong with Bruce Schneier's "Applied Cryptography". Good luck!
on “Math.random in V8 is broken” ↗