Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: best ways to learn about cryptography
14 points by _pctq on Sept 6, 2013 | hide | past | favorite | 7 comments
As an engineer, with all the recent stories about NSA breaking cryptography, I can't help but feeling guilty.

My main field is web development. But I don't stop there : I play with mobile app development, with system toolkits like gtk or qt, I've built server accepting connections in C, even read about the basics of creating OS and programming languages. I'm currently learning 3d modeling, in the hope to buy a 3d printer, and look with interest toward project like arduino and raspberry PI.

I've never read anything about cryptography.

My first thought about cryptography is : "well, that's something especially difficult and that carries a lot of responsibilities". So what ? So is playing with memory in C (both difficult and may easily create vulnerabilities). That's a good reason not to release anything while unprepared, but not a good reason to know nothing in this field.

I suspect I'm far from being the only one is that case : we do not care that much about cryptography, and that's a problem. That's a problem because if we swarmed the world with cryptography discussions and toy projects - just like we do with other fields - we could expect new ideas to appear a lot more quickly, and have a lot of alternative where we're all just use ssl nowadays in most of our applications.

There are reference resources about almost anything on the web. I just can find any clear reference about cryptography. Does anyone have good advice on how to start ?

Try the Matasano crypto challenge: http://www.matasano.com/articles/crypto-challenges/

Thanks S4M, will try after coursera course.

Did you try it ? I know a good way to learn about things is to try to break them, but I wonder if that approach of "learn to break crypto to learn crypto" is as efficient in the very beginning as to try first to build crypto (most of the time, when learning a new tech, I cover the basics before trying to understand other people code).

Actually, I saw this link on HN, and I am doing it to learn the programming language rust, but I have to say I haven't gotten very far yet (more because of my lack of free time and unfamiliarity with rust than the challenge itself). Good luck!

Dan Boneh's Cryptography I class on Coursera is about to start again in just a few days. I highly recommend it: https://www.coursera.org/course/crypto

I passed the last course and cannot recommend it enough.

I'd love to know the answer to the last week's programming problems, though. I only got part of it.

Thanks mct, that's a perfect fit. Timing is perfect, and I've just signed up.

For those who may not be available in that time, maybe you have a more permanent resource in mind ?

Wow great! I have just enrolled. Thank you. I develop commercial products and would feel guilty too by not protecting costumers' data better.

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