Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Best book on modern cryptography?
162 points by qorrect on May 27, 2022 | hide | past | favorite | 44 comments
For self learning, approachable etc ... any suggestions ?



David Wong's _Real World Cryptography_: https://www.manning.com/books/real-world-cryptography

Jean-Philippe Aumasson's _Serious Cryptography_: https://nostarch.com/seriouscrypto

Ferguson and Schneier's _Cryptography Engineering_: https://www.amazon.com/Cryptography-Engineering-Principles-P... --- dated, a little wrong about some things, but not insane (like _Applied Cryptography_ is).

Hoffman, Pipher, and Silverman's _Introduction to Mathematical Cryptography_: https://www.amazon.com/Introduction-Mathematical-Cryptograph... --- a good first step into theoretical cryptography.


I just finished serious cryptography, and I'm looking for the next step forward. I have little to know real programming experience, and my math skills aren't the greatest, (only high school with basic understanding beyond that, I think I understand the math behind RSA, but not the implementation so much)

Would cryptography engineering be too advanced for me? I plan on developing my programming skills after I get a computer, but until then want to continue learning.


Cryptography Engineering is less advanced than Serious Cryptography (but it's "take-y-er"; there's a lot of opinion / best practices stuff in it, and a lot of that is good).

I'd say that if you've read and grokked Serious Cryptography, and you don't want to write code, something like _IMC_ (Silverman, above) is an interesting next step, in that you'll mostly be reasoning about math, and you'll be working at a much lower level than the basic RSA formulae.

It also depends on what aspects of cryptography are interesting to you. If you want, for instance, to get a much better grip on how bulk cryptography works, as opposed to signatures and key exchanges, your best next step might be papers. For instance, a good next step on block cipher cryptography would be the Heys tutorial: https://ioactive.com/wp-content/uploads/2015/07/ldc_tutorial...


Thank you for your reply and guidance.

Looks like I can't pick up IMC at my local library, so I'll have to wait a tad on that one, but I can start with papers right away. I can't quite say what my particular interests in cryptography are, but (I guess not too surprisingly) I have a desire to know more about Hash functions. Now I'm going to try to hunt down the papers for Skein. Thanks again!


>> dated, a little wrong about some things, but not insane (like _Applied Cryptography_ is).

Why is "Applied Cryptography" insane? As an interested bystander, I'm curious to know more.


You can get multiple seasons of this clip show by putting 'author:tptacek applied cryptography' in the search box. A recent episode:

https://news.ycombinator.com/item?id=28923954



You have to actually read all of _Applied Cryptography_ before it becomes obvious what the central theme is. Its a big book, but unlike other may big computer books over the years it isn't padded. It's literally a compendium of crypto.

Including all the failed crypto. By the end of it, you've got used to reading the (usually very impressive) credentials of the researchers, and through explanation of what they did, and then how it all fell apart after a few years of attacks. If read about how people far clever than you got it wrong over and over again, it is near impossible to come away without the impression "here be dragons - really big and mean ones", and the corollary "don't even think of trying to do this stuff yourself - just stuff on the shelf that has been proven over time".


It depends on whether descriptions of things you should never, ever do, without any explanation of whether or not you should do them, count for you as "padding".


Here are some books that I've read with some remarks which you may find useful.

- "Cryptography: A Very Short Introduction" by Piper and Murphy - This is a book in the Very Short Introduction series, so is a bit light on the math. If that's what you are looking for though, this is a good resource.

- "Cryptography Made Simple" by Nigel Smart - The choice of topics is quite eclectic (in the best way possible!). For ex. it is the first general crypto book I've read which talks about lattices (most post-quantum world crypto schemes are lattice based) and things like commitments and zero-knowledge proofs. Develops just the right amount of math to talk about a lot of different things.

- "Cryptography: Theory and Practice" by Stinson and Paterson - adequate, covers the usual topics (plus a chapter on post-quantum crypto).

- "Introduction to Modern Cryptography" by Katz and Lindell - basically a reference for the theory side of crypto. Quite math heavy (or to be more accurate, notation heavy, like theoretical crypto tends to be).

- "Real-World Cryptography" by David Wong - I have not read another crypto book which tackles as many topics, it has chapters on e2e encryption, cryptocurrency and hardware crypto. Is a bit too hand-wavey and doesn't properly explain the math sometimes, but it is great for self-learners and people who are looking for a book on topics not covered in other books.

- "Serious Cryptography" by Jean-Philippe Aumasson - from the No Starch Press stable. The exposition is quite good, and finds a decent balance between making it approachable and getting the details right.

- "Understanding Cryptography" by Paar and Pelzl - decent coverage of fundamental primitives (block/stream ciphers, public key encryption, hashes, signatures etc) but feels a bit outdated. For ex. there is a whole chapter on DES.


A fun book to read is "The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography" It's a fast read and it gives a brief history of cypher tech over time.


I read this in the 4th grade and it changed the course of my life. It explains everything up to RSA with math that a middle schooler can follow, with exciting stories of cryptography and linguistics across history. Lots of cool spy stories!


I read it in high school and would agree, it got me really excited about cryptography and espionage throughout history, no undoubtedly helped me discover infosec and cryptography. I saw Simon Singh present an another launch later, very inspiring author.


