david wong

Hey ! I'm David, a security consultant at Cryptography Services, the crypto team of NCC Group . This is my blog about cryptography and security and other related topics that I find interesting.

/r/crypto wiki November 2015

There's a subreddit for crypto and it had an empty wiki.

So I filled it.

Below is a copy.

/r/crypto wiki

Please refer to this Wiki before asking questions that might have been asked before (use your common sense).

Cryptography is also usually more interesting than decrypting your random ciphertext, so consider that when posting, read what we are sharing first to see if it's really pertinent.

How to learn about Cryptography?

The first thing you should do, is to sign-up for Dan Boneh's course Crypto I on Coursera.

You do not have to finish it. Watching a few videos will already give you an idea of what is crypto and how easy/hard it is for you. If you can finish the course, and enjoy it at the same time, then you're in for a lot of fun.

Don't try signing-up for Crypto II though.

Alright, that was interesting, MOAR

There are many ways to learn more about crypto. Here's a non-exhaustive list:

But my favorite way: read whitepapers. Look at the ePrint archives and check what papers interest you. Often papers will come with an introduction section that explains the basics.

What about studying cryptography in a real school?

First, it's important to cultivate your new passion. Don't let your course get in the way of reading or building and doing side projects involving crypto.

Second, You need either a bachelor in mathematics or computer science. Depending on which part you find the more interesting in crypto. Usually Math => Theorical Cryptography, CS => Applied Cryptography.

Now either you don't have a master, and you could choose to do a cryptography master. There are a few: Rennes, Bordeaux, Limoges in France.Stanford, etc...

Or you can do a Computer Science or Number Theory oriented master and pick a crypto subject for a phd. Note that a phd will often lead you into theorical research in university, although some phd can be done within a company and might involve applied crypto. But companies around the world might find that relatively relevant (in France a phd will get you to some places).

It's important to know what you want to do, theorical or applied or in the middle? Usually finding an internship in a applied crypto company helps to get out of academia for a while. A good way to see what please you the most. And good news, in cryptography internships are pretty easy to find (at least at the moment).

Alright I'm studying crypto now, how to get more involved?

Cryptography is a big world, many things are happening and it's sometimes hard to follow everything. Especially some mediums give you a high noise-to-quality ratio. So here they are:

  • Check some mailing lists in your field of interest (metzdown, ietf, cfrg, curves, modern crypto, etc...)

  • Follow conventions (listed here on the IACR website). Look out for ECC, Crypto, Asiacrypt, Eurocrypt, Real World Crypto, CHES, etc...

  • Blogs

  • Twitter. Look for cryptographers and check out for interesting discussions and/or links they share.

  • CTFs (and their write-ups)

Where to work in crypto?

Now is your time to find an internship or a job? Apply everywhere, in the world. But where? Where other cryptographers are working, or have worked. You can find that on their published papers (usually written in the header), on Twitter, on Linkedin, etc...

Another good way is to check for "who's hiring" posts on hackernews or reddit

Iacr also list a number of positions here.

Finally, universities around the world usually have room for internships as long as you don't mind not being paid.

Well done! You've reached the end of my post. Now you can leave me a comment :)


Why not Crypto II ?


has been postponed continuously for something like 3 years now