3
$\begingroup$

I am currently a MSc student in number theory and considering switching to a phD in cryptography. I would like to use number theory techniques. (i.e. RSA, elliptic curves, etc).

The purpose of all of this is to find a job outside of academia. I would like to find a job in the industry. Here is my worry: in 10-20 years quantum computers will be able to "solve" these problems. Hence, number theory will become useless in cryptography.

Knowing this, will I be able to find a job in the industry in, say, 5 years? My thought is that I will eventually have to adapt but so will everyone else. Will this be a problem for my career?

Kind regards.

$\endgroup$
8
  • 6
    $\begingroup$ 'Hence, number theory will become useless in cryptography'; perhaps not, if isogeny-based cryptography still remains viable... $\endgroup$
    – poncho
    Sep 21, 2017 at 23:32
  • $\begingroup$ Tell me more @poncho. What is isogeny-based cryptography? $\endgroup$ Sep 21, 2017 at 23:33
  • $\begingroup$ en.wikipedia.org/wiki/Supersingular_isogeny_key_exchange $\endgroup$
    – poncho
    Sep 21, 2017 at 23:34
  • $\begingroup$ Sweet @poncho!! It is post-quantum crypto and it still uses elliptic curves! So I could do my phD on this problem and have no problem finding a job in the industry afterwards? $\endgroup$ Sep 21, 2017 at 23:41
  • 1
    $\begingroup$ I actually think industry is (still) interested in solutions based in standard assumptions like factoring or discrete logarithm, mainly because it's widely used nowadays and most likely still in 5 years (even 10, 15... 20..?) $\endgroup$
    – Daniel
    Sep 22, 2017 at 0:03

2 Answers 2

9
$\begingroup$

If you want to end up in the industry, I strongly doubt a PhD is a good investment of your time, regardless of the rest of this discussion.

I believe a general purpose quantum computer, the kind that will send us all to relearn all our algorithm theory, is far from certain in 20 years. I won't even be surprised if someone publishes tomorrow a serious proof it can't be built. 10-20 years ago people were making similar predictions, and though quantum annealing seems to have moved forward, general quantum computers have not advanced much.

In the industry, people won't want to hire you because of your specific thesis and maybe not even because of your field of study. A PhD shows you are intelligent, capable of independent research, capable of finding and reading the latest literature, etc. These are marketable skills.

I read many PhD resumes on a daily basis. And though we do machine learning and artificial intelligence work, I won't throw out a cryptography PhD resume. However the real question with any PhD resume is: can they build production grade software? I believe our own requirements are common in the industry.

$\endgroup$
4
  • 1
    $\begingroup$ I have seen job requirement like "3 years of experience in Formal Mehtods". A PhD is also a job and thus qualifies as "X years of experience", what is also important is what you do during your PhD. $\endgroup$
    – Biv
    Sep 22, 2017 at 8:42
  • 6
    $\begingroup$ I would also add this: worrying about hypothetical possibilities in 20 years when deciding the subject of a PhD is a bad idea, as the world is essentially unpredictable at more than 2 years. If you want to go for a PhD, do it in the area where you will most likely have fun, and feel competent. If you want to work in the industry afterward, go for it. If in 20 years, quantum computers appear (and I share the doubts of Meir Maor on this), you will have plenty enough time to respecialize, and you wont be rejected by companies because 20 years ago, you used to work on number theory. $\endgroup$ Sep 22, 2017 at 9:14
  • 4
    $\begingroup$ 'general quantum computers have advanced not much'; I would disagree with that; one big advancement would be the reduction on error rates on individual physical qbits; the error rates are now low enough that known existing QEC algorithms will be able to produce logical qbits that are more reliable than any physical qbit. Yes, there's a lot of work left; however this is a significant milestone... $\endgroup$
    – poncho
    Sep 22, 2017 at 12:49
  • $\begingroup$ Advantages before the useful for any task phase are difficult to quantify. There are still fundamental problems. We are still deep in the academic research phase and not in the let's make it practical phase. But this argument has little barring on my answer to the question asked. $\endgroup$
    – Meir Maor
    Sep 22, 2017 at 15:14
7
$\begingroup$

I can speak to the job-market part of the question. I work as a security architect at a company that makes authentication and encryption software products (read: crypto is at the core of every product).

Finding people to hire who can pass an interview on web dev, AWS, or even C++ and linux kernel dev is easy compared with finding people to hire who can pass interview questions like this:

  • What is the difference between a signature and a hash?
  • What is the size of the keyspace of 16 character passwords with uppers, lowers, numbers, and {, "/", "+"}, and if chosen at random, what is the probability that they collide?
  • Group these TLS cipher suites by the security level of their weakest primitive.
  • etc

I may be exaggerating a touch on the questions, but it took us two years to fill a single opening on the security architecture team. Finding candidates who grok crypto is freaking hard. If you come in with a solid intuition on the fundamental theory of crypto and security, and are willing / able to do on the job learning about new tech, the company's products, and software development practices as a whole, then you should have no problems finding a job. Period.

$\endgroup$
3
  • 2
    $\begingroup$ For bonus points on the TLS question, throw in cipher suites with 3DES, RC4 and NTRU to get real confused looks from the kids these days. $\endgroup$ Sep 23, 2017 at 2:16
  • $\begingroup$ Did anyone at your company consider training someone? $\endgroup$
    – Paul Uszak
    Sep 23, 2017 at 21:57
  • 3
    $\begingroup$ @PaulUszak I sense some condescension there. Sure, fully onboarding somebody into this position takes about 18 months, so that's 18 months of training and self-motivated learning on the job. It would take longer if we have to teach them, you know, math. Another path we do is to find internal people already in development who know the products and some crypto, and then teach them math / security / theory, but that didn't seem as relevant to this question since the OP doesn't seem to have a software engineering background. $\endgroup$ Sep 23, 2017 at 22:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.