# How much CS knowledge is needed to get into cryptography from math?

I am a 2nd-year undergraduate student in the United States studying mathematics. I have been planning on going to graduate school to study number theory. However, I have realized that only 3% of math PhD's (or even less) go on to get postdoc or assistant professor positions. So, I have become interested in the so-called "applied number theory," that is, cryptography. I really love number theory, so if it was unlikely that I could pursue math research, I would still like to do number theory in the form of cryptography. I am especially interested in lattice-based cryptography. I have studied elliptic curves and abstract algebra (I really like both).

I have taken CS courses before, and while they are fun, they are not very interesting and I much prefer the math than the coding. My university offers some cybersecurity courses, and this fall I am going to take "Mathematics of Coding and Cryptography."

My question is this: If I want to have a solid backup plan to go into cryptography, to what degree should I study computer science? If I have a PhD in number theory with only minimal experience in CS, would I be able to get a job in the cryptography world?

• "I have realized that only 3% of math PhD's go on to get postdoc or assistant professor positions." That sounds wildly inaccurate. I could, possibly, believe that statistically only 3% of students who are about to start their PhD studies in math end up having a tenured position. I absolutely don't believe that 97% of people who obtain a PhD in math (presumably in the US?) never even get a postdoc position. It sounds like you are most likely misinterpreting whatever the 3% figure is. Commented Apr 28, 2023 at 19:59
• It may be what you meant to say, but it's not at all what you're actually saying. What you're actually saying is almost certainly false. Claiming that you have a 97% chance* of failing* already at the first step after a PhD (namely, securing a postdoc) and claiming that less than 50% of math PhD's will "make it into academia" (presumably meaning, get a tenured position eventually?) are completely different things. If you're basing your career decisions on these kinds of numbers, wouldn't it make sense to be careful about what they actually say? *or deciding that academia is not for you Commented Apr 28, 2023 at 20:18
• The point is that you are spreading a putative statistic and you don't even know what exactly it says, much less what the source is. Spreading baseless statistics is not a good thing to do. Commented Apr 28, 2023 at 20:25
• I suggest that you (1) read the answers and comments to the questions (which by and large do not, in fact, agree with your claim) instead of counting the upvotes for the question, (2) compare what those statistics are saying with what you are saying. One of the questions contains no source at all for the 3% figure, and the other one simply says something completely different than what you are saying. If you want to make career decisions based on misunderstood statistics you overheard an anonymous person say on the internet, be my guest, but please don't spread baseless numbers in the process. Commented Apr 28, 2023 at 20:42
• @Clyde Kertzer I absolutely understand that this has nothing to do with your question. That just makes it doubly puzzling to me why you're including a false statistic (that someone else might read and be needlessly discouraged by) as a prelude to your question if it doesn't really have to do with your question anyway. Commented Apr 28, 2023 at 21:07

Mathematical cryptography is still a largely academic subject without much direct applicability. Your chances of getting an academic job are better than in pure Mathematics, but far from guaranteed. However, you are getting ahead of yourself, since you are still in the middle of your undergraduate degree.

I would not agree that cryptography is applied number theory, even so number theory and algebraic geometry has provided problems that are intrinsically difficult to solve without some inside knowledge.

Modern cryptography as an academic discipline is mainly based on complexity theory, which is currently in a very unsatisfactory state as the NP = P problem is still not solved. Complexity theory is rarely taught at the undergraduate level and the theory of computing receives less and less attention in undergraduate CS curricula. The main question here is the possibility of unbreakable crypto-systems.

Then there are the algorithm / protocol builders. This endeavor combines a rigor even more stringent than used by practicing mathematicians and you might be able to apply knowledge in pure Mathematics that no one else has yet thought about applying. But a good basic understanding of Computer Architecture, Operating Systems, and Networking is also required. This is very similar to the development of abstract distributed algorithms that now are and have been integrated in many cloud applications. If you are good in Mathematics, you tend to be good in this part of CS.

Finally, there are the cryptanalysts in hidden dens in Virginia and their homologs elsewhere. They presumably know a lot about the previous aspects, but I have no good knowledge about it. Usually though they make progress not by breaking cryptography, but its application, which again indicates the importance of knowledge about computers.

So, to answer your question: Of course it depends, but you should expect some extensive knowledge of CS as necessary for a career in cryptography.

Finally, I would like to challenge your impression of Computer Science. A typical undergraduate degree will first introduce students to coding, and only then introduce the big topics, such as Operating Systems, Computer Architecture, Networking, Programming Languages, and Algorithms. Your experience in these classes will be quite different from a programming class, even though instruction usually assumes that students can program. Some of these topics are quite mathematical (e.g. algorithms.) If you are lucky, you can even take a class in theory of Computing, which is essentially Mathematical.

I would encourage you to follow your heart and study pure mathematics. When you reach the beginning of senior year, you can start make plans for later. But for practical reasons, I would also think that taking classes in computing such as a minor in CS might be good for your future career. After all, a Mathematics degree is quite flexible. Did you know that Math is apparently one of the best preparations for Law School? If you are looking for alternatives, look at data science, which is at the intersection of Business (or a similar application domain), Statistics, and Computer Science.

• Thanks for such a thorough answer! This is exactly what I was looking for Commented Apr 28, 2023 at 23:23