Lol. I’ve read part of this book but didn’t see the full title. This is a book by Simon Singh.

https://www.amazon.com.au/gp/aw/d/0385495323/ref=tmm_pap_swa...

Check out his other book - Fermat’s Last Theorem


I'm excited to read this!

This isn't about cryptography but Code by Charles Petzold is also a fun book ( vaguely ) about information theory.


This is a great book indeed. I recommend this too as well as other books by the same author for popsci fans - Fermat's Last Theorem, Big Bang.


One of my favorite book


Serious Cryptography https://www.amazon.com/gp/product/1593278268/ref=ppx_yo_dt_b...

It's quite accessible for non-math majors and includes source code. It seems to have been written with software engineers in mind. The formatting of the source code in Kindle isn't great but otherwise the book is excellent and balances between "cookbook" and "graduate level textbook". The author is also quite reputable having designed BLAKE2.


+1 on this, it hits the right spot between being not too mathy/theoretical but going sufficiently deep for most engineers.

It’s probably the right book for anyone who needs to learn more about crypto but isn’t planning to become a full time cryptographer


This sounds perfect thank you.


Joy of Cryptography by Mike Rosulek is my favorite: https://joyofcryptography.com/

Written by a past professor of mine. Grounded in a lot of math, but not intimidating.


I vouched for your comment, because it seems earnest but was marked dead. I don't see anything in your comment history to indicate that you are shadowbanned.

I have not read the book, except to verify that it was real and looked plausible. If your comment was downvoted for content, I hope people will comment instead.


Can vouch for the book, and while I haven’t finished it yet - it is well written.



Real world cryptography is great


Cryptography Engineering Design Principles and Practical Applications:

https://www.schneier.com/books/cryptography-engineering/

They cover the fundamentals from a practical engineering perspective. After reading it you can then pop up a level and read specs to understand specific deployed protocols (e.g. TLS) or down a level and read the details of individual cryptographic primitives / constructions.


To piggy back on this thread, can anyone recommend a book on cryptography for mathematicians? I'm familiar with some of the more popular applied books, but I'm also interested in more rigorous texts that use careful proofs and state theorems etc.


As written below, "Introduction to Modern Cryptography" by Katz & Lindell. Another option would be "A Graduate Course in Applied Cryptography" by Boneh & Shoup. However, for starting out, I would definitely recommend the former as it's more polished and focuses on the essentials.


I took Boneh's graduate class a few years ago through SCPD. Recommended if you can justify it. He has a Coursera course that I assume is of similar high quality with less depth and rigor.

We used the above two books in addition to Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone. I notice Boneh no longer uses the latter for CS255; perhaps it is too out of date now? At any rate, it is also available free on the web: https://cacr.uwaterloo.ca/hac/


Oded Goldreich's "Foundations of Cryptography" books are the rigorous, theoretical oriented books used in many grad-level crypto courses: https://www.wisdom.weizmann.ac.il/~oded/foc-book.html

Neil Koblitz has "A Course in Number Theory and Cryptography", which I haven't read, but is often used: https://www.amazon.com/Course-Number-Cryptography-Graduate-M...

Also, Boneh and Shoup is good and mentioned in other comments: https://toc.cryptobook.us/


Steven Galbraith's Mathematics of Public Key Cryptography: https://www.math.auckland.ac.nz/~sgal018/crypto-book/crypto-...


J. Katz, and Y. Lindell, 2015: Introduction to Modern Cryptography, 2nd ed. CRC Press, 583 pp.


Cryptography: Theory and Practice, Third Edition by Douglas R. Stinson


A good option might be: http://toc.cryptobook.us/

It's a book co-authored by Dan Boneh, who's a professor from Stanfrod working on Crypto, and Blockchain. It's a huge book, but there's a lot of interesting stuff in there.


For a rigorous, yet accessible and rather in-depth introduction to modern, provable cryptography I would recommend

"Introduction to Modern Cryptography" by Katz & Lindell.

It starts from the basics, the proofs are thoroughly elaborated and it has an appendix covering the necessary math prerequisites.



William Easttom - Modern Cryptography Applied Mathematics for Encryption and Information Security

https://libgen.is/book/index.php?md5=B5DB9B050F1044082F9ED26...


I still like Bellare and Rogaway's old lecture notes. They are mostly theoretical so you will have to read something else for implementation techniques. But implementation is just programming. I think it is important to understand some theory if you're going to implement anything cryptographic, since it will help you avoid a lot of dumb errors that get made all the time.

https://web.cs.ucdavis.edu/~rogaway/classes/227/spring05/boo...


Any suggestion for a good book(s) to study and understand Homomorphic encryption ?

I prefer a book format and haven't yet come across a good one on this topic yet.


Understanding cryptography is good

https://www.amazon.com/dp/3642041000


For self learning, do this:

https://inventwithpython.com/cracking/

Do the exericses. Learn the logic, don't get lost in learning C, you'll go crazy. Learn C or whatever when you learn exploit development.

Crypto and exploits are two very different things.


Is there a general cryptography text that also covers zero-knowledge proofs, etc?


Theo Tenzer: Third Epoche of Cryptography


SUPER SECRETO - The Third Epoch of Cryptography: Multiple, exponential, quantum-secure and above all, simple and practical Encryption for Everyone https://www.amazon.com/dp/3755761173/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